From dfb9e70f05ae42ea52e9e55bac733dfbf2cc10854fbeece0eddafb5932a2b00c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 3 May 2024 15:48:47 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main libsass revision 559b9271eb43881012971b3f207b4842 --- .gitattributes | 23 + libsass-3.6.5.tar.gz | 3 + ...-43357,CVE-2022-43358,CVE-2022-26592.patch | 123 +++ libsass-am.diff | 33 + libsass-vers.diff | 38 + libsass.changes | 987 ++++++++++++++++++ libsass.spec | 89 ++ 7 files changed, 1296 insertions(+) create mode 100644 .gitattributes create mode 100644 libsass-3.6.5.tar.gz create mode 100644 libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch create mode 100644 libsass-am.diff create mode 100644 libsass-vers.diff create mode 100644 libsass.changes create mode 100644 libsass.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/libsass-3.6.5.tar.gz b/libsass-3.6.5.tar.gz new file mode 100644 index 0000000..cb5b113 --- /dev/null +++ b/libsass-3.6.5.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89d8f2c46ae2b1b826b58ce7dde966a176bac41975b82e84ad46b01a55080582 +size 342426 diff --git a/libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch b/libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch new file mode 100644 index 0000000..c7f3504 --- /dev/null +++ b/libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch @@ -0,0 +1,123 @@ +From 5bb0ea0c4b2ebebe542933f788ffacba459a717a Mon Sep 17 00:00:00 2001 +From: Marcel Greter +Date: Thu, 14 Dec 2023 14:40:04 +0100 +Subject: [PATCH] Fix most urgent issues in 2023 + +- Fix recursion when resolving parents +- Fix potential memory leak in `sass_not` +- Fix potential NPE in selector list inspector +--- + src/ast_selectors.cpp | 14 ++++++++------ + src/debugger.hpp | 1 + + src/fn_miscs.cpp | 12 ++++++++---- + src/inspect.cpp | 3 ++- + 4 files changed, 19 insertions(+), 11 deletions(-) + +diff --git a/src/ast_selectors.cpp b/src/ast_selectors.cpp +index c142842975..f5a4867e9e 100644 +--- a/src/ast_selectors.cpp ++++ b/src/ast_selectors.cpp +@@ -868,7 +868,7 @@ namespace Sass { + for (SimpleSelectorObj simple : elements()) { + if (PseudoSelector * pseudo = Cast(simple)) { + if (SelectorList* sel = Cast(pseudo->selector())) { +- if (parent) { ++ if (parent && !parent->has_real_parent_ref()) { + pseudo->selector(sel->resolve_parent_refs( + pstack, traces, implicit_parent)); + } +@@ -976,20 +976,22 @@ namespace Sass { + } + + /* better return sass::vector? only - is empty container anyway? */ +- SelectorList* ComplexSelector::resolve_parent_refs(SelectorStack pstack, Backtraces& traces, bool implicit_parent) ++ SelectorList* ComplexSelector::resolve_parent_refs( ++ SelectorStack pstack, Backtraces& traces, bool implicit_parent) + { + + sass::vector> vars; + + auto parent = pstack.back(); ++ auto hasRealParent = has_real_parent_ref(); + +- if (has_real_parent_ref() && !parent) { ++ if (hasRealParent && !parent) { + throw Exception::TopLevelParent(traces, pstate()); + } + + if (!chroots() && parent) { + +- if (!has_real_parent_ref() && !implicit_parent) { ++ if (!hasRealParent && !implicit_parent) { + SelectorList* retval = SASS_MEMORY_NEW(SelectorList, pstate(), 1); + retval->append(this); + return retval; +@@ -1020,10 +1022,10 @@ namespace Sass { + for (auto items : res) { + if (items.size() > 0) { + ComplexSelectorObj first = SASS_MEMORY_COPY(items[0]); +- first->hasPreLineFeed(first->hasPreLineFeed() || (!has_real_parent_ref() && hasPreLineFeed())); ++ first->hasPreLineFeed(first->hasPreLineFeed() || (!hasRealParent && hasPreLineFeed())); + // ToDo: remove once we know how to handle line feeds + // ToDo: currently a mashup between ruby and dart sass +- // if (has_real_parent_ref()) first->has_line_feed(false); ++ // if (hasRealParent) first->has_line_feed(false); + // first->has_line_break(first->has_line_break() || has_line_break()); + first->chroots(true); // has been resolved by now + for (size_t i = 1; i < items.size(); i += 1) { +diff --git a/src/debugger.hpp b/src/debugger.hpp +index 703d387183..31af47218a 100644 +--- a/src/debugger.hpp ++++ b/src/debugger.hpp +@@ -430,6 +430,7 @@ inline void debug_ast(AST_Node* node, sass::string ind, Env* env) + std::cerr << " <<" << selector->ns_name() << ">>"; + std::cerr << (selector->isClass() ? " [isClass]": " -"); + std::cerr << (selector->isSyntacticClass() ? " [isSyntacticClass]": " -"); ++ std::cerr << (selector->has_real_parent_ref(nullptr) ? " [real parent]" : " -"); + std::cerr << std::endl; + debug_ast(selector->argument(), ind + " <= ", env); + debug_ast(selector->selector(), ind + " || ", env); +diff --git a/src/fn_miscs.cpp b/src/fn_miscs.cpp +index 38e8d2a820..d5e28ca6c4 100644 +--- a/src/fn_miscs.cpp ++++ b/src/fn_miscs.cpp +@@ -160,10 +160,14 @@ namespace Sass { + ExpressionObj cond = ARG("$condition", Expression)->perform(&expand.eval); + bool is_true = !cond->is_false(); + ExpressionObj res = ARG(is_true ? "$if-true" : "$if-false", Expression); +- ValueObj qwe = Cast(res->perform(&expand.eval)); +- // res = res->perform(&expand.eval.val_eval); +- qwe->set_delayed(false); // clone? +- return qwe.detach(); ++ ExpressionObj rv = res->perform(&expand.eval); ++ ValueObj value = Cast(rv); ++ if (value != nullptr) { ++ value->set_delayed(false); ++ return value.detach(); ++ } ++ rv->set_delayed(false); ++ return nullptr; + } + + ////////////////////////// +diff --git a/src/inspect.cpp b/src/inspect.cpp +index 4d079bed8b..bdc73cdac3 100644 +--- a/src/inspect.cpp ++++ b/src/inspect.cpp +@@ -463,6 +463,7 @@ namespace Sass { + { sep[0] = i % 2 ? ':' : ','; } + ExpressionObj list_item = list->at(i); + if (output_style() != TO_SASS) { ++ if (list_item == nullptr) continue; + if (list_item->is_invisible()) { + // this fixes an issue with "" in a list + if (!Cast(list_item)) { +@@ -1088,7 +1089,7 @@ namespace Sass { + + void Inspect::operator()(CompoundSelector* sel) + { +- if (sel->hasRealParent()) { ++ if (sel->hasRealParent() /* || sel->has_real_parent_ref() */) { + append_string("&"); + } + for (auto& item : sel->elements()) { diff --git a/libsass-am.diff b/libsass-am.diff new file mode 100644 index 0000000..33c42c4 --- /dev/null +++ b/libsass-am.diff @@ -0,0 +1,33 @@ +From: Jan Engelhardt +Date: 2016-06-30 13:18:23.962908776 +0200 + +build: resolve autoreconf warnings + +GNUmakefile.am:33: warning: compiling 'sassc.c' with per-target flags requires 'AM_PROG_CC_C_O' in 'configure.ac' +/usr/share/automake-1.13/am/ltlibrary.am: archiver requires 'AM_PROG_AR' in 'configure.ac' + +Adding AM_PROG_CC_C_O also requires that no AC_PROG_CC follows it. +Remove the duplicated test, then. + +--- + +Index: libsass-3.4.3/configure.ac +=================================================================== +--- libsass-3.4.3.orig/configure.ac ++++ libsass-3.4.3/configure.ac +@@ -16,6 +16,7 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_R + + # Checks for programs. + AC_PROG_CC ++AM_PROG_CC_C_O + AC_PROG_CXX + AC_LANG_PUSH([C]) + AC_LANG_PUSH([C++]) +@@ -55,7 +56,6 @@ if test "x$is_mingw32" != "xyes"; then + fi + + if test "x$enable_tests" = "xyes"; then +- AC_PROG_CC + AC_PROG_AWK + # test need minitest gem + AC_PATH_PROG(RUBY, [ruby]) diff --git a/libsass-vers.diff b/libsass-vers.diff new file mode 100644 index 0000000..6f93a09 --- /dev/null +++ b/libsass-vers.diff @@ -0,0 +1,38 @@ +From: Jan Engelhardt +Date: 2016-06-30 13:50:19.632475047 +0200 + +The documentation has the phrase + +"The API is not yet 100% stable, so we do not yet guarantee ABI +forward compatibility. We will do so, once we increase the shared +library version above 1.0." + +[Wrong premise. On the technical level, API/ABI stability does not +need to be guaranteed at all, nor is there a requirement that it has +to happen/start at a particular time, nor at a particular version +like "1.0". + +What you MUST do is that *if* the ABI/API changes, change +the SONAME.] + +Add -release to address +https://en.opensuse.org/openSUSE:Shared_library_packaging_policy#When_there_is_no_versioning +point 3. [until libsass 1.0, then reevaluate] + +--- + src/GNUmakefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: libsass-3.3.2/src/GNUmakefile.am +=================================================================== +--- libsass-3.3.2.orig/src/GNUmakefile.am ++++ libsass-3.3.2/src/GNUmakefile.am +@@ -34,7 +34,7 @@ include $(top_srcdir)/Makefile.conf + + libsass_la_SOURCES = ${CSOURCES} ${SOURCES} + +-libsass_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined -version-info 1:0:0 ++libsass_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined -version-info 1:0:0 -release ${PACKAGE_VERSION} + + if ENABLE_TESTS + if ENABLE_COVERAGE diff --git a/libsass.changes b/libsass.changes new file mode 100644 index 0000000..e131610 --- /dev/null +++ b/libsass.changes @@ -0,0 +1,987 @@ +------------------------------------------------------------------- +Fri Dec 15 09:40:23 UTC 2023 - Michael Vetter + +- security update: + * CVE-2022-43357 [bsc#1214573]: + Fix stack overflow in Sass:CompoundSelector:has_real_parent_ref() + * CVE-2022-43358 [bsc#1214575]: + Fix stack overflow in Sass:ComplexSelector:has_placeholde() + * CVE-2022-26592 [bsc#1214576]: + Fix stack overflow in CompoundSelector:has_real_parent_ref function() + + libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch + +------------------------------------------------------------------- +Sat Jul 17 06:53:55 UTC 2021 - Dirk Müller + +- update to 3.6.5: + * Fix extend edge case going endlessly + * Fix source-maps and how we count unicode characters + * Fix seed generator if std::random_device fails + * Fix url() containing exclamation mark causing an error + * Fix Offset initialization when end was not given + * Fix obvious backporting error in pseudo extend + * Fix obvious identical subexpressions in op_color_number + * Fix edge case regarding unit-less number equality as object keys + * Revert compound re-ordering for non extended selectors + * Prevent compiler warning about unnecessary copy + +------------------------------------------------------------------- +Thu Jul 23 15:37:29 UTC 2020 - John Vandenberg + +- Update version to 3.6.4 + * Fix parenthesization for selector schema and real parents + * Add deprecation warning for global variable creation + * Ensure correct output order of compound selectors + * Handle loaded source code as shared objects + * New custom memory allocator - disabled for now + * Add back C-API getters for plugin paths + * Fix abspath handling on windows without directory + * Fix various edge case crashes + * Fix segfault on directive ruleset + * Fix heap-buffer-overflow in lexer + * Fix stack-overflow in parser + * Fix memory leak in parser + * Fix memory leak in evaluation + * Fix memory handling edge case + * Fix some null pointer access crashes + * Preparations for ongoing refactoring +- from v3.6.3 + * Fix compound extend warning + * Fix extend being stuck in endless loop + * Fix various edge-case segfault crashes + * Extend error_src lifetime on c-api context + * Fix memory leak in permutation function + * Preserve indentation in nested mode +- from v3.6.2 + * Improve pseudo selector handling + * Code improvements + * Fix various functions arguments + * Fix "call" for $function + * Check weight argument on invert call + * Improve makefile to use dylib extension on MacOS + * Fix bug in scale-color with positive saturation + * Minor API documentation improvements + * Fix selector isInvisible logic + * Fix evaluation of unary expressions in loops + * Fix attribute selector equality with modifiers + +------------------------------------------------------------------- +Fri Jul 12 07:10:58 UTC 2019 - Cédric Bosdonnat + +- Update version to 3.6.1: + + * Fix use-after-free vulnerability in sass_context.cpp:handle_error + bsc#1096894, CVE-2018-11499 + * Disallow parent selector in selector_fns arguments + bsc#1118301, CVE-2018-19797 + * Fix use-after-free vulnerability exists in the SharedPtr class + bsc#1118346, CVE-2018-19827 + * Fix stack-overflow in Eval::operator() + bsc#1118348, CVE-2018-19837 + * Fix stack-overflow at IMPLEMENT_AST_OPERATORS expansion + bsc#1118349, CVE-2018-19838 + * Fix buffer-overflow (OOB read) against some invalid input + bsc#1118351, CVE-2018-19839 + * Fix Null pointer dereference in Sass::Eval::operator()(Sass::Supports_Operator*) + bsc#1119789, CVE-2018-20190 + * Fix heap-buffer-overflow in Sass::Prelexer::parenthese_scope(char const*) + bsc#1121943, CVE-2019-6283 + * Fix heap-based buffer over-read exists in Sass:Prelexer:alternatives + bsc#1121944, CVE-2019-6284 + * Fix heap-based buffer over-read exists in Sass:Prelexer:skip_over_scopes + bsc#1121945, CVE-2019-6286 + * Fix uncontrolled recursion in Sass:Parser:parse_css_variable_value + bsc#1133200, CVE-2018-20821 + * Fix stack-overflow at Sass::Inspect::operator() + bsc#1133201, CVE-2018-20822 + +------------------------------------------------------------------- +Mon Apr 23 18:57:47 UTC 2018 - gutaper@gmail.com + +- Update version to 3.5.3: + + Community: + + * Add nim-sass to implementations list (@zacharycarter, #2592) + * Add Haskell bindings to implementations list (@jakubfijalkowski, #2612) + * Add SharpScss and LibSassHost bindings to implementations list (@tompazourek, #2623) + * Update node-sass link in implementations list (@xzyfer, b866ad5) + * Update Unicode doc after forcing UTF8/plain ASCII (@mgreter, #2596) + * Update compatibility section of the read me (@xzyfer, 9266d26) + + Features: + + * Update sass2scss@v1.1.2 (@mgreter, #2602) + * Emit transparent colours as rgba(0, 0, 0, 0) (@xzyfer, #2298) + * Add a sass_option_push_import_extension C-API (@xzyfer, #1964) + + Fixes: + + * Fix output/error for modulo zero operation (@mgreter, #2593) + * Fix automake build if sassc is missing (@mgreter, #2601) + * Fix handling of colours in @at directives (@mgreter, #2360) + * Fix edge case converting achromatic colors to HSL (@mgreter, #2604) + * Fix evaluation of arithmetic inside interpolation (@mgreter, #2203) + * Fix handling of @important in custom properties (@xzyfer, #2590) + * Fix duplicate definition of out_of_memory macro (@thatguystone, #2619) + * Fix merging of nested media queries with negation (@xzyfer, #2425) + * Fix regression in parsing selector with trailing escaped colon (@xzyfer, #2625) + * Fix segfault on empty custom properties (@xzyfer, sass/sassc#225) + +- Includes changes from 3.5.1: + + Features: + + * Implement more detailed backtraces (@mgreter, #2573) + + Fixes: + + * Fix parsing of block comments to ignore css string rules (@mgreter, #1294) + * Fix win UNC path handling for dot and dotdot directories (@mgreter, #2588) + +------------------------------------------------------------------- +Fri Mar 16 13:56:39 UTC 2018 - gutaper@gmail.com + +- Update version to 3.5.1: + + Community: + + * Add sass.cr to implementations list (@straight-shoota, #2574) + + Fixes: + + * Fix compiler warnings (@mgreter, #2575) + * Fix double free when run in concurrent processes (@mgreter, #2579) + * Fix units sometimes being dropped in math operations (@mgreter, #2582) + * Fix missing error for mixins defined within mixins (@mgreter, #2558) + +- Includes changes from 3.5.0: + + Features: + + * Implement trailing commas in parameters and arguments (#2070, @xzyfer) + * Implement deprecation warning for ID strings that look like colors (#2302, @xzyfer) + * Implement content-exists function (#2266, @xzyfer) + * Implement support for passing var() to CSS functions (#2244, @xzyfer) + * Implement first class functions (#2277 #2275, @xzyfer) + * Implement nesting guard to avoid "out of stack space" (#2438, @mgreter) + * Implement exponents for numbers (#2465, @mgreter) + * Implement long file path support for Windows (#2477, @mgreter) + * Implement case modifier for attribute selector (#2509, @mgreter) + * Implement warning for double parent selectors (#2522, @mgreter) + * Implement support for custom property syntax (#2076, @xzyfer) + * Implement support for custom-property feature flag (#2076, @xzyfer) + + Optimisations: + + * Performance improvements (#2339, @mgreter) + * Fix memory leak by removing previously unused code (#2505, @mgreter) + * Fix memory leak of custom functions signature (#2553, @mgreter) + + Community: + + * Add libsass-python to Readme (#2546, @asottile) + * Update link to go-libsass (#2340 #2410, @drewwells) + + Fixes: + + * Fix media query stack and eval issue (#2341, @mgreter) + * Fix Attribute Selector equal compare operator (#2347, @mgreter) + * Fix segfault for varargs with non-string keys (#2352, @mgreter) + * Fix Element Selector compare operators (#2347, @mgreter) + * Fix compiler issue with spec regression on NetBSD 6.1 (#2357, @mgreter) + * Fix some segfaults caused by the parser being too forgiving (#2367, @xzyfer) + * Fix segfault with invalid map keys (#2368, @xzyfer) + * Fix null pointer dereference in css_error (#2369, @xzyfer) + * Fix bug when parsing selector schemas (#2371, @xzyfer) + * Fix null pointer dereference when parsing selector schemas (#2371, @2372) + * Fix .editorconfig (#2380, @brucek) + * Fix compiler issue with spec regression on NetBSD 6.1 (#2357, @mgreter) + * Fix segfault when extending pseudo selectors failed (#2366, @mgreter) + * Fix parser for urls looking like ruleset selectors (#2376, @mgreter) + * Fix use of non-portable std::to_string (#2385, @mgreter) + * Fix use of non-portable strdup (#2459, @asottile) + * Fix unary slash expressions (#2349 #2384, @mgreter) + * Fix missing error for trailing comma in selector list (#2365, @mgreter) + * Fix selector and binominal look ahead (#2346, @mgreter) + * Fix hex escape handling in interpolation (#2320, @mgreter) + * Fix wrong parsing of calc functions as number units (#2382, @mgreter) + * Fix incorrect comment evaluation for compressed output (#2359, @mgreter) + * Fix parent selector handling in selector schema (#2358, @mgreter) + * Fix parameter vararg and keyword handling (#2394, @mgreter) + * Fix a few minor memory leaks (#2400, @mgreter) + * Fix issue with invalid error indicator (#2404, @mgreter) + * Fix selector parsing and url regression (#2429, @mgreter) + * Fix null ptr segv on invalid vararg (#2437, @mgreter) + * Fix segfault in selector extend edge-case (#2437, @mgreter) + * Fix segfault in selector extend edge-case (#2437, @mgreter) + * Fix segfault in selector append edge-case (#2437, @mgreter) + * Fix ref-counted value handling in if function (#2437, @mgreter) + * Fix segfault in at-root cssize edge-case (#2439, @mgreter) + * Fix file content malloc to avoid reading beyond buffer (#2440, @mgreter) + * Fix case-sensitive lookup to named color map (#2462, @asottile) + * Fix shebang for tap-driver (#2466, @naroga) + * Fix segfault in parser edge case (#2446, @mgreter) + * Fix memory corruption on error in parse_selector_schema (#2484, @mgreter) + * Fix autoconf path for sassc tester (#2492, @mgreter) + * Fix output of invisible @support blocks (#2488, @mgreter) + * Fix to_value for bracketed lists (#2467, @mgreter) + * Fix propagation of named rest arguments (#2480, @mgreter) + * Fix @extend of wrapped selectors (#2468, @mgreter) + * Fix wrapped pseudo selector handling (#2464 #2383, @mgreter) + * Fix minor issue with attribute selector unification (#2053, @mgreter) + * Fix issue when passing restargs to call (#2472, @mgreter) + * Fix compressing of colors in selectors (#2232, @mgreter) + * Fix missing error on selector with invalid quote mark (#2082, @mgreter) + * Fix travis-ci mac OSX builds (#2527, @mgreter) + * Fix endless loop comparing Selector_List to List (#2516 #2517, @mgreter) + * Fix SmartOS/Solaris build regression (#2519, @mgreter) + * Fix to connect parent selector only once (#2520, @mgreter) + * Fix whitespace issue for wrapped selectors (#2366, @mgreter) + * Fix missing error if cwd goes missing (#2513, @mgreter) + * Fix missing error when mixin ruleset in root has parent selector (#2482, @mgreter) + * Fix sourcemap crutch once again (#2312, @mgreter) + * Fix parser state column following static values (#2542, @mgreter) + * Fix error indicator not being Unicode aware (#2404, @mgreter) + * Fix error sourcemaps not being fully Unicode aware (#2319, @mgreter) + * Fix some compiler warnings (#2547, @mgreter) + * Fix math with multiple units (#2549, @mgreter) + * Fix css test for interpolated numbers (#2560, @mgreter) + * Fix null pointer access in nesting check (sass/sassc#222 sass/sassc#223, @mgreter) + * Fix @else possibly producing invalid output (#2569, @xzyfer) + * Fix parsing of @supports declarations (#2452, @xzyfer) + +------------------------------------------------------------------- +Fri Mar 9 08:49:04 UTC 2018 - astieger@suse.com + +- update to 3.4.9: + * Fix math with multiple units + * Make error indicator Unicode aware + * Make sourcemaps fully Unicode aware + * Fix parser state column following static values + * Fix memory leak of custom functions signature + * Adding the missing scope identifier std:: + * Fix fall-trough warning in latest gnu gcc + * Tweak warning message format +- includes changes frpm 3.4.8: + * Implement case modifier for attribute selector + * Emit warning for double parent selectors + * Throw error if cwd goes missing + * Throw error when mixin ruleset in root has parent selector + * Fix to connect parent selector only once + * Fix endless loop comparing Selector_List to List + * Fix whitespace issue for wrapped selectors +- includes changes from 3.4.7: + * Implement exponents for numbers + * Implement long file path suppo + * Error on quoted string in simple selector parsing + * Do not compress colors in selectors + * Fix issue when passing restargs to call + * Fix issue with attribute selector unification + * Improve wrapped pseudo selector handling + * Improve extend of wrapped pseudo selectors + * Fix propagation of named rest arguments + * Do not output invisible support blocks + * Various build makefile and CI related fixes +- 3.4.6: + * Reverts accidental 3.5 feature - trailing commas in parameters + and arguments + * Reverts accidental breaking change - remove current working + directory from search paths + * Fix some memory corruptions + * Fix CI instability + * Fix CI for 3.4 release + * Fix links in Markdown after Github changed its parser + * Fix potential stack overflow + * Fix file content malloc to avoid reading beyond buffer + * Fix segfault in at-root cssize edge-case + * Fix ref-counted value handling in if function + * Fix segfault in selector append edge-case + * Fix segfault in parser edge case + * Fix usage of non-portable strdup + * Fix case-sensitive lookup to parse colors + * Fix selector parsing and url regression +- Use %license (boo#1082318) + +------------------------------------------------------------------- +Thu Oct 26 09:47:57 UTC 2017 - cbosdonnat@suse.com + +- Version bump to 3.4.6. + Upstream changelog: + + Version 3.4.5 + ------------- + + * Features + + - Implement trailing commas in parameters and arguments (@xzyfer, + #2288) + - Implement unary slash expressions (@mgreter, #2349 and #2384) + + * Fixes + + - Fix Attribute Selector equal compare operator (@mgreter, #2350) + - Fix segfault for varargs with non-string keys (@mgreter, #2352) + - Fix Element Selector compare operators (@mgreter, #2347) + - Fix compiler issue with spec regression on NetBSD 6.1 (@mgreter, + #2357) + - Fix some segfaults caused by the parser being too forgiving + (@xzyfer, #2367) + - Fix segfault with invalid map keys (@xzyfer, #2368) + - Fix null pointer dereference in css_error (@xzyfer, #2370) + - Fix bug when parsing selector schemas (@xzyfer, #2371) + - Fix null pointer dereference in parse_selector_schema (@xzyfer, + #2372) + - Fix segfault when extending pseudo selectors failed (@mgreter, + #2366) + - Fix parser for urls looking like ruleset selectors (@mgreter, + #2376) + - Error for trailing rulesets comma (@mgreter, #2365) + - Improve selector and binominal look ahead (@mgreter, #2346) + - Improve hex escape handling in interpolation (@mgreter, #2320) + - Fix wrong parsing of calc functions as number units (@mgreter, + #2382) + - Skip comment evaluation for compressed output (@mgreter, #2359) + - Improve parent selector handling in selector schema (@mgreter, + #2358) + - Improve parameter vararg and keyword handling (@mgreter, #2394) + - Hotfix to avoid invalid nested :not selectors (@mgreter, #2399) + - Fix a few minor memory leaks (@mgreter, #2400) + + Version 3.4.4 + ------------- + + * Features + + - Update Visual Studio build facade (@am11, #2288) + - Update read me (@mgreter, #2310) + - Performance improvements for @extend (@mgreter, #2314) + - Performance improvements (@mgreter, #2339) + + * Fixes + + - Disable FMA3 when compiling with Visual Studio 2013 (@am11, + sass/node-sass#1854) + - Fix for loop variable to be referenced (@mgreter, #2330) + - Fix number compare issues when used as map keys with old gcc + (@mgreter, #2331) + - Fix results of map-get not being evaluated (@mgreter, #2309) + - Fix null pointer access (@mgreter, sass/node-sass#1880) + - Fix null pointer access (@mgreter, #2321) + - Fix bug with media queries and @extend (@mgreter, #2341) + + * Misc + + - Cleanup initial shared ptr interface (@mgreter, #2299) + - Refactor selector list and schema handling (@mgreter, #2300) + - Cleanup context usage and extend code (#2313) + - Cleanup misc (#2316, @nschonni) + - Cleanup issues detected by clangs static analyser (#2336, + @xzyfer) + - Remove Textual intermediate AST node (@mgreter, #2338) + - Add libsass-python to README (@asottile, #2340) + +------------------------------------------------------------------- +Mon Feb 13 11:59:27 UTC 2017 - ronisbr@gmail.com + +- Run spec-cleaner. +- Version bump to 3.4.3. + Upstream changelog: + + Version 3.4.3 + ------------- + + * Fixes + + - Fix segfault when comparing pseudo selectors (@xzyfer, #2289) + - Fix thread-safety for mixin recursions check (@mgreter, + #2286) + - Fix false parser errors (@xzyfer, #2095) + - Fix bad source mappings for interpolated selectors (@mgreter, + #2224) + - Fix not erring when encountering bad interpolations + (@mgreter, #2081) + - Fix some error messages to match Ruby Sass (@mgreter, #2267) + + Version 3.4.2 + ------------- + + * Features + + - Sass 3.4.23: Support url() with quotes in unknown directives + (@mgreter, #2243) + + * Fixes + + - Test bootstrap ignoring SASS_SPEC_PATH and SASS_SASSC_PATH + environment variables (@xzyfer, #2265) + - Incorrect equality of interpolated values (@mgreter, #2261) + - Incorrect error when @content is inside @at-root (@mgreter, + #2260) + - C-API copy_options function losing some options (@mgreter, + #2257) + - Segfault with calling calc (@mgreter, @xzyfer) + + Version 3.4.1 + ------------- + + * Fixes + + - Incorrect @extend with interpolated selectors in @at-root + (@mgreter, #2246) + - Incorrect dp unit conversions (@nex3, sass/sass#2143) + - Incorrect str-slice behaviour with $end-at is negative + (@xzyfer, #2240 sass/sass#2211) + + Version 3.4.0 + ------------- + + Over the last couple years we've worked very closely with the + Ruby Sass team to reach Sass 3.4 compatibility. + + It's become clear that need to draw a line in sand with exactly + how exactly we can match Sass 3.4, especially in the face of + changes in Sass 3.5. + + With this release the LibSass team is marking the completion of + active development on Sass 3.4 compatibility. From today we'll + focus our efforts on Sass 3.5 compatibility, first prioritising + CSS compatibility features like support for CSS custom property + and CSS grids. Improves to @at-root + + @at-root has mostly worked since it's introduction to LibSass but + there have always been issue when it was combined with conditions + (like @if) or mixins. These issues were due to a fundamental + difference in the LibSass implementation. The difference has + been addressed, so @at-root is now fully supported. + + You can read more about the specifics of this issue in #2089 + + - Implement the Trace AST node (@xzyfer, #1585) + - Remove the selector stack from the CSSize visitor (@xzyfer, + #2091) + - Workaround parent selector issues with at-root (@xzyfer, + #2006 #2198) + + * Delayed Values + + Knowing when to evaluate a string, function, do concatenation, or + perform math is a complicated problem with many edge cases. + @mgreter has continued his work on improving the accuracy of + these decisions. + + - Significant improvements to delayed values (@mgreter, #2042, + #2034 #2057) + - / interpreted as division instead of separator (@mgreter, + #2149) + - Mishandling quotes (@mgreter, #2153 #2156) + + * Continued improvements to @extend + + @extend is hard. With every release we get better at it and this + release is no exception. + + - Extending inner of :not can lead to invalid css (@mgreter, + #2054) + - Segfault with @extend (@mgreter, #2051) + - Extending a placeholder from a media query outputs nothing + (@mgreter, #2150) + - Don't drop pseudo elements in wrapped selectors (@xzyfer, + #2200) + + * Memory improvments + + @mgreter has done some great work on improving our memory usage + when dealing with large maps, and lists. He's not done yet, keep + your eyes peeled for further improvments in upcomming releases. + + - Improve memory footprint when evaluating in loops (@mgreter, + #2171) + + * Support list functions on maps + + Implementing Sass maps was my first major contribution to + LibSass. A couple year later I can finally all the job complete + with support for maps in list functions. + + - Support list functions on maps (@xzyfer, #1930) + + * Sourcemaps + + @mgreter and @nschonni have made some significant improvements to + our sourcemaps. You can read more about the specifics in the bug + links below. + + - Bugfixes for source maps (@mgreter, #2216) + * Fixes parent selector mappings + * Fixes media block/query mappings + * Fixes range over binary expressions + * Don't include semicolon for statics + * Fixes variable assignment mappings + - Make paths in source comments relative to CWD (@mgreter, + #2219) + - Implement source_map_file_urls option (@mgreter, #2220) + - Re-order the sourcemap writing to match spec (@nschonni, + #2193) + + * Features + + - Improve debugger coverage (@xzyfer, #2093) + - Add Sass lang version to 3.4 (@am11, #2077) + - Automake compile on msys2 and mingw64 (@mgreter, #2063) + - Improve Sass_Value documentation (@mgreter, #2045) + - Add initial CONTRIBUTING.md and ISSUE_TEMPLATE.md (@mgreter, + #2044) + - Update sass2scss to latest version (@mgreter, #2177 #1990 + #1781) + - Implement the check nesting visitor (@xzyfer, #2062) + + * Fixes + + - color-change() with $hue (@mgreter, #2113) + - @import causing process to hang (@mgreter, #2106) + - Broken link (@MoritzKn, #2105) + - Specificity for Simple_Selectors nodes (@xzyfer, #2099) + - @at-root without arguments (@xzyfer, #2092) + - Segfault with calc prefix and underscore vs hyphen (@mgreter, + #2074) + - Error message for missing arguments (@mgreter, #2067) + - Warning under MSVC x86_64 (@asottile, #2047) + - MSVC x86_64 buffer overrun in error reporting (@mgreter, + #2046) + - Handling "\a" in interpolations (@mgreter, #1786) + - Including a @mixin when outside of selector still outputs + properties (@xzyfer, #1732) + - Add error when comma lists are used as map keys (@mgreter, + #1537) + - Evaluation of & in sass script (@mgreter, #2124 #2116) + - Handle unicode chars in unquoted urls (@mgreter, #2120 + @xzyfer, #2125) + - hue() for rgb colors when $saturation: 0 (@mgreter, #2135) + - Invalid duplicate keys in maps (@mgreter, #2118) + - str-slice() with negative length (@mgreter, #2132) + - Segfault parsing multiple operations in calc (@mgreter, + #2151) + - Stackoverflow and segmentation failure on recrusive + dependence mixins (@mgreter, #2144) + - Don't allow math on maps (@mgreter, #2147) + - Don't allow math on colors (@xzyfer, #2140) + - CSS comment inside of @supports incorrect CSS output + (@mgreter, #2158) + - Check and error on empty variable assignments (@mgreter, + #2143 #2146) + - Incorrect output when concatenating an empty string + (@mgreter, #2169) + - Brew 1.0.0 release causing OSX CI failures (@xzyfer, #2183) + - Handling empty nested media queries (@xzyfer, #2154) + - @at-root for loop and logic statements (@mgreter, #2187) + - Typo in docs (@asottile, @2201) + - Memory leak (@mgreter, #2211 #2213) + - Using ... in an overloaded function causes fatal error + (@mgreter, #2205) + - Should error when attempting to output an empty list or map + (@mgreter, #1452) + - Don't error when an @import is terminated by the end of the + block (@xzyfer, #2233) + - Fix modulo operation (@mgreter, #2236) + + * Misc + + - Rename some selector AST nodes to better match the reference + (@xzyfer, #2101) + - Add php wrapper project link (@lesstif, #2121) + - Add Elixir wrapper project link (@scottdavis, #2141) + - Updated README (@am11, #2172) + - Enabling debug builds by setting env var DEBUG=1 + (@delapuente, #2176) + - Remove -ldl flag from OpenBSD too (@parhs, #2210) + - Remove superfluous dev error message (@mgreter, #2217) + +------------------------------------------------------------------- +Thu Nov 24 11:38:22 UTC 2016 - jengelh@inai.de + +- Redo descriptions and RPM groups + +------------------------------------------------------------------- +Wed Nov 23 15:49:50 UTC 2016 - ronisbr@gmail.com + +- Run spec-cleaner. +- Remove unecessary `BuildRoot` in .spec. +- Remove two non-breaking spaces in .spec that were leading to + a rpmlint warning. +- Version bump to 3.3.6. + Upstream changelog: + + Version 3.3.6 + ------------- + + * Feature + + - Expose the Sass language version via the C API + (@chriseppstein, #2021) + + * Fixes + + - Incorrectly erring on comments in at-rules (@mgreter, #1233) + - Incorrectly dropping internal state of AST nodes (@mgreter, + #1661) + - Incorrectly parsing the calc function (@mgreter, #1706) + - Segfault during error handling (@mgreter, #2016) + - Incorrectly identifying the selectors with type-of (@mgreter, + #2020) + - Incorrectly erring on ID selectors starting with a number + (@mgreter, @2023) + - Producing incorrect output when compile with MSVC (@mgreter, + #2039) + - Various segfaults and incorrect output from @extend + (@mgreter, #2017 #2031) + + Version 3.3.5 + ------------- + + * Expose our memory allocator + + You can now access our memory allocator using the C-API. + + void* sass_alloc_memory(size_t size) + char* sass_copy_c_string(const char* str) + void sass_free_memory(void* ptr) + + * Features + + - Re-add sass_option_push_include_path and + sass_option_push_plugin_path (@xoofx, #1974) + + * Build + + - Enable address sanitizer for clang (@mgreter, #2003) + - MSVC assert too strict (@mgreter, #1985) + - Update Sass spec (@xzyfer, 1967) + + * Fixes + + - Incorrectly erring on @extend and @media (@mgreter, #2009 + #2007, #1927, #1923) + - Incorrectly erring on @extend and interpolated selectors + (@mgreter, #2000) + - Builds not failing when Sass spec fails to load (@saper, + #1997) + - Incorrectly erring on Sass comments in selectors (@mgreter, + #1996) + - Incorrectly erring on @extend and interpolated selectors with + the !optional flag (@mgreter, #1993) + - Incorrectly treating 0 and false as the same value when used + as map keys (@mgreter, #1991) + - Incorrectly erring on escaped and unicode selectors + (@mgreter, #1977) + - Incorrectly rendering @extend and @supports (@mgreter, #1971) + - Incorrectly erring on functions beginning with calc + (@mgreter, #1969) + - Incorrectly quoting interpolated strings in selectors + (@mgreter, #1947) + - Incorrectly escaped escaped strings in selectors (@mgreter, + #1945) + - Incorrectly duplicating executing of function in interpolated + string (@mgreter, #1944) + - Prevent parsing url() resulting in an endless loop (@mgreter, + #1931) + - Compilation error with using -DDEBUG flag (@tony, #1917) + - Incorrectly removing @media blocks that contain only CSS + comments (@mgreter, #1889) + - Better handling of / in function arguments (@mgreter, #1417) + + Version 3.3.4 + ------------- + + * Fixes + + - Inconsistent error message produced when nesting functions + and mixins (@xzyfer, #1941) + - Ensure custom importers are executed for all @imports + (@xzyfer, #1935) + - Ensure custom importers are executed in the correct order + (@xzyfer, #1921) + - Possible segfault when generating sourcemaps (@usta, #1920) + - Memory leak (@usta, #1919) + - Unused variable warning (@xzyfer, #1918) + - Segfaulting when @extending an undefined selector (@mgreter, + #1916) + - Incorrectly erring when @extending inside a mixin (@xzyfer, + #1915) + - Handle signed char when considering @charset (@asottile, + #1914) + - New link to sassc-ruby in documentation (@itkrt2y, #1910) + - Incorrectly quoting interpolated strings join with + + (@mgreter, #1907) + - Incorrectly erring when using & and interpolation together + (@xzyfer, #1904) + - Incorrectly duplicating nested pseudo selectors (@mgreter, + #1901) + - Unused function breaking breaking unity builds (@drewwells, + #1896) + - Segfaulting when url() is empty (@xzyfer, #1886) + - Should error when & is used without a parent selector + (@xzyfer, #1644) + + Version 3.3.3 + ------------- + + * Parser and rendering refactorings + + LibSass is now able to use stringification functions for its + internal AST objects whenever its needed. Previously this was + only possible when we had access to a context instance, which + sometimes made it impossible to invoke the right code path. + This tight coupling has been factored out and we can now use + these more freely to get our output even closer to ruby sass. + Parser now supports multiple operations without parentheses (a + > b == c) correctly and an extensive generated test suite for + > this feature was added to sass-spec. + + * Full support for variable arguments + + Since the introduction variable arguments in Sass 3.3 LibSass + has been playing whack-a-mole with bug fixes. As of this + release we should have argument handling compatible with the + latest stable Ruby Sass. Thanks to @davidkpiano for his many + detailed bug reports and his fantastic sassdash library whose + extensive test suite helped make this possible. + + * Lots of bug-fixes + + There were two weeks of ongoing bug slaughtering by @mgreter + after new-years eve, which resulted in over 80 closed issues + (there are 117 closed github issues in total for this release). + @xzyfer also had a good streak with 14 closed issues. Special + thanks to @ksmadsen for his c++11 random_device fix. Also a + big thanks for our continuing contributors @am11 and @saper for + their inputs, feedback and pull requests. + + - Ensure we keep around memory for parser source (@mgreter, + #1884) + - Avoid wrong error due to misused map object in At_Rule + (@mgreter, #1881) + - Implement css linefeed \a handling better (@mgreter, #1880) + - Improve parsing for complex number units (@mgreter, #1879) + - Fix potential issue with wrong std container usage (@mgreter, + #1878) + - Improve parsing for complex number units (@mgreter, #1877) + - Improve operating on numbers with complex units (@mgreter, + #1876) + - Make generating source excerpt on error unicode aware + (@mgreter, #1875) + - Improve error handling API (always return formatted json) + (@mgreter, #1874) + - Improve identifier schema to include variables (@mgreter, + #1872) + - Disable error check for extend placement check (@mgreter, + #1870) + - Improve pseudo selector parsing (@mgreter, #1864) + - Fix each iteration over selector lists (@mgreter, #1863) + - Use to_sass for @debug, @warn and @error message (@mgreter, + #1862) + - Improve lower/upper boundary check error in for loop + (@mgreter, #1861) + - Implement incompatible unit test for interpolation in eval + (@mgreter, #1860) + - Implement correct empty list to_sass output (@mgreter, #1859) + - Remove To_String by using AST->to_string and inspect + (@mgreter, #1858) + - Update license year range to 2016 (@pra85, #1857) + - Incorrect 'Invalid UTF-8' error with a specific input length + (@mgreter, #1856) + - Adds include headers to VS meta files on windows (@am11, + #1850) + - Implement missing error checks (@mgreter, #1848) + - Fix SmartOS compilation once and for all (@mgreter, #1847) + - Relative imports fail when outside working directory + (@mgreter, #1846) + - Disable error for empty source string on context (@mgreter, + #1845) + - Fix expression parsing with comment between factors + (@mgreter, #1844) + - Refactor/milestone 3.4 (@mgreter, #1841) + - @custom-media throws error (@mgreter, #1839) + - Fix iterating over parent selector list with @each (@mgreter, + #1837) + - Include unconditionally (@saper, #1835) + - No file information for empty source string (@mgreter, #1834) + - Improve parsing of media queries with comments (@mgreter, + #1833) + - Prevent segfault with nested properties edge case (@mgreter, + #1832) + - Implement extend for wrapped selectors (@mgreter, #1831) + - Only parse interpolations in kept block comments (@mgreter, + #1830) + - Implement import recursion check (@mgreter, #1829) + - Error on invalid parent selector placements (@mgreter, #1828) + - Fix look-ahead of parent selector with trailing BEM separator + (@mgreter, #1827) + - Fix join_paths when left path is not canonical (@mgreter, + #1826) + - Error incorrectly thrown for &__ selector (@mgreter, #1825) + - Update .editorconfig (@numeraltwo, #1824) + - Ampersand glued to the selector should be rejected (@mgreter, + #1822) + - Selector-unify should return null instead of an empty list + (@xzyfer, #1819, #1820) + - Fix interpolations returning quoted string in selectors + (@xzyfer, #1818) + - Adds CRLF awareness to Util::quote() (@am11, #1817) + - Fix multiple issues with function parameter binding (@xzyfer, + #1815) + - While loops should release their local env when exiting early + (@xzyfer, #1814) + - Regression in variable scoping causing segfault (@xzyfer, + #1813) + - Incorrect output for unknown at-rules (@mgreter, #1812) + - Emit DLL which exports symbols on windows VS (@am11, #1811) + - Add exit code for explicit test (@am11, #1810) + - Support multiline url declarations (@xzyfer, #1809) + - Incompatible units error in interpolations (@mgreter, #1804) + - Segfault on missing semicolon (@mgreter, #1803) + - Infinite import loop results in a stack overflow (@mgreter, + #1801) + - Segmentation fault for interpolations in certain comments + (@mgreter, #1798) + - Placeholder selector inside :not() (@mgreter, #1797) + - Append function doesn't appear to append correctly inside + loops (@mgreter, #1796) + - Media queries fail to parse when comment is present + (@mgreter, #1794) + - Incompatible units error for expressions in media queries + (@mgreter, #1793) + - Incorrectly building dynamic library on Windows (@mgreter, + #1790) + - Fix libsass build for SmartOS (@mgreter, #1782) + - Fix-up some docs on importers (undefined variables) + (@asottile, #1780) + - Using 'calc' shoes an Error: Incompatible units: 'px' and '%' + (@mgreter, #1776) + - Converts wchar_t* to UTF-8 std::string on windows (@am11, + #1774) + - String Interpolation incorrectly quotes parent selectors + (@xzyfer, #1770) + - @debug on an empty list should produce () (@mgreter, #1768) + - Removing duplicated content from c api example (@rodneyrehm, + #1767) + - Comments between binary operands prevents evaluation + (@mgreter, #1765) + - Add crutch to help browsers interpreting source-maps + (@mgreter, #1759) + - bug with & (parent-selector) and @each directive in 3.3.2 + (@mgreter, #1757) + - Fix possible segfault in Each expansion (@mgreter, #1756) + - Remove sixtuplet flag on Colors and fix edge case (@mgreter, + #1755) + - Refactor to remove Context dependency from To_String + (@mgreter, #1754) + - Segmentation fault @each with argslist node-sass 3.4.2 + (@mgreter, #1752) + - Wrong line reported in invalid operands for multiplication + (@mgreter, #1751) + - Implement variable shadow scoping (@mgreter, #1748) + - Nested styles refer to top-level parent in source-map line + number (@mgreter, #1747) + - Variables in control flow should not be accessible in outer + scopes (@mgreter, #1746) + - Fix #1742 - same expression on both sides of && (@saper, + #1744) + - Don't allocate std::random_device statically (@ksmadsen, + #1743) + - Ampersands in :not selector (@mgreter, #1741) + - Improve binary expressions to preserve white-space at + operands (@mgreter, #1739) + - Defer creation of hash maps into eval stage (@mgreter, #1736) + - Fix edge-case for extend with Wrapped_Selector (@mgreter, + #1735) + - Interpolated, double-quoted vars can produce an empty output + (@mgreter, #1734) + - Fix error messages for min and max (@xzyfer, #1731) + - Multiple nth-child selector with @extend compiles wrong + (@mgreter, #1729) + - Fix Binary operators adjacent to interpolations (@mgreter, + #1728) + - Allow multiple unparenthesized expressions for operators + (@mgreter, #1727) + - Error: Import may not be used within controls or mixins. $100 + - Different results with @each and @for loop (@mgreter, #1723) + - Extra white-space after "#{}" interpolation (@mgreter, #1722) + - Fixes for Windows version (@Taritsyn, #1721) + - @each on nested lists assigns the wrong value. (@mgreter, + #1709) + - Avoid some clang compiler warnings (@mgreter, #1707) + - Implement rounding precision (@mgreter, #1704) + - No error for @extend %an-undefined-placeholder (@mgreter, + #1670) + - Error on @debug, @warn or @error in properties (@mgreter, + #1653) + - Improve selector look-ahead for "negative" binomials + (@mgreter, #1652) + - @extend inside @at-root doesn't work (@mgreter, #1651) + - Space in argument for :nth-of-type(2n - 1) results in error + (@mgreter, #1650) + - All interpolation is unquoted (@xzyfer, #1647) + - Arglist as single arg for varargs improperly gets destructed + (@xzyfer, #1645) + - Use the correct parsing semantics for @import url() (@xzyfer, + #1597) + - Single comma separated must be surrounded by () on inspect. + (@mgreter, #1583) + - Error message mismatch for empty interpolation as an argument + (@mgreter, #1564) + - Error message mismatch for min (@xzyfer, #1559) + - Disallow functions to be defined in control directives or + mixins (@mgreter, #1550) + - Minor issue parsing number units after double dash (@mgreter, + #1526) + - Fixes some clang warnings (@mgreter, #1523) + - Better support for @-moz-document (@mgreter, #1401) + - Quoted colors in maps produces 'Duplicate key "transparent" + in map' (@mgreter, #1169) + - Permit multiline in URL (@xzyfer, #1096) + - No error for missing imported base class in @extend + (@mgreter, #871) + + * Improved spec tests + + With this release we have a bit more than 275 new spec tests. + We started to include error tests too, which was quite + difficult at the beginning, since we need to get the output + 100% correct to really pass a spec test, although we really + only test the first line for error specs so far. None the less, + with this release a lot more error messages are matching the + ones of ruby sass and we also catch more cases. But we still + let a lot more syntax silently pass than ruby sass does. + +------------------------------------------------------------------- +Fri Jul 15 01:26:38 UTC 2016 - jengelh@inai.de + +- Add libsass-am.diff, libsass-vers.diff to do proper versioning on + shared library. +- Drop useless with-pic (only for — unbuilt — static libs) + +------------------------------------------------------------------- +Wed Jul 13 07:38:21 UTC 2016 - psimons@suse.com + +- Remove redundant "Obsoletes" attribute from spec file. New + versions implicitly obsolete older versions of the same package; + this doesn't need to be stated explicitly. + +------------------------------------------------------------------- +Sun Jul 3 11:08:48 UTC 2016 - psimons@suse.com + +- Build a shared library instead of a static one. +- Rename the main package to match the shared library's SONAME. +- Enable "make check" test suite. +- Run the spec file through spec-cleaner. + +------------------------------------------------------------------- +Tue Jan 5 17:32:22 UTC 2016 - dmueller@suse.com + +- add license + +------------------------------------------------------------------- +Tue Jan 04 08:43:58 UTC 2016 - cbosdonnat@suse.com + +- Release 3.3.2 diff --git a/libsass.spec b/libsass.spec new file mode 100644 index 0000000..994f2b8 --- /dev/null +++ b/libsass.spec @@ -0,0 +1,89 @@ +# +# spec file for package libsass +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%define libname libsass-3_6_5-1 +Name: libsass +Version: 3.6.5 +Release: 0 +Summary: Compiler library for A CSS preprocessor language +License: MIT +Group: Development/Libraries/C and C++ +URL: https://github.com/sass/libsass +Source: https://github.com/sass/libsass/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz +Patch1: libsass-am.diff +Patch2: libsass-vers.diff +# PATCH-FIX-UPSTREAM -- mvetter@suse.com -- bsc#1214573, bsc#1214575, bsc#1214576, gh/sass/libsass#3184 +Patch3: libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: gcc-c++ +BuildRequires: libtool +BuildRequires: pkgconfig + +%description +Sass is a CSS pre-processor language to add new features to CSS. +LibSass is a C/C++ port of the Sass CSS precompiler. + +%package -n %{libname} +Summary: Compiler library for A CSS preprocessor language +Group: System/Libraries + +%description -n %{libname} +This package provides the shared library object for libsass. + +%package devel +Summary: Development files for libsass, a library for a CSS preprocessor language +Group: Development/Libraries/C and C++ +Requires: %{libname} = %{version} + +%description devel +This package provides development header files for libsass. + +%prep +%setup -q +%patch -P 1 -P 2 -p1 +%patch3 -p1 + +%build +if [ ! -f VERSION ]; then + echo "%{version}" >VERSION +fi +autoreconf -fi +%configure --disable-static +make %{?_smp_mflags} + +%check +make check %{?_smp_mflags} + +%install +%make_install +find %{buildroot} -type f -name "*.la" -delete -print + +%post -n %{libname} -p /sbin/ldconfig +%postun -n %{libname} -p /sbin/ldconfig + +%files -n %{libname} +%license LICENSE +%{_libdir}/libsass*.so.* + +%files devel +%{_includedir}/sass* +%{_libdir}/pkgconfig/libsass.pc +%{_libdir}/libsass*.so + +%changelog