Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libsass for openSUSE:Factory checked 
in at 2024-02-22 20:55:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libsass (Old)
 and      /work/SRC/openSUSE:Factory/.libsass.new.1706 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libsass"

Thu Feb 22 20:55:54 2024 rev:15 rq:1148546 version:3.6.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/libsass/libsass.changes  2023-12-19 
23:15:49.217506926 +0100
+++ /work/SRC/openSUSE:Factory/.libsass.new.1706/libsass.changes        
2024-02-22 20:55:56.305526803 +0100
@@ -1,0 +2,9 @@
+Thu Feb 15 15:49:04 UTC 2024 - Dominique Leuenberger <[email protected]>
+
+- Update to version 3.6.6:
+  + Maintenance release to fix most urgent issues in LibSass.
+  + for openSUSE defacto only a version number change, as the
+    upstream fix mainly contains the now obsolete patch:
+    - libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch
+
+-------------------------------------------------------------------

Old:
----
  libsass-3.6.5.tar.gz
  libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch

New:
----
  libsass-3.6.6.tar.gz

BETA DEBUG BEGIN:
  Old:    upstream fix mainly contains the now obsolete patch:
    - libsass-CVE-2022-43357,CVE-2022-43358,CVE-2022-26592.patch
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libsass.spec ++++++
--- /var/tmp/diff_new_pack.kGTvXr/_old  2024-02-22 20:55:56.865547214 +0100
+++ /var/tmp/diff_new_pack.kGTvXr/_new  2024-02-22 20:55:56.865547214 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package libsass
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,9 +16,9 @@
 #
 
 
-%define libname libsass-3_6_5-1
+%define libname libsass-3_6_6-1
 Name:           libsass
-Version:        3.6.5
+Version:        3.6.6
 Release:        0
 Summary:        Compiler library for A CSS preprocessor language
 License:        MIT
@@ -27,8 +27,6 @@
 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 -- [email protected] -- 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++
@@ -57,7 +55,6 @@
 %prep
 %setup -q
 %patch -P 1 -P 2 -p1
-%patch3 -p1
 
 %build
 if [ ! -f VERSION ]; then

++++++ libsass-3.6.5.tar.gz -> libsass-3.6.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/Readme.md new/libsass-3.6.6/Readme.md
--- old/libsass-3.6.5/Readme.md 2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/Readme.md 2023-12-21 09:30:51.000000000 +0100
@@ -10,7 +10,6 @@
 [![Percentage of issues still 
open](http://isitmaintained.com/badge/open/sass/libsass.svg)](http://isitmaintained.com/project/sass/libsass
 "Percentage of issues still open")
 [![Average time to resolve an 
issue](http://isitmaintained.com/badge/resolution/sass/libsass.svg)](http://isitmaintained.com/project/sass/libsass
 "Average time to resolve an issue")
 
[![Bountysource](https://www.bountysource.com/badge/tracker?tracker_id=283068)](https://www.bountysource.com/trackers/283068-libsass?utm_source=283068&utm_medium=shield&utm_campaign=TRACKER_BADGE
 "Bountysource")
-[![Join 
us](https://libsass-slack.herokuapp.com/badge.svg)](https://libsass-slack.herokuapp.com/
 "Slack communication channels")
 
 **Warning:** [LibSass is 
deprecated](https://sass-lang.com/blog/libsass-is-deprecated).
 While it will continue to receive maintenance releases indefinitely, there are 
no
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/contrib/libsass.spec 
new/libsass-3.6.6/contrib/libsass.spec
--- old/libsass-3.6.5/contrib/libsass.spec      2021-05-21 02:33:02.000000000 
+0200
+++ new/libsass-3.6.6/contrib/libsass.spec      2023-12-21 09:30:51.000000000 
+0100
@@ -4,7 +4,7 @@
 Summary:        A C/C++ implementation of a Sass compiler
 
 License:        MIT
-URL:            http://libsass.org
+URL:            https://sass-lang.com/
 Source0:        %{name}-%{version}.tar.gz
 
 BuildRequires:  gcc-c++ >= 4.7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/docs/build-on-gentoo.md 
new/libsass-3.6.6/docs/build-on-gentoo.md
--- old/libsass-3.6.5/docs/build-on-gentoo.md   2021-05-21 02:33:02.000000000 
+0200
+++ new/libsass-3.6.6/docs/build-on-gentoo.md   2023-12-21 09:30:51.000000000 
+0100
@@ -7,7 +7,7 @@
 inherit eutils git-2 autotools
 
 DESCRIPTION="A C/C++ implementation of a Sass compiler."
-HOMEPAGE="http://libsass.org/";
+HOMEPAGE="https://sass-lang.com/";
 EGIT_PROJECT='libsass'
 EGIT_REPO_URI="https://github.com/sass/libsass.git";
 LICENSE="MIT"
@@ -38,7 +38,7 @@
 inherit eutils git-2 autotools
 
 DESCRIPTION="Command Line Tool for LibSass."
-HOMEPAGE="http://libsass.org/";
+HOMEPAGE="https://sass-lang.com/";
 EGIT_PROJECT='sassc'
 EGIT_REPO_URI="https://github.com/sass/sassc.git";
 LICENSE="MIT"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/docs/build.md 
new/libsass-3.6.6/docs/build.md
--- old/libsass-3.6.5/docs/build.md     2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/docs/build.md     2023-12-21 09:30:51.000000000 +0100
@@ -33,6 +33,20 @@
 
 - [Building shared system library][4]
 
+### Building from vcpkg
+
+The libsass port in [vcpkg][12] is kept up to date by Microsoft team members 
and community contributors. You can download and install libsass using the 
vcpkg dependency manager:
+
+```bash
+git clone https://github.com/Microsoft/vcpkg.git
+cd vcpkg
+./bootstrap-vcpkg.sh  # ./bootstrap-vcpkg.bat for Windows
+./vcpkg integrate install
+./vcpkg install libsass
+```
+
+If the version is out of date, please [create an issue or pull request][12] on 
the vcpkg repository.
+
 Compiling with clang instead of gcc
 --
 
@@ -95,3 +109,4 @@
 [9]: implementations.md
 [10]: build-on-darwin.md
 [11]: build-with-visual-studio.md
+[12]: https://github.com/Microsoft/vcpkg
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/docs/dev-ast-memory.md 
new/libsass-3.6.6/docs/dev-ast-memory.md
--- old/libsass-3.6.5/docs/dev-ast-memory.md    2021-05-21 02:33:02.000000000 
+0200
+++ new/libsass-3.6.6/docs/dev-ast-memory.md    2023-12-21 09:30:51.000000000 
+0100
@@ -200,7 +200,7 @@
 ```
 
 This will print lost memory on exit to stderr. You can also use
-`setDbg(true)` on sepecific variables to emit reference counter
+`setDbg(true)` on specific variables to emit reference counter
 increase, decrease and other events.
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/res/resource.rc 
new/libsass-3.6.6/res/resource.rc
--- old/libsass-3.6.5/res/resource.rc   2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/res/resource.rc   2023-12-21 09:30:51.000000000 +0100
@@ -22,7 +22,7 @@
       VALUE "FileDescription", "A C/C++ implementation of a Sass compiler"
       VALUE "FileVersion", "1.0.0.0"
       VALUE "InternalName", "libsass"
-      VALUE "LegalCopyright", "\251 2017 libsass.org"
+      VALUE "LegalCopyright", "\251 2017 sass-lang.org"
       VALUE "OriginalFilename", "libsass.dll"
       VALUE "ProductName", "LibSass Library"
       VALUE "ProductVersion", "1.0.0.0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/src/ast_selectors.cpp 
new/libsass-3.6.6/src/ast_selectors.cpp
--- old/libsass-3.6.5/src/ast_selectors.cpp     2021-05-21 02:33:02.000000000 
+0200
+++ new/libsass-3.6.6/src/ast_selectors.cpp     2023-12-21 09:30:51.000000000 
+0100
@@ -868,7 +868,7 @@
     for (SimpleSelectorObj simple : elements()) {
       if (PseudoSelector * pseudo = Cast<PseudoSelector>(simple)) {
         if (SelectorList* sel = Cast<SelectorList>(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 @@
   }
 
   /* 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<sass::vector<ComplexSelectorObj>> 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 @@
     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 -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/src/debugger.hpp 
new/libsass-3.6.6/src/debugger.hpp
--- old/libsass-3.6.5/src/debugger.hpp  2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/src/debugger.hpp  2023-12-21 09:30:51.000000000 +0100
@@ -430,6 +430,7 @@
     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 -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/src/fn_miscs.cpp 
new/libsass-3.6.6/src/fn_miscs.cpp
--- old/libsass-3.6.5/src/fn_miscs.cpp  2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/src/fn_miscs.cpp  2023-12-21 09:30:51.000000000 +0100
@@ -160,10 +160,14 @@
       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<Value>(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<Value>(rv);
+      if (value != nullptr) {
+        value->set_delayed(false);
+        return value.detach();
+      }
+      rv->set_delayed(false);
+      return nullptr;
     }
 
     //////////////////////////
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/src/inspect.cpp 
new/libsass-3.6.6/src/inspect.cpp
--- old/libsass-3.6.5/src/inspect.cpp   2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/src/inspect.cpp   2023-12-21 09:30:51.000000000 +0100
@@ -463,6 +463,7 @@
       { 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<String_Constant>(list_item)) {
@@ -1088,7 +1089,7 @@
 
   void Inspect::operator()(CompoundSelector* sel)
   {
-    if (sel->hasRealParent()) {
+    if (sel->hasRealParent() /* || sel->has_real_parent_ref() */) {
       append_string("&");
     }
     for (auto& item : sel->elements()) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/src/prelexer.cpp 
new/libsass-3.6.6/src/prelexer.cpp
--- old/libsass-3.6.5/src/prelexer.cpp  2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/src/prelexer.cpp  2023-12-21 09:30:51.000000000 +0100
@@ -305,7 +305,7 @@
     const char* css_whitespace(const char* src) {
       return one_plus< alternatives<spaces, line_comment> >(src);
     }
-    // Match optional_css_whitepace plus block_comments
+    // Match optional_css_whitespace plus block_comments
     const char* optional_css_comments(const char* src) {
       return zero_plus< alternatives<spaces, line_comment, block_comment> 
>(src);
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/src/prelexer.hpp 
new/libsass-3.6.6/src/prelexer.hpp
--- old/libsass-3.6.5/src/prelexer.hpp  2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/src/prelexer.hpp  2023-12-21 09:30:51.000000000 +0100
@@ -189,7 +189,7 @@
     // Match zero plus white-space or line_comments
     const char* optional_css_whitespace(const char* src);
     const char* css_whitespace(const char* src);
-    // Match optional_css_whitepace plus block_comments
+    // Match optional_css_whitespace plus block_comments
     const char* optional_css_comments(const char* src);
     const char* css_comments(const char* src);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/src/sass2scss.cpp 
new/libsass-3.6.6/src/sass2scss.cpp
--- old/libsass-3.6.5/src/sass2scss.cpp 2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/src/sass2scss.cpp 2023-12-21 09:30:51.000000000 +0100
@@ -179,10 +179,10 @@
                while (true)
                {
 
-                       // try to find some meaningfull char
+                       // try to find some meaningful char
                        col_pos = sass.find_first_not_of(" \t\n\v\f\r", 
col_pos);
 
-                       // there was no meaningfull char found
+                       // there was no meaningful char found
                        if (col_pos == std::string::npos) return false;
 
                        // found a multiline comment opener
@@ -467,7 +467,7 @@
                // right trim input
                sass = rtrim(sass);
 
-               // get position of first meaningfull character in string
+               // get position of first meaningful character in string
                size_t pos_left = 
sass.find_first_not_of(SASS2SCSS_FIND_WHITESPACE);
 
                // special case for final run
@@ -479,7 +479,7 @@
                        // just add complete whitespace
                        converter.whitespace += sass + "\n";
                }
-               // have meaningfull first char
+               // have meaningful first char
                else
                {
 
@@ -683,7 +683,7 @@
                                // not in comment mode
                                if (IS_PARSING(converter))
                                {
-                                       // has meaningfull chars
+                                       // has meaningful chars
                                        if (hasCharData(sass))
                                        {
                                                // is probably a property
@@ -698,7 +698,7 @@
                                // not in comment mode
                                if (IS_PARSING(converter))
                                {
-                                       // had meaningfull chars
+                                       // had meaningful chars
                                        if (converter.property)
                                        {
                                                // print block opener
@@ -758,14 +758,14 @@
                                scss += flush(sass, converter);
                        }
 
-                       // get position of last meaningfull char
+                       // get position of last meaningful char
                        size_t pos_right = 
sass.find_last_not_of(SASS2SCSS_FIND_WHITESPACE);
 
                        // check for invalid result
                        if (pos_right != std::string::npos)
                        {
 
-                               // get the last meaningfull char
+                               // get the last meaningful char
                                std::string close = sass.substr(pos_right, 1);
 
                                // check if next line should be concatenated 
(list mode)
@@ -773,7 +773,7 @@
                                converter.semicolon = IS_PARSING(converter) && 
close == ";";
 
                                // check if we have more than
-                               // one meaningfull char
+                               // one meaningful char
                                if (pos_right > 0)
                                {
 
@@ -785,10 +785,10 @@
                                }
 
                        }
-                       // EO have meaningfull chars from end
+                       // EO have meaningful chars from end
 
                }
-               // EO have meaningfull chars from start
+               // EO have meaningful chars from start
 
                // return scss
                return scss;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/src/util.cpp 
new/libsass-3.6.6/src/util.cpp
--- old/libsass-3.6.5/src/util.cpp      2021-05-21 02:33:02.000000000 +0200
+++ new/libsass-3.6.6/src/util.cpp      2023-12-21 09:30:51.000000000 +0100
@@ -306,7 +306,7 @@
           // if (cp == '\n') cp = 32;
 
           // use a very simple approach to convert via utf8 lib
-          // maybe there is a more elegant way; maybe we shoud
+          // maybe there is a more elegant way; maybe we should
           // convert the whole output from string to a stream!?
           // allocate memory for utf8 char and convert to utf8
           unsigned char u[5] = {0,0,0,0,0}; utf8::append(cp, u);
@@ -395,7 +395,7 @@
           // if (cp == '\n') cp = 32;
 
           // use a very simple approach to convert via utf8 lib
-          // maybe there is a more elegant way; maybe we shoud
+          // maybe there is a more elegant way; maybe we should
           // convert the whole output from string to a stream!?
           // allocate memory for utf8 char and convert to utf8
           unsigned char u[5] = {0,0,0,0,0}; utf8::append(cp, u);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libsass-3.6.5/win/libsass.vcxproj 
new/libsass-3.6.6/win/libsass.vcxproj
--- old/libsass-3.6.5/win/libsass.vcxproj       2021-05-21 02:33:02.000000000 
+0200
+++ new/libsass-3.6.6/win/libsass.vcxproj       2023-12-21 09:30:51.000000000 
+0100
@@ -72,6 +72,9 @@
   <PropertyGroup Label="VS2019 toolset selection" 
Condition="'$(VisualStudioVersion)' == '16.0'">
     <PlatformToolset>v142</PlatformToolset>
   </PropertyGroup>
+  <PropertyGroup Label="VS2022 toolset selection" 
Condition="'$(VisualStudioVersion)' == '17.0'">
+    <PlatformToolset>v143</PlatformToolset>
+  </PropertyGroup>
   <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" 
Label="Configuration">
     <UseDebugLibraries>true</UseDebugLibraries>
   </PropertyGroup>

Reply via email to