Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-inflect for openSUSE:Factory checked in at 2021-01-22 21:49:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-inflect (Old) and /work/SRC/openSUSE:Factory/.python-inflect.new.28504 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-inflect" Fri Jan 22 21:49:52 2021 rev:4 rq:865036 version:5.0.2 Changes: -------- --- /work/SRC/openSUSE:Factory/python-inflect/python-inflect.changes 2020-04-15 19:54:37.721602609 +0200 +++ /work/SRC/openSUSE:Factory/.python-inflect.new.28504/python-inflect.changes 2021-01-22 21:50:09.701665079 +0100 @@ -1,0 +2,19 @@ +Wed Jan 20 15:12:07 UTC 2021 - John Vandenberg <jay...@gmail.com> + +- Update URL to https://github.com/jaraco/inflect +- Update to v5.0.2 + * Inflect withdraws from Jazzband organisation + in order to continue to participate in sustained maintenance + and enterprise support through Tidelift. + The project continues to honor the guidelines and principles + behind Jazzband and welcomes contributors openly +- from v5.0.1 + * Identical release validating release process +- from v5.0.0 + * Module no longer exposes a ``__version__`` attribute. + Instead to query the version installed, use + importlib.metadata or its backport +- from v4.1.1 + * Refreshed package metadata + +------------------------------------------------------------------- Old: ---- inflect-4.1.0.tar.gz New: ---- inflect-5.0.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-inflect.spec ++++++ --- /var/tmp/diff_new_pack.a8F9R5/_old 2021-01-22 21:50:11.581667745 +0100 +++ /var/tmp/diff_new_pack.a8F9R5/_new 2021-01-22 21:50:11.593667762 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-inflect # -# 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 @@ -20,12 +20,12 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-inflect -Version: 4.1.0 +Version: 5.0.2 Release: 0 Summary: Methods for working on numbers and nouns License: MIT Group: Development/Languages/Python -URL: https://github.com/jazzband/inflect +URL: https://github.com/jaraco/inflect Source0: https://files.pythonhosted.org/packages/source/i/inflect/inflect-%{version}.tar.gz BuildRequires: %{python_module devel} BuildRequires: %{python_module pytest} ++++++ inflect-4.1.0.tar.gz -> inflect-5.0.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/.github/workflows/main.yml new/inflect-5.0.2/.github/workflows/main.yml --- old/inflect-4.1.0/.github/workflows/main.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/inflect-5.0.2/.github/workflows/main.yml 2020-11-15 18:40:32.000000000 +0100 @@ -0,0 +1,43 @@ +name: Automated Tests + +on: [push, pull_request] + +jobs: + test: + strategy: + matrix: + python: [3.6, 3.8, 3.9] + platform: [ubuntu-latest, macos-latest, windows-latest] + runs-on: ${{ matrix.platform }} + steps: + - uses: actions/checkout@v2 + - name: Setup Python + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python }} + - name: Install tox + run: | + python -m pip install tox + - name: Run tests + run: tox + + release: + needs: test + if: github.event_name == 'push' && contains(github.ref, 'refs/tags/') + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Setup Python + uses: actions/setup-python@v2 + with: + python-version: 3.9 + - name: Install tox + run: | + python -m pip install tox + - name: Release + run: tox -e release + env: + TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }} + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + TIDELIFT_TOKEN: ${{ secrets.TIDELIFT_TOKEN }} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/.pre-commit-config.yaml new/inflect-5.0.2/.pre-commit-config.yaml --- old/inflect-4.1.0/.pre-commit-config.yaml 2019-12-21 05:45:44.000000000 +0100 +++ new/inflect-5.0.2/.pre-commit-config.yaml 2020-11-15 18:40:32.000000000 +0100 @@ -1,10 +1,10 @@ repos: - repo: https://github.com/psf/black - rev: 19.10b0 + rev: stable hooks: - id: black - repo: https://github.com/asottile/blacken-docs - rev: v1.4.0 + rev: v1.8.0 hooks: - id: blacken-docs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/.readthedocs.yml new/inflect-5.0.2/.readthedocs.yml --- old/inflect-4.1.0/.readthedocs.yml 2019-10-27 18:37:39.000000000 +0100 +++ new/inflect-5.0.2/.readthedocs.yml 2020-11-15 18:40:32.000000000 +0100 @@ -1,5 +1,6 @@ +version: 2 python: - version: 3 - extra_requirements: - - docs - pip_install: true + install: + - path: . + extra_requirements: + - docs diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/.travis.yml new/inflect-5.0.2/.travis.yml --- old/inflect-4.1.0/.travis.yml 2020-02-04 03:16:44.000000000 +0100 +++ new/inflect-5.0.2/.travis.yml 1970-01-01 01:00:00.000000000 +0100 @@ -1,19 +0,0 @@ -dist: xenial -language: python - -python: -- 3.6 -- pypy3 -- &latest_py3 3.8 - -cache: pip - -install: -- pip install tox tox-venv - -before_script: - # Disable IPv6. Ref travis-ci/travis-ci#8361 - - if [ "${TRAVIS_OS_NAME}" == "linux" ]; then - sudo sh -c 'echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6'; - fi -script: tox diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/CHANGES.rst new/inflect-5.0.2/CHANGES.rst --- old/inflect-4.1.0/CHANGES.rst 2020-02-04 03:14:54.000000000 +0100 +++ new/inflect-5.0.2/CHANGES.rst 2020-11-15 18:40:32.000000000 +0100 @@ -1,3 +1,33 @@ +v5.0.2 +====== + +* #102: Inflect withdraws from `Jazzband <https://jazzband.co>`_ + in order to continue to participate in sustained maintenance + and enterprise support through `Tidelift <https://tidelift.com>`_. + The project continues to honor the guidelines and principles + behind Jazzband and welcomes contributors openly. + +v5.0.1 +====== + +* Identical release validating release process. + +v5.0.0 +====== + +* Module no longer exposes a ``__version__`` attribute. Instead + to query the version installed, use + `importlib.metadata <https://docs.python.org/3/library/importlib.metadata.html>`_ + or `its backport <https://pypi.org/project/importlib_metadata>`_ + to query:: + + importlib.metadata.version('inflect') + +v4.1.1 +====== + +* Refreshed package metadata. + v4.1.0 ====== @@ -6,7 +36,7 @@ v4.0.0 ====== -Require Python 3.6 or later. +* Require Python 3.6 or later. v3.0.2 ====== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/CONTRIBUTING.md new/inflect-5.0.2/CONTRIBUTING.md --- old/inflect-4.1.0/CONTRIBUTING.md 2018-05-08 21:45:05.000000000 +0200 +++ new/inflect-5.0.2/CONTRIBUTING.md 1970-01-01 01:00:00.000000000 +0100 @@ -1,3 +0,0 @@ -[](https://jazzband.co/) - -This is a [Jazzband](https://jazzband.co/) project. By contributing you agree to abide by the [Contributor Code of Conduct](https://jazzband.co/about/conduct) and follow the [guidelines](https://jazzband.co/about/guidelines). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/PKG-INFO new/inflect-5.0.2/PKG-INFO --- old/inflect-4.1.0/PKG-INFO 2020-02-04 03:25:21.404857900 +0100 +++ new/inflect-5.0.2/PKG-INFO 2020-11-15 18:40:52.617753000 +0100 @@ -1,8 +1,8 @@ Metadata-Version: 2.1 Name: inflect -Version: 4.1.0 +Version: 5.0.2 Summary: Correctly generate plurals, singular nouns, ordinals, indefinite articles; convert numbers to words -Home-page: https://github.com/jazzband/inflect +Home-page: https://github.com/jaraco/inflect Author: Paul Dyson Author-email: pwdy...@yahoo.com Maintainer: Jason R. Coombs @@ -16,31 +16,23 @@ .. _PyPI link: https://pypi.org/project/inflect - .. image:: https://img.shields.io/travis/jazzband/inflect/master.svg - :target: https://travis-ci.org/jazzband/inflect + .. image:: https://github.com/jaraco/inflect/workflows/Automated%20Tests/badge.svg + :target: https://github.com/jaraco/inflect/actions?query=workflow%3A%22Automated+Tests%22 + :alt: Automated Tests .. image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://github.com/psf/black :alt: Code style: Black - .. .. image:: https://img.shields.io/appveyor/ci/jaraco/skeleton/master.svg - .. :target: https://ci.appveyor.com/project/jaraco/skeleton/branch/master - .. .. image:: https://readthedocs.org/projects/skeleton/badge/?version=latest .. :target: https://skeleton.readthedocs.io/en/latest/?badge=latest - .. image:: https://coveralls.io/repos/github/jazzband/inflect/badge.svg?branch=master - :target: https://coveralls.io/github/jazzband/inflect?branch=master - - .. image:: https://jazzband.co/static/img/badge.svg - :target: https://jazzband.co/ - :alt: Jazzband + .. image:: https://coveralls.io/repos/github/jaraco/inflect/badge.svg?branch=master + :target: https://coveralls.io/github/jaraco/inflect?branch=master .. image:: https://tidelift.com/badges/package/pypi/inflect :target: https://tidelift.com/subscription/pkg/pypi-inflect?utm_source=pypi-inflect&utm_medium=readme - This is a `Jazzband <https://jazzband.co>`_ project. By contributing you agree to abide by the `Contributor Code of Conduct <https://jazzband.co/about/conduct>`_ and follow the `guidelines <https://jazzband.co/about/guidelines>`_. - NAME ==== @@ -551,6 +543,15 @@ (that is, ``plural("time".lower(), "Times".lower())`` returns true). + For Enterprise + ============== + + Available as part of the Tidelift Subscription. + + This project and the maintainers of thousands of other packages are working with Tidelift to deliver one enterprise subscription that covers all of the open source you use. + + `Learn more <https://tidelift.com/subscription/pkg/pypi-PROJECT?utm_source=pypi-PROJECT&utm_medium=referral&utm_campaign=github>`_. + Security Contact ================ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/README.rst new/inflect-5.0.2/README.rst --- old/inflect-4.1.0/README.rst 2020-02-04 03:17:14.000000000 +0100 +++ new/inflect-5.0.2/README.rst 2020-11-15 18:40:32.000000000 +0100 @@ -6,31 +6,23 @@ .. _PyPI link: https://pypi.org/project/inflect -.. image:: https://img.shields.io/travis/jazzband/inflect/master.svg - :target: https://travis-ci.org/jazzband/inflect +.. image:: https://github.com/jaraco/inflect/workflows/Automated%20Tests/badge.svg + :target: https://github.com/jaraco/inflect/actions?query=workflow%3A%22Automated+Tests%22 + :alt: Automated Tests .. image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://github.com/psf/black :alt: Code style: Black -.. .. image:: https://img.shields.io/appveyor/ci/jaraco/skeleton/master.svg -.. :target: https://ci.appveyor.com/project/jaraco/skeleton/branch/master - .. .. image:: https://readthedocs.org/projects/skeleton/badge/?version=latest .. :target: https://skeleton.readthedocs.io/en/latest/?badge=latest -.. image:: https://coveralls.io/repos/github/jazzband/inflect/badge.svg?branch=master - :target: https://coveralls.io/github/jazzband/inflect?branch=master - -.. image:: https://jazzband.co/static/img/badge.svg - :target: https://jazzband.co/ - :alt: Jazzband +.. image:: https://coveralls.io/repos/github/jaraco/inflect/badge.svg?branch=master + :target: https://coveralls.io/github/jaraco/inflect?branch=master .. image:: https://tidelift.com/badges/package/pypi/inflect :target: https://tidelift.com/subscription/pkg/pypi-inflect?utm_source=pypi-inflect&utm_medium=readme -This is a `Jazzband <https://jazzband.co>`_ project. By contributing you agree to abide by the `Contributor Code of Conduct <https://jazzband.co/about/conduct>`_ and follow the `guidelines <https://jazzband.co/about/guidelines>`_. - NAME ==== @@ -541,6 +533,15 @@ (that is, ``plural("time".lower(), "Times".lower())`` returns true). +For Enterprise +============== + +Available as part of the Tidelift Subscription. + +This project and the maintainers of thousands of other packages are working with Tidelift to deliver one enterprise subscription that covers all of the open source you use. + +`Learn more <https://tidelift.com/subscription/pkg/pypi-PROJECT?utm_source=pypi-PROJECT&utm_medium=referral&utm_campaign=github>`_. + Security Contact ================ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/appveyor.yml new/inflect-5.0.2/appveyor.yml --- old/inflect-4.1.0/appveyor.yml 2019-12-21 05:50:12.000000000 +0100 +++ new/inflect-5.0.2/appveyor.yml 1970-01-01 01:00:00.000000000 +0100 @@ -1,24 +0,0 @@ -environment: - - APPVEYOR: true - - matrix: - - PYTHON: "C:\\Python36-x64" - - PYTHON: "C:\\Python38-x64" - -install: - # symlink python from a directory with a space - - "mklink /d \"C:\\Program Files\\Python\" %PYTHON%" - - "SET PYTHON=\"C:\\Program Files\\Python\"" - - "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%" - -build: off - -cache: - - '%LOCALAPPDATA%\pip\Cache' - -test_script: - - "python -m pip install -U tox tox-venv virtualenv" - - "tox" - -version: '{build}' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/azure-pipelines.yml new/inflect-5.0.2/azure-pipelines.yml --- old/inflect-4.1.0/azure-pipelines.yml 2020-02-04 03:16:44.000000000 +0100 +++ new/inflect-5.0.2/azure-pipelines.yml 1970-01-01 01:00:00.000000000 +0100 @@ -1,71 +0,0 @@ -# Create the project in Azure with: -# az devops project create --name $name --organization https://dev.azure.com/$org/ --visibility public -# then configure the pipelines (through web UI) - -trigger: - branches: - include: - - '*' - tags: - include: - - '*' - -pool: - vmimage: 'Ubuntu-18.04' - -variables: -- group: Azure secrets - -stages: -- stage: Test - jobs: - - - job: 'Test' - strategy: - matrix: - Python36: - python.version: '3.6' - Python38: - python.version: '3.8' - maxParallel: 4 - - steps: - - task: UsePythonVersion@0 - inputs: - versionSpec: '$(python.version)' - architecture: 'x64' - - - script: python -m pip install tox - displayName: 'Install tox' - - - script: | - tox -- --junit-xml=test-results.xml - displayName: 'run tests' - - - task: PublishTestResults@2 - inputs: - testResultsFiles: '**/test-results.xml' - testRunTitle: 'Python $(python.version)' - condition: succeededOrFailed() - -- stage: Publish - dependsOn: Test - jobs: - - job: 'Publish' - - steps: - - task: UsePythonVersion@0 - inputs: - versionSpec: '3.8' - architecture: 'x64' - - - script: python -m pip install tox - displayName: 'Install tox' - - - script: | - tox -e release - env: - TWINE_PASSWORD: $(PyPI-token) - displayName: 'publish to PyPI' - - condition: contains(variables['Build.SourceBranch'], 'tags') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/docs/_templates/tidelift-sidebar.html new/inflect-5.0.2/docs/_templates/tidelift-sidebar.html --- old/inflect-4.1.0/docs/_templates/tidelift-sidebar.html 2019-11-03 01:27:20.000000000 +0100 +++ new/inflect-5.0.2/docs/_templates/tidelift-sidebar.html 2020-11-15 18:40:32.000000000 +0100 @@ -1,6 +1,6 @@ -<h3 class="donation">Professional support</h3> +<h3 class="donation">For Enterprise</h3> <p> Professionally-supported {{ project }} is available with the -<a href="https://tidelift.com/subscription/pkg/pypi-{{ project }}?utm_source=pypi-{{ project }}&utm_medium=readme">Tidelift Subscription</a>. +<a href="https://tidelift.com/subscription/pkg/pypi-{{ project }}?utm_source=pypi-{{ project }}&utm_medium=referral">Tidelift Subscription</a>. </p> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/docs/conf.py new/inflect-5.0.2/docs/conf.py --- old/inflect-4.1.0/docs/conf.py 2019-11-03 01:28:24.000000000 +0100 +++ new/inflect-5.0.2/docs/conf.py 2020-11-15 18:40:32.000000000 +0100 @@ -14,7 +14,7 @@ url='{package_url}/issues/{issue}', ), dict( - pattern=r'^(?m)((?P<scm_version>v?\d+(\.\d+){1,2}))\n[-=]+\n', + pattern=r'(?m:^((?P<scm_version>v?\d+(\.\d+){1,2}))\n[-=]+\n)', with_scm='{text}\n{rev[timestamp]:%d %b %Y}\n', ), dict( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/inflect.egg-info/PKG-INFO new/inflect-5.0.2/inflect.egg-info/PKG-INFO --- old/inflect-4.1.0/inflect.egg-info/PKG-INFO 2020-02-04 03:25:20.000000000 +0100 +++ new/inflect-5.0.2/inflect.egg-info/PKG-INFO 2020-11-15 18:40:52.000000000 +0100 @@ -1,8 +1,8 @@ Metadata-Version: 2.1 Name: inflect -Version: 4.1.0 +Version: 5.0.2 Summary: Correctly generate plurals, singular nouns, ordinals, indefinite articles; convert numbers to words -Home-page: https://github.com/jazzband/inflect +Home-page: https://github.com/jaraco/inflect Author: Paul Dyson Author-email: pwdy...@yahoo.com Maintainer: Jason R. Coombs @@ -16,31 +16,23 @@ .. _PyPI link: https://pypi.org/project/inflect - .. image:: https://img.shields.io/travis/jazzband/inflect/master.svg - :target: https://travis-ci.org/jazzband/inflect + .. image:: https://github.com/jaraco/inflect/workflows/Automated%20Tests/badge.svg + :target: https://github.com/jaraco/inflect/actions?query=workflow%3A%22Automated+Tests%22 + :alt: Automated Tests .. image:: https://img.shields.io/badge/code%20style-black-000000.svg :target: https://github.com/psf/black :alt: Code style: Black - .. .. image:: https://img.shields.io/appveyor/ci/jaraco/skeleton/master.svg - .. :target: https://ci.appveyor.com/project/jaraco/skeleton/branch/master - .. .. image:: https://readthedocs.org/projects/skeleton/badge/?version=latest .. :target: https://skeleton.readthedocs.io/en/latest/?badge=latest - .. image:: https://coveralls.io/repos/github/jazzband/inflect/badge.svg?branch=master - :target: https://coveralls.io/github/jazzband/inflect?branch=master - - .. image:: https://jazzband.co/static/img/badge.svg - :target: https://jazzband.co/ - :alt: Jazzband + .. image:: https://coveralls.io/repos/github/jaraco/inflect/badge.svg?branch=master + :target: https://coveralls.io/github/jaraco/inflect?branch=master .. image:: https://tidelift.com/badges/package/pypi/inflect :target: https://tidelift.com/subscription/pkg/pypi-inflect?utm_source=pypi-inflect&utm_medium=readme - This is a `Jazzband <https://jazzband.co>`_ project. By contributing you agree to abide by the `Contributor Code of Conduct <https://jazzband.co/about/conduct>`_ and follow the `guidelines <https://jazzband.co/about/guidelines>`_. - NAME ==== @@ -551,6 +543,15 @@ (that is, ``plural("time".lower(), "Times".lower())`` returns true). + For Enterprise + ============== + + Available as part of the Tidelift Subscription. + + This project and the maintainers of thousands of other packages are working with Tidelift to deliver one enterprise subscription that covers all of the open source you use. + + `Learn more <https://tidelift.com/subscription/pkg/pypi-PROJECT?utm_source=pypi-PROJECT&utm_medium=referral&utm_campaign=github>`_. + Security Contact ================ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/inflect.egg-info/SOURCES.txt new/inflect-5.0.2/inflect.egg-info/SOURCES.txt --- old/inflect-4.1.0/inflect.egg-info/SOURCES.txt 2020-02-04 03:25:21.000000000 +0100 +++ new/inflect-5.0.2/inflect.egg-info/SOURCES.txt 2020-11-15 18:40:52.000000000 +0100 @@ -3,14 +3,11 @@ .gitignore .pre-commit-config.yaml .readthedocs.yml -.travis.yml CHANGES.rst -CONTRIBUTING.md LICENSE README.rst -appveyor.yml -azure-pipelines.yml inflect.py +mypy.ini pyproject.toml pytest.ini setup.cfg @@ -18,6 +15,7 @@ skeleton.md tox.ini .github/FUNDING.yml +.github/workflows/main.yml docs/conf.py docs/history.rst docs/index.rst diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/inflect.egg-info/requires.txt new/inflect-5.0.2/inflect.egg-info/requires.txt --- old/inflect-4.1.0/inflect.egg-info/requires.txt 2020-02-04 03:25:20.000000000 +0100 +++ new/inflect-5.0.2/inflect.egg-info/requires.txt 2020-11-15 18:40:52.000000000 +0100 @@ -1,7 +1,4 @@ -[:python_version < "3.8"] -importlib_metadata - [docs] sphinx jaraco.packaging>=3.2 @@ -11,6 +8,10 @@ pytest!=3.7.3,>=3.5 pytest-checkdocs>=1.2.3 pytest-flake8 -pytest-black-multipy pytest-cov +jaraco.test>=3.2.0 pygments + +[testing:platform_python_implementation != "PyPy"] +pytest-black>=0.3.7 +pytest-mypy diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/inflect.py new/inflect-5.0.2/inflect.py --- old/inflect-4.1.0/inflect.py 2020-02-04 03:14:54.000000000 +0100 +++ new/inflect-5.0.2/inflect.py 2020-11-15 18:40:32.000000000 +0100 @@ -50,11 +50,7 @@ import ast import re - -try: - import importlib.metadata as importlib_metadata -except ImportError: - import importlib_metadata +from typing import Dict, Union class UnknownClassicalModeError(Exception): @@ -85,12 +81,6 @@ pass -try: - __version__ = importlib_metadata.version("inflect") -except Exception: - __version__ = "unknown" - - STDOUT_ON = False @@ -1456,16 +1446,16 @@ ) ) -pl_sb_postfix_adj = { +_pl_sb_postfix_adj_defn = { "general": [r"(?!major|lieutenant|brigadier|adjutant|.*star)\S+"], "martial": ["court"], "force": ["pound"], } -for k in list(pl_sb_postfix_adj.keys()): - pl_sb_postfix_adj[k] = enclose( - enclose("|".join(pl_sb_postfix_adj[k])) + "(?=(?:-|\\s+)%s)" % k - ) +pl_sb_postfix_adj: Dict[str, str] = {} + +for key, val in _pl_sb_postfix_adj_defn.items(): + pl_sb_postfix_adj[key] = enclose(enclose("|".join(val)) + "(?=(?:-|\\s+)%s)" % key) pl_sb_postfix_adj_stems = "(" + "|".join(list(pl_sb_postfix_adj.values())) + ")(.*)" @@ -1590,7 +1580,7 @@ "theirs": "theirs", } -si_pron = {} +si_pron: Dict[str, Dict[str, Union[str, Dict[str, str]]]] = {} si_pron["nom"] = {v: k for (k, v) in pl_pron_nom.items()} si_pron["nom"]["we"] = "I" @@ -1649,10 +1639,10 @@ ("acc", "themselves", "masculine or feminine", "himself or herself"), ): try: - si_pron[thecase][plur][gend] = sing + si_pron[thecase][plur][gend] = sing # type: ignore except TypeError: si_pron[thecase][plur] = {} - si_pron[thecase][plur][gend] = sing + si_pron[thecase][plur][gend] = sing # type: ignore si_pron_acc_keys = enclose("|".join(list(si_pron["acc"].keys()))) @@ -3591,21 +3581,21 @@ return num def blankfn(self, mo): - """ do a global blank replace + """do a global blank replace TODO: surely this can be done with an option to re.sub rather than this fn """ return "" def commafn(self, mo): - """ do a global ',' replace + """do a global ',' replace TODO: surely this can be done with an option to re.sub rather than this fn """ return "," def spacefn(self, mo): - """ do a global ' ' replace + """do a global ' ' replace TODO: surely this can be done with an option to re.sub rather than this fn """ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/mypy.ini new/inflect-5.0.2/mypy.ini --- old/inflect-4.1.0/mypy.ini 1970-01-01 01:00:00.000000000 +0100 +++ new/inflect-5.0.2/mypy.ini 2020-11-15 18:40:32.000000000 +0100 @@ -0,0 +1,2 @@ +[mypy] +ignore_missing_imports = True diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/pyproject.toml new/inflect-5.0.2/pyproject.toml --- old/inflect-4.1.0/pyproject.toml 2020-02-04 03:16:44.000000000 +0100 +++ new/inflect-5.0.2/pyproject.toml 2020-11-15 18:40:32.000000000 +0100 @@ -6,3 +6,17 @@ skip-string-normalization = true [tool.setuptools_scm] + +# jaraco/skeleton#22 +[tool.jaraco.pytest.plugins.black] +addopts = "--black" + +# jaraco/skeleton#22 +[tool.jaraco.pytest.plugins.mypy] +addopts = "--mypy" + +[tool.jaraco.pytest.plugins.flake8] +addopts = "--flake8" + +[tool.jaraco.pytest.plugins.cov] +addopts = "--cov" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/pytest.ini new/inflect-5.0.2/pytest.ini --- old/inflect-4.1.0/pytest.ini 2019-11-03 01:30:02.000000000 +0100 +++ new/inflect-5.0.2/pytest.ini 2020-11-15 18:40:32.000000000 +0100 @@ -1,5 +1,9 @@ [pytest] norecursedirs=dist build .tox .eggs -addopts=--doctest-modules --flake8 --black --cov +addopts=--doctest-modules doctest_optionflags=ALLOW_UNICODE ELLIPSIS +# workaround for warning pytest-dev/pytest#6178 +junit_family=xunit2 filterwarnings= + # https://github.com/pytest-dev/pytest/issues/6928 + ignore:direct construction of .*Item has been deprecated:DeprecationWarning diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/setup.cfg new/inflect-5.0.2/setup.cfg --- old/inflect-4.1.0/setup.cfg 2020-02-04 03:25:21.405448400 +0100 +++ new/inflect-5.0.2/setup.cfg 2020-11-15 18:40:52.621753200 +0100 @@ -7,7 +7,7 @@ maintainer_email = jar...@jaraco.com description = Correctly generate plurals, singular nouns, ordinals, indefinite articles; convert numbers to words long_description = file:README.rst -url = https://github.com/jazzband/inflect +url = https://github.com/jaraco/inflect classifiers = Development Status :: 5 - Production/Stable Intended Audience :: Developers @@ -25,7 +25,6 @@ py_modules = inflect python_requires = >=3.6 install_requires = - importlib_metadata; python_version < "3.8" setup_requires = setuptools_scm[toml] >= 3.4.1 keywords = plural inflect participle @@ -34,8 +33,10 @@ pytest >= 3.5, !=3.7.3 pytest-checkdocs >= 1.2.3 pytest-flake8 - pytest-black-multipy + pytest-black >= 0.3.7; python_implementation != "PyPy" pytest-cov + pytest-mypy; python_implementation != "PyPy" + jaraco.test >= 3.2.0 pygments docs = diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/skeleton.md new/inflect-5.0.2/skeleton.md --- old/inflect-4.1.0/skeleton.md 2020-02-04 03:16:44.000000000 +0100 +++ new/inflect-5.0.2/skeleton.md 2020-11-15 18:40:32.000000000 +0100 @@ -40,6 +40,10 @@ Whenever a change is needed or desired for the general technique for packaging, it can be made in the skeleton project and then merged into each of the derived projects as needed, recommended before each release. As a result, features and best practices for packaging are centrally maintained and readily trickle into a whole suite of packages. This technique lowers the amount of tedious work necessary to create or maintain a project, and coupled with other techniques like continuous integration and deployment, lowers the cost of creating and maintaining refined Python projects to just a few, familiar Git operations. +For example, here's a session of the [path project](https://pypi.org/project/path) pulling non-conflicting changes from the skeleton: + +<img src="https://raw.githubusercontent.com/jaraco/skeleton/gh-pages/docs/refresh.svg"> + Thereafter, the target project can make whatever customizations it deems relevant to the scaffolding. The project may even at some point decide that the divergence is too great to merit renewed merging with the original skeleton. This approach applies maximal guidance while creating minimal constraints. # Features @@ -52,6 +56,7 @@ - A README.rst as reStructuredText with some popular badges, but with Read the Docs and AppVeyor badges commented out - A CHANGES.rst file intended for publishing release notes about the project - Use of [Black](https://black.readthedocs.io/en/stable/) for code formatting (disabled on unsupported Python 3.5 and earlier) +- Integrated type checking through [mypy](https://github.com/python/mypy/). ## Packaging Conventions @@ -103,47 +108,25 @@ ## Continuous Integration -The project is pre-configured to run tests through multiple CI providers. +The project is pre-configured to run Continuous Integration tests. -### Azure Pipelines +### Github Actions -[Azure Pipelines](https://azure.microsoft.com/en-us/services/devops/pipelines/) are the preferred provider as they provide free, fast, multi-platform services. See azure-pipelines.yml for more details. +[Github Actions](https://docs.github.com/en/free-pro-team@latest/actions) are the preferred provider as they provide free, fast, multi-platform services with straightforward configuration. Configured in `.github/workflows`. Features include: - - test against multiple Python versions -- run on Ubuntu Bionic - -### Travis CI - -[Travis CI](https://travis-ci.org) is configured through .travis.yml. Any new project must be enabled either through their web site or with the `travis enable` command. - -Features include: -- test against Python 3 -- run on Ubuntu Xenial -- correct for broken IPv6 - -### AppVeyor - -A minimal template for running under AppVeyor (Windows) is provided. +- run on late (and updated) platform versions +- automated releases of tagged commits ### Continuous Deployments -In addition to running tests, an additional deploy stage is configured to automatically release tagged commits to PyPI using [API tokens](https://pypi.org/help/#apitoken). The release process expects an authorized token to be configured with Azure as the `Azure secrets` variable group. This variable group needs to be created only once per organization. For example: +In addition to running tests, an additional publish stage is configured to automatically release tagged commits to PyPI using [API tokens](https://pypi.org/help/#apitoken). The release process expects an authorized token to be configured with each Github project (or org) `PYPI_TOKEN` [secret](https://docs.github.com/en/free-pro-team@latest/actions/reference/encrypted-secrets). Example: ``` -# create a resource group if none exists -az group create --name main --location eastus2 -# create the vault (try different names until something works) -az keyvault create --name secrets007 --resource-group main -# create the secret -az keyvault secret set --vault-name secrets007 --name PyPI-token --value $token +pip-run -q jaraco.develop -- -m jaraco.develop.add-github-secrets ``` -Then, in the web UI for the project's Pipelines Library, create the `Azure secrets` variable group referencing the key vault name. - -For more details, see [this blog entry](https://blog.jaraco.com/configuring-azure-pipelines-with-secets/). - ## Building Documentation Documentation is automatically built by [Read the Docs](https://readthedocs.org) when the project is registered with it, by way of the .readthedocs.yml file. To test the docs build manually, a tox env may be invoked as `tox -e docs`. Both techniques rely on the dependencies declared in `setup.cfg/options.extras_require.docs`. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/inflect-4.1.0/tox.ini new/inflect-5.0.2/tox.ini --- old/inflect-4.1.0/tox.ini 2020-02-04 03:16:44.000000000 +0100 +++ new/inflect-5.0.2/tox.ini 2020-11-15 18:40:32.000000000 +0100 @@ -3,15 +3,10 @@ minversion = 3.2 # https://github.com/jaraco/skeleton/issues/6 tox_pip_extensions_ext_venv_update = true -# Ensure that a late version of pip is used even on tox-venv. -requires = - tox-pip-version>=0.0.6 - tox-venv [testenv] deps = -pip_version = pip commands = pytest {posargs} usedevelop = True @@ -31,9 +26,11 @@ pep517>=0.5 twine[keyring]>=1.13 path + jaraco.develop>=7.1 jaraco.tidelift passenv = TWINE_PASSWORD + GITHUB_TOKEN TIDELIFT_TOKEN setenv = TWINE_USERNAME = {env:TWINE_USERNAME:__token__} @@ -41,4 +38,5 @@ python -c "import path; path.Path('dist').rmtree_p()" python -m pep517.build . python -m twine upload dist/* + python -m jaraco.develop.create-github-release python -m jaraco.tidelift.publish-release-notes