<86>Jun 16 02:20:10 userdel[3430537]: delete user 'rooter' <86>Jun 16 02:20:10 userdel[3430537]: removed group 'rooter' owned by 'rooter' <86>Jun 16 02:20:10 userdel[3430537]: removed shadow group 'rooter' owned by 'rooter' <86>Jun 16 02:20:10 groupadd[3430557]: group added to /etc/group: name=rooter, GID=1811 <86>Jun 16 02:20:10 groupadd[3430557]: group added to /etc/gshadow: name=rooter <86>Jun 16 02:20:10 groupadd[3430557]: new group: name=rooter, GID=1811 <86>Jun 16 02:20:10 useradd[3430578]: new user: name=rooter, UID=1811, GID=1811, home=/root, shell=/bin/bash <86>Jun 16 02:20:10 userdel[3430608]: delete user 'builder' <86>Jun 16 02:20:10 userdel[3430608]: removed group 'builder' owned by 'builder' <86>Jun 16 02:20:10 userdel[3430608]: removed shadow group 'builder' owned by 'builder' <86>Jun 16 02:20:10 groupadd[3430628]: group added to /etc/group: name=builder, GID=1812 <86>Jun 16 02:20:10 groupadd[3430628]: group added to /etc/gshadow: name=builder <86>Jun 16 02:20:10 groupadd[3430628]: new group: name=builder, GID=1812 <86>Jun 16 02:20:10 useradd[3430638]: new user: name=builder, UID=1812, GID=1812, home=/usr/src, shell=/bin/bash <13>Jun 16 02:20:14 rpmi: libgdbm-1.8.3-alt10 sisyphus+278100.1600.1.1 1626058413 installed <13>Jun 16 02:20:14 rpmi: libexpat-2.5.0-alt1 p10+324220.100.1.1 1688465137 installed <13>Jun 16 02:20:14 rpmi: libp11-kit-0.24.1-alt1 p10+305061.100.3.1 1660573397 installed <13>Jun 16 02:20:14 rpmi: libtasn1-4.19.0-alt1 p10+309071.100.2.1 1668522760 installed <13>Jun 16 02:20:14 rpmi: rpm-macros-alternatives-0.5.2-alt1 p10+309129.100.2.1 1668066636 installed <13>Jun 16 02:20:14 rpmi: alternatives-0.5.2-alt1 p10+309129.100.2.1 1668066636 installed <13>Jun 16 02:20:14 rpmi: ca-certificates-2022.09.15-alt1 p10+308004.100.2.1 1665748370 installed <13>Jun 16 02:20:14 rpmi: ca-trust-0.1.6-alt1 p10+344774.100.1.1 1712685728 installed <13>Jun 16 02:20:14 rpmi: p11-kit-trust-0.24.1-alt1 p10+305061.100.3.1 1660573397 installed <13>Jun 16 02:20:14 rpmi: libcrypto1.1-1.1.1w-alt0.p10.1 p10+330586.100.4.1 1697560982 installed <13>Jun 16 02:20:14 rpmi: libssl1.1-1.1.1w-alt0.p10.1 p10+330586.100.4.1 1697560982 installed <13>Jun 16 02:20:14 rpmi: python3-3.9.18-alt1 p10+340781.400.5.1 1709555259 installed <13>Jun 16 02:20:14 rpmi: python3-base-3.9.18-alt1 p10+340781.400.5.1 1709555259 installed <13>Jun 16 02:20:14 rpmi: python3-module-pyproject-installer-0.5.2-alt1 p10+325520.300.7.1 1691156288 installed <13>Jun 16 02:20:14 rpmi: rpm-macros-pyproject-0.0.4-alt1 p10+325520.400.7.1 1691156303 installed <13>Jun 16 02:20:14 rpmi: tests-for-installed-python3-pkgs-0.1.22-alt1 p10+325520.200.7.1 1691156214 installed <13>Jun 16 02:20:14 rpmi: rpm-build-python3-0.1.22-alt1 p10+325520.200.7.1 1691156214 installed <13>Jun 16 02:20:14 rpmi: rpm-build-pyproject-0.0.4-alt1 p10+325520.400.7.1 1691156303 installed <13>Jun 16 02:20:16 rpmi: python3-module-pkg_resources-1:57.4.0-alt1 p10+281549.200.4.1 1628026198 installed <13>Jun 16 02:20:16 rpmi: python3-module-iniconfig-1.1.1-alt1 sisyphus+270533.3400.6.1 1619684870 installed <13>Jun 16 02:20:16 rpmi: libwebp7-1.3.2-alt1 p10+334597.100.5.1 1701266006 installed <13>Jun 16 02:20:16 rpmi: libjpeg-2:2.1.5.1-alt1.p10.2 p10+347367.100.3.1 1715149001 installed <13>Jun 16 02:20:16 rpmi: python3-module-tomli-2.0.1-alt2 p10+307737.1310.28.1 1666774120 installed <13>Jun 16 02:20:16 rpmi: python3-module-pluggy-1.0.0-alt1 p10+317847.20170.110.1 1687546788 installed <13>Jun 16 02:20:16 rpmi: python3-module-packaging-23.0-alt1 p10+325520.240.7.1 1691156260 installed <13>Jun 16 02:20:16 rpmi: python3-module-attrs-22.1.0-alt1 p10+307737.2052.28.1 1666775429 installed <13>Jun 16 02:20:16 rpmi: python3-module-apipkg-1.5-alt1 sisyphus+275892.100.2.1 1624872742 installed <13>Jun 16 02:20:16 rpmi: python3-module-py-1.10.0-alt1 sisyphus+271297.460.4.1 1620386890 installed <13>Jun 16 02:20:16 rpmi: python3-module-olefile-0.46-alt1 sisyphus+275843.100.1.1 1624797945 installed <13>Jun 16 02:20:17 rpmi: libpython3-3.9.18-alt1 p10+340781.400.5.1 1709555259 installed <13>Jun 16 02:20:17 rpmi: libpcre16-8.45-alt1 sisyphus+278099.3500.1.1 1626030372 installed <13>Jun 16 02:20:17 rpmi: pcretest-8.45-alt1 sisyphus+278099.3500.1.1 1626030372 installed <13>Jun 16 02:20:17 rpmi: libopenjpeg2.0-2.5.0-alt1 p10+300002.100.4.1 1652888730 installed <13>Jun 16 02:20:17 rpmi: libncurses-6.3.20220618-alt1 p10+319472.100.4.1 1685092691 installed <13>Jun 16 02:20:17 rpmi: libtinfo-devel-6.3.20220618-alt1 p10+319472.100.4.1 1685092691 installed <13>Jun 16 02:20:17 rpmi: libncurses-devel-6.3.20220618-alt1 p10+319472.100.4.1 1685092691 installed <13>Jun 16 02:20:18 rpmi: python3-dev-3.9.18-alt1 p10+340781.400.5.1 1709555259 installed <13>Jun 16 02:20:18 rpmi: liblcms2-2.12-alt2 p10+294140.100.1.1 1643205397 installed <13>Jun 16 02:20:18 rpmi: libjbig2.1-2.1-alt2 p10+327649.100.4.1 1693857180 installed <13>Jun 16 02:20:18 rpmi: libpng16-1.6.37-alt1 sisyphus+275734.100.2.1 1624788826 installed <13>Jun 16 02:20:18 rpmi: libgraphite2-1.3.14-alt2.1 sisyphus+279571.100.1.2 1626605111 installed <13>Jun 16 02:20:18 rpmi: libgomp1-10.3.1-alt2 sisyphus+277353.100.2.1 1625525890 installed <13>Jun 16 02:20:18 rpmi: libimagequant-2.15.1-alt1_1 sisyphus+278117.100.1.1 1626029847 installed <13>Jun 16 02:20:18 rpmi: libdeflate-1.10-alt1 p10+300002.40.4.1 1652888688 installed <13>Jun 16 02:20:18 rpmi: libtiff5-4.4.0-alt2 p10+327649.400.4.1 1693857754 installed <13>Jun 16 02:20:18 rpmi: libbrotlicommon-1.0.9-alt2 sisyphus+278430.100.1.2 1626213212 installed <13>Jun 16 02:20:18 rpmi: libbrotlidec-1.0.9-alt2 sisyphus+278430.100.1.2 1626213212 installed <13>Jun 16 02:20:18 rpmi: libharfbuzz-5.3.1-alt1 p10+311526.40.12.1 1678459109 installed <13>Jun 16 02:20:18 rpmi: libfreetype-2.11.0-alt1 p10+281745.100.1.1 1628002271 installed <13>Jun 16 02:20:18 rpmi: libXdmcp-1.1.3-alt1 sisyphus+278816.100.1.1 1626219231 installed <13>Jun 16 02:20:18 rpmi: libXau-1.0.9-alt1 sisyphus+278247.100.1.1 1626080736 installed <13>Jun 16 02:20:18 rpmi: libxcb-1.14-alt1 sisyphus+277968.100.1.3 1625952322 installed <13>Jun 16 02:20:18 rpmi: python3-module-Pillow-9.4.0-alt2 p10+336131.60.5.1 1702371505 installed <13>Jun 16 02:20:18 rpmi: python3-module-setuptools-1:57.4.0-alt1 p10+281549.200.4.1 1628026198 installed <13>Jun 16 02:20:18 rpmi: libpcre-devel-8.45-alt1 sisyphus+278099.3500.1.1 1626030372 installed <13>Jun 16 02:20:18 rpmi: python3-module-pytest-7.0.1-alt1 p10+317847.3000.110.1 1687546567 installed <13>Jun 16 02:20:18 rpmi: python3-module-wheel-0.36.2-alt1 sisyphus+270533.770.6.1 1619683711 installed <13>Jun 16 02:20:18 rpmi: python3-module-six-1.16.0-alt1.p10 p10+340092.560.10.1 1707922977 installed Building target platforms: x86_64 Building for target x86_64 Wrote: /usr/src/in/nosrpm/python3-module-pyScss-1.4.0-alt4.p10.nosrc.rpm (w1.gzdio) Installing python3-module-pyScss-1.4.0-alt4.p10.src.rpm Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /usr/src/tmp/rpm-tmp.61819 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + rm -rf python3-module-pyScss-1.4.0 + echo 'Source #0 (python3-module-pyScss-1.4.0.tar):' Source #0 (python3-module-pyScss-1.4.0.tar): + /bin/tar -xf /usr/src/RPM/SOURCES/python3-module-pyScss-1.4.0.tar + cd python3-module-pyScss-1.4.0 + /bin/chmod -c -Rf u+rwX,go-w . + echo 'Patch #1 (python3-module-pyScss-1.4.0-alt.patch):' Patch #1 (python3-module-pyScss-1.4.0-alt.patch): + /usr/bin/patch -p1 patching file scss/grammar/expression.py + echo 'Patch #2 (drop-distutils.patch):' Patch #2 (drop-distutils.patch): + /usr/bin/patch -p1 patching file scss/setup.py + /usr/bin/python3 -m pyproject_installer deps --depsconfig /usr/src/RPM/SOURCES/pyproject_deps.json show pep518 + /usr/bin/python3 -m pyproject_installer deps --depsconfig /usr/src/RPM/SOURCES/pyproject_deps.json sync --verify pep518 INFO : pyproject.toml was not found, using defaults + /usr/bin/python3 -m pyproject_installer deps --depsconfig /usr/src/RPM/SOURCES/pyproject_deps.json show pep517 + /usr/bin/python3 -m pyproject_installer deps --depsconfig /usr/src/RPM/SOURCES/pyproject_deps.json sync --verify pep517 INFO : pyproject.toml was not found, using defaults + /usr/bin/python3 -m pyproject_installer deps --depsconfig /usr/src/RPM/SOURCES/pyproject_deps.json show metadata + /usr/bin/python3 -m pyproject_installer deps --depsconfig /usr/src/RPM/SOURCES/pyproject_deps.json sync --verify metadata INFO : Building metadata INFO : Building metadata with prepare_metadata_for_build_wheel INFO : Source tree: /usr/src/RPM/BUILD/python3-module-pyScss-1.4.0 INFO : Output dir: /usr/src/tmp/tmp22cl2kdl INFO : pyproject.toml was not found, using defaults + grep -sm1 -rl -e '^#!/usr/bin/env python.*$' + xargs sed -s -e '1 s/^#!\/usr\/bin\/env python.*$/#!\/usr\/bin\/python3/' #!/usr/bin/python3 # Permission is hereby granted, free of charge, to any person obtaining # a copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, sublicense, and/or sell copies of the Software, and to # permit persons to whom the Software is furnished to do so, subject to # the following conditions: # # The above copyright notice and this permission notice shall be included # in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # Yapps 3.0 - yet another python parser system # Amit J Patel, January 1999 # German M. Bravo, December 2011 # See http://theory.stanford.edu/~amitp/Yapps/ for documentation and updates # v3.0.0 changes (December 2011) # * PEP 8 cleanups # * Optimizations in the scanning (added cache and cleanup() for it) # v2.0.1 changes (October 2001): # * The exceptions inherit the standard Exception class (thanks Rich Salz) # * The scanner can use either a different set of regular expressions # per instance, or allows the subclass to define class fields with # the patterns. This improves performance when many Scanner objects # are being created, because the regular expressions don't have to # be recompiled each time. (thanks Amaury Forgeot d'Arc) # v2.0.2 changes (April 2002) # * Bug fix: generating the 'else' clause when the comment was too # long. v2.0.1 was missing a newline. (thanks Steven Engelhardt) # v2.0.3 changes (August 2002) # * Bug fix: inline tokens using the r"" syntax. # v.2.0.4 changes (July 2003) # * Style change: Replaced `expr` with repr(expr) # * Style change: Changed (b >= a and b < c) into (a <= b < c) # * Bug fix: identifiers in grammar rules that had digits in them were # not accessible in the {{python code}} section # * Bug fix: made the SyntaxError exception class call # Exception.__init__ (thanks Alex Verstak) # * Style change: replaced raise "string exception" with raise # ClassException(...) (thanks Alex Verstak) from string import find from string import join import sys import re INDENT = " " * 4 class Generator: def __init__(self, name, options, tokens, rules): self.change_count = 0 self.name = name self.options = options self.preparser = '' self.postparser = None self.tokens = {} # Map from tokens to regexps self.sets = {} # Map for restriction sets self.ignore = [] # List of token names to ignore in parsing self.terminals = [] # List of token names (to maintain ordering) for n, t in tokens: if n == '#ignore': n = t self.ignore.append(n) if n in self.tokens.keys() and self.tokens[n] != t: if n not in self.ignore: print 'Warning: token', n, 'multiply defined.' else: self.terminals.append(n) self.tokens[n] = t self.rules = {} # Map from rule names to parser nodes self.params = {} # Map from rule names to parameters self.goals = [] # List of rule names (to maintain ordering) for n, p, r in rules: self.params[n] = p self.rules[n] = r self.goals.append(n) self.output = sys.stdout def __getitem__(self, name): # Get options return self.options.get(name, 0) def non_ignored_tokens(self): return filter(lambda x, i=self.ignore: x not in i, self.terminals) def changed(self): self.change_count = 1 + self.change_count def subset(self, a, b): "See if all elements of a are inside b" for x in a: if x not in b: return 0 return 1 def equal_set(self, a, b): "See if a and b have the same elements" if len(a) != len(b): return 0 if a == b: return 1 return self.subset(a, b) and self.subset(b, a) def add_to(self, parent, additions): "Modify parent to include all elements in additions" for x in additions: if x not in parent: parent.append(x) self.changed() def equate(self, a, b): self.add_to(a, b) self.add_to(b, a) def write(self, *args): for a in args: self.output.write(a) def in_test(self, r, x, full, b): if not b: return '0' if len(b) == 1: return '%s == %s' % (x, repr(b[0])) if full and len(b) > len(full) / 2: # Reverse the sense of the test. not_b = filter(lambda x, b=b: x not in b, full) return self.not_in_test(r, x, full, not_b) n = None for k, v in self.sets.items(): if v == b: n = k if n is None: n = '%s_chks' % r while n in self.sets: n += '_' self.sets[n] = b b_set = 'self.%s' % n return '%s in %s' % (x, b_set) def not_in_test(self, r, x, full, b): if not b: return '1' if len(b) == 1: return '%s != %s' % (x, repr(b[0])) n = None for k, v in self.sets.items(): if v == b: n = k if n is None: n = '%s_chks' % r while n in self.sets: n += '_' self.sets[n] = b b_set = 'self.%s' % n return '%s not in %s' % (x, b_set) def peek_call(self, r, a): n = None for k, v in self.sets.items(): if v == a: n = k if n is None: n = '%s_rsts' % r while n in self.sets: n += '_' self.sets[n] = a a_set = 'self.%s' % n if self.equal_set(a, self.non_ignored_tokens()): a_set = '' if self['context-insensitive-scanner']: a_set = '' return 'self._peek(%s)' % a_set def peek_test(self, r, a, b): if self.subset(a, b): return '1' if self['context-insensitive-scanner']: a = self.non_ignored_tokens() return self.in_test(r, self.peek_call(r, a), a, b) def not_peek_test(self, r, a, b): if self.subset(a, b): return '0' return self.not_in_test(r, self.peek_call(r, a), a, b) def calculate(self): while 1: for r in self.goals: self.rules[r].setup(self, r) if self.change_count == 0: break self.change_count = 0 while 1: for r in self.goals: self.rules[r].update(self) if self.change_count == 0: break self.change_count = 0 def dump_information(self): self.calculate() for r in self.goals: print ' _____' + '_' * len(r) print ('___/Rule ' + r + '\\' + '_' * 80)[:79] queue = [self.rules[r]] while queue: top = queue[0] del queue[0] print repr(top) top.first.sort() top.follow.sort() eps = [] if top.accepts_epsilon: eps = ['(null)'] print ' FIRST:', join(top.first + eps, ', ') print ' FOLLOW:', join(top.follow, ', ') for x in top.get_children(): queue.append(x) def generate_output(self): self.calculate() self.write(self.preparser) self.write("class ", self.name, "Scanner(Scanner):\n") self.write(" patterns = None\n") self.write(" _patterns = [\n") for p in self.terminals: self.write(" (%s, %s),\n" % ( repr(p), repr(self.tokens[p]))) self.write(" ]\n\n") self.write(" def __init__(self, input=None):\n") self.write(" if hasattr(self, 'setup_patterns'):\n") self.write(" self.setup_patterns(self._patterns)\n") self.write(" elif self.patterns is None:\n") self.write(" self.__class__.patterns = []\n") self.write(" for t, p in self._patterns:\n") self.write(" self.patterns.append((t, re.compile(p)))\n") self.write(" super(", self.name, "Scanner, self).__init__(None, %s, input)\n" % repr(self.ignore)) self.write("\n\n") self.write("class ", self.name, "(Parser):\n") for r in self.goals: self.write(INDENT, "def ", r, "(self") if self.params[r]: self.write(", ", self.params[r]) self.write("):\n") self.rules[r].output(self, INDENT + INDENT) self.write("\n") for n, s in self.sets.items(): self.write(" %s = %s\n" % (n, frozenset(s))) if self.postparser is not None: self.write(self.postparser) else: self.write("\n") self.write("P = ", self.name, "(", self.name, "Scanner())\n") self.write("def parse(rule, text, *args):\n") self.write(" P.reset(text)\n") self.write(" return wrap_error_reporter(P, rule, *args)\n") self.write("\n") self.write("if __name__ == '__main__':\n") self.write(INDENT, "from sys import argv, stdin\n") self.write(INDENT, "if len(argv) >= 2:\n") self.write(INDENT * 2, "if len(argv) >= 3:\n") self.write(INDENT * 3, "f = open(argv[2],'r')\n") self.write(INDENT * 2, "else:\n") self.write(INDENT * 3, "f = stdin\n") self.write(INDENT * 2, "print parse(argv[1], f.read())\n") self.write(INDENT, "else: print 'Args: []'\n") ###################################################################### class Node: def __init__(self): self.first = [] self.follow = [] self.accepts_epsilon = 0 self.rule = '?' def setup(self, gen, rule): # Setup will change accepts_epsilon, # sometimes from 0 to 1 but never 1 to 0. # It will take a finite number of steps to set things up self.rule = rule def used(self, vars): "Return two lists: one of vars used, and the other of vars assigned" return vars, [] def get_children(self): "Return a list of sub-nodes" return [] def __repr__(self): return str(self) def update(self, gen): if self.accepts_epsilon: gen.add_to(self.first, self.follow) def output(self, gen, indent): "Write out code to _gen_ with _indent_:string indentation" gen.write(indent, "assert 0 # Invalid parser node\n") class Terminal(Node): def __init__(self, token): Node.__init__(self) self.token = token self.accepts_epsilon = 0 def __str__(self): return self.token def update(self, gen): Node.update(self, gen) if self.first != [self.token]: self.first = [self.token] gen.changed() def output(self, gen, indent): gen.write(indent) if re.match('[a-zA-Z_][a-zA-Z_0-9]*$', self.token): gen.write(self.token, " = ") gen.write("self._scan(%s)\n" % repr(self.token)) class Eval(Node): def __init__(self, expr): Node.__init__(self) self.expr = expr def setup(self, gen, rule): Node.setup(self, gen, rule) if not self.accepts_epsilon: self.accepts_epsilon = 1 gen.changed() def __str__(self): return '{{ %s }}' % self.expr.strip() def output(self, gen, indent): gen.write(indent, self.expr.strip(), '\n') class NonTerminal(Node): def __init__(self, name, args): Node.__init__(self) self.name = name self.args = args def setup(self, gen, rule): Node.setup(self, gen, rule) try: self.target = gen.rules[self.name] if self.accepts_epsilon != self.target.accepts_epsilon: self.accepts_epsilon = self.target.accepts_epsilon gen.changed() except KeyError: # Oops, it's nonexistent print 'Error: no rule <%s>' % self.name self.target = self def __str__(self): return '<%s>' % self.name def update(self, gen): Node.update(self, gen) gen.equate(self.first, self.target.first) gen.equate(self.follow, self.target.follow) def output(self, gen, indent): gen.write(indent) gen.write(self.name, " = ") gen.write("self.", self.name, "(", self.args, ")\n") class Sequence(Node): def __init__(self, *children): Node.__init__(self) self.children = children def setup(self, gen, rule): Node.setup(self, gen, rule) for c in self.children: c.setup(gen, rule) if not self.accepts_epsilon: # If it's not already accepting epsilon, it might now do so. for c in self.children: # any non-epsilon means all is non-epsilon if not c.accepts_epsilon: break else: self.accepts_epsilon = 1 gen.changed() def get_children(self): return self.children def __str__(self): return '( %s )' % join(map(lambda x: str(x), self.children)) def update(self, gen): Node.update(self, gen) for g in self.children: g.update(gen) empty = 1 for g_i in range(len(self.children)): g = self.children[g_i] if empty: gen.add_to(self.first, g.first) if not g.accepts_epsilon: empty = 0 if g_i == len(self.children) - 1: next = self.follow else: next = self.children[1 + g_i].first gen.add_to(g.follow, next) if self.children: gen.add_to(self.follow, self.children[-1].follow) def output(self, gen, indent): if self.children: for c in self.children: c.output(gen, indent) else: # Placeholder for empty sequences, just in case gen.write(indent, 'pass\n') class Choice(Node): def __init__(self, *children): Node.__init__(self) self.children = children def setup(self, gen, rule): Node.setup(self, gen, rule) for c in self.children: c.setup(gen, rule) if not self.accepts_epsilon: for c in self.children: if c.accepts_epsilon: self.accepts_epsilon = 1 gen.changed() def get_children(self): return self.children def __str__(self): return '( %s )' % join(map(lambda x: str(x), self.children), ' | ') def update(self, gen): Node.update(self, gen) for g in self.children: g.update(gen) for g in self.children: gen.add_to(self.first, g.first) gen.add_to(self.follow, g.follow) for g in self.children: gen.add_to(g.follow, self.follow) if self.accepts_epsilon: gen.add_to(self.first, self.follow) def output(self, gen, indent): test = "if" gen.write(indent, "_token_ = ", gen.peek_call(self.rule, self.first), "\n") tokens_seen = [] tokens_unseen = self.first[:] if gen['context-insensitive-scanner']: # Context insensitive scanners can return ANY token, # not only the ones in first. tokens_unseen = gen.non_ignored_tokens() for c in self.children: testset = c.first[:] removed = [] for x in testset: if x in tokens_seen: testset.remove(x) removed.append(x) if x in tokens_unseen: tokens_unseen.remove(x) tokens_seen = tokens_seen + testset if removed: if not testset: print 'Error in rule', self.rule + ':', c, 'never matches.' else: print 'Warning:', self print ' * These tokens are being ignored:', join(removed, ', ') print ' due to previous choices using them.' if testset: if not tokens_unseen: # context sensitive scanners only! if test == 'if': # if it's the first AND last test, then # we can simply put the code without an if/else c.output(gen, indent) else: gen.write(indent, "else:") t = gen.in_test(self.rule, '', [], testset) if len(t) < 70 - len(indent): gen.write(" #", t) gen.write("\n") c.output(gen, indent + INDENT) else: gen.write(indent, test, " ", gen.in_test(self.rule, '_token_', tokens_unseen, testset), ":\n") c.output(gen, indent + INDENT) test = "elif" if gen['context-insensitive-scanner'] and tokens_unseen: gen.write(indent, "else:\n") gen.write(indent, INDENT, "raise SyntaxError(self._pos, ") gen.write("'Could not match ", self.rule, "')\n") class Wrapper(Node): def __init__(self, child): Node.__init__(self) self.child = child def setup(self, gen, rule): Node.setup(self, gen, rule) self.child.setup(gen, rule) def get_children(self): return [self.child] def update(self, gen): Node.update(self, gen) self.child.update(gen) gen.add_to(self.first, self.child.first) gen.equate(self.follow, self.child.follow) class Option(Wrapper): def setup(self, gen, rule): Wrapper.setup(self, gen, rule) if not self.accepts_epsilon: self.accepts_epsilon = 1 gen.changed() def __str__(self): return '[ %s ]' % str(self.child) def output(self, gen, indent): if self.child.accepts_epsilon: print 'Warning in rule', self.rule + ': contents may be empty.' gen.write(indent, "if %s:\n" % gen.peek_test(self.rule, self.first, self.child.first)) self.child.output(gen, indent + INDENT) class Plus(Wrapper): def setup(self, gen, rule): Wrapper.setup(self, gen, rule) if self.accepts_epsilon != self.child.accepts_epsilon: self.accepts_epsilon = self.child.accepts_epsilon gen.changed() def __str__(self): return '%s+' % str(self.child) def update(self, gen): Wrapper.update(self, gen) gen.add_to(self.follow, self.first) def output(self, gen, indent): if self.child.accepts_epsilon: print 'Warning in rule', self.rule + ':' print ' * The repeated pattern could be empty. The resulting' print ' parser may not work properly.' gen.write(indent, "while 1:\n") self.child.output(gen, indent + INDENT) union = self.first[:] gen.add_to(union, self.follow) gen.write(indent + INDENT, "if %s:\n" % gen.not_peek_test(self.rule, union, self.child.first)) gen.write(indent + INDENT * 2, "break\n") class Star(Plus): def setup(self, gen, rule): Wrapper.setup(self, gen, rule) if not self.accepts_epsilon: self.accepts_epsilon = 1 gen.changed() def __str__(self): return '%s*' % str(self.child) def output(self, gen, indent): if self.child.accepts_epsilon: print 'Warning in rule', self.rule + ':' print ' * The repeated pattern could be empty. The resulting' print ' parser probably will not work properly.' gen.write(indent, "while %s:\n" % gen.peek_test(self.rule, self.follow, self.child.first)) self.child.output(gen, indent + INDENT) ###################################################################### # The remainder of this file is from parsedesc.{g,py} def append(lst, x): "Imperative append" lst.append(x) return lst def add_inline_token(tokens, str): tokens.insert(0, (str, eval(str, {}, {}))) return Terminal(str) def cleanup_choice(lst): if len(lst) == 0: return Sequence([]) if len(lst) == 1: return lst[0] return apply(Choice, tuple(lst)) def cleanup_sequence(lst): if len(lst) == 1: return lst[0] return apply(Sequence, tuple(lst)) def cleanup_rep(node, rep): if rep == 'star': return Star(node) elif rep == 'plus': return Plus(node) else: return node def resolve_name(tokens, id, args): if id in map(lambda x: x[0], tokens): # It's a token if args: print 'Warning: ignoring parameters on TOKEN %s<<%s>>' % (id, args) return Terminal(id) else: # It's a name, so assume it's a nonterminal return NonTerminal(id, args) ################################################################################ # Contents of yappsrt follow. # Parser class NoMoreTokens(Exception): """ Another exception object, for when we run out of tokens """ pass class Scanner(object): def __init__(self, patterns, ignore, input=None): """ Patterns is [(terminal,regex)...] Ignore is [terminal,...]; Input is a string """ self.reset(input) self.ignore = ignore # The stored patterns are a pair (compiled regex,source # regex). If the patterns variable passed in to the # constructor is None, we assume that the class already has a # proper .patterns list constructed if patterns is not None: self.patterns = [] for k, r in patterns: self.patterns.append((k, re.compile(r))) def reset(self, input): self.tokens = [] self.restrictions = [] self.input = input self.pos = 0 def __repr__(self): """ Print the last 10 tokens that have been scanned in """ output = '' for t in self.tokens[-10:]: output = "%s\n (@%s) %s = %s" % (output, t[0], t[2], repr(t[3])) return output def _scan(self, restrict): """ Should scan another token and add it to the list, self.tokens, and add the restriction to self.restrictions """ # Keep looking for a token, ignoring any in self.ignore token = None while True: best_pat = None # Search the patterns for a match, with earlier # tokens in the list having preference best_pat_len = 0 for p, regexp in self.patterns: # First check to see if we're restricting to this token if restrict and p not in restrict and p not in self.ignore: continue m = regexp.match(self.input, self.pos) if m: # We got a match best_pat = p best_pat_len = len(m.group(0)) break # If we didn't find anything, raise an error if best_pat is None: msg = "Bad Token" if restrict: msg = "Trying to find one of " + ", ".join(restrict) err = SyntaxError("SyntaxError[@ char %s: %s]" % (repr(self.pos), msg)) err.pos = self.pos raise err # If we found something that isn't to be ignored, return it if best_pat in self.ignore: # This token should be ignored... self.pos += best_pat_len else: end_pos = self.pos + best_pat_len # Create a token with this data token = ( self.pos, end_pos, best_pat, self.input[self.pos:end_pos] ) break if token is not None: self.pos = token[1] # Only add this token if it's not in the list # (to prevent looping) if not self.tokens or token != self.tokens[-1]: self.tokens.append(token) self.restrictions.append(restrict) return 1 return 0 def token(self, i, restrict=None): """ Get the i'th token, and if i is one past the end, then scan for another token; restrict is a list of tokens that are allowed, or 0 for any token. """ tokens_len = len(self.tokens) if i == tokens_len: # We are at the end, get the next... tokens_len += self._scan(restrict) if i < tokens_len: if restrict and self.restrictions[i] and restrict > self.restrictions[i]: raise NotImplementedError("Unimplemented: restriction set changed") return self.tokens[i] raise NoMoreTokens def rewind(self, i): tokens_len = len(self.tokens) if i <= tokens_len: token = self.tokens[i] self.tokens = self.tokens[:i] self.restrictions = self.restrictions[:i] self.pos = token[0] class CachedScanner(Scanner): """ Same as Scanner, but keeps cached tokens for any given input """ _cache_ = {} _goals_ = ['END'] @classmethod def cleanup(cls): cls._cache_ = {} def __init__(self, patterns, ignore, input=None): try: self._tokens = self._cache_[input] except KeyError: self._tokens = None self.__tokens = {} self.__input = input super(CachedScanner, self).__init__(patterns, ignore, input) def reset(self, input): try: self._tokens = self._cache_[input] except KeyError: self._tokens = None self.__tokens = {} self.__input = input super(CachedScanner, self).reset(input) def __repr__(self): if self._tokens is None: return super(CachedScanner, self).__repr__() output = '' for t in self._tokens[-10:]: output = "%s\n (@%s) %s = %s" % (output, t[0], t[2], repr(t[3])) return output def token(self, i, restrict=None): if self._tokens is None: token = super(CachedScanner, self).token(i, restrict) self.__tokens[i] = token if token[2] in self._goals_: # goal tokens self._cache_[self.__input] = self._tokens = self.__tokens return token else: token = self._tokens.get(i) if token is None: raise NoMoreTokens return token def rewind(self, i): if self._tokens is None: super(CachedScanner, self).rewind(i) class Parser(object): def __init__(self, scanner): self._scanner = scanner self._pos = 0 def reset(self, input): self._scanner.reset(input) self._pos = 0 def _peek(self, types): """ Returns the token type for lookahead; if there are any args then the list of args is the set of token types to allow """ tok = self._scanner.token(self._pos, types) return tok[2] def _scan(self, type): """ Returns the matched text, and moves to the next token """ tok = self._scanner.token(self._pos, frozenset([type])) if tok[2] != type: err = SyntaxError("SyntaxError[@ char %s: %s]" % (repr(tok[0]), "Trying to find " + type)) err.pos = tok[0] raise err self._pos += 1 return tok[3] def _rewind(self, n=1): self._pos -= min(n, self._pos) self._scanner.rewind(self._pos) def print_error(input, err, scanner): """This is a really dumb long function to print error messages nicely.""" p = err.pos # Figure out the line number line = input[:p].count('\n') print err.msg + " on line " + repr(line + 1) + ":" # Now try printing part of the line text = input[max(p - 80, 0): p + 80] p = p - max(p - 80, 0) # Strip to the left i = text[:p].rfind('\n') j = text[:p].rfind('\r') if i < 0 or (0 <= j < i): i = j if 0 <= i < p: p = p - i - 1 text = text[i + 1:] # Strip to the right i = text.find('\n', p) j = text.find('\r', p) if i < 0 or (0 <= j < i): i = j if i >= 0: text = text[:i] # Now shorten the text while len(text) > 70 and p > 60: # Cut off 10 chars text = "..." + text[10:] p = p - 7 # Now print the string, along with an indicator print '> ', text print '> ', ' ' * p + '^' print 'List of nearby tokens:', scanner def wrap_error_reporter(parser, rule, *args): try: return getattr(parser, rule)(*args) except SyntaxError, s: input = parser._scanner.input try: print_error(input, s, parser._scanner) raise except ImportError: print "Syntax Error %s on line %d" % (s.msg, input[:s.pos].count('\n') + 1) except NoMoreTokens: print "Could not complete parsing; stopped around here:" print parser._scanner # End yappsrt ################################################################################ class ParserDescriptionScanner(Scanner): def __init__(self, str): Scanner.__init__(self, [ ('"rule"', 'rule'), ('"ignore"', 'ignore'), ('"token"', 'token'), ('"option"', 'option'), ('":"', ':'), ('"parser"', 'parser'), ('[ \011\015\012]+', '[ \011\015\012]+'), ('#.*?\015?\012', '#.*?\015?\012'), ('END', '$'), ('ATTR', '<<.+?>>'), ('STMT', '{{.+?}}'), ('ID', '[a-zA-Z_][a-zA-Z_0-9]*'), ('STR', '[rR]?\'([^\\n\'\\\\]|\\\\.)*\'|[rR]?"([^\\n"\\\\]|\\\\.)*"'), ('LP', '\\('), ('RP', '\\)'), ('LB', '\\['), ('RB', '\\]'), ('OR', '[|]'), ('STAR', '[*]'), ('PLUS', '[+]'), ], ['[ \011\015\012]+', '#.*?\015?\012'], str) class ParserDescription(Parser): def Parser(self): self._scan('"parser"') ID = self._scan('ID') self._scan('":"') Options = self.Options() Tokens = self.Tokens() Rules = self.Rules(Tokens) END = self._scan('END') return Generator(ID, Options, Tokens, Rules) def Options(self): opt = {} while self._peek(frozenset(['"option"', '"token"', '"ignore"', 'END', '"rule"'])) == '"option"': self._scan('"option"') self._scan('":"') Str = self.Str() opt[Str] = 1 return opt def Tokens(self): tok = [] while self._peek(frozenset(['"token"', '"ignore"', 'END', '"rule"'])) in ['"token"', '"ignore"']: _token_ = self._peek(frozenset(['"token"', '"ignore"'])) if _token_ == '"token"': self._scan('"token"') ID = self._scan('ID') self._scan('":"') Str = self.Str() tok.append((ID, Str)) else: # == '"ignore"' self._scan('"ignore"') self._scan('":"') Str = self.Str() tok.append(('#ignore', Str)) return tok def Rules(self, tokens): rul = [] while self._peek(frozenset(['"rule"', 'END'])) == '"rule"': self._scan('"rule"') ID = self._scan('ID') OptParam = self.OptParam() self._scan('":"') ClauseA = self.ClauseA(tokens) rul.append((ID, OptParam, ClauseA)) return rul def ClauseA(self, tokens): ClauseB = self.ClauseB(tokens) v = [ClauseB] while self._peek(frozenset(['OR', 'RP', 'RB', '"rule"', 'END'])) == 'OR': OR = self._scan('OR') ClauseB = self.ClauseB(tokens) v.append(ClauseB) return cleanup_choice(v) def ClauseB(self, tokens): v = [] while self._peek(frozenset(['STR', 'ID', 'LP', 'LB', 'STMT', 'OR', 'RP', 'RB', '"rule"', 'END'])) in ['STR', 'ID', 'LP', 'LB', 'STMT']: ClauseC = self.ClauseC(tokens) v.append(ClauseC) return cleanup_sequence(v) def ClauseC(self, tokens): ClauseD = self.ClauseD(tokens) _token_ = self._peek(frozenset(['PLUS', 'STAR', 'STR', 'ID', 'LP', 'LB', 'STMT', 'OR', 'RP', 'RB', '"rule"', 'END'])) if _token_ == 'PLUS': PLUS = self._scan('PLUS') return Plus(ClauseD) elif _token_ == 'STAR': STAR = self._scan('STAR') return Star(ClauseD) else: return ClauseD def ClauseD(self, tokens): _token_ = self._peek(frozenset(['STR', 'ID', 'LP', 'LB', 'STMT'])) if _token_ == 'STR': STR = self._scan('STR') t = (STR, eval(STR, {}, {})) if t not in tokens: tokens.insert(0, t) return Terminal(STR) elif _token_ == 'ID': ID = self._scan('ID') OptParam = self.OptParam() return resolve_name(tokens, ID, OptParam) elif _token_ == 'LP': LP = self._scan('LP') ClauseA = self.ClauseA(tokens) RP = self._scan('RP') return ClauseA elif _token_ == 'LB': LB = self._scan('LB') ClauseA = self.ClauseA(tokens) RB = self._scan('RB') return Option(ClauseA) else: # == 'STMT' STMT = self._scan('STMT') return Eval(STMT[2:-2]) def OptParam(self): if self._peek(frozenset(['ATTR', '":"', 'PLUS', 'STAR', 'STR', 'ID', 'LP', 'LB', 'STMT', 'OR', 'RP', 'RB', '"rule"', 'END'])) == 'ATTR': ATTR = self._scan('ATTR') return ATTR[2:-2] return '' def Str(self): STR = self._scan('STR') return eval(STR, {}, {}) # This replaces the default main routine yapps_options = [ ('context-insensitive-scanner', 'context-insensitive-scanner', 'Scan all tokens (see docs)') ] def generate(inputfilename, outputfilename='', dump=0, **flags): """Generate a grammar, given an input filename (X.g) and an output filename (defaulting to X.py).""" if not outputfilename: if inputfilename[-2:] == '.g': outputfilename = inputfilename[:-2] + '.py' else: raise Exception("Missing output filename") print 'Input Grammar:', inputfilename print 'Output File:', outputfilename DIVIDER = '\n%%\n' # This pattern separates the pre/post parsers preparser, postparser = None, None # Code before and after the parser desc # Read the entire file s = open(inputfilename, 'r').read() # See if there's a separation between the pre-parser and parser f = find(s, DIVIDER) if f >= 0: preparser, s = s[:f] + '\n\n', s[f + len(DIVIDER):] # See if there's a separation between the parser and post-parser f = find(s, DIVIDER) if f >= 0: s, postparser = s[:f], '\n\n' + s[f + len(DIVIDER):] # Create the parser and scanner p = ParserDescription(ParserDescriptionScanner(s)) if not p: return # Now parse the file t = wrap_error_reporter(p, 'Parser') if not t: return # Error if preparser is not None: t.preparser = preparser if postparser is not None: t.postparser = postparser # Check the options for f in t.options.keys(): for opt, _, _ in yapps_options: if f == opt: break else: print 'Warning: unrecognized option', f # Add command line options to the set for f in flags.keys(): t.options[f] = flags[f] # Generate the output if dump: t.dump_information() else: t.output = open(outputfilename, 'w') t.generate_output() if __name__ == '__main__': import getopt optlist, args = getopt.getopt(sys.argv[1:], 'f:', ['dump']) if not args or len(args) > 2: print 'Usage:' print ' python', sys.argv[0], '[flags] input.g [output.py]' print 'Flags:' print (' --dump' + ' ' * 40)[:35] + 'Dump out grammar information' for flag, _, doc in yapps_options: print (' -f' + flag + ' ' * 40)[:35] + doc else: # Read in the options and create a list of flags flags = {} for opt in optlist: for flag, name, _ in yapps_options: if opt == ('-f', flag): flags[name] = 1 break else: if opt == ('--dump', ''): flags['dump'] = 1 else: print 'Warning: unrecognized option', opt[0], opt[1] apply(generate, tuple(args), flags) #!/usr/bin/python3 from distutils.command.build_ext import build_ext from distutils.errors import CCompilerError, DistutilsExecError, \ DistutilsPlatformError import os import platform import sys from setuptools import setup, Extension # this imports PROJECT, URL, VERSION, AUTHOR, AUTHOR_EMAIL, LICENSE, # DOWNLOAD_URL with open('scss/scss_meta.py', 'rb') as f: exec(f.read()) # Dependencies install_requires = ['six'] if sys.version_info < (3, 4): install_requires.append('enum34') install_requires.append('pathlib2') if sys.version_info < (2, 7): install_requires.append('ordereddict') # fail safe compilation shamelessly stolen from the simplejson # setup.py file. Original author: Bob Ippolito ext_modules = [ # NOTE: header files are included by MANIFEST.in; Extension does not # include headers in an sdist (since they're typically in /usr/lib) Extension( 'scss.grammar._scanner', sources=['scss/src/_speedups.c', 'scss/src/block_locator.c', 'scss/src/scanner.c', 'scss/src/hashtable.c'], libraries=['pcre'] ), ] ext_errors = (CCompilerError, DistutilsExecError, DistutilsPlatformError) if sys.platform == 'win32' and sys.version_info > (2, 6): # 2.6's distutils.msvc9compiler can raise an IOError when failing to # find the compiler ext_errors += (IOError,) class BuildFailed(Exception): pass class ve_build_ext(build_ext): """This class allows C extension building to fail.""" def run(self): try: build_ext.run(self) except DistutilsPlatformError: raise BuildFailed() def build_extension(self, ext): try: build_ext.build_extension(self, ext) except ext_errors: raise BuildFailed() except ValueError: # this can happen on Windows 64 bit, see Python issue 7511 if "'path'" in str(sys.exc_info()[1]): # works with Python 2 and 3 raise BuildFailed() raise def echo(msg=''): sys.stdout.write(msg + '\n') def read(fname): try: with open(os.path.join(os.path.dirname(__file__), fname), 'rb') as f: return f.read().decode('utf8').strip() except IOError: return '' def run_setup(with_binary): if with_binary: extra_opts = {} extra_opts['ext_modules'] = ext_modules else: extra_opts = {} setup( name=PROJECT, version=VERSION, description=read('DESCRIPTION'), long_description=read('README.rst'), author=AUTHOR, author_email=AUTHOR_EMAIL, url=URL, zip_safe=False, download_url=DOWNLOAD_URL, license=LICENSE, keywords='css oocss xcss sass scss less precompiler', classifiers=[ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Topic :: Software Development :: Code Generators", "Topic :: Text Processing :: Markup", "Topic :: Software Development :: Libraries :: Python Modules" ], install_requires=install_requires, packages=[ 'scss', 'scss.extension', 'scss.extension.compass', 'scss.grammar', ], cmdclass={'build_ext': ve_build_ext}, entry_points=""" [console_scripts] pyscss = scss.tool:main less2scss = scss.less2scss:main """, **extra_opts ) def try_building_extension(): try: run_setup(True) except BuildFailed: LINE = '=' * 74 BUILD_EXT_WARNING = 'WARNING: The C extension could not be ' \ 'compiled, speedups are not enabled.' echo(LINE) echo(BUILD_EXT_WARNING) echo('Failure information, if any, is above.') echo('Retrying the build without the C extension now.') echo() run_setup(False) echo(LINE) echo(BUILD_EXT_WARNING) echo('pyScss will still work fine, but may be slower.') echo( 'The most likely cause is missing PCRE headers; you may need to ' 'install libpcre or libpcre-dev, depending on your platform.' ) echo('Plain-Python installation succeeded.') echo(LINE) if platform.python_implementation() == 'CPython': try_building_extension() else: run_setup(False) #!/usr/bin/python3 from __future__ import absolute_import from __future__ import print_function from collections import deque from contextlib import contextmanager import logging import os import re import sys from scss import config from scss.calculator import Calculator from scss.compiler import _prop_split_re from scss.compiler import Compiler from scss.errors import SassEvaluationError from scss.legacy import Scss from scss.legacy import _default_scss_vars from scss.namespace import Namespace from scss.rule import SassRule from scss.rule import UnparsedBlock from scss.scss_meta import BUILD_INFO from scss.source import SourceFile from scss.util import profiling try: raw_input except NameError: raw_input = input log = logging.getLogger(__name__) logging.getLogger('scss').setLevel(logging.INFO) def main(): logging.basicConfig(format="%(levelname)s: %(message)s") from optparse import OptionGroup, OptionParser, SUPPRESS_HELP if hasattr(config.LOAD_PATHS, 'split'): initial_load_paths = [p.strip() for p in config.LOAD_PATHS.split(',')] else: initial_load_paths = list(config.LOAD_PATHS) def append_load_path(option, opt_str, value, parser): dest = getattr(parser.values, option.dest) paths = value.replace(os.pathsep, ',').replace(';', ',').split(',') for path in paths: path = path.strip() if path and path not in dest: dest.append(path) parser = OptionParser(usage="Usage: %prog [options] [file]", description="Converts Scss files to CSS.", add_help_option=False) parser.add_option("-i", "--interactive", action="store_true", help="Run an interactive Scss shell") parser.add_option("-w", "--watch", metavar="DIR", help="Watch the files in DIR, and recompile when they change") parser.add_option("-r", "--recursive", action="store_true", default=False, help="Also watch directories inside of the watch directory") parser.add_option("-o", "--output", metavar="PATH", help="Write output to PATH (a directory if using watch, a file otherwise)") parser.add_option("-s", "--suffix", metavar="STRING", help="If using watch, a suffix added to the output filename (i.e. filename.STRING.css)") parser.add_option("--time", action="store_true", help="Ignored, will be removed in 2.0") parser.add_option("--debug-info", action="store_true", help="Turns on scss's debugging information") parser.add_option("--no-debug-info", action="store_false", dest="debug_info", default=False, help="Turns off scss's debugging information") parser.add_option("-T", "--test", action="store_true", help=SUPPRESS_HELP) parser.add_option("-t", "--style", metavar="NAME", dest="style", default='nested', help="Output style. Can be nested (default), compact, compressed, or expanded.") parser.add_option("-C", "--no-compress", action="store_false", dest="style", default=True, help="Don't minify outputted CSS") parser.add_option("-?", action="help", help=SUPPRESS_HELP) parser.add_option("-h", "--help", action="help", help="Show this message and exit") parser.add_option("-v", "--version", action="store_true", help="Print version and exit") paths_group = OptionGroup(parser, "Resource Paths") paths_group.add_option("-I", "--load-path", metavar="PATH", type="string", action="callback", callback=append_load_path, dest="load_paths", default=initial_load_paths, help="Add a scss import path, may be given multiple times") paths_group.add_option("-S", "--static-root", metavar="PATH", dest="static_root", help="Static root path (Where images and static resources are located)") paths_group.add_option("-A", "--assets-root", metavar="PATH", dest="assets_root", help="Assets root path (Sprite images will be created here)") paths_group.add_option("-a", "--assets-url", metavar="URL", dest="assets_url", help="URL to reach the files in your assets_root") paths_group.add_option("-F", "--fonts-root", metavar="PATH", dest="fonts_root", help="Fonts root path (Where fonts are located)") paths_group.add_option("-f", "--fonts-url", metavar="PATH", dest="fonts_url", help="URL to reach the fonts in your fonts_root") paths_group.add_option("--images-root", metavar="PATH", dest="images_root", help="Images root path (Where images are located)") paths_group.add_option("--images-url", metavar="PATH", dest="images_url", help="URL to reach the images in your images_root") paths_group.add_option("--cache-root", metavar="PATH", dest="cache_root", help="Cache root path (Cache files will be created here)") parser.add_option_group(paths_group) parser.add_option("--sass", action="store_true", dest="is_sass", default=None, help="Sass mode") options, args = parser.parse_args() # General runtime configuration if options.static_root is not None: config.STATIC_ROOT = options.static_root if options.assets_root is not None: config.ASSETS_ROOT = options.assets_root if options.fonts_root is not None: config.FONTS_ROOT = options.fonts_root if options.fonts_url is not None: config.FONTS_URL = options.fonts_url if options.images_root is not None: config.IMAGES_ROOT = options.images_root if options.images_url is not None: config.IMAGES_URL = options.images_url if options.cache_root is not None: config.CACHE_ROOT = options.cache_root if options.assets_url is not None: config.ASSETS_URL = options.assets_url # Execution modes if options.test: run_tests() elif options.version: print_version() elif options.interactive: run_repl(options) elif options.watch: watch_sources(options) else: do_build(options, args) def print_version(): print(BUILD_INFO) def run_tests(): try: import pytest except ImportError: raise ImportError("You need py.test installed to run the test suite.") pytest.main("") # don't let py.test re-consume our arguments def do_build(options, args): if options.output is not None: out = open(options.output, 'wb') else: out = sys.stdout # Get the unencoded stream on Python 3 out = getattr(out, 'buffer', out) css = Scss(scss_opts={ 'style': options.style, 'debug_info': options.debug_info, }, search_paths=options.load_paths, ) if not args: args = ['-'] source_files = [] for path in args: if path == '-': source = SourceFile.from_file(sys.stdin, relpath="", is_sass=options.is_sass) else: source = SourceFile.from_filename(path, is_sass=options.is_sass) source_files.append(source) encodings = set(source.encoding for source in source_files) if len(encodings) > 1: sys.stderr.write( "Can't combine these files! " "They have different encodings: {0}\n" .format(', '.join(encodings)) ) sys.exit(3) output = css.compile(source_files=source_files) out.write(output.encode(source_files[0].encoding)) for f, t in profiling.items(): sys.stderr.write("%s took %03fs" % (f, t)) def watch_sources(options): import time try: from watchdog.observers import Observer from watchdog.events import PatternMatchingEventHandler except ImportError: sys.stderr.write("Using watch functionality requires the `watchdog` library: http://pypi.python.org/pypi/watchdog/") sys.exit(1) if options.output and not os.path.isdir(options.output): sys.stderr.write("watch file output directory is invalid: '%s'" % (options.output)) sys.exit(2) class ScssEventHandler(PatternMatchingEventHandler): def __init__(self, *args, **kwargs): super(ScssEventHandler, self).__init__(*args, **kwargs) self.css = Scss(scss_opts={ 'style': options.style, 'debug_info': options.debug_info, }, search_paths=options.load_paths, ) self.output = options.output self.suffix = options.suffix def is_valid(self, path): return os.path.isfile(path) and (path.endswith('.scss') or path.endswith('.sass')) and not os.path.basename(path).startswith('_') def process(self, path): if os.path.isdir(path): for f in os.listdir(path): full = os.path.join(path, f) if self.is_valid(full): self.compile(full) elif self.is_valid(path): self.compile(path) def compile(self, src_path): fname = os.path.basename(src_path) if fname.endswith('.scss') or fname.endswith('.sass'): fname = fname[:-5] if self.suffix: fname += '.' + self.suffix fname += '.css' else: # you didn't give me a file of the correct type! return False if self.output: dest_path = os.path.join(self.output, fname) else: dest_path = os.path.join(os.path.dirname(src_path), fname) print("Compiling %s => %s" % (src_path, dest_path)) dest_file = open(dest_path, 'wb') dest_file.write(self.css.compile(scss_file=src_path).encode('utf-8')) def on_moved(self, event): super(ScssEventHandler, self).on_moved(event) self.process(event.dest_path) def on_created(self, event): super(ScssEventHandler, self).on_created(event) self.process(event.src_path) def on_modified(self, event): super(ScssEventHandler, self).on_modified(event) self.process(event.src_path) event_handler = ScssEventHandler(patterns=['*.scss', '*.sass']) observer = Observer() observer.schedule(event_handler, path=options.watch, recursive=options.recursive) observer.start() try: while True: time.sleep(1) except KeyboardInterrupt: observer.stop() observer.join() @contextmanager def readline_history(fn): try: import readline except ImportError: yield return try: readline.read_history_file(fn) except IOError: pass try: yield finally: try: readline.write_history_file(fn) except IOError: pass def run_repl(is_sass=False): repl = SassRepl() with readline_history(os.path.expanduser('~/.scss-history')): print("Welcome to %s interactive shell" % (BUILD_INFO,)) while True: try: in_ = raw_input('>>> ').strip() for output in repl(in_): print(output) except (EOFError, KeyboardInterrupt): print("Bye!") return class SassRepl(object): def __init__(self, is_sass=False): # TODO it would be lovely to get these out of here, somehow self.namespace = Namespace(variables=_default_scss_vars) self.compiler = Compiler(namespace=self.namespace) self.compilation = self.compiler.make_compilation() self.legacy_compiler_options = {} self.source_file = SourceFile.from_string('', '', is_sass=is_sass) self.calculator = Calculator(self.namespace) def __call__(self, s): # TODO this is kind of invasive; surely it's possible to do this # without calling only private methods from pprint import pformat if s in ('exit', 'quit'): raise KeyboardInterrupt for s in s.split(';'): s = self.source_file.prepare_source(s.strip()) if not s: continue elif s.startswith('@'): scope = None properties = [] children = deque() rule = SassRule(self.source_file, namespace=self.namespace, legacy_compiler_options=self.legacy_compiler_options, properties=properties) block = UnparsedBlock(rule, 1, s, None) code, name = (s.split(None, 1) + [''])[:2] if code == '@option': self.compilation._at_options(self.calculator, rule, scope, block) continue elif code == '@import': # TODO this doesn't really work either since there's no path self.compilation._at_import(self.calculator, rule, scope, block) continue elif code == '@include': final_cont = '' self.compilation._at_include(self.calculator, rule, scope, block) code = self.compilation._print_properties(properties).rstrip('\n') if code: final_cont += code if children: # TODO this almost certainly doesn't work, and is kind of goofy anyway since @mixin isn't supported self.compilation.children.extendleft(children) self.compilation.parse_children() code = self.compilation._create_css(self.compilation.rules).rstrip('\n') if code: final_cont += code yield final_cont continue elif s == 'ls' or s.startswith('show(') or s.startswith('show ') or s.startswith('ls(') or s.startswith('ls '): m = re.match(r'(?:show|ls)(\()?\s*([^,/\\) ]*)(?:[,/\\ ]([^,/\\ )]+))*(?(1)\))', s, re.IGNORECASE) if m: name = m.group(2) code = m.group(3) name = name and name.strip().rstrip('s') # remove last 's' as in functions code = code and code.strip() ns = self.namespace if not name: yield pformat(list(sorted(['vars', 'options', 'mixins', 'functions']))) elif name in ('v', 'var', 'variable'): variables = dict(ns._variables) if code == '*': pass elif code: variables = dict((k, v) for k, v in variables.items() if code in k) else: variables = dict((k, v) for k, v in variables.items() if not k.startswith('$--')) yield pformat(variables) elif name in ('o', 'opt', 'option'): opts = self.legacy_compiler_options if code == '*': pass elif code: opts = dict((k, v) for k, v in opts.items() if code in k) else: opts = dict((k, v) for k, v in opts.items()) yield pformat(opts) elif name in ('m', 'mix', 'mixin', 'f', 'func', 'funct', 'function'): if name.startswith('m'): funcs = dict(ns._mixins) elif name.startswith('f'): funcs = dict(ns._functions) if code == '*': pass elif code: funcs = dict((k, v) for k, v in funcs.items() if code in k[0]) else: pass # TODO print source when possible yield pformat(funcs) continue elif s.startswith('$') and (':' in s or '=' in s): prop, value = [a.strip() for a in _prop_split_re.split(s, 1)] prop = self.calculator.do_glob_math(prop) value = self.calculator.calculate(value) self.namespace.set_variable(prop, value) continue # TODO respect compress? try: yield(self.calculator.calculate(s).render()) except (SyntaxError, SassEvaluationError) as e: print("%s" % e, file=sys.stderr) if __name__ == "__main__": main() #!/usr/bin/python3 """Run me with the path to a sassc checkout, and I'll copy over all the tests that are viable to copy. """ # TODO: # - huge.scss takes ages to run # - extraneous files: # - spec/scss/guard_assign (sassc_output.css, sass_output.css) # - spec/basic/14_imports (a.scss, b.scss, d.scss, sub) # - spec/basic/12_pseudo_classes_and_elements (notes.txt) # - spec/todo/options_passed_to_script (options.cfg) # - spec/todo/newlines_removed_from_selectors_when_compressed (options.cfg) # - files that ruby sass fails to compile: # - spec/todo/variables_in_media.scss # - spec/todo/css_error_with_windows_newlines.scss # - tests/charset.scss # - tests/warnings.scss # - tests/another-gradient-test.scss # - tests/media.scss # - tests/empty-properties.scss # - tests/for_in_function.scss # - tests/directives-in-propsets.scss # - tests/trace.scss # - tests/empty-rule.scss import os import os.path import shutil import subprocess import sys def compile_with_ruby_sass(infile): outfile = os.path.splitext(infile)[0] + '.css' with open(outfile, 'w') as outf: # "expanded" is pretty close to what pyscss spits out, but it # includes extra blank lines between nested blocks, so remove those # with a quick grep scss_proc = subprocess.Popen(['scss', '--style=expanded', infile], stdout=subprocess.PIPE) grep_proc = subprocess.Popen(['grep', '.'], stdin=scss_proc.stdout, stdout=outf) ret = grep_proc.wait() if ret != 0: print("...whoops, bailing on {}".format(infile)) os.unlink(infile) try: os.unlink(outfile) except OSError: pass def sync_tests(sassc_root): target_dir = os.path.dirname(__file__) # Grab all the input/output pairs from `spec` spec_dir = os.path.join(sassc_root, 'spec') for dirpath, dirnames, filenames in os.walk(spec_dir): fileset = set(filenames) try: fileset.discard('input.scss') infile = 'input.scss' except KeyError: continue path = os.path.relpath(dirpath, sassc_root) if 'output.css' in fileset: outfile = 'output.css' elif 'expected_output.css' in fileset: outfile = 'expected_output.css' else: print("can't find an output file in {}, skipping".format(path)) continue fileset.discard(outfile) test_name = path.replace('/', '-') print("cool, found a test pair:", path) if fileset or dirnames: # TODO print("... extra files i don't know how to handle, skipping -- {!r} {!r}".format(fileset, dirnames)) continue shutil.copyfile( os.path.join(dirpath, infile), os.path.join(target_dir, test_name + '.scss')) compile_with_ruby_sass(os.path.join(target_dir, test_name + '.scss')) # Grab the extra tests from `tests` (but don't recurse) tests_dir = os.path.join(sassc_root, 'tests') for fn in os.listdir(tests_dir): path = os.path.join(tests_dir, fn) if not os.path.isfile(path) or not path.endswith('.scss'): continue target = os.path.join(target_dir, 'tests-' + fn) shutil.copyfile(path, target) compile_with_ruby_sass(target) if __name__ == '__main__': sync_tests(*sys.argv[1:]) #!/usr/bin/python3 import sys from distutils.core import setup, Extension from distutils.command.build_ext import build_ext as _build_ext import os abspath = os.path.abspath(__file__) dname = os.path.dirname(abspath) os.chdir(dname) class build_ext(_build_ext): def finalize_options(self): _build_ext.finalize_options(self) self.build_temp = './' self.build_lib = '../grammar/' if len(sys.argv) == 1: sys.argv.append('build') setup(ext_modules=[ Extension( '_scanner', sources=['_speedups.c', 'block_locator.c', 'scanner.c', 'hashtable.c'], libraries=['pcre'], ), ], cmdclass={'build_ext': build_ext}) + exit 0 Executing(%build): /bin/sh -e /usr/src/tmp/rpm-tmp.48268 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd python3-module-pyScss-1.4.0 + export 'CFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + CFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + export 'CXXFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + CXXFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + export 'FFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + FFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + /usr/bin/python3 -m pyproject_installer -v build INFO : pyproject_installer.build_cmd._build : Building wheel INFO : pyproject_installer.build_cmd._build : Source tree: /usr/src/RPM/BUILD/python3-module-pyScss-1.4.0 INFO : pyproject_installer.build_cmd._build : Output dir: /usr/src/RPM/BUILD/python3-module-pyScss-1.4.0/dist DEBUG : pyproject_installer.lib.build_backend : Validating source path DEBUG : pyproject_installer.lib.build_backend : Checking for PEP517 spec INFO : pyproject_installer.lib.build_backend : pyproject.toml was not found, using defaults INFO : backend_caller.py : Calling hook build_wheel in subprocess INFO : backend_caller.py : Build backend: setuptools.build_meta:__legacy__ INFO : backend_caller.py : Hook args: ['/usr/src/RPM/BUILD/python3-module-pyScss-1.4.0/dist'] INFO : backend_caller.py : Hook kwargs: {'config_settings': None} running bdist_wheel running build running build_py creating build creating build/lib.linux-x86_64-3.9 creating build/lib.linux-x86_64-3.9/scss copying scss/setup.py -> build/lib.linux-x86_64-3.9/scss copying scss/util.py -> build/lib.linux-x86_64-3.9/scss copying scss/types.py -> build/lib.linux-x86_64-3.9/scss copying scss/tool.py -> build/lib.linux-x86_64-3.9/scss copying scss/source.py -> build/lib.linux-x86_64-3.9/scss copying scss/selector.py -> build/lib.linux-x86_64-3.9/scss copying scss/scss_meta.py -> build/lib.linux-x86_64-3.9/scss copying scss/rule.py -> build/lib.linux-x86_64-3.9/scss copying scss/namespace.py -> build/lib.linux-x86_64-3.9/scss copying scss/less2scss.py -> build/lib.linux-x86_64-3.9/scss copying scss/legacy.py -> build/lib.linux-x86_64-3.9/scss copying scss/errors.py -> build/lib.linux-x86_64-3.9/scss copying scss/cssdefs.py -> build/lib.linux-x86_64-3.9/scss copying scss/config.py -> build/lib.linux-x86_64-3.9/scss copying scss/compiler.py -> build/lib.linux-x86_64-3.9/scss copying scss/calculator.py -> build/lib.linux-x86_64-3.9/scss copying scss/ast.py -> build/lib.linux-x86_64-3.9/scss copying scss/__main__.py -> build/lib.linux-x86_64-3.9/scss copying scss/__init__.py -> build/lib.linux-x86_64-3.9/scss creating build/lib.linux-x86_64-3.9/scss/extension copying scss/extension/fonts.py -> build/lib.linux-x86_64-3.9/scss/extension copying scss/extension/extra.py -> build/lib.linux-x86_64-3.9/scss/extension copying scss/extension/core.py -> build/lib.linux-x86_64-3.9/scss/extension copying scss/extension/bootstrap.py -> build/lib.linux-x86_64-3.9/scss/extension copying scss/extension/api.py -> build/lib.linux-x86_64-3.9/scss/extension copying scss/extension/__init__.py -> build/lib.linux-x86_64-3.9/scss/extension creating build/lib.linux-x86_64-3.9/scss/extension/compass copying scss/extension/compass/sprites.py -> build/lib.linux-x86_64-3.9/scss/extension/compass copying scss/extension/compass/layouts.py -> build/lib.linux-x86_64-3.9/scss/extension/compass copying scss/extension/compass/images.py -> build/lib.linux-x86_64-3.9/scss/extension/compass copying scss/extension/compass/helpers.py -> build/lib.linux-x86_64-3.9/scss/extension/compass copying scss/extension/compass/gradients.py -> build/lib.linux-x86_64-3.9/scss/extension/compass copying scss/extension/compass/__init__.py -> build/lib.linux-x86_64-3.9/scss/extension/compass creating build/lib.linux-x86_64-3.9/scss/grammar copying scss/grammar/expression.py -> build/lib.linux-x86_64-3.9/scss/grammar copying scss/grammar/scanner.py -> build/lib.linux-x86_64-3.9/scss/grammar copying scss/grammar/__init__.py -> build/lib.linux-x86_64-3.9/scss/grammar running build_ext building 'scss.grammar._scanner' extension creating build/temp.linux-x86_64-3.9 creating build/temp.linux-x86_64-3.9/scss creating build/temp.linux-x86_64-3.9/scss/src x86_64-alt-linux-gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -g -fwrapv -O3 -Wall -pipe -frecord-gcc-switches -Wall -g -O3 -pipe -frecord-gcc-switches -Wall -g -O3 -pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing -fPIC -I/usr/include/python3.9 -c scss/src/_speedups.c -o build/temp.linux-x86_64-3.9/scss/src/_speedups.o x86_64-alt-linux-gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -g -fwrapv -O3 -Wall -pipe -frecord-gcc-switches -Wall -g -O3 -pipe -frecord-gcc-switches -Wall -g -O3 -pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing -fPIC -I/usr/include/python3.9 -c scss/src/block_locator.c -o build/temp.linux-x86_64-3.9/scss/src/block_locator.o scss/src/block_locator.c: In function ‘BlockLocator_new’: scss/src/block_locator.c:320:3: warning: ‘PyUnicode_AsUnicode’ is deprecated [-Wdeprecated-declarations] 320 | self->codestr = PyUnicode_AS_UNICODE(codestr); | ^~~~ In file included from /usr/include/python3.9/unicodeobject.h:1026, from /usr/include/python3.9/Python.h:93, from scss/src/block_locator.c:11: /usr/include/python3.9/cpython/unicodeobject.h:580:45: note: declared here 580 | Py_DEPRECATED(3.3) PyAPI_FUNC(Py_UNICODE *) PyUnicode_AsUnicode( | ^~~~~~~~~~~~~~~~~~~ scss/src/block_locator.c:321:3: warning: ‘PyUnicode_GetSize’ is deprecated [-Wdeprecated-declarations] 321 | self->codestr_sz = PyUnicode_GetSize((PyObject*)codestr); | ^~~~ In file included from /usr/include/python3.9/Python.h:93, from scss/src/block_locator.c:11: /usr/include/python3.9/unicodeobject.h:177:43: note: declared here 177 | Py_DEPRECATED(3.3) PyAPI_FUNC(Py_ssize_t) PyUnicode_GetSize( | ^~~~~~~~~~~~~~~~~ x86_64-alt-linux-gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -g -fwrapv -O3 -Wall -pipe -frecord-gcc-switches -Wall -g -O3 -pipe -frecord-gcc-switches -Wall -g -O3 -pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing -fPIC -I/usr/include/python3.9 -c scss/src/hashtable.c -o build/temp.linux-x86_64-3.9/scss/src/hashtable.o x86_64-alt-linux-gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -g -fwrapv -O3 -Wall -pipe -frecord-gcc-switches -Wall -g -O3 -pipe -frecord-gcc-switches -Wall -g -O3 -pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing -fPIC -I/usr/include/python3.9 -c scss/src/scanner.c -o build/temp.linux-x86_64-3.9/scss/src/scanner.o x86_64-alt-linux-gcc -pthread -shared -pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing build/temp.linux-x86_64-3.9/scss/src/_speedups.o build/temp.linux-x86_64-3.9/scss/src/block_locator.o build/temp.linux-x86_64-3.9/scss/src/hashtable.o build/temp.linux-x86_64-3.9/scss/src/scanner.o -L/usr/lib64 -lpcre -o build/lib.linux-x86_64-3.9/scss/grammar/_scanner.cpython-39.so installing to build/bdist.linux-x86_64/wheel running install running install_lib creating build/bdist.linux-x86_64 creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel/scss creating build/bdist.linux-x86_64/wheel/scss/grammar copying build/lib.linux-x86_64-3.9/scss/grammar/_scanner.cpython-39.so -> build/bdist.linux-x86_64/wheel/scss/grammar copying build/lib.linux-x86_64-3.9/scss/grammar/__init__.py -> build/bdist.linux-x86_64/wheel/scss/grammar copying build/lib.linux-x86_64-3.9/scss/grammar/scanner.py -> build/bdist.linux-x86_64/wheel/scss/grammar copying build/lib.linux-x86_64-3.9/scss/grammar/expression.py -> build/bdist.linux-x86_64/wheel/scss/grammar creating build/bdist.linux-x86_64/wheel/scss/extension creating build/bdist.linux-x86_64/wheel/scss/extension/compass copying build/lib.linux-x86_64-3.9/scss/extension/compass/__init__.py -> build/bdist.linux-x86_64/wheel/scss/extension/compass copying build/lib.linux-x86_64-3.9/scss/extension/compass/gradients.py -> build/bdist.linux-x86_64/wheel/scss/extension/compass copying build/lib.linux-x86_64-3.9/scss/extension/compass/helpers.py -> build/bdist.linux-x86_64/wheel/scss/extension/compass copying build/lib.linux-x86_64-3.9/scss/extension/compass/images.py -> build/bdist.linux-x86_64/wheel/scss/extension/compass copying build/lib.linux-x86_64-3.9/scss/extension/compass/layouts.py -> build/bdist.linux-x86_64/wheel/scss/extension/compass copying build/lib.linux-x86_64-3.9/scss/extension/compass/sprites.py -> build/bdist.linux-x86_64/wheel/scss/extension/compass copying build/lib.linux-x86_64-3.9/scss/extension/__init__.py -> build/bdist.linux-x86_64/wheel/scss/extension copying build/lib.linux-x86_64-3.9/scss/extension/api.py -> build/bdist.linux-x86_64/wheel/scss/extension copying build/lib.linux-x86_64-3.9/scss/extension/bootstrap.py -> build/bdist.linux-x86_64/wheel/scss/extension copying build/lib.linux-x86_64-3.9/scss/extension/core.py -> build/bdist.linux-x86_64/wheel/scss/extension copying build/lib.linux-x86_64-3.9/scss/extension/extra.py -> build/bdist.linux-x86_64/wheel/scss/extension copying build/lib.linux-x86_64-3.9/scss/extension/fonts.py -> build/bdist.linux-x86_64/wheel/scss/extension copying build/lib.linux-x86_64-3.9/scss/__init__.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/__main__.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/ast.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/calculator.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/compiler.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/config.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/cssdefs.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/errors.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/legacy.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/less2scss.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/namespace.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/rule.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/scss_meta.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/selector.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/source.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/tool.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/types.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/util.py -> build/bdist.linux-x86_64/wheel/scss copying build/lib.linux-x86_64-3.9/scss/setup.py -> build/bdist.linux-x86_64/wheel/scss running install_egg_info running egg_info writing pyScss.egg-info/PKG-INFO writing dependency_links to pyScss.egg-info/dependency_links.txt writing entry points to pyScss.egg-info/entry_points.txt writing requirements to pyScss.egg-info/requires.txt writing top-level names to pyScss.egg-info/top_level.txt reading manifest file 'pyScss.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' adding license file 'LICENSE' writing manifest file 'pyScss.egg-info/SOURCES.txt' Copying pyScss.egg-info to build/bdist.linux-x86_64/wheel/pyScss-1.4.0-py3.9.egg-info running install_scripts adding license file "LICENSE" (matched pattern "LICEN[CS]E*") creating build/bdist.linux-x86_64/wheel/pyScss-1.4.0.dist-info/WHEEL creating '/usr/src/RPM/BUILD/python3-module-pyScss-1.4.0/dist/tmp2i_5rdoa/pyScss-1.4.0-cp39-cp39-linux_x86_64.whl' and adding 'build/bdist.linux-x86_64/wheel' to it adding 'scss/__init__.py' adding 'scss/__main__.py' adding 'scss/ast.py' adding 'scss/calculator.py' adding 'scss/compiler.py' adding 'scss/config.py' adding 'scss/cssdefs.py' adding 'scss/errors.py' adding 'scss/legacy.py' adding 'scss/less2scss.py' adding 'scss/namespace.py' adding 'scss/rule.py' adding 'scss/scss_meta.py' adding 'scss/selector.py' adding 'scss/setup.py' adding 'scss/source.py' adding 'scss/tool.py' adding 'scss/types.py' adding 'scss/util.py' adding 'scss/extension/__init__.py' adding 'scss/extension/api.py' adding 'scss/extension/bootstrap.py' adding 'scss/extension/core.py' adding 'scss/extension/extra.py' adding 'scss/extension/fonts.py' adding 'scss/extension/compass/__init__.py' adding 'scss/extension/compass/gradients.py' adding 'scss/extension/compass/helpers.py' adding 'scss/extension/compass/images.py' adding 'scss/extension/compass/layouts.py' adding 'scss/extension/compass/sprites.py' adding 'scss/grammar/__init__.py' adding 'scss/grammar/_scanner.cpython-39.so' adding 'scss/grammar/expression.py' adding 'scss/grammar/scanner.py' adding 'pyScss-1.4.0.dist-info/LICENSE' adding 'pyScss-1.4.0.dist-info/METADATA' adding 'pyScss-1.4.0.dist-info/WHEEL' adding 'pyScss-1.4.0.dist-info/entry_points.txt' adding 'pyScss-1.4.0.dist-info/top_level.txt' adding 'pyScss-1.4.0.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel INFO : pyproject_installer.build_cmd._build : Built wheel: pyScss-1.4.0-cp39-cp39-linux_x86_64.whl + exit 0 Executing(%install): /bin/sh -e /usr/src/tmp/rpm-tmp.26417 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/python3-module-pyScss-buildroot + : + /bin/rm -rf -- /usr/src/tmp/python3-module-pyScss-buildroot + PATH=/usr/libexec/rpm-build:/usr/src/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games + cd python3-module-pyScss-1.4.0 + /usr/bin/python3 -m pyproject_installer -v install --destdir=/usr/src/tmp/python3-module-pyScss-buildroot INFO : pyproject_installer.install_cmd._install : Installing wheel INFO : pyproject_installer.install_cmd._install : Wheel directory: /usr/src/RPM/BUILD/python3-module-pyScss-1.4.0/dist INFO : pyproject_installer.install_cmd._install : Wheel filename: pyScss-1.4.0-cp39-cp39-linux_x86_64.whl INFO : pyproject_installer.install_cmd._install : Destination: /usr/src/tmp/python3-module-pyScss-buildroot DEBUG : pyproject_installer.lib.wheel : Parsing wheel filename DEBUG : pyproject_installer.lib.wheel : Validating wheel file DEBUG : pyproject_installer.lib.wheel : Validating wheel spec version DEBUG : pyproject_installer.lib.wheel : Parsing wheel spec metadata DEBUG : pyproject_installer.lib.wheel : Validating RECORD INFO : pyproject_installer.install_cmd._install : Wheel installation root: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages INFO : pyproject_installer.install_cmd._install : Extracting wheel DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: pyScss-1.4.0.dist-info/LICENSE DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: pyScss-1.4.0.dist-info/WHEEL DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: pyScss-1.4.0.dist-info/top_level.txt DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: pyScss-1.4.0.dist-info/RECORD INFO : pyproject_installer.install_cmd._install : Generating entrypoints scripts DEBUG : pyproject_installer.lib.scripts : Installing console script: pyscss DEBUG : pyproject_installer.lib.scripts : Installing console script: less2scss INFO : pyproject_installer.install_cmd._install : Wheel was installed + install -p -m644 scss/grammar/expression.g /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/ + pushd /usr/src/tmp/python3-module-pyScss-buildroot/usr/bin ~/tmp/python3-module-pyScss-buildroot/usr/bin ~/RPM/BUILD/python3-module-pyScss-1.4.0 ++ ls + for i in $(ls) + mv less2scss less2scss.py3 + for i in $(ls) + mv pyscss pyscss.py3 + popd ~/RPM/BUILD/python3-module-pyScss-1.4.0 + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/python3-module-pyScss-buildroot (auto) Verifying and fixing files in /usr/src/tmp/python3-module-pyScss-buildroot (binconfig,pkgconfig,libtool,desktop,gnuconfig) Checking contents of files in /usr/src/tmp/python3-module-pyScss-buildroot/ (default) Compressing files in /usr/src/tmp/python3-module-pyScss-buildroot (auto) Adjusting library links in /usr/src/tmp/python3-module-pyScss-buildroot ./usr/lib64: (from :0) Verifying ELF objects in /usr/src/tmp/python3-module-pyScss-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) Bytecompiling python3 modules in /usr/src/tmp/python3-module-pyScss-buildroot using /usr/bin/python3 Can't list '/usr/src/tmp/python3-module-pyScss-buildroot/usr/lib/python3/site-packages' compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/gradients.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/helpers.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/layouts.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/api.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/bootstrap.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/core.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/expression.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/scanner.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__main__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/ast.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/config.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/cssdefs.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/errors.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/less2scss.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/namespace.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/rule.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/scss_meta.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/selector.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/setup.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/source.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/types.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/util.py Bytecompiling python3 modules with optimization in /usr/src/tmp/python3-module-pyScss-buildroot using /usr/bin/python3 -O Can't list '/usr/src/tmp/python3-module-pyScss-buildroot/usr/lib/python3/site-packages' compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/gradients.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/helpers.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/layouts.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/api.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/bootstrap.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/core.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/expression.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/scanner.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__main__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/ast.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/config.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/cssdefs.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/errors.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/less2scss.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/namespace.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/rule.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/scss_meta.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/selector.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/setup.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/source.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/types.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/util.py Bytecompiling python3 modules with optimization-2 in /usr/src/tmp/python3-module-pyScss-buildroot using /usr/bin/python3 -OO Can't list '/usr/src/tmp/python3-module-pyScss-buildroot/usr/lib/python3/site-packages' compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/gradients.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/helpers.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/layouts.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/api.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/bootstrap.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/core.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/expression.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/scanner.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__init__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__main__.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/ast.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/config.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/cssdefs.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/errors.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/less2scss.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/namespace.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/rule.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/scss_meta.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/selector.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/setup.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/source.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/types.py compile /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/util.py Hardlinking identical .pyc and .opt-?.pyc files './usr/lib64/python3/site-packages/scss/__pycache__/__init__.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/__init__.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/__main__.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/__main__.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/__main__.cpython-39.opt-2.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/__main__.cpython-39.opt-1.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/ast.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/ast.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/calculator.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/calculator.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/compiler.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/compiler.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/config.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/config.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/config.cpython-39.opt-2.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/config.cpython-39.opt-1.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/cssdefs.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/cssdefs.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/errors.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/errors.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/less2scss.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/less2scss.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/scss_meta.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/scss_meta.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/setup.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/setup.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/setup.cpython-39.opt-2.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/setup.cpython-39.opt-1.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/source.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/source.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/tool.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/tool.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/tool.cpython-39.opt-2.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/tool.cpython-39.opt-1.pyc' './usr/lib64/python3/site-packages/scss/__pycache__/util.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/__pycache__/util.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/__pycache__/__init__.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/__pycache__/__init__.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/__pycache__/api.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/__pycache__/api.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/__pycache__/bootstrap.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/__pycache__/bootstrap.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/__pycache__/bootstrap.cpython-39.opt-2.pyc' => './usr/lib64/python3/site-packages/scss/extension/__pycache__/bootstrap.cpython-39.opt-1.pyc' './usr/lib64/python3/site-packages/scss/extension/__pycache__/core.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/__pycache__/core.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/__pycache__/extra.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/__pycache__/extra.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/__pycache__/fonts.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/__pycache__/fonts.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/__init__.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/__init__.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/gradients.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/gradients.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/helpers.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/helpers.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/images.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/images.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/sprites.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/extension/compass/__pycache__/sprites.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/grammar/__pycache__/__init__.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/grammar/__pycache__/__init__.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/grammar/__pycache__/expression.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/grammar/__pycache__/expression.cpython-39.pyc' './usr/lib64/python3/site-packages/scss/grammar/__pycache__/scanner.cpython-39.opt-1.pyc' => './usr/lib64/python3/site-packages/scss/grammar/__pycache__/scanner.cpython-39.pyc' Executing(%check): /bin/sh -e /usr/src/tmp/rpm-tmp.83975 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd python3-module-pyScss-1.4.0 + export 'CFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + CFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + export 'CXXFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + CXXFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + export 'FFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + FFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -I/usr/include/pcre -fno-strict-aliasing' + export NO_INTERNET=YES + NO_INTERNET=YES + /usr/bin/python3 -m pyproject_installer run -- python3 -m pytest -ra -Wignore INFO : Creating venv INFO : Installing console scripts INFO : Installing package: /usr/src/RPM/BUILD/python3-module-pyScss-1.4.0/dist/pyScss-1.4.0-cp39-cp39-linux_x86_64.whl INFO : Running command: ['/usr/src/RPM/BUILD/python3-module-pyScss-1.4.0/.run_venv/bin/python3', '-m', 'pyproject_installer', 'install', '/usr/src/RPM/BUILD/python3-module-pyScss-1.4.0/dist/pyScss-1.4.0-cp39-cp39-linux_x86_64.whl'] INFO : Running command: ['python3', '-m', 'pytest', '-ra', '-Wignore'] ============================= test session starts ============================== platform linux -- Python 3.9.18, pytest-7.0.1, pluggy-1.0.0 rootdir: /usr/src/RPM/BUILD/python3-module-pyScss-1.4.0 collected 249 items / 1 skipped / 248 selected scss/tests/test_cli.py . [ 0%] scss/tests/test_expression.py ..... [ 2%] scss/tests/test_interactive.py .. [ 3%] scss/tests/test_misc.py ...... [ 5%] scss/tests/test_types.py ....... [ 8%] scss/tests/extension/test_core.py ...................................... [ 23%] ........................ [ 33%] scss/tests/extension/test_extra.py .... [ 34%] scss/tests/extension/compass/test_gradients.py .x [ 35%] scss/tests/extension/compass/test_helpers.py ................ [ 42%] scss/tests/extension/compass/test_images.py ... [ 43%] scss/tests/files/bugs/append.scss . [ 43%] scss/tests/files/bugs/argspec-named-arguments.scss . [ 44%] scss/tests/files/bugs/argspec-slurpy-arguments.scss . [ 44%] scss/tests/files/bugs/at-rules-1.scss . [ 44%] scss/tests/files/bugs/at-rules-2.scss . [ 45%] scss/tests/files/bugs/at-rules-compressed-semicolon.scss . [ 45%] scss/tests/files/bugs/at-rules-duplicate-media-queries.scss . [ 46%] scss/tests/files/bugs/at-rules-interpolation.scss . [ 46%] scss/tests/files/bugs/base64url.scss . [ 46%] scss/tests/files/bugs/colors-preserve-names.scss . [ 47%] scss/tests/files/bugs/division-in-assignment.scss . [ 47%] scss/tests/files/bugs/division-vs-literal-slash.scss . [ 48%] scss/tests/files/bugs/extend-child-selector.scss . [ 48%] scss/tests/files/bugs/extend-common-prefix-complex.scss . [ 48%] scss/tests/files/bugs/extend-common-prefix.scss . [ 49%] scss/tests/files/bugs/extend-selector-order.scss . [ 49%] scss/tests/files/bugs/for-to-vs-through.scss . [ 50%] scss/tests/files/bugs/if-with-parentheses.scss . [ 50%] scss/tests/files/bugs/interpolation-timing.scss . [ 51%] scss/tests/files/bugs/names-equivalence.scss . [ 51%] scss/tests/files/bugs/selectors-adjacent-is-not-include.scss . [ 51%] scss/tests/files/bugs/trailing-combinators.scss . [ 52%] scss/tests/files/bugs/unit-float-precision.scss . [ 52%] scss/tests/files/bugs/variables-font-face-default.scss . [ 53%] scss/tests/files/compass/current-color.scss . [ 53%] scss/tests/files/compass/gradients.scss . [ 53%] scss/tests/files/general/000-smoketest.scss . [ 54%] scss/tests/files/general/css-calc.scss . [ 54%] scss/tests/files/general/each-destructuring-2.scss . [ 55%] scss/tests/files/general/each-destructuring-3.scss . [ 55%] scss/tests/files/general/each-destructuring.scss . [ 55%] scss/tests/files/general/empty-list-included.scss . [ 56%] scss/tests/files/general/global-variable-exists.scss . [ 56%] scss/tests/files/general/if-lazy.scss . [ 57%] scss/tests/files/general/interpolation-acid.scss . [ 57%] scss/tests/files/general/interpolation-mixin-name.scss . [ 57%] scss/tests/files/general/maps-complex-keys.scss . [ 58%] scss/tests/files/general/maps-example-lists.scss . [ 58%] scss/tests/files/general/maps-example.scss . [ 59%] scss/tests/files/general/names-loop-variable.scss . [ 59%] scss/tests/files/general/null-values.scss . [ 59%] scss/tests/files/general/scoping-mixin-2.scss . [ 60%] scss/tests/files/general/scoping-mixin.scss . [ 60%] scss/tests/files/general/scoping-nested-2.scss . [ 61%] scss/tests/files/general/scoping-nested.scss . [ 61%] scss/tests/files/general/slurpy-keyword-args.scss . [ 61%] scss/tests/files/kronuz/args.scss . [ 62%] scss/tests/files/kronuz/functions-context.scss . [ 62%] scss/tests/files/kronuz/image-colors.scss . [ 63%] scss/tests/files/kronuz/imports-unused.scss . [ 63%] scss/tests/files/kronuz/linear-gradient.scss . [ 63%] scss/tests/files/kronuz/lists-circular-nth.scss . [ 64%] scss/tests/files/kronuz/lists-operations.scss . [ 64%] scss/tests/files/kronuz/mixin-varargs.scss . [ 65%] scss/tests/files/kronuz/mixins-context.scss . [ 65%] scss/tests/files/kronuz/mul-em.scss . [ 65%] scss/tests/files/kronuz/mul-list.scss . [ 66%] scss/tests/files/kronuz/order-test-each.scss . [ 66%] scss/tests/files/kronuz/order-test-for.scss . [ 67%] scss/tests/files/kronuz/order-test.scss . [ 67%] scss/tests/files/kronuz/reversed-for.scss . [ 67%] scss/tests/files/kronuz/reversed-range.scss . [ 68%] scss/tests/files/kronuz/rgba-colors.scss . [ 68%] scss/tests/files/kronuz/scope-loop-variables.scss . [ 69%] scss/tests/files/kronuz/scoping-control.scss . [ 69%] scss/tests/files/kronuz/selectors-append-nest.scss . [ 69%] scss/tests/files/kronuz/selectors-nest.scss . [ 70%] scss/tests/files/kronuz/selectors-special.scss . [ 70%] scss/tests/files/kronuz/sprite-map.scss . [ 71%] scss/tests/files/kronuz/style-nested.scss . [ 71%] scss/tests/files/kronuz/while-test.scss . [ 71%] scss/tests/files/original-doctests/000-general.scss . [ 72%] scss/tests/files/original-doctests/001-variables.scss . [ 72%] scss/tests/files/original-doctests/002-nesting-children.scss . [ 73%] scss/tests/files/original-doctests/003-nesting-children-2.scss . [ 73%] scss/tests/files/original-doctests/004-nesting-children-3.scss . [ 73%] scss/tests/files/original-doctests/005-extends.scss . [ 74%] scss/tests/files/original-doctests/006-extends-2.scss . [ 74%] scss/tests/files/original-doctests/007-extends-3.scss . [ 75%] scss/tests/files/original-doctests/008-extends-4.scss . [ 75%] scss/tests/files/original-doctests/009-extends-5.scss . [ 75%] scss/tests/files/original-doctests/010-math.scss . [ 76%] scss/tests/files/original-doctests/011-math-2.scss . [ 76%] scss/tests/files/original-doctests/012-math-3.scss . [ 77%] scss/tests/files/original-doctests/013-nesting.scss . [ 77%] scss/tests/files/original-doctests/014-nesting-2.scss . [ 77%] scss/tests/files/original-doctests/015-nesting-3.scss . [ 78%] scss/tests/files/original-doctests/016-variables.scss . [ 78%] scss/tests/files/original-doctests/017-interpolation.scss . [ 79%] scss/tests/files/original-doctests/018-mixins.scss . [ 79%] scss/tests/files/original-doctests/019-mixins-2.scss . [ 79%] scss/tests/files/original-doctests/020-mixins-3.scss . [ 80%] scss/tests/files/original-doctests/021-extend.scss . [ 80%] scss/tests/files/original-doctests/022-extend-multiple.scss . [ 81%] scss/tests/files/original-doctests/023-extend-multiple-2.scss . [ 81%] scss/tests/files/original-doctests/024-extend-placeholder.scss . [ 81%] scss/tests/files/original-doctests/025-forum.scss . [ 82%] scss/tests/files/original-doctests/026-forum-2.scss . [ 82%] scss/tests/files/original-doctests/027-forum-3.scss . [ 83%] scss/tests/files/original-doctests/028-errors.scss . [ 83%] scss/tests/files/original-doctests/029-errors-2.scss . [ 83%] scss/tests/files/original-doctests/030-errors-3.scss . [ 84%] scss/tests/files/original-doctests/031-test.scss . [ 84%] scss/tests/files/original-doctests/032-test-2.scss . [ 85%] scss/tests/files/original-doctests/033-test-3.scss . [ 85%] scss/tests/files/original-doctests/034-test-4.scss . [ 85%] scss/tests/files/original-doctests/035-test-5.scss . [ 86%] scss/tests/files/original-doctests/036-test-6.scss . [ 86%] scss/tests/files/original-doctests/037-test-7.scss . [ 87%] scss/tests/files/original-doctests/038-test-8.scss . [ 87%] scss/tests/files/original-doctests/039-hover-extend.scss . [ 87%] scss/tests/files/original-doctests/039-math-4.scss . [ 88%] scss/tests/files/original-doctests/040-complex-sequence-extend.scss . [ 88%] scss/tests/files/original-doctests/041-another-extend.scss . [ 89%] scss/tests/files/regressions/args-vars.scss . [ 89%] scss/tests/files/regressions/argspec-default-arguments.scss . [ 89%] scss/tests/files/regressions/argspec-no-arguments.scss . [ 90%] scss/tests/files/regressions/argspec-trailing-comma.scss . [ 90%] scss/tests/files/regressions/interpolation-2.scss . [ 91%] scss/tests/files/regressions/interpolation.scss . [ 91%] scss/tests/files/regressions/issue-10.scss . [ 91%] scss/tests/files/regressions/issue-110.scss . [ 92%] scss/tests/files/regressions/issue-2.scss . [ 92%] scss/tests/files/regressions/issue-21.scss . [ 93%] scss/tests/files/regressions/issue-258.scss . [ 93%] scss/tests/files/regressions/issue-32.scss . [ 93%] scss/tests/files/regressions/issue-334-a.scss . [ 94%] scss/tests/files/regressions/issue-334-b.scss . [ 94%] scss/tests/files/regressions/issue-334-c.scss . [ 95%] scss/tests/files/regressions/issue-334-d.scss . [ 95%] scss/tests/files/regressions/issue-334-e.scss . [ 95%] scss/tests/files/regressions/issue-334-f.scss . [ 96%] scss/tests/files/regressions/issue-334-g.scss . [ 96%] scss/tests/files/regressions/issue-334-h.scss . [ 97%] scss/tests/files/regressions/issue-4.scss . [ 97%] scss/tests/files/regressions/issue-40.scss . [ 97%] scss/tests/files/regressions/issue-5.scss . [ 98%] scss/tests/files/regressions/issue-52.scss . [ 98%] scss/tests/files/regressions/issue-6.scss . [ 99%] scss/tests/files/regressions/issue-7.scss . [ 99%] scss/tests/files/regressions/nth-inside-each.scss . [100%] =========================== short test summary info ============================ SKIPPED [1] conftest.py:71: font tests require fontforge XFAIL scss/tests/extension/compass/test_gradients.py::test_linear_gradient_idempotent rainbow still has intermediate values added ================== 248 passed, 1 skipped, 1 xfailed in 0.91s =================== INFO : Command's result: OK + exit 0 Processing files: python3-module-pyScss-1.4.0-alt4.p10 Executing(%doc): /bin/sh -e /usr/src/tmp/rpm-tmp.68035 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd python3-module-pyScss-1.4.0 + DOCDIR=/usr/src/tmp/python3-module-pyScss-buildroot/usr/share/doc/python3-module-pyScss-1.4.0 + export DOCDIR + rm -rf /usr/src/tmp/python3-module-pyScss-buildroot/usr/share/doc/python3-module-pyScss-1.4.0 + /bin/mkdir -p /usr/src/tmp/python3-module-pyScss-buildroot/usr/share/doc/python3-module-pyScss-1.4.0 + cp -prL README.rst /usr/src/tmp/python3-module-pyScss-buildroot/usr/share/doc/python3-module-pyScss-1.4.0 + chmod -R go-w /usr/src/tmp/python3-module-pyScss-buildroot/usr/share/doc/python3-module-pyScss-1.4.0 + chmod -R a+rX /usr/src/tmp/python3-module-pyScss-buildroot/usr/share/doc/python3-module-pyScss-1.4.0 + exit 0 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.TpSVHN find-provides: running scripts (alternatives,debuginfo,lib,pam,perl,pkgconfig,python,python3,shell) Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.QwFhZO find-requires: running scripts (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,python3,rpmlib,shebang,shell,static,symlinks,systemd-services) /usr/src/tmp/python3-module-pyScss-buildroot/usr/bin/less2scss.py3: scss.less2scss is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/bin/less2scss.py3: skipping sys /usr/src/tmp/python3-module-pyScss-buildroot/usr/bin/pyscss.py3: scss.tool is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/bin/pyscss.py3: skipping sys /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__init__.py: scss.compiler is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__init__.py: scss.legacy is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__init__.py: scss.scss_meta is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/__main__.py: scss.tool is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/ast.py: Ignore for REQ=slight module=collections /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/ast.py: Ignore for REQ=slight module=ordereddict /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/ast.py: scss.cssdefs is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/ast.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/ast.py: scss.util is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py: scss.ast is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py: scss.cssdefs is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py: scss.errors is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py: scss.grammar.expression is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py: scss.rule is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py: scss.util is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/calculator.py: skipping sys /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: Ignore for REQ=slight module=ipdb /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: Ignore for REQ=slight module=ordereddict /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: Ignore for REQ=slight module=pdb /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.calculator is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.cssdefs is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.errors is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.extension is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.extension.core is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.grammar is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.rule is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.selector is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.source is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: scss.util is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/compiler.py: skipping sys python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/errors.py: skipping sys /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/__init__.py: scss.extension.api is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/bootstrap.py: scss.extension is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/bootstrap.py: scss.extension.compass.helpers is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/bootstrap.py: scss.extension.compass.images is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/bootstrap.py: scss.namespace is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.config is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.extension is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.extension.compass.gradients is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.extension.compass.helpers is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.extension.compass.images is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.extension.compass.sprites is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.namespace is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.source is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/__init__.py: scss.extension.compass.sprites is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/gradients.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/gradients.py: scss.util is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/gradients.py: scss.extension.compass is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/gradients.py: scss.extension.compass.helpers is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/helpers.py: scss is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/helpers.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/helpers.py: scss.util is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/helpers.py: scss.extension.compass is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py: Ignore for REQ=slight module=Image /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py: Ignore for REQ=slight module=PIL /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py: scss is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py: scss.errors is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py: scss.extension is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py: scss.util is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py: scss.extension.compass is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/images.py: scss.extension.compass.helpers is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: Ignore for REQ=slight module=Image /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: Ignore for REQ=slight module=PIL /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: Ignore for REQ=slight module=cPickle /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: Ignore for REQ=slight module=pickle /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: scss is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: scss.errors is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: scss.extension is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: scss.util is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: skipping sys python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: skipping time /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: scss.extension.compass is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/compass/sprites.py: scss.extension.compass.layouts is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/core.py: skipping itertools /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/core.py: scss.extension is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/core.py: scss.namespace is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/core.py: scss.source is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/core.py: scss.types is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py: Ignore for REQ=slight module=Image /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py: Ignore for REQ=slight module=ImageDraw /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py: Ignore for REQ=slight module=PIL /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py: scss is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py: scss.errors is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py: scss.extension is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py: scss.namespace is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/extra.py: scss.util is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: Ignore for REQ=slight module=cPickle python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: skipping errno /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: Ignore for REQ=slight module=fontforge /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: Ignore for REQ=slight module=pickle /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: scss is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: scss.errors is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: scss.extension is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: scss.namespace is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: scss.util is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/extension/fonts.py: skipping time /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/__init__.py: scss.grammar.scanner is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/expression.py: scss.ast is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/expression.py: scss.cssdefs is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/expression.py: scss.grammar is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/expression.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/scanner.py: scss.errors is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/grammar/scanner.py: scss.grammar._scanner is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.calculator is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.compiler is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.config is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.extension.bootstrap is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.extension.compass is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.extension.core is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.extension.extra is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.extension.fonts is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.namespace is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.scss_meta is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.source is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/legacy.py: scss.types is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/less2scss.py: Ignore for REQ=slight module=optparse /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/less2scss.py: scss.tool is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/less2scss.py: skipping sys /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/namespace.py: scss.types is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/rule.py: scss.namespace is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/scss_meta.py: skipping sys /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/selector.py: scss.cssdefs is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/source.py: scss.cssdefs is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: Ignore for REQ=slight module=optparse /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: Ignore for REQ=slight module=pprint /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: Ignore for REQ=slight module=pytest /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: Ignore for REQ=slight module=readline /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss.calculator is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss.compiler is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss.errors is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss.legacy is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss.namespace is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss.rule is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss.scss_meta is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss.source is possibly a self-providing dependency, skip it /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: scss.util is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: skipping sys python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: skipping time /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: Ignore for REQ=slight module=watchdog.events /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py: Ignore for REQ=slight module=watchdog.observers /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/types.py: Ignore for REQ=slight module=collections /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/types.py: Ignore for REQ=slight module=collections.abc /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/types.py: scss.cssdefs is possibly a self-providing dependency, skip it /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/util.py: Ignore for REQ=slight module=cProfile /usr/lib/rpm/python3.req.py: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/util.py: Ignore for REQ=slight module=pstats /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/util.py: scss is possibly a self-providing dependency, skip it python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/util.py: skipping sys python3.req: /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/util.py: skipping time shebang.req.files: executable script /usr/src/tmp/python3-module-pyScss-buildroot/usr/lib64/python3/site-packages/scss/tool.py is not executable Provides: python3(scss), python3(scss.__main__), python3(scss.ast), python3(scss.calculator), python3(scss.compiler), python3(scss.config), python3(scss.cssdefs), python3(scss.errors), python3(scss.extension), python3(scss.extension.api), python3(scss.extension.bootstrap), python3(scss.extension.compass), python3(scss.extension.compass.gradients), python3(scss.extension.compass.helpers), python3(scss.extension.compass.images), python3(scss.extension.compass.layouts), python3(scss.extension.compass.sprites), python3(scss.extension.core), python3(scss.extension.extra), python3(scss.extension.fonts), python3(scss.grammar), python3(scss.grammar._scanner), python3(scss.grammar.expression), python3(scss.grammar.scanner), python3(scss.legacy), python3(scss.less2scss), python3(scss.namespace), python3(scss.rule), python3(scss.scss_meta), python3(scss.selector), python3(scss.setup), python3(scss.source), python3(scss.tool), python3(scss.types), python3(scss.util) Requires: python3-module-six, python3-module-pillow, /usr/bin/python3, /usr/lib64/python3/site-packages, libc.so.6(GLIBC_2.14)(64bit), libc.so.6(GLIBC_2.2.5)(64bit), libc.so.6(GLIBC_2.3.4)(64bit), libc.so.6(GLIBC_2.4)(64bit), libpcre.so.3()(64bit) >= set:igW8KBZGd4, python3(__future__) < 0, python3(base64) < 0, python3(collections) < 0, python3(colorsys) < 0, python3(contextlib) < 0, python3(enum) < 0, python3(fractions) < 0, python3(functools) < 0, python3(glob) < 0, python3(hashlib) < 0, python3(inspect) < 0, python3(logging) < 0, python3(math) < 0, python3(mimetypes) < 0, python3(operator) < 0, python3(os) < 0, python3(os.path) < 0, python3(pathlib) < 0, python3(random) < 0, python3(re) < 0, python3(setuptools) < 0, python3(six) < 0, python3(six.moves) < 0, python3(string) < 0, python3(subprocess) < 0, python3(tempfile) < 0, python3(traceback) < 0, python3(warnings) < 0, python3.9-ABI(64bit), rtld(GNU_HASH) Requires(rpmlib): rpmlib(SetVersions) Finding debuginfo files (using /usr/lib/rpm/find-debuginfo-files) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.a4jt7P Creating python3-module-pyScss-debuginfo package Processing files: python3-module-pyScss-debuginfo-1.4.0-alt4.p10 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.kx6kBP find-provides: running scripts (debuginfo) Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.gj9vnR find-requires: running scripts (debuginfo) Requires: python3-module-pyScss = 1.4.0-alt4.p10, debug64(libc.so.6), debug64(libpcre.so.3) Adding to python3-module-pyScss-debuginfo a strict dependency on python3-module-pyScss Wrote: /usr/src/RPM/RPMS/x86_64/python3-module-pyScss-1.4.0-alt4.p10.x86_64.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/x86_64/python3-module-pyScss-debuginfo-1.4.0-alt4.p10.x86_64.rpm (w2.lzdio) 4.24user 2.05system 0:09.89elapsed 63%CPU (0avgtext+0avgdata 45684maxresident)k 0inputs+0outputs (0major+387660minor)pagefaults 0swaps 3.96user 2.92system 0:23.88elapsed 28%CPU (0avgtext+0avgdata 130944maxresident)k 0inputs+0outputs (0major+293468minor)pagefaults 0swaps --- python3-module-pyScss-1.4.0-alt4.p10.x86_64.rpm.repo 2024-02-14 15:05:39.000000000 +0000 +++ python3-module-pyScss-1.4.0-alt4.p10.x86_64.rpm.hasher 2024-06-16 02:20:31.279796622 +0000 @@ -245,3 +245,3 @@ File: /usr/lib64/python3/site-packages/scss/__pycache__/__main__.cpython-39.pyc 100644 root:root 089455464d3ff24e8480562dc02d0119 -File: /usr/lib64/python3/site-packages/scss/__pycache__/ast.cpython-39.opt-1.pyc 100644 root:root 9954a6c96913426df5c274dab19002c3 +File: /usr/lib64/python3/site-packages/scss/__pycache__/ast.cpython-39.opt-1.pyc 100644 root:root 5b7463f0efa5cf9e94d0ece48902c835 File: /usr/lib64/python3/site-packages/scss/__pycache__/ast.cpython-39.opt-2.pyc 100644 root:root 0d4b8534743a824eb4b4c5156df285e0 @@ -251,3 +251,3 @@ File: /usr/lib64/python3/site-packages/scss/__pycache__/calculator.cpython-39.pyc 100644 root:root 44826561e6cfd38b5dbc6f9ff74a2508 -File: /usr/lib64/python3/site-packages/scss/__pycache__/compiler.cpython-39.opt-1.pyc 100644 root:root 684fe851d412c0abd40269729db129eb +File: /usr/lib64/python3/site-packages/scss/__pycache__/compiler.cpython-39.opt-1.pyc 100644 root:root 3e25fd31e1e218f458816b1b03d85ceb File: /usr/lib64/python3/site-packages/scss/__pycache__/compiler.cpython-39.opt-2.pyc 100644 root:root b32b4d55bf77a3153bd5b5c3d53e836b @@ -263,3 +263,3 @@ File: /usr/lib64/python3/site-packages/scss/__pycache__/errors.cpython-39.pyc 100644 root:root c67e3f02b6c605f82bb6cf1ba8e12255 -File: /usr/lib64/python3/site-packages/scss/__pycache__/legacy.cpython-39.opt-1.pyc 100644 root:root 99ce790ca8d3913ca564dce207d87dc8 +File: /usr/lib64/python3/site-packages/scss/__pycache__/legacy.cpython-39.opt-1.pyc 100644 root:root b088b7b92b490fa148b61e94aadbb5a2 File: /usr/lib64/python3/site-packages/scss/__pycache__/legacy.cpython-39.opt-2.pyc 100644 root:root fc15803d395c1508fcf3dfb3b1287ff9 @@ -284,3 +284,3 @@ File: /usr/lib64/python3/site-packages/scss/__pycache__/setup.cpython-39.pyc 100644 root:root a146bd79e5b9b7059ff3765ad995cbc9 -File: /usr/lib64/python3/site-packages/scss/__pycache__/source.cpython-39.opt-1.pyc 100644 root:root 35a74adeea739693f4338aeb5a444b1d +File: /usr/lib64/python3/site-packages/scss/__pycache__/source.cpython-39.opt-1.pyc 100644 root:root 0d53bc26b7a3a390c23948dcbc964a07 File: /usr/lib64/python3/site-packages/scss/__pycache__/source.cpython-39.opt-2.pyc 100644 root:root b16e2a5616751e9f7d448d01ddb003e1 @@ -363,6 +363,6 @@ File: /usr/lib64/python3/site-packages/scss/grammar/__pycache__/expression.cpython-39.pyc 100644 root:root ade1243122d6299364b75317365cccce -File: /usr/lib64/python3/site-packages/scss/grammar/__pycache__/scanner.cpython-39.opt-1.pyc 100644 root:root 41ca54064dea4133ad73fdc7996ecaf4 +File: /usr/lib64/python3/site-packages/scss/grammar/__pycache__/scanner.cpython-39.opt-1.pyc 100644 root:root 1376f1452ac0bd1328ec2bf1d2791d2a File: /usr/lib64/python3/site-packages/scss/grammar/__pycache__/scanner.cpython-39.opt-2.pyc 100644 root:root 992bdd9d5ce409bf9bc3d45535e09d2e File: /usr/lib64/python3/site-packages/scss/grammar/__pycache__/scanner.cpython-39.pyc 100644 root:root 1376f1452ac0bd1328ec2bf1d2791d2a -File: /usr/lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so 100644 root:root 38e98bf7f2a079a9755a5e232dcb4c07 +File: /usr/lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so 100644 root:root 57fe12ac477751534dea71750f65b2de File: /usr/lib64/python3/site-packages/scss/grammar/expression.g 100644 root:root 95304a08dee52297180056f00e47bc04 @@ -383,2 +383,2 @@ File: /usr/share/doc/python3-module-pyScss-1.4.0/README.rst 100644 root:root 2a03c91d81596aad0ce953b654fef922 -RPMIdentity: b532d4b52718dc9825fbbcb3611520789a7f1cb36835c2e22dc655fdc3f82da34ceba78ef86d863c5d3eda492a6808836e678e98e6d02b148d9344bd45d69309 +RPMIdentity: 869f3204ddcfa66dc538adc84bd67456160e849c710184ec2734d7bc6a344ba6fac7ec92b5fe3d36d5e33dad6b14326c89238d178eb229343ddcf6dd3e1ff932 --- python3-module-pyScss-debuginfo-1.4.0-alt4.p10.x86_64.rpm.repo 2024-02-14 15:05:39.000000000 +0000 +++ python3-module-pyScss-debuginfo-1.4.0-alt4.p10.x86_64.rpm.hasher 2024-06-16 02:20:31.354798232 +0000 @@ -1,4 +1,4 @@ -/usr/lib/debug/.build-id/18 40755 root:root -/usr/lib/debug/.build-id/18/bcbbb02290ad3b427a094bafc270b63d7ba2e4 120777 root:root ../../../../lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so -/usr/lib/debug/.build-id/18/bcbbb02290ad3b427a094bafc270b63d7ba2e4.debug 120777 root:root ../../usr/lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so.debug +/usr/lib/debug/.build-id/de 40755 root:root +/usr/lib/debug/.build-id/de/82d05053b08ac5aa668ad76020888e3a6b07a9 120777 root:root ../../../../lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so +/usr/lib/debug/.build-id/de/82d05053b08ac5aa668ad76020888e3a6b07a9.debug 120777 root:root ../../usr/lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so.debug /usr/lib/debug/usr/lib64/python3 40755 root:root @@ -24,5 +24,5 @@ Provides: python3-module-pyScss-debuginfo = 1.4.0-alt4.p10:p10+340092.1340.10.1 -File: /usr/lib/debug/.build-id/18 40755 root:root -File: /usr/lib/debug/.build-id/18/bcbbb02290ad3b427a094bafc270b63d7ba2e4 120777 root:root ../../../../lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so -File: /usr/lib/debug/.build-id/18/bcbbb02290ad3b427a094bafc270b63d7ba2e4.debug 120777 root:root ../../usr/lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so.debug +File: /usr/lib/debug/.build-id/de 40755 root:root +File: /usr/lib/debug/.build-id/de/82d05053b08ac5aa668ad76020888e3a6b07a9 120777 root:root ../../../../lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so +File: /usr/lib/debug/.build-id/de/82d05053b08ac5aa668ad76020888e3a6b07a9.debug 120777 root:root ../../usr/lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so.debug File: /usr/lib/debug/usr/lib64/python3 40755 root:root @@ -31,3 +31,3 @@ File: /usr/lib/debug/usr/lib64/python3/site-packages/scss/grammar 40755 root:root -File: /usr/lib/debug/usr/lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so.debug 100644 root:root d57fa523543aa959e428d795e666fe8b +File: /usr/lib/debug/usr/lib64/python3/site-packages/scss/grammar/_scanner.cpython-39.so.debug 100644 root:root 3fae8f2d40df0b6d974ccbf681db0c5a File: /usr/src/debug/python3-module-pyScss-1.4.0 40755 root:root @@ -43,2 +43,2 @@ File: /usr/src/debug/python3-module-pyScss-1.4.0/scss/src/utils.h 100644 root:root 69c361c0cdef5edbc3558933fdd3db92 -RPMIdentity: a7e49621429ab8b3fa61820195fb905d917c2ebb1a8f3acd31cd541911a03b03aa66c8adf17dbc735a88770c6b7b5750ed1efc38b34b85d7f698cfe17ed9e4ad +RPMIdentity: 1238b4ced82f36bbe912a5254d7f41bceba64beab8cbd2c26d65ef40fd37ef30cab71dab1b613de8351c3dd1046e21c27b81b3a093508ff535e41d2784e6b838