This is an automated email from the ASF dual-hosted git repository.

raulcd pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow.git


The following commit(s) were added to refs/heads/main by this push:
     new c441862d82 GH-38981: [R][Release] Don't update version.json on 
compatible version release (#38982)
c441862d82 is described below

commit c441862d82b5973eb17b24b7955c0dacb6f92e56
Author: Sutou Kouhei <[email protected]>
AuthorDate: Wed Nov 29 18:04:22 2023 +0900

    GH-38981: [R][Release] Don't update version.json on compatible version 
release (#38982)
    
    ### Rationale for this change
    
    If we release a compatible version such as 14.0.0 -> 14.0.1 and 14.1.1 -> 
14.1.2, we don't need to update `docs/source/_static/versions.json` and 
`r/pkgdown/assets/versions.json`. Because we use compatible version ("14.0" and 
"14.1") instead of exact version ("14.0.0" and "14.1.1").
    
    ### What changes are included in this PR?
    
    Add more update condition to detect compatible version release.
    
    ### Are these changes tested?
    
    Yes.
    
    ### Are there any user-facing changes?
    
    No.
    * Closes: #38981
    
    Lead-authored-by: Sutou Kouhei <[email protected]>
    Co-authored-by: Raúl Cumplido <[email protected]>
    Co-authored-by: Sutou Kouhei <[email protected]>
    Signed-off-by: Raúl Cumplido <[email protected]>
---
 dev/release/utils-update-docs-versions.py | 52 ++++++++++++++++++++-----------
 docs/source/_static/versions.json         |  5 ---
 r/pkgdown/assets/versions.json            |  4 ---
 3 files changed, 33 insertions(+), 28 deletions(-)

diff --git a/dev/release/utils-update-docs-versions.py 
b/dev/release/utils-update-docs-versions.py
index 7ca4059214..ba0ddcaeb3 100644
--- a/dev/release/utils-update-docs-versions.py
+++ b/dev/release/utils-update-docs-versions.py
@@ -38,7 +38,9 @@ elif split_next_version[2:] == ["0"]:
 else:
     release_type = "patch"
 
-# Update main docs version script
+# Update main docs version script only when compatible version of the
+# stable version isn't changed. Compatible version is ${MAJOR}.${MINOR}
+# version.
 if release_type != "patch":
     with open(main_versions_path) as json_file:
         old_versions = json.load(json_file)
@@ -47,23 +49,30 @@ if release_type != "patch":
     stable_compatible_version = ".".join(split_version[:2])
     previous_compatible_version = old_versions[1]["name"].split(" ")[0]
 
-    # Create new versions
-    new_versions = [
-        {"name": f"{dev_compatible_version} (dev)",
-         "version": "dev/",
-         "url": "https://arrow.apache.org/docs/dev/"},
-        {"name": f"{stable_compatible_version} (stable)",
-         "version": "",
-         "url": "https://arrow.apache.org/docs/";,
-         "preferred": True},
-        {"name": previous_compatible_version,
-         "version": f"{previous_compatible_version}/",
-         "url": 
f"https://arrow.apache.org/docs/{previous_compatible_version}/"},
-        *old_versions[2:],
-    ]
-    with open(main_versions_path, 'w') as json_file:
-        json.dump(new_versions, json_file, indent=4)
-        json_file.write("\n")
+    # previous (compatible version) -> stable (compatible version)
+    #
+    # 13.Y.Z (13.Y) -> 14.0.0 (14.0): Update
+    # 14.0.0 (14.0) -> 14.0.1 (14.0): Not update
+    # 14.0.0 (14.0) -> 14.1.0 (14.1): Update
+    # 14.0.1 (14.0) -> 14.1.0 (14.1): Update
+    if stable_compatible_version != previous_compatible_version:
+        # Create new versions
+        new_versions = [
+            {"name": f"{dev_compatible_version} (dev)",
+             "version": "dev/",
+             "url": "https://arrow.apache.org/docs/dev/"},
+            {"name": f"{stable_compatible_version} (stable)",
+             "version": "",
+             "url": "https://arrow.apache.org/docs/";,
+             "preferred": True},
+            {"name": previous_compatible_version,
+             "version": f"{previous_compatible_version}/",
+             "url": 
f"https://arrow.apache.org/docs/{previous_compatible_version}/"},
+            *old_versions[2:],
+        ]
+        with open(main_versions_path, 'w') as json_file:
+            json.dump(new_versions, json_file, indent=4)
+            json_file.write("\n")
 
 
 # Update R package version script
@@ -76,7 +85,8 @@ release_r_version = version
 previous_r_name = old_r_versions[1]["name"].split(" ")[0]
 previous_r_version = ".".join(previous_r_name.split(".")[:2])
 
-if release_type == "major":
+if release_type == "major" and split_version[1:] == ["0", "0"]:
+    # 14.0.0 -> 15.0.0
     new_r_versions = [
         {"name": f"{dev_r_version} (dev)", "version": "dev/"},
         {"name": f"{release_r_version} (release)", "version": ""},
@@ -84,6 +94,10 @@ if release_type == "major":
         *old_r_versions[2:],
     ]
 else:
+    # 14.0.1 -> 15.0.0
+    # 14.0.0 -> 14.1.0
+    # 14.0.1 -> 14.1.0
+    # 14.0.0 -> 14.0.1
     new_r_versions = [
         {"name": f"{dev_r_version} (dev)", "version": "dev/"},
         {"name": f"{release_r_version} (release)", "version": ""},
diff --git a/docs/source/_static/versions.json 
b/docs/source/_static/versions.json
index 56411de862..10e179420b 100644
--- a/docs/source/_static/versions.json
+++ b/docs/source/_static/versions.json
@@ -10,11 +10,6 @@
         "url": "https://arrow.apache.org/docs/";,
         "preferred": true
     },
-    {
-        "name": "14.0",
-        "version": "14.0/",
-        "url": "https://arrow.apache.org/docs/14.0/";
-    },
     {
         "name": "13.0",
         "version": "13.0/",
diff --git a/r/pkgdown/assets/versions.json b/r/pkgdown/assets/versions.json
index 424a5fbc51..88289e7200 100644
--- a/r/pkgdown/assets/versions.json
+++ b/r/pkgdown/assets/versions.json
@@ -7,10 +7,6 @@
         "name": "14.0.1 (release)",
         "version": ""
     },
-    {
-        "name": "14.0.0",
-        "version": "14.0/"
-    },
     {
         "name": "13.0.0.1",
         "version": "13.0/"

Reply via email to