diff --git a/template/module/static/description/icon.png b/template/module/static/description/icon.png
index 3963e676c..1dcc49c24 100644
Binary files a/template/module/static/description/icon.png and b/template/module/static/description/icon.png differ
diff --git a/template/module/static/description/icon.svg b/template/module/static/description/icon.svg
new file mode 100644
index 000000000..ed6aaa04e
--- /dev/null
+++ b/template/module/static/description/icon.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/tests/data/readme_tests/addon1/README.expected-acme.rst b/tests/data/readme_tests/addon1/README.expected-acme.rst
index 5835ded6e..1555c4a9d 100644
--- a/tests/data/readme_tests/addon1/README.expected-acme.rst
+++ b/tests/data/readme_tests/addon1/README.expected-acme.rst
@@ -1,3 +1,7 @@
+.. image:: https://odoo-community.org/readme-banner-image
+ :target: https://odoo-community.org/get-involved?utm_source=readme
+ :alt: Odoo Community Association
+
=======
addon 1
=======
diff --git a/tests/data/readme_tests/addon1/README.expected-oca.rst b/tests/data/readme_tests/addon1/README.expected-oca.rst
index 982ff1a15..c1f059e3c 100644
--- a/tests/data/readme_tests/addon1/README.expected-oca.rst
+++ b/tests/data/readme_tests/addon1/README.expected-oca.rst
@@ -1,3 +1,7 @@
+.. image:: https://odoo-community.org/readme-banner-image
+ :target: https://odoo-community.org/get-involved?utm_source=readme
+ :alt: Odoo Community Association
+
=======
addon 1
=======
diff --git a/tests/data/readme_tests/addon_one_maintainer/README.expected-acme.rst b/tests/data/readme_tests/addon_one_maintainer/README.expected-acme.rst
index 40d7a6238..7d6256ec5 100644
--- a/tests/data/readme_tests/addon_one_maintainer/README.expected-acme.rst
+++ b/tests/data/readme_tests/addon_one_maintainer/README.expected-acme.rst
@@ -1,3 +1,7 @@
+.. image:: https://odoo-community.org/readme-banner-image
+ :target: https://odoo-community.org/get-involved?utm_source=readme
+ :alt: Odoo Community Association
+
====================
addon one maintainer
====================
diff --git a/tests/data/readme_tests/addon_one_maintainer/README.expected-oca.rst b/tests/data/readme_tests/addon_one_maintainer/README.expected-oca.rst
index 3f759fd11..3d7925334 100644
--- a/tests/data/readme_tests/addon_one_maintainer/README.expected-oca.rst
+++ b/tests/data/readme_tests/addon_one_maintainer/README.expected-oca.rst
@@ -1,3 +1,7 @@
+.. image:: https://odoo-community.org/readme-banner-image
+ :target: https://odoo-community.org/get-involved?utm_source=readme
+ :alt: Odoo Community Association
+
====================
addon one maintainer
====================
diff --git a/tests/data/readme_tests/addon_two_maintainers/README.expected-acme.rst b/tests/data/readme_tests/addon_two_maintainers/README.expected-acme.rst
index ae5a2dde8..ed575f5f1 100644
--- a/tests/data/readme_tests/addon_two_maintainers/README.expected-acme.rst
+++ b/tests/data/readme_tests/addon_two_maintainers/README.expected-acme.rst
@@ -1,3 +1,7 @@
+.. image:: https://odoo-community.org/readme-banner-image
+ :target: https://odoo-community.org/get-involved?utm_source=readme
+ :alt: Odoo Community Association
+
====================
addon one maintainer
====================
diff --git a/tests/data/readme_tests/addon_two_maintainers/README.expected-oca.rst b/tests/data/readme_tests/addon_two_maintainers/README.expected-oca.rst
index dc63c60c5..9747845d6 100644
--- a/tests/data/readme_tests/addon_two_maintainers/README.expected-oca.rst
+++ b/tests/data/readme_tests/addon_two_maintainers/README.expected-oca.rst
@@ -1,3 +1,7 @@
+.. image:: https://odoo-community.org/readme-banner-image
+ :target: https://odoo-community.org/get-involved?utm_source=readme
+ :alt: Odoo Community Association
+
====================
addon one maintainer
====================
diff --git a/tests/test_towncrier.py b/tests/test_towncrier.py
index 0d0b592f1..3f407a75d 100644
--- a/tests/test_towncrier.py
+++ b/tests/test_towncrier.py
@@ -98,6 +98,8 @@ def test_oca_towncrier_md(tmp_path):
"""\
## 14.0.1.0.1 (2021-12-31)
- Bugfixes: Bugfix description. (50)
+ ### Bugfixes
+
+ - Bugfix description. ([#50](https://github.com/OCA/therepo/issues/50))
"""
)
diff --git a/tools/gen_addon_readme.rst.jinja b/tools/gen_addon_readme.rst.jinja
index 2ad375d00..59e1929e3 100644
--- a/tools/gen_addon_readme.rst.jinja
+++ b/tools/gen_addon_readme.rst.jinja
@@ -7,6 +7,10 @@
{% endif %}
{%- endmacro -%}
+.. image:: https://odoo-community.org/readme-banner-image
+ :target: https://odoo-community.org/get-involved?utm_source=readme
+ :alt: Odoo Community Association
+
{{ '=' * manifest.name|length }}
{{ manifest.name }}
{{ '=' * manifest.name|length }}
diff --git a/tools/oca_towncrier.py b/tools/oca_towncrier.py
index b648bb09e..00456aab1 100644
--- a/tools/oca_towncrier.py
+++ b/tools/oca_towncrier.py
@@ -17,7 +17,9 @@
def _make_issue_format(org, repo, fragment_format):
- return "{issue}"
+ if fragment_format == "md":
+ return f"[#{{issue}}](https://github.com/{org}/{repo}/issues/{{issue}})"
+ return f"`#{{issue}} `_"
def _get_towncrier_template(fragment_format):
diff --git a/tools/ocb-sync.sh b/tools/ocb-sync.sh
index c4497f8ce..951cb5698 100755
--- a/tools/ocb-sync.sh
+++ b/tools/ocb-sync.sh
@@ -8,7 +8,7 @@
ODOO="git@github.com:/odoo/odoo.git"
OCB="git@github.com:/OCA/OCB.git"
-BRANCHES="19.0 18.0 17.0 16.0 15.0 14.0"
+BRANCHES="19.0 18.0 17.0 16.0 15.0"
GITDIR="/var/tmp/git"
PUBDIR="/var/tmp/ocb-nightly"
BUILDDIR="/var/tmp/ocb-build"
diff --git a/tools/towncrier-template.md b/tools/towncrier-template.md
index db6cc457b..ce38e1833 100644
--- a/tools/towncrier-template.md
+++ b/tools/towncrier-template.md
@@ -13,9 +13,11 @@
{% if sections[section] %}
{% for category, val in definitions.items() if category in sections[section] %}
+### {{ definitions[category]['name'] }}
+
{% if definitions[category]['showcontent'] %}
{% for text, values in sections[section][category].items() %}
-- {{ definitions[category]['name'] }}: {{ text }}
+- {{ text }}
{%- if values %}
{% if "\n - " in text or '\n * ' in text %}