Skip to content

python3 setup.py spews many warnings and errors #54

@HaleTom

Description

@HaleTom
% python3 setup.py
/usr/lib/python3.13/site-packages/setuptools/__init__.py:92: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.

        By 2025-Oct-31, you need to update your project and remove deprecated calls
        or your builds will no longer be supported.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3.13/site-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'test_suite'
  warnings.warn(msg)
/usr/lib/python3.13/site-packages/setuptools/_distutils/dist.py:289: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
[09/13/25 16:47:05] WARNING  toml section missing PosixPath('pyproject.toml') does not contain a                    pyproject_reading.py:208
                             tool.setuptools_scm section
/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py:75: _MissingDynamic: `readme` defined outside of `pyproject.toml` is ignored.
!!

        ********************************************************************************
        The following seems to be defined outside of `pyproject.toml`:

        `readme = '# topalias\n\n[![Test Status](https://github.com/CSRedRat/topalias/workflows/Test/badge.svg?branch=master)](https://github.com/CSRedRat/topalias/actions?query=workflow%3ATest)\n[![Coverage](https://coveralls.io/repos/github/CSRedRat/topalias/badge.svg?branch=master)](https://coveralls.io/github/CSRedRat/topalias?branch=master)\n[![GitLab pipeline](https://gitlab.com/CSRedRat/topalias/badges/master/pipeline.svg)](https://gitlab.com/CSRedRat/topalias/-/pipelines)\n[![Python Version](https://img.shields.io/pypi/pyversions/topalias.svg)](https://pypi.org/project/topalias/)\n[![Downloads](https://static.pepy.tech/personalized-badge/topalias?period=total&units=international_system&left_color=black&right_color=orange&left_text=Downloads)](https://pepy.tech/project/topalias)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Imports: isort](https://img.shields.io/badge/%20imports-isort-%231674b1?style=flat&labelColor=ef8336)](https://pycqa.github.io/isort/)\n[![DeepSource](https://static.deepsource.io/deepsource-badge-light-mini.svg)](https://deepsource.io/gh/CSRedRat/topalias/?ref=repository-badge)\n\n[topalias](https://github.com/CSRedRat/topalias) - Linux alias generator from bash/zsh command history with statistics, written on [Python](https://pypi.org/project/topalias/).\n\n## Features\n\n-   Generate short alias for popular command from bash/zsh shell history\n-   Command history statistics & analytics\n-   Parametrised input\n-   Console help for all commands, options and arguments\n-   Shell workflow hints\n\n## Installation\n\nFrom [pypi.org repository](https://pypi.org/project/topalias/):\n\n```bash\npip3 install -U --user topalias\n```\n\nFrom source:\n\n```bash\ngit clone https://github.com/CSRedRat/topalias\npython3 topalias/setup.py install --user\n```\n\nRun as python script without install:\n\n```bash\ngit clone https://github.com/CSRedRat/topalias\npython3 topalias/topalias/cli.py -h\n```\n\n### Install requirements\n\n```bash\nsudo apt install python3 python3-pip -y\n```\n\nAdd PATH environment variable for run Python tools as Linux utility:\n\n```bash\necho "export PATH=$PATH:$HOME/.local/bin" >> ~/.bashrc\nsource ~/.bashrc\n```\n\n## Usage\n\n![generated bash aliases](https://github.com/CSRedRat/topalias/raw/master/images/bash_screenshot.png "Bash topalias output")\n\nWithout parameters utility check if you use alias in ~/.bash_aliases - analyze and print usage statistics, then find new simple aliases\n\n```bash\npython3 -m topalias  # run as python module\ntopalias  # check aliases and print suggestion bash command history\ntopalias -h  # print help\ntopalias --zsh  # work with zsh shell command history\ntopalias --min=2  # set minimal length for generated acronym filter, so that exclude some short command and find long, hard, usable command\ntopalias --debug history  # only analyze local bash history and print filtered rows\n```\n\nFiles path search order:\n\n-   directory from execution parameter\n-   .bash_history in . current directory\n-   .bash_history in ~ user home directory\n-   example development files in topalias/data\n\nYou can change dot files search path to another user home directory:\n\n```bash\ntopalias -f /home/user  # or topalias --path /home/user\n```\n\nAlso you can use topalias utility in [Bash for Git](https://gitforwindows.org) on Windows and in [WSL](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux).\n\n### Documentation\n\n```\nUsage: topalias [OPTIONS] COMMAND [ARGS]\n\nOptions:\n  -l, --min INTEGER     Print alias acronym not less that value. Default: 1\n  -c, --count INTEGER   Print specified number acronym suggestions. Default:\n                        20\n\n  --filter              Filter used aliases in history. Default: False\n  -z, --zsh             Use zsh shell history file .zsh_history. Default:\n                        False\n\n  -f, --path TEXT       Change custom directory for files: .bash_aliases,\n                        .bash_history, .zsh_history\n\n  --version             Print current program version and check latest on\n                        pypi.org.\n\n  --debug / --no-debug  Enable debug strings in output.\n  -h, --help            Show this message and exit.\n\nCommands:\n  hint     Print all hints.\n  history  Print bash history file.\n  version  Get program current and available version.\n```\n\n## TODO\n\n-   check if alias name already used\n-   check if alias already added\n-   add any another acronym algorithm with semantic\n-   more statistics & analytics (used dir, utils, parameters, time)\n-   alias max length parameter\n-   command ignore list flag: top, emacs, vim\n-   often used command "ssh username@servername" suggest add to .ssh/config/\n\n## License\n\n[GPLv3](https://github.com/CSRedRat/topalias/blob/master/LICENSE)\n\n## Contributors ✨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n<table>\n  <tr>\n    <td align="center"><a href="https://github.com/CSRedRat"><img src="https://avatars1.githubusercontent.com/u/1287586?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Sergey Chudakov</b></sub></a><br /><a href="https://github.com/CSRedRat/topalias/commits?author=CSRedRat" title="Code">💻</a> <a href="#infra-CSRedRat" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a> <a href="#ideas-CSRedRat" title="Ideas, Planning, & Feedback">🤔</a> <a href="#maintenance-CSRedRat" title="Maintenance">🚧</a> <a href="#platform-CSRedRat" title="Packaging/porting to new platform">📦</a></td>\n    <td align="center"><a href="https://github.com/morozsm"><img src="https://avatars2.githubusercontent.com/u/4393731?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Sergey Morozik</b></sub></a><br /> <a href="#maintenance-morozsm" title="Maintenance">🚧</a> <a href="#platform-morozsm" title="Packaging/porting to new platform">📦</a><a href="https://github.com/CSRedRat/topalias/commits?author=morozsm" title="Code">💻</a></td>\n  </tr>\n</table>\n\n<!-- markdownlint-restore -->\n<!-- prettier-ignore-end -->\n\n<!-- ALL-CONTRIBUTORS-LIST:END -->\n\n_GitLab repository mirror with CI/CD: [https://gitlab.com/CSRedRat/topalias](https://gitlab.com/CSRedRat/topalias)_\n\n\n\n\n# Version history\n\nWe follow [Semantic Versions](https://semver.org/).\n\n## Version 2.0.13\n\n-   Fix encoding issue with zsh history file ([#13](https://github.com/CSRedRat/topalias/issues/13), [#17](https://github.com/CSRedRat/topalias/issues/17))\n-   Fix .bash_aliases path definition ([#16](https://github.com/CSRedRat/topalias/issues/16))\n\n## Version 2.0.0\n\n-   Add zsh shell support (-z/--zsh flag)\n-   Add version check (version/--version)\n-   --filter flag exclude used alias from command top chart\n-   --debug mode\n-   -f change dot files search path\n-   -c count suggestion parameter\n-   Add "example" command for give aliases example\n-   Add aliases usage statistic\n\n## Version 1.1.7\n\n-   Build and publish working package\n\n## Version 0.1.0\n\n-   Initial release\n'`

        According to the spec (see the link below), however, setuptools CANNOT
        consider this value unless `readme` is listed as `dynamic`.

        https://packaging.python.org/en/latest/specifications/pyproject-toml/#declaring-project-metadata-the-project-table

        To prevent this problem, you can list `readme` under `dynamic` or alternatively
        remove the `[project]` table from your file and rely entirely on other means of
        configuration.
        ********************************************************************************

!!
  _handle_missing_dynamic(dist, project_table)
/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py:75: _MissingDynamic: `requires-python` defined outside of `pyproject.toml` is ignored.
!!

        ********************************************************************************
        The following seems to be defined outside of `pyproject.toml`:

        `requires-python = '>=3.5'`

        According to the spec (see the link below), however, setuptools CANNOT
        consider this value unless `requires-python` is listed as `dynamic`.

        https://packaging.python.org/en/latest/specifications/pyproject-toml/#declaring-project-metadata-the-project-table

        To prevent this problem, you can list `requires-python` under `dynamic` or alternatively
        remove the `[project]` table from your file and rely entirely on other means of
        configuration.
        ********************************************************************************

!!
  _handle_missing_dynamic(dist, project_table)
/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py:75: _MissingDynamic: `license` defined outside of `pyproject.toml` is ignored.
!!

        ********************************************************************************
        The following seems to be defined outside of `pyproject.toml`:

        `license = 'GNU General Public License v3'`

        According to the spec (see the link below), however, setuptools CANNOT
        consider this value unless `license` is listed as `dynamic`.

        https://packaging.python.org/en/latest/specifications/pyproject-toml/#declaring-project-metadata-the-project-table

        To prevent this problem, you can list `license` under `dynamic` or alternatively
        remove the `[project]` table from your file and rely entirely on other means of
        configuration.
        ********************************************************************************

!!
  _handle_missing_dynamic(dist, project_table)
/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py:75: _MissingDynamic: `authors` defined outside of `pyproject.toml` is ignored.
!!

        ********************************************************************************
        The following seems to be defined outside of `pyproject.toml`:

        `authors = 'Sergey Chudakov'`

        According to the spec (see the link below), however, setuptools CANNOT
        consider this value unless `authors` is listed as `dynamic`.

        https://packaging.python.org/en/latest/specifications/pyproject-toml/#declaring-project-metadata-the-project-table

        To prevent this problem, you can list `authors` under `dynamic` or alternatively
        remove the `[project]` table from your file and rely entirely on other means of
        configuration.
        ********************************************************************************

!!
  _handle_missing_dynamic(dist, project_table)
/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py:75: _MissingDynamic: `keywords` defined outside of `pyproject.toml` is ignored.
!!

        ********************************************************************************
        The following seems to be defined outside of `pyproject.toml`:

        `keywords = ['top bash zsh alias aliases linux python shell cli console terminal utility tool history sysadmin']`

        According to the spec (see the link below), however, setuptools CANNOT
        consider this value unless `keywords` is listed as `dynamic`.

        https://packaging.python.org/en/latest/specifications/pyproject-toml/#declaring-project-metadata-the-project-table

        To prevent this problem, you can list `keywords` under `dynamic` or alternatively
        remove the `[project]` table from your file and rely entirely on other means of
        configuration.
        ********************************************************************************

!!
  _handle_missing_dynamic(dist, project_table)
/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py:75: _MissingDynamic: `classifiers` defined outside of `pyproject.toml` is ignored.
!!

        ********************************************************************************
        The following seems to be defined outside of `pyproject.toml`:

        `classifiers = ['Development Status :: 5 - Production/Stable', 'Environment :: Console', 'Intended Audience :: Developers', 'License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)', 'Natural Language :: English', 'Operating System :: POSIX', 'Topic :: Utilities', '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']`

        According to the spec (see the link below), however, setuptools CANNOT
        consider this value unless `classifiers` is listed as `dynamic`.

        https://packaging.python.org/en/latest/specifications/pyproject-toml/#declaring-project-metadata-the-project-table

        To prevent this problem, you can list `classifiers` under `dynamic` or alternatively
        remove the `[project]` table from your file and rely entirely on other means of
        configuration.
        ********************************************************************************

!!
  _handle_missing_dynamic(dist, project_table)
/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py:75: _MissingDynamic: `dependencies` defined outside of `pyproject.toml` is ignored.
!!

        ********************************************************************************
        The following seems to be defined outside of `pyproject.toml`:

        `dependencies = ['Click<9.0.0,>=8.0.1']`

        According to the spec (see the link below), however, setuptools CANNOT
        consider this value unless `dependencies` is listed as `dynamic`.

        https://packaging.python.org/en/latest/specifications/pyproject-toml/#declaring-project-metadata-the-project-table

        To prevent this problem, you can list `dependencies` under `dynamic` or alternatively
        remove the `[project]` table from your file and rely entirely on other means of
        configuration.
        ********************************************************************************

!!
  _handle_missing_dynamic(dist, project_table)
Traceback (most recent call last):
  File "/home/var/ravi/stow/.cache/aur/topalias/src/topalias/setup.py", line 26, in <module>
    setup(
    ~~~~~^
        author="Sergey Chudakov",
        ^^^^^^^^^^^^^^^^^^^^^^^^^
    ...<36 lines>...
        zip_safe=False,
        ^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3.13/site-packages/setuptools/__init__.py", line 115, in setup
    return distutils.core.setup(**attrs)
           ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/setuptools/_distutils/core.py", line 160, in setup
    dist.parse_config_files()
    ~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/setuptools/dist.py", line 756, in parse_config_files
    pyprojecttoml.apply_configuration(self, filename, ignore_option_errors)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/setuptools/config/pyprojecttoml.py", line 73, in apply_configuration
    return _apply(dist, config, filepath)
  File "/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py", line 54, in apply
    _apply_project_table(dist, config, root_dir)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py", line 82, in _apply_project_table
    corresp(dist, value, root_dir)
    ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/setuptools/config/_apply_pyprojecttoml.py", line 187, in _long_description
    file = val.get("file") or ()
           ^^^^^^^
AttributeError: 'NoneType' object has no attribute 'get'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions