[IMP] conf.py, *: interpolate the version and releases in the content

This commit replaces hard-coded occurrences of the version and of the
last, current and next releases' version with placeholders interpolated
at build time to avoid manually updating these after each freeze.

task-2917614

closes odoo/documentation#3157

X-original-commit: 0a272f64ce
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
This commit is contained in:
Antoine Vandevenne (anv) 2022-11-25 16:30:48 +00:00
parent 206cfa2b6c
commit 12e1085199
17 changed files with 91 additions and 71 deletions

22
conf.py
View File

@ -19,11 +19,25 @@ _logger = logging.getLogger(__name__)
project = 'Odoo' project = 'Odoo'
copyright = 'Odoo S.A.' copyright = 'Odoo S.A.'
# `version` if the version info for the project being documented, acts as replacement for |version|, # `version` is the version info for the project being documented, acts as replacement for |version|,
# also used in various other places throughout the built documents. # also used in various other places throughout the built documents.
# `release` is the full version, including alpha/beta/rc tags. Acts as replacement for |release|. # `release` is the full version, including alpha/beta/rc tags. Acts as replacement for |release|.
version = release = 'saas-15.3' version = release = 'saas-15.3'
# `current_branch` is the technical name of the current branch.
# E.g., saas-15.4 -> saas-15.4; 12.0 -> 12.0, master -> master (*).
current_branch = version
# `current_version` is the Odoo version linked to the current branch.
# E.g., saas-15.4 -> 15.4; 12.0 -> 12; master -> master (*).
current_version = current_branch.replace('saas-', '').replace('.0', '')
# `current_major_branch` is the technical name of the major branch before the current branch.
# E.g., saas-15.4 -> 15.0; 12.0 -> 12.0; master -> master (*).
current_major_branch = re.sub(r'\.\d', '.0', current_branch.replace('saas-', ''))
# `current_major_version` is the Odoo version linked to the current major branch.
# E.g., saas-15.4 -> 15; 12.0 -> 12; master -> master (*).
current_major_version = current_major_branch.replace('.0', '')
# (*): We don't care for master.
# The minimal Sphinx version required to build the documentation. # The minimal Sphinx version required to build the documentation.
needs_sphinx = '3.0.0' needs_sphinx = '3.0.0'
@ -61,6 +75,11 @@ add_function_parentheses = True
#=== Extensions configuration ===# #=== Extensions configuration ===#
source_read_replace_vals = { source_read_replace_vals = {
'BRANCH': current_branch,
'CURRENT_BRANCH': current_branch,
'CURRENT_VERSION': current_version,
'CURRENT_MAJOR_BRANCH': current_major_branch,
'CURRENT_MAJOR_VERSION': current_major_version,
'GITHUB_PATH': f'https://github.com/odoo/odoo/blob/{version}', 'GITHUB_PATH': f'https://github.com/odoo/odoo/blob/{version}',
'GITHUB_ENT_PATH': f'https://github.com/odoo/enterprise/blob/{version}', 'GITHUB_ENT_PATH': f'https://github.com/odoo/enterprise/blob/{version}',
} }
@ -315,7 +334,6 @@ def source_read_replace(app, docname, source):
result = result.replace(f"{{{key}}}", app.config.source_read_replace_vals[key]) result = result.replace(f"{{{key}}}", app.config.source_read_replace_vals[key])
source[0] = result source[0] = result
def setup(app): def setup(app):
# Generate all alternate URLs for each document # Generate all alternate URLs for each document
app.add_config_value('project_root', None, 'env') app.add_config_value('project_root', None, 'env')

View File

@ -151,7 +151,7 @@ Repository
.. code-block:: console .. code-block:: console
# wget -O - https://nightly.odoo.com/odoo.key | apt-key add - # wget -O - https://nightly.odoo.com/odoo.key | apt-key add -
# echo "deb http://nightly.odoo.com/15.0/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list # echo "deb http://nightly.odoo.com/{CURRENT_MAJOR_BRANCH}/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list
# apt-get update && apt-get install odoo # apt-get update && apt-get install odoo
You can then use the usual `apt-get upgrade` command to keep your installation up-to-date. You can then use the usual `apt-get upgrade` command to keep your installation up-to-date.
@ -163,7 +163,7 @@ Repository
.. code-block:: console .. code-block:: console
$ sudo dnf config-manager --add-repo=https://nightly.odoo.com/15.0/nightly/rpm/odoo.repo $ sudo dnf config-manager --add-repo=https://nightly.odoo.com/{CURRENT_MAJOR_BRANCH}/nightly/rpm/odoo.repo
$ sudo dnf install -y odoo $ sudo dnf install -y odoo
$ sudo systemctl enable odoo $ sudo systemctl enable odoo
$ sudo systemctl start odoo $ sudo systemctl start odoo
@ -183,8 +183,8 @@ Distribution package
<download_>`_. <download_>`_.
.. note:: .. note::
Odoo 15.0 'deb' package currently supports `Debian 11 (Bullseye)`_, `Ubuntu 20.04 (Focal)`_ Odoo {CURRENT_MAJOR_VERSION} 'deb' package currently supports `Debian 11 (Bullseye)`_,
or above. `Ubuntu 20.04 (Focal)`_ or above.
Next, execute the following commands **as root**: Next, execute the following commands **as root**:
@ -224,13 +224,13 @@ Distribution package
<download_>`_. <download_>`_.
.. note:: .. note::
Odoo 15.0 'rpm' package supports Fedora 34. Odoo {CURRENT_MAJOR_VERSION} 'rpm' package supports Fedora 34.
Once downloaded, the package can be installed using the 'dnf' package manager: Once downloaded, the package can be installed using the 'dnf' package manager:
.. code-block:: console .. code-block:: console
$ sudo dnf localinstall odoo_15.0.latest.noarch.rpm $ sudo dnf localinstall odoo_{CURRENT_MAJOR_BRANCH}.latest.noarch.rpm
$ sudo systemctl enable odoo $ sudo systemctl enable odoo
$ sudo systemctl start odoo $ sudo systemctl start odoo

View File

@ -17,7 +17,7 @@ The platform will take care to install these dependencies in your containers.
`The pip requirements specifiers <https://pip.pypa.io/en/stable/reference/pip_install/#requirement-specifiers>`_ `The pip requirements specifiers <https://pip.pypa.io/en/stable/reference/pip_install/#requirement-specifiers>`_
documentation can help you write a :file:`requirements.txt` file. documentation can help you write a :file:`requirements.txt` file.
To have a concrete example, To have a concrete example,
check out the `requirements.txt file of Odoo <https://github.com/odoo/odoo/blob/14.0/requirements.txt>`_. check out the `requirements.txt file of Odoo <{GITHUB_PATH}/requirements.txt>`_.
The :file:`requirements.txt` files of submodules are taken into account as well. The platform The :file:`requirements.txt` files of submodules are taken into account as well. The platform
looks for :file:`requirements.txt` files in each folder containing Odoo modules: Not in the module folder itself, looks for :file:`requirements.txt` files in each folder containing Odoo modules: Not in the module folder itself,
@ -174,9 +174,9 @@ Look for "*odoo: addons paths*":
:: ::
2018-02-19 10:51:39,267 4 INFO ? odoo: Odoo version 13.0 2018-02-19 10:51:39,267 4 INFO ? odoo: Odoo version {BRANCH}
2018-02-19 10:51:39,268 4 INFO ? odoo: Using configuration file at /home/odoo/.config/odoo/odoo.conf 2018-02-19 10:51:39,268 4 INFO ? odoo: Using configuration file at /home/odoo/.config/odoo/odoo.conf
2018-02-19 10:51:39,268 4 INFO ? odoo: addons paths: ['/home/odoo/data/addons/13.0', '/home/odoo/src/user', '/home/odoo/src/enterprise', '/home/odoo/src/themes', '/home/odoo/src/odoo/addons', '/home/odoo/src/odoo/odoo/addons'] 2018-02-19 10:51:39,268 4 INFO ? odoo: addons paths: ['/home/odoo/data/addons/{BRANCH}', '/home/odoo/src/user', '/home/odoo/src/enterprise', '/home/odoo/src/themes', '/home/odoo/src/odoo/addons', '/home/odoo/src/odoo/odoo/addons']
**Be careful**, especially with your production database. **Be careful**, especially with your production database.
Operations that you perform running this Odoo server instance are not isolated: Operations that you perform running this Odoo server instance are not isolated:

View File

@ -237,7 +237,7 @@ Python comes with its own package manager: `pip
a single command. a single command.
#. Download and install the recommended release (`see README file #. Download and install the recommended release (`see README file
<https://github.com/odoo/documentation/tree/saas-15.3/README.md>`_) of **Python 3** on your <https://github.com/odoo/documentation/tree/{BRANCH}/README.md>`_) of **Python 3** on your
machine. machine.
#. Make sure to have **pip** installed on your machine (on Windows, you can install pip alongside #. Make sure to have **pip** installed on your machine (on Windows, you can install pip alongside
Python). Python).
@ -292,12 +292,12 @@ Prepare your version
-------------------- --------------------
Now that your machine is all set up, it is time to do the same for your version of the documentation Now that your machine is all set up, it is time to do the same for your version of the documentation
files. As it would not be convenient to have several people working on the version 13.0 in parallel files. As it would not be convenient to have several people working on the version {BRANCH} in
(conflicts of content would occur all the time), and in order to be able to create a :abbr:`PR parallel (conflicts of content would occur all the time), and in order to be able to create a
(Pull Request)`, you must `create a new branch :abbr:`PR (Pull Request)`, you must `create a new branch
<https://www.atlassian.com/git/tutorials/using-branches>`_ starting from the branch 13.0. In other <https://www.atlassian.com/git/tutorials/using-branches>`_ starting from the branch {BRANCH}. In
words, you copy the entirety of this versions files and give it another name. For this example, we other words, you copy the entirety of this versions files and give it another name. For this
will go with ``13.0-my_contribution``. example, we will go with ``{BRANCH}-my_contribution``.
Execute the following commands in a terminal to... Execute the following commands in a terminal to...
@ -307,17 +307,17 @@ Execute the following commands in a terminal to...
$ cd documentation/ $ cd documentation/
#. Switch to the version 13.0: #. Switch to the version {BRANCH}:
.. code-block:: console .. code-block:: console
$ git checkout 13.0 $ git checkout {BRANCH}
#. Create your own branch which will be a copy of 13.0: #. Create your own branch which will be a copy of {BRANCH}:
.. code-block:: console .. code-block:: console
$ git checkout -b 13.0-my_contribution $ git checkout -b {BRANCH}-my_contribution
.. _contributing/perform-changes: .. _contributing/perform-changes:
@ -344,8 +344,8 @@ guidelines.
#. Delete :file:`my-image.png`. #. Delete :file:`my-image.png`.
#. Rename :file:`my-image-fs8.png` to :file:`my-image.png`. #. Rename :file:`my-image-fs8.png` to :file:`my-image.png`.
- If your changes include renaming or moving an RST file to a new location, follow the `manual - If your changes include renaming or moving an RST file to a new location, follow the `manual
for redirect rules <https://github.com/odoo/documentation/tree/13.0/redirects/MANUAL.md>`_ to for redirect rules <https://github.com/odoo/documentation/tree/{BRANCH}/redirects/MANUAL.md>`_
create the appropriate redirect rule(s). to create the appropriate redirect rule(s).
.. _contributing/preview-changes: .. _contributing/preview-changes:
@ -391,7 +391,7 @@ Submit your changes
$ git add * $ git add *
$ git commit $ git commit
$ git push -u origin 13.0-my_contribution $ git push -u origin {BRANCH}-my_contribution
#. Go to `github.com/odoo/documentation/pulls #. Go to `github.com/odoo/documentation/pulls
<https://github.com/odoo/documentation/pulls>`_ and click on the **New pull request** button. <https://github.com/odoo/documentation/pulls>`_ and click on the **New pull request** button.
@ -404,7 +404,8 @@ Submit your changes
.. image:: documentation/compare-across-forks.png .. image:: documentation/compare-across-forks.png
#. In the dropdown for the selection of the base branch (i.e., the version of the documentation that #. In the dropdown for the selection of the base branch (i.e., the version of the documentation that
your changes concern), make sure to select the version that your changes target (here **13.0**). your changes concern), make sure to select the version that your changes target (here
**{BRANCH}**).
.. image:: documentation/select-branches-fork.png .. image:: documentation/select-branches-fork.png

View File

@ -36,8 +36,8 @@ A reference to the rendered :file:`prices.html` and :file:`variants.html` could
#. Absolute: #. Absolute:
- ``https://odoo.com/documentation/master/applications/sales/sales/products_prices/prices.html`` - ``https://odoo.com/documentation/{BRANCH}/applications/sales/sales/products_prices/prices.html``
- ``https://odoo.com/documentation/master/applications/sales/sales/products_prices/products/variants.html`` - ``https://odoo.com/documentation/{BRANCH}/applications/sales/sales/products_prices/products/variants.html``
#. Relative: #. Relative:

View File

@ -49,7 +49,7 @@ Help & version
.. option:: --version .. option:: --version
shows Odoo version e.g. "Odoo Server 13.0" shows Odoo version e.g. "Odoo Server {BRANCH}"
.. _reference/cmdline/server: .. _reference/cmdline/server:

View File

@ -248,10 +248,10 @@ Here are some useful Git commands for your day-to-day work.
.. code-block:: console .. code-block:: console
$ cd $HOME/src/odoo $ cd $HOME/src/odoo
$ git switch saas-15.3 $ git switch {BRANCH}
$ cd $HOME/src/enterprise $ cd $HOME/src/enterprise
$ git switch saas-15.3 $ git switch {BRANCH}
- Fetch and rebase: - Fetch and rebase:
@ -259,11 +259,11 @@ Here are some useful Git commands for your day-to-day work.
$ cd $HOME/src/odoo $ cd $HOME/src/odoo
$ git fetch --all --prune $ git fetch --all --prune
$ git rebase --autostash odoo/saas-15.3 $ git rebase --autostash odoo/{BRANCH}
$ cd $HOME/src/enterprise $ cd $HOME/src/enterprise
$ git fetch --all --prune $ git fetch --all --prune
$ git rebase --autostash enterprise/saas-15.3 $ git rebase --autostash enterprise/{BRANCH}
Code Editor Code Editor
----------- -----------

View File

@ -17,9 +17,9 @@ Data Files (CSV)
Odoo is a highly data driven system. Although behavior is customized using Python code, part of a Odoo is a highly data driven system. Although behavior is customized using Python code, part of a
module's value is in the data it sets up when loaded. One way to load data is through a CSV module's value is in the data it sets up when loaded. One way to load data is through a CSV
file. One example is the file. One example is the `list of country states
`list of country states <https://github.com/odoo/odoo/blob/saas-15.3/odoo/addons/base/data/res.country.state.csv>`__ <{GITHUB_PATH}/odoo/addons/base/data/res.country.state.csv>`_ which is loaded at installation of the
which is loaded at installation of the ``base`` module. `base` module.
.. code-block:: text .. code-block:: text

View File

@ -12,10 +12,10 @@ ACL stands for "Access Control List"
<howto/rdtraining>`. <howto/rdtraining>`.
To follow the exercise, it is recommended that you fetch the branch To follow the exercise, it is recommended that you fetch the branch
15.0-core from the {BRANCH}-core from the `technical training solutions
`technical training solutions <https://github.com/odoo/technical-training-solutions/tree/15.0-core>`__ repository. <https://github.com/odoo/technical-training-solutions/tree/{BRANCH}-core>`_ repository. It
It contains a version of the module created during the core training we can use contains a version of the module created during the core training we can use as a starting
as a starting point. point.
So far we have mostly concerned ourselves with implementing useful features. So far we have mostly concerned ourselves with implementing useful features.
However in most business scenarios *security* quickly becomes a concern: However in most business scenarios *security* quickly becomes a concern:

View File

@ -6,9 +6,9 @@ Advanced C: Master and Demo Data
.. tip:: This tutorial assumes you followed the Core Training. .. tip:: This tutorial assumes you followed the Core Training.
To do the exercise, fetch the branch 15.0-core from the To do the exercise, fetch the branch {BRANCH}-core from the `technical training solutions
`technical training solutions <https://github.com/odoo/technical-training-solutions/tree/15.0-core>`__ repository. <https://github.com/odoo/technical-training-solutions/tree/{BRANCH}-core>`_ repository. It
It contains a basic module we will use as a starting point contains a basic module we will use as a starting point
Data Types Data Types
========== ==========

View File

@ -6,9 +6,9 @@ Advanced E: Python Unit Tests
.. tip:: This tutorial assumes you followed the Core Training. .. tip:: This tutorial assumes you followed the Core Training.
To do the exercise, fetch the branch 15.0-core from the To do the exercise, fetch the branch {BRANCH}-core from the `technical training solutions
`technical training solutions <https://github.com/odoo/technical-training-solutions/tree/15.0-core>`__ repository. <https://github.com/odoo/technical-training-solutions/tree/{BRANCH}-core>`_ repository. It
It contains a basic module we will use as a starting point contains a basic module we will use as a starting point
**Reference**: **Reference**:
`Odoo's Test Framework: Learn Best Practices <https://www.youtube.com/watch?v=JEIscps0OOQ>`__ `Odoo's Test Framework: Learn Best Practices <https://www.youtube.com/watch?v=JEIscps0OOQ>`__
@ -284,7 +284,7 @@ These test classes are built on top of the ``unittest`` python module.
.. note:: For better readability, split your tests into multiple files depending on the scope of the .. note:: For better readability, split your tests into multiple files depending on the scope of the
tests. You can also have a Common class that most of the tests should inherit from; this common tests. You can also have a Common class that most of the tests should inherit from; this common
class can define the whole set up for the module. For instance in class can define the whole set up for the module. For instance in
`account <https://github.com/odoo/odoo/blob/14.0/addons/account/tests/common.py>`__. `account <{GITHUB_PATH}/addons/account/tests/common.py>`__.
.. exercise:: Update the code so no one can: .. exercise:: Update the code so no one can:

View File

@ -9,11 +9,11 @@ Advanced J: PDF Reports
This tutorial assumes you have completed the :ref:`Core Training <howto/rdtraining>` This tutorial assumes you have completed the :ref:`Core Training <howto/rdtraining>`
and have installed :ref:`wkhtmltopdf <setup/install/source/prepare>`. and have installed :ref:`wkhtmltopdf <setup/install/source/prepare>`.
To follow the exercise, it is recommended that you fetch the branch To follow the exercise, it is recommended that you fetch the branch {BRANCH}-core from the
15.0-core from the `technical training solutions
`technical training solutions <https://github.com/odoo/technical-training-solutions/tree/15.0-core>`__ repository. <https://github.com/odoo/technical-training-solutions/tree/{BRANCH}-core>`_ repository. It
It contains a version of the module created during the core training we can use contains a version of the module created during the core training we can use as a starting
as a starting point. point.
We were previously :ref:`introduced to QWeb <howto/rdtraining/15_qwebintro>` We were previously :ref:`introduced to QWeb <howto/rdtraining/15_qwebintro>`
in the Core Training where it was used to build a kanban view. Now we will expand on one of QWeb's in the Core Training where it was used to build a kanban view. Now we will expand on one of QWeb's
@ -96,9 +96,10 @@ If you don't have a set of data like this already, you can either:
* Complete :ref:`howto/rdtraining/C_data` (if you haven't done so already) and add the extra * Complete :ref:`howto/rdtraining/C_data` (if you haven't done so already) and add the extra
cases to your demo data (you may need to create a new database to load in the demo data). cases to your demo data (you may need to create a new database to load in the demo data).
* Manually create the data in your database. * Manually create the data in your database.
* Copy this `data file <https://github.com/odoo/technical-training-solutions/blob/15.0-J_reports/estate/data/estate_demo.xml>`__ * Copy this `data file
into a new directory (data) in your estate module and copy <https://github.com/odoo/technical-training-solutions/blob/{BRANCH}-J_reports/estate/data/estate_demo.xml>`_
`these lines <https://github.com/odoo/technical-training-solutions/blob/15.0-J_reports/estate/__manifest__.py#L21-L23>`__ into a new directory (data) in your estate module and copy `these lines
<https://github.com/odoo/technical-training-solutions/blob/{BRANCH}-J_reports/estate/__manifest__.py#L21-L23>`_
into your __manifest__.py file (you may need to create a new database to load in the demo data). into your __manifest__.py file (you may need to create a new database to load in the demo data).
Before continuing, click through your data in your database and make sure your data is as expected. Before continuing, click through your data in your database and make sure your data is as expected.

View File

@ -10,10 +10,10 @@ Advanced K: Dashboards
access to Odoo Enterprise features. access to Odoo Enterprise features.
To follow the exercise, it is recommended that you fetch the branch To follow the exercise, it is recommended that you fetch the branch
15.0-core from the {BRANCH}-core from the `technical training solutions
`technical training solutions <https://github.com/odoo/technical-training-solutions/tree/15.0-core>`__ repository. <https://github.com/odoo/technical-training-solutions/tree/{BRANCH}-core>`_ repository. It
It contains a version of the module created during the core training we can use contains a version of the module created during the core training we can use as a starting
as a starting point. point.
The term "Dashboard" is used in Odoo for objects that display data, but involves different The term "Dashboard" is used in Odoo for objects that display data, but involves different
implementations. This tutorial will only focus on the Enterprise view that is used to provide implementations. This tutorial will only focus on the Enterprise view that is used to provide
@ -119,9 +119,10 @@ If you don't have a set of data like this already, you can either:
* Complete :ref:`howto/rdtraining/C_data` (if you haven't done so already) and add the extra * Complete :ref:`howto/rdtraining/C_data` (if you haven't done so already) and add the extra
cases to your demo data (you may need to create a new database to load in the demo data). cases to your demo data (you may need to create a new database to load in the demo data).
* Manually create the data in your database. * Manually create the data in your database.
* Copy this `data file <https://github.com/odoo/technical-training-solutions/blob/15.0-K_dashboard/estate/data/estate_demo.xml>`__ * Copy this `data file
into a new directory called ``data`` in your estate module and copy <https://github.com/odoo/technical-training-solutions/blob/{BRANCH}-K_dashboard/estate/data/estate_demo.xml>`_
`these lines <https://github.com/odoo/technical-training-solutions/blob/15.0-K_dashboard/estate/__manifest__.py#L21-L23>`__ into a new directory called ``data`` in your estate module and copy `these lines
<https://github.com/odoo/technical-training-solutions/blob/{BRANCH}-K_dashboard/estate/__manifest__.py#L21-L23>`_
into your __manifest__.py file (you may need to create a new database to load in the demo data). into your __manifest__.py file (you may need to create a new database to load in the demo data).
Click through your database data and make sure it is what you expect. Of course you can add the Click through your database data and make sure it is what you expect. Of course you can add the
@ -208,8 +209,8 @@ The `ref` attribute can be added to `<view>` elements to use a specific xml id f
no xml id is provided for a graph or pivot view then the default view will be used. no xml id is provided for a graph or pivot view then the default view will be used.
The cohort view will not work in the dashboard without a specific xml id. If you have already The cohort view will not work in the dashboard without a specific xml id. If you have already
created some of these views then you are welcome to add them to your dashboard! Sample graph and created some of these views then you are welcome to add them to your dashboard! Sample graph and
pivot views are included in the pivot views are included in the `solution code
`solution code <https://github.com/odoo/technical-training-solutions/blob/15.0-K_dashboard/estate/views/estate_property_views.xml#L169-L191>`__ <https://github.com/odoo/technical-training-solutions/blob/{BRANCH}-K_dashboard/estate/views/estate_property_views.xml#L169-L191>`_
that you are welcome to use as well. that you are welcome to use as well.
.. exercise:: Add subviews. .. exercise:: Add subviews.
@ -363,7 +364,7 @@ graph views), then you can add ``store=False`` to it and it will not show.
The *select* and *from* methods remain the same. The *select* and *from* methods remain the same.
`Here is an example <https://github.com/odoo/odoo/blob/14.0/addons/account/report/account_invoice_report.py>`__ `Here is an example <{GITHUB_PATH}/addons/account/report/account_invoice_report.py>`__
of a report that depends on the currently selected companies (in a multi-company environment) context to of a report that depends on the currently selected companies (in a multi-company environment) context to
determine the currency exchange rates to use for accurately displaying amounts when the selected companies determine the currency exchange rates to use for accurately displaying amounts when the selected companies
have different currencies. have different currencies.

View File

@ -154,5 +154,4 @@ Available manifest fields are:
Deprecated. Replaced by ``auto_install``. Deprecated. Replaced by ``auto_install``.
.. _semantic versioning: https://semver.org .. _semantic versioning: https://semver.org
.. _existing categories: .. _existing categories: {GITHUB_PATH}/odoo/addons/base/data/ir_module_category_data.xml
https://github.com/odoo/odoo/blob/14.0/odoo/addons/base/data/ir_module_category_data.xml

View File

@ -599,8 +599,8 @@ Javascript
#. Add any step you want. #. Add any step you want.
Every step contains at least a trigger. You can either use the `predefined steps Every step contains at least a trigger. You can either use the `predefined steps
<https://github.com/odoo/odoo/blob/saas-15.3/addons/web_tour/static/src/js/tour_step_utils.js>`_ or write <{GITHUB_PATH}/addons/web_tour/static/src/js/tour_step_utils.js>`_ or write your own personalized
your own personalized step. step.
Here are some example of steps: Here are some example of steps:

View File

@ -2222,7 +2222,7 @@ do that, several steps should be done.
} }
The ``updateControlPanel`` is the main method to customize the content in controlpanel. The ``updateControlPanel`` is the main method to customize the content in controlpanel.
For more information, look into the `control_panel_renderer.js <https://github.com/odoo/odoo/blob/13.0/addons/web/static/src/js/views/control_panel/control_panel_renderer.js#L130>`_ file. For more information, look into the `control_panel_renderer.js <{GITHUB_PATH}/addons/web/static/src/js/views/control_panel/control_panel_renderer.js#L130>`_ file.
.. _glob: .. _glob:
https://en.wikipedia.org/wiki/Glob_(programming) https://en.wikipedia.org/wiki/Glob_(programming)

View File

@ -9,4 +9,4 @@ have to sign the Odoo Contributor License Agreement (CLA).
More information about this requirement, the procedure to sign the agreement, More information about this requirement, the procedure to sign the agreement,
and a FAQ can be found on our and a FAQ can be found on our
`GitHub project page <https://github.com/odoo/odoo/blob/14.0/doc/cla/sign-cla.md>`_. `GitHub project page <{GITHUB_PATH}/doc/cla/sign-cla.md>`_.