commit python-radon for openSUSE:Factory
Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-radon for openSUSE:Factory checked in at 2023-09-01 14:19:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-radon (Old) and /work/SRC/openSUSE:Factory/.python-radon.new.1766 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "python-radon" Fri Sep 1 14:19:42 2023 rev:14 rq:1108364 version:6.0.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-radon/python-radon.changes 2023-06-14 16:31:56.607428609 +0200 +++ /work/SRC/openSUSE:Factory/.python-radon.new.1766/python-radon.changes 2023-09-01 14:20:34.931168689 +0200 @@ -1,0 +2,15 @@ +Fri Sep 1 04:45:39 UTC 2023 - Steve Kowalik <steven.kowalik@suse.com> + +- Update to 6.0.1: + * Prevent tomllib error when the `toml` module is not available + * Add support for `match` pattern in Python 3.10+, by @DolajoCZ: #227 + * Fix typo in Markdown export, reported by @huornlmj: #231 + * Remove unnecessary "future" dependency, by @mgorny: #234 + * Add `pyproject.toml` support, by @ajslater: #236 + * Allow Mando v0.7.1, by @ajslater: #237 + * Fix HCHarvester JSON results format, by @benabel: #240 +- Use pyproject macros due to the switch to poetry. +- Add patch add-scripts-to-pyproject.toml.patch, make sure the CLI tool + is built. + +------------------------------------------------------------------- Old: ---- radon-5.1.0.tar.gz New: ---- add-scripts-to-pyproject.toml.patch radon-6.0.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-radon.spec ++++++ --- /var/tmp/diff_new_pack.4V2Fs5/_old 2023-09-01 14:20:35.923204096 +0200 +++ /var/tmp/diff_new_pack.4V2Fs5/_new 2023-09-01 14:20:35.927204238 +0200 @@ -1,7 +1,7 @@ # # spec file for package python-radon # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,25 +18,26 @@ %{?sle15_python_module_pythons} Name: python-radon -Version: 5.1.0 +Version: 6.0.1 Release: 0 Summary: Code Metrics in Python License: MIT -Group: Development/Languages/Python URL: https://github.com/rubik/radon Source: https://files.pythonhosted.org/packages/source/r/radon/radon-%{version}.tar.gz -BuildRequires: %{python_module setuptools} +# PATCH-FIX-UPSTREAM gh#rubik/radon#250 +Patch0: add-scripts-to-pyproject.toml.patch +BuildRequires: %{python_module pip} +BuildRequires: %{python_module poetry} +BuildRequires: %{python_module wheel} BuildRequires: fdupes BuildRequires: python-rpm-macros Requires: python-colorama >= 0.4.1 -Requires: python-future Requires: python-mando >= 0.6 Requires(post): update-alternatives Requires(postun):update-alternatives BuildArch: noarch # SECTION test requirements BuildRequires: %{python_module colorama >= 0.4.1} -BuildRequires: %{python_module future} BuildRequires: %{python_module mando >= 0.6} BuildRequires: %{python_module pytest >= 2.7} BuildRequires: %{python_module pytest-mock} @@ -53,17 +54,16 @@ * Maintainability Index (the one used in Visual Studio) %prep -%setup -q -n radon-%{version} +%autosetup -p1 -n radon-%{version} # unpin mando sed -i -E 's/(mando.*),<0\.7/\1/' setup.py %build -%python_build +%pyproject_wheel %install -%python_install +%pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitelib} - %python_clone -a %{buildroot}%{_bindir}/radon %check @@ -80,6 +80,6 @@ %license LICENSE %python_alternative %{_bindir}/radon %{python_sitelib}/radon -%{python_sitelib}/radon-%{version}*-info +%{python_sitelib}/radon-%{version}.dist-info %changelog ++++++ add-scripts-to-pyproject.toml.patch ++++++ From d88d9f5651aab064b5535e3b33d923771dcceeea Mon Sep 17 00:00:00 2001 From: Steve Kowalik <steven@wedontsleep.org> Date: Fri, 1 Sep 2023 14:37:06 +1000 Subject: [PATCH] Add radon CLI script to pyproject.toml The pyproject.toml is missing the tool.poetry.scripts section, which means that builds that rely only on pyproject.toml will not install it. --- pyproject.toml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index 0e869cf..c25f1bd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -26,6 +26,9 @@ argparse = "*" nbformat = "*" tox = "^4.4.7" +[tool.poetry.scripts] +radon = "radon:main" + [build-system] requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" ++++++ radon-5.1.0.tar.gz -> radon-6.0.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/CHANGELOG new/radon-6.0.1/CHANGELOG --- old/radon-5.1.0/CHANGELOG 2021-08-08 15:22:30.000000000 +0200 +++ new/radon-6.0.1/CHANGELOG 2023-03-26 08:23:37.000000000 +0200 @@ -1,3 +1,19 @@ +6.0.1 (Mar 26, 2023) +-------------------- + +- Prevent tomllib error when the `toml` module is not available + +6.0.0 (Mar 26, 2023) +-------------------- + +- Fix typo in changelog, by @cclauss: #229 +- Add support for `match` pattern in Python 3.10+, by @DolajoCZ: #227 +- Fix typo in Markdown export, reported by @huornlmj: #231 +- Remove unnecessary "future" dependency, by @mgorny: #234 +- Add `pyproject.toml` support, by @ajslater: #236 +- Allow Mando v0.7.1, by @ajslater: #237 +- Fix HCHarvester JSON results format, by @benabel: #240 + 5.1.0 (Aug 08, 2021) -------------------- @@ -192,7 +208,7 @@ ------------------ - Add ``--xml`` option to `cc` command: #49. -- Officialy support Python 3.4. +- Officially support Python 3.4. - Remove pathfinder: #59. - Reduce drastically unit-testing time: #56. - Update documentation (http://radon.readthedocs.org/en/latest/): #60. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/PKG-INFO new/radon-6.0.1/PKG-INFO --- old/radon-5.1.0/PKG-INFO 2021-08-08 15:25:05.495589500 +0200 +++ new/radon-6.0.1/PKG-INFO 2023-03-26 08:24:01.756679800 +0200 @@ -1,233 +1,13 @@ -Metadata-Version: 1.1 +Metadata-Version: 2.1 Name: radon -Version: 5.1.0 +Version: 6.0.1 Summary: Code Metrics in Python Home-page: https://radon.readthedocs.org/ +Download-URL: https://pypi.python.org/radon/ Author: Michele Lacchia Author-email: michelelacchia@gmail.com License: MIT -Download-URL: https://pypi.python.org/radon/ -Description: Radon - ===== - - .. image:: https://img.shields.io/codacy/grade/623b84f5f6e6708c486f371e10da3610.svg?sty... - :alt: Codacy badge - :target: https://www.codacy.com/app/rubik/radon/dashboard - - .. image:: https://img.shields.io/travis/rubik/radon/master.svg?style=for-the-badge - :alt: Travis-CI badge - :target: https://travis-ci.org/rubik/radon - - .. image:: https://img.shields.io/coveralls/rubik/radon/master.svg?style=for-the-badge - :alt: Coveralls badge - :target: https://coveralls.io/r/rubik/radon?branch=master - - .. image:: https://img.shields.io/pypi/v/radon.svg?style=for-the-badge - :alt: PyPI latest version badge - :target: https://pypi.python.org/pypi/radon - - .. image:: https://img.shields.io/pypi/l/radon.svg?style=for-the-badge - :alt: Radon license - :target: https://pypi.python.org/pypi/radon - - - ---- - - Radon is a Python tool that computes various metrics from the source code. - Radon can compute: - - * **McCabe's complexity**, i.e. cyclomatic complexity - * **raw** metrics (these include SLOC, comment lines, blank lines, &c.) - * **Halstead** metrics (all of them) - * **Maintainability Index** (the one used in Visual Studio) - - Requirements - ------------ - - Radon will run from **Python 2.7** to **Python 3.8** (except Python versions - from 3.0 to 3.3) with a single code base and without the need of tools like - 2to3 or six. It can also run on **PyPy** without any problems (currently PyPy - 3.5 v7.3.1 is used in tests). - - Radon depends on as few packages as possible. Currently only `mando` is - strictly required (for the CLI interface). `colorama` is also listed as a - dependency but if Radon cannot import it, the output simply will not be - colored. - - **Note**: - **Python 2.6** was supported until version 1.5.0. Starting from version 2.0, it - is not supported anymore. - - Installation - ------------ - - With Pip: - - .. code-block:: sh - - $ pip install radon - - Or download the source and run the setup file: - - .. code-block:: sh - - $ python setup.py install - - Usage - ----- - - Radon can be used either from the command line or programmatically. - Documentation is at https://radon.readthedocs.org/. - - Cyclomatic Complexity Example - ----------------------------- - - Quick example: - - .. code-block:: sh - - $ radon cc sympy/solvers/solvers.py -a -nc - sympy/solvers/solvers.py - F 346:0 solve - F - F 1093:0 _solve - F - F 1434:0 _solve_system - F - F 2647:0 unrad - F - F 110:0 checksol - F - F 2238:0 _tsolve - F - F 2482:0 _invert - F - F 1862:0 solve_linear_system - E - F 1781:0 minsolve_linear_system - D - F 1636:0 solve_linear - D - F 2382:0 nsolve - C - - 11 blocks (classes, functions, methods) analyzed. - Average complexity: F (61.0) - - Explanation: - - * ``cc`` is the radon command to compute Cyclomatic Complexity - * ``-a`` tells radon to calculate the average complexity at the end. Note that - the average is computed among the *shown* blocks. If you want the total - average, among all the blocks, regardless of what is being shown, you should - use ``--total-average``. - * ``-nc`` tells radon to print only results with a complexity rank of C or - worse. Other examples: ``-na`` (from A to F), or ``-nd`` (from D to F). - * The letter *in front of* the line numbers represents the type of the block - (**F** means function, **M** method and **C** class). - - Actually it's even better: it's got colors! - - .. image:: https://cloud.githubusercontent.com/assets/238549/3707477/5793aeaa-1435-11e4... - :alt: A screen of Radon's cc command - - - **Note about file encoding** - - On some systems, such as Windows, the default encoding is not UTF-8. If you are - using Unicode characters in your Python file and want to analyze it with Radon, - you'll have to set the `RADONFILESENCODING` environment variable to `UTF-8`. - - - On a Continuous Integration server - ---------------------------------- - - If you are looking to use `radon` on a CI server you may be better off with - `xenon <https://github.com/rubik/xenon>`_. Although still experimental, it will - fail (that means exiting with a non-zero exit code) when various thresholds are - surpassed. `radon` is more of a reporting tool, while `xenon` is a monitoring - one. - - If you are looking for more complete solutions, read the following sections. - - Codacy - ++++++++++++ - - `Codacy <https://www.codacy.com/>`_ uses Radon `by default <https://support.codacy.com/hc/en-us/articles/213632009-Engines#other-tools>`_ to calculate metrics from the source code. - - Code Climate - ++++++++++++ - - Radon is available as a `Code Climate Engine <https://docs.codeclimate.com/docs/list-of-engines>`_. - To understand how to add Radon's checks to your Code Climate Platform, head - over to their documentation: - https://docs.codeclimate.com/v1.0/docs/radon - - coala Analyzer - ++++++++++++++ - - Radon is also supported in `coala <http://coala.io/>`_. To add Radon's - checks to coala, simply add the ``RadonBear`` to one of the sections in - your ``.coafile``. - - CodeFactor - ++++++++++++ - - `CodeFactor <https://www.codefactor.io/>`_ uses Radon `out-of-the-box <https://support.codefactor.io/i24-analysis-tools-open-source>`_ to calculate Cyclomatic Complexity. - - Usage with Jupyter Notebooks - ---------------------------- - - Radon can be used with ``.ipynb`` files to inspect code metrics for Python cells. Any ``%`` macros will be ignored in the metrics. - - .. note:: - - Jupyter Notebook support requires the optional ``nbformat`` package. To install, run ``pip install nbformat``. - - To enable scanning of Jupyter notebooks, add the ``--include-ipynb`` flag. - - To enable reporting of individual cells, add the ``--ipynb-cells`` flag. - - Quick example: - - .. code-block:: sh - - $ radon raw --include-ipynb --ipynb-cells . - example.ipynb - LOC: 63 - LLOC: 37 - SLOC: 37 - Comments: 3 - Single comments: 2 - Multi: 10 - Blank: 14 - - Comment Stats - (C % L): 5% - (C % S): 8% - (C + M % L): 21% - example.ipynb:[0] - LOC: 0 - LLOC: 0 - SLOC: 0 - Comments: 0 - Single comments: 0 - Multi: 0 - Blank: 0 - - Comment Stats - (C % L): 0% - (C % S): 0% - (C + M % L): 0% - example.ipynb:[1] - LOC: 2 - LLOC: 2 - SLOC: 2 - Comments: 0 - Single comments: 0 - Multi: 0 - Blank: 0 - - Comment Stats - (C % L): 0% - (C % S): 0% - (C + M % L): 0% - - - - Links - ----- - - * Documentation: https://radon.readthedocs.org - * PyPI: http://pypi.python.org/pypi/radon - * Issue Tracker: https://github.com/rubik/radon/issues - +Project-URL: Source, https://github.com/rubik/radon Keywords: static analysis code complexity metrics Platform: any Classifier: Development Status :: 5 - Production/Stable @@ -247,3 +27,233 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules Classifier: Topic :: Software Development :: Quality Assurance Classifier: Topic :: Utilities +Provides-Extra: toml +License-File: LICENSE + +Radon +===== + +.. image:: https://img.shields.io/codacy/grade/623b84f5f6e6708c486f371e10da3610.svg?sty... + :alt: Codacy badge + :target: https://www.codacy.com/app/rubik/radon/dashboard + +.. image:: https://img.shields.io/travis/rubik/radon/master.svg?style=for-the-badge + :alt: Travis-CI badge + :target: https://travis-ci.org/rubik/radon + +.. image:: https://img.shields.io/coveralls/rubik/radon/master.svg?style=for-the-badge + :alt: Coveralls badge + :target: https://coveralls.io/r/rubik/radon?branch=master + +.. image:: https://img.shields.io/pypi/v/radon.svg?style=for-the-badge + :alt: PyPI latest version badge + :target: https://pypi.python.org/pypi/radon + +.. image:: https://img.shields.io/pypi/l/radon.svg?style=for-the-badge + :alt: Radon license + :target: https://pypi.python.org/pypi/radon + + +---- + +Radon is a Python tool that computes various metrics from the source code. +Radon can compute: + +* **McCabe's complexity**, i.e. cyclomatic complexity +* **raw** metrics (these include SLOC, comment lines, blank lines, &c.) +* **Halstead** metrics (all of them) +* **Maintainability Index** (the one used in Visual Studio) + +Requirements +------------ + +Radon will run from **Python 2.7** to **Python 3.8** (except Python versions +from 3.0 to 3.3) with a single code base and without the need of tools like +2to3 or six. It can also run on **PyPy** without any problems (currently PyPy +3.5 v7.3.1 is used in tests). + +Radon depends on as few packages as possible. Currently only `mando` is +strictly required (for the CLI interface). `colorama` is also listed as a +dependency but if Radon cannot import it, the output simply will not be +colored. + +**Note**: +**Python 2.6** was supported until version 1.5.0. Starting from version 2.0, it +is not supported anymore. + +Installation +------------ + +With Pip: + +.. code-block:: sh + + $ pip install radon + +If you want to configure Radon from `pyproject.toml` and you run Python <3.11, +you'll need the extra `toml` dependency: + +.. code-block:: sh + + $ pip install radon[toml] + +Or download the source and run the setup file: + +.. code-block:: sh + + $ python setup.py install + +Usage +----- + +Radon can be used either from the command line or programmatically. +Documentation is at https://radon.readthedocs.org/. + +Cyclomatic Complexity Example +----------------------------- + +Quick example: + +.. code-block:: sh + + $ radon cc sympy/solvers/solvers.py -a -nc + sympy/solvers/solvers.py + F 346:0 solve - F + F 1093:0 _solve - F + F 1434:0 _solve_system - F + F 2647:0 unrad - F + F 110:0 checksol - F + F 2238:0 _tsolve - F + F 2482:0 _invert - F + F 1862:0 solve_linear_system - E + F 1781:0 minsolve_linear_system - D + F 1636:0 solve_linear - D + F 2382:0 nsolve - C + + 11 blocks (classes, functions, methods) analyzed. + Average complexity: F (61.0) + +Explanation: + +* ``cc`` is the radon command to compute Cyclomatic Complexity +* ``-a`` tells radon to calculate the average complexity at the end. Note that + the average is computed among the *shown* blocks. If you want the total + average, among all the blocks, regardless of what is being shown, you should + use ``--total-average``. +* ``-nc`` tells radon to print only results with a complexity rank of C or + worse. Other examples: ``-na`` (from A to F), or ``-nd`` (from D to F). +* The letter *in front of* the line numbers represents the type of the block + (**F** means function, **M** method and **C** class). + +Actually it's even better: it's got colors! + +.. image:: https://cloud.githubusercontent.com/assets/238549/3707477/5793aeaa-1435-11e4... + :alt: A screen of Radon's cc command + + +**Note about file encoding** + +On some systems, such as Windows, the default encoding is not UTF-8. If you are +using Unicode characters in your Python file and want to analyze it with Radon, +you'll have to set the `RADONFILESENCODING` environment variable to `UTF-8`. + + +On a Continuous Integration server +---------------------------------- + +If you are looking to use `radon` on a CI server you may be better off with +`xenon <https://github.com/rubik/xenon>`_. Although still experimental, it will +fail (that means exiting with a non-zero exit code) when various thresholds are +surpassed. `radon` is more of a reporting tool, while `xenon` is a monitoring +one. + +If you are looking for more complete solutions, read the following sections. + +Codacy +++++++++++++ + +`Codacy <https://www.codacy.com/>`_ uses Radon `by default <https://support.codacy.com/hc/en-us/articles/213632009-Engines#other-tools>`_ to calculate metrics from the source code. + +Code Climate +++++++++++++ + +Radon is available as a `Code Climate Engine <https://docs.codeclimate.com/docs/list-of-engines>`_. +To understand how to add Radon's checks to your Code Climate Platform, head +over to their documentation: +https://docs.codeclimate.com/v1.0/docs/radon + +coala Analyzer +++++++++++++++ + +Radon is also supported in `coala <http://coala.io/>`_. To add Radon's +checks to coala, simply add the ``RadonBear`` to one of the sections in +your ``.coafile``. + +CodeFactor +++++++++++++ + +`CodeFactor <https://www.codefactor.io/>`_ uses Radon `out-of-the-box <https://support.codefactor.io/i24-analysis-tools-open-source>`_ to calculate Cyclomatic Complexity. + +Usage with Jupyter Notebooks +---------------------------- + +Radon can be used with ``.ipynb`` files to inspect code metrics for Python cells. Any ``%`` macros will be ignored in the metrics. + +.. note:: + + Jupyter Notebook support requires the optional ``nbformat`` package. To install, run ``pip install nbformat``. + +To enable scanning of Jupyter notebooks, add the ``--include-ipynb`` flag. + +To enable reporting of individual cells, add the ``--ipynb-cells`` flag. + +Quick example: + +.. code-block:: sh + + $ radon raw --include-ipynb --ipynb-cells . + example.ipynb + LOC: 63 + LLOC: 37 + SLOC: 37 + Comments: 3 + Single comments: 2 + Multi: 10 + Blank: 14 + - Comment Stats + (C % L): 5% + (C % S): 8% + (C + M % L): 21% + example.ipynb:[0] + LOC: 0 + LLOC: 0 + SLOC: 0 + Comments: 0 + Single comments: 0 + Multi: 0 + Blank: 0 + - Comment Stats + (C % L): 0% + (C % S): 0% + (C + M % L): 0% + example.ipynb:[1] + LOC: 2 + LLOC: 2 + SLOC: 2 + Comments: 0 + Single comments: 0 + Multi: 0 + Blank: 0 + - Comment Stats + (C % L): 0% + (C % S): 0% + (C + M % L): 0% + + + +Links +----- + +* Documentation: https://radon.readthedocs.org +* PyPI: http://pypi.python.org/pypi/radon +* Issue Tracker: https://github.com/rubik/radon/issues diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/README.rst new/radon-6.0.1/README.rst --- old/radon-5.1.0/README.rst 2020-09-28 18:14:30.000000000 +0200 +++ new/radon-6.0.1/README.rst 2023-03-25 16:08:39.000000000 +0100 @@ -58,6 +58,13 @@ $ pip install radon +If you want to configure Radon from `pyproject.toml` and you run Python <3.11, +you'll need the extra `toml` dependency: + +.. code-block:: sh + + $ pip install radon[toml] + Or download the source and run the setup file: .. code-block:: sh diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/docs/commandline.rst new/radon-6.0.1/docs/commandline.rst --- old/radon-5.1.0/docs/commandline.rst 2021-05-09 16:33:28.000000000 +0200 +++ new/radon-6.0.1/docs/commandline.rst 2023-03-25 16:09:10.000000000 +0100 @@ -23,6 +23,7 @@ Radon will look for the following files to determine default arguments: * ``radon.cfg`` +* ``pyproject.toml`` (with optional `toml` install on Python <3.11) * ``setup.cfg`` * ``~/.radon.cfg`` @@ -390,7 +391,8 @@ .. option:: -j, --json - If given, the results will be converted into JSON. + If given, the results will be converted into JSON. Note that the JSON export + does not include the summary (enabled with the option `-s, --summary`). .. option:: -O, --output-file @@ -429,7 +431,7 @@ The :command:`hal` command -------------------------- +-------------------------- .. program:: hal diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/docs/intro.rst new/radon-6.0.1/docs/intro.rst --- old/radon-5.1.0/docs/intro.rst 2020-03-14 09:24:13.000000000 +0100 +++ new/radon-6.0.1/docs/intro.rst 2023-03-25 16:07:52.000000000 +0100 @@ -22,6 +22,8 @@ if +1 An `if` statement is a single decision. elif +1 The `elif` statement adds another decision. else +0 The `else` statement does not cause a new decision. The decision is at the `if`. + case pattern +1 The `case pattern` statement is a single decision. + case _ +0 The `case _` statement does not cause a new decision. The decision is at the `case pattern`. for +1 There is a decision at the start of the loop. while +1 There is a decision at the `while` statement. except +1 Each `except` branch adds a new conditional path of execution. @@ -137,7 +139,7 @@ 2. Don M. Coleman, Dan Ash, Bruce Lowther, Paul W. Oman. Using Metrics to Evaluate Software System Maintainability. IEEE Computer 27(8), 1994. (`doi - <http://doi.ieeecomputersociety.org/10.1109/2.303623>`_, `postprint + <http://doi.ieeecomputersociety.org/10.1109/2.303623>`__, `postprint <http://www.ecs.csun.edu/~rlingard/comp589/ColemanPaper.pdf>`_) 3. `Maintainability Index Range and Meaning diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/pyproject.toml new/radon-6.0.1/pyproject.toml --- old/radon-5.1.0/pyproject.toml 1970-01-01 01:00:00.000000000 +0100 +++ new/radon-6.0.1/pyproject.toml 2023-03-26 08:22:51.000000000 +0200 @@ -0,0 +1,31 @@ +[tool.poetry] +name = "radon" +version = "6.0.1" +description = "Code Metrics in Python" +authors = ["Michele Lacchia <michelelacchia@gmail.com>"] +license = "MIT" +readme = "README.rst" + +[tool.poetry.dependencies] +python = ">=3.7,<4.0" +mando = ">=0.6,<0.8" +colorama = [ + {version = ">=0.4.1", markers = "python_version > \"3.4\""}, + {version = "==0.4.1", markers = "python_version <= \"3.4\""} +] + +[tool.poetry.group.dev.dependencies] +coverage = "*" +coveralls = "*" +pytest = [ + {version = ">=2.7", markers = "python_version < \"3.0\""}, + {version = ">5.0", markers = "python_version >= \"3.0\""} +] +pytest-mock = "*" +argparse = "*" +nbformat = "*" +tox = "^4.4.7" + +[build-system] +requires = ["poetry-core"] +build-backend = "poetry.core.masonry.api" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon/__init__.py new/radon-6.0.1/radon/__init__.py --- old/radon-5.1.0/radon/__init__.py 2021-08-08 15:22:38.000000000 +0200 +++ new/radon-6.0.1/radon/__init__.py 2023-03-26 08:22:57.000000000 +0200 @@ -1,7 +1,7 @@ '''This module contains the main() function, which is the entry point for the command line interface.''' -__version__ = '5.1.0' +__version__ = '6.0.1' def main(): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon/cli/__init__.py new/radon-6.0.1/radon/cli/__init__.py --- old/radon-5.1.0/radon/cli/__init__.py 2021-05-09 16:33:28.000000000 +0200 +++ new/radon-6.0.1/radon/cli/__init__.py 2023-03-26 08:22:26.000000000 +0200 @@ -6,6 +6,17 @@ from contextlib import contextmanager from mando import Program +try: + # Python 3.11+ + import tomllib + TOMLLIB_PRESENT = True +except ImportError: + try: + # Support for Python <3.11 + import tomli as tomllib + TOMLLIB_PRESENT = True + except ImportError: + TOMLLIB_PRESENT = False import radon.complexity as cc_mod from radon.cli.colors import BRIGHT, RED, RESET @@ -50,12 +61,28 @@ ) @staticmethod + def toml_config(): + if not TOMLLIB_PRESENT: + return {} + + try: + with open("pyproject.toml", "rb") as pyproject_file: + pyproject = tomllib.load(pyproject_file) + config_dict = pyproject["tool"] + except tomllib.TOMLDecodeError as exc: + raise exc + except Exception: + config_dict = {} + return config_dict + + @staticmethod def file_config(): '''Return any file configuration discovered''' config = configparser.ConfigParser() for path in (os.getenv('RADONCFG', None), 'radon.cfg'): if path is not None and os.path.exists(path): config.read_file(open(path)) + config.read_dict(FileConfig.toml_config()) config.read(['setup.cfg', os.path.expanduser('~/.radon.cfg')]) return config @@ -171,7 +198,8 @@ hidden directories (starting with '.') are ignored. :param -s, --summary: If given, at the end of the analysis display the summary of the gathered metrics. Default to False. - :param -j, --json: Format results in JSON. + :param -j, --json: Format results in JSON. Note that the JSON export does + not include the summary (enabled with `-s, --summary`). :param -O, --output-file <str>: The output file (default to stdout). :param --include-ipynb: Include IPython Notebook files :param --ipynb-cells: Include reports for individual IPYNB cells diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon/cli/harvest.py new/radon-6.0.1/radon/cli/harvest.py --- old/radon-5.1.0/radon/cli/harvest.py 2021-05-09 16:33:28.000000000 +0200 +++ new/radon-6.0.1/radon/cli/harvest.py 2023-03-25 16:02:36.000000000 +0100 @@ -417,7 +417,12 @@ if 'error' in results: result[filename] = results else: - result[filename] = results._asdict() + result[filename] = {} + for k, v in results._asdict().items(): + if k == "functions": + result[filename]["functions"] = {key: val._asdict() for key, val in v} + else: + result[filename][k] = v._asdict() return result diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon/cli/tools.py new/radon-6.0.1/radon/cli/tools.py --- old/radon-5.1.0/radon/cli/tools.py 2021-05-09 16:33:28.000000000 +0200 +++ new/radon-6.0.1/radon/cli/tools.py 2022-02-23 21:11:59.000000000 +0100 @@ -352,8 +352,8 @@ def dict_to_md(results): md_string = ''' -| Filename | Name | Type | Start:End Line | Complexity | Clasification | -| -------- | ---- | ---- | -------------- | ---------- | ------------- | +| Filename | Name | Type | Start:End Line | Complexity | Classification | +| -------- | ---- | ---- | -------------- | ---------- | -------------- | ''' type_letter_map = {'class': 'C', 'method': 'M', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon/tests/test_cli_tools.py new/radon-6.0.1/radon/tests/test_cli_tools.py --- old/radon-5.1.0/radon/tests/test_cli_tools.py 2021-05-09 16:33:28.000000000 +0200 +++ new/radon-6.0.1/radon/tests/test_cli_tools.py 2022-02-23 21:12:16.000000000 +0100 @@ -392,8 +392,8 @@ def test_cc_to_md(): md = tools.dict_to_md({'filename': CC_TO_MD_RESULTS}) _md = ''' -| Filename | Name | Type | Start:End Line | Complexity | Clasification | -| -------- | ---- | ---- | -------------- | ---------- | ------------- | +| Filename | Name | Type | Start:End Line | Complexity | Classification | +| -------- | ---- | ---- | -------------- | ---------- | -------------- | | filename | Classname.flush | M | 110:117 | 2 | A | | filename | Classname | C | 73:124 | 4 | B | | filename | decrement | F | 62:69 | 10 | C | diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon/tests/test_complexity_visitor.py new/radon-6.0.1/radon/tests/test_complexity_visitor.py --- old/radon-5.1.0/radon/tests/test_complexity_visitor.py 2021-05-09 16:33:28.000000000 +0200 +++ new/radon-6.0.1/radon/tests/test_complexity_visitor.py 2023-03-25 17:59:48.000000000 +0100 @@ -366,9 +366,51 @@ ), ] +# The match statement was introduced in Python 3.10 +MATCH_STATEMENT_BLOCKS = [ + ( + ''' + match a: + case 1: pass + ''', + 2, + {}, + ), + ( + ''' + match a: + case 1: pass + case _: pass + ''', + 2, + {}, + ), + ( + ''' + match a: + case 1: pass + case 2: pass + ''', + 3, + {}, + ), + ( + ''' + match a: + case 1: pass + case 2: pass + case _: pass + ''', + 3, + {}, + ), +] + BLOCKS = SIMPLE_BLOCKS[:] if sys.version_info[:2] >= (2, 7): BLOCKS.extend(ADDITIONAL_BLOCKS) +if sys.version_info[:2] >= (3, 10): + BLOCKS.extend(MATCH_STATEMENT_BLOCKS) @pytest.mark.parametrize('code,expected,kwargs', BLOCKS) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon/visitors.py new/radon-6.0.1/radon/visitors.py --- old/radon-5.1.0/radon/visitors.py 2021-05-09 16:33:28.000000000 +0200 +++ new/radon-6.0.1/radon/visitors.py 2023-03-25 16:07:52.000000000 +0100 @@ -236,6 +236,13 @@ # Note: Lambda functions are not counted anymore, see #68 elif name in ('If', 'IfExp'): self.complexity += 1 + elif name == 'Match': + # check if _ (else) used + contain_underscore = any( + (case for case in node.cases if + getattr(case.pattern, "pattern", False) is None)) + # Max used for case when match contain only _ (else) + self.complexity += max(0, len(node.cases) - contain_underscore) # The For and While blocks count as 1 plus the `else` block. elif name in ('For', 'While', 'AsyncFor'): self.complexity += bool(node.orelse) + 1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon.egg-info/PKG-INFO new/radon-6.0.1/radon.egg-info/PKG-INFO --- old/radon-5.1.0/radon.egg-info/PKG-INFO 2021-08-08 15:25:05.000000000 +0200 +++ new/radon-6.0.1/radon.egg-info/PKG-INFO 2023-03-26 08:24:01.000000000 +0200 @@ -1,233 +1,13 @@ -Metadata-Version: 1.1 +Metadata-Version: 2.1 Name: radon -Version: 5.1.0 +Version: 6.0.1 Summary: Code Metrics in Python Home-page: https://radon.readthedocs.org/ +Download-URL: https://pypi.python.org/radon/ Author: Michele Lacchia Author-email: michelelacchia@gmail.com License: MIT -Download-URL: https://pypi.python.org/radon/ -Description: Radon - ===== - - .. image:: https://img.shields.io/codacy/grade/623b84f5f6e6708c486f371e10da3610.svg?sty... - :alt: Codacy badge - :target: https://www.codacy.com/app/rubik/radon/dashboard - - .. image:: https://img.shields.io/travis/rubik/radon/master.svg?style=for-the-badge - :alt: Travis-CI badge - :target: https://travis-ci.org/rubik/radon - - .. image:: https://img.shields.io/coveralls/rubik/radon/master.svg?style=for-the-badge - :alt: Coveralls badge - :target: https://coveralls.io/r/rubik/radon?branch=master - - .. image:: https://img.shields.io/pypi/v/radon.svg?style=for-the-badge - :alt: PyPI latest version badge - :target: https://pypi.python.org/pypi/radon - - .. image:: https://img.shields.io/pypi/l/radon.svg?style=for-the-badge - :alt: Radon license - :target: https://pypi.python.org/pypi/radon - - - ---- - - Radon is a Python tool that computes various metrics from the source code. - Radon can compute: - - * **McCabe's complexity**, i.e. cyclomatic complexity - * **raw** metrics (these include SLOC, comment lines, blank lines, &c.) - * **Halstead** metrics (all of them) - * **Maintainability Index** (the one used in Visual Studio) - - Requirements - ------------ - - Radon will run from **Python 2.7** to **Python 3.8** (except Python versions - from 3.0 to 3.3) with a single code base and without the need of tools like - 2to3 or six. It can also run on **PyPy** without any problems (currently PyPy - 3.5 v7.3.1 is used in tests). - - Radon depends on as few packages as possible. Currently only `mando` is - strictly required (for the CLI interface). `colorama` is also listed as a - dependency but if Radon cannot import it, the output simply will not be - colored. - - **Note**: - **Python 2.6** was supported until version 1.5.0. Starting from version 2.0, it - is not supported anymore. - - Installation - ------------ - - With Pip: - - .. code-block:: sh - - $ pip install radon - - Or download the source and run the setup file: - - .. code-block:: sh - - $ python setup.py install - - Usage - ----- - - Radon can be used either from the command line or programmatically. - Documentation is at https://radon.readthedocs.org/. - - Cyclomatic Complexity Example - ----------------------------- - - Quick example: - - .. code-block:: sh - - $ radon cc sympy/solvers/solvers.py -a -nc - sympy/solvers/solvers.py - F 346:0 solve - F - F 1093:0 _solve - F - F 1434:0 _solve_system - F - F 2647:0 unrad - F - F 110:0 checksol - F - F 2238:0 _tsolve - F - F 2482:0 _invert - F - F 1862:0 solve_linear_system - E - F 1781:0 minsolve_linear_system - D - F 1636:0 solve_linear - D - F 2382:0 nsolve - C - - 11 blocks (classes, functions, methods) analyzed. - Average complexity: F (61.0) - - Explanation: - - * ``cc`` is the radon command to compute Cyclomatic Complexity - * ``-a`` tells radon to calculate the average complexity at the end. Note that - the average is computed among the *shown* blocks. If you want the total - average, among all the blocks, regardless of what is being shown, you should - use ``--total-average``. - * ``-nc`` tells radon to print only results with a complexity rank of C or - worse. Other examples: ``-na`` (from A to F), or ``-nd`` (from D to F). - * The letter *in front of* the line numbers represents the type of the block - (**F** means function, **M** method and **C** class). - - Actually it's even better: it's got colors! - - .. image:: https://cloud.githubusercontent.com/assets/238549/3707477/5793aeaa-1435-11e4... - :alt: A screen of Radon's cc command - - - **Note about file encoding** - - On some systems, such as Windows, the default encoding is not UTF-8. If you are - using Unicode characters in your Python file and want to analyze it with Radon, - you'll have to set the `RADONFILESENCODING` environment variable to `UTF-8`. - - - On a Continuous Integration server - ---------------------------------- - - If you are looking to use `radon` on a CI server you may be better off with - `xenon <https://github.com/rubik/xenon>`_. Although still experimental, it will - fail (that means exiting with a non-zero exit code) when various thresholds are - surpassed. `radon` is more of a reporting tool, while `xenon` is a monitoring - one. - - If you are looking for more complete solutions, read the following sections. - - Codacy - ++++++++++++ - - `Codacy <https://www.codacy.com/>`_ uses Radon `by default <https://support.codacy.com/hc/en-us/articles/213632009-Engines#other-tools>`_ to calculate metrics from the source code. - - Code Climate - ++++++++++++ - - Radon is available as a `Code Climate Engine <https://docs.codeclimate.com/docs/list-of-engines>`_. - To understand how to add Radon's checks to your Code Climate Platform, head - over to their documentation: - https://docs.codeclimate.com/v1.0/docs/radon - - coala Analyzer - ++++++++++++++ - - Radon is also supported in `coala <http://coala.io/>`_. To add Radon's - checks to coala, simply add the ``RadonBear`` to one of the sections in - your ``.coafile``. - - CodeFactor - ++++++++++++ - - `CodeFactor <https://www.codefactor.io/>`_ uses Radon `out-of-the-box <https://support.codefactor.io/i24-analysis-tools-open-source>`_ to calculate Cyclomatic Complexity. - - Usage with Jupyter Notebooks - ---------------------------- - - Radon can be used with ``.ipynb`` files to inspect code metrics for Python cells. Any ``%`` macros will be ignored in the metrics. - - .. note:: - - Jupyter Notebook support requires the optional ``nbformat`` package. To install, run ``pip install nbformat``. - - To enable scanning of Jupyter notebooks, add the ``--include-ipynb`` flag. - - To enable reporting of individual cells, add the ``--ipynb-cells`` flag. - - Quick example: - - .. code-block:: sh - - $ radon raw --include-ipynb --ipynb-cells . - example.ipynb - LOC: 63 - LLOC: 37 - SLOC: 37 - Comments: 3 - Single comments: 2 - Multi: 10 - Blank: 14 - - Comment Stats - (C % L): 5% - (C % S): 8% - (C + M % L): 21% - example.ipynb:[0] - LOC: 0 - LLOC: 0 - SLOC: 0 - Comments: 0 - Single comments: 0 - Multi: 0 - Blank: 0 - - Comment Stats - (C % L): 0% - (C % S): 0% - (C + M % L): 0% - example.ipynb:[1] - LOC: 2 - LLOC: 2 - SLOC: 2 - Comments: 0 - Single comments: 0 - Multi: 0 - Blank: 0 - - Comment Stats - (C % L): 0% - (C % S): 0% - (C + M % L): 0% - - - - Links - ----- - - * Documentation: https://radon.readthedocs.org - * PyPI: http://pypi.python.org/pypi/radon - * Issue Tracker: https://github.com/rubik/radon/issues - +Project-URL: Source, https://github.com/rubik/radon Keywords: static analysis code complexity metrics Platform: any Classifier: Development Status :: 5 - Production/Stable @@ -247,3 +27,233 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules Classifier: Topic :: Software Development :: Quality Assurance Classifier: Topic :: Utilities +Provides-Extra: toml +License-File: LICENSE + +Radon +===== + +.. image:: https://img.shields.io/codacy/grade/623b84f5f6e6708c486f371e10da3610.svg?sty... + :alt: Codacy badge + :target: https://www.codacy.com/app/rubik/radon/dashboard + +.. image:: https://img.shields.io/travis/rubik/radon/master.svg?style=for-the-badge + :alt: Travis-CI badge + :target: https://travis-ci.org/rubik/radon + +.. image:: https://img.shields.io/coveralls/rubik/radon/master.svg?style=for-the-badge + :alt: Coveralls badge + :target: https://coveralls.io/r/rubik/radon?branch=master + +.. image:: https://img.shields.io/pypi/v/radon.svg?style=for-the-badge + :alt: PyPI latest version badge + :target: https://pypi.python.org/pypi/radon + +.. image:: https://img.shields.io/pypi/l/radon.svg?style=for-the-badge + :alt: Radon license + :target: https://pypi.python.org/pypi/radon + + +---- + +Radon is a Python tool that computes various metrics from the source code. +Radon can compute: + +* **McCabe's complexity**, i.e. cyclomatic complexity +* **raw** metrics (these include SLOC, comment lines, blank lines, &c.) +* **Halstead** metrics (all of them) +* **Maintainability Index** (the one used in Visual Studio) + +Requirements +------------ + +Radon will run from **Python 2.7** to **Python 3.8** (except Python versions +from 3.0 to 3.3) with a single code base and without the need of tools like +2to3 or six. It can also run on **PyPy** without any problems (currently PyPy +3.5 v7.3.1 is used in tests). + +Radon depends on as few packages as possible. Currently only `mando` is +strictly required (for the CLI interface). `colorama` is also listed as a +dependency but if Radon cannot import it, the output simply will not be +colored. + +**Note**: +**Python 2.6** was supported until version 1.5.0. Starting from version 2.0, it +is not supported anymore. + +Installation +------------ + +With Pip: + +.. code-block:: sh + + $ pip install radon + +If you want to configure Radon from `pyproject.toml` and you run Python <3.11, +you'll need the extra `toml` dependency: + +.. code-block:: sh + + $ pip install radon[toml] + +Or download the source and run the setup file: + +.. code-block:: sh + + $ python setup.py install + +Usage +----- + +Radon can be used either from the command line or programmatically. +Documentation is at https://radon.readthedocs.org/. + +Cyclomatic Complexity Example +----------------------------- + +Quick example: + +.. code-block:: sh + + $ radon cc sympy/solvers/solvers.py -a -nc + sympy/solvers/solvers.py + F 346:0 solve - F + F 1093:0 _solve - F + F 1434:0 _solve_system - F + F 2647:0 unrad - F + F 110:0 checksol - F + F 2238:0 _tsolve - F + F 2482:0 _invert - F + F 1862:0 solve_linear_system - E + F 1781:0 minsolve_linear_system - D + F 1636:0 solve_linear - D + F 2382:0 nsolve - C + + 11 blocks (classes, functions, methods) analyzed. + Average complexity: F (61.0) + +Explanation: + +* ``cc`` is the radon command to compute Cyclomatic Complexity +* ``-a`` tells radon to calculate the average complexity at the end. Note that + the average is computed among the *shown* blocks. If you want the total + average, among all the blocks, regardless of what is being shown, you should + use ``--total-average``. +* ``-nc`` tells radon to print only results with a complexity rank of C or + worse. Other examples: ``-na`` (from A to F), or ``-nd`` (from D to F). +* The letter *in front of* the line numbers represents the type of the block + (**F** means function, **M** method and **C** class). + +Actually it's even better: it's got colors! + +.. image:: https://cloud.githubusercontent.com/assets/238549/3707477/5793aeaa-1435-11e4... + :alt: A screen of Radon's cc command + + +**Note about file encoding** + +On some systems, such as Windows, the default encoding is not UTF-8. If you are +using Unicode characters in your Python file and want to analyze it with Radon, +you'll have to set the `RADONFILESENCODING` environment variable to `UTF-8`. + + +On a Continuous Integration server +---------------------------------- + +If you are looking to use `radon` on a CI server you may be better off with +`xenon <https://github.com/rubik/xenon>`_. Although still experimental, it will +fail (that means exiting with a non-zero exit code) when various thresholds are +surpassed. `radon` is more of a reporting tool, while `xenon` is a monitoring +one. + +If you are looking for more complete solutions, read the following sections. + +Codacy +++++++++++++ + +`Codacy <https://www.codacy.com/>`_ uses Radon `by default <https://support.codacy.com/hc/en-us/articles/213632009-Engines#other-tools>`_ to calculate metrics from the source code. + +Code Climate +++++++++++++ + +Radon is available as a `Code Climate Engine <https://docs.codeclimate.com/docs/list-of-engines>`_. +To understand how to add Radon's checks to your Code Climate Platform, head +over to their documentation: +https://docs.codeclimate.com/v1.0/docs/radon + +coala Analyzer +++++++++++++++ + +Radon is also supported in `coala <http://coala.io/>`_. To add Radon's +checks to coala, simply add the ``RadonBear`` to one of the sections in +your ``.coafile``. + +CodeFactor +++++++++++++ + +`CodeFactor <https://www.codefactor.io/>`_ uses Radon `out-of-the-box <https://support.codefactor.io/i24-analysis-tools-open-source>`_ to calculate Cyclomatic Complexity. + +Usage with Jupyter Notebooks +---------------------------- + +Radon can be used with ``.ipynb`` files to inspect code metrics for Python cells. Any ``%`` macros will be ignored in the metrics. + +.. note:: + + Jupyter Notebook support requires the optional ``nbformat`` package. To install, run ``pip install nbformat``. + +To enable scanning of Jupyter notebooks, add the ``--include-ipynb`` flag. + +To enable reporting of individual cells, add the ``--ipynb-cells`` flag. + +Quick example: + +.. code-block:: sh + + $ radon raw --include-ipynb --ipynb-cells . + example.ipynb + LOC: 63 + LLOC: 37 + SLOC: 37 + Comments: 3 + Single comments: 2 + Multi: 10 + Blank: 14 + - Comment Stats + (C % L): 5% + (C % S): 8% + (C + M % L): 21% + example.ipynb:[0] + LOC: 0 + LLOC: 0 + SLOC: 0 + Comments: 0 + Single comments: 0 + Multi: 0 + Blank: 0 + - Comment Stats + (C % L): 0% + (C % S): 0% + (C + M % L): 0% + example.ipynb:[1] + LOC: 2 + LLOC: 2 + SLOC: 2 + Comments: 0 + Single comments: 0 + Multi: 0 + Blank: 0 + - Comment Stats + (C % L): 0% + (C % S): 0% + (C + M % L): 0% + + + +Links +----- + +* Documentation: https://radon.readthedocs.org +* PyPI: http://pypi.python.org/pypi/radon +* Issue Tracker: https://github.com/rubik/radon/issues diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon.egg-info/SOURCES.txt new/radon-6.0.1/radon.egg-info/SOURCES.txt --- old/radon-5.1.0/radon.egg-info/SOURCES.txt 2021-08-08 15:25:05.000000000 +0200 +++ new/radon-6.0.1/radon.egg-info/SOURCES.txt 2023-03-26 08:24:01.000000000 +0200 @@ -2,6 +2,7 @@ LICENSE MANIFEST.in README.rst +pyproject.toml requirements.txt setup.cfg setup.py diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon.egg-info/entry_points.txt new/radon-6.0.1/radon.egg-info/entry_points.txt --- old/radon-5.1.0/radon.egg-info/entry_points.txt 2021-08-08 15:25:05.000000000 +0200 +++ new/radon-6.0.1/radon.egg-info/entry_points.txt 2023-03-26 08:24:01.000000000 +0200 @@ -6,4 +6,3 @@ [setuptools.installation] eggsecutable = radon:main - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/radon.egg-info/requires.txt new/radon-6.0.1/radon.egg-info/requires.txt --- old/radon-5.1.0/radon.egg-info/requires.txt 2021-08-08 15:25:05.000000000 +0200 +++ new/radon-6.0.1/radon.egg-info/requires.txt 2023-03-26 08:24:01.000000000 +0200 @@ -1,8 +1,10 @@ -mando<0.7,>=0.6 -future +mando<0.8,>=0.6 [:python_version <= "3.4"] colorama==0.4.1 [:python_version > "3.4"] colorama>=0.4.1 + +[toml] +tomli>=2.0.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/requirements.txt new/radon-6.0.1/requirements.txt --- old/radon-5.1.0/requirements.txt 2021-08-08 15:20:39.000000000 +0200 +++ new/radon-6.0.1/requirements.txt 2023-03-25 16:18:04.000000000 +0100 @@ -1,4 +1,3 @@ -mando>=0.6,<0.7 +mando>=0.6,<0.8 colorama==0.4.1;python_version<='3.4' colorama>=0.4.1;python_version>'3.4' -future diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/setup.py new/radon-6.0.1/setup.py --- old/radon-5.1.0/setup.py 2021-08-08 15:20:39.000000000 +0200 +++ new/radon-6.0.1/setup.py 2023-03-25 16:07:52.000000000 +0100 @@ -11,6 +11,9 @@ author='Michele Lacchia', author_email='michelelacchia@gmail.com', url='https://radon.readthedocs.org/', + project_urls={ + 'Source': 'https://github.com/rubik/radon', + }, download_url='https://pypi.python.org/radon/', license='MIT', description='Code Metrics in Python', @@ -19,11 +22,13 @@ packages=find_packages(), tests_require=['tox'], install_requires=[ - 'mando>=0.6,<0.7', + 'mando>=0.6,<0.8', 'colorama==0.4.1;python_version<="3.4"', 'colorama>=0.4.1;python_version>"3.4"', - 'future', ], + extras_require={ + 'toml': ["tomli>=2.0.1"] + }, entry_points={ 'console_scripts': ['radon = radon:main'], 'setuptools.installation': [ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/radon-5.1.0/tox.ini new/radon-6.0.1/tox.ini --- old/radon-5.1.0/tox.ini 2021-05-09 16:33:28.000000000 +0200 +++ new/radon-6.0.1/tox.ini 2023-03-25 18:00:14.000000000 +0100 @@ -1,5 +1,5 @@ [tox] -envlist = py27,py33,py34,py35,py36,py37,py38,py39,pypy +envlist = py27,py33,py34,py35,py36,py37,py38,py39,py310,pypy [testenv] deps = -r{toxinidir}/test_requirements.txt
participants (1)
-
Source-Sync