Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.4.6: please move aiosmtpd/docs and aiosmtpd/tests to project root, and pep517 build warnings #463

Open
kloczek opened this issue May 18, 2024 · 0 comments

Comments

@kloczek
Copy link

kloczek commented May 18, 2024

Issue is that those directories are packed into .whl archive and are part of installable resources.
I;m not sure about aiosmtpd/qa but probably it woud be good to move to testst/qa as well.

Here is build log:
+ /usr/bin/python3 -sBm build -w --no-isolation
* Getting build dependencies for wheel...
* Building wheel...
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/aiosmtpd
copying aiosmtpd/__init__.py -> build/lib/aiosmtpd
copying aiosmtpd/__main__.py -> build/lib/aiosmtpd
copying aiosmtpd/lmtp.py -> build/lib/aiosmtpd
copying aiosmtpd/main.py -> build/lib/aiosmtpd
copying aiosmtpd/handlers.py -> build/lib/aiosmtpd
copying aiosmtpd/controller.py -> build/lib/aiosmtpd
copying aiosmtpd/proxy_protocol.py -> build/lib/aiosmtpd
copying aiosmtpd/smtp.py -> build/lib/aiosmtpd
creating build/lib/aiosmtpd/docs
copying aiosmtpd/docs/__init__.py -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/conf.py -> build/lib/aiosmtpd/docs
creating build/lib/aiosmtpd/qa
copying aiosmtpd/qa/__init__.py -> build/lib/aiosmtpd/qa
copying aiosmtpd/qa/test_0packaging.py -> build/lib/aiosmtpd/qa
copying aiosmtpd/qa/test_1testsuite.py -> build/lib/aiosmtpd/qa
creating build/lib/aiosmtpd/testing
copying aiosmtpd/testing/__init__.py -> build/lib/aiosmtpd/testing
copying aiosmtpd/testing/statuscodes.py -> build/lib/aiosmtpd/testing
copying aiosmtpd/testing/helpers.py -> build/lib/aiosmtpd/testing
creating build/lib/aiosmtpd/tests
copying aiosmtpd/tests/__init__.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_smtpsmuggling.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_lmtp.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_main.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_starttls.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_misc.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_smtps.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/conftest.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_server.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_handlers.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_proxyprotocol.py -> build/lib/aiosmtpd/tests
copying aiosmtpd/tests/test_smtp.py -> build/lib/aiosmtpd/tests
creating build/lib/aiosmtpd/tests/certs
copying aiosmtpd/tests/certs/__init__.py -> build/lib/aiosmtpd/tests/certs
running egg_info
creating aiosmtpd.egg-info
writing aiosmtpd.egg-info/PKG-INFO
writing dependency_links to aiosmtpd.egg-info/dependency_links.txt
writing entry points to aiosmtpd.egg-info/entry_points.txt
writing requirements to aiosmtpd.egg-info/requires.txt
writing top-level names to aiosmtpd.egg-info/top_level.txt
writing manifest file 'aiosmtpd.egg-info/SOURCES.txt'
ERROR setuptools_scm._file_finders.git listing git files failed - pretending there aren't any
reading manifest file 'aiosmtpd.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no previously-included files matching '*.py[oc]' found anywhere in distribution
warning: no previously-included files matching '*.sw[a-p]' found anywhere in distribution
warning: no previously-included files matching 'pyvenv.cfg' found anywhere in distribution
adding license file 'LICENSE'
adding license file 'NOTICE'
writing manifest file 'aiosmtpd.egg-info/SOURCES.txt'
/usr/lib/python3.10/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'aiosmtpd.docs._exts' is absent from the `packages` configuration.
!!

        ********************************************************************************
        ############################
        # Package would be ignored #
        ############################
        Python recognizes 'aiosmtpd.docs._exts' as an importable package[^1],
        but it is absent from setuptools' `packages` configuration.

        This leads to an ambiguous overall configuration. If you want to distribute this
        package, please make sure that 'aiosmtpd.docs._exts' is explicitly added
        to the `packages` configuration field.

        Alternatively, you can also rely on setuptools' discovery methods
        (for example by using `find_namespace_packages(...)`/`find_namespace:`
        instead of `find_packages(...)`/`find:`).

        You can read more about "package discovery" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

        If you don't want 'aiosmtpd.docs._exts' to be distributed and are
        already explicitly excluding 'aiosmtpd.docs._exts' via
        `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
        you can try to use `exclude_package_data`, or `include-package-data=False` in
        combination with a more fine grained `package-data` configuration.

        You can read more about "package data files" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


        [^1]: For Python, any directory (with suitable naming) can be imported,
              even if it does not contain any `.py` files.
              On the other hand, currently there is no concept of package data
              directory, all directories are treated like packages.
        ********************************************************************************

!!
  check.warn(importable)
/usr/lib/python3.10/site-packages/setuptools/command/build_py.py:207: _Warning: Package 'aiosmtpd.docs._static' is absent from the `packages` configuration.
!!

        ********************************************************************************
        ############################
        # Package would be ignored #
        ############################
        Python recognizes 'aiosmtpd.docs._static' as an importable package[^1],
        but it is absent from setuptools' `packages` configuration.

        This leads to an ambiguous overall configuration. If you want to distribute this
        package, please make sure that 'aiosmtpd.docs._static' is explicitly added
        to the `packages` configuration field.

        Alternatively, you can also rely on setuptools' discovery methods
        (for example by using `find_namespace_packages(...)`/`find_namespace:`
        instead of `find_packages(...)`/`find:`).

        You can read more about "package discovery" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/package_discovery.html

        If you don't want 'aiosmtpd.docs._static' to be distributed and are
        already explicitly excluding 'aiosmtpd.docs._static' via
        `find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
        you can try to use `exclude_package_data`, or `include-package-data=False` in
        combination with a more fine grained `package-data` configuration.

        You can read more about "package data files" on setuptools documentation page:

        - https://setuptools.pypa.io/en/latest/userguide/datafiles.html


        [^1]: For Python, any directory (with suitable naming) can be imported,
              even if it does not contain any `.py` files.
              On the other hand, currently there is no concept of package data
              directory, all directories are treated like packages.
        ********************************************************************************

!!
  check.warn(importable)
copying aiosmtpd/py.typed -> build/lib/aiosmtpd
copying aiosmtpd/docs/.gitignore -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/Makefile -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/NEWS.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/auth.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/cli.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/concepts.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/controller.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/handlers.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/index.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/intro.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/lmtp.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/manpage.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/migrating.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/proxyprotocol.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/requirements.txt -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/smtp.rst -> build/lib/aiosmtpd/docs
copying aiosmtpd/docs/testing.rst -> build/lib/aiosmtpd/docs
creating build/lib/aiosmtpd/docs/_exts
copying aiosmtpd/docs/_exts/autoprogramm.py -> build/lib/aiosmtpd/docs/_exts
creating build/lib/aiosmtpd/docs/_static
copying aiosmtpd/docs/_static/aiosmtpd.css -> build/lib/aiosmtpd/docs/_static
copying aiosmtpd/tests/certs/server.crt -> build/lib/aiosmtpd/tests/certs
copying aiosmtpd/tests/certs/server.key -> build/lib/aiosmtpd/tests/certs
copying aiosmtpd/tests/certs/server_alt.crt -> build/lib/aiosmtpd/tests/certs
copying aiosmtpd/tests/certs/server_alt.key -> build/lib/aiosmtpd/tests/certs
installing to build/bdist.linux-x86_64/wheel
running install
running install_lib
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/wheel
creating build/bdist.linux-x86_64/wheel/aiosmtpd
copying build/lib/aiosmtpd/__init__.py -> build/bdist.linux-x86_64/wheel/aiosmtpd
copying build/lib/aiosmtpd/__main__.py -> build/bdist.linux-x86_64/wheel/aiosmtpd
copying build/lib/aiosmtpd/lmtp.py -> build/bdist.linux-x86_64/wheel/aiosmtpd
copying build/lib/aiosmtpd/main.py -> build/bdist.linux-x86_64/wheel/aiosmtpd
copying build/lib/aiosmtpd/handlers.py -> build/bdist.linux-x86_64/wheel/aiosmtpd
copying build/lib/aiosmtpd/controller.py -> build/bdist.linux-x86_64/wheel/aiosmtpd
copying build/lib/aiosmtpd/proxy_protocol.py -> build/bdist.linux-x86_64/wheel/aiosmtpd
copying build/lib/aiosmtpd/smtp.py -> build/bdist.linux-x86_64/wheel/aiosmtpd
creating build/bdist.linux-x86_64/wheel/aiosmtpd/docs                           <<<<<  FROM HERE
copying build/lib/aiosmtpd/docs/__init__.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/conf.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/.gitignore -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/Makefile -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/NEWS.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/auth.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/cli.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/concepts.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/controller.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/handlers.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/index.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/intro.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/lmtp.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/manpage.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/migrating.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/proxyprotocol.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/requirements.txt -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/smtp.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
copying build/lib/aiosmtpd/docs/testing.rst -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs
creating build/bdist.linux-x86_64/wheel/aiosmtpd/docs/_exts
copying build/lib/aiosmtpd/docs/_exts/autoprogramm.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs/_exts
creating build/bdist.linux-x86_64/wheel/aiosmtpd/docs/_static
copying build/lib/aiosmtpd/docs/_static/aiosmtpd.css -> build/bdist.linux-x86_64/wheel/aiosmtpd/docs/_static
creating build/bdist.linux-x86_64/wheel/aiosmtpd/qa
copying build/lib/aiosmtpd/qa/__init__.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/qa
copying build/lib/aiosmtpd/qa/test_0packaging.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/qa
copying build/lib/aiosmtpd/qa/test_1testsuite.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/qa
creating build/bdist.linux-x86_64/wheel/aiosmtpd/testing
copying build/lib/aiosmtpd/testing/__init__.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/testing
copying build/lib/aiosmtpd/testing/statuscodes.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/testing
copying build/lib/aiosmtpd/testing/helpers.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/testing
creating build/bdist.linux-x86_64/wheel/aiosmtpd/tests                                                    <<<<<  AND FROM HERE
copying build/lib/aiosmtpd/tests/__init__.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_smtpsmuggling.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_lmtp.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_main.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_starttls.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_misc.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_smtps.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/conftest.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_server.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_handlers.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_proxyprotocol.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
copying build/lib/aiosmtpd/tests/test_smtp.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests
creating build/bdist.linux-x86_64/wheel/aiosmtpd/tests/certs
copying build/lib/aiosmtpd/tests/certs/__init__.py -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests/certs
copying build/lib/aiosmtpd/tests/certs/server.crt -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests/certs
copying build/lib/aiosmtpd/tests/certs/server.key -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests/certs
copying build/lib/aiosmtpd/tests/certs/server_alt.crt -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests/certs
copying build/lib/aiosmtpd/tests/certs/server_alt.key -> build/bdist.linux-x86_64/wheel/aiosmtpd/tests/certs
copying build/lib/aiosmtpd/py.typed -> build/bdist.linux-x86_64/wheel/aiosmtpd
running install_egg_info
Copying aiosmtpd.egg-info to build/bdist.linux-x86_64/wheel/aiosmtpd-1.4.6-py3.10.egg-info
running install_scripts
creating build/bdist.linux-x86_64/wheel/aiosmtpd-1.4.6.dist-info/WHEEL
creating '/home/tkloczko/rpmbuild/BUILD/aiosmtpd-1.4.6/dist/.tmp-ssusf0ry/aiosmtpd-1.4.6-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it
adding 'aiosmtpd/__init__.py'
adding 'aiosmtpd/__main__.py'
adding 'aiosmtpd/controller.py'
adding 'aiosmtpd/handlers.py'
adding 'aiosmtpd/lmtp.py'
adding 'aiosmtpd/main.py'
adding 'aiosmtpd/proxy_protocol.py'
adding 'aiosmtpd/py.typed'
adding 'aiosmtpd/smtp.py'
adding 'aiosmtpd/docs/.gitignore'
adding 'aiosmtpd/docs/Makefile'
adding 'aiosmtpd/docs/NEWS.rst'
adding 'aiosmtpd/docs/__init__.py'
adding 'aiosmtpd/docs/auth.rst'
adding 'aiosmtpd/docs/cli.rst'
adding 'aiosmtpd/docs/concepts.rst'
adding 'aiosmtpd/docs/conf.py'
adding 'aiosmtpd/docs/controller.rst'
adding 'aiosmtpd/docs/handlers.rst'
adding 'aiosmtpd/docs/index.rst'
adding 'aiosmtpd/docs/intro.rst'
adding 'aiosmtpd/docs/lmtp.rst'
adding 'aiosmtpd/docs/manpage.rst'
adding 'aiosmtpd/docs/migrating.rst'
adding 'aiosmtpd/docs/proxyprotocol.rst'
adding 'aiosmtpd/docs/requirements.txt'
adding 'aiosmtpd/docs/smtp.rst'
adding 'aiosmtpd/docs/testing.rst'
adding 'aiosmtpd/docs/_exts/autoprogramm.py'
adding 'aiosmtpd/docs/_static/aiosmtpd.css'
adding 'aiosmtpd/qa/__init__.py'
adding 'aiosmtpd/qa/test_0packaging.py'
adding 'aiosmtpd/qa/test_1testsuite.py'
adding 'aiosmtpd/testing/__init__.py'
adding 'aiosmtpd/testing/helpers.py'
adding 'aiosmtpd/testing/statuscodes.py'
adding 'aiosmtpd/tests/__init__.py'
adding 'aiosmtpd/tests/conftest.py'
adding 'aiosmtpd/tests/test_handlers.py'
adding 'aiosmtpd/tests/test_lmtp.py'
adding 'aiosmtpd/tests/test_main.py'
adding 'aiosmtpd/tests/test_misc.py'
adding 'aiosmtpd/tests/test_proxyprotocol.py'
adding 'aiosmtpd/tests/test_server.py'
adding 'aiosmtpd/tests/test_smtp.py'
adding 'aiosmtpd/tests/test_smtps.py'
adding 'aiosmtpd/tests/test_smtpsmuggling.py'
adding 'aiosmtpd/tests/test_starttls.py'
adding 'aiosmtpd/tests/certs/__init__.py'
adding 'aiosmtpd/tests/certs/server.crt'
adding 'aiosmtpd/tests/certs/server.key'
adding 'aiosmtpd/tests/certs/server_alt.crt'
adding 'aiosmtpd/tests/certs/server_alt.key'
adding 'aiosmtpd-1.4.6.dist-info/LICENSE'
adding 'aiosmtpd-1.4.6.dist-info/METADATA'
adding 'aiosmtpd-1.4.6.dist-info/NOTICE'
adding 'aiosmtpd-1.4.6.dist-info/WHEEL'
adding 'aiosmtpd-1.4.6.dist-info/entry_points.txt'
adding 'aiosmtpd-1.4.6.dist-info/top_level.txt'
adding 'aiosmtpd-1.4.6.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
Successfully built aiosmtpd-1.4.6-py3-none-any.whl
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant