Hello community, here is the log from the commit of package python-daiquiri for openSUSE:Factory checked in at 2019-09-16 10:49:58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-daiquiri (Old) and /work/SRC/openSUSE:Factory/.python-daiquiri.new.7948 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-daiquiri" Mon Sep 16 10:49:58 2019 rev:6 rq:730663 version:1.6.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-daiquiri/python-daiquiri.changes 2019-04-08 20:53:56.494586213 +0200 +++ /work/SRC/openSUSE:Factory/.python-daiquiri.new.7948/python-daiquiri.changes 2019-09-16 10:50:01.211175205 +0200 @@ -1,0 +2,6 @@ +Fri Sep 13 10:08:05 UTC 2019 - Tomáš Chvátal <tchva...@suse.com> + +- Update to 1.6.0: + * Fix getLogger when called twice and passing different extras + +------------------------------------------------------------------- Old: ---- daiquiri-1.5.0.tar.gz New: ---- daiquiri-1.6.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-daiquiri.spec ++++++ --- /var/tmp/diff_new_pack.8USgJ1/_old 2019-09-16 10:50:02.023175099 +0200 +++ /var/tmp/diff_new_pack.8USgJ1/_new 2019-09-16 10:50:02.027175098 +0200 @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-daiquiri -Version: 1.5.0 +Version: 1.6.0 Release: 0 Summary: Library to configure Python logging License: Apache-2.0 @@ -51,7 +51,7 @@ %python_expand %fdupes %{buildroot}%{$python_sitelib} %check -%python_expand PYTHONPATH=%{buildroot}%{$python_sitelib} py.test-%{$python_version} daiquiri/tests +%pytest daiquiri/tests %files %{python_files} %license LICENSE ++++++ daiquiri-1.5.0.tar.gz -> daiquiri-1.6.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/.circleci/config.yml new/daiquiri-1.6.0/.circleci/config.yml --- old/daiquiri-1.5.0/.circleci/config.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/daiquiri-1.6.0/.circleci/config.yml 2019-08-06 18:42:24.000000000 +0200 @@ -0,0 +1,59 @@ +version: 2 + +jobs: + pep8: + docker: + - image: circleci/python:3.7 + steps: + - checkout + - run: + command: | + sudo pip install tox + tox -e pep8 + docs: + docker: + - image: circleci/python:3.7 + steps: + - checkout + - run: + command: | + sudo pip install tox + tox -e docs + py27: + docker: + - image: circleci/python:2.7 + steps: + - checkout + - run: + command: | + sudo pip install tox + tox -e py27 + py36: + docker: + - image: circleci/python:3.6 + steps: + - checkout + - run: + command: | + sudo pip install tox + tox -e py36 + py37: + docker: + - image: circleci/python:3.7 + steps: + - checkout + - run: + command: | + sudo pip install tox + tox -e py37 + + +workflows: + version: 2 + + test: + jobs: + - pep8 + - py27 + - py36 + - py37 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/.mergify.yml new/daiquiri-1.6.0/.mergify.yml --- old/daiquiri-1.5.0/.mergify.yml 2018-07-18 17:35:55.000000000 +0200 +++ new/daiquiri-1.6.0/.mergify.yml 2019-08-06 18:42:24.000000000 +0200 @@ -1,9 +1,18 @@ -rules: - default: - protection: - required_status_checks: - strict: True - contexts: - - continuous-integration/travis-ci - required_pull_request_reviews: - required_approving_review_count: 1 +pull_request_rules: + - name: automatic merge + conditions: + - base=master + - "status-success=ci/circleci: pep8" + - "status-success=ci/circleci: docs" + - "status-success=ci/circleci: py27" + - "status-success=ci/circleci: py36" + - "status-success=ci/circleci: py37" + - "#approved-reviews-by>=1" + - label!=work-in-progress + actions: + merge: + strict: "smart" + - name: dismiss reviews + conditions: [] + actions: + dismiss_reviews: {} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/.travis.yml new/daiquiri-1.6.0/.travis.yml --- old/daiquiri-1.5.0/.travis.yml 2018-07-18 17:35:55.000000000 +0200 +++ new/daiquiri-1.6.0/.travis.yml 1970-01-01 01:00:00.000000000 +0100 @@ -1,20 +0,0 @@ -language: python -dist: xenial -sudo: required -python: - - 2.7 - - 3.6 - - 3.7 -before_install: - - pip install -U pip -install: - - pip install tox-travis .[test] -script: tox -deploy: - provider: pypi - user: jd - password: - secure: kyeXaQ+0Yv1GC2vWC8zghXDLtYEtZ8SbTuw90hA4VQm2HlPUyVDKL8zi4YyEuziRd7mG/7XrgpZG6fNh02wEblFngrmWAJ9dze/9JRLjyCFCNn6oM9xRqNOC19ZWiV5/ifgLp7Ije3lfrsRI5OsDaXy9Dd2cNO/1O/MOMwpqpzs5fUZYcY4HQj0tJmSmM72RaR2C9hn/BGJEZWPyx6XMboQLnkLvlCT6hZHpk+y3Ofg+5wUd4IaZe8ZH/rkPQu5nBclGpUkQ99jb5YhwwQno52TgVeh3xf8Vzy5riYQD6No5JvYHs9MGkBfctdTcOwMRwH8XDxhIDDj1o3MeCgKCsfmskRxvBmk5nJzv3Lk8pdlEt/TUiuorU6+Zo2UMeGhSFPY6JBrK1ELs/XiZHbB63vJ+VLSoEluXzBTFyw7wAg7MRsNOneHvXCpjSVS4SxqmzrIRZBNvNpkkE/ZainlGG3KII9JM4tG6oJ2XvELMtG9A+2z450HnFJFV06F+qnztl31+VagMOW0BMnyVtR+dayAHAZ1qHaTrPf0mRJIKKp8QpF37//wWkrSaAyZAf5CeTtVYM2saxEcQzJX9wtp0KKfxnlg0xSBc7BRDJBSFexUeWMX1o1q1qU8c26sZU29XBjuxKRzC/jnZWAhWdL9YEGyISUrbsHHdwRGDKOzyBjc= - on: - tags: true - distributions: "sdist bdist_wheel" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/AUTHORS new/daiquiri-1.6.0/AUTHORS --- old/daiquiri-1.5.0/AUTHORS 2018-07-18 17:36:19.000000000 +0200 +++ new/daiquiri-1.6.0/AUTHORS 2019-08-06 19:18:33.000000000 +0200 @@ -8,3 +8,4 @@ Martín Gaitán <gai...@gmail.com> Tristan Cacqueray <tdeca...@redhat.com> davebrochu <brochu...@gmail.com> +mergify[bot] <mergify[bot]@users.noreply.github.com> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/ChangeLog new/daiquiri-1.6.0/ChangeLog --- old/daiquiri-1.5.0/ChangeLog 2018-07-18 17:36:19.000000000 +0200 +++ new/daiquiri-1.6.0/ChangeLog 2019-08-06 19:18:33.000000000 +0200 @@ -1,6 +1,14 @@ CHANGES ======= +1.6.0 +----- + +* Fix getLogger when called twice and passing different extras +* Replace Travis by CircleCI +* Add documentation for the ExtrasFormatter class +* Move to Mergify v2 + 1.5.0 ----- @@ -110,3 +118,11 @@ * Add utility function to set default log levels * Rework output so color hints are not logged * Change program name handling +* Improve README +* Make JSON optional +* Fix Python 2.7 test with StringIO +* Rename target to output +* Add a test for JSON formatter +* Add daiquiri target to manage log target+formatter+level +* Allow to log to any stream +* Import diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/PKG-INFO new/daiquiri-1.6.0/PKG-INFO --- old/daiquiri-1.5.0/PKG-INFO 2018-07-18 17:36:19.000000000 +0200 +++ new/daiquiri-1.6.0/PKG-INFO 2019-08-06 19:18:35.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: daiquiri -Version: 1.5.0 +Version: 1.6.0 Summary: Library to configure Python logging easily Home-page: https://github.com/jd/daiquiri Author: Julien Danjou @@ -10,9 +10,8 @@ daiquiri -- Python logging setup helper ======================================= - .. image:: https://travis-ci.org/jd/daiquiri.png?branch=master - :target: https://travis-ci.org/jd/daiquiri - :alt: Build Status + .. image:: https://circleci.com/gh/jd/daiquiri.svg?style=svg + :target: https://circleci.com/gh/jd/daiquiri .. image:: https://img.shields.io/pypi/v/daiquiri.svg :target: https://pypi.python.org/pypi/daiquiri @@ -39,5 +38,5 @@ Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7 Provides-Extra: test -Provides-Extra: json Provides-Extra: systemd +Provides-Extra: json diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/README.rst new/daiquiri-1.6.0/README.rst --- old/daiquiri-1.5.0/README.rst 2018-07-18 17:35:55.000000000 +0200 +++ new/daiquiri-1.6.0/README.rst 2019-08-06 18:42:24.000000000 +0200 @@ -2,9 +2,8 @@ daiquiri -- Python logging setup helper ======================================= -.. image:: https://travis-ci.org/jd/daiquiri.png?branch=master - :target: https://travis-ci.org/jd/daiquiri - :alt: Build Status +.. image:: https://circleci.com/gh/jd/daiquiri.svg?style=svg + :target: https://circleci.com/gh/jd/daiquiri .. image:: https://img.shields.io/pypi/v/daiquiri.svg :target: https://pypi.python.org/pypi/daiquiri diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/daiquiri/__init__.py new/daiquiri-1.6.0/daiquiri/__init__.py --- old/daiquiri-1.5.0/daiquiri/__init__.py 2018-07-18 17:35:55.000000000 +0200 +++ new/daiquiri-1.6.0/daiquiri/__init__.py 2019-08-06 19:17:54.000000000 +0200 @@ -14,7 +14,6 @@ import logging.handlers import sys import traceback -import weakref from daiquiri import output @@ -58,9 +57,6 @@ self.logger.setLevel(level) -_LOGGERS = weakref.WeakValueDictionary() - - def getLogger(name=None, **kwargs): """Build a logger with the given name. @@ -68,13 +64,7 @@ name, ``__name__``. :type name: string """ - adapter = _LOGGERS.get(name) - if not adapter: - # NOTE(jd) Keep using the `adapter' variable here because so it's not - # collected by Python since _LOGGERS contains only a weakref - adapter = KeywordArgumentAdapter(logging.getLogger(name), kwargs) - _LOGGERS[name] = adapter - return adapter + return KeywordArgumentAdapter(logging.getLogger(name), kwargs) def setup(level=logging.WARNING, outputs=[output.STDERR], program_name=None, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/daiquiri/tests/test_daiquiri.py new/daiquiri-1.6.0/daiquiri/tests/test_daiquiri.py --- old/daiquiri-1.5.0/daiquiri/tests/test_daiquiri.py 2018-07-18 17:35:55.000000000 +0200 +++ new/daiquiri-1.6.0/daiquiri/tests/test_daiquiri.py 2019-08-06 19:17:54.000000000 +0200 @@ -90,3 +90,17 @@ if daiquiri.handlers.journal is not None: daiquiri.setup(outputs=('journal',)) + + +def test_extra_with_two_loggers(): + stream = six.moves.StringIO() + daiquiri.setup(outputs=( + daiquiri.output.Stream(stream), + )) + log1 = daiquiri.getLogger("foobar") + log1.error("argh") + log2 = daiquiri.getLogger("foobar", key="value") + log2.warning("boo") + lines = stream.getvalue().strip().split("\n") + assert lines[0].endswith("ERROR foobar: argh") + assert lines[1].endswith("WARNING foobar [key: value]: boo") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/daiquiri.egg-info/PKG-INFO new/daiquiri-1.6.0/daiquiri.egg-info/PKG-INFO --- old/daiquiri-1.5.0/daiquiri.egg-info/PKG-INFO 2018-07-18 17:36:19.000000000 +0200 +++ new/daiquiri-1.6.0/daiquiri.egg-info/PKG-INFO 2019-08-06 19:18:33.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: daiquiri -Version: 1.5.0 +Version: 1.6.0 Summary: Library to configure Python logging easily Home-page: https://github.com/jd/daiquiri Author: Julien Danjou @@ -10,9 +10,8 @@ daiquiri -- Python logging setup helper ======================================= - .. image:: https://travis-ci.org/jd/daiquiri.png?branch=master - :target: https://travis-ci.org/jd/daiquiri - :alt: Build Status + .. image:: https://circleci.com/gh/jd/daiquiri.svg?style=svg + :target: https://circleci.com/gh/jd/daiquiri .. image:: https://img.shields.io/pypi/v/daiquiri.svg :target: https://pypi.python.org/pypi/daiquiri @@ -39,5 +38,5 @@ Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7 Provides-Extra: test -Provides-Extra: json Provides-Extra: systemd +Provides-Extra: json diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/daiquiri.egg-info/SOURCES.txt new/daiquiri-1.6.0/daiquiri.egg-info/SOURCES.txt --- old/daiquiri-1.5.0/daiquiri.egg-info/SOURCES.txt 2018-07-18 17:36:19.000000000 +0200 +++ new/daiquiri-1.6.0/daiquiri.egg-info/SOURCES.txt 2019-08-06 19:18:34.000000000 +0200 @@ -1,6 +1,5 @@ .mergify.yml .testr.conf -.travis.yml AUTHORS ChangeLog LICENSE @@ -8,6 +7,7 @@ setup.cfg setup.py tox.ini +.circleci/config.yml daiquiri/__init__.py daiquiri/formatter.py daiquiri/handlers.py @@ -25,6 +25,7 @@ daiquiri/tests/test_output.py doc/source/conf.py doc/source/index.rst +examples/advanced_extra.py examples/basic.py examples/extra.py examples/files.py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/daiquiri.egg-info/pbr.json new/daiquiri-1.6.0/daiquiri.egg-info/pbr.json --- old/daiquiri-1.5.0/daiquiri.egg-info/pbr.json 2018-07-18 17:36:19.000000000 +0200 +++ new/daiquiri-1.6.0/daiquiri.egg-info/pbr.json 2019-08-06 19:18:33.000000000 +0200 @@ -1 +1 @@ -{"git_version": "e197e62", "is_release": true} \ No newline at end of file +{"git_version": "d73e387", "is_release": true} \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/doc/source/index.rst new/daiquiri-1.6.0/doc/source/index.rst --- old/daiquiri-1.5.0/doc/source/index.rst 2018-07-18 17:35:55.000000000 +0200 +++ new/daiquiri-1.6.0/doc/source/index.rst 2019-08-06 18:42:24.000000000 +0200 @@ -2,9 +2,8 @@ daiquiri -- Python logging setup helper ======================================= -.. image:: https://travis-ci.org/jd/daiquiri.png?branch=master - :target: https://travis-ci.org/jd/daiquiri - :alt: Build Status +.. image:: https://circleci.com/gh/jd/daiquiri.svg?style=svg + :target: https://circleci.com/gh/jd/daiquiri .. image:: https://img.shields.io/pypi/v/daiquiri.svg :target: https://pypi.python.org/pypi/daiquiri @@ -90,6 +89,18 @@ .. literalinclude:: ../../examples/extra.py +Advanced Extra usage +----------- + +The enhanced logger object provided by `daiquiri.getLogger` is also capable of +supporting keyword arguments to the logging method without the logger itself +having been configured to expect those specific keywords. This requires the +use of the ExtrasFormatter or the ColorExtrasFormatter classes. The +documentation for the ExtrasFormatter specifies the various options you can +configure on it. + +.. literalinclude:: ../../examples/advanced_extra.py + Syslog support -------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/examples/advanced_extra.py new/daiquiri-1.6.0/examples/advanced_extra.py --- old/daiquiri-1.5.0/examples/advanced_extra.py 1970-01-01 01:00:00.000000000 +0100 +++ new/daiquiri-1.6.0/examples/advanced_extra.py 2019-08-06 18:06:27.000000000 +0200 @@ -0,0 +1,18 @@ +import logging + +import daiquiri +import daiquiri.formatter + +daiquiri.setup(level=logging.INFO, outputs=[ + daiquiri.output.Stream(formatter=daiquiri.formatter.ColorExtrasFormatter( + fmt=(daiquiri.formatter.DEFAULT_FORMAT + + " [%(subsystem)s is %(mood)s]" + + "%(extras)s"), + keywords=['mood', 'subsystem'], + ))]) + +logger = daiquiri.getLogger(__name__, subsystem="example") +logger.info("It works and log to stderr by default with color!", + mood="happy", + arbitrary_context="included" + ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-1.5.0/tox.ini new/daiquiri-1.6.0/tox.ini --- old/daiquiri-1.5.0/tox.ini 2018-07-18 17:35:55.000000000 +0200 +++ new/daiquiri-1.6.0/tox.ini 2019-08-06 18:42:24.000000000 +0200 @@ -23,6 +23,3 @@ [testenv:docs] deps = sphinx commands = python setup.py build_sphinx - -[tox:travis] -3.6 = pep8,py36,docs