Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-oslo.i18n for 
openSUSE:Factory checked in at 2021-12-13 20:44:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-oslo.i18n (Old)
 and      /work/SRC/openSUSE:Factory/.python-oslo.i18n.new.2520 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-oslo.i18n"

Mon Dec 13 20:44:51 2021 rev:18 rq:940201 version:5.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-oslo.i18n/python-oslo.i18n.changes        
2020-10-26 16:17:24.966988347 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-oslo.i18n.new.2520/python-oslo.i18n.changes  
    2021-12-13 20:50:57.784656672 +0100
@@ -1,0 +2,17 @@
+Mon Dec  6 09:08:41 UTC 2021 - cloud-de...@suse.de
+
+- update to version 5.1.0
+  - Changed minversion in tox to 3.18.0
+  - Fix requirements issues
+  - Update master for stable/victoria
+  - Use py3 as the default runtime for tox
+  - Remove all usage of six library
+  - Use TOX_CONSTRAINTS_FILE
+  - Upgrade the pre-commit-hooks version
+  - Remove six.PY3
+  - Adding pre-commit
+  - Add Python3 wallaby unit tests
+  - Switch testing to Xena testing runtime
+  - Fix hacking min version to 3.0.1
+
+-------------------------------------------------------------------

Old:
----
  oslo.i18n-5.0.1.tar.gz

New:
----
  oslo.i18n-5.1.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-oslo.i18n.spec ++++++
--- /var/tmp/diff_new_pack.uacrMX/_old  2021-12-13 20:50:58.168656918 +0100
+++ /var/tmp/diff_new_pack.uacrMX/_new  2021-12-13 20:50:58.172656921 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-oslo.i18n
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2021 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,13 +17,13 @@
 
 
 Name:           python-oslo.i18n
-Version:        5.0.1
+Version:        5.1.0
 Release:        0
 Summary:        OpenStack i18n library
 License:        Apache-2.0
 Group:          Development/Languages/Python
-URL:            https://launchpad.net/oslo.i18n
-Source0:        
https://files.pythonhosted.org/packages/source/o/oslo.i18n/oslo.i18n-5.0.1.tar.gz
+URL:            https://docs.openstack.org/oslo.i18n
+Source0:        
https://files.pythonhosted.org/packages/source/o/oslo.i18n/oslo.i18n-5.1.0.tar.gz
 BuildRequires:  openstack-macros
 BuildRequires:  python3-Babel
 BuildRequires:  python3-mock
@@ -40,9 +40,8 @@
 
 %package -n python3-oslo.i18n
 Summary:        OpenStack i18n library
-Group:          Development/Languages/Python
 Requires:       python3-Babel
-Requires:       python3-six >= 1.10.0
+Requires:       python3-six
 
 %description -n python3-oslo.i18n
 The oslo.i18n library contain utilities for working with internationalization
@@ -53,7 +52,6 @@
 
 %package -n python-oslo.i18n-doc
 Summary:        Documentation for OpenStack i18n library
-Group:          Development/Languages/Python
 BuildRequires:  python3-Sphinx
 BuildRequires:  python3-openstackdocstheme
 BuildRequires:  python3-sphinxcontrib-apidoc
@@ -62,7 +60,7 @@
 Documentation for the oslo.i18n library.
 
 %prep
-%autosetup -p1 -n oslo.i18n-5.0.1
+%autosetup -p1 -n oslo.i18n-5.1.0
 %py_req_cleanup
 
 %build

++++++ _service ++++++
--- /var/tmp/diff_new_pack.uacrMX/_old  2021-12-13 20:50:58.204656941 +0100
+++ /var/tmp/diff_new_pack.uacrMX/_new  2021-12-13 20:50:58.208656944 +0100
@@ -1,8 +1,8 @@
 <services>
   <service mode="disabled" name="renderspec">
-    <param 
name="input-template">https://opendev.org/openstack/rpm-packaging/raw/branch/stable/victoria/openstack/oslo.i18n/oslo.i18n.spec.j2</param>
+    <param 
name="input-template">https://opendev.org/openstack/rpm-packaging/raw/master/openstack/oslo.i18n/oslo.i18n.spec.j2</param>
     <param name="output-name">python-oslo.i18n.spec</param>
-    <param 
name="requirements">https://opendev.org/openstack/oslo.i18n/raw/branch/stable/victoria/requirements.txt</param>
+    <param 
name="requirements">https://opendev.org/openstack/oslo.i18n/raw/master/requirements.txt</param>
     <param name="changelog-email">cloud-de...@suse.de</param>
     <param name="changelog-provider">gh,openstack,oslo.i18n</param>
   </service>

++++++ oslo.i18n-5.0.1.tar.gz -> oslo.i18n-5.1.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/.pre-commit-config.yaml 
new/oslo.i18n-5.1.0/.pre-commit-config.yaml
--- old/oslo.i18n-5.0.1/.pre-commit-config.yaml 1970-01-01 01:00:00.000000000 
+0100
+++ new/oslo.i18n-5.1.0/.pre-commit-config.yaml 2021-09-06 10:27:12.000000000 
+0200
@@ -0,0 +1,39 @@
+# We from the Oslo project decided to pin repos based on the
+# commit hash instead of the version tag to prevend arbitrary
+# code from running in developer's machines.  To update to a
+# newer version, run `pre-commit autoupdate` and then replace
+# the newer versions with their commit hash.
+
+default_language_version:
+  python: python3
+
+repos:
+  - repo: https://github.com/pre-commit/pre-commit-hooks
+    rev: 9136088a246768144165fcc3ecc3d31bb686920a # v3.3.0
+    hooks:
+      - id: trailing-whitespace
+      # Replaces or checks mixed line ending
+      - id: mixed-line-ending
+        args: ['--fix', 'lf']
+        exclude: '.*\.(svg)$'
+      # Forbid files which have a UTF-8 byte-order marker
+      - id: check-byte-order-marker
+      # Checks that non-binary executables have a proper shebang
+      - id: check-executables-have-shebangs
+      # Check for files that contain merge conflict strings.
+      - id: check-merge-conflict
+      # Check for debugger imports and py37+ breakpoint()
+      # calls in python source
+      - id: debug-statements
+      - id: check-yaml
+        files: .*\.(yaml|yml)$
+  - repo: local
+    hooks:
+      - id: flake8
+        name: flake8
+        additional_dependencies:
+          - hacking>=3.0.1,<3.1.0
+        language: python
+        entry: flake8
+        files: '^.*\.py$'
+        exclude: '^(doc|releasenotes|tools)/.*$'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/.zuul.yaml 
new/oslo.i18n-5.1.0/.zuul.yaml
--- old/oslo.i18n-5.0.1/.zuul.yaml      2020-09-11 21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/.zuul.yaml      2021-09-06 10:27:12.000000000 +0200
@@ -3,8 +3,7 @@
       - check-requirements
       - lib-forward-testing-python3
       - openstack-cover-jobs
-      - openstack-lower-constraints-jobs
-      - openstack-python3-victoria-jobs
+      - openstack-python3-xena-jobs
       - periodic-stable-jobs
       - publish-openstack-docs-pti
       - release-notes-jobs-python3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/AUTHORS new/oslo.i18n-5.1.0/AUTHORS
--- old/oslo.i18n-5.0.1/AUTHORS 2020-09-11 21:19:11.000000000 +0200
+++ new/oslo.i18n-5.1.0/AUTHORS 2021-09-06 10:27:46.000000000 +0200
@@ -20,6 +20,7 @@
 Chuck Short <chu...@redhat.com>
 Corey Bryant <corey.bry...@canonical.com>
 Dan Prince <dpri...@redhat.com>
+Daniel Bengtsson <dbe...@redhat.com>
 Davanum Srinivas <dava...@gmail.com>
 Davanum Srinivas <d...@linux.vnet.ibm.com>
 David Stanek <dsta...@dstanek.com>
@@ -73,6 +74,7 @@
 ZhongShengping <chd...@163.com>
 Zhongyue Luo <zhongyue....@intel.com>
 caoyuan <cao.y...@99cloud.net>
+haixin <hai...@inspur.com>
 howardlee <lihongwe...@inspur.com>
 jacky06 <zhang....@99cloud.net>
 kavithahr <kavith...@nectechnologies.in>
@@ -82,4 +84,8 @@
 ricolin <rico....@easystack.cn>
 tonybrad <zhangyu...@chinaunicom.cn>
 venkatamahesh <venkatamaheshko...@gmail.com>
+wangzihao <wangzi...@yovole.com>
+wu.shiming <wushim...@yovole.com>
+yangyawei <yangya...@inspur.com>
 yanheven <yanhe...@qq.com>
+zhoulinhui <df.s...@foxmail.com>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/ChangeLog 
new/oslo.i18n-5.1.0/ChangeLog
--- old/oslo.i18n-5.0.1/ChangeLog       2020-09-11 21:19:11.000000000 +0200
+++ new/oslo.i18n-5.1.0/ChangeLog       2021-09-06 10:27:46.000000000 +0200
@@ -1,6 +1,22 @@
 CHANGES
 =======
 
+5.1.0
+-----
+
+* Changed minversion in tox to 3.18.0
+* Switch testing to Xena testing runtime
+* Upgrade the pre-commit-hooks version
+* Fix requirements issues
+* Remove all usage of six library
+* Use TOX\_CONSTRAINTS\_FILE
+* Use py3 as the default runtime for tox
+* Fix hacking min version to 3.0.1
+* Remove six.PY3
+* Adding pre-commit
+* Add Python3 wallaby unit tests
+* Update master for stable/victoria
+
 5.0.1
 -----
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/PKG-INFO new/oslo.i18n-5.1.0/PKG-INFO
--- old/oslo.i18n-5.0.1/PKG-INFO        2020-09-11 21:19:11.000000000 +0200
+++ new/oslo.i18n-5.1.0/PKG-INFO        2021-09-06 10:27:47.058373700 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.2
 Name: oslo.i18n
-Version: 5.0.1
+Version: 5.1.0
 Summary: Oslo i18n library
 Home-page: https://docs.openstack.org/oslo.i18n/latest
 Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/doc/source/conf.py 
new/oslo.i18n-5.1.0/doc/source/conf.py
--- old/oslo.i18n-5.0.1/doc/source/conf.py      2020-09-11 21:18:16.000000000 
+0200
+++ new/oslo.i18n-5.1.0/doc/source/conf.py      2021-09-06 10:27:12.000000000 
+0200
@@ -1,4 +1,6 @@
 # -*- coding: utf-8 -*-
+# Copyright (C) 2020 Red Hat, Inc.
+#
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/lower-constraints.txt 
new/oslo.i18n-5.1.0/lower-constraints.txt
--- old/oslo.i18n-5.0.1/lower-constraints.txt   2020-09-11 21:18:16.000000000 
+0200
+++ new/oslo.i18n-5.1.0/lower-constraints.txt   1970-01-01 01:00:00.000000000 
+0100
@@ -1,45 +0,0 @@
-alabaster==0.7.10
-appdirs==1.3.0
-bandit==1.4.0
-coverage==4.0
-debtcollector==1.2.0
-docutils==0.11
-dulwich==0.15.0
-extras==1.0.0
-fixtures==3.0.0
-gitdb==0.6.4
-GitPython==1.0.1
-imagesize==0.7.1
-iso8601==0.1.11
-Jinja2==2.10
-keystoneauth1==3.4.0
-linecache2==1.0.0
-MarkupSafe==1.0
-mox3==0.20.0
-netaddr==0.7.18
-openstackdocstheme==2.2.1
-os-client-config==1.28.0
-oslo.config==5.2.0
-oslotest==3.2.0
-pbr==2.0.0
-Pygments==2.2.0
-python-mimeparse==1.6.0
-python-subunit==1.0.0
-pytz==2013.6
-PyYAML==3.12
-reno==3.1.0
-requests==2.14.2
-requestsexceptions==1.2.0
-rfc3986==0.3.1
-six==1.10.0
-smmap==0.9.0
-snowballstemmer==1.2.1
-Sphinx==2.0.0
-sphinxcontrib-websupport==1.0.1
-stestr==2.0.0
-stevedore==1.20.0
-testscenarios==0.4
-testtools==2.2.0
-traceback2==1.4.0
-unittest2==1.1.0
-wrapt==1.7.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo.i18n.egg-info/PKG-INFO 
new/oslo.i18n-5.1.0/oslo.i18n.egg-info/PKG-INFO
--- old/oslo.i18n-5.0.1/oslo.i18n.egg-info/PKG-INFO     2020-09-11 
21:19:11.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo.i18n.egg-info/PKG-INFO     2021-09-06 
10:27:46.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 1.2
 Name: oslo.i18n
-Version: 5.0.1
+Version: 5.1.0
 Summary: Oslo i18n library
 Home-page: https://docs.openstack.org/oslo.i18n/latest
 Author: OpenStack
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo.i18n.egg-info/SOURCES.txt 
new/oslo.i18n-5.1.0/oslo.i18n.egg-info/SOURCES.txt
--- old/oslo.i18n-5.0.1/oslo.i18n.egg-info/SOURCES.txt  2020-09-11 
21:19:11.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo.i18n.egg-info/SOURCES.txt  2021-09-06 
10:27:47.000000000 +0200
@@ -1,5 +1,6 @@
 .coveragerc
 .mailmap
+.pre-commit-config.yaml
 .stestr.conf
 .zuul.yaml
 AUTHORS
@@ -8,7 +9,6 @@
 HACKING.rst
 LICENSE
 README.rst
-lower-constraints.txt
 requirements.txt
 setup.cfg
 setup.py
@@ -77,6 +77,7 @@
 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
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo.i18n.egg-info/pbr.json 
new/oslo.i18n-5.1.0/oslo.i18n.egg-info/pbr.json
--- old/oslo.i18n-5.0.1/oslo.i18n.egg-info/pbr.json     2020-09-11 
21:19:11.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo.i18n.egg-info/pbr.json     2021-09-06 
10:27:46.000000000 +0200
@@ -1 +1 @@
-{"git_version": "73187bd", "is_release": true}
\ No newline at end of file
+{"git_version": "b031d17", "is_release": true}
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo.i18n.egg-info/requires.txt 
new/oslo.i18n-5.1.0/oslo.i18n.egg-info/requires.txt
--- old/oslo.i18n-5.0.1/oslo.i18n.egg-info/requires.txt 2020-09-11 
21:19:11.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo.i18n.egg-info/requires.txt 2021-09-06 
10:27:46.000000000 +0200
@@ -1,2 +1 @@
 pbr!=2.1.0,>=2.0.0
-six>=1.10.0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/_factory.py 
new/oslo.i18n-5.1.0/oslo_i18n/_factory.py
--- old/oslo.i18n-5.0.1/oslo_i18n/_factory.py   2020-09-11 21:18:16.000000000 
+0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/_factory.py   2021-09-06 10:27:12.000000000 
+0200
@@ -19,8 +19,6 @@
 import gettext
 import os
 
-import six
-
 from oslo_i18n import _lazy
 from oslo_i18n import _locale
 from oslo_i18n import _message
@@ -75,7 +73,7 @@
                                 fallback=True)
         # Use the appropriate method of the translation object based
         # on the python version.
-        m = t.gettext if six.PY3 else t.ugettext
+        m = t.gettext
 
         def f(msg):
             """oslo_i18n.gettextutils translation function."""
@@ -103,7 +101,7 @@
                                 fallback=True)
         # Use the appropriate method of the translation object based
         # on the python version.
-        m = t.gettext if six.PY3 else t.ugettext
+        m = t.gettext
 
         def f(ctx, msg):
             """oslo.i18n.gettextutils translation with context function."""
@@ -140,7 +138,7 @@
                                 fallback=True)
         # Use the appropriate method of the translation object based
         # on the python version.
-        m = t.ngettext if six.PY3 else t.ungettext
+        m = t.ngettext
 
         def f(msgsingle, msgplural, msgcount):
             """oslo.i18n.gettextutils plural translation function."""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/_gettextutils.py 
new/oslo.i18n-5.1.0/oslo_i18n/_gettextutils.py
--- old/oslo.i18n-5.0.1/oslo_i18n/_gettextutils.py      2020-09-11 
21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/_gettextutils.py      2021-09-06 
10:27:12.000000000 +0200
@@ -44,9 +44,9 @@
 
     :param domain: the translation domain
     """
-    from six import moves
+    import builtins
     tf = _factory.TranslatorFactory(domain)
-    moves.builtins.__dict__['_'] = tf.primary
+    builtins.__dict__['_'] = tf.primary
 
 
 _AVAILABLE_LANGUAGES = {}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/_message.py 
new/oslo.i18n-5.1.0/oslo_i18n/_message.py
--- old/oslo.i18n-5.0.1/oslo_i18n/_message.py   2020-09-11 21:18:16.000000000 
+0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/_message.py   2021-09-06 10:27:12.000000000 
+0200
@@ -23,8 +23,6 @@
 import os
 import warnings
 
-import six
-
 from oslo_i18n import _locale
 from oslo_i18n import _translate
 
@@ -35,7 +33,7 @@
 LOG = logging.getLogger(__name__)
 
 
-class Message(six.text_type):
+class Message(str):
     """A Message object is a unicode object that can be translated.
 
     Translation of Message is done explicitly using the translate() method.
@@ -117,7 +115,7 @@
 
         if not has_contextual_form and not has_plural_form:
             # This is the most common case, so check it first.
-            translator = lang.gettext if six.PY3 else lang.ugettext
+            translator = lang.gettext
             translated_message = translator(msgid)
 
         elif has_contextual_form and has_plural_form:
@@ -127,7 +125,7 @@
 
         elif has_contextual_form:
             (msgctx, msgtxt) = msgid
-            translator = lang.gettext if six.PY3 else lang.ugettext
+            translator = lang.gettext
 
             msg_with_ctx = "%s%s%s" % (msgctx, CONTEXT_SEPARATOR, msgtxt)
             translated_message = translator(msg_with_ctx)
@@ -138,7 +136,7 @@
 
         elif has_plural_form:
             (msgsingle, msgplural, msgcount) = msgid
-            translator = lang.ngettext if six.PY3 else lang.ungettext
+            translator = lang.ngettext
             translated_message = translator(msgsingle, msgplural, msgcount)
 
         return translated_message
@@ -184,7 +182,7 @@
         # by the base class (i.e. unicode()), the only thing  we do here is
         # save the original msgid and the parameters in case of a translation
         params = self._sanitize_mod_params(other)
-        unicode_mod = self._safe_translate(six.text_type(self), params)
+        unicode_mod = self._safe_translate(str(self), params)
         modded = Message(self.msgid,
                          msgtext=unicode_mod,
                          params=params,
@@ -221,7 +219,7 @@
         except Exception:
             # Fallback to casting to unicode this will handle the
             # python code-like objects that can't be deep-copied
-            return six.text_type(param)
+            return str(param)
 
     def __add__(self, other):
         from oslo_i18n._i18n import _
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/_translate.py 
new/oslo.i18n-5.1.0/oslo_i18n/_translate.py
--- old/oslo.i18n-5.0.1/oslo_i18n/_translate.py 2020-09-11 21:18:16.000000000 
+0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/_translate.py 2021-09-06 10:27:12.000000000 
+0200
@@ -14,8 +14,6 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-import six
-
 __all__ = [
     'translate',
 ]
@@ -41,7 +39,7 @@
     if not isinstance(message, _message.Message):
         # If the object to translate is not already translatable,
         # let's first get its unicode representation
-        message = six.text_type(obj)
+        message = str(obj)
     if isinstance(message, _message.Message):
         # Even after unicoding() we still need to check if we are
         # running with translatable unicode before translating
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/fixture.py 
new/oslo.i18n-5.1.0/oslo_i18n/fixture.py
--- old/oslo.i18n-5.0.1/oslo_i18n/fixture.py    2020-09-11 21:18:16.000000000 
+0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/fixture.py    2021-09-06 10:27:12.000000000 
+0200
@@ -16,7 +16,6 @@
 import gettext
 
 import fixtures
-import six
 
 from oslo_i18n import _lazy
 from oslo_i18n import _message
@@ -65,7 +64,7 @@
         :type msg: str or unicode
 
         """
-        return six.text_type(msg)
+        return str(msg)
 
 
 class ToggleLazy(fixtures.Fixture):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/tests/test_factory.py 
new/oslo.i18n-5.1.0/oslo_i18n/tests/test_factory.py
--- old/oslo.i18n-5.0.1/oslo_i18n/tests/test_factory.py 2020-09-11 
21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/tests/test_factory.py 2021-09-06 
10:27:12.000000000 +0200
@@ -17,7 +17,6 @@
 from unittest import mock
 
 from oslotest import base as test_base
-import six
 
 from oslo_i18n import _factory
 from oslo_i18n import _lazy
@@ -62,48 +61,9 @@
         r = tf.primary('some text')
         self.assertNotIsInstance(r, _message.Message)
 
-    def test_py3(self):
-        _lazy.enable_lazy(False)
-        with mock.patch.object(six, 'PY3', True):
-            with mock.patch('gettext.translation') as translation:
-                trans = mock.Mock()
-                translation.return_value = trans
-                trans.ugettext.side_effect = AssertionError(
-                    'should have called gettext')
-                tf = _factory.TranslatorFactory('domain')
-                tf.primary('some text')
-                trans.gettext.assert_called_with('some text')
-
     def test_log_level_domain_name(self):
         with mock.patch.object(_factory.TranslatorFactory,
                                '_make_translation_func') as mtf:
             tf = _factory.TranslatorFactory('domain')
             tf._make_log_translation_func('mylevel')
             mtf.assert_called_with('domain-log-mylevel')
-
-    def test_contextual_form_py3(self):
-        _lazy.enable_lazy(False)
-        with mock.patch.object(six, 'PY3', True):
-            with mock.patch('gettext.translation') as translation:
-                trans = mock.Mock()
-                translation.return_value = trans
-                trans.ugettext.side_effect = AssertionError(
-                    'should have called gettext')
-                trans.gettext.return_value = "some text"
-                tf = _factory.TranslatorFactory('domain')
-                tf.contextual_form('context', 'some text')
-                trans.gettext.assert_called_with(
-                    "%s%s%s" % ('context', CONTEXT_SEPARATOR, 'some text'))
-
-    def test_plural_form_py3(self):
-        _lazy.enable_lazy(False)
-        with mock.patch.object(six, 'PY3', True):
-            with mock.patch('gettext.translation') as translation:
-                trans = mock.Mock()
-                translation.return_value = trans
-                trans.ungettext.side_effect = AssertionError(
-                    'should have called ngettext')
-                tf = _factory.TranslatorFactory('domain')
-                tf.plural_form('single', 'plural', 1)
-                trans.ngettext.assert_called_with(
-                    'single', 'plural', 1)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/tests/test_fixture.py 
new/oslo.i18n-5.1.0/oslo_i18n/tests/test_fixture.py
--- old/oslo.i18n-5.0.1/oslo_i18n/tests/test_fixture.py 2020-09-11 
21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/tests/test_fixture.py 2021-09-06 
10:27:12.000000000 +0200
@@ -13,7 +13,6 @@
 #    under the License.
 
 from oslotest import base as test_base
-import six
 
 import oslo_i18n
 from oslo_i18n import _gettextutils
@@ -38,7 +37,7 @@
     def test_immediate(self):
         msg = self.trans_fixture.immediate('this is a lazy message')
         self.assertNotIsInstance(msg, _message.Message)
-        self.assertIsInstance(msg, six.text_type)
+        self.assertIsInstance(msg, str)
         self.assertEqual(u'this is a lazy message', msg)
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/tests/test_gettextutils.py 
new/oslo.i18n-5.1.0/oslo_i18n/tests/test_gettextutils.py
--- old/oslo.i18n-5.0.1/oslo_i18n/tests/test_gettextutils.py    2020-09-11 
21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/tests/test_gettextutils.py    2021-09-06 
10:27:12.000000000 +0200
@@ -14,12 +14,12 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
+import builtins
 import gettext
 import logging
 from unittest import mock
 
 from oslotest import base as test_base
-import six
 
 from oslo_i18n import _factory
 from oslo_i18n import _gettextutils
@@ -49,8 +49,7 @@
     def test__gettextutils_install(self):
         _gettextutils.install('blaa')
         _lazy.enable_lazy(False)
-        self.assertTrue(isinstance(self.t.primary('A String'),
-                                   six.text_type))
+        self.assertTrue(isinstance(self.t.primary('A String'), str))
 
         _gettextutils.install('blaa')
         _lazy.enable_lazy(True)
@@ -68,10 +67,10 @@
         with mock.patch('os.environ.get') as environ_get:
             with mock.patch('gettext.install'):
                 environ_get.return_value = '/foo/bar'
-                if '_' in six.moves.builtins.__dict__:
-                    del six.moves.builtins.__dict__['_']
+                if '_' in builtins.__dict__:
+                    del builtins.__dict__['_']
                 _gettextutils.install('blaa')
-                self.assertIn('_', six.moves.builtins.__dict__)
+                self.assertIn('_', builtins.__dict__)
 
     def test_get_available_languages(self):
         # Only the languages available for a specific translation domain
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/tests/test_handler.py 
new/oslo.i18n-5.1.0/oslo_i18n/tests/test_handler.py
--- old/oslo.i18n-5.0.1/oslo_i18n/tests/test_handler.py 2020-09-11 
21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/tests/test_handler.py 2021-09-06 
10:27:12.000000000 +0200
@@ -14,11 +14,11 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
+import io
 import logging
 from unittest import mock
 
 from oslotest import base as test_base
-import six
 
 from oslo_i18n import _message
 from oslo_i18n import log as i18n_log
@@ -32,7 +32,7 @@
     def setUp(self):
         super(TranslationHandlerTestCase, self).setUp()
 
-        self.stream = six.StringIO()
+        self.stream = io.StringIO()
         self.destination_handler = logging.StreamHandler(self.stream)
         self.translation_handler = i18n_log.TranslationHandler('zh_CN')
         self.translation_handler.setTarget(self.destination_handler)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/tests/test_message.py 
new/oslo.i18n-5.1.0/oslo_i18n/tests/test_message.py
--- old/oslo.i18n-5.0.1/oslo_i18n/tests/test_message.py 2020-09-11 
21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/tests/test_message.py 2021-09-06 
10:27:12.000000000 +0200
@@ -19,7 +19,6 @@
 import warnings
 
 from oslotest import base as test_base
-import six
 import testtools
 
 from oslo_i18n import _message
@@ -42,7 +41,7 @@
 
     def test_message_is_unicode(self):
         message = _message.Message('some %s') % 'message'
-        self.assertIsInstance(message, six.text_type)
+        self.assertIsInstance(message, str)
 
     @mock.patch('locale.getdefaultlocale')
     @mock.patch('gettext.translation')
@@ -67,7 +66,7 @@
 
     def test_translation_returns_unicode(self):
         message = _message.Message('some %s') % 'message'
-        self.assertIsInstance(message.translation(), six.text_type)
+        self.assertIsInstance(message.translation(), str)
 
     def test_mod_with_named_parameters(self):
         msgid = ("%(description)s\nCommand: %(cmd)s\n"
@@ -168,10 +167,7 @@
             # Now set up ugettext to return the translated version of
             # the original message, with a bad format string.
             wrong_type = u'Wrong type %(arg1)d'
-            if six.PY3:
-                trans.return_value.gettext.return_value = wrong_type
-            else:
-                trans.return_value.ugettext.return_value = wrong_type
+            trans.return_value.gettext.return_value = wrong_type
             trans_result = result.translation()
             expected = msgid % params
             self.assertEqual(expected, trans_result)
@@ -327,7 +323,7 @@
         # Here we are not testing the Message object directly but the result
         # of unicoding() an object whose unicode representation is a Message
         obj = utils.SomeObject(message)
-        unicoded_obj = six.text_type(obj)
+        unicoded_obj = str(obj)
 
         self.assertEqual(es_translation, unicoded_obj.translation('es'))
 
@@ -494,7 +490,7 @@
         expected_translation = es_translation % param
 
         obj = utils.SomeObject(msg)
-        unicoded_obj = six.text_type(obj)
+        unicoded_obj = str(obj)
 
         self.assertEqual(expected_translation, unicoded_obj.translation('es'))
         self.assertEqual(default_translation, unicoded_obj.translation('XX'))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/tests/test_public_api.py 
new/oslo.i18n-5.1.0/oslo_i18n/tests/test_public_api.py
--- old/oslo.i18n-5.0.1/oslo_i18n/tests/test_public_api.py      2020-09-11 
21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/tests/test_public_api.py      2021-09-06 
10:27:12.000000000 +0200
@@ -12,7 +12,6 @@
 """A few tests that use the public API to ensure the imports work."""
 
 import unittest
-from unittest import mock
 
 import oslo_i18n
 from oslo_i18n import _lazy
@@ -24,8 +23,7 @@
         oslo_i18n.TranslatorFactory('domain')
 
     def test_install(self):
-        with mock.patch('six.moves.builtins'):
-            oslo_i18n.install('domain')
+        oslo_i18n.install('domain')
 
     def test_get_available_languages(self):
         oslo_i18n.get_available_languages('domains')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/oslo_i18n/tests/utils.py 
new/oslo.i18n-5.1.0/oslo_i18n/tests/utils.py
--- old/oslo.i18n-5.0.1/oslo_i18n/tests/utils.py        2020-09-11 
21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/oslo_i18n/tests/utils.py        2021-09-06 
10:27:12.000000000 +0200
@@ -12,18 +12,14 @@
 #    License for the specific language governing permissions and limitations
 #    under the License.
 
-import six
-
 
 class SomeObject(object):
 
     def __init__(self, message):
         self.message = message
 
-    def __unicode__(self):
+    def __str__(self):
         return self.message
-    # alias for Python 3
-    __str__ = __unicode__
 
 
 class NoDeepCopyObject(object):
@@ -31,12 +27,8 @@
     def __init__(self, value):
         self.value = value
 
-    if six.PY3:
-        def __str__(self):
-            return str(self.value)
-    else:
-        def __unicode__(self):
-            return six.text_type(self.value)
+    def __str__(self):
+        return str(self.value)
 
     def __deepcopy__(self, memo):
         raise TypeError('Deep Copy not supported')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/releasenotes/source/index.rst 
new/oslo.i18n-5.1.0/releasenotes/source/index.rst
--- old/oslo.i18n-5.0.1/releasenotes/source/index.rst   2020-09-11 
21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/releasenotes/source/index.rst   2021-09-06 
10:27:12.000000000 +0200
@@ -6,6 +6,7 @@
     :maxdepth: 1
 
     unreleased
+    victoria
     ussuri
     train
     stein
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/releasenotes/source/victoria.rst 
new/oslo.i18n-5.1.0/releasenotes/source/victoria.rst
--- old/oslo.i18n-5.0.1/releasenotes/source/victoria.rst        1970-01-01 
01:00:00.000000000 +0100
+++ new/oslo.i18n-5.1.0/releasenotes/source/victoria.rst        2021-09-06 
10:27:12.000000000 +0200
@@ -0,0 +1,6 @@
+=============================
+Victoria Series Release Notes
+=============================
+
+.. release-notes::
+   :branch: stable/victoria
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/requirements.txt 
new/oslo.i18n-5.1.0/requirements.txt
--- old/oslo.i18n-5.0.1/requirements.txt        2020-09-11 21:18:16.000000000 
+0200
+++ new/oslo.i18n-5.1.0/requirements.txt        2021-09-06 10:27:12.000000000 
+0200
@@ -3,4 +3,3 @@
 # process, which may cause wedges in the gate later.
 
 pbr!=2.1.0,>=2.0.0 # Apache-2.0
-six>=1.10.0 # MIT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/test-requirements.txt 
new/oslo.i18n-5.1.0/test-requirements.txt
--- old/oslo.i18n-5.0.1/test-requirements.txt   2020-09-11 21:18:16.000000000 
+0200
+++ new/oslo.i18n-5.1.0/test-requirements.txt   2021-09-06 10:27:12.000000000 
+0200
@@ -1,7 +1,7 @@
 # The order of packages is significant, because pip processes them in the order
 # of appearance. Changing the order has an impact on the overall integration
 # process, which may cause wedges in the gate later.
-hacking>=3.0,<3.1.0 # Apache-2.0
+hacking>=3.0.1,<3.1.0 # Apache-2.0
 stestr>=2.0.0 # Apache-2.0
 
 oslotest>=3.2.0 # Apache-2.0
@@ -13,3 +13,5 @@
 
 # Bandit security code scanner
 bandit>=1.6.0,<1.7.0 # Apache-2.0
+
+pre-commit>=2.6.0 # MIT
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/oslo.i18n-5.0.1/tox.ini new/oslo.i18n-5.1.0/tox.ini
--- old/oslo.i18n-5.0.1/tox.ini 2020-09-11 21:18:16.000000000 +0200
+++ new/oslo.i18n-5.1.0/tox.ini 2021-09-06 10:27:12.000000000 +0200
@@ -1,12 +1,12 @@
 [tox]
-minversion = 3.1.1
-envlist = py38,pep8
+minversion = 3.18.0
+envlist = py3,pep8
 ignore_basepython_conflict = true
 
 [testenv]
 basepython = python3
 deps =
-  
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
+  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
   -r{toxinidir}/test-requirements.txt
   -r{toxinidir}/requirements.txt
 commands = stestr run --slowest {posargs}
@@ -15,7 +15,7 @@
 deps =
   -r{toxinidir}/test-requirements.txt
 commands =
-  flake8
+  pre-commit run -a
   # Run security linter
   bandit -r oslo_i18n -x tests -n5
 
@@ -23,7 +23,7 @@
 commands = {posargs}
 
 [testenv:docs]
-whitelist_externals =
+allowlist_externals =
   rm
 deps =
   {[testenv]deps}
@@ -62,14 +62,8 @@
 whitelist_externals =
   rm
 deps =
-  
-c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
+  
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
   -r{toxinidir}/doc/requirements.txt
 commands =
   rm -rf releasenotes/build
   sphinx-build -a -E -W -d releasenotes/build/doctrees --keep-going -b html 
releasenotes/source releasenotes/build/html
-
-[testenv:lower-constraints]
-deps =
-  -c{toxinidir}/lower-constraints.txt
-  -r{toxinidir}/test-requirements.txt
-  -r{toxinidir}/requirements.txt

Reply via email to