Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-akismet for openSUSE:Factory 
checked in at 2022-08-05 19:50:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-akismet (Old)
 and      /work/SRC/openSUSE:Factory/.python-akismet.new.1521 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-akismet"

Fri Aug  5 19:50:48 2022 rev:5 rq:992782 version:1.2.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-akismet/python-akismet.changes    
2021-12-14 22:01:53.751137654 +0100
+++ /work/SRC/openSUSE:Factory/.python-akismet.new.1521/python-akismet.changes  
2022-08-05 19:51:45.777573716 +0200
@@ -1,0 +2,7 @@
+Thu Aug  4 08:32:22 UTC 2022 - Otto Hollmann <[email protected]>
+
+- Update to 1.2.1:
+  * Add support for python 3.10
+  * Drop python 3.6
+
+-------------------------------------------------------------------

Old:
----
  akismet-1.1.tar.gz

New:
----
  akismet-1.2.1.tar.gz

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

Other differences:
------------------
++++++ python-akismet.spec ++++++
--- /var/tmp/diff_new_pack.dQrJTL/_old  2022-08-05 19:51:46.233574893 +0200
+++ /var/tmp/diff_new_pack.dQrJTL/_new  2022-08-05 19:51:46.241574914 +0200
@@ -1,7 +1,7 @@
 #
 # spec file
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 # Copyright (c) 2017 Matthias Fehring <[email protected]>
 #
 # All modifications and additions to the file contributed by third parties
@@ -21,7 +21,7 @@
 %define mod_name akismet
 %define skip_python2 1
 Name:           python-%{mod_name}
-Version:        1.1
+Version:        1.2.1
 Release:        0
 Summary:        Interface to the Akismet Anti Comment-Spam API
 License:        BSD-3-Clause

++++++ akismet-1.1.tar.gz -> akismet-1.2.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/LICENSE new/akismet-1.2.1/LICENSE
--- old/akismet-1.1/LICENSE     2020-02-02 04:47:03.000000000 +0100
+++ new/akismet-1.2.1/LICENSE   2022-05-27 06:40:39.000000000 +0200
@@ -1,4 +1,4 @@
-Copyright (c) 2005-2020, Michael Foord and James Bennett. All rights
+Copyright (c) 2005-2022, Michael Foord and James Bennett. All rights
 reserved.
 
 Redistribution and use in source and binary forms, with or without
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/PKG-INFO new/akismet-1.2.1/PKG-INFO
--- old/akismet-1.1/PKG-INFO    2020-02-02 06:04:43.000000000 +0100
+++ new/akismet-1.2.1/PKG-INFO  2022-05-27 07:15:38.859859700 +0200
@@ -1,33 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
 Name: akismet
-Version: 1.1
+Version: 1.2.1
 Summary: A Python interface to the Akismet spam-filtering API.
 Home-page: https://github.com/ubernostrum/akismet
 Author: Michael Foord and James Bennett
 Author-email: [email protected]
 License: BSD 3-Clause
-Description: .. -*-restructuredtext-*-
-        
-        .. image:: https://travis-ci.org/ubernostrum/akismet.svg?branch=master
-            :target: https://travis-ci.org/ubernostrum/akismet
-        
-        ``akismet`` is a Python (3.5+) library wrapping `the Wordpress Akismet
-        spam-detection service <https://akismet.com/>`_. All methods of the
-        Akismet API are supported:
-        
-        * Checking comments for spam
-        
-        * Reporting comments incorrectly classified as not spam
-        
-        * Reporting comments incorrectly classified as spam
-        
-        Use of this module requires an Akismet API key (which must be obtained
-        from the Akismet service).
-        
-        The Python ``akismet`` module was originally written by Michael Foord.
-        
-        Full documentation is `available online 
<http://akismet.readthedocs.io/>`_.
-Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Environment :: Web Environment
 Classifier: Intended Audience :: Developers
@@ -35,9 +13,33 @@
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.5
-Classifier: Programming Language :: Python :: 3.6
 Classifier: Programming Language :: Python :: 3.7
 Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
 Classifier: Topic :: Utilities
-Requires-Python: >=3.5
+Requires-Python: >=3.7
+License-File: LICENSE
+
+.. -*-restructuredtext-*-
+
+.. image:: https://github.com/ubernostrum/akismet/workflows/CI/badge.svg
+   :alt: CI status image
+   :target: https://github.com/ubernostrum/akismet/actions?query=workflow%3ACI
+
+``akismet`` is a Python library wrapping `the Wordpress Akismet
+spam-detection service <https://akismet.com/>`_. All methods of the
+Akismet API are supported:
+
+* Checking comments for spam
+
+* Reporting comments incorrectly classified as not spam
+
+* Reporting comments incorrectly classified as spam
+
+Use of this module requires an Akismet API key (which must be obtained
+from the Akismet service).
+
+The Python ``akismet`` module was originally written by Michael Foord.
+
+Full documentation is `available online <http://akismet.readthedocs.io/>`_.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/README.rst new/akismet-1.2.1/README.rst
--- old/akismet-1.1/README.rst  2020-02-02 04:46:54.000000000 +0100
+++ new/akismet-1.2.1/README.rst        2022-05-27 07:11:33.000000000 +0200
@@ -1,9 +1,10 @@
 .. -*-restructuredtext-*-
 
-.. image:: https://travis-ci.org/ubernostrum/akismet.svg?branch=master
-    :target: https://travis-ci.org/ubernostrum/akismet
+.. image:: https://github.com/ubernostrum/akismet/workflows/CI/badge.svg
+   :alt: CI status image
+   :target: https://github.com/ubernostrum/akismet/actions?query=workflow%3ACI
 
-``akismet`` is a Python (3.5+) library wrapping `the Wordpress Akismet
+``akismet`` is a Python library wrapping `the Wordpress Akismet
 spam-detection service <https://akismet.com/>`_. All methods of the
 Akismet API are supported:
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/docs/conf.py 
new/akismet-1.2.1/docs/conf.py
--- old/akismet-1.1/docs/conf.py        2020-02-02 05:57:16.000000000 +0100
+++ new/akismet-1.2.1/docs/conf.py      2022-05-27 07:12:01.000000000 +0200
@@ -1,7 +1,6 @@
 import os
 import sys
 
-
 on_rtd = os.environ.get("READTHEDOCS", None) == "True"
 
 extensions = ["sphinx.ext.intersphinx"]
@@ -9,12 +8,11 @@
 source_suffix = ".rst"
 master_doc = "index"
 project = "akismet"
-copyright = "2005-2020, Michael Foord and James Bennett"
-version = "1.1"
-release = "1.1"
+copyright = "2005-2022, Michael Foord and James Bennett"
+version = "1.2"
+release = "1.2.1"
 exclude_trees = ["_build"]
 pygments_style = "sphinx"
-html_static_path = ["_static"]
 htmlhelp_basename = "akismetdoc"
 latex_documents = [
     (
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/docs/faq.rst 
new/akismet-1.2.1/docs/faq.rst
--- old/akismet-1.1/docs/faq.rst        2020-01-30 04:04:19.000000000 +0100
+++ new/akismet-1.2.1/docs/faq.rst      2022-05-27 06:42:00.000000000 +0200
@@ -13,14 +13,14 @@
 The |release| release of `akismet` supports the following versions of
 Python:
 
-* Python 3.5
-
-* Python 3.6
-
 * Python 3.7
 
 * Python 3.8
 
+* Python 3.9
+
+* Python 3.10
+
 Older versions of Python are not supported and will cause errors.
 
 
@@ -91,8 +91,8 @@
 identifying the application or platform with version, and Akismet
 plugin/implementation name with version. In accordance with this,
 `akismet` sends an HTTP `User-Agent` based on the versions of Python
-and `akismet` in use. For example, `akismet` 1.1 on Python 3.5 will
-send `Python/3.6 | akismet.py/1.1`.
+and `akismet` in use. For example, `akismet` 1.1 on Python 3.7 will
+send `Python/3.7 | akismet.py/1.1`.
 
 
 Does `akismet` support the "pro-tip" header?
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/docs/index.rst 
new/akismet-1.2.1/docs/index.rst
--- old/akismet-1.1/docs/index.rst      2020-02-02 04:40:12.000000000 +0100
+++ new/akismet-1.2.1/docs/index.rst    2022-05-27 07:11:44.000000000 +0200
@@ -1,7 +1,7 @@
 akismet |release|
 =================
 
-`akismet` is a Python (3.5+) library wrapping `the Wordpress Akismet
+`akismet` is a Python library wrapping `the Wordpress Akismet
 spam-filtering service <https://akismet.com/>`_. All methods of the
 Akismet API are supported:
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/docs/install.rst 
new/akismet-1.2.1/docs/install.rst
--- old/akismet-1.1/docs/install.rst    2020-01-30 04:04:09.000000000 +0100
+++ new/akismet-1.2.1/docs/install.rst  2022-05-27 06:41:42.000000000 +0200
@@ -7,14 +7,14 @@
 The |release| version of `akismet` is officially tested and supported
 on the following versions of Python:
 
-* Python 3.5
-
-* Python 3.6
-
 * Python 3.7
 
 * Python 3.8
 
+* Python 3.9
+
+* Python 3.10
+
 
 Normal installation
 -------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/docs/upgrade.rst 
new/akismet-1.2.1/docs/upgrade.rst
--- old/akismet-1.1/docs/upgrade.rst    2020-02-02 04:46:18.000000000 +0100
+++ new/akismet-1.2.1/docs/upgrade.rst  2022-05-27 06:47:26.000000000 +0200
@@ -6,6 +6,12 @@
 Changes within the 1.x release series
 -------------------------------------
 
+Version 1.2
+-----------
+
+* The supported Python versions are now 3.7, 3.8, 3.9, and
+  3.10. Support for earlier Python 3 versions is dropped.
+
 Version 1.1
 ~~~~~~~~~~~
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/setup.cfg new/akismet-1.2.1/setup.cfg
--- old/akismet-1.1/setup.cfg   2020-02-02 06:04:43.000000000 +0100
+++ new/akismet-1.2.1/setup.cfg 2022-05-27 07:15:38.861101600 +0200
@@ -9,17 +9,17 @@
        Operating System :: OS Independent
        Programming Language :: Python
        Programming Language :: Python :: 3
-       Programming Language :: Python :: 3.5
-       Programming Language :: Python :: 3.6
        Programming Language :: Python :: 3.7
        Programming Language :: Python :: 3.8
+       Programming Language :: Python :: 3.9
+       Programming Language :: Python :: 3.10
        Topic :: Utilities
 description = A Python interface to the Akismet spam-filtering API.
 license = BSD 3-Clause
 long_description = file: README.rst
 name = akismet
 url = https://github.com/ubernostrum/akismet
-version = 1.1
+version = 1.2.1
 
 [options]
 install_requires = 
@@ -36,23 +36,14 @@
 fail_under = 100
 
 [flake8]
-exclude = __pycache__,.pyc
-ignore = 
-       E203,
-       W503
+extend-ignore = E203
+max-complexity = 13
 max-line-length = 88
 
 [isort]
 known_first_party = akismet
 known_third_party = mock
-lines_after_imports = 2
-
-[mypy]
-warn_no_return = False
-
-[mypy-akismet]
-disallow_untyped_defs = True
-disallow_untyped_calls = True
+profile = black
 
 [egg_info]
 tag_build = 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/setup.py new/akismet-1.2.1/setup.py
--- old/akismet-1.1/setup.py    2020-01-29 08:11:20.000000000 +0100
+++ new/akismet-1.2.1/setup.py  2022-05-27 06:40:48.000000000 +0200
@@ -3,10 +3,9 @@
 
 from setuptools import find_packages, setup
 
-
 setup(
     packages=find_packages("src"),
     package_dir={"": "src"},
     py_modules=[splitext(basename(path))[0] for path in glob("src/*.py")],
-    python_requires=">=3.5",
+    python_requires=">=3.7",
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/src/akismet.egg-info/PKG-INFO 
new/akismet-1.2.1/src/akismet.egg-info/PKG-INFO
--- old/akismet-1.1/src/akismet.egg-info/PKG-INFO       2020-02-02 
06:04:43.000000000 +0100
+++ new/akismet-1.2.1/src/akismet.egg-info/PKG-INFO     2022-05-27 
07:15:38.000000000 +0200
@@ -1,33 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
 Name: akismet
-Version: 1.1
+Version: 1.2.1
 Summary: A Python interface to the Akismet spam-filtering API.
 Home-page: https://github.com/ubernostrum/akismet
 Author: Michael Foord and James Bennett
 Author-email: [email protected]
 License: BSD 3-Clause
-Description: .. -*-restructuredtext-*-
-        
-        .. image:: https://travis-ci.org/ubernostrum/akismet.svg?branch=master
-            :target: https://travis-ci.org/ubernostrum/akismet
-        
-        ``akismet`` is a Python (3.5+) library wrapping `the Wordpress Akismet
-        spam-detection service <https://akismet.com/>`_. All methods of the
-        Akismet API are supported:
-        
-        * Checking comments for spam
-        
-        * Reporting comments incorrectly classified as not spam
-        
-        * Reporting comments incorrectly classified as spam
-        
-        Use of this module requires an Akismet API key (which must be obtained
-        from the Akismet service).
-        
-        The Python ``akismet`` module was originally written by Michael Foord.
-        
-        Full documentation is `available online 
<http://akismet.readthedocs.io/>`_.
-Platform: UNKNOWN
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Environment :: Web Environment
 Classifier: Intended Audience :: Developers
@@ -35,9 +13,33 @@
 Classifier: Operating System :: OS Independent
 Classifier: Programming Language :: Python
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.5
-Classifier: Programming Language :: Python :: 3.6
 Classifier: Programming Language :: Python :: 3.7
 Classifier: Programming Language :: Python :: 3.8
+Classifier: Programming Language :: Python :: 3.9
+Classifier: Programming Language :: Python :: 3.10
 Classifier: Topic :: Utilities
-Requires-Python: >=3.5
+Requires-Python: >=3.7
+License-File: LICENSE
+
+.. -*-restructuredtext-*-
+
+.. image:: https://github.com/ubernostrum/akismet/workflows/CI/badge.svg
+   :alt: CI status image
+   :target: https://github.com/ubernostrum/akismet/actions?query=workflow%3ACI
+
+``akismet`` is a Python library wrapping `the Wordpress Akismet
+spam-detection service <https://akismet.com/>`_. All methods of the
+Akismet API are supported:
+
+* Checking comments for spam
+
+* Reporting comments incorrectly classified as not spam
+
+* Reporting comments incorrectly classified as spam
+
+Use of this module requires an Akismet API key (which must be obtained
+from the Akismet service).
+
+The Python ``akismet`` module was originally written by Michael Foord.
+
+Full documentation is `available online <http://akismet.readthedocs.io/>`_.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/src/akismet.py 
new/akismet-1.2.1/src/akismet.py
--- old/akismet-1.1/src/akismet.py      2020-02-02 05:56:54.000000000 +0100
+++ new/akismet-1.2.1/src/akismet.py    2020-12-12 09:44:24.000000000 +0100
@@ -5,7 +5,6 @@
 
 import requests
 
-
 __version__ = "1.1"
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/akismet-1.1/tox.ini new/akismet-1.2.1/tox.ini
--- old/akismet-1.1/tox.ini     2020-01-30 04:00:40.000000000 +0100
+++ new/akismet-1.2.1/tox.ini   2022-05-27 06:42:48.000000000 +0200
@@ -1,112 +1,188 @@
-# Tox (https://tox.readthedocs.io/) is a tool for running tests
-# in multiple virtualenvs. This configuration file will run the
-# test suite on all supported python versions. To use it, "pip install tox"
-# and then run "tox" from this directory.
+# This is a configuration file for running tests, linters and other
+# code-quality checks, using Tox (https://tox.readthedocs.io/), which
+# allows configuring and automatically running many different test
+# environments and checks, each in a separate Python virtual
+# environment (and each potentially using a different version of
+# Python).
+#
+# Using this file requires having tox installed -- "pip install tox"
+# or refer to Tox's own documentation -- and a functioning
+# installation of at least one targeted Python version. Running "tox"
+# with no command-line arguments will attempt to run all environments
+# against all targeted Python versions, and will fail if any Python
+# versions are missing. To select only certain test environments to
+# run, use the "-e" command-line flag and pass either a single
+# environment name, or a comma-separated list of environment names. To
+# see all available environments with their descriptions, run:
+# "tox -v 1 --listenvs"
 
+
+# Base configuration: list of environments and Python versions.
+################################################################################
+
+# Environment matrix.
 [tox]
 envlist =
-  py35
-  py36
-  py37
-  py38
+  py{37,38,39,310}
   black
+  check-description
+  check-manifest
   docs
-  spelling
   flake8
   isort
+  spelling
 
-[cleanup]
-commands =
+# Configuration for running on GitHub Actions via tox-gh-actions.
+[gh-actions]
+python =
+  3.6: py36
+  3.7: py37
+  3.8: py38
+  3.9: py39
+  3.10: py310, black, check-description, check-manifest, docs, flake8, isort, 
spelling
+
+
+# The base test environment -- runs the unit test suite with coverage.
+################################################################################
+[testenv]
+description = Run tests with coverage report.
+allowlist_externals =
+  find
+  rm
+# Python silences deprecation warnings by default, but we want to see
+# them during test runs.
+setenv =
+    PYTHONWARNINGS=once::DeprecationWarning
+# Ensure each virtualenv always has latest pip, so output doesn't get
+# cluttered with messages about needing to upgrade it. Note that tox's
+# 'download=true' option doesn't quite do the same thing: it ensures
+# pip/setuptools/wheel get upgraded at virtualenv creation time, but
+# will not upgrade them when reusing an already-created virtualenv.
+commands_pre =
+  {envpython} -m pip install --upgrade pip
+# Many test runs will leave behind some type of artifact -- Python
+# bytecode, packaging-related files, coverage data -- which should be
+# removed before the next run in order to ensure a clean starting
+# point. The commands below run after the main test commands of each
+# virtualenv, and perform this cleanup.
+commands_post =
   find {toxinidir}/tests -type f -name "*.pyc" -delete
   find {toxinidir}/tests -type d -name "__pycache__" -delete
   find {toxinidir}/src -type f -name "*.pyc" -delete
   find {toxinidir}/src -type d -name "__pycache__" -delete
   find {toxinidir}/src -type f -path "*.egg-info*" -delete
   find {toxinidir}/src -type d -path "*.egg-info" -delete
-  rm -rf .cache
-  rm -f .coverage
-  rm -rf {toxinidir}/.pytest_cache
-
-[pipupgrade]
+  rm -f {toxinidir}/.coverage
 commands =
-  python -m pip install --upgrade pip
+  {posargs:pytest -vv --ignore=src --cov=akismet --cov-report term-missing}
+deps =
+  pytest
+  pytest-cov
+passenv =
+  TEST_AKISMET_API_KEY
+  TEST_AKISMET_BLOG_URL
 
-[testenv:black]
-basepython = python3.8
-changedir = {toxinidir}
-deps = black
-commands =
-  {[pipupgrade]commands}
-  black --line-length 88 --check --diff {toxinidir}/src {toxinidir}/tests 
{toxinidir}/docs {toxinidir}
-  {[cleanup]commands}
+# Documentation checks.
+################################################################################
 
+# Runs an HTML build of the documentation, and fails if there's an
+# error in building it.
 [testenv:docs]
+description = Check that the documentation can build.
+basepython = python3.10
 changedir = {toxinidir}/docs
 commands =
-  {[pipupgrade]commands}
   sphinx-build -b html -d {envtmpdir}/doctrees . {envtmpdir}/html
-  {[cleanup]commands}
 deps =
   sphinx
   sphinx_rtd_theme
 
+# Runs a spelling checker over the documentation, and if misspelled
+# words are found, fails the build and outputs a list of
+# them. Requires the 'enchant' C library preinstalled on the target
+# system.
 [testenv:spelling]
+description = Spell-check documentation.
+basepython = python3.10
 changedir = {toxinidir}/docs
+# This is the only env where we silence deprecation warnings, because
+# we'd already catch any from our actual codebase elsewhere and in
+# this env we are asking Sphinx to promote warnings to errors in order
+# to fail the build on anything caught by the spelling checker.
+setenv =
+    PYTHONWARNINGS=ignore::DeprecationWarning
 commands =
-  {[pipupgrade]commands}
-  sphinx-build -b spelling -d {envtmpdir}/doctrees . {envtmpdir}/html
-  {[cleanup]commands}
+  sphinx-build -W -b spelling -d {envtmpdir}/doctrees . {envtmpdir}/html
 deps =
-  {[testenv:docs]deps}
+  sphinx
+  sphinx_rtd_theme
   pyenchant
   sphinxcontrib-spelling
 
+
+# Linters.
+################################################################################
+
+# Runs the Black code formatter over the entire code base, and fails
+# if Black thinks any files need to be reformatted.
+[testenv:black]
+description = Check code formatting using Black.
+basepython = python3.10
+changedir = {toxinidir}
+deps = black
+commands =
+  black --line-length 88 --check --diff {toxinidir}/src {toxinidir}/tests 
{toxinidir}/docs {toxinidir}
+
+# Runs the flake8 linter over the entire code base, and fails if
+# flake8 finds any problems.
 [testenv:flake8]
+description = Lint code with flake8.
+basepython = python3.10
 changedir = {toxinidir}
 deps = flake8
 commands =
-  {[pipupgrade]commands}
   flake8 {toxinidir}/src/akismet.py {toxinidir}/tests
-  {[cleanup]commands}
 
+# Runs the isort import linter over the entire code base, and fails if
+# any problems are found.
 [testenv:isort]
+description = Lint imports with isort.
+basepython = python3.10
 changedir = {toxinidir}
 deps = isort
 commands =
-  {[pipupgrade]commands}
-  isort --recursive --check-only --diff {toxinidir}/src {toxinidir}/tests
-  {[cleanup]commands}
+  isort --check-only --diff {toxinidir}/src {toxinidir}/tests
 
-[testenv:mypy]
-basepython = python3.8
-changedir = {toxinidir}
-deps = mypy
-commands =
-  {[pipupgrade]commands}
-  mypy {toxinidir}/src {toxinidir}/tests
-  {[cleanup]commands}
 
-[testenv]
-whitelist_externals =
-  find
-  rm
-setenv =
-    PYTHONWARNINGS=once::DeprecationWarning
-commands =
-  {[pipupgrade]commands}
-  {posargs:pytest -vv --ignore=src --cov=akismet --cov-report term-missing}
-  {[cleanup]commands}
-deps =
-  pytest
-  pytest-cov
-  zipp==1.1.0
-passenv =
-  TEST_AKISMET_API_KEY
-  TEST_AKISMET_BLOG_URL
+# Packaging checks.
+################################################################################
 
-[travis]
-python =
-  3.5: py35
-  3.6: py36
-  3.7: py37
-  3.8: py38, black, docs, flake8, isort, mypy, spelling
+# Builds the package and runs 'twine check' to ensure it will render
+# correctly when uploaded to the Python Package Index, or fail if not.
+[testenv:check-description]
+description = Check that the package description will render on the Python 
Package Index.
+basepython = python3.10
+changedir = {toxinidir}
+skip_install = true
+deps =
+  twine
+# In this environment we always want latest wheel in addition to
+# latest pip.
+commands_pre =
+  {envpython} -m pip install --upgrade pip setuptools wheel
+commands =
+  {envpython} -m pip wheel -w {envtmpdir}/build --no-deps .
+  twine check {envtmpdir}/build/*
+
+# Runs check-manifest, a tool that builds the package and compares the
+# files in the package to the files under version control, and fails
+# if any version-controlled files do not end up in the package.
+[testenv:check-manifest]
+description = Check that the set of packaged files matches the set of 
version-controlled files.
+basepython = python3.10
+changedir = {toxinidir}
+skip_install = true
+deps =
+  check-manifest
+commands =
+  check-manifest --verbose

Reply via email to