Shortening the boilerplate in Tryton modules
Project description
Shortening the boilerplate in Tryton modules
Tryton modules normally contain and require a lot of boilerplate in setup.py. Not only this is a lot of duplicate code, also it is a burden to maintain this between different versions of Tryton.
This package allows moving most all the meta-data and options being somewhat “static” between Tryton modules and Tryton Versions into setup.cfg and using a quite terse setup.py only.
trytoncommunity-setuptools also supports the ‘module prefix mapping` quite some developers and integrators use.
Example setup.py:
from trytoncommunity_setuptools import setup, get_require_version requires = ['lxml'] tests_require = [ get_require_version('proteus'), 'pycountry', ] setup('trytoncommunity', 'country_order', requires=requires, tests_require=tests_require)
Corresponding example setup.cfg:
[metadata] ; name will be filled by trytoncommunity-setuptools description = Precedence rating for countries in Tryton long_description = file: README.rst long_description_content_type = text/x-rst url = https://tryton.community author = Hartmut Goebel author_email = h.goebel@crazy-compilers.com license = GPL-3.0-or-later license_files = LICENSE-GPL-3.0.txt keywords = tryton, country classifiers = Development Status :: 5 - Production/Stable License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+) Natural Language :: English Natural Language :: German ;; These classifiers will be added by trytoncommunity-setuptools, ; Environment :: Plugins ; Framework :: Tryton ; Intended Audience :: Developers ; Programming Language :: Python :: … filled according to Tryton version ; Programming Language :: Python :: Implementation :: CPython ; Topic :: Office/Business ; Operating System :: OS Independent [options] ;python_requires = … # filled by trytoncommunity-setuptools ;include_package_data = True # enforced by trytoncommunity-setuptools ;zip_safe = False # enforced by trytoncommunity-setuptools
When using a PEP 517 compliant build tool e.g. build, you need to also provide a pyproject.toml file:
[build-system] requires = ["trytoncommunity-setuptools >= 0.3"] build-backend = "setuptools.build_meta:__legacy__"
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for trytoncommunity_setuptools-0.4.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | be9f16fbb83ef361d0a1f0e85e11f798b941bb8975ab2f0986f3535cdb7d8b31 |
|
MD5 | 9ff17b80a702144702f7060fead14bc3 |
|
BLAKE2b-256 | ab3c17ed1620d6a2e243aaf30703400f319ce78c26dc494097ca8385e38bc56c |
Hashes for trytoncommunity_setuptools-0.4.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c8fbc5eb5393491962141646db8daa34cd357938c57e9cd31cf6df2898b5686d |
|
MD5 | 44e6d0c9ef51e1c2b51f007f1ddbab40 |
|
BLAKE2b-256 | 41267681533165c1d5c2f9db2624a15585ada909a865c71c489706310eba68e0 |