From da04050cc35d27f83ff71ca25f423d3cc4ff1c87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Mon, 23 Dec 2024 23:15:34 +0100 Subject: [PATCH] Update documentation of product classification --- modules/product_classification/CHANGELOG | 13 ++++++++++++ modules/product_classification/doc/design.rst | 20 +++++++++++++++++++ modules/product_classification/doc/index.rst | 13 +++++++++--- .../product_classification/doc/reference.rst | 20 +++++++++++++++++++ .../product_classification/doc/releases.rst | 7 +++++++ modules/product_classification/setup.py | 8 ++++++-- 6 files changed, 76 insertions(+), 5 deletions(-) create mode 100644 modules/product_classification/doc/design.rst create mode 100644 modules/product_classification/doc/reference.rst create mode 100644 modules/product_classification/doc/releases.rst diff --git a/modules/product_classification/CHANGELOG b/modules/product_classification/CHANGELOG index a59566c300..cfa788bf47 100644 --- a/modules/product_classification/CHANGELOG +++ b/modules/product_classification/CHANGELOG @@ -25,44 +25,57 @@ Version 6.6.0 - 2022-10-31 * Bug fixes (see mercurial logs for details) Version 6.4.0 - 2022-05-02 +-------------------------- * Bug fixes (see mercurial logs for details) * Add support for Python 3.10 * Remove support for Python 3.6 Version 6.2.0 - 2021-11-01 +-------------------------- * Bug fixes (see mercurial logs for details) Version 6.0.0 - 2021-05-03 +-------------------------- * Bug fixes (see mercurial logs for details) Version 5.8.0 - 2020-11-02 +-------------------------- * Bug fixes (see mercurial logs for details) * Remove support for Python 3.5 Version 5.6.0 - 2020-05-04 +-------------------------- * Bug fixes (see mercurial logs for details) Version 5.4.0 - 2019-11-04 +-------------------------- * Bug fixes (see mercurial logs for details) Version 5.2.0 - 2019-05-06 +-------------------------- * Bug fixes (see mercurial logs for details) Version 5.0.0 - 2018-10-01 +-------------------------- * Bug fixes (see mercurial logs for details) * Remove support for Python 2.7 Version 4.8.0 - 2018-04-23 +-------------------------- * Bug fixes (see mercurial logs for details) Version 4.6.0 - 2017-10-30 +-------------------------- * Bug fixes (see mercurial logs for details) Version 4.4.0 - 2017-05-01 +-------------------------- * Bug fixes (see mercurial logs for details) Version 4.2.0 - 2016-11-28 +-------------------------- * Bug fixes (see mercurial logs for details) Version 4.0.0 - 2016-05-02 +-------------------------- * Initial release diff --git a/modules/product_classification/doc/design.rst b/modules/product_classification/doc/design.rst new file mode 100644 index 0000000000..df9a164f5c --- /dev/null +++ b/modules/product_classification/doc/design.rst @@ -0,0 +1,20 @@ +****** +Design +****** + +The *Product Classification Module* introduces and extends the following concepts: + +.. _model-product.template: + +Product Template +================ + +When the *Product Classification Module* is activated, product templates gain +some extra properties. +These include a :guilabel:`Classification` to link with an implementation of +:class:`~trytond.modules.product_classification.product.ClassificationMixin`. + +.. seealso:: + + The `Product Template ` concept is + introduced by the :doc:`Product Module `. diff --git a/modules/product_classification/doc/index.rst b/modules/product_classification/doc/index.rst index e7945e4366..880e319ac7 100644 --- a/modules/product_classification/doc/index.rst +++ b/modules/product_classification/doc/index.rst @@ -1,6 +1,13 @@ +############################# Product Classification Module ############################# -The Product Classification module defines the tools for other modules to create -classifications of products. -It adds a reference field *classification* to the product template. +The *Product Classification Module* provides the tools for other modules to +implemented classifications of products. + +.. toctree:: + :maxdepth: 2 + + design + reference + releases diff --git a/modules/product_classification/doc/reference.rst b/modules/product_classification/doc/reference.rst new file mode 100644 index 0000000000..5de9cfd442 --- /dev/null +++ b/modules/product_classification/doc/reference.rst @@ -0,0 +1,20 @@ +************* +API Reference +************* + +Classification +============== + +.. class:: trytond.modules.product_classification.product.ClassificationMixin + + A :class:`~trytond:trytond.model.DeactivableMixin` that defines the + requirements to implement a product classification. + +classification_tree +=================== + +.. function:: trytond.modules.product_classification.product.classification_tree(name) + + A function that returns a + :class:`~trytond.modules.product_classification.product.ClassificationMixin` + which implements :func:`~trytond:trytond.model.tree`. diff --git a/modules/product_classification/doc/releases.rst b/modules/product_classification/doc/releases.rst new file mode 100644 index 0000000000..21b13c4745 --- /dev/null +++ b/modules/product_classification/doc/releases.rst @@ -0,0 +1,7 @@ +.. _releases-index: + +============= +Release notes +============= + +.. include:: ../CHANGELOG diff --git a/modules/product_classification/setup.py b/modules/product_classification/setup.py index f3161ea479..00189e7b79 100755 --- a/modules/product_classification/setup.py +++ b/modules/product_classification/setup.py @@ -11,9 +11,12 @@ from setuptools import find_packages, setup def read(fname): - return io.open( + content = io.open( os.path.join(os.path.dirname(__file__), fname), 'r', encoding='utf-8').read() + content = re.sub( + r'(?m)^\.\. toctree::\r?\n((^$|^\s.*$)\r?\n)*', '', content) + return content def get_require_version(name): @@ -57,7 +60,8 @@ setup(name=name, download_url=download_url, project_urls={ "Bug Tracker": 'https://bugs.tryton.org/', - "Documentation": 'https://docs.tryton.org/', + "Documentation": ( + 'https://docs.tryton.org/latest/modules-product-classification'), "Forum": 'https://www.tryton.org/forum', "Source Code": 'https://code.tryton.org/tryton', },