Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-pyScss for openSUSE:Factory checked in at 2022-10-03 13:46:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-pyScss (Old) and /work/SRC/openSUSE:Factory/.python-pyScss.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pyScss" Mon Oct 3 13:46:13 2022 rev:5 rq:1007522 version:1.4.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-pyScss/python-pyScss.changes 2022-01-11 21:24:34.265182561 +0100 +++ /work/SRC/openSUSE:Factory/.python-pyScss.new.2275/python-pyScss.changes 2022-10-03 13:47:01.861648918 +0200 @@ -1,0 +2,10 @@ +Sat Oct 1 17:29:53 UTC 2022 - Dirk M??ller <dmuel...@suse.com> + +- update to 1.4.0: + * Add selector-append function support + * Fix FutureWarning + * Fix collections deprecation warning + * use pathlib2 instead of pathlib +- drop merged_pr_408.patch, pr_411.patch (upstream) + +------------------------------------------------------------------- Old: ---- merged_pr_408.patch pr_411.patch pyScss-1.3.7.tar.gz New: ---- pyScss-1.4.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-pyScss.spec ++++++ --- /var/tmp/diff_new_pack.1ZkDXy/_old 2022-10-03 13:47:04.017653660 +0200 +++ /var/tmp/diff_new_pack.1ZkDXy/_new 2022-10-03 13:47:04.025653678 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-pyScss # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2022 SUSE LLC # Copyright (c) 2014 LISA GmbH, Bingen, Germany. # # All modifications and additions to the file contributed by third parties @@ -20,15 +20,13 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} %define skip_python2 1 Name: python-pyScss -Version: 1.3.7 +Version: 1.4.0 Release: 0 Summary: pyScss, a Scss compiler for Python License: MIT Group: Development/Languages/Python URL: https://github.com/Kronuz/pyScss -Source: https://github.com/Kronuz/pyScss/archive/refs/tags/%{version}.tar.gz#/pyScss-%{version}.tar.gz -Patch0: pr_411.patch -Patch1: merged_pr_408.patch +Source: https://github.com/Kronuz/pyScss/archive/refs/tags/v%{version}.tar.gz#/pyScss-%{version}.tar.gz BuildRequires: %{python_module devel} BuildRequires: %{python_module pytest} BuildRequires: %{python_module setuptools} @@ -38,7 +36,7 @@ Requires: python-setuptools Requires: python-six Requires(post): update-alternatives -Requires(postun): update-alternatives +Requires(postun):update-alternatives %python_subpackages %description @@ -58,8 +56,6 @@ %prep %setup -q -n pyScss-%{version} -%patch0 -p1 -%patch1 -p1 %build export CFLAGS="%{optflags}" ++++++ pyScss-1.3.7.tar.gz -> pyScss-1.4.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/conftest.py new/pyScss-1.4.0/conftest.py --- old/pyScss-1.3.7/conftest.py 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/conftest.py 2022-02-23 13:47:48.000000000 +0100 @@ -58,7 +58,10 @@ parts = str(path).split(path.sep) # -4 tests / -3 files / -2 directory / -1 file.scss if parts[-4:-2] == ['tests', 'files']: - return SassFile(path, parent) + if hasattr(SassFile, "from_parent"): + return SassFile.from_parent(parent, fspath=path) + else: + return SassFile(path, parent) class SassFile(pytest.File): @@ -67,7 +70,10 @@ if not fontforge and parent_name == 'fonts': pytest.skip("font tests require fontforge") - yield SassItem(str(self.fspath), self) + if hasattr(SassItem, "from_parent"): + yield SassItem.from_parent(parent=self, name=str(self.fspath)) + else: + yield SassItem(str(self.fspath), self) class SassItem(pytest.Item): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/compiler.py new/pyScss-1.4.0/scss/compiler.py --- old/pyScss-1.3.7/scss/compiler.py 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/compiler.py 2022-02-23 13:47:48.000000000 +0100 @@ -300,8 +300,8 @@ self.rules = self.apply_extends(self.rules) output, total_selectors = self.create_css(self.rules) - if total_selectors >= 4096: - log.error("Maximum number of supported selectors in Internet Explorer (4095) exceeded!") + if total_selectors > 65534: + log.warning("Maximum number of supported selectors in Internet Explorer (65534) exceeded!") return output diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/extension/compass/gradients.py new/pyScss-1.4.0/scss/extension/compass/gradients.py --- old/pyScss-1.3.7/scss/extension/compass/gradients.py 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/extension/compass/gradients.py 2022-02-23 13:47:48.000000000 +0100 @@ -59,7 +59,7 @@ if prev_color: stops.append(None) stops = stops[:len(colors)] - if stops[0] is None: + if stops[0] is None or stops[0] == Number(0): stops[0] = Number(0, '%') if stops[-1] is None: stops[-1] = Number(100, '%') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/extension/compass/helpers.py new/pyScss-1.4.0/scss/extension/compass/helpers.py --- old/pyScss-1.3.7/scss/extension/compass/helpers.py 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/extension/compass/helpers.py 2022-02-23 13:47:48.000000000 +0100 @@ -220,6 +220,8 @@ # ------------------------------------------------------------------------------ # Selector generation +# selector-append is a Sass function +@ns.declare_alias('selector-append') @ns.declare def append_selector(selector, to_append): if isinstance(selector, List): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/namespace.py new/pyScss-1.4.0/scss/namespace.py --- old/pyScss-1.3.7/scss/namespace.py 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/namespace.py 2022-02-23 13:47:48.000000000 +0100 @@ -169,9 +169,16 @@ def _auto_register_function(self, function, name, ignore_args=0): name = name.replace('_', '-').rstrip('-') - argspec = inspect.getargspec(function) + try: + argspec = inspect.getfullargspec(function) + varkw = argspec.varkw + except AttributeError: + # In python 2.7, getfulargspec does not exist. + # Let's use getargspec as fallback. + argspec = inspect.getargspec(function) + varkw = argspec.keywords - if argspec.varargs or argspec.keywords: + if argspec.varargs or varkw: # Accepts some arbitrary number of arguments arities = [None] else: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/scss_meta.py new/pyScss-1.4.0/scss/scss_meta.py --- old/pyScss-1.3.7/scss/scss_meta.py 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/scss_meta.py 2022-02-23 13:47:48.000000000 +0100 @@ -3,7 +3,7 @@ pyScss, a Scss compiler for Python @author German M. Bravo (Kronuz) <german...@gmail.com> -@version 1.3.7 +@version 1.4.0 @see https://github.com/Kronuz/pyScss @copyright (c) 2012-2013 German M. Bravo (Kronuz) @license MIT License @@ -46,8 +46,8 @@ import sys -VERSION_INFO = (1, 3, 7) -DATE_INFO = (2020, 3, 26) # YEAR, MONTH, DAY +VERSION_INFO = (1, 4, 0) +DATE_INFO = (2022, 2, 23) # YEAR, MONTH, DAY VERSION = '.'.join(str(i) for i in VERSION_INFO) REVISION = '%04d%02d%02d' % DATE_INFO BUILD_INFO = "pyScss v" + VERSION + " (" + REVISION + ")" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/selector.py new/pyScss-1.4.0/scss/selector.py --- old/pyScss-1.3.7/scss/selector.py 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/selector.py 2022-02-23 13:47:48.000000000 +0100 @@ -33,7 +33,7 @@ # Square brackets are attribute tests # TODO: this doesn't handle ] within a string - | [[] .+? []] + | \[ .+? \] # Dot and pound start class/id selectors. Percent starts a Sass # extend-target faux selector. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/src/_speedups.c new/pyScss-1.4.0/scss/src/_speedups.c --- old/pyScss-1.3.7/scss/src/_speedups.c 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/src/_speedups.c 2022-02-23 13:47:48.000000000 +0100 @@ -8,6 +8,7 @@ * MIT license (http://www.opensource.org/licenses/mit-license.php) * Copyright (c) 2011 German M. Bravo (Kronuz), All rights reserved. */ +#define PY_SSIZE_T_CLEAN #include <Python.h> #include "py3defs.h" #include "block_locator.h" @@ -22,7 +23,7 @@ } scss_BlockLocator; static char* -scss_pyunicode_to_utf8(PyObject* obj, int* len) +scss_pyunicode_to_utf8(PyObject* obj, Py_ssize_t* len) { char* internal_buffer; char* ret; @@ -188,7 +189,8 @@ PyObject *py_token; char *tok; - int token_num, len; + int token_num; + Py_ssize_t len; PyObject *restrictions = NULL; Hashtable *_restrictions = NULL; @@ -272,7 +274,7 @@ scss_Scanner_reset(scss_Scanner *self, PyObject *args, PyObject *kwds) { char *input = NULL; - int input_sz = 0; + Py_ssize_t input_sz = 0; if (self->scanner != NULL) { if (PyArg_ParseTuple(args, "|z#", &input, &input_sz)) { @@ -289,11 +291,11 @@ { PyObject *item, *item0, *item1; int i, is_tuple, _is_tuple; - long size; + Py_ssize_t size; Pattern *_patterns = NULL; int patterns_sz = 0; - int len; + Py_ssize_t len; if (!Scanner_initialized()) { is_tuple = PyTuple_Check(patterns); if (is_tuple || PyList_Check(patterns)) { @@ -325,17 +327,17 @@ { PyObject *item, *item0, *item1; int i, is_tuple, _is_tuple; - long size; + Py_ssize_t size; PyObject *patterns, *ignore; Pattern *_patterns = NULL; int patterns_sz = 0; - int len; + Py_ssize_t len; Pattern *_ignore = NULL; int ignore_sz = 0; PyObject *py_input = NULL; char *encoded_input = NULL; - int encoded_input_sz = 0; + Py_ssize_t encoded_input_sz = 0; self->scanner = NULL; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/src/hashtable.c new/pyScss-1.4.0/scss/src/hashtable.c --- old/pyScss-1.3.7/scss/src/hashtable.c 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/src/hashtable.c 2022-02-23 13:47:48.000000000 +0100 @@ -43,7 +43,7 @@ hash = ((hash << r2) | (hash >> (32 - r2))) * m + n; } - tail = (const unsigned char *)(key + nblocks * 4); + tail = (const unsigned char *)(key) + nblocks * 4; switch (len & 3) { case 3: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/src/scanner.c new/pyScss-1.4.0/scss/src/scanner.c --- old/pyScss-1.3.7/scss/src/scanner.c 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/src/scanner.c 2022-02-23 13:47:48.000000000 +0100 @@ -8,6 +8,7 @@ * MIT license (http://www.opensource.org/licenses/mit-license.php) * Copyright (c) 2011 German M. Bravo (Kronuz), All rights reserved. */ +#define PY_SSIZE_T_CLEAN #include <Python.h> #include <stdio.h> @@ -50,7 +51,7 @@ } static int -Pattern_match(Pattern *regex, char *string, int string_sz, int start_at, Token *p_token) { +Pattern_match(Pattern *regex, char *string, Py_ssize_t string_sz, int start_at, Token *p_token) { int options = PCRE_ANCHORED | PCRE_UTF8; const char *errptr; int ret, erroffset, ovector[3]; @@ -243,7 +244,7 @@ /* Scanner public interface */ void -Scanner_reset(Scanner *self, char *input, int input_sz) { +Scanner_reset(Scanner *self, char *input, Py_ssize_t input_sz) { int i; #ifdef DEBUG @@ -290,7 +291,7 @@ } Scanner* -Scanner_new(Pattern patterns[], int patterns_sz, Pattern ignore[], int ignore_sz, char *input, int input_sz) +Scanner_new(Pattern patterns[], int patterns_sz, Pattern ignore[], int ignore_sz, char *input, Py_ssize_t input_sz) { int i; size_t len; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/src/scanner.h new/pyScss-1.4.0/scss/src/scanner.h --- old/pyScss-1.3.7/scss/src/scanner.h 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/src/scanner.h 2022-02-23 13:47:48.000000000 +0100 @@ -11,6 +11,9 @@ #ifndef SCANNER_H #define SCANNER_H +#define PY_SSIZE_T_CLEAN +#include <Python.h> + #include "hashtable.h" #define PCRE_STATIC @@ -50,7 +53,7 @@ int tokens_bsz; Token *tokens; Restriction *restrictions; - int input_sz; + Py_ssize_t input_sz; char *input; int pos; } Scanner; @@ -59,8 +62,8 @@ void Scanner_initialize(Pattern *, int); void Scanner_finalize(void); -void Scanner_reset(Scanner *self, char *input, int input_sz); -Scanner *Scanner_new(Pattern *, int, Pattern *, int, char *, int); +void Scanner_reset(Scanner *self, char *input, Py_ssize_t input_sz); +Scanner *Scanner_new(Pattern *, int, Pattern *, int, char *, Py_ssize_t); void Scanner_del(Scanner *); Token* Scanner_token(Scanner *, int, Hashtable *restrictions); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/tests/files/compass/gradients.css new/pyScss-1.4.0/scss/tests/files/compass/gradients.css --- old/pyScss-1.3.7/scss/tests/files/compass/gradients.css 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/tests/files/compass/gradients.css 2022-02-23 13:47:48.000000000 +0100 @@ -82,3 +82,7 @@ .bg-linear-gradient-to { background: linear-gradient(to right, red, green); } + +.panel { + background-image: linear-gradient(to bottom, red, green); +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/tests/files/compass/gradients.scss new/pyScss-1.4.0/scss/tests/files/compass/gradients.scss --- old/pyScss-1.3.7/scss/tests/files/compass/gradients.scss 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/tests/files/compass/gradients.scss 2022-02-23 13:47:48.000000000 +0100 @@ -93,3 +93,8 @@ .bg-linear-gradient-to { background: linear-gradient(to right, red 0%, green 100%); } + +// Issue #404 +.panel { + background-image: linear-gradient(to bottom, red 0, green 100%); +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/scss/types.py new/pyScss-1.4.0/scss/types.py --- old/pyScss-1.3.7/scss/types.py 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/scss/types.py 2022-02-23 13:47:48.000000000 +0100 @@ -3,7 +3,10 @@ from __future__ import print_function from __future__ import unicode_literals -from collections import Iterable +try: + from collections.abc import Iterable +except ImportError: + from collections import Iterable import colorsys from fractions import Fraction import operator diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pyScss-1.3.7/setup.py new/pyScss-1.4.0/setup.py --- old/pyScss-1.3.7/setup.py 2020-03-26 16:04:27.000000000 +0100 +++ new/pyScss-1.4.0/setup.py 2022-02-23 13:47:48.000000000 +0100 @@ -17,7 +17,7 @@ install_requires = ['six'] if sys.version_info < (3, 4): install_requires.append('enum34') - install_requires.append('pathlib') + install_requires.append('pathlib2') if sys.version_info < (2, 7): install_requires.append('ordereddict')