Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-daiquiri for openSUSE:Factory checked in at 2023-12-03 20:48:50 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-daiquiri (Old) and /work/SRC/openSUSE:Factory/.python-daiquiri.new.25432 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-daiquiri" Sun Dec 3 20:48:50 2023 rev:13 rq:1130491 version:3.2.3 Changes: -------- --- /work/SRC/openSUSE:Factory/python-daiquiri/python-daiquiri.changes 2022-12-02 15:47:34.164617325 +0100 +++ /work/SRC/openSUSE:Factory/.python-daiquiri.new.25432/python-daiquiri.changes 2023-12-03 20:49:11.234600207 +0100 @@ -1,0 +2,8 @@ +Sat Dec 2 16:38:06 UTC 2023 - Dirk Müller <dmuel...@suse.com> + +- update to 3.2.4: + * Add support up to Python 3.12 + * Use sphinx-build command to generate doc + * build system and CI improvements + +------------------------------------------------------------------- Old: ---- daiquiri-3.2.1.tar.gz New: ---- daiquiri-3.2.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-daiquiri.spec ++++++ --- /var/tmp/diff_new_pack.Mdvz56/_old 2023-12-03 20:49:11.906624892 +0100 +++ /var/tmp/diff_new_pack.Mdvz56/_new 2023-12-03 20:49:11.906624892 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-daiquiri # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,18 +16,19 @@ # -%global skip_python2 1 +%{?sle15_python_module_pythons} Name: python-daiquiri -Version: 3.2.1 +Version: 3.2.3 Release: 0 Summary: Library to configure Python logging License: Apache-2.0 -URL: https://github.com/jd/daiquiri +URL: https://github.com/Mergifyio/daiquiri Source: https://files.pythonhosted.org/packages/source/d/daiquiri/daiquiri-%{version}.tar.gz +BuildRequires: %{python_module pip} BuildRequires: %{python_module pytest} BuildRequires: %{python_module python-json-logger} BuildRequires: %{python_module setuptools_scm} -BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-python-json-logger @@ -42,10 +43,10 @@ %setup -q -n daiquiri-%{version} %build -%python_build +%pyproject_wheel %install -%python_install +%pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check @@ -55,5 +56,5 @@ %license LICENSE %doc README.rst %{python_sitelib}/daiquiri -%{python_sitelib}/daiquiri-%{version}*-info +%{python_sitelib}/daiquiri-%{version}.dist-info ++++++ daiquiri-3.2.1.tar.gz -> daiquiri-3.2.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/.github/dependabot.yml new/daiquiri-3.2.3/.github/dependabot.yml --- old/daiquiri-3.2.1/.github/dependabot.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/daiquiri-3.2.3/.github/dependabot.yml 2023-10-19 11:01:06.000000000 +0200 @@ -0,0 +1,6 @@ +version: 2 +updates: + - package-ecosystem: "pip" + directory: "/" + schedule: + interval: "weekly" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/.github/workflows/ci.yaml new/daiquiri-3.2.3/.github/workflows/ci.yaml --- old/daiquiri-3.2.1/.github/workflows/ci.yaml 2022-06-21 17:37:53.000000000 +0200 +++ new/daiquiri-3.2.3/.github/workflows/ci.yaml 2023-10-19 11:01:06.000000000 +0200 @@ -10,9 +10,9 @@ test: strategy: matrix: - python: ["3.7", "3.8", "3.9", "3.10"] + python: ["3.8", "3.9", "3.10", "3.11", "3.12"] - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - name: Checkout ðï¸ uses: actions/checkout@v2.4.0 @@ -29,7 +29,7 @@ run: tox -e py$(echo ${{ matrix.python }} | tr -d .) pep8: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - name: Checkout ðï¸ uses: actions/checkout@v2.4.0 @@ -37,7 +37,7 @@ - name: Setup Python ð§ uses: actions/setup-python@v4 with: - python-version: "3.10" + python-version: "3.12" - name: Install tox run: pip install tox diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/.github/workflows/release.yml new/daiquiri-3.2.3/.github/workflows/release.yml --- old/daiquiri-3.2.1/.github/workflows/release.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/daiquiri-3.2.3/.github/workflows/release.yml 2023-10-19 11:01:06.000000000 +0200 @@ -0,0 +1,37 @@ +name: upload release to PyPI +on: + workflow_dispatch: + +jobs: + pypi-publish: + name: upload release to PyPI + runs-on: ubuntu-latest + environment: release + permissions: + id-token: write + contents: write + steps: + - uses: actions/checkout@v4.1.1 + with: + fetch-depth: 0 + fetch-tags: 'true' + + - uses: actions/setup-python@v2.3.1 + with: + python-version: 3.12 + + - name: Install deps + run: pip install build setuptools_scm + + - name: Tag the release + run: | + tag="$(python3 -m setuptools_scm --strip-dev)" + git tag "$tag" + git push origin "$tag" + + - name: Build the packages distributions + run: | + python3 -m build . --wheel --sdist + + - name: Publish package distributions to PyPI + uses: pypa/gh-action-pypi-publish@release/v1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/.mergify.yml new/daiquiri-3.2.3/.mergify.yml --- old/daiquiri-3.2.1/.mergify.yml 2022-06-22 11:43:52.000000000 +0200 +++ new/daiquiri-3.2.3/.mergify.yml 2023-10-19 11:01:06.000000000 +0200 @@ -2,17 +2,8 @@ - name: automatic merge conditions: - base=main - - "#approved-reviews-by>=1" - - and: &CheckRuns - - "check-success=pep8" - - "check-success=test (3.7)" - - "check-success=test (3.8)" - - "check-success=test (3.9)" - - "check-success=test (3.10)" - actions: queue: - name: default - name: dismiss reviews conditions: [] @@ -22,4 +13,18 @@ queue_rules: - name: default - conditions: [] + queue_conditions: + - "#approved-reviews-by>=1" + - "check-success=pep8" + - "check-success=test (3.8)" + - "check-success=test (3.9)" + - "check-success=test (3.10)" + - "check-success=test (3.11)" + - "check-success=test (3.12)" + merge_conditions: + - "check-success=pep8" + - "check-success=test (3.8)" + - "check-success=test (3.9)" + - "check-success=test (3.10)" + - "check-success=test (3.11)" + - "check-success=test (3.12)" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/PKG-INFO new/daiquiri-3.2.3/PKG-INFO --- old/daiquiri-3.2.1/PKG-INFO 2022-07-01 09:24:39.595489500 +0200 +++ new/daiquiri-3.2.3/PKG-INFO 2023-10-19 11:01:31.361128000 +0200 @@ -1,25 +1,29 @@ Metadata-Version: 2.1 Name: daiquiri -Version: 3.2.1 +Version: 3.2.3 Summary: Library to configure Python logging easily -Home-page: https://github.com/Mergifyio/daiquiri -Author: Julien Danjou -Author-email: jul...@danjou.info +Author-email: Julien Danjou <jul...@danjou.info> License: Apache 2.0 +Project-URL: homepage, https://github.com/Mergifyio/daiquiri Classifier: Intended Audience :: Information Technology Classifier: Intended Audience :: System Administrators Classifier: License :: OSI Approved :: Apache Software License Classifier: Operating System :: POSIX :: Linux Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.7 Classifier: Programming Language :: Python :: 3.8 Classifier: Programming Language :: Python :: 3.9 Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Requires-Python: >=3.8 Description-Content-Type: text/x-rst +License-File: LICENSE +Requires-Dist: python-json-logger Provides-Extra: test +Requires-Dist: pytest; extra == "test" Provides-Extra: systemd -License-File: LICENSE +Requires-Dist: systemd-python>=234; extra == "systemd" ======================================= daiquiri -- Python logging setup helper diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/daiquiri/formatter.py new/daiquiri-3.2.3/daiquiri/formatter.py --- old/daiquiri-3.2.1/daiquiri/formatter.py 2022-07-01 09:24:32.000000000 +0200 +++ new/daiquiri-3.2.3/daiquiri/formatter.py 2023-10-19 11:01:06.000000000 +0200 @@ -157,9 +157,9 @@ return s -class DatadogFormatter(jsonlogger.JsonFormatter): # type: ignore[misc] +class DatadogFormatter(jsonlogger.JsonFormatter): def __init__(self) -> None: - super(DatadogFormatter, self).__init__(timestamp=True) + super(DatadogFormatter, self).__init__(timestamp=True) # type: ignore[no-untyped-call] def add_fields( self, @@ -183,5 +183,5 @@ TEXT_FORMATTER = ColorExtrasFormatter(fmt=DEFAULT_EXTRAS_FORMAT) -JSON_FORMATTER = jsonlogger.JsonFormatter() +JSON_FORMATTER = jsonlogger.JsonFormatter() # type: ignore[no-untyped-call] DATADOG_FORMATTER = DatadogFormatter() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/daiquiri/tests/test_daiquiri.py new/daiquiri-3.2.3/daiquiri/tests/test_daiquiri.py --- old/daiquiri-3.2.1/daiquiri/tests/test_daiquiri.py 2022-06-30 09:29:14.000000000 +0200 +++ new/daiquiri-3.2.3/daiquiri/tests/test_daiquiri.py 2023-10-19 11:01:06.000000000 +0200 @@ -12,6 +12,8 @@ import io import json import logging +import sys +import typing import unittest import warnings @@ -39,7 +41,10 @@ ) ) daiquiri.getLogger(__name__).warning("foobar") - self.assertEqual({"message": "foobar"}, json.loads(stream.getvalue())) + expected: dict[str, typing.Any] = {"message": "foobar"} + if sys.version_info >= (3, 12): + expected.update({"taskName": None}) + self.assertEqual(expected, json.loads(stream.getvalue())) def test_setup_json_formatter_with_extras(self) -> None: stream = io.StringIO() @@ -51,9 +56,10 @@ ) ) daiquiri.getLogger(__name__).warning("foobar", foo="bar") - self.assertEqual( - {"message": "foobar", "foo": "bar"}, json.loads(stream.getvalue()) - ) + expected: dict[str, typing.Any] = {"message": "foobar", "foo": "bar"} + if sys.version_info >= (3, 12): + expected.update({"taskName": None}) + self.assertEqual(expected, json.loads(stream.getvalue())) def test_get_logger_set_level(self) -> None: logger = daiquiri.getLogger(__name__) @@ -66,7 +72,7 @@ line = stream.getvalue() self.assertIn("WARNING py.warnings: ", line) self.assertIn( - "daiquiri/tests/test_daiquiri.py:65: " + "daiquiri/tests/test_daiquiri.py:71: " 'UserWarning: omg!\n warnings.warn("omg!")\n', line, ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/daiquiri/tests/test_output.py new/daiquiri-3.2.3/daiquiri/tests/test_output.py --- old/daiquiri-3.2.1/daiquiri/tests/test_output.py 2022-06-30 09:29:14.000000000 +0200 +++ new/daiquiri-3.2.3/daiquiri/tests/test_output.py 2023-10-19 11:01:06.000000000 +0200 @@ -11,6 +11,7 @@ # under the License. import json import logging +import sys import syslog import typing import unittest @@ -100,49 +101,44 @@ logger = daiquiri.getLogger() logger.error("foo", bar=1) logger.info("bar") + expected_error_1 = { + "status": "error", + "message": "foo", + "bar": 1, + "logger": {"name": "root"}, + "timestamp": mock.ANY, + } + expected_info_1 = { + "status": "info", + "message": "bar", + "logger": {"name": "root"}, + "timestamp": mock.ANY, + } + expected_error_2 = { + "status": "error", + "message": "backtrace", + "logger": {"name": "saymyname"}, + "timestamp": mock.ANY, + "error": { + "kind": "ZeroDivisionError", + "stack": None, + "message": mock.ANY, + }, + } + if sys.version_info >= (3, 12): + expected_error_1.update({"taskName": None}) + expected_info_1.update({"taskName": None}) + expected_error_2.update({"taskName": None}) try: 1 / 0 except ZeroDivisionError: logger = daiquiri.getLogger("saymyname") - logger.error("backtrace", exc_info=True) + logger.exception("backtrace") socket_instance.connect.assert_called_once_with(("127.0.0.1", 10518)) socket_instance.sendall.assert_has_calls( [ - mock.call( - DatadogMatcher( - { - "status": "error", - "message": "foo", - "bar": 1, - "logger": {"name": "root"}, - "timestamp": mock.ANY, - } - ) - ), - mock.call( - DatadogMatcher( - { - "status": "info", - "message": "bar", - "logger": {"name": "root"}, - "timestamp": mock.ANY, - } - ) - ), - mock.call( - DatadogMatcher( - { - "status": "error", - "message": "backtrace", - "logger": {"name": "saymyname"}, - "timestamp": mock.ANY, - "error": { - "kind": "ZeroDivisionError", - "stack": None, - "message": mock.ANY, - }, - } - ) - ), + mock.call(DatadogMatcher(expected_error_1)), + mock.call(DatadogMatcher(expected_info_1)), + mock.call(DatadogMatcher(expected_error_2)), ] ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/daiquiri.egg-info/PKG-INFO new/daiquiri-3.2.3/daiquiri.egg-info/PKG-INFO --- old/daiquiri-3.2.1/daiquiri.egg-info/PKG-INFO 2022-07-01 09:24:39.000000000 +0200 +++ new/daiquiri-3.2.3/daiquiri.egg-info/PKG-INFO 2023-10-19 11:01:31.000000000 +0200 @@ -1,25 +1,29 @@ Metadata-Version: 2.1 Name: daiquiri -Version: 3.2.1 +Version: 3.2.3 Summary: Library to configure Python logging easily -Home-page: https://github.com/Mergifyio/daiquiri -Author: Julien Danjou -Author-email: jul...@danjou.info +Author-email: Julien Danjou <jul...@danjou.info> License: Apache 2.0 +Project-URL: homepage, https://github.com/Mergifyio/daiquiri Classifier: Intended Audience :: Information Technology Classifier: Intended Audience :: System Administrators Classifier: License :: OSI Approved :: Apache Software License Classifier: Operating System :: POSIX :: Linux Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.7 Classifier: Programming Language :: Python :: 3.8 Classifier: Programming Language :: Python :: 3.9 Classifier: Programming Language :: Python :: 3.10 +Classifier: Programming Language :: Python :: 3.11 +Classifier: Programming Language :: Python :: 3.12 +Requires-Python: >=3.8 Description-Content-Type: text/x-rst +License-File: LICENSE +Requires-Dist: python-json-logger Provides-Extra: test +Requires-Dist: pytest; extra == "test" Provides-Extra: systemd -License-File: LICENSE +Requires-Dist: systemd-python>=234; extra == "systemd" ======================================= daiquiri -- Python logging setup helper diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/daiquiri.egg-info/SOURCES.txt new/daiquiri-3.2.3/daiquiri.egg-info/SOURCES.txt --- old/daiquiri-3.2.1/daiquiri.egg-info/SOURCES.txt 2022-07-01 09:24:39.000000000 +0200 +++ new/daiquiri-3.2.3/daiquiri.egg-info/SOURCES.txt 2023-10-19 11:01:31.000000000 +0200 @@ -3,10 +3,10 @@ LICENSE README.rst pyproject.toml -setup.cfg -setup.py tox.ini +.github/dependabot.yml .github/workflows/ci.yaml +.github/workflows/release.yml daiquiri/__init__.py daiquiri/formatter.py daiquiri/handlers.py @@ -16,7 +16,6 @@ daiquiri.egg-info/PKG-INFO daiquiri.egg-info/SOURCES.txt daiquiri.egg-info/dependency_links.txt -daiquiri.egg-info/pbr.json daiquiri.egg-info/requires.txt daiquiri.egg-info/top_level.txt daiquiri/tests/__init__.py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/daiquiri.egg-info/pbr.json new/daiquiri-3.2.3/daiquiri.egg-info/pbr.json --- old/daiquiri-3.2.1/daiquiri.egg-info/pbr.json 2020-01-16 11:06:41.000000000 +0100 +++ new/daiquiri-3.2.3/daiquiri.egg-info/pbr.json 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -{"git_version": "66933d7", "is_release": true} \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/pyproject.toml new/daiquiri-3.2.3/pyproject.toml --- old/daiquiri-3.2.1/pyproject.toml 2022-06-30 09:29:14.000000000 +0200 +++ new/daiquiri-3.2.3/pyproject.toml 2023-10-19 11:01:06.000000000 +0200 @@ -1,5 +1,51 @@ +[build-system] +requires = ["setuptools>=64", "setuptools_scm>=8"] +build-backend = "setuptools.build_meta" + +[project] +name = "daiquiri" +requires-python = ">=3.8" +dynamic = ["version"] +license = {"text" = "Apache 2.0"} +description = "Library to configure Python logging easily" +readme = "README.rst" +authors = [ + {name = "Julien Danjou", email = "jul...@danjou.info"} +] +classifiers = [ + "Intended Audience :: Information Technology", + "Intended Audience :: System Administrators", + "License :: OSI Approved :: Apache Software License", + "Operating System :: POSIX :: Linux", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", +] +dependencies = [ + "python-json-logger" +] + +[project.urls] +homepage = "https://github.com/Mergifyio/daiquiri" + +[tool.setuptools_scm] + +[tool.setuptools] +packages = ["daiquiri"] + +[tool.setuptools.package-data] +"daiquiri" = ["py.typed"] + +[project.optional-dependencies] +test = ["pytest"] +systemd = ["systemd-python>=234"] + [tool.black] -target-version = ['py37', 'py38', 'py39', 'py310'] +target-version = ['py38', 'py39', 'py310', 'py311', 'py312'] [tool.mypy] files = "daiquiri" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/setup.cfg new/daiquiri-3.2.3/setup.cfg --- old/daiquiri-3.2.1/setup.cfg 2022-07-01 09:24:39.595755000 +0200 +++ new/daiquiri-3.2.3/setup.cfg 2023-10-19 11:01:31.361128000 +0200 @@ -1,39 +1,3 @@ -[metadata] -name = daiquiri -license = Apache 2.0 -summary = Library to configure Python logging easily -long_description = file:README.rst -long_description_content_type = text/x-rst -author = Julien Danjou -author_email = jul...@danjou.info -home_page = https://github.com/Mergifyio/daiquiri -classifier = - Intended Audience :: Information Technology - Intended Audience :: System Administrators - License :: OSI Approved :: Apache Software License - Operating System :: POSIX :: Linux - Programming Language :: Python - Programming Language :: Python :: 3 - Programming Language :: Python :: 3.7 - Programming Language :: Python :: 3.8 - Programming Language :: Python :: 3.9 - Programming Language :: Python :: 3.10 - -[options] -install_requires = - python-json-logger -packages = - daiquiri - -[options.package_data] -daiquiri = py.typed - -[options.extras_require] -test = - pytest -systemd = - systemd-python>=234 - [egg_info] tag_build = tag_date = 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/setup.py new/daiquiri-3.2.3/setup.py --- old/daiquiri-3.2.1/setup.py 2020-11-06 13:43:29.000000000 +0100 +++ new/daiquiri-3.2.3/setup.py 1970-01-01 01:00:00.000000000 +0100 @@ -1,7 +0,0 @@ -#!/usr/bin/env python -import setuptools - -setuptools.setup( - setup_requires=["setuptools_scm"], - use_scm_version=True, -) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/daiquiri-3.2.1/tox.ini new/daiquiri-3.2.3/tox.ini --- old/daiquiri-3.2.1/tox.ini 2022-06-30 09:29:14.000000000 +0200 +++ new/daiquiri-3.2.3/tox.ini 2023-10-19 11:01:06.000000000 +0200 @@ -1,8 +1,8 @@ [tox] -envlist = py37,py38,py39,p310,pep8,docs +envlist = py38,py39,py310,py311,py312,pep8,docs [testenv] -whitelist_externals = sh +allowlist_externals = sh deps = -e.[test] commands = pytest {posargs} @@ -10,7 +10,7 @@ sh -c "rm errors.log everything.log" [testenv:pep8] -basepython = python3.10 +basepython = python3.12 deps = {[testenv]deps} black @@ -37,4 +37,4 @@ [testenv:docs] deps = sphinx -commands = python setup.py build_sphinx \ No newline at end of file +commands = sphinx-build -b html doc/source doc/build/html