Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-q for openSUSE:Factory checked in at 2022-10-08 01:25:14 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-q (Old) and /work/SRC/openSUSE:Factory/.python-q.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-q" Sat Oct 8 01:25:14 2022 rev:2 rq:1008695 version:2.7 Changes: -------- --- /work/SRC/openSUSE:Factory/python-q/python-q.changes 2019-09-27 14:46:10.105120491 +0200 +++ /work/SRC/openSUSE:Factory/.python-q.new.2275/python-q.changes 2022-10-08 01:25:26.654259827 +0200 @@ -1,0 +2,9 @@ +Fri Oct 7 03:40:40 UTC 2022 - Yogalakshmi Arunachalam <yarunacha...@suse.com> + +- Update to version 2.7 + * Fix tests on Python 3.5 + * Remove 3.4 from the test matrix (no longer supported by Github) + * Fix pycodestyle/flake8 issues + * Replace pep8 by pycodestyle + +------------------------------------------------------------------- Old: ---- q-2.6.tar.gz New: ---- q-2.7.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-q.spec ++++++ --- /var/tmp/diff_new_pack.erZNPK/_old 2022-10-08 01:25:28.714264551 +0200 +++ /var/tmp/diff_new_pack.erZNPK/_new 2022-10-08 01:25:28.718264560 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-q # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-q -Version: 2.6 +Version: 2.7 Release: 0 Summary: Quick-and-dirty debugging output for tired programmers License: Apache-2.0 ++++++ q-2.6.tar.gz -> q-2.7.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/.gitignore new/q-2.7/.gitignore --- old/q-2.6/.gitignore 2014-12-02 05:55:20.000000000 +0100 +++ new/q-2.7/.gitignore 1970-01-01 01:00:00.000000000 +0100 @@ -1,36 +0,0 @@ -*.py[cod] - -# C extensions -*.so - -# Packages -*.egg -*.egg-info -dist -build -eggs -parts -bin -var -sdist -develop-eggs -.installed.cfg -lib -lib64 -MANIFEST - -# Installer logs -pip-log.txt - -# Unit test / coverage reports -.coverage -.tox -nosetests.xml - -# Translations -*.mo - -# Mr Developer -.mr.developer.cfg -.project -.pydevproject diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/.travis.yml new/q-2.7/.travis.yml --- old/q-2.6/.travis.yml 2015-06-22 09:22:58.000000000 +0200 +++ new/q-2.7/.travis.yml 1970-01-01 01:00:00.000000000 +0100 @@ -1,11 +0,0 @@ -language: python -python: - - "2.6" - - "2.7" - - "3.2" - - "3.3" - - "3.4" - - "nightly" - - "pypy" -install: make deps -script: make diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/Makefile new/q-2.7/Makefile --- old/q-2.6/Makefile 2015-06-22 09:22:58.000000000 +0200 +++ new/q-2.7/Makefile 1970-01-01 01:00:00.000000000 +0100 @@ -1,36 +0,0 @@ -TESTS = $(wildcard test/test_*.py) - -.PHONY: deps pep8 test build push clean - -all: pep8 test build - -deps: - # q doesn't have any *runtime* dependencies. - # These dependencies are only needed for development. - pip install pep8 - pip install wheel - -pep8: - @echo === Running pep8 on files - pep8 $(wildcard *.py) $(wildcard test/*.py) - -test: - @echo - @ $(foreach TEST,$(TESTS), \ - ( \ - echo === Running test: $(TEST); \ - python $(TEST) || exit 1 \ - )) - -build: - python setup.py sdist - python setup.py bdist_wheel - -push: build - python setup.py sdist upload - python setup.py bdist_wheel upload - -clean: - rm -rf build dist q.egg-info - find -name *.pyc -delete - @- git status diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/PKG-INFO new/q-2.7/PKG-INFO --- old/q-2.6/PKG-INFO 2015-06-22 09:25:18.000000000 +0200 +++ new/q-2.7/PKG-INFO 2022-07-23 22:03:02.961571200 +0200 @@ -1,13 +1,21 @@ Metadata-Version: 1.1 Name: q -Version: 2.6 +Version: 2.7 Summary: Quick-and-dirty debugging output for tired programmers Home-page: http://github.com/zestyping/q Author: Ka-Ping Yee Author-email: p...@zesty.ca License: Apache License 2.0 Description: UNKNOWN +Keywords: debugging Platform: UNKNOWN Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 2.7 +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.3 +Classifier: Programming Language :: Python :: 3.4 +Classifier: Programming Language :: Python :: 3.5 +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Programming Language :: Python :: Implementation :: Jython Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: Apache Software License diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/README.md new/q-2.7/README.md --- old/q-2.6/README.md 2015-06-22 09:22:58.000000000 +0200 +++ new/q-2.7/README.md 2022-07-23 22:01:58.000000000 +0200 @@ -1,42 +1,61 @@ -q -= +# q -[](https://travis-ci.org/zestyping/q) +[](https://www.codeshelter.co/) Quick and dirty debugging output for tired programmers. -Install q with "easy\_install -U q" or "pip install -U q". +For a short demo, watch the [Lightning Talk](http://pyvideo.org/video/1858/sunday-evening-lightning-talks#t=25m15s) from PyCon 2013. -All output goes to /tmp/q, which you can watch with this shell command:: +Install q with `pip install -U q`. - tail -f /tmp/q +All output goes to `/tmp/q` (or on Windows, to `$HOME/tmp/q`). You can +watch the output with this shell command while your program is running: -If TMPDIR is set, the output goes to $TMPDIR/q. + tail -f /tmp/q -To print the value of foo, insert this into your program:: +To print the value of foo, insert this into your program: import q; q(foo) -To print the value of something in the middle of an expression, insert -"q()", "q/", or "q|". For example, given this statement:: +To print the value of something in the middle of an expression, you can +wrap it with `q()`. You can also insert `q/` or `q|` into the expression; +`q/` binds tightly whereas `q|` binds loosely. For example, given this +statement: file.write(prefix + (sep or '').join(items)) -...you can print out various values without using any temporary variables:: +you can print out various values without using any temporary variables: file.write(prefix + q(sep or '').join(items)) # prints (sep or '') file.write(q/prefix + (sep or '').join(items)) # prints prefix file.write(q|prefix + (sep or '').join(items)) # prints the arg to write -To trace a function's arguments and return value, insert this above the def:: +To trace a function (showing its arguments, return value, and running time), +insert this above the def: import q @q -To start an interactive console at any point in your code, call q.d():: +To start an interactive console at any point in your code, call q.d(): import q; q.d() +By default the output of q is not truncated, but it can be truncated by calling: + + q.short + +Truncation can be reversed by: + +```python +q.long # Truncates output to 1,000,000 +q.long = 2000000 # Truncates output to 2,000,000 +``` +# Other projects inspired by this one + +* [`q` for golang](https://github.com/y0ssar1an/q) +* [`qq` for elixir](https://github.com/mandarvaze/q) +* [`ic` for Python](https://github.com/gruns/icecream) - Similar library for Python, inspired by `q`. + The following [Lightning Talk](http://pyvideo.org/video/1858/sunday-evening-lightning-talks#t=25m15s) shows how powerful using q can be. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/q.egg-info/PKG-INFO new/q-2.7/q.egg-info/PKG-INFO --- old/q-2.6/q.egg-info/PKG-INFO 2015-06-22 09:25:18.000000000 +0200 +++ new/q-2.7/q.egg-info/PKG-INFO 2022-07-23 22:03:02.000000000 +0200 @@ -1,13 +1,21 @@ Metadata-Version: 1.1 Name: q -Version: 2.6 +Version: 2.7 Summary: Quick-and-dirty debugging output for tired programmers Home-page: http://github.com/zestyping/q Author: Ka-Ping Yee Author-email: p...@zesty.ca License: Apache License 2.0 Description: UNKNOWN +Keywords: debugging Platform: UNKNOWN Classifier: Programming Language :: Python +Classifier: Programming Language :: Python :: 2.7 +Classifier: Programming Language :: Python :: 3 +Classifier: Programming Language :: Python :: 3.3 +Classifier: Programming Language :: Python :: 3.4 +Classifier: Programming Language :: Python :: 3.5 +Classifier: Programming Language :: Python :: Implementation :: PyPy +Classifier: Programming Language :: Python :: Implementation :: Jython Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: Apache Software License diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/q.egg-info/SOURCES.txt new/q-2.7/q.egg-info/SOURCES.txt --- old/q-2.6/q.egg-info/SOURCES.txt 2015-06-22 09:25:18.000000000 +0200 +++ new/q-2.7/q.egg-info/SOURCES.txt 2022-07-23 22:03:02.000000000 +0200 @@ -1,7 +1,4 @@ -.gitignore -.travis.yml MANIFEST.in -Makefile README.md q.py setup.cfg diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/q.py new/q-2.7/q.py --- old/q-2.6/q.py 2015-06-22 09:22:58.000000000 +0200 +++ new/q-2.7/q.py 2022-07-23 22:01:58.000000000 +0200 @@ -79,15 +79,40 @@ import re import time import functools + import tempfile # The debugging log will go to this file; temporary files will also have # this path as a prefix, followed by a random number. - OUTPUT_PATH = os.path.join( - os.environ.get('TMPDIR') or os.environ.get('TEMP') or '/tmp', - 'q') + OUTPUT_PATH = os.path.join(tempfile.gettempdir(), 'q') NORMAL, RED, GREEN, YELLOW, BLUE, MAGENTA, CYAN = ESCAPE_SEQUENCES TEXT_REPR = pydoc.TextRepr() + q_max_length = 1_000_000 + + @property + def short(self): + __class__.TEXT_REPR = __class__.pydoc.TextRepr() + + @property + def long(self): + __class__.TEXT_REPR = __class__.pydoc.TextRepr() + __class__.TEXT_REPR.maxarray = __class__.q_max_length + __class__.TEXT_REPR.maxdeque = __class__.q_max_length + __class__.TEXT_REPR.maxdict = __class__.q_max_length + __class__.TEXT_REPR.maxfrozenset = __class__.q_max_length + __class__.TEXT_REPR.maxlevel = __class__.q_max_length + __class__.TEXT_REPR.maxlist = __class__.q_max_length + __class__.TEXT_REPR.maxlong = __class__.q_max_length + __class__.TEXT_REPR.maxother = __class__.q_max_length + __class__.TEXT_REPR.maxset = __class__.q_max_length + __class__.TEXT_REPR.maxstring = __class__.q_max_length + __class__.TEXT_REPR.maxtuple = __class__.q_max_length + + @long.setter + def long(self, value): + __class__.q_max_length = value + self.long + # For portably converting strings between python2 and python3 BASESTRING_TYPES = BASESTRING_TYPES @@ -156,7 +181,7 @@ """Abstract away indentation and line-wrapping.""" def __init__(self, indent=0, width=80 - 7): - self.chunks = [' '*indent] + self.chunks = [' ' * indent] self.indent = indent self.column = indent self.width = width @@ -171,7 +196,7 @@ size = sum([len(x) for x in items if not x.startswith('\x1b')]) if (wrap and self.column > self.indent and self.column + len(sep) + size > self.width): - self.chunks.append(sep.rstrip() + '\n' + ' '*self.indent) + self.chunks.append(sep.rstrip() + '\n' + ' ' * self.indent) self.column = self.indent else: self.chunks.append(sep) @@ -199,7 +224,7 @@ result = self.TEXT_REPR.repr(value) if isinstance(value, self.BASESTRING_TYPES) and len(value) > 80: # If the string is big, save it to a file for later examination. - if isinstance(value, self.TEXT_TYPES): + if isinstance(value, self.TEXT_TYPES): value = value.encode('utf-8') path = self.OUTPUT_PATH + '%08d.txt' % self.random.randrange(1e8) self.FileWriter(path).write('w', value) @@ -370,4 +395,6 @@ # Install the Q() object in sys.modules so that "import q" gives a callable q. -sys.modules['q'] = Q() +q = Q() +q.long +sys.modules['q'] = q diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/setup.cfg new/q-2.7/setup.cfg --- old/q-2.6/setup.cfg 2015-06-22 09:25:18.000000000 +0200 +++ new/q-2.7/setup.cfg 2022-07-23 22:03:02.961571200 +0200 @@ -7,5 +7,4 @@ [egg_info] tag_build = tag_date = 0 -tag_svn_revision = 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/q-2.6/setup.py new/q-2.7/setup.py --- old/q-2.6/setup.py 2015-06-22 09:23:53.000000000 +0200 +++ new/q-2.7/setup.py 2022-07-23 22:02:10.000000000 +0200 @@ -1,10 +1,21 @@ from setuptools import setup -setup(name='q', version='2.6', py_modules=['q'], - description='Quick-and-dirty debugging output for tired programmers', - author='Ka-Ping Yee', author_email='p...@zesty.ca', - license='Apache License 2.0', - url='http://github.com/zestyping/q', classifiers=[ - 'Programming Language :: Python', - 'Intended Audience :: Developers', - 'License :: OSI Approved :: Apache Software License' - ]) +setup( + name='q', version='2.7', py_modules=['q'], + description='Quick-and-dirty debugging output for tired programmers', + author='Ka-Ping Yee', author_email='p...@zesty.ca', + license='Apache License 2.0', + classifiers=[ + "Programming Language :: Python", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.3", + "Programming Language :: Python :: 3.4", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: Implementation :: PyPy", + "Programming Language :: Python :: Implementation :: Jython", + "Intended Audience :: Developers", + "License :: OSI Approved :: Apache Software License", + ], + keywords=['debugging'], + url='http://github.com/zestyping/q' +)