avocado icon indicating copy to clipboard operation
avocado copied to clipboard

Warnings on Installation Regarding Deprecated setuptools

Open isomorphik7 opened this issue 1 year ago • 2 comments

Describe the bug

When attempting to install Avocado from source using the ./setup.py install --user command, I encountered several deprecation warnings. These warnings seem to be related to the use of deprecated setuptools features.

Steps to reproduce

  1. Clone the Avocado repository (git clone https://github.com/avocado-framework/avocado.git)
  2. Navigate into the Avocado directory (cd avocado)
  3. Run ./setup.py build
  4. Run ./setup.py install --user

Expected behavior

The installation process should complete without any deprecation warnings.

Current behavior

The installation process emits multiple deprecation warnings related to setuptools. These warnings relate to:

  • setup.py install being deprecated
  • EasyInstall being deprecated
  • avocado.etc.avocado.scripts.job, avocado.etc.avocado.sysinfo, and avocado.libexec being installed as data, which is deprecated

System information

  • OS: Fedora release 38
  • Commit: 04b6163b (HEAD -> master, origin/master, origin/HEAD) Merge remote-tracking branch 'smitterl/fix_setup'
  • Avocado installation method: Source
  • Python version: 3.11.4

Additional information

Despite the warnings, the package appears to install successfully, but I am concerned that these warnings indicate potential future compatibility issues.

Here's a snippet of the warnings:

$ ./setup.py install --user
running install
/usr/lib/python3.11/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
/usr/lib/python3.11/site-packages/setuptools/command/easy_install.py:144: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
running bdist_egg
running egg_info
writing avocado_framework.egg-info/PKG-INFO
writing dependency_links to avocado_framework.egg-info/dependency_links.txt
writing entry points to avocado_framework.egg-info/entry_points.txt
writing requirements to avocado_framework.egg-info/requires.txt
writing top-level names to avocado_framework.egg-info/top_level.txt
reading manifest file 'avocado_framework.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'avocado_framework.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
/usr/lib/python3.11/site-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning:     Installing 'avocado.etc.avocado.scripts.job' as data is deprecated, please list it in `packages`.
    !!


    ############################
    # Package would be ignored #
    ############################
    Python recognizes 'avocado.etc.avocado.scripts.job' as an importable package,
    but it is not listed in the `packages` configuration of setuptools.

    'avocado.etc.avocado.scripts.job' has been automatically added to the distribution only
    because it may contain data files, but this behavior is likely to change
    in future versions of setuptools (and therefore is considered deprecated).

    Please make sure that 'avocado.etc.avocado.scripts.job' is included as a package by using
    the `packages` configuration field or the proper discovery methods
    (for example by using `find_namespace_packages(...)`/`find_namespace:`
    instead of `find_packages(...)`/`find:`).

    You can read more about "package discovery" and "data files" on setuptools
    documentation page.


!!

  check.warn(importable)
/usr/lib/python3.11/site-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning:     Installing 'avocado.etc.avocado.sysinfo' as data is deprecated, please list it in `packages`.
    !!


    ############################
    # Package would be ignored #
    ############################
    Python recognizes 'avocado.etc.avocado.sysinfo' as an importable package,
    but it is not listed in the `packages` configuration of setuptools.

    'avocado.etc.avocado.sysinfo' has been automatically added to the distribution only
    because it may contain data files, but this behavior is likely to change
    in future versions of setuptools (and therefore is considered deprecated).

    Please make sure that 'avocado.etc.avocado.sysinfo' is included as a package by using
    the `packages` configuration field or the proper discovery methods
    (for example by using `find_namespace_packages(...)`/`find_namespace:`
    instead of `find_packages(...)`/`find:`).

    You can read more about "package discovery" and "data files" on setuptools
    documentation page.


!!

  check.warn(importable)
/usr/lib/python3.11/site-packages/setuptools/command/build_py.py:202: SetuptoolsDeprecationWarning:     Installing 'avocado.libexec' as data is deprecated, please list it in `packages`.
    !!


    ############################
    # Package would be ignored #
    ############################
    Python recognizes 'avocado.libexec' as an importable package,
    but it is not listed in the `packages` configuration of setuptools.

    'avocado.libexec' has been automatically added to the distribution only
    because it may contain data files, but this behavior is likely to change
    in future versions of setuptools (and therefore is considered deprecated).

    Please make sure that 'avocado.libexec' is included as a package by using
    the `packages` configuration field or the proper discovery methods
    (for example by using `find_namespace_packages(...)`/`find_namespace:`
    instead of `find_packages(...)`/`find:`).

    You can read more about "package discovery" and "data files" on setuptools
    documentation page.


!!

  check.warn(importable)

isomorphik7 avatar Aug 25 '23 12:08 isomorphik7