diff -pruN 7.1.0-4/.gitignore 7.2.0-0ubuntu1/.gitignore
--- 7.1.0-4/.gitignore	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/.gitignore	1970-01-01 00:00:00.000000000 +0000
@@ -1,59 +0,0 @@
-# Add patterns in here to exclude files created by tools integrated with this
-# repository, such as test frameworks from the project's recommended workflow,
-# rendered documentation and package builds.
-#
-# Don't add patterns to exclude files created by preferred personal tools
-# (editors, IDEs, your operating system itself even). These should instead be
-# maintained outside the repository, for example in a ~/.gitignore file added
-# with:
-#
-# git config --global core.excludesfile '~/.gitignore'
-
-# Bytecompiled Python
-*.py[cod]
-
-# C extensions
-*.so
-
-# Packages
-*.egg*
-*.egg-info
-dist
-build
-eggs
-parts
-bin
-var
-sdist
-develop-eggs
-.installed.cfg
-lib
-lib64
-
-# Installer logs
-pip-log.txt
-
-# Unit test / coverage reports
-.coverage*
-cover
-.tox
-.stestr
-
-# Translations
-*.mo
-
-# Complexity
-output/*.html
-output/*/index.html
-
-# Sphinx
-doc/build
-
-# pbr generates these
-AUTHORS
-ChangeLog
-
-# Files created by releasenotes build
-releasenotes/build
-RELEASENOTES.rst
-releasenotes/notes/reno.cache
diff -pruN 7.1.0-4/.gitreview 7.2.0-0ubuntu1/.gitreview
--- 7.1.0-4/.gitreview	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/.gitreview	1970-01-01 00:00:00.000000000 +0000
@@ -1,4 +0,0 @@
-[gerrit]
-host=review.opendev.org
-port=29418
-project=openstack/oslo.log.git
\ No newline at end of file
diff -pruN 7.1.0-4/.zuul.yaml 7.2.0-0ubuntu1/.zuul.yaml
--- 7.1.0-4/.zuul.yaml	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/.zuul.yaml	2025-07-10 09:20:29.000000000 +0000
@@ -46,6 +46,15 @@
     vars:
       tox_environment:
         OSLO_LOG_TEST_EVENTLET: 1
+        EVENTLET_HUB: epolls
+
+- job:
+    name: oslo.log-tox-py312-eventlet-patched-asyncio
+    parent: openstack-tox-py312
+    vars:
+      tox_environment:
+        OSLO_LOG_TEST_EVENTLET: 1
+        EVENTLET_HUB: asyncio
 
 - project:
     check:
@@ -53,10 +62,12 @@
         - oslo.log-src-grenade
         - oslo.log-jsonformatter
         - oslo.log-tox-py312-eventlet-patched
+        - oslo.log-tox-py312-eventlet-patched-asyncio
     gate:
       jobs:
         - oslo.log-jsonformatter
         - oslo.log-tox-py312-eventlet-patched
+        - oslo.log-tox-py312-eventlet-patched-asyncio
     templates:
       - check-requirements
       - lib-forward-testing-python3
diff -pruN 7.1.0-4/AUTHORS 7.2.0-0ubuntu1/AUTHORS
--- 7.1.0-4/AUTHORS	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/AUTHORS	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1,206 @@
+Adam Spiers <aspiers@suse.com>
+Akash Gangil <gangila@vmware.com>
+Akihiro Motoki <motoki@da.jp.nec.com>
+Alan Bishop <abishop@redhat.com>
+Alexander Gorodnev <agorodnev@mirantis.com>
+Alexis Lee <lxsli@hpe.com>
+Alexis Lee <openstack@lxsli.co.uk>
+Alfredo Moralejo <amoralej@redhat.com>
+Alvaro Lopez Garcia <aloga@ifca.unican.es>
+Andrea Frittoli <andrea.frittoli@gmail.com>
+Andreas Jaeger <aj@suse.com>
+Andreas Jaeger <aj@suse.de>
+Andrei Bacos <abacos@cloudbasesolutions.com>
+Andrew Bogott <abogott@wikimedia.org>
+Andrew Laski <andrew.laski@rackspace.com>
+Andrey Volkov <avolkov@mirantis.com>
+Angus Salkeld <asalkeld@redhat.com>
+Anita Kuno <anita.kuno@enovance.com>
+Ann Kamyshnikova <akamyshnikova@mirantis.com>
+Atsushi SAKAI <sakaia@jp.fujitsu.com>
+Ben Nemec <bnemec@redhat.com>
+Benjamin Reichel <b.reichel@syseleven.de>
+Bogdan Dobrelya <bdobrelia@mirantis.com>
+Bogdan Dobrelya <bogdando@mail.ru>
+Brad Pokorny <bpokorny@us.ibm.com>
+Brant Knudson <bknudson@us.ibm.com>
+Brian Haley <bhaley@redhat.com>
+Chang Bo Guo <guochbo@cn.ibm.com>
+ChangBo Guo(gcb) <eric.guo@easystack.cn>
+Chris St. Pierre <chris.a.st.pierre@gmail.com>
+Chris Yeoh <cyeoh@au1.ibm.com>
+Christian Berendt <berendt@b1-systems.de>
+Chuck Short <chuck.short@canonical.com>
+Cyril Roelandt <cyril.roelandt@enovance.com>
+Cyril Roelandt <cyril@redhat.com>
+Daisuke Fujita <fuzita.daisuke@jp.fujitsu.com>
+Dan Prince <dprince@redhat.com>
+Daniel Bengtsson <dbengt@redhat.com>
+Daniel Vincze <dvincze@cloudbasesolutions.com>
+Davanum Srinivas <davanum@gmail.com>
+Davanum Srinivas <dims@linux.vnet.ibm.com>
+David Stanek <dstanek@dstanek.com>
+DennyZhang <denny@unitedstack.com>
+Dina Belova <dbelova@mirantis.com>
+Dirk Mueller <dirk@dmllr.de>
+Dmitry Mescheryakov <dmescheryakov@mirantis.com>
+Dmitry Tantsur <dtantsur@redhat.com>
+Dolph Mathews <dolph.mathews@gmail.com>
+Doug Hellmann <doug@doughellmann.com>
+Duan Jiong <jduan@fiberhome.com>
+Edan David <edand@mellanox.com>
+Edwin Zhai <edwin.zhai@intel.com>
+Elena Ezhova <eezhova@mirantis.com>
+Elod Illes <elod.illes@est.tech>
+Eric Brown <browne@vmware.com>
+Eric Harney <eharney@redhat.com>
+Eric Windisch <eric@cloudscaling.com>
+Erlon R. Cruz <erlon.cruz@fit-tecnologia.org.br>
+Flavio Percoco <flaper87@gmail.com>
+Flavio Percoco <fpercoco@redhat.com>
+Francois Deppierraz <francois@ctrlaltdel.ch>
+Gage Hugo <gagehugo@gmail.com>
+Gary Kotton <gkotton@vmware.com>
+Ghanshyam <gmann@ghanshyammann.com>
+Ghanshyam Mann <gmann@ghanshyammann.com>
+Gorka Eguileor <geguileo@redhat.com>
+Goutham Pacha Ravi <gouthampravi@gmail.com>
+Hervé Beraud <hberaud@redhat.com>
+Ian Cordasco <graffatcolmingov@gmail.com>
+Ian Wienand <iwienand@redhat.com>
+Ihar Hrachyshka <ihrachys@redhat.com>
+Itamar Turner-Trauring <itamar@pythonspeed.com>
+Jake Yip <jake.yip@ardc.edu.au>
+James Carey <jecarey@us.ibm.com>
+James E. Blair <jeblair@redhat.com>
+Jamie Lennox <jamielennox@gmail.com>
+Jan Vondra <jan.vondra@ultimum.io>
+Jason Kölker <jason@koelker.net>
+Javeme <zhangmei.li@easystack.cn>
+Jay Pipes <jaypipes@gmail.com>
+Jay S. Bryant <jsbryant@us.ibm.com>
+Jeremy Stanley <fungi@yuggoth.org>
+JingLiu <liu.jing5@zte.com.cn>
+Joe D'Andrea <jdandrea@research.att.com>
+Joe Gordon <joe.gordon0@gmail.com>
+Joe Gordon <jogo@cloudscaling.com>
+John Griffith <john.griffith8@gmail.com>
+John L. Villalovos <john.l.villalovos@intel.com>
+John Stanford <john@solinea.com>
+Jorhson Deng <dengzhaosen@inspur.com>
+Joshua Harlow <harlowja@gmail.com>
+Joshua Harlow <harlowja@yahoo-inc.com>
+Joshua Harlow <jxharlow@godaddy.com>
+Juan Antonio Osorio Robles <jaosorior@redhat.com>
+Julien Danjou <julien@danjou.info>
+Kenneth Giusti <kgiusti@gmail.com>
+Kevin Benton <kevin@benton.pub>
+Kevin Rasmussen <kj_529@hotmail.com>
+Kiall Mac Innes <kiall@hp.com>
+Kirill Zaitsev <k.zaitsev@me.com>
+Kiseok Kim <kiseok7@gmail.com>
+Lance Bragstad <lbragstad@gmail.com>
+Lance Bragstad <ldbragst@us.ibm.com>
+Lianhao Lu <lianhao.lu@intel.com>
+Lucian Petrut <lpetrut@cloudbasesolutions.com>
+Luigi Toscano <ltoscano@redhat.com>
+Luis A. Garcia <luis@linux.vnet.ibm.com>
+Marian Horban <mhorban@mirantis.com>
+Mark Doffman <mjdoffma@us.ibm.com>
+Mark McLoughlin <markmc@redhat.com>
+Masaki Matsushita <glass.saga@gmail.com>
+Mate Lakat <mate.lakat@citrix.com>
+Matt Odden <mrodden@us.ibm.com>
+Matt Riedemann <mriedem.os@gmail.com>
+Michael Basnight <mbasnight@gmail.com>
+Michael Johnson <johnsomor@gmail.com>
+Michael Kerrin <michael.kerrin@hp.com>
+Michael Still <mikal@stillhq.com>
+Michał Dulko <mdulko@redhat.com>
+Michał Górny <mgorny@gentoo.org>
+Michel Nederlof <mnederlof@cloudvps.com>
+Min Pae <sputnik13@gmail.com>
+Moisés Guimarães de Medeiros <moguimar@redhat.com>
+Monty Taylor <mordred@inaugust.com>
+Morgan Fainberg <morgan.fainberg@gmail.com>
+Nam Nguyen Hoai <namnh@vn.fujitsu.com>
+Natal Ngétal <hobbestigrou@erakis.eu>
+Nataliia Uvarova <grafinya.uvarova@gmail.com>
+Nikita Gerasimov <nikita.gerasimov@oracle.com>
+OpenStack Release Bot <infra-root@openstack.org>
+Pavlo Shchelokovskyy <shchelokovskyy@gmail.com>
+Pierre Riteau <pierre@stackhpc.com>
+Pádraig Brady <pbrady@redhat.com>
+Radomir Dopieralski <openstack@sheep.art.pl>
+Rajesh Tailor <rajesh.tailor@nttdata.com>
+Rick Harris <rconradharris@gmail.com>
+Rodolfo Alonso Hernandez <ralonsoh@redhat.com>
+Roman Podoliaka <rpodolyaka@mirantis.com>
+Ronald Bradford <ronald.bradford@gmail.com>
+Russell Bryant <rbryant@redhat.com>
+Sean Dague <sdague@linux.vnet.ibm.com>
+Sean Dague <sean.dague@samsung.com>
+Sean Dague <sean@dague.net>
+Sean McGinnis <sean.mcginnis@gmail.com>
+Sean McGinnis <sean_mcginnis@dell.com>
+Sergey Kraynev <skraynev@mirantis.com>
+Sergey Lukjanov <slukjanov@mirantis.com>
+Sergey Vilgelm <sergey@vilgelm.info>
+Stanislav Kudriashev <skudriashev@griddynamics.com>
+Stephen Finucane <sfinucan@redhat.com>
+Stephen Finucane <stephenfin@redhat.com>
+Steve Martinelli <s.martinelli@gmail.com>
+Steve Martinelli <stevemar@ca.ibm.com>
+Stuart McLaren <stuart.mclaren@hp.com>
+Suff <dmitry.a.grachev@gmail.com>
+Takashi Kajinami <kajinamit@oss.nttdata.com>
+Takashi Kajinami <tkajinam@redhat.com>
+Thomas Bechtold <tbechtold@suse.com>
+Thomas Herve <therve@redhat.com>
+Thomas Herve <thomas.herve@enovance.com>
+Timur Sufiev <tsufiev@mirantis.com>
+Tony Breeds <tony@bakeyournoodle.com>
+Tony Xu <hhktony@gmail.com>
+Vasyl Saienko <vsaienko@mirantis.com>
+Venkatesh Sampath <venkatesh.sampath@rackspace.com>
+Victor Sergeyev <vsergeyev@mirantis.com>
+Victor Stinner <vstinner@redhat.com>
+Vishakha Agarwal <agarwalvishakha18@gmail.com>
+Vishvananda Ishaya <vishvananda@gmail.com>
+Vladyslav Drok <vdrok@mirantis.com>
+Yaguang Tang <heut2008@gmail.com>
+YangLei <yanglyy@cn.ibm.com>
+Zane Bitter <zbitter@redhat.com>
+ZhiQiang Fan <zhiqiang.fan@huawei.com>
+Zhiteng Huang <zhiteng.huang@intel.com>
+ZhongShengping <chdzsp@163.com>
+Zhongyue Luo <zhongyue.nah@intel.com>
+abhishekkekane <abhishek.kekane@nttdata.com>
+avnish <avnish.pal@nectechnologies.in>
+caoyuan <cao.yuan@99cloud.net>
+damani42 <dbengt@redhat.com>
+dengzhaosen <dengzhaosen@inspur.com>
+eeldill <elod.illes@ericsson.com>
+gecong1973 <ge.cong@zte.com.cn>
+gengchc2 <geng.changcai2@zte.com.cn>
+gtt116 <gtt116@gmail.com>
+gujin <gu.jin@99cloud.net>
+jacky06 <zhang.min@99cloud.net>
+liangjingtao <liang.jingtao@zte.com.cn>
+lingyongxu <lyxu@fiberhome.com>
+loooosy <syluo5695@fiberhome.com>
+malei <malei@maleideMacBook-Pro.local>
+melanie witt <melwittt@gmail.com>
+melissaml <ma.lei@99cloud.net>
+pengyuesheng <pengyuesheng@gohighsec.com>
+ricolin <rico.lin@easystack.cn>
+songwenping <songwenping@inspur.com>
+sonu.kumar <sonu.kumar@nectechnologies.in>
+tanlin <lin.tan@intel.com>
+tushargite96 <tushargite96@gmail.com>
+venkatamahesh <venkatamaheshkotha@gmail.com>
+wangqi <wang.qi@99cloud.net>
+xuanyandong <xuanyandong@inspur.com>
+yan.haifeng <yanheven@qq.com>
+zhang-jinnan <ben.os@99cloud.net>
+zhouxinyong <zhouxinyong@inspur.com>
diff -pruN 7.1.0-4/ChangeLog 7.2.0-0ubuntu1/ChangeLog
--- 7.1.0-4/ChangeLog	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/ChangeLog	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1,1139 @@
+CHANGES
+=======
+
+7.2.0
+-----
+
+* A PipeMutex that works with asyncio eventlet hub
+* Use upper-constraints for all requirements when testing
+* Use user\_id from context to fix unit tests
+* add pyproject.toml to support pip 23.1
+* tox: Remove basepython
+* Update master for stable/2025.1
+* Use updated 'project' keyword for config docs
+
+7.1.0
+-----
+
+* Skip installation to speed up pep8
+* deprecate eventlet monkey patch within oslo.log
+* Fix outdated envlist
+
+7.0.0
+-----
+
+* Skip grenade job for doc update
+* Support running tests w/eventlet monkey patching
+* reno: Update master for unmaintained/2023.1
+* Add missing contextmanager interfaces to PipeMutex
+
+6.2.0
+-----
+
+* Add note about requirements lower bounds
+* Skip functional tests on pre-commit config  update
+* Remove Python 3.8 support
+* Run pyupgrade to clean up Python 2 syntaxes
+* Remove windows support
+* Fix outdated tox minversion
+* Declare Python 3.12 support
+* Remove usage of deprecated RequestContext attributes
+* Update master for stable/2024.2
+
+6.1.2
+-----
+
+* Mock time.time\_ns in test\_rfc5424\_isotime\_format\_no\_microseconds for py3.13
+
+6.1.1
+-----
+
+* Revert "Remove the usage of the Eventlet debug feature from oslo.log."
+
+6.1.0
+-----
+
+* Replace deprecated logging.warn() calls with logging.warning()
+* add a missing link to the release note
+* Remove the usage of the Eventlet debug feature from oslo.log
+
+6.0.0
+-----
+
+* Remove unused pyinotify
+* Remove old excludes
+* Remove implementation for watch\_log\_file
+* Apply eventlet workaround only once
+* Deprecate watch\_log\_file
+* Remove fallback for old oslo.context
+* Add option to disable color
+* Fix broken reference to rate\_limit\_except\_level
+* Validate rate\_limit\_except\_level by choices
+* Imported Translations from Zanata
+* Fix eventlet detection
+* Update master for stable/2024.1
+* reno: Update master for unmaintained/victoria
+
+5.5.0
+-----
+
+* pre-commit: Integrate bandit
+* pre-commit: Bump versions
+* Bump hacking
+* Update python classifier in setup.cfg
+
+5.4.0
+-----
+
+* Deprecate Windows support
+* Update master for stable/2023.2
+
+5.3.0
+-----
+
+* Catch RuntimeError when loading log config file
+* Bump bandit
+* Imported Translations from Zanata
+* Revert "Moves supported python runtimes from version 3.8 to 3.10"
+* Moves supported python runtimes from version 3.8 to 3.10
+* Update master for stable/2023.1
+* Imported Translations from Zanata
+
+5.1.0
+-----
+
+* tox - fix allowlist\_external issues
+* Cleanup py27 support
+
+5.0.2
+-----
+
+* Make the eventlet logging fix execution conditional
+
+5.0.1
+-----
+
+* Fix logging in eventlet native threads
+
+5.0.0
+-----
+
+* [Fix] init global\_request\_id if not in context
+* Drop python3.6/3.7 support in testing runtime
+
+4.8.0
+-----
+
+* Log Global Request IDs by default
+* Add system scope information to default user identity string
+* Update CI to use unversioned jobs template
+* Add Zed in versionutils
+* Add Python3 yoga unit tests
+* Fix formatting of release list
+
+4.7.0
+-----
+
+* Add Yoga to versionutils
+* Use project when logging the user identity
+* Update python testing classifier
+
+4.6.1
+-----
+
+* Replace deprecated arguments of RequestContext
+
+4.6.0
+-----
+
+* Ussuri+ is python3 only
+* setup.cfg: Replace dashes with underscores
+* Remove references to 'sys.version\_info'
+
+4.5.0
+-----
+
+* Drop lower-constraints
+* Fix log\_rotate\_interval help text formatting
+* Move flake8 as a pre-commit local target
+* Add Xena to versionutils
+* remove unicode from code
+* Dropping lower constraints testing
+* Use TOX\_CONSTRAINTS\_FILE
+* Use py3 as the default runtime for tox
+* Imported Translations from Zanata
+* Add Python3 wallaby unit tests
+* Update master for stable/victoria
+* Adding pre-commit
+
+4.4.0
+-----
+
+* zuul: port the legacy grenade job
+* Bump bandit version
+* Added uwsgi\_name information into fluentFormatter event message
+
+4.3.0
+-----
+
+* Add Victoria and Wallaby in versionutils.deprecated
+
+4.2.1
+-----
+
+* Stop to use the \_\_future\_\_ module
+* Default facility to None in OSJournalHandler class
+
+4.2.0
+-----
+
+* Switch to newer openstackdocstheme and reno versions
+* Remove the unused coding style modules
+* Remove translation sections from setup.cfg
+* Add missing SYSLOG\_FACILITY to JournalHandler
+* Remove monotonic usage
+* Align contributing doc with oslo's policy
+* Bump default tox env from py37 to py38
+* Add py38 package metadata
+* Add release notes links to doc index
+* Imported Translations from Zanata
+* Add Python3 victoria unit tests
+* Update master for stable/ussuri
+
+4.1.1
+-----
+
+* Use unittest.mock instead of third party mock
+* drop use of six
+
+4.1.0
+-----
+
+* Add Victoria and Wallaby releases to versionutils
+
+4.0.1
+-----
+
+* remove outdated header
+* Switch to hacking 2.x
+* Stop to build universal wheel
+* Ignore releasenote artifacts files
+
+4.0.0
+-----
+
+* Drop python 2.7 support and testing
+* Drop use of unittest2
+* tox: Trivial cleanup
+
+3.45.2
+------
+
+* Always use jsonutils.to\_primitive 'fallback' parameter
+
+3.45.1
+------
+
+* Serialize complex objects in FluentFormatter
+* Migrate grenade jobs to py3
+
+3.45.0
+------
+
+* tox: Keeping going with docs
+* Switch to official Ussuri jobs
+* Update master for stable/train
+* Add Ussuri release to versionutils
+
+3.44.1
+------
+
+* Add Python 3 Train unit tests
+* Use setLevel instead of setting logger.level directly
+* Bump the openstackdocstheme extension to 1.20
+* Blacklist sphinx 2.1.0 (autodoc bug)
+* Remove incubator migration docs
+* Modify the constraints url in tox
+* Add logging guidelines based on previous spec
+* Fix guidelines w.r.t. translation of log messages
+* Schedule a periodical check of requirements to catch py2.7 issues quickly
+
+3.44.0
+------
+
+* Avoid tox\_install.sh for constraints support
+* Cap bandit below 1.6.0 version and update sphinx and limit monotonic
+* Replace git.openstack.org URLs with opendev.org URLs
+
+3.43.0
+------
+
+* OpenDev Migration Patch
+* Dropping the py35 testing
+* Add TRAIN to deprecated releases
+* Use raw string for regex
+* Added cmdline information into fluentFormatter event message
+* Replace openstack.org git:// URLs with https://
+* Update master for stable/stein
+
+3.42.3
+------
+
+* Clarify some config options
+* Add 'levelkey' + 'tbkey' params
+
+3.42.2
+------
+
+* Use template for lower-constraints
+
+3.42.1
+------
+
+* Default oslo.policy logging to INFO
+* Update mailinglist from dev to discuss
+* Fix handling of exc\_info in OSJournalHandler
+* Fix up nits in log rotation change
+
+3.42.0
+------
+
+* Add config options for log rotation
+* Advancing the protocal of the website to HTTPS in usage.rst
+
+3.41.0
+------
+
+* Add Windows Event Log handler
+* Clean up .gitignore references to personal tools
+* Always build universal wheels
+* Add devstack job with JSONFormatter configured
+
+3.40.1
+------
+
+* Filter args dict in JSONFormatter
+* add lib-forward-testing-python3 test job
+* add python 3.6 unit test job
+* rewrite tests to not rely on implementation details of logging module
+* import zuul job settings from project-config
+* Follow the new PTI for document build
+* Migrate to stestr
+* Fix lower-constraints job
+* Imported Translations from Zanata
+* Update reno for stable/rocky
+
+3.39.0
+------
+
+* Add release notes link to README
+* Automatically append reset\_color to log lines
+* fix tox python3 overrides
+* Provide reset\_color key on log record
+* tox: Group targets and tool configuration together
+* tox: Don't set basepython in testenv
+
+3.38.1
+------
+
+* Fix Formatter subclasses for Python 3.2+
+* Fix file permissions
+* Remove stale pip-missing-reqs tox test
+* Trivial: Update pypi url to new url
+* Fix sphinx-docs job
+* set default python to python3
+
+3.38.0
+------
+
+* Add Stein release to versionutils
+* Add ROCKY to deprecated releases
+* add lower-constraints job
+* Increase sleep time in testsuite to make it more robust
+* Updated from global requirements
+
+3.37.0
+------
+
+* Add Rocky release to versionutils.\_RELEASES
+* Updated from global requirements
+* Update links in README
+* Imported Translations from Zanata
+* Zuul: Remove project name
+* Imported Translations from Zanata
+* Zuul: Remove project name
+* Update reno for stable/queens
+* Updated from global requirements
+* Imported Translations from Zanata
+* update structured logging tests to prove context id is included
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+
+3.36.0
+------
+
+* Truncate error\_summary if exc\_info not explicitly passed
+* Cleanup test-requirements
+* Updated from global requirements
+* Imported Translations from Zanata
+
+3.35.0
+------
+
+* Updated from global requirements
+
+3.34.0
+------
+
+* Remove setting of version/release from releasenotes
+* Updated from global requirements
+* Capture context in its own key for JSON-based formatters
+
+3.33.0
+------
+
+* Updated from global requirements
+* Remove checks for auth\_token in JSON-based formatter tests
+* Add release note for use\_json option
+* Add option to use JSON formatter
+* Updated from global requirements
+* Zuul: add file extension to playbook path
+* JSONFormatter convert unserializable with repr()
+
+3.32.0
+------
+
+* Allow logging of unhashable exceptions in Python 3
+* Updated from global requirements
+* Migrate to Zuul v3
+* Imported Translations from Zanata
+* Updated from global requirements
+
+3.31.0
+------
+
+* Updated from global requirements
+* Update the documentation link for doc migration
+* Update the documentation link
+* Updated from global requirements
+* Update reno for stable/pike
+* Updated from global requirements
+
+3.30.0
+------
+
+* Updated from global requirements
+* Update URLs according to document migration
+* Add missing variable html\_last\_updated\_fmt
+
+3.29.0
+------
+
+* Updated from global requirements
+* switch from oslosphinx to openstackdocstheme
+* rearrange content to fit the new standard layout
+* only show error\_summary for warning and error messages
+* Updated from global requirements
+* Add log.get\_loggers method
+* Updated from global requirements
+
+3.28.1
+------
+
+* do not add error\_summary for debug log messages
+
+3.28.0
+------
+
+* Updated from global requirements
+* formatter: skip ImportError when adding error\_summary
+* Updated from global requirements
+
+3.27.0
+------
+
+* Updated from global requirements
+* Fix bug in log\_method\_call decorator
+* clarify release note for error summary handling
+* fix test description comment
+* Updated from global requirements
+* Oslo i18n 3.15.2 has broken deps
+* Remove deprecated module loggers
+* Updated from global requirements
+* add line number information to fluentd formatter
+* add error\_summary support for fluentd formatter
+* add error\_summary support to JSONFormatter
+* refactor error summary logic so it can be reused
+* improve the documentation for log format strings
+* skip built-in exceptions when adding error\_summary
+* make handling of error\_summary more flexible
+* add exception summaries to the main log line
+* Updated from global requirements
+
+3.26.1
+------
+
+* Use dict arg values for unicode checks in ContextFormatter
+
+3.26.0
+------
+
+* Add oslo\_messaging to the list of log levels
+* Add additional info like python-systemd does
+
+3.25.0
+------
+
+* Fix syslog module usage breaking Windows compatibility
+* Updated from global requirements
+
+3.24.0
+------
+
+* add an extras dependency for systemd
+* Optimize the link address
+* Always create OSSysLogHandler
+* protect systemd class initialization when syslog is not available
+* Documentation for journal usage
+* Systemd native journal support
+* When record.args is None, it should not give an exception
+
+3.23.0
+------
+
+* Trivial: Remove testscenarios from test-requirements.txt
+* Check reStructuredText documents for common style issues
+* Use Sphinx 1.5 warning-is-error
+* Fix some reST field lists in docstrings
+* Remove log translations
+
+3.22.0
+------
+
+* Updated from global requirements
+* Remove 'verbose' option (again)
+
+3.21.0
+------
+
+* Added is\_debug\_enabled helper
+* Updated from global requirements
+* [Fix gate]Update test requirement
+* Revert "Remove 'verbose' option (again)"
+* Updated from global requirements
+* Remove support for py34
+* pbr.version.VersionInfo needs package name (oslo.xyz and not oslo\_xyz)
+* tail support, log filtering, executable, and splitlines bug fix
+* Must not go underneath the context object and access \_\_dict\_\_
+* Fix devstack colors
+* Update reno for stable/ocata
+* Remove 'verbose' option (again)
+* Remove references to Python 3.4
+
+3.20.0
+------
+
+* Replace method attr in vars() to hasattr
+* Add Constraints support
+
+3.19.0
+------
+
+* Avoid converting to unicode if not needed
+* Show team and repo badges on README
+
+3.18.0
+------
+
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Imported Translations from Zanata
+
+3.17.0
+------
+
+* Modify use of assertTrue(A in B)
+* Change assertTrue(isinstance()) by optimal assert
+* Add a json reformatter command
+* Enable release notes translation
+* Add support for P and Q release names
+* Updated from global requirements
+* Updated from global requirements
+* modify the home-page info with the developer documentation
+* Add a filter to rate limit logs
+* Implement FluentFormatter
+* Fix races in unit tests
+* standardize release note page ordering
+* Use six.wraps instead of functools
+* Update reno for stable/newton
+* Updated from global requirements
+* Fix typos
+
+3.16.0
+------
+
+* Updated from global requirements
+* Default use\_stderr to False
+
+3.15.0
+------
+
+
+3.14.0
+------
+
+* Updated from global requirements
+* Updated from global requirements
+* Fixes unit tests on Windows
+
+3.13.0
+------
+
+* Updated from global requirements
+* Fix parameters of assertEqual are misplaced
+* Updated from global requirements
+* Remove discover from test-requirements
+* Add Python 3.5 classifier and venv
+
+3.12.0
+------
+
+* Replace "LOG.exception(\_" with "LOG.exception(\_LE"
+* Updated from global requirements
+* Reload log\_config\_append config on SIGHUP
+* Imported Translations from Zanata
+* Updated from global requirements
+* log: Introduce \_iter\_loggers
+* Imported Translations from Zanata
+* Updated from global requirements
+* Updated from global requirements
+
+3.11.0
+------
+
+
+3.10.0
+------
+
+* Updated from global requirements
+* Provide a normal method for deprecation warnings
+
+3.9.0
+-----
+
+* Updated from global requirements
+* Make available to log encoded strings as arguments
+* Updated from global requirements
+* Fix typo: 'Olso' to 'Oslo'
+* Updated from global requirements
+* Convert unicode data to utf-8 before calling syslog.syslog()
+* log: don't create foo.log
+* Updated from global requirements
+* Use new logging specific method for context info
+* Reduce READ\_FREQ and TIMEOUT for watch-file
+
+3.8.0
+-----
+
+* Revert "Remove 'verbose' option"
+* Fix regression causing the default log level to become WARNING
+* Remove 'verbose' option
+
+3.7.0
+-----
+
+* Fix example issue
+* Updated from global requirements
+* Allow reload of 'debug' option
+
+3.6.0
+-----
+
+* Imported Translations from Zanata
+
+3.5.0
+-----
+
+* Remove direct dependency on babel
+
+3.4.0
+-----
+
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Remove outdated comment in ContextFormatter
+* Enable log\_method\_call to work on static method
+* Explicitly exclude tests from bandit scan
+* Improve olso.log test coverage for edge cases
+* Improve test code coverage of \_options
+* Update reno for stable/mitaka
+* Unit test cleanup and validation improvements
+* Added +2 release names for versionutils
+* Fix broken links in docs usage page
+* Enable bandit in gate
+* Updated from global requirements
+
+3.2.0
+-----
+
+* use log.warning instead of log.warn
+* Imported Translations from Zanata
+* Updated from global requirements
+* Remove deprecated use-syslog-rfc-format option
+
+3.1.0
+-----
+
+* Add release note for removed log\_format option
+* Updated from global requirements
+* add page for release notes for unreleased versions
+* add a release note about using reno
+
+3.0.0
+-----
+
+* Add reno for release notes management
+* remove pypy from default tox environment list
+* stop making a copy of options discovered by config generator
+* always run coverage report
+* Remove bandit.yaml in favor of defaults
+
+2.4.0
+-----
+
+* Updated from global requirements
+* Fix spell typos
+* set oslo.cache and dogpile to INFO
+* Update translation setup
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Imported Translations from Zanata
+* Updated from global requirements
+* Improve Logging docs with inline examples and context example
+* Revert "Pass environment variables of proxy to tox"
+* Clean up removed hacking rule from [flake8] ignore lists
+* Provide a deprecated\_reason for use\_syslog\_rfc\_format
+* Remove deprecated log-format option
+
+2.3.0
+-----
+
+* Improve documentataion of Oslo Log Usage
+* Added public method to getting default log levels
+* Updated from global requirements
+* enable isotime for exceptions
+* assertIsNone(val) instead of assertEqual(None,val)
+
+2.2.0
+-----
+
+* Set keystoneauth default log level to WARN
+* Add ISO8601/RFC3339 timestamp to ContextFormatter
+* Format record before passing it to syslog
+* Updated from global requirements
+* Pass environment variables of proxy to tox
+* Updated from global requirements
+* Trival: Remove 'MANIFEST.in'
+
+2.1.0
+-----
+
+* Remove iso8601 dependency
+* Remove duplicated profiles section from bandit.yaml
+* test\_logging\_error: build a logger at the test level
+* Cleanup all handlers in \_setup\_logging\_from\_conf
+* Drop python 2.6 support
+* Add a 'bandit' target to tox.ini
+
+2.0.0
+-----
+
+* Updated from global requirements
+* Log to sys.stderr to avoid "No handlers could be found..."
+* Remove python 2.6 classifier
+* Remove python 2.6 and cleanup tox.ini
+* Refactor Python 2.6 check to use constant
+
+1.14.0
+------
+
+* The user\_identity format flexibility
+* Updated from global requirements
+* Imported Translations from Zanata
+* Updated from global requirements
+
+1.13.0
+------
+
+* Updated from global requirements
+* Updated from global requirements
+
+1.12.1
+------
+
+* Allow oslo.log to work on non-linux platforms
+
+1.12.0
+------
+
+* Fix coverage configuration and execution
+* No need for Oslo Incubator Sync
+* Add hostname field to JSONFormatter
+* Imported Translations from Zanata
+* Fix unintended assignment of "syslog"
+* Make doc title consistent with readme
+* add documentation with example of an external configuration file
+* add auto-generated docs for config options
+* Update option docs for when log config is used
+* Updated from global requirements
+* Add optional 'fixture' dependencies
+* Change ignore-errors to ignore\_errors
+* Fix the home-page value in setup.cfg with openstack.org
+* FastWatchedFileHandler class was added
+
+1.11.0
+------
+
+* Fix poor examples of exception logging
+* Updated from global requirements
+* Updated from global requirements
+
+1.10.0
+------
+
+* Fix package name for PublishErrorsHandler
+* Updated from global requirements
+* Fix duplicate-key pylint issue
+* Maintain old oslo logger names
+
+1.9.0
+-----
+
+* Add Mitaka release to versionutils
+* Update single letter release names to full names
+* Provide a way to register versionutils options
+* Imported Translations from Transifex
+* Updated from global requirements
+
+1.8.0
+-----
+
+* Set verbose to True and deprecate it
+* Define TRACE logging level
+* Imported Translations from Transifex
+* Updated from global requirements
+
+1.7.0
+-----
+
+* Imported Translations from Transifex
+* Add more default fancier formatting params
+* Updated from global requirements
+* Updated from global requirements
+* Updated from global requirements
+* Do not report deprecations in subclasses
+* Imported Translations from Transifex
+* Updated from global requirements
+* Add tox target to find missing requirements
+
+1.6.0
+-----
+
+* Remove duplication of fatal\_deprecations option
+* setting taskflow log level to WARN
+* Imported Translations from Transifex
+
+1.5.0
+-----
+
+* Updated from global requirements
+* Updated from global requirements
+* Switch badges from 'pypip.in' to 'shields.io'
+* Deprecate use-syslog-rfc-format for removal
+
+1.4.0
+-----
+
+
+1.3.0
+-----
+
+* Do not fail if syslog is not available
+* Allow integer logging levels
+
+1.2.0
+-----
+
+* Use proper deprecation for use-syslog-rfc-format option
+* Replace RFCSysLogHandler by a syslog() based one
+* Make remove\_in=0 (no removal) use a better syntax
+* Remove is\_compatible from versionutils
+* Add versionutils options to list\_opts
+* Add versionutils to API documentation
+* Advertise support for Python3.4 / Remove support for Python 3.3
+* Updated from global requirements
+* Updated from global requirements
+* Remove run\_cross\_tests.sh
+* Deprecate WritableLogger - used for eventlet logging
+* Log deprecation message when catching deprecated exceptions
+* Change misleading TRACE to ERROR
+
+1.1.0
+-----
+
+* Uncap library requirements for liberty
+* Provide an API to let tempest control the log file
+* fix pep8 errors
+* Add pypi download + version badges
+* Update to latest hacking
+* Add link to Logging Guidelines
+* move versionutils into place
+* Add liberty release name to versionutils
+* Expose opts entry point for version\_utils
+* Switch from oslo.config to oslo\_config
+* Remove oslo.log code and clean up versionutils API
+* Remove code that moved to oslo.i18n
+* Enhance versionutils.deprecated to work with classes
+* Add Kilo release name to versionutils
+* Allow deprecated decorator to specify no plan for removal
+* Add JUNO as a target to versionutils module
+* pep8: fixed multiple violations
+* Use oslotest instead of common test module
+* Use hacking import\_exceptions for gettextutils.\_
+* fixed typos
+* Fix violations of H302:import only modules
+* Adds decorator to deprecate functions and methods
+* Remove vim header
+* Add \`versionutils\` for version compatibility checks
+* Default to True for use-syslog-rfc-format
+* Updated from global requirements
+* Restore automatic unicode conversion
+* Add migration notes
+
+1.0.0
+-----
+
+* Updated from global requirements
+
+0.4.0
+-----
+
+* Pickup instance from log format record
+* Make use\_syslog=True log to syslog via /dev/log
+
+0.3.0
+-----
+
+* Updated from global requirements
+* update urllib3.util.retry log level to WARN
+
+0.2.0
+-----
+
+* Expose fixtures through oslo\_log.fixture
+* Add fixture to let tests change log levels
+* Rename logging fixture module
+* Update comment to match implementation
+* fix link to bug tracker in readme
+* Updated from global requirements
+* Update Oslo imports to remove namespace package
+
+0.1.0
+-----
+
+* Updated from global requirements
+* Add API documentation
+* Implement resource to logging extra keywords
+* Use RequestContext store in oslo\_context
+* Correct the translation domain for loading messages
+* Correct the position of the syslog handler
+* Enhance the README a bit
+* Switch to oslo.context
+* Move files out of the namespace package
+* Updated from global requirements
+* Workflow documentation is now in infra-manual
+* Added helper decorator to log method arguments
+* Updated from global requirements
+* Add oslo.config.opts entry\_points in setup.cfg
+* Updated from global requirements
+* Updated from global requirements
+* Activate pep8 check that \_ is imported
+* Add pbr to installation requirements
+* Updated from global requirements
+* Updated from global requirements
+* Remove audit log level
+* Switch from ContextAdapter to ContextFormatter
+* Move adapter properties to base class
+* Add KeywordArgumentAdapter
+* Remove extraneous vim editor configuration comments
+* Support building wheels (PEP-427)
+* Imported Translations from Transifex
+* Imported Translations from Transifex
+* Use oslo.utils and oslo.serialization
+* Fix test env order for testrepository db format
+* log: add missing space in error message
+* fix typo and formatting in contributing docs
+* Updated from global requirements
+* Remove duplicate test and cleanup unnecessary files
+* Use fixtures from oslo.i18n and oslo.cfg
+* Extract WritableLogger from log module
+* Move handlers and formatters out
+* Remove dependency on global CONF
+* switch test from info to error
+* Test formatting errors with log level being emitted
+* Imported Translations from Transifex
+* Simple doc cleanup
+* Work toward Python 3.4 support and testing
+* warn against sorting requirements
+* Make the local module private
+* Move the option definitions into a private file
+* Initial translation setup
+* Fix testr failure under python2.6
+* Get py27 amd pep8 to work
+* exported from oslo-incubator by graduate.sh
+* Set stevedore log level to WARN by default
+* Add unicode coercion of logged messages to ContextFormatter
+* Correct coercion of logged message to unicode
+* Except socket.error if syslog isn't running
+* Fix E126 pep8 errors
+* log: make tests portable
+* Set keystonemiddleware and routes.middleware to log on WARN level
+* Adjust oslo logging to provide adapter is enabled for
+* Make logging\_context\_format\_string optional in log.set\_defaults
+* log: make set\_defaults() tests clean up properly
+* Add default log level for websocket
+* Ability to customize default\_log\_levels for each project
+* Python 3: enable tests/unit/test\_log.py
+* Move \`mask\_password\` to strutils
+* update new requests logger to default WARN
+* Remove extra whitespace
+* Use oslo.messaging to publish log errors
+* pep8: fixed multiple violations
+* Add a RequestContext.from\_dict method
+* Fix common.log.ContextFormatter for Python 3
+* Mask passwords included without quotes at the ends of commands
+* Use moxstubout and mockpatch from oslotest
+* Fixes a simple spelling mistake
+* always log a traceback in the sys.excepthook
+* Remove redundant default=None for config options
+* Fix logging setup for Python 3.4
+* Mask passwords that are included in commands
+* Improve help strings
+* Remove str() from LOG.\* and exceptions
+* Fix python26 compatibility for RFCSysLogHandler
+* Use oslotest instead of common test module
+* Revert setting oslo-incubator logs to INFO
+* Set default log levels for oslo.messaging and oslo-incubator
+* Python 3: enable tests/unit/middleware/test\_request\_id.py
+* Add default user\_identity to logging record
+* Add model\_query() to db.sqlalchemy.utils module
+* Remove None for dict.get()
+* Rename Openstack to OpenStack
+* Fixture to reraise exceptions raised during logging
+* Emit message which merged user-supplied argument in log\_handler
+* Log unit test improvements
+* Use ContextFormatter for imparting context info
+* Fix deprecated messages sent multiple times
+* default connectionpool to WARN log level
+* Backport 'ident' from python 3.3 for Oslo's SysLogHandler
+* remove extra newlines that eventlet seems to add
+* Small edits on help strings
+* Add error type to unhandled exception log message
+* Logging excepthook: print exception info if debug=True
+* Utilizes assertIsNone and assertIsNotNone
+* Fix spelling errors in comments
+* Use hacking import\_exceptions for gettextutils.\_
+* Correct invalid docstrings
+* Translation Message improvements
+* Remove keystone from default\_log\_levels default
+* Adding domain to context and log
+* Unify different names between Python2/3 with six.moves
+* Remove vim header
+* Don't log to stdout when log\_dir is set
+* Remove uuidutils imports in oslo modules
+* Adds admin\_password as key to be sanitized when logging
+* Revert "Removes generate\_uuid from uuidutils"
+* Do not name variables as builtins
+* Removes generate\_uuid from uuidutils
+* Default iso8601 logging to WARN
+* Use six.text\_type instead of unicode function in tests
+* Add mask password impl from other projects
+* Use fileutils.write\_to\_tempfile in LogConfigTestCase
+* allow keeping of existing loggers with fileConfig
+* Add amqp=WARN,qpid=WARN to default\_log\_levels
+* Replace assert\_ with assertTrue
+* Don't override default value for eventlet.wsgi.server logging
+* \_get\_log\_file\_path explictly return, when logfile/logdire unset
+* Make openstack.common.log Python 3 compatible
+* Make Messages unicode before hitting logging
+* Adding instance\_uuid to context and log
+* Replace using tests.utils part2
+* Make a cStringIO usage in test\_log py3 compatible
+* Bump hacking to 0.7.0
+* Replace using tests.utils with openstack.common.test
+* Modify local.py to not be dependent on Eventlet
+* python3: handle module moves in log
+* Enable H302 hacking check
+* Add missing license header
+* Fix bad default for show\_deleted
+* Highlighting the deprecated nature of 'log-format'
+* Enable hacking H404 test
+* Enable hacking H402 test
+* python3: python3 binary/text data compatbility
+* Enable hacking H403 test
+* Remove the notifier and its dependencies from log.py
+* Deprecate log\_format and change default to None
+* oslo logging tries to run chmod on file
+* Improve Python 3.x compatibility
+* Support for lazily instantiated loggers
+* Incorrect logging setup - duplicating root handlers
+* Replaces the standard uuid with common in the context module
+* Gracefully handle errors in logging config files
+* clarify --log-file comments
+* Include PID in default logging\_context\_format\_string
+* Initialize root logger in \_setup\_logging\_from\_conf()
+* Fix Copyright Headers - Rename LLC to Foundation
+* Unignore log\_format option
+* Fix inconsistency with auth\_tok/auth\_token
+* Setup exception handler after configuring logging
+* Use oslo-config-2013.1b3
+* Don't use subprocess for testing excepthook
+* Emit a warning if RPC calls made with lock
+* Replace direct use of testtools BaseTestCase
+* Use testtools as test base class
+* Move logging config options into the log module
+* Fixes import order errors
+* Verbose should not enable debug level logging
+* Fix pep8 E125 errors
+* Improve millisecond logging
+* Enable millisecond logging by default
+* Allow nova and others to override some logging defaults
+* update deprecated stanza
+* Adjust the logging\_context\_format\_string
+* Fix the log test so it uses the available context fields
+* Restore proper LoggerTestCase
+* move nova.common.deprecated to openstack-common
+* Use pep8 v1.3.3
+* Improve logging of process id
+* Fix meaningless test case
+* Add multiple-driver support to the notifier api
+* Install a qualified except hook
+* Remove code to clear basicConfig root log handlers
+* don't throw exceptions if %(color)s tag is used
+* fix bug lp:1019348,update openstack-common to support pep8 1.3
+* Fix missing gettextutils in several modules
+* Move get\_context\_from\_function\_and\_args() to context.py
+* Switch common files to using jsonutils
+* Pass in stream as positional argument to StreamHandler
+* Add common logging and notification
+* Added dictify() and uuids to the common request context
+* Add greenthread local storage model from nova
+* add context 'tests'
+* make the skeleton project a template
+* reog from import merge
+* Add some more generic middleware, request context, utils, and versioning. Add basic template for server binary
+* Initial skeleton project
diff -pruN 7.1.0-4/PKG-INFO 7.2.0-0ubuntu1/PKG-INFO
--- 7.1.0-4/PKG-INFO	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/PKG-INFO	2025-07-10 09:21:09.377556300 +0000
@@ -0,0 +1,74 @@
+Metadata-Version: 2.1
+Name: oslo.log
+Version: 7.2.0
+Summary: oslo.log library
+Home-page: https://docs.openstack.org/oslo.log/latest
+Author: OpenStack
+Author-email: openstack-discuss@lists.openstack.org
+Classifier: Environment :: OpenStack
+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.9
+Classifier: Programming Language :: Python :: 3.10
+Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: Implementation :: CPython
+Requires-Python: >=3.9
+License-File: LICENSE
+Requires-Dist: pbr>=3.1.1
+Requires-Dist: oslo.config>=5.2.0
+Requires-Dist: oslo.context>=2.21.0
+Requires-Dist: oslo.i18n>=3.20.0
+Requires-Dist: oslo.utils>=3.36.0
+Requires-Dist: oslo.serialization>=2.25.0
+Requires-Dist: python-dateutil>=2.7.0
+Requires-Dist: debtcollector>=3.0.0
+Provides-Extra: fixtures
+Requires-Dist: fixtures>=3.0.0; extra == "fixtures"
+Provides-Extra: systemd
+Requires-Dist: systemd-python>=234; extra == "systemd"
+Provides-Extra: test
+Requires-Dist: stestr>=2.0.0; extra == "test"
+Requires-Dist: testtools>=2.3.0; extra == "test"
+Requires-Dist: oslotest>=3.3.0; extra == "test"
+Requires-Dist: coverage>=4.5.1; extra == "test"
+Requires-Dist: fixtures>=3.0.0; extra == "test"
+Requires-Dist: eventlet>=0.38.2; extra == "test"
+
+========================
+Team and repository tags
+========================
+
+.. image:: https://governance.openstack.org/tc/badges/oslo.log.svg
+    :target: https://governance.openstack.org/tc/reference/tags/index.html
+
+.. Change things from this point on
+
+================================
+oslo.log -- Oslo Logging Library
+================================
+
+.. image:: https://img.shields.io/pypi/v/oslo.log.svg
+    :target: https://pypi.org/project/oslo.log/
+    :alt: Latest Version
+
+.. image:: https://img.shields.io/pypi/dm/oslo.log.svg
+    :target: https://pypi.org/project/oslo.log/
+    :alt: Downloads
+
+The oslo.log (logging) configuration library provides standardized
+configuration for all openstack projects. It also provides custom
+formatters, handlers and support for context specific
+logging (like resource id's etc).
+
+* Free software: Apache license
+* Documentation: https://docs.openstack.org/oslo.log/latest/
+* Source: https://opendev.org/openstack/oslo.log
+* Bugs: https://bugs.launchpad.net/oslo.log
+* Release notes: https://docs.openstack.org/releasenotes/oslo.log/
+
diff -pruN 7.1.0-4/debian/changelog 7.2.0-0ubuntu1/debian/changelog
--- 7.1.0-4/debian/changelog	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/changelog	2025-07-16 22:35:05.000000000 +0000
@@ -1,237 +1,186 @@
-python-oslo.log (7.1.0-4) unstable; urgency=medium
+python-oslo.log (7.2.0-0ubuntu1) questing; urgency=medium
 
-  * Blacklist 2 failing unit tests (Closes: #1106441):
-    - LogRateLimitTestCase.test_rate_limit
-    - LogRateLimitTestCase.test_rate_limit_except_level
+  [ Guillaume Boutry ]
+  * d/gbp.conf, .launchpad.yaml: Sync from cloud-archive-tools for
+    flamingo.
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 26 May 2025 08:23:58 +0200
+  [ Myles Penner ]
+  * New upstream release for OpenStack Flamingo. (LP: #2116155)
+  * d/s/options: Ignore .launchpad.yaml when generating diffs.
+  * d/watch: Add Flamingo key verification.
+  * d/u/signing-key.asc: Add Flamingo public key.
+  * d/control: Align (Build-)Depends with upstream.
 
-python-oslo.log (7.1.0-3) unstable; urgency=medium
+ -- Myles Penner <myles.penner@canonical.com>  Wed, 16 Jul 2025 15:35:05 -0700
 
-  * Uploading to unstable.
-
- -- Thomas Goirand <zigo@debian.org>  Fri, 28 Mar 2025 10:22:06 +0100
-
-python-oslo.log (7.1.0-2) experimental; urgency=medium
+python-oslo.log (7.1.0-0ubuntu1) plucky; urgency=medium
 
-  * d/watch: switch to version=4 and mode=git.
+  * New upstream release for OpenStack Epoxy.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 25 Feb 2025 15:13:08 +0100
+ -- James Page <james.page@ubuntu.com>  Thu, 27 Feb 2025 12:50:55 +0000
 
-python-oslo.log (7.1.0-1) experimental; urgency=medium
-
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-  * Refreshed Add_missing_contextmanager_interfaces_to_PipeMutex.patch.
+python-oslo.log (7.0.0-0ubuntu1) plucky; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 24 Feb 2025 15:37:10 +0100
+  * d/gbp.conf, .launchpad.yaml: Sync from cloud-archive-tools for
+    epoxy.
+  * New upstream release for OpenStack Epoxy.
+  * d/control: Drop dependencies that are no longer required.
 
-python-oslo.log (6.1.2-4) unstable; urgency=medium
+ -- James Page <james.page@ubuntu.com>  Thu, 16 Jan 2025 13:30:19 +0000
 
-  * Switch to pybuild (Closes: #1090570).
+python-oslo.log (6.1.2-0ubuntu1) oracular; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 19 Dec 2024 08:51:25 +0100
+  * d/gbp.conf: upstream-branch -> upstream-dalmatian.
+  * New upstream point release for OpenStack Dalmatian.
 
-python-oslo.log (6.1.2-3) unstable; urgency=medium
-
-  * Add Add_missing_contextmanager_interfaces_to_PipeMutex.patch.
-
- -- Thomas Goirand <zigo@debian.org>  Tue, 19 Nov 2024 09:05:19 +0100
-
-python-oslo.log (6.1.2-2) unstable; urgency=medium
-
-  * Uploading to unstable.
+ -- James Page <james.page@ubuntu.com>  Tue, 24 Sep 2024 14:03:50 +0100
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 19 Sep 2024 17:53:28 +0200
-
-python-oslo.log (6.1.2-1) experimental; urgency=medium
-
-  * New upstream release.
-  * Fixed (build-)depends for this release.
-
- -- Thomas Goirand <zigo@debian.org>  Mon, 26 Aug 2024 16:43:12 +0200
-
-python-oslo.log (5.5.1-2) unstable; urgency=medium
-
-  * Drop the obsolete python3-mock dependency (Closes: #1070212).
-
- -- Thomas Goirand <zigo@debian.org>  Thu, 02 May 2024 08:25:39 +0200
-
-python-oslo.log (5.5.1-1) unstable; urgency=medium
+python-oslo.log (6.1.1-0ubuntu1) oracular; urgency=medium
 
   * New upstream release.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/{control,tests}/*: Test with all supported Pythons.
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 08 Apr 2024 10:17:56 +0200
+ -- James Page <james.page@ubuntu.com>  Mon, 05 Aug 2024 11:20:59 +0100
 
-python-oslo.log (5.5.0-3) unstable; urgency=medium
+python-oslo.log (5.5.1-0ubuntu1) noble; urgency=medium
 
-  * Uploading to unstable.
+  * New upstream release for OpenStack Caracal.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 03 Apr 2024 16:35:23 +0200
+ -- James Page <james.page@ubuntu.com>  Fri, 05 Apr 2024 11:38:44 +0100
 
-python-oslo.log (5.5.0-2) experimental; urgency=medium
-
-  * Removed obsolete dependency on python3-six (Closes: #1064631).
-
- -- Thomas Goirand <zigo@debian.org>  Mon, 26 Feb 2024 00:24:23 +0100
-
-python-oslo.log (5.5.0-1) experimental; urgency=medium
-
-  * New upstream release.
-
- -- Thomas Goirand <zigo@debian.org>  Sat, 24 Feb 2024 21:47:47 +0100
-
-python-oslo.log (5.4.0-1) experimental; urgency=medium
-
-  * New upstream release.
-
- -- Thomas Goirand <zigo@debian.org>  Sat, 24 Feb 2024 12:24:30 +0100
-
-python-oslo.log (5.3.0-3) unstable; urgency=medium
-
-  * Added python3-pyasyncore as (build-)depends (Closes: #1058117).
-
- -- Thomas Goirand <zigo@debian.org>  Tue, 12 Dec 2023 22:00:18 +0100
-
-python-oslo.log (5.3.0-2) unstable; urgency=medium
-
-  * Uploading to unstable.
-
- -- Thomas Goirand <zigo@debian.org>  Wed, 04 Oct 2023 13:28:49 +0200
-
-python-oslo.log (5.3.0-1) experimental; urgency=medium
-
-  * New upstream release.
-  * Added python3-eventlet as build-depends.
+python-oslo.log (5.5.0-0ubuntu1) noble; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 30 Aug 2023 12:46:47 +0200
+  * New upstream release for OpenStack Caracal. 
 
-python-oslo.log (5.2.0-3) unstable; urgency=medium
+ -- James Page <james.page@ubuntu.com>  Mon, 11 Mar 2024 11:21:55 +0000
 
-  * Cleans better (Closes: #1047472).
+python-oslo.log (5.4.0-0ubuntu1) noble; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 21 Aug 2023 12:21:42 +0200
+  [ Corey Bryant ]
+  * d/gbp.conf, .launchpad.yaml: Sync from cloud-archive-tools for
+    caracal.
 
-python-oslo.log (5.2.0-2) unstable; urgency=medium
-
-  * Uploading to unstable.
-  * Blacklist test_log.LogConfigTestCase.test_log_config_append_invalid.
-
- -- Thomas Goirand <zigo@debian.org>  Mon, 19 Jun 2023 11:28:42 +0200
-
-python-oslo.log (5.2.0-1) experimental; urgency=medium
-
-  * New upstream release.
-  * Removed eventlet from build-depends.
+  [ James Page ]
+  * New upstream release for OpenStack Caracal. 
+  * d/p/*: Drop, all included upstream.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 22 Mar 2023 09:49:18 +0100
+ -- James Page <james.page@ubuntu.com>  Wed, 17 Jan 2024 10:40:31 +0000
 
-python-oslo.log (5.1.0-1) experimental; urgency=medium
+python-oslo.log (5.3.0-0ubuntu1) mantic; urgency=medium
 
-  * New upstream release.
+  * New upstream release for OpenStack Bobcat.
+  * d/control: Align (Build-)Depends with upstream.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 22 Feb 2023 10:45:47 +0100
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 28 Sep 2023 09:43:47 -0400
 
-python-oslo.log (5.0.1-1) unstable; urgency=medium
-
-  * New upstream release.
-  * Add python3-eventlet as build-depends.
+python-oslo.log (5.2.0-0ubuntu2) mantic; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 20 Oct 2022 15:31:04 +0200
+  * d/p/catch-runtime-error.patch: Cherry-picked from upstream to
+    catch RuntimeError when loading log config file.
+  * d/p/skip-py3114-failure.patch: Dropped. No longer needed.
 
-python-oslo.log (5.0.0-2) unstable; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Mon, 11 Sep 2023 15:53:39 -0400
 
-  * Uploading to unstable.
+python-oslo.log (5.2.0-0ubuntu1) mantic; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 23 Sep 2022 13:49:03 +0200
+  * d/gbp.conf, .launchpad.yaml: Sync from cloud-archive-tools for
+    bobcat.
+  * New upstream release for OpenStack Bobcat.
+  * d/p/skip-py3114-failure.patch: Skip until fixed upstream.
 
-python-oslo.log (5.0.0-1) experimental; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 08 Jun 2023 17:03:52 -0400
 
-  * New upstream release.
+python-oslo.log (5.0.0-0ubuntu1) kinetic; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 29 Aug 2022 16:18:55 +0200
+  * New upstream release for OpenStack Zed.
+  * d/control: Align (Build-)Depends with upstream.
 
-python-oslo.log (4.7.0-3) unstable; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 27 May 2022 12:36:00 -0400
 
-  * autopkgtest: blacklist failing unit tests.
+python-oslo.log (4.6.1-0ubuntu1) jammy; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 01 Apr 2022 14:29:02 +0200
+  * New upstream release for OpenStack Yoga.
+  * d/control: Bump debhelper compat to 13.
 
-python-oslo.log (4.7.0-2) unstable; urgency=medium
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 01 Dec 2021 15:31:44 -0500
 
-  * Uploading to unstable.
-  * Add autopkgtest.
+python-oslo.log (4.6.0-0ubuntu1) impish; urgency=medium
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 24 Mar 2022 16:00:34 +0100
+  [ Chris MacNaughton ]
+  * d/control: Update VCS paths for move to lp:~ubuntu-openstack-dev.
 
-python-oslo.log (4.7.0-1) experimental; urgency=medium
+  [ Corey Bryant ]
+  * New upstream release for OpenStack Xena.
 
-  * Blacklist ContextFormatterTestCase.test_user_identity_logging and
-    ContextFormatterTestCase.test_user_identity_logging_set_format which are
-    failing when backported to Bullseye.
-  * New upstream release.
-  * Blacklist and test_emit() test_emit_exception(), as the "actual" data is
-    not matching the real output anymore.
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 21 Jul 2021 09:41:18 -0400
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 14 Mar 2022 16:25:57 +0100
+python-oslo.log (4.4.0-0ubuntu1) groovy; urgency=medium
 
-python-oslo.log (4.6.1-1) experimental; urgency=medium
+  * New upstream release for OpenStack Victoria.
 
-  * New upstream release.
+ -- Chris MacNaughton <chris.macnaughton@canonical.com>  Thu, 03 Sep 2020 08:29:08 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Mon, 21 Feb 2022 11:43:38 +0100
+python-oslo.log (4.3.0-0ubuntu1) groovy; urgency=medium
 
-python-oslo.log (4.6.0-2) unstable; urgency=medium
+  * New upstream release for OpenStack Victoria.
 
-  * Uploading to unstable.
+ -- Chris MacNaughton <chris.macnaughton@canonical.com>  Wed, 29 Jul 2020 07:47:09 +0000
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 29 Sep 2021 16:38:25 +0200
+python-oslo.log (4.2.1-0ubuntu1) groovy; urgency=medium
 
-python-oslo.log (4.6.0-1) experimental; urgency=medium
+  * New upstream release for OpenStack Victoria.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/control, d/rules: Switch to debhelper compat 12 and pybuild.
+  * d/control: Update Standards-Version to 4.5.0.
 
-  * New upstream release.
-  * Added myself in copyright and uploaders.
- 
- -- papamica <mickael@papamica.com>  Mon, 23 Aug 2021 08:38:12 -0500
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 11 Jun 2020 09:39:20 -0400
 
-python-oslo.log (4.4.0-2) unstable; urgency=medium
+python-oslo.log (4.1.1-0ubuntu1) focal; urgency=medium
 
-  * Uploading to unstable.
-  * Fixed d/watch.
-  * Add a debian/salsa-ci.yml.
+  * New upstream release for OpenStack Ussuri.
 
- -- Thomas Goirand <zigo@debian.org>  Thu, 15 Oct 2020 23:15:25 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 09 Apr 2020 14:46:34 -0400
 
-python-oslo.log (4.4.0-1) experimental; urgency=medium
+python-oslo.log (4.0.0-0ubuntu1) focal; urgency=medium
 
-  * New upstream release.
+  * New upstream release for OpenStack Ussuri.
+  * d/p/skip-py3.7-test.patch: Dropped. No longer needed.
 
- -- Thomas Goirand <zigo@debian.org>  Wed, 09 Sep 2020 20:42:28 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 11 Mar 2020 15:52:37 -0400
 
-python-oslo.log (4.1.3-1) unstable; urgency=medium
+python-oslo.log (3.45.2-0ubuntu1) focal; urgency=medium
 
-  * New upstream release.
+  * New upstream release for OpenStack Ussuri.
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 12 Jun 2020 10:37:08 +0200
+ -- Sahid Orentino Ferdjaoui <sahid.ferdjaoui@canonical.com>  Mon, 03 Feb 2020 10:42:23 +0000
 
-python-oslo.log (4.1.1-3) unstable; urgency=medium
+python-oslo.log (3.45.0-0ubuntu3) focal; urgency=medium
 
-  * Uploading to unstable.
+  * d/rules, d/python3-oslo.log.install: Restore install to tmp and add
+    install file with final installation location.
+  * d/t/python-import: Ensure this test is py3-only.
 
- -- Thomas Goirand <zigo@debian.org>  Fri, 08 May 2020 22:07:09 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Tue, 10 Dec 2019 12:50:45 -0500
 
-python-oslo.log (4.1.1-2) experimental; urgency=medium
+python-oslo.log (3.45.0-0ubuntu2) focal; urgency=medium
 
-  * Remove python3-funcsigs from build-depends.
+  * d/rules: Drop install to tmp (pkgos-dh_auto_install --in-tmp).
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 21 Apr 2020 23:12:07 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 06 Dec 2019 11:43:42 -0500
 
-python-oslo.log (4.1.1-1) experimental; urgency=medium
+python-oslo.log (3.45.0-0ubuntu1) focal; urgency=low
 
-  * New upstream release.
-  * Removed skip-py3.7-test.patch.
+  * Merge from Debian unstable.  Remaining changes:
+    - d/gbp.conf: Retain for gbp and pristine-tar config.
+    - d/python{3}-oslo.log.{postrm,prerm}: Drop maintainer scripts
+      for alternatives management as package is py3 only now.
+    - d/t/python-import: Add oslo module import test.
+    - d/watch: Use upstream release tarballs.
+  * New upstream release for OpenStack Ussuri.
+  * d/control: Align (Build-)Depends with upstream.
 
- -- Thomas Goirand <zigo@debian.org>  Tue, 07 Apr 2020 15:15:52 +0200
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 06 Dec 2019 10:23:54 -0500
 
 python-oslo.log (3.44.1-2) unstable; urgency=medium
 
@@ -260,6 +209,47 @@ python-oslo.log (3.44.1-1) experimental;
 
  -- Thomas Goirand <zigo@debian.org>  Wed, 04 Sep 2019 11:47:00 +0200
 
+python-oslo.log (3.44.1-0ubuntu1) eoan; urgency=medium
+
+  * New upstream release for OpenStack Train.
+  * d/control: Align (Build-)Depends with upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 25 Sep 2019 16:45:32 -0400
+
+python-oslo.log (3.44.0-0ubuntu4) eoan; urgency=medium
+
+  * d/control, d/tests/*: Add python-import test and drop
+    autopkgtest-pkg-python as it does not work with oslo packages.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 21 Jun 2019 10:05:46 -0400
+
+python-oslo.log (3.44.0-0ubuntu3) eoan; urgency=medium
+
+  * d/python{3}-oslo.log.{postinst,postrm,prerm}: Drop maintainer scripts
+    for alternatives management as package is py3 only now.
+
+ -- James Page <james.page@ubuntu.com>  Tue, 11 Jun 2019 09:01:10 +0100
+
+python-oslo.log (3.44.0-0ubuntu2) eoan; urgency=medium
+
+  * d/rules: Switch override_dh_install to override_dh_auto_install as
+    it is overriding setup.py install. Also add --no-py2.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Mon, 10 Jun 2019 09:06:04 -0400
+
+python-oslo.log (3.44.0-0ubuntu1) eoan; urgency=medium
+
+  * Merge from Debian experimental.  Remaining changes:
+    - d/control: Enable autopkgtest-pkg-python testsuite.
+    - d/python3-oslo.log.postinst: Bump priority of py3 alternatives.
+    - d/p/skip-py3.7-test.patch: Skip test that is failing on Py3.7
+    - d/gbp.conf: Retain for gbp and pristine-tar config.
+    - d/watch: Use upstream release tarballs.
+  * New upstream release for OpenStack Train.
+  * d/control: Align (Build-)Depends with upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 07 Jun 2019 10:07:59 -0400
+
 python-oslo.log (3.42.3-2) unstable; urgency=medium
 
   * Uploading to unstable.
@@ -276,6 +266,30 @@ python-oslo.log (3.42.3-1) experimental;
 
  -- Thomas Goirand <zigo@debian.org>  Wed, 20 Mar 2019 21:18:50 +0100
 
+python-oslo.log (3.42.3-0ubuntu1) disco; urgency=medium
+
+  * New upstream release for OpenStack Stein.
+
+ -- James Page <james.page@ubuntu.com>  Mon, 11 Mar 2019 16:03:29 +0000
+
+python-oslo.log (3.42.2-0ubuntu1) disco; urgency=medium
+
+  * d/control: Use python3-sphinx.
+  * d/python3-oslo.log.postinst: Bump priority of py3 alternatives.
+  * New upstream release for OpenStack Stein.
+  * d/control: Switch to using python3-sphinx.
+
+ -- James Page <james.page@ubuntu.com>  Wed, 30 Jan 2019 14:22:12 +0000
+
+python-oslo.log (3.40.1-0ubuntu1) disco; urgency=medium
+
+  * New upstream release for OpenStack Stein.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/temporarily-remove-failing-py3.6-tests.patch: Drop, included
+    upstream.
+
+ -- James Page <james.page@ubuntu.com>  Wed, 14 Nov 2018 15:20:19 +0000
+
 python-oslo.log (3.39.0-2) unstable; urgency=medium
 
   * Uploading to unstable.
@@ -295,6 +309,24 @@ python-oslo.log (3.39.0-1) experimental;
 
  -- Thomas Goirand <zigo@debian.org>  Sun, 19 Aug 2018 22:37:47 +0200
 
+python-oslo.log (3.39.0-0ubuntu1) cosmic; urgency=medium
+
+  * New upstream release for OpenStack Rocky.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/skip-py3.7-test.patch: Skip test that is failing on Py3.7
+    and opened bug upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 25 Jul 2018 15:32:15 -0400
+
+python-oslo.log (3.38.1-0ubuntu1) cosmic; urgency=low
+
+  * Merge from Debian unstable.  Remaining changes:
+    - d/watch: Use upstream release tarballs.
+  * New upstream release for OpenStack Rocky.
+  * Align (Build-)Depends with upstream.
+
+ -- James Page <james.page@ubuntu.com>  Tue, 12 Jun 2018 11:39:58 +0100
+
 python-oslo.log (3.36.0-3) unstable; urgency=medium
 
   * Fixed Python 3 shebang.
@@ -315,6 +347,31 @@ python-oslo.log (3.36.0-1) experimental;
 
  -- Thomas Goirand <zigo@debian.org>  Sun, 11 Feb 2018 08:28:50 +0000
 
+python-oslo.log (3.36.0-0ubuntu1) bionic; urgency=medium
+
+  [ James Page ]
+  * New upstream release for OpenStack Queens.
+  * d/control: Align (build-)depends with upstream.
+  * d/p/*: Drop, no longer needed.
+
+  [ Corey Bryant ]
+  * New upstream release.
+  * d/*: wrap-and-sort -bast.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/control: Update Standards-Version to 4.1.2.
+  * d/control: Bump debhelper compat to 10.
+  * d/p/skip-tests.patch: Skip tests in py3 due to upstream bug
+    https://bugs.launchpad.net/oslo.log/+bug/1737493.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 24 Jan 2018 16:15:36 -0500
+
+python-oslo.log (3.32.0-0ubuntu1) bionic; urgency=medium
+
+  * New upstream release for OpenStack Queens.
+  * d/control: Align (build-)depends with upstream.
+
+ -- James Page <james.page@ubuntu.com>  Mon, 13 Nov 2017 14:53:26 +0000
+
 python-oslo.log (3.30.2-1) unstable; urgency=medium
 
   * New upstream release.
@@ -361,6 +418,117 @@ python-oslo.log (3.30.0-1) experimental;
 
  -- Thomas Goirand <zigo@debian.org>  Fri, 04 Aug 2017 18:34:41 +0000
 
+python-oslo.log (3.30.0-0ubuntu1) artful; urgency=medium
+
+  * New upstream release.
+  * d/control: Align (Build-)Depends with upstream.
+  * d/p/drop-openstackdoctheme.patch: Temporarily drop openstackdocstheme
+    sphinx extension until sphinx>=1.6.2 is available.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Fri, 11 Aug 2017 17:57:15 -0400
+
+python-oslo.log (3.28.1-0ubuntu1) artful; urgency=medium
+
+  * New upstream release.
+  * d/control: Align (Build-)Depends with upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Thu, 06 Jul 2017 15:44:44 -0400
+
+python-oslo.log (3.27.0-0ubuntu1) artful; urgency=medium
+
+  * New upstream release.
+  * d/control: Align (Build-)Depends with upstream.
+
+ -- James Page <james.page@ubuntu.com>  Fri, 02 Jun 2017 09:25:04 +0100
+
+python-oslo.log (3.25.0-0ubuntu1) artful; urgency=medium
+
+  [ Chuck Short ]
+  * New upstream release.
+  * d/control: Align (Build-)Depends with upstream.
+
+  [ James Page ]
+  * d/watch: Use tarballs.openstack.org.
+
+ -- James Page <james.page@ubuntu.com>  Fri, 21 Apr 2017 10:03:26 +0100
+
+python-oslo.log (3.20.1-0ubuntu1) zesty; urgency=medium
+
+  * New upstream release.
+
+ -- Chuck Short <zulcss@ubuntu.com>  Mon, 27 Feb 2017 09:08:31 -0500
+
+python-oslo.log (3.19.0-0ubuntu1) zesty; urgency=medium
+
+  * New upstream version.
+
+ -- Chuck Short <zulcss@ubuntu.com>  Wed, 07 Dec 2016 09:36:35 -0500
+
+python-oslo.log (3.18.0-0ubuntu1) zesty; urgency=medium
+
+  * New upstream release.
+  * d/control: Align (Build-)Depends with upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Mon, 05 Dec 2016 09:54:18 -0500
+
+python-oslo.log (3.17.0-0ubuntu1) zesty; urgency=medium
+
+  [ Corey Bryant ]
+  * d/gbp.conf: Update gbp configuration file.
+  * d/control: Update Vcs-* links and maintainers.
+
+  [ Chuck Short ]
+  * New upstream version.
+  * d/control: Bump version dependencies.
+  * d/control: Add python-monotonic.
+
+ -- Chuck Short <zulcss@ubuntu.com>  Thu, 01 Dec 2016 08:44:34 -0500
+
+python-oslo.log (3.16.0-0ubuntu1) yakkety; urgency=medium
+
+  [ Thomas Goirand ]
+  * Fixed upstream VCS URL to use HTTPS.
+
+  [ Corey Bryant ]
+  * New upstream release.
+  * d/control: Align (build-)depends with upstream.
+  * d/p/allow-pyinotify-0.9.5.patch: Dropped. No longer needed.
+
+  [ Corey Bryant ]
+  * New upstream release.
+  * d/control: Align (build-)depends with upstream.
+
+ -- Corey Bryant <corey.bryant@canonical.com>  Wed, 31 Aug 2016 11:06:12 -0400
+
+python-oslo.log (3.11.0-1) experimental; urgency=medium
+
+  [ David Della Vecchia ]
+  * New upstream release.
+  * d/control: Align (build-)depends with upstream.
+  * d/p/allow-pyinotify-0.9.5.patch: Rebased.
+
+  [ Thomas Goirand ]
+  * Drop python-oslo-* transition packages not needed since Xenial is out.
+  * Switch to pkgos-dh_auto_{test,install}.
+
+ -- Thomas Goirand <zigo@debian.org>  Fri, 01 Jul 2016 15:06:26 +0000
+
+python-oslo.log (3.8.0-1) experimental; urgency=medium
+
+  [ Ondřej Nový ]
+  * Standards-Version is 3.9.8 now (no change)
+
+  [ Corey Bryant ]
+  * New upstream release.
+  * d/gbp.conf: Update gbp branch config for Newton.
+  * d/control: Align depends with upstream.
+  * d/rules: Set PYTHONPATH to current dir for sphinx-build.
+
+  [ Thomas Goirand ]
+  * Added Corey Bryant <corey.bryant@canonical.com> to Uploaders.
+
+ -- Thomas Goirand <zigo@debian.org>  Sun, 05 Jun 2016 14:51:54 +0000
+
 python-oslo.log (3.3.0-1) unstable; urgency=medium
 
   [ Ondřej Nový ]
@@ -476,3 +644,4 @@ python-oslo.log (1.0.0-1) unstable; urge
   * Initial release. (Closes: #776109)
 
  -- Thomas Goirand <zigo@debian.org>  Tue, 10 Feb 2015 14:58:25 +0100
+
diff -pruN 7.1.0-4/debian/control 7.2.0-0ubuntu1/debian/control
--- 7.1.0-4/debian/control	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/control	2025-07-16 22:35:05.000000000 +0000
@@ -1,40 +1,39 @@
 Source: python-oslo.log
 Section: python
 Priority: optional
-Maintainer: Debian OpenStack <team+openstack@tracker.debian.org>
+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
+XSBC-Original-Maintainer: Debian OpenStack <team+openstack@tracker.debian.org>
 Uploaders:
  Thomas Goirand <zigo@debian.org>,
- Mickael Asseline <mickael@papamica.com>,
 Build-Depends:
- debhelper-compat (= 10),
+ debhelper-compat (= 13),
  dh-python,
- openstack-pkg-tools (>= 99~),
+ openstack-pkg-tools,
  python3-all,
- python3-pbr,
+ python3-pbr (>= 3.1.1),
  python3-setuptools,
- python3-sphinx,
+ python3-sphinx (>= 2.0.0),
 Build-Depends-Indep:
- bandit,
- python3-coverage,
- python3-dateutil,
- python3-debtcollector (>= 3.0.0),
- python3-eventlet,
- python3-fixtures,
- python3-openstackdocstheme,
- python3-oslo.config,
- python3-oslo.context,
- python3-oslo.i18n,
- python3-oslo.serialization,
- python3-oslo.utils,
- python3-oslotest,
- python3-pyasyncore,
- python3-stestr,
+ python3-dateutil (>= 2.7.0),
+ python3-debtcollector (>= 2.5.0),
+ python3-eventlet (>= 0.35.2),
+ python3-fixtures (>= 3.0.0),
+ python3-funcsigs,
+ python3-monotonic (>= 1.4),
+ python3-openstackdocstheme (>= 2.2.1),
+ python3-oslo.config (>= 1:5.2.0),
+ python3-oslo.context (>= 1:2.21.0),
+ python3-oslo.i18n (>= 3.20.0),
+ python3-oslo.serialization (>= 2.25.0),
+ python3-oslo.utils (>= 3.36.0),
+ python3-oslotest (>= 1:3.3.0),
+ python3-stestr (>= 2.0.0),
  python3-subunit,
- python3-testtools,
+ python3-testtools (>= 2.3.0),
  subunit,
-Standards-Version: 4.1.3
-Vcs-Browser: https://salsa.debian.org/openstack-team/oslo/python-oslo.log
-Vcs-Git: https://salsa.debian.org/openstack-team/oslo/python-oslo.log.git
+Standards-Version: 4.5.0
+Vcs-Browser: https://git.launchpad.net/~ubuntu-openstack-dev/ubuntu/+source/python-oslo.log
+Vcs-Git: https://git.launchpad.net/~ubuntu-openstack-dev/ubuntu/+source/python-oslo.log
 Homepage: https://github.com/openstack/oslo.log.git
 
 Package: python-oslo.log-doc
@@ -53,15 +52,16 @@ Description: OpenStack logging configura
 Package: python3-oslo.log
 Architecture: all
 Depends:
- python3-dateutil,
- python3-debtcollector (>= 3.0.0),
- python3-oslo.config,
- python3-oslo.context,
- python3-oslo.i18n,
- python3-oslo.serialization,
- python3-oslo.utils,
- python3-pbr,
- python3-pyasyncore,
+ python3-dateutil (>= 2.7.0),
+ python3-debtcollector (>= 2.5.0),
+ python3-eventlet (>= 0.30.1),
+ python3-monotonic (>= 1.4),
+ python3-oslo.config (>= 1:5.2.0),
+ python3-oslo.context (>= 1:2.21.0),
+ python3-oslo.i18n (>= 3.20.0),
+ python3-oslo.serialization (>= 2.25.0),
+ python3-oslo.utils (>= 3.36.0),
+ python3-pbr (>= 3.1.1),
  ${misc:Depends},
  ${python3:Depends},
 Suggests:
diff -pruN 7.1.0-4/debian/copyright 7.2.0-0ubuntu1/debian/copyright
--- 7.1.0-4/debian/copyright	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/copyright	2025-07-16 22:35:05.000000000 +0000
@@ -8,7 +8,6 @@ License: Apache-2
 
 Files: debian/*
 Copyright: (c) 2015-2016, Thomas Goirand <zigo@debian.org>
-           (c) 2021 Mickael Asseline <mickael@papamica.com>
 License: Apache-2
 
 License: Apache-2
diff -pruN 7.1.0-4/debian/gbp.conf 7.2.0-0ubuntu1/debian/gbp.conf
--- 7.1.0-4/debian/gbp.conf	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/gbp.conf	2025-07-16 22:35:05.000000000 +0000
@@ -0,0 +1,9 @@
+[DEFAULT]
+debian-branch = master
+upstream-tag = %(version)s
+pristine-tar = True
+upstream-branch = upstream-flamingo
+
+[buildpackage]
+export-dir = ../build-area
+prebuild = [ ! -f .launchpad.yaml ] || rm .launchpad.yaml
diff -pruN 7.1.0-4/debian/patches/Add_missing_contextmanager_interfaces_to_PipeMutex.patch 7.2.0-0ubuntu1/debian/patches/Add_missing_contextmanager_interfaces_to_PipeMutex.patch
--- 7.1.0-4/debian/patches/Add_missing_contextmanager_interfaces_to_PipeMutex.patch	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/patches/Add_missing_contextmanager_interfaces_to_PipeMutex.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,30 +0,0 @@
-Author: Takashi Kajinami <kajinamit@oss.nttdata.com>
-Date: Tue, 19 Nov 2024 18:58:59 +0900
-Description: Add missing contextmanager interfaces to PipeMutex
- Log handler in python 3.13 requires that its lock instance is a context
- manager[1].
- .
- [1] https://github.com/python/cpython/commit/74723e11109a320e628898817ab449b3dad9ee96
- .
-Change-Id: I2ef0a819860d668b626b5bfafb67f6d2c059e498
-Origin: upstream, https://review.opendev.org/c/openstack/oslo.log/+/935620
-Last-Updaet: 2014-11-19
-
-Index: python-oslo.log/oslo_log/pipe_mutex.py
-===================================================================
---- python-oslo.log.orig/oslo_log/pipe_mutex.py
-+++ python-oslo.log/oslo_log/pipe_mutex.py
-@@ -145,6 +145,13 @@ class PipeMutex:
-     def __exit__(self, exc_type, exc_value, traceback):
-         self.release()
- 
-+    def __enter__(self):
-+        self.acquire()
-+        return self
-+
-+    def __exit__(self, exc_type, exc_value, traceback):
-+        self.release()
-+
- 
- def pipe_createLock(self):
-     """Replacement for logging.Handler.createLock method."""
diff -pruN 7.1.0-4/debian/patches/series 7.2.0-0ubuntu1/debian/patches/series
--- 7.1.0-4/debian/patches/series	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/patches/series	1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-Add_missing_contextmanager_interfaces_to_PipeMutex.patch
diff -pruN 7.1.0-4/debian/python3-oslo.log.postrm 7.2.0-0ubuntu1/debian/python3-oslo.log.postrm
--- 7.1.0-4/debian/python3-oslo.log.postrm	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/python3-oslo.log.postrm	1970-01-01 00:00:00.000000000 +0000
@@ -1,11 +0,0 @@
-#!/bin/sh
-
-set -e
-
-if [ "$1" = "remove" ] || [ "$1" = "disappear" ] ; then
-	update-alternatives --remove convert-json /usr/bin/python3-convert-json
-fi
-
-#DEBHELPER#
-
-exit 0
diff -pruN 7.1.0-4/debian/python3-oslo.log.prerm 7.2.0-0ubuntu1/debian/python3-oslo.log.prerm
--- 7.1.0-4/debian/python3-oslo.log.prerm	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/python3-oslo.log.prerm	1970-01-01 00:00:00.000000000 +0000
@@ -1,11 +0,0 @@
-#!/bin/sh
-
-set -e
-
-if [ "$1" = "remove" ] ; then
-	update-alternatives --remove convert-json /usr/bin/python3-convert-json
-fi
-
-#DEBHELPER#
-
-exit 0
diff -pruN 7.1.0-4/debian/rules 7.2.0-0ubuntu1/debian/rules
--- 7.1.0-4/debian/rules	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/rules	2025-07-16 22:35:05.000000000 +0000
@@ -1,5 +1,7 @@
 #!/usr/bin/make -f
 
+export PYBUILD_NAME=oslo_log
+
 UPSTREAM_GIT := https://github.com/openstack/oslo.log.git
 include /usr/share/openstack-pkg-tools/pkgos.make
 
@@ -7,9 +9,7 @@ include /usr/share/openstack-pkg-tools/p
 	dh $@ --buildsystem=pybuild --with python3,sphinxdoc
 
 override_dh_auto_clean:
-	rm -rf build .stestr *.egg-info
-	find . -iname '*.pyc' -delete
-	for i in $$(find . -type d -iname __pycache__) ; do rm -rf $$i ; done
+	rm -rf build
 
 override_dh_auto_build:
 	echo "Do nothing..."
@@ -21,7 +21,7 @@ override_dh_auto_install:
 	pkgos-dh_auto_install --no-py2 --in-tmp
 
 ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))
-	pkgos-dh_auto_test --no-py2 'oslo_log\.tests\.unit\.(?!(.*test_log\.LogConfigTestCase\.test_log_config_append_unreadable.*|.*test_log\.ContextFormatterTestCase\.test_user_identity_logging.*|.*test_log\.ContextFormatterTestCase\.test_user_identity_logging_set_format.*|.*test_log\.OSJournalHandlerTestCase\.test_emit.*|.*test_log\.OSJournalHandlerTestCase\.test_emit_exception.*|.*test_log\.LogConfigTestCase\.test_log_config_append_invalid.*|test_rate_limit\.LogRateLimitTestCase\.test_rate_limit|test_rate_limit\.LogRateLimitTestCase\.test_rate_limit_except_level))'
+	pkgos-dh_auto_test --no-py2 'oslo_log\.tests\.unit\.(?!(.*test_log\.LogConfigTestCase\.test_log_config_append_unreadable.*))'
 endif
 
 override_dh_sphinxdoc:
diff -pruN 7.1.0-4/debian/salsa-ci.yml 7.2.0-0ubuntu1/debian/salsa-ci.yml
--- 7.1.0-4/debian/salsa-ci.yml	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/salsa-ci.yml	1970-01-01 00:00:00.000000000 +0000
@@ -1,6 +0,0 @@
-include:
-  - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
-  - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
-
-variables:
-  SALSA_CI_DISABLE_AUTOPKGTEST: 1
diff -pruN 7.1.0-4/debian/source/options 7.2.0-0ubuntu1/debian/source/options
--- 7.1.0-4/debian/source/options	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/source/options	2025-07-16 22:35:05.000000000 +0000
@@ -1 +1,2 @@
 extend-diff-ignore = "^[^/]*[.]egg-info/"
+extend-diff-ignore = "^.launchpad.yaml"
diff -pruN 7.1.0-4/debian/tests/control 7.2.0-0ubuntu1/debian/tests/control
--- 7.1.0-4/debian/tests/control	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/tests/control	2025-07-16 22:35:05.000000000 +0000
@@ -1,5 +1,3 @@
-Tests: unittests
-Depends:
- @,
- @builddeps@,
-Restrictions: allow-stderr needs-root
+Tests: python-import
+Depends: @, @builddeps@, python3-os-testr, python3-all
+Restrictions: allow-stderr
diff -pruN 7.1.0-4/debian/tests/python-import 7.2.0-0ubuntu1/debian/tests/python-import
--- 7.1.0-4/debian/tests/python-import	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/tests/python-import	2025-07-16 22:35:05.000000000 +0000
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+set -e
+
+MODULE_NAME=$(python3 setup.py --name | sed 's/\./_/g')
+
+for py in $(py3versions --supported 2>/dev/null) ; do
+    cd "$AUTOPKGTEST_TMP"
+    echo "Testing with $py:"
+    $py -c "import $MODULE_NAME; print($MODULE_NAME)"
+done
diff -pruN 7.1.0-4/debian/tests/unittests 7.2.0-0ubuntu1/debian/tests/unittests
--- 7.1.0-4/debian/tests/unittests	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/tests/unittests	1970-01-01 00:00:00.000000000 +0000
@@ -1,5 +0,0 @@
-#!/bin/sh
-
-set -e
-
-pkgos-dh_auto_test --no-py2 'oslo_log\.tests\.unit\.(?!test_log\.LogConfigTestCase\.test_log_config_append_unreadable|test_log\.OSJournalHandlerTestCase\.test_emit|test_log\.OSJournalHandlerTestCase\.test_emit_exception|test_log\.LogConfigTestCase\.test_log_config_append_invalid|test_rate_limit\.LogRateLimitTestCase\.test_rate_limit|test_rate_limit\.LogRateLimitTestCase\.test_rate_limit_except_level)'
diff -pruN 7.1.0-4/debian/upstream/signing-key.asc 7.2.0-0ubuntu1/debian/upstream/signing-key.asc
--- 7.1.0-4/debian/upstream/signing-key.asc	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/upstream/signing-key.asc	2025-07-16 22:35:05.000000000 +0000
@@ -0,0 +1,34 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+
+mDMEZ92jlhYJKwYBBAHaRw8BAQdAnSMr01EpuQHlcTQ8c0ENVDFs9mi/TdWB0IlG
+ZF1eC2S0Qk9wZW5TdGFjayBJbmZyYSAoMjAyNS4yL0ZsYW1pbmdvIEN5Y2xlKSA8
+aW5mcmEtcm9vdEBvcGVuc3RhY2sub3JnPoiWBBMWCAA+FiEExxsAfvl4h/2PtjZc
+60/W1hjmIYEFAmfdo5YCGwMFCQFj9QAFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AA
+CgkQ60/W1hjmIYElLAEAkMjANVr+kVjZGp8KtliT+ySFAqoCQceuscYt7WmeD4wA
+/2gHNfFDJwkWn9JY9mCR2y7gwf6skTWl3ssPogTa84wDiHUEEBYIAB0WIQQiKE9p
+2ezN8994GXkccRrxk/+OVAUCZ92k6wAKCRAccRrxk/+OVMQGAQD0X/Eow2mK/YzZ
+rMO60g2KI767/rnKJWKFUTCZCfswxwD/WxuGjGRB98RZ9IbCcmaUvRqHf9812h60
+/RCoB4AtiwSJAjMEEAEKAB0WIQSXrklvwC3sn8NTsudI+ZYRQ0lYKQUCZ92vKwAK
+CRBI+ZYRQ0lYKdthD/wJh0uxw05WsmFwjuds82JdnH9ow3OdG/0bhds8eEvgYuQe
+ZEQ9/RC5hJ+SiV+/zclIaG+xYHW3VkZUgOmmLxRzmqFbWbDm5yKp7jTqM2zYB4Jx
+EiLB4dWHZFmrcqfkJ06nXVMjGkj73N+DqHWQ6hleaiE7tcbI++w1AN7niL0rW008
+iP8IHoWLh2dJxQlcheVdjCe0jEU3qO8KxhUTeARPD/Vp1CpJWlq9vWs9/bweMrtj
+FsQwxBiZcQ/0zXDnQFUKpbNDFjQZnjmmwTqhopquL5e5mZWr0NussI20JXyZHj7T
+N5ikDAFPf9iM1Apb+/g9njGUgYFEOgEJuDr1oLolZ+9+7uZrKGD1gmdY7pVG12Xn
+2QJ3rft/Wy8Obac+TdA+UoEYQu4LOUpUOmPOcXE/8/fTxybkQGOZm1Ufaddz+6ee
+uHBbIaxI1kh5MrxH5cIaEkvdjOGg+bMyq7C8CE8WgSEN/JiupEZYgDduOSuqGHDp
++9ydEkanNjGN+K4rXJ7ABBv9freINx5kmCAaDzXeIAL8n1/Rzd6Z/acOlC9omDM0
+mYKKIfLMp6Rp7SKnB37Tp0dKGP4r/SJsx5Sxn7XrktVJ1ht5ByipDD6VBN3+OQPx
+56pRLDCk9EFDjbOW0iKzyPx+Nya5G9CN9AqQXe1MlHsFn+q7DEUSmlGZfvtjN7g4
+BGfdo5YSCisGAQQBl1UBBQEBB0DHSvmmZUEZ94olzKZSHa2HBCWhrhOVNFn/0ag8
+KyY5fQMBCAeIfgQYFggAJhYhBMcbAH75eIf9j7Y2XOtP1tYY5iGBBQJn3aOWAhsM
+BQkBY/UAAAoJEOtP1tYY5iGB6XcA+wY0JUi2ZUqH0CRs4EfS6VML/7u08g8ZByN4
+DZ2htqOGAQDmGHHjpMhKz04eDXLpNO6UZ/Q6LnqEXztW8eBXVtiZALgzBGfdpHYW
+CSsGAQQB2kcPAQEHQKH/4Td8MRK/9UxGyPqWWaZl88m4xE48XM4kP6w3asRViO8E
+GBYIACAWIQTHGwB++XiH/Y+2NlzrT9bWGOYhgQUCZ92kdgIbAgCBCRDrT9bWGOYh
+gXYgBBkWCAAdFiEE3cFPzrMpT3Q4I7HG9zFcLOa3NF0FAmfdpHYACgkQ9zFcLOa3
+NF1xqwEA3muioM6tJtSbiCUCDau2QnalBkfov/A2FFIxvnyHbH0A/051M0O09Tcl
+E7tAieH8W63Jhg3n/GzKl36hXqh3ANML8kIA/0eu6JgK+F0s8iiy+sQecTD7W38B
+A8CSZ29ANdlMwzf7AP9araqMvKRpTMAzhQ+1Eluh8FmXQhzeZDhlIZ8DQDQ/CQ==
+=FVKc
+-----END PGP PUBLIC KEY BLOCK-----
diff -pruN 7.1.0-4/debian/watch 7.2.0-0ubuntu1/debian/watch
--- 7.1.0-4/debian/watch	2025-05-26 06:23:58.000000000 +0000
+++ 7.2.0-0ubuntu1/debian/watch	2025-07-16 22:35:05.000000000 +0000
@@ -1,3 +1,3 @@
-version=4
-opts="mode=git,uversionmangle=s/\.0rc/~rc/;s/\.0b1/~b1/;s/\.0b2/~b2/;s/\.0b3/~b3/" \
-https://github.com/openstack/oslo.log refs/tags/(\d[brc\d\.]+)
+version=3
+opts=uversionmangle=s/\.(b|rc)/~$1/,pgpsigurlmangle=s/$/.asc/ \
+    http://tarballs.openstack.org/oslo.log/ oslo.log-(\d.*)\.tar\.gz
diff -pruN 7.1.0-4/doc/source/configuration/index.rst 7.2.0-0ubuntu1/doc/source/configuration/index.rst
--- 7.1.0-4/doc/source/configuration/index.rst	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/doc/source/configuration/index.rst	2025-07-10 09:20:29.000000000 +0000
@@ -127,14 +127,14 @@ oslo.context.*
      * The name of the authenticated user, if available.
    - * ``%(user)s``
      * The ID of the authenticated user, if available.
-   - * ``%(tenant_name)s``
-     * The name of the authenticated tenant, if available.
-   - * ``%(tenant)s``
-     * The ID of the authenticated tenant, if available.
+   - * ``%(project_name)s``
+     * The name of the authenticated project, if available.
+   - * ``%(project)s``
+     * The ID of the authenticated project, if available.
    - * ``%(user_domain)s``
      * The ID of the authenticated user domain, if available.
    - * ``%(project_domain)s``
-     * The ID of the authenticated project/tenant, if available.
+     * The ID of the authenticated project, if available.
    - * ``%(request_id)s``
      * The ID of the current request. This value can be used to tie
        multiple log messages together as relating to the same
diff -pruN 7.1.0-4/doc/source/user/examples/usage_context.py 7.2.0-0ubuntu1/doc/source/user/examples/usage_context.py
--- 7.1.0-4/doc/source/user/examples/usage_context.py	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/doc/source/user/examples/usage_context.py	2025-07-10 09:20:29.000000000 +0000
@@ -80,6 +80,6 @@ if __name__ == '__main__':
     LOG.info("Welcome to Oslo Logging")
     LOG.info("Without context")
     context.RequestContext(user='6ce90b4d',
-                           tenant='d6134462',
+                           project='d6134462',
                            domain='a6b9360e')
     LOG.info("With context")
diff -pruN 7.1.0-4/doc/source/user/guidelines.rst 7.2.0-0ubuntu1/doc/source/user/guidelines.rst
--- 7.1.0-4/doc/source/user/guidelines.rst	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/doc/source/user/guidelines.rst	2025-07-10 09:20:29.000000000 +0000
@@ -281,7 +281,7 @@ REST API deprecation warnings
 - Should **not** be logged any higher than ``DEBUG``, since these are
   not operator-facing messages.
 
-- Should be logged no more than once per REST API usage / tenant,
+- Should be logged no more than once per REST API usage / project,
   definitely not on *every* REST API call.
 
 **Rationale:** The users of the REST API don't have access to the
diff -pruN 7.1.0-4/oslo.log.egg-info/PKG-INFO 7.2.0-0ubuntu1/oslo.log.egg-info/PKG-INFO
--- 7.1.0-4/oslo.log.egg-info/PKG-INFO	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo.log.egg-info/PKG-INFO	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1,74 @@
+Metadata-Version: 2.1
+Name: oslo.log
+Version: 7.2.0
+Summary: oslo.log library
+Home-page: https://docs.openstack.org/oslo.log/latest
+Author: OpenStack
+Author-email: openstack-discuss@lists.openstack.org
+Classifier: Environment :: OpenStack
+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.9
+Classifier: Programming Language :: Python :: 3.10
+Classifier: Programming Language :: Python :: 3.11
+Classifier: Programming Language :: Python :: 3.12
+Classifier: Programming Language :: Python :: 3 :: Only
+Classifier: Programming Language :: Python :: Implementation :: CPython
+Requires-Python: >=3.9
+License-File: LICENSE
+Requires-Dist: pbr>=3.1.1
+Requires-Dist: oslo.config>=5.2.0
+Requires-Dist: oslo.context>=2.21.0
+Requires-Dist: oslo.i18n>=3.20.0
+Requires-Dist: oslo.utils>=3.36.0
+Requires-Dist: oslo.serialization>=2.25.0
+Requires-Dist: python-dateutil>=2.7.0
+Requires-Dist: debtcollector>=3.0.0
+Provides-Extra: fixtures
+Requires-Dist: fixtures>=3.0.0; extra == "fixtures"
+Provides-Extra: systemd
+Requires-Dist: systemd-python>=234; extra == "systemd"
+Provides-Extra: test
+Requires-Dist: stestr>=2.0.0; extra == "test"
+Requires-Dist: testtools>=2.3.0; extra == "test"
+Requires-Dist: oslotest>=3.3.0; extra == "test"
+Requires-Dist: coverage>=4.5.1; extra == "test"
+Requires-Dist: fixtures>=3.0.0; extra == "test"
+Requires-Dist: eventlet>=0.38.2; extra == "test"
+
+========================
+Team and repository tags
+========================
+
+.. image:: https://governance.openstack.org/tc/badges/oslo.log.svg
+    :target: https://governance.openstack.org/tc/reference/tags/index.html
+
+.. Change things from this point on
+
+================================
+oslo.log -- Oslo Logging Library
+================================
+
+.. image:: https://img.shields.io/pypi/v/oslo.log.svg
+    :target: https://pypi.org/project/oslo.log/
+    :alt: Latest Version
+
+.. image:: https://img.shields.io/pypi/dm/oslo.log.svg
+    :target: https://pypi.org/project/oslo.log/
+    :alt: Downloads
+
+The oslo.log (logging) configuration library provides standardized
+configuration for all openstack projects. It also provides custom
+formatters, handlers and support for context specific
+logging (like resource id's etc).
+
+* Free software: Apache license
+* Documentation: https://docs.openstack.org/oslo.log/latest/
+* Source: https://opendev.org/openstack/oslo.log
+* Bugs: https://bugs.launchpad.net/oslo.log
+* Release notes: https://docs.openstack.org/releasenotes/oslo.log/
+
diff -pruN 7.1.0-4/oslo.log.egg-info/SOURCES.txt 7.2.0-0ubuntu1/oslo.log.egg-info/SOURCES.txt
--- 7.1.0-4/oslo.log.egg-info/SOURCES.txt	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo.log.egg-info/SOURCES.txt	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1,140 @@
+.coveragerc
+.mailmap
+.pre-commit-config.yaml
+.stestr.conf
+.zuul.yaml
+AUTHORS
+CONTRIBUTING.rst
+ChangeLog
+HACKING.rst
+LICENSE
+README.rst
+pyproject.toml
+requirements.txt
+setup.cfg
+setup.py
+test-requirements.txt
+tox.ini
+doc/requirements.txt
+doc/source/conf.py
+doc/source/index.rst
+doc/source/admin/advanced_config.rst
+doc/source/admin/example_nova.rst
+doc/source/admin/index.rst
+doc/source/admin/journal.rst
+doc/source/admin/log_rotation.rst
+doc/source/admin/nova_sample.conf
+doc/source/configuration/index.rst
+doc/source/contributor/index.rst
+doc/source/install/index.rst
+doc/source/reference/fixtures.rst
+doc/source/reference/formatters.rst
+doc/source/reference/handlers.rst
+doc/source/reference/helpers.rst
+doc/source/reference/index.rst
+doc/source/reference/log.rst
+doc/source/reference/versionutils.rst
+doc/source/user/examples.rst
+doc/source/user/guidelines.rst
+doc/source/user/history.rst
+doc/source/user/index.rst
+doc/source/user/usage.rst
+doc/source/user/examples/_i18n.py
+doc/source/user/examples/oslo_logging.py
+doc/source/user/examples/python_logging.py
+doc/source/user/examples/usage.py
+doc/source/user/examples/usage_context.py
+doc/source/user/examples/usage_helper.py
+oslo.log.egg-info/PKG-INFO
+oslo.log.egg-info/SOURCES.txt
+oslo.log.egg-info/dependency_links.txt
+oslo.log.egg-info/entry_points.txt
+oslo.log.egg-info/not-zip-safe
+oslo.log.egg-info/pbr.json
+oslo.log.egg-info/requires.txt
+oslo.log.egg-info/top_level.txt
+oslo_log/__init__.py
+oslo_log/_i18n.py
+oslo_log/_options.py
+oslo_log/formatters.py
+oslo_log/handlers.py
+oslo_log/helpers.py
+oslo_log/log.py
+oslo_log/pipe_mutex.py
+oslo_log/rate_limit.py
+oslo_log/version.py
+oslo_log/versionutils.py
+oslo_log/cmds/__init__.py
+oslo_log/cmds/convert_json.py
+oslo_log/fixture/__init__.py
+oslo_log/fixture/logging_error.py
+oslo_log/fixture/setlevel.py
+oslo_log/locale/de/LC_MESSAGES/oslo_log.po
+oslo_log/locale/en_GB/LC_MESSAGES/oslo_log.po
+oslo_log/locale/es/LC_MESSAGES/oslo_log.po
+oslo_log/locale/ja/LC_MESSAGES/oslo_log.po
+oslo_log/tests/__init__.py
+oslo_log/tests/unit/__init__.py
+oslo_log/tests/unit/test_convert_json.py
+oslo_log/tests/unit/test_custom_loghandler.py
+oslo_log/tests/unit/test_formatters.py
+oslo_log/tests/unit/test_helpers.py
+oslo_log/tests/unit/test_log.py
+oslo_log/tests/unit/test_pipe_mutex.py
+oslo_log/tests/unit/test_rate_limit.py
+oslo_log/tests/unit/test_versionutils.py
+oslo_log/tests/unit/fixture/__init__.py
+oslo_log/tests/unit/fixture/test_logging_error.py
+oslo_log/tests/unit/fixture/test_setlevel.py
+releasenotes/notes/.placeholder
+releasenotes/notes/add-context-section-0b2f411ec64f42f6.yaml
+releasenotes/notes/add-facility-to-journal-e10bf7002cc19dd3.yaml
+releasenotes/notes/add-reno-e4fedb11ece56f1e.yaml
+releasenotes/notes/add-system_scope-to-logging_user_identity_format-0581ce5070740375.yaml
+releasenotes/notes/always-add-error-text-715022964364ffa0.yaml
+releasenotes/notes/deprecate-eventlet-monkey_patch-f6b37295e367d6c0.yaml
+releasenotes/notes/deprecate-watch-log-file-ba9524ae872e7c01.yaml
+releasenotes/notes/deprecate-windows-support-75e6ac72310d5e72.yaml
+releasenotes/notes/drop-python27-support-0fe4909a5468feb3.yaml
+releasenotes/notes/info-logging-7b7be9fc7a95aebc.yaml
+releasenotes/notes/init-global-request-id-eb2031bc221e5fb7.yaml
+releasenotes/notes/is_debug_enabled-d7afee4c811a46df.yaml
+releasenotes/notes/jsonformatter-repr-fd616eb6fa6caeb3.yaml
+releasenotes/notes/log-global_request_id-f97e6d663e8a80b3.yaml
+releasenotes/notes/log-rotation-595f8232cd987a6d.yaml
+releasenotes/notes/log_color-531437cab4477bcb.yaml
+releasenotes/notes/native-threads-logging-cc84f7288c4835a0.yaml
+releasenotes/notes/reload_log_config-743817192b1172b6.yaml
+releasenotes/notes/remove-log-format-b4b949701cee3315.yaml
+releasenotes/notes/remove-py38-c1a112cdd497e797.yaml
+releasenotes/notes/remove-syslog-rfc-format-7a06772c0bb48e9b.yaml
+releasenotes/notes/remove-verbose-option-d0d1381e182d1be1.yaml
+releasenotes/notes/remove-windows-c2e4c97f19082d27.yaml
+releasenotes/notes/systemd-journal-support-fcbc34b3c5ce93ec.yaml
+releasenotes/notes/use-json-option-96f71da54a3b9a18.yaml
+releasenotes/notes/use-project-in-user-identity-93fd6e0a2e434a6f.yaml
+releasenotes/notes/use_stderr_default_false-50d846b88cf2be90.yaml
+releasenotes/notes/windows-eventlog-2beb0a6010e342eb.yaml
+releasenotes/source/2023.1.rst
+releasenotes/source/2023.2.rst
+releasenotes/source/2024.1.rst
+releasenotes/source/2024.2.rst
+releasenotes/source/2025.1.rst
+releasenotes/source/conf.py
+releasenotes/source/index.rst
+releasenotes/source/liberty.rst
+releasenotes/source/mitaka.rst
+releasenotes/source/newton.rst
+releasenotes/source/ocata.rst
+releasenotes/source/pike.rst
+releasenotes/source/queens.rst
+releasenotes/source/rocky.rst
+releasenotes/source/stein.rst
+releasenotes/source/train.rst
+releasenotes/source/unreleased.rst
+releasenotes/source/ussuri.rst
+releasenotes/source/victoria.rst
+releasenotes/source/_static/.placeholder
+releasenotes/source/_templates/.placeholder
+releasenotes/source/locale/en_GB/LC_MESSAGES/releasenotes.po
+releasenotes/source/locale/fr/LC_MESSAGES/releasenotes.po
\ No newline at end of file
diff -pruN 7.1.0-4/oslo.log.egg-info/dependency_links.txt 7.2.0-0ubuntu1/oslo.log.egg-info/dependency_links.txt
--- 7.1.0-4/oslo.log.egg-info/dependency_links.txt	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo.log.egg-info/dependency_links.txt	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1 @@
+
diff -pruN 7.1.0-4/oslo.log.egg-info/entry_points.txt 7.2.0-0ubuntu1/oslo.log.egg-info/entry_points.txt
--- 7.1.0-4/oslo.log.egg-info/entry_points.txt	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo.log.egg-info/entry_points.txt	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1,5 @@
+[console_scripts]
+convert-json = oslo_log.cmds.convert_json:main
+
+[oslo.config.opts]
+oslo.log = oslo_log._options:list_opts
diff -pruN 7.1.0-4/oslo.log.egg-info/not-zip-safe 7.2.0-0ubuntu1/oslo.log.egg-info/not-zip-safe
--- 7.1.0-4/oslo.log.egg-info/not-zip-safe	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo.log.egg-info/not-zip-safe	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1 @@
+
diff -pruN 7.1.0-4/oslo.log.egg-info/pbr.json 7.2.0-0ubuntu1/oslo.log.egg-info/pbr.json
--- 7.1.0-4/oslo.log.egg-info/pbr.json	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo.log.egg-info/pbr.json	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1 @@
+{"git_version": "910c33a", "is_release": true}
\ No newline at end of file
diff -pruN 7.1.0-4/oslo.log.egg-info/requires.txt 7.2.0-0ubuntu1/oslo.log.egg-info/requires.txt
--- 7.1.0-4/oslo.log.egg-info/requires.txt	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo.log.egg-info/requires.txt	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1,22 @@
+pbr>=3.1.1
+oslo.config>=5.2.0
+oslo.context>=2.21.0
+oslo.i18n>=3.20.0
+oslo.utils>=3.36.0
+oslo.serialization>=2.25.0
+python-dateutil>=2.7.0
+debtcollector>=3.0.0
+
+[fixtures]
+fixtures>=3.0.0
+
+[systemd]
+systemd-python>=234
+
+[test]
+stestr>=2.0.0
+testtools>=2.3.0
+oslotest>=3.3.0
+coverage>=4.5.1
+fixtures>=3.0.0
+eventlet>=0.38.2
diff -pruN 7.1.0-4/oslo.log.egg-info/top_level.txt 7.2.0-0ubuntu1/oslo.log.egg-info/top_level.txt
--- 7.1.0-4/oslo.log.egg-info/top_level.txt	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo.log.egg-info/top_level.txt	2025-07-10 09:21:09.000000000 +0000
@@ -0,0 +1 @@
+oslo_log
diff -pruN 7.1.0-4/oslo_log/pipe_mutex.py 7.2.0-0ubuntu1/oslo_log/pipe_mutex.py
--- 7.1.0-4/oslo_log/pipe_mutex.py	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo_log/pipe_mutex.py	2025-07-10 09:20:29.000000000 +0000
@@ -13,19 +13,76 @@
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+import asyncio
+from asyncio.exceptions import TimeoutError as AsyncioTimeoutError
 import errno
 import fcntl
+import importlib.metadata
 
 import eventlet
+import eventlet.asyncio
 import eventlet.debug
 import eventlet.greenthread
 import eventlet.hubs
+import eventlet.hubs.asyncio
+import eventlet.patcher
 
 # We want the blocking APIs, because we set file descriptors to non-blocking.
 os = eventlet.patcher.original("os")
+# Used to communicate between real threads:
+SimpleQueue = eventlet.patcher.original("queue").SimpleQueue
+# Real OS-level threads:
+threading = eventlet.patcher.original("threading")
 
 
-class PipeMutex:
+class _BaseMutex:
+    """Shared code for different mutex implementations."""
+
+    def __init__(self):
+        self.owner = None
+        self.recursion_depth = 0
+
+    def acquire(self, blocking=True):
+        """Acquire the mutex.
+
+        If called with blocking=False, returns True if the mutex was
+        acquired and False if it wasn't. Otherwise, blocks until the mutex
+        is acquired and returns True.
+        This lock is recursive; the same greenthread may acquire it as many
+        times as it wants to, though it must then release it that many times
+        too.
+        """
+        current_greenthread_id = id(eventlet.greenthread.getcurrent())
+        if self.owner == current_greenthread_id:
+            self.recursion_depth += 1
+            return True
+
+        return self._acquire_eventlet(blocking, current_greenthread_id)
+
+    def release(self):
+        """Release the mutex."""
+        current_greenthread_id = id(eventlet.greenthread.getcurrent())
+        if self.owner != current_greenthread_id:
+            raise RuntimeError("cannot release un-acquired lock")
+
+        if self.recursion_depth > 0:
+            self.recursion_depth -= 1
+            return
+
+        self.owner = None
+        self._release_eventlet()
+
+    def close(self):
+        """Close the mutex.
+
+        This releases its file descriptors.
+        You can't use a mutex after it's been closed.
+        """
+        self.owner = None
+        self.recursion_depth = 0
+
+
+class _ReallyPipeMutex(_BaseMutex):
     """Mutex using a pipe.
 
     Works across both greenlets and real threads, even at the same time.
@@ -34,6 +91,8 @@ class PipeMutex:
     Related eventlet bug: https://github.com/eventlet/eventlet/issues/432
     """
     def __init__(self):
+        super().__init__()
+
         self.rfd, self.wfd = os.pipe()
 
         # You can't create a pipe in non-blocking mode; you must set it
@@ -42,9 +101,6 @@ class PipeMutex:
         fcntl.fcntl(self.rfd, fcntl.F_SETFL, rflags | os.O_NONBLOCK)
         os.write(self.wfd, b'-')  # start unlocked
 
-        self.owner = None
-
-        self.recursion_depth = 0
         # Usually, it's an error to have multiple greenthreads all waiting
         # to read the same file descriptor. It's often a sign of inadequate
         # concurrency control; for example, if you have two greenthreads
@@ -61,21 +117,7 @@ class PipeMutex:
         # our calls to trampoline(), but eventlet does not support that.
         eventlet.debug.hub_prevent_multiple_readers(False)
 
-    def acquire(self, blocking=True):
-        """Acquire the mutex.
-
-        If called with blocking=False, returns True if the mutex was
-        acquired and False if it wasn't. Otherwise, blocks until the mutex
-        is acquired and returns True.
-        This lock is recursive; the same greenthread may acquire it as many
-        times as it wants to, though it must then release it that many times
-        too.
-        """
-        current_greenthread_id = id(eventlet.greenthread.getcurrent())
-        if self.owner == current_greenthread_id:
-            self.recursion_depth += 1
-            return True
-
+    def _acquire_eventlet(self, blocking, current_greenthread_id):
         while True:
             try:
                 # If there is a byte available, this will read it and remove
@@ -96,17 +138,7 @@ class PipeMutex:
                 # else writes to self.wfd.
                 eventlet.hubs.trampoline(self.rfd, read=True)
 
-    def release(self):
-        """Release the mutex."""
-        current_greenthread_id = id(eventlet.greenthread.getcurrent())
-        if self.owner != current_greenthread_id:
-            raise RuntimeError("cannot release un-acquired lock")
-
-        if self.recursion_depth > 0:
-            self.recursion_depth -= 1
-            return
-
-        self.owner = None
+    def _release_eventlet(self):
         os.write(self.wfd, b'X')
 
     def close(self):
@@ -121,8 +153,7 @@ class PipeMutex:
         if self.rfd is not None:
             os.close(self.rfd)
             self.rfd = None
-        self.owner = None
-        self.recursion_depth = 0
+        super().close()
 
     def __del__(self):
         # We need this so we don't leak file descriptors. Otherwise, if you
@@ -146,6 +177,94 @@ class PipeMutex:
         self.release()
 
 
+class _AsyncioMutex(_BaseMutex):
+    """Alternative implementation of mutex for eventlet asyncio hub.
+
+    When using the eventlet asyncio hub, multiple file descriptors as readers
+    aren't supported.  So instead, we use two levels of locking:
+
+        1. A normal RLock, for locking across OS threads.
+
+        2. An ``asyncio.Lock`` for locking across greenlets within a single OS
+           thread (each OS thread running greenlets has its own asyncio loop)
+    """
+    def __init__(self):
+        super().__init__()
+        self._asyncio_lock = asyncio.Lock()
+        self._threading_lock = threading.RLock()
+
+    async def _asyncio_acquire(self, blocking, current_greenthread_id):
+        if blocking:
+            timeout = None
+        else:
+            timeout = 0.000001
+        try:
+            await asyncio.wait_for(
+                self._asyncio_lock.acquire(), timeout=timeout
+            )
+        except AsyncioTimeoutError:
+            return False
+        else:
+            self.owner = current_greenthread_id
+            return True
+
+    def _acquire_eventlet(self, blocking, current_greenthread_id):
+        return eventlet.asyncio.spawn_for_awaitable(
+            self._asyncio_acquire(blocking, current_greenthread_id)
+        ).wait()
+
+    def acquire(self, blocking=True):
+        # First, acquire the RLock:
+        rlock_acquired = self._threading_lock.acquire(blocking=False)
+        if not rlock_acquired and not blocking:
+            return False
+        # Simulate blocking while allowing other greenlets to run:
+        while not rlock_acquired:
+            rlock_acquired = self._threading_lock.acquire(blocking=False)
+            # The chance of hitting this path is usually quite low (it requires
+            # multiple _OS_ threads having a conflict) and sleeping for too
+            # short a time leads to very slow results in one of the tests,
+            # perhaps due to lots of context switching overhead. So compromise
+            # on a short but not too-short sleep.
+            eventlet.sleep(0.0001)
+        # Then, do the eventlet locking:
+        return super().acquire(blocking=blocking)
+
+    # Preserve documentation, without copy/pasting:
+    acquire.__doc__ = _BaseMutex.acquire.__doc__
+
+    def _release_eventlet(self):
+        self._asyncio_lock.release()
+
+    def release(self):
+        """Release the mutex."""
+        # We release in reverse order from acquire(), first eventlet and then
+        # the RLock:
+        super().release()
+        self._threading_lock.release()
+
+    def close(self):
+        """Close the mutex."""
+        del self._asyncio_lock
+        del self._threading_lock
+        super().close()
+
+
+_HUB = eventlet.hubs.get_hub()
+if isinstance(_HUB, eventlet.hubs.asyncio.Hub):
+    major, minor, patch = map(
+        int,
+        importlib.metadata.version("eventlet").split(".")[:3]
+    )
+    if (major, minor, patch) < (0, 38, 2):
+        raise RuntimeError(
+            "eventlet 0.38.2 or later is required when using asyncio hub"
+        )
+    PipeMutex = _AsyncioMutex
+else:
+    PipeMutex = _ReallyPipeMutex
+
+
 def pipe_createLock(self):
     """Replacement for logging.Handler.createLock method."""
     self.lock = PipeMutex()
diff -pruN 7.1.0-4/oslo_log/tests/unit/test_log.py 7.2.0-0ubuntu1/oslo_log/tests/unit/test_log.py
--- 7.1.0-4/oslo_log/tests/unit/test_log.py	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/oslo_log/tests/unit/test_log.py	2025-07-10 09:20:29.000000000 +0000
@@ -498,7 +498,7 @@ class JSONFormatterTestCase(LogTestBase)
         context = data['context']
         self.assertNotIn('context', extra)
         self.assertEqual('value', extra['key'])
-        self.assertEqual(ctx.user, context['user'])
+        self.assertEqual(ctx.user_id, context['user'])
         self.assertEqual(ctx.user_name, context['user_name'])
         self.assertEqual(ctx.project_name, context['project_name'])
         self.assertEqual('test-json', data['name'])
@@ -700,7 +700,7 @@ class FluentFormatterTestCase(LogTestBas
         extra = data['extra']
         context = data['context']
         self.assertEqual('value', extra['key'])
-        self.assertEqual(local_context.user, context['user'])
+        self.assertEqual(local_context.user_id, context['user'])
         self.assertEqual('test-fluent', data['name'])
 
         self.assertIn('request_id', context)
diff -pruN 7.1.0-4/pyproject.toml 7.2.0-0ubuntu1/pyproject.toml
--- 7.1.0-4/pyproject.toml	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/pyproject.toml	2025-07-10 09:20:29.000000000 +0000
@@ -0,0 +1,3 @@
+[build-system]
+requires = ["pbr>=6.1.1"]
+build-backend = "pbr.build"
diff -pruN 7.1.0-4/releasenotes/source/2025.1.rst 7.2.0-0ubuntu1/releasenotes/source/2025.1.rst
--- 7.1.0-4/releasenotes/source/2025.1.rst	1970-01-01 00:00:00.000000000 +0000
+++ 7.2.0-0ubuntu1/releasenotes/source/2025.1.rst	2025-07-10 09:20:29.000000000 +0000
@@ -0,0 +1,6 @@
+===========================
+2025.1 Series Release Notes
+===========================
+
+.. release-notes::
+   :branch: stable/2025.1
diff -pruN 7.1.0-4/releasenotes/source/index.rst 7.2.0-0ubuntu1/releasenotes/source/index.rst
--- 7.1.0-4/releasenotes/source/index.rst	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/releasenotes/source/index.rst	2025-07-10 09:20:29.000000000 +0000
@@ -6,6 +6,7 @@
    :maxdepth: 1
 
    unreleased
+   2025.1
    2024.2
    2024.1
    2023.2
diff -pruN 7.1.0-4/setup.cfg 7.2.0-0ubuntu1/setup.cfg
--- 7.1.0-4/setup.cfg	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/setup.cfg	2025-07-10 09:21:09.377556300 +0000
@@ -1,39 +1,44 @@
 [metadata]
 name = oslo.log
 summary = oslo.log library
-description_file =
-    README.rst
+description_file = 
+	README.rst
 author = OpenStack
 author_email = openstack-discuss@lists.openstack.org
 home_page = https://docs.openstack.org/oslo.log/latest
 python_requires = >=3.9
-classifier =
-    Environment :: OpenStack
-    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.9
-    Programming Language :: Python :: 3.10
-    Programming Language :: Python :: 3.11
-    Programming Language :: Python :: 3.12
-    Programming Language :: Python :: 3 :: Only
-    Programming Language :: Python :: Implementation :: CPython
+classifier = 
+	Environment :: OpenStack
+	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.9
+	Programming Language :: Python :: 3.10
+	Programming Language :: Python :: 3.11
+	Programming Language :: Python :: 3.12
+	Programming Language :: Python :: 3 :: Only
+	Programming Language :: Python :: Implementation :: CPython
 
 [files]
-packages =
-    oslo_log
+packages = 
+	oslo_log
 
 [extras]
-fixtures =
-  fixtures>=3.0.0 # Apache-2.0/BSD
-systemd =
-  systemd-python>=234 # LGPLv2+
+fixtures = 
+	fixtures>=3.0.0 # Apache-2.0/BSD
+systemd = 
+	systemd-python>=234 # LGPLv2+
 
 [entry_points]
-oslo.config.opts =
-    oslo.log = oslo_log._options:list_opts
-console_scripts =
-    convert-json = oslo_log.cmds.convert_json:main
+oslo.config.opts = 
+	oslo.log = oslo_log._options:list_opts
+console_scripts = 
+	convert-json = oslo_log.cmds.convert_json:main
+
+[egg_info]
+tag_build = 
+tag_date = 0
+
diff -pruN 7.1.0-4/test-requirements.txt 7.2.0-0ubuntu1/test-requirements.txt
--- 7.1.0-4/test-requirements.txt	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/test-requirements.txt	2025-07-10 09:20:29.000000000 +0000
@@ -6,4 +6,4 @@ coverage>=4.5.1 # Apache-2.0
 
 fixtures>=3.0.0 # Apache-2.0/BSD
 
-eventlet>=0.30.1 # MIT
+eventlet>=0.38.2 # MIT
diff -pruN 7.1.0-4/tox.ini 7.2.0-0ubuntu1/tox.ini
--- 7.1.0-4/tox.ini	2025-02-15 15:31:39.000000000 +0000
+++ 7.2.0-0ubuntu1/tox.ini	2025-07-10 09:20:29.000000000 +0000
@@ -1,19 +1,21 @@
 [tox]
 minversion = 3.18.0
 envlist = py3,py3,pep8
-ignore_basepython_conflict = true
 
 [testenv]
-basepython = python3
 allowlist_externals =
   find
   env
 deps =
   -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
   -r{toxinidir}/test-requirements.txt
-passenv = OSLO_LOG_TEST_EVENTLET
+  -r{toxinidir}/requirements.txt
+passenv =
+  OSLO_LOG_TEST_EVENTLET
+  EVENTLET_HUB
 commands =
   find . -type f -name "*.pyc" -delete
+  python -c "import eventlet.hubs; print('Hub used:', eventlet.hubs.get_hub())"
   stestr run {posargs}
   stestr slowest
 
