[Bf-blender-cvs] [a0ea0153c26] master: Addons: Allow a user manual url prefix in doc_url

Aaron Carlisle noreply at git.blender.org
Thu Mar 5 05:24:30 CET 2020


Commit: a0ea0153c262d86dc1ca532315d17974e27cc964
Author: Aaron Carlisle
Date:   Wed Mar 4 23:24:13 2020 -0500
Branches: master
https://developer.blender.org/rBa0ea0153c262d86dc1ca532315d17974e27cc964

Addons: Allow a user manual url prefix in doc_url

This was raised in T74017, the issue being that we point to `/dev` 
version of the manual for the addons when we want to point to a specific 
version instead.

Instead of manually updating the URL every release we can do this.

The `bl_info` for addons will need to be updated in the format of 
`'doc_url': 
{BLENDER_MANUAL_URL}/addons/import_export/scene_gltf2.html",`

Differential Revision: https://developer.blender.org/D6995

===================================================================

M	release/scripts/modules/addon_utils.py

===================================================================

diff --git a/release/scripts/modules/addon_utils.py b/release/scripts/modules/addon_utils.py
index 43d62913ff7..a65ff15393a 100644
--- a/release/scripts/modules/addon_utils.py
+++ b/release/scripts/modules/addon_utils.py
@@ -496,6 +496,15 @@ def disable_all():
             disable(mod_name)
 
 
+def _blender_manual_url_prefix():
+    if _bpy.app.version_cycle in {"rc", "release"}:
+        manual_version = "%d.%d" % _bpy.app.version[:2]
+    else:
+        manual_version = "dev"
+
+    return f"https://docs.blender.org/manual/en/{manual_version}"
+
+
 def module_bl_info(mod, info_basis=None):
     if info_basis is None:
         info_basis = {
@@ -543,5 +552,14 @@ def module_bl_info(mod, info_basis=None):
                 )
             )
 
+    doc_url = addon_info["doc_url"]
+    if doc_url:
+        doc_url_prefix = "{BLENDER_MANUAL_URL}"
+        if doc_url_prefix in doc_url:
+            addon_info["doc_url"] = doc_url.replace(
+                doc_url_prefix,
+                _blender_manual_url_prefix(),
+            )
+
     addon_info["_init"] = None
     return addon_info



More information about the Bf-blender-cvs mailing list