============================
trytoncommunity-setuptools
============================
**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('country_order', prefix='trytoncommunity',
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"]
build-backend = "setuptools.build_meta:__legacy__"
Raw data
{
"_id": null,
"home_page": "https://tryton.community",
"name": "trytoncommunity-setuptools",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "tryton,setuptools,package management",
"author": "Hartmut Goebel",
"author_email": "h.goebel@crazy-compilers.com",
"download_url": "https://files.pythonhosted.org/packages/b6/0c/528e326f1a764cddf45dd9ad2783ec2fdac78894cacc727d79e015b072c9/trytoncommunity-setuptools-0.2.tar.gz",
"platform": null,
"description": "============================\ntrytoncommunity-setuptools\n============================\n\n**Shortening the boilerplate in Tryton modules**\n\nTryton modules normally contain and require a lot of boilerplate in\n`setup.py`. Not only this is a lot of duplicate code, also it is a burden to\nmaintain this between different versions of Tryton.\n\nThis package allows moving most all the meta-data and options being somewhat\n\"static\" between Tryton modules and Tryton Versions into `setup.cfg` and\nusing a quite terse `setup.py` only.\n\n`trytoncommunity-setuptools` also supports the 'module prefix mapping` quite\nsome developers and integrators use.\n\nExample `setup.py`::\n\n from trytoncommunity_setuptools import setup, get_require_version\n\n requires = ['lxml']\n tests_require = [\n get_require_version('proteus'),\n 'pycountry',\n ]\n\n setup('country_order', prefix='trytoncommunity',\n requires=requires, tests_require=tests_require)\n\n\nCorresponding example `setup.cfg`::\n\n [metadata]\n ; name will be filled by trytoncommunity-setuptools\n description = Precedence rating for countries in Tryton\n long_description = file: README.rst\n long_description_content_type = text/x-rst\n url = https://tryton.community\n author = Hartmut Goebel\n author_email = h.goebel@crazy-compilers.com\n license = GPL-3.0-or-later\n license_files = LICENSE-GPL-3.0.txt\n keywords = tryton, country\n classifiers =\n Development Status :: 5 - Production/Stable\n License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)\n Natural Language :: English\n Natural Language :: German\n ;; These classifiers will be added by trytoncommunity-setuptools,\n ; Environment :: Plugins\n ; Framework :: Tryton\n ; Intended Audience :: Developers\n ; Programming Language :: Python :: \u2026 filled according to Tryton version\n ; Programming Language :: Python :: Implementation :: CPython\n ; Topic :: Office/Business\n ; Operating System :: OS Independent\n\n [options]\n ;python_requires = \u2026 # filled by trytoncommunity-setuptools\n ;include_package_data = True # enforced by trytoncommunity-setuptools\n ;zip_safe = False # enforced by trytoncommunity-setuptools\n\n\nWhen using a PEP 517 compliant build tool\ne.g. `build`, you need to also provide a `pyproject.toml` file::\n\n [build-system]\n requires = [\"trytoncommunity-setuptools\"]\n build-backend = \"setuptools.build_meta:__legacy__\"\n",
"bugtrack_url": null,
"license": "GPL-3.0-or-later",
"summary": "Shortening the boilerplate in Tryton modules",
"version": "0.2",
"project_urls": {
"Homepage": "https://tryton.community",
"Source Code": "https://foss.heptapod.net/tryton-community/setuptools"
},
"split_keywords": [
"tryton",
"setuptools",
"package management"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "77ae60b6f8582af9a1e9bdc092b1c2640b813c22e49ad046a45b5261b5e3b148",
"md5": "0e524978eb6396cd383d28deab64e9f7",
"sha256": "84a5da60b31891453cf63211f75b8802c678c78b137e04e03cc23eede5291599"
},
"downloads": -1,
"filename": "trytoncommunity_setuptools-0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0e524978eb6396cd383d28deab64e9f7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 18213,
"upload_time": "2023-11-01T13:55:02",
"upload_time_iso_8601": "2023-11-01T13:55:02.956023Z",
"url": "https://files.pythonhosted.org/packages/77/ae/60b6f8582af9a1e9bdc092b1c2640b813c22e49ad046a45b5261b5e3b148/trytoncommunity_setuptools-0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b60c528e326f1a764cddf45dd9ad2783ec2fdac78894cacc727d79e015b072c9",
"md5": "0cae371eac84ed51409ac6934b28e952",
"sha256": "210d266da69fc7bd717d40a3e9a18c831d495d91d5cc6cd410e62750bae6f749"
},
"downloads": -1,
"filename": "trytoncommunity-setuptools-0.2.tar.gz",
"has_sig": false,
"md5_digest": "0cae371eac84ed51409ac6934b28e952",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 17725,
"upload_time": "2023-11-01T13:55:05",
"upload_time_iso_8601": "2023-11-01T13:55:05.056362Z",
"url": "https://files.pythonhosted.org/packages/b6/0c/528e326f1a764cddf45dd9ad2783ec2fdac78894cacc727d79e015b072c9/trytoncommunity-setuptools-0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-01 13:55:05",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "trytoncommunity-setuptools"
}