setup.cfg - Configuration accompanying setup.py

In addition to the usual packaging configuration, this file contains the entry points needed to enable PyInstaller to find hooks and tests provided by this package.

Entry Points for PyInstaller

[options.entry_points]
pyinstaller40 =

Hook registration: This entry point refers to a function that will be invoked with no parameters. It must return a sequence of strings, each element of which provides an additional absolute path to search for hooks. This is equivalent to passing the additional-hooks-dir command-line option to PyInstaller for each string in the sequence.

In this project, the function is get_hook_dirs.

    hook-dirs = pyi_hooksample.__pyinstaller:get_hook_dirs
 

Test registration: This entry point refers to a function that will be invoked with no parameters. It must return a sequence of strings, each element of which provides an additional absolute path to a directory tree or to a Python source file. These paths are then passed to pytest for test discovery. This allows both testing by this package and by PyInstaller, as discussed in index.

In this project, the function is get_PyInstaller_tests.

    tests = pyi_hooksample.__pyinstaller:get_PyInstaller_tests
 

Usual Packaging Configuration

[sdist]
formats=gztar

[bdist_wheel]
universal=1

[metadata]
name         = pyinstaller-hooksample
version      = attr: pyi_hooksample.__version__
description  = sample project showing how to provide PyInstaller hooks for your package and test them
;long-description = file: README.txt
url          = https://github.com/pyinstaller/hooksample
download-url = https://pypi.org/project/pyinstaller-hooksample
author       = Hartmut Goebel
author-email = h.goebel@crazy-compilers.com
license      = GPL-3.0-or-later
keywords     = sample pyinstaller development
classifiers =
  Development Status :: 1 - Alpha
  Intended Audience :: Developers
  Topic :: Software Development :: Build Tools
  License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
  Natural Language :: English
  Operating System :: OS Independent
  Programming Language :: Python
  Programming Language :: Python :: 3

[options]
zip_safe = false
include_package_data = True
package_dir=
    =src
packages = find:
install_requires =

[options.packages.find]
where=src

[options.package_data]
* = *.txt

[options.extras_require]
test =
    pytest
    pyinstaller[hook_testing] @ https://github.com/pyinstaller/pyinstaller/archive/develop.zip
docs =
    CodeChat
    sphinx
    sphinx_rtd_theme

[zest.releaser]
history-file = CHANGES
push-changes = no
tag-format = v{version}
tag-message = pyinstaller-hooksample {version}
tag-signing = yes
create-wheel = yes