aiosmtpd icon indicating copy to clipboard operation
aiosmtpd copied to clipboard

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

Open kloczek opened this issue 1 year ago • 0 comments

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

kloczek avatar May 18 '24 13:05 kloczek