You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by GitBox <gi...@apache.org> on 2022/06/03 10:30:49 UTC

[GitHub] [arrow] raulcd opened a new pull request, #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

raulcd opened a new pull request, #13308:
URL: https://github.com/apache/arrow/pull/13308

   This is a follow up PR from the following discussion on the mailing list:
   https://lists.apache.org/thread/g6mqpyq2hc11xbgrq2pf653njzy53plt
   
   This is an example of how it looks when built:
   
   ![image](https://user-images.githubusercontent.com/639755/171837442-1fb20821-4593-4e0f-b968-371fc04c89e5.png)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] kou merged pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
kou merged PR #13308:
URL: https://github.com/apache/arrow/pull/13308


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] github-actions[bot] commented on pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #13308:
URL: https://github.com/apache/arrow/pull/13308#issuecomment-1145826937

   :warning: Ticket **has not been started in JIRA**, please click 'Start Progress'.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] kou commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
kou commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r891833334


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z

Review Comment:
   I like `maint-9` for all 9.Y.Z releases.
   I assume that we don't need multiple maintenance branches for the same major version. In other words, we don't release 9.0.1 after we release 9.1.0.



##########
docs/source/developers/release.rst:
##########
@@ -85,26 +85,78 @@ These are the different steps that are required to create a release candidate.
     source dev/release/setup-gpg-agent.sh
     
     # Curate the release
-    # The end of the generated report shows the jira tickets with wrong version number assigned.
+    # The end of the generated report shows the JIRA tickets with wrong version number assigned.
     archery release curate <version>
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a Release Candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we should only add bug fixes between Release Candidates.
+In rare cases, critical features can be added between Release Candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branch
+-----------------------------------------------------
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z

Review Comment:
   ```suggestion
               # This will create a branch locally called maint-X.Y.Z.
   ```



##########
docs/source/developers/release.rst:
##########
@@ -85,26 +85,78 @@ These are the different steps that are required to create a release candidate.
     source dev/release/setup-gpg-agent.sh
     
     # Curate the release
-    # The end of the generated report shows the jira tickets with wrong version number assigned.
+    # The end of the generated report shows the JIRA tickets with wrong version number assigned.
     archery release curate <version>
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a Release Candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking

Review Comment:
   Is `by` missing?
   
   ```suggestion
   Follow up Release Candidates will update the maintenance branch by cherry-picking
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r891308202


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:

Review Comment:
   I think this is done with the latest commit now.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] kou commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
kou commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r904216776


##########
docs/source/developers/release.rst:
##########
@@ -130,23 +181,28 @@ These are the different steps that are required to create a release candidate.
     # after you complete the script:
     #   https://repository.apache.org/#stagingRepositories
     dev/release/06-java-upload.sh <version> <rc-number>
-    
-    # Automatically verify the release candidate
+
+Verify the Release
+------------------
+
+.. code-block::
+
+    # Automatically verify the Release Candidate
     #
-    # 1. Push the release candidate's branch to the fork
+    # 1. Push the Release Candidate's branch to the fork
     git push --set-upstream origin release-<version>-rc<rc-number>
-    # 2. Open a pull request from the release candidate's branch to the release branch
-    #    https://github.com/apache/arrow/compare/release-<version>...<fork-github-username>:release-<version>-rc<rc-number>
+    # 2. Open a pull request from the Release Candidate's branch to the maintenance branch
+    #    https://github.com/apache/arrow/compare/maint-<version>...<fork-github-username>:release-<version>-rc<rc-number>
     # 3. Create a comment for the pull request to trigger the automatized crossbow verification tasks
     #    @github-actions crossbow submit --group verify-rc-source --group verify-rc-binaries --group verify-rc-wheels --param release=<version> --param rc=<rc-number>
     #
     # See https://github.com/apache/arrow/pull/10126 as an example.
     
-    # Once the automatic verification has passed merge the release candidate's branch to the release branch
-    # may need the --force flag to push the release-<version> branch to the apache remote for RC1 or later
-    git checkout release-<version>
+    # Once the automatic verification has passed merge the Release Candidate's branch to the maintenance branch
+    # may need the --force flag to push the maint-<version> branch to the apache remote for RC1 or later

Review Comment:
   No more comments from me. I'll merge this.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on PR #13308:
URL: https://github.com/apache/arrow/pull/13308#issuecomment-1145838208

   @kszucs @assignUser What do you think about these changes? I am wondering whether we want to also add a step for starting the new version in JIRA as soon as the first Release Candidate is created in order for new tickets to be closed with the future JIRA version.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] kou commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
kou commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r903317882


##########
docs/source/developers/release.rst:
##########
@@ -130,23 +181,28 @@ These are the different steps that are required to create a release candidate.
     # after you complete the script:
     #   https://repository.apache.org/#stagingRepositories
     dev/release/06-java-upload.sh <version> <rc-number>
-    
-    # Automatically verify the release candidate
+
+Verify the Release
+------------------
+
+.. code-block::
+
+    # Automatically verify the Release Candidate
     #
-    # 1. Push the release candidate's branch to the fork
+    # 1. Push the Release Candidate's branch to the fork
     git push --set-upstream origin release-<version>-rc<rc-number>
-    # 2. Open a pull request from the release candidate's branch to the release branch
-    #    https://github.com/apache/arrow/compare/release-<version>...<fork-github-username>:release-<version>-rc<rc-number>
+    # 2. Open a pull request from the Release Candidate's branch to the maintenance branch
+    #    https://github.com/apache/arrow/compare/maint-<version>...<fork-github-username>:release-<version>-rc<rc-number>
     # 3. Create a comment for the pull request to trigger the automatized crossbow verification tasks
     #    @github-actions crossbow submit --group verify-rc-source --group verify-rc-binaries --group verify-rc-wheels --param release=<version> --param rc=<rc-number>
     #
     # See https://github.com/apache/arrow/pull/10126 as an example.
     
-    # Once the automatic verification has passed merge the release candidate's branch to the release branch
-    # may need the --force flag to push the release-<version> branch to the apache remote for RC1 or later
-    git checkout release-<version>
+    # Once the automatic verification has passed merge the Release Candidate's branch to the maintenance branch
+    # may need the --force flag to push the maint-<version> branch to the apache remote for RC1 or later

Review Comment:
   I think that we don't need `--force` with this work flow.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] github-actions[bot] commented on pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on PR #13308:
URL: https://github.com/apache/arrow/pull/13308#issuecomment-1145826917

   https://issues.apache.org/jira/browse/ARROW-16666


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] assignUser commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
assignUser commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r888862981


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,49 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+The initial Release Candidate branch is merged from master. Follow up Release
+Candidates will be created from a maintenance branch.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+Only specific features, if there is community consensus, will be merged to further Release Candidates.

Review Comment:
   I think this needs rephrasing to make clear that this will only happen in special circumstances so as not to leave an "opening" for noncritical feature additions. Maybe:
   ```suggestion
   In rare cases, critical features can be added between release candidates, if  there is community consensus.
   ```



##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,49 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+The initial Release Candidate branch is merged from master. Follow up Release

Review Comment:
   ```suggestion
   The initial Release Candidate branch is created from master. Follow up Release
   ```



##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,49 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+The initial Release Candidate branch is merged from master. Follow up Release
+Candidates will be created from a maintenance branch.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+Only specific features, if there is community consensus, will be merged to further Release Candidates.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # From an up to date master branch execute
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run on dry-mode to see what are the commits that will be cherry-pick.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+
+Create the rest of the Release branches.
+
+.. code-block::
+
     # Checkout release branch
     # Use master for major releases
-    git checkout -b release-4.0.0 master

Review Comment:
   I don't quite understand this change?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] jorisvandenbossche commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
jorisvandenbossche commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r891592054


##########
docs/source/developers/release.rst:
##########
@@ -85,26 +85,78 @@ These are the different steps that are required to create a release candidate.
     source dev/release/setup-gpg-agent.sh
     
     # Curate the release
-    # The end of the generated report shows the jira tickets with wrong version number assigned.
+    # The end of the generated report shows the JIRA tickets with wrong version number assigned.
     archery release curate <version>
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a Release Candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we should only add bug fixes between Release Candidates.
+In rare cases, critical features can be added between Release Candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branch
+-----------------------------------------------------
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z
+            # X.Y.Z corresponds with the Major, Minor and Patch version number
+            # of the release respectively. As an example 9.0.0
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+            # Push the maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run in dry-mode to see which commits will be cherry-picked.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+            # Push the updated maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+Create the Release Candidate and release branch from the updated maintenance branch
+-----------------------------------------------------------------------------------
+
+.. code-block::
+
+    # Create the release branch from the updated maintenance branch.
+    git checkout -b release-X.Y.Z maint-X.Y.Z

Review Comment:
   What is the goal / use of the "release branch", in addition to the "maintenance branch"? 
   
   (this might be a question with the current workflow, not so much the changes in this PR)



##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z

Review Comment:
   We could also term it as "maint-X.0.0", as it will always be like that? (although not sure if that reads any clearer)
   
   (which also makes me wonder: is this name fixed? Something like "maint-X.x" (eg maint-9.x, or maint-9.0.x) would be clearer I think)



##########
docs/source/developers/release.rst:
##########
@@ -85,26 +85,78 @@ These are the different steps that are required to create a release candidate.
     source dev/release/setup-gpg-agent.sh
     
     # Curate the release
-    # The end of the generated report shows the jira tickets with wrong version number assigned.
+    # The end of the generated report shows the JIRA tickets with wrong version number assigned.
     archery release curate <version>
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a Release Candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we should only add bug fixes between Release Candidates.
+In rare cases, critical features can be added between Release Candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branch
+-----------------------------------------------------
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z
+            # X.Y.Z corresponds with the Major, Minor and Patch version number
+            # of the release respectively. As an example 9.0.0
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+            # Push the maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run in dry-mode to see which commits will be cherry-picked.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+            # Push the updated maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+Create the Release Candidate and release branch from the updated maintenance branch
+-----------------------------------------------------------------------------------
+
+.. code-block::
+
+    # Create the release branch from the updated maintenance branch.
+    git checkout -b release-X.Y.Z maint-X.Y.Z
     
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
-    
-    # Create branch for the release candidate and place the necessary commits then create git tag
+    # Create branch for the Release Candidate and place the necessary commits then create git tag

Review Comment:
   What are typically the "necessary commits" that are not yet already cherry-picked on the maintenance branch?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r889010537


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,49 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+The initial Release Candidate branch is merged from master. Follow up Release
+Candidates will be created from a maintenance branch.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+Only specific features, if there is community consensus, will be merged to further Release Candidates.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # From an up to date master branch execute
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run on dry-mode to see what are the commits that will be cherry-pick.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+
+Create the rest of the Release branches.
+
+.. code-block::
+
     # Checkout release branch
     # Use master for major releases
-    git checkout -b release-4.0.0 master

Review Comment:
   New commit added to make it more clear, let me know what you think: https://github.com/apache/arrow/pull/13308/commits/adf1a4501f4b2afaaad4fb41fc99c6eb348dad25



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r888870021


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,49 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+The initial Release Candidate branch is merged from master. Follow up Release
+Candidates will be created from a maintenance branch.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+Only specific features, if there is community consensus, will be merged to further Release Candidates.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # From an up to date master branch execute
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run on dry-mode to see what are the commits that will be cherry-pick.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+
+Create the rest of the Release branches.
+
+.. code-block::
+
     # Checkout release branch
     # Use master for major releases
-    git checkout -b release-4.0.0 master

Review Comment:
   My idea is that as we will always be using the maintenance branch we don't require to branch from master anymore and for a follow up release candidate we want to create the release branch from the maintenance branch instead of master.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r891306435


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z

Review Comment:
   I've added a minor comment, let me know what you think:
   ```
               # Execute the following from an up to date master branch.
               # This will create a branch locally called maint-X.Y.Z
               # X.Y.Z corresponds with the Major, Minor and Patch version number
               # of the release respectively. As an example 9.0.0
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r892078007


##########
docs/source/developers/release.rst:
##########
@@ -85,26 +85,78 @@ These are the different steps that are required to create a release candidate.
     source dev/release/setup-gpg-agent.sh
     
     # Curate the release
-    # The end of the generated report shows the jira tickets with wrong version number assigned.
+    # The end of the generated report shows the JIRA tickets with wrong version number assigned.
     archery release curate <version>
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a Release Candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we should only add bug fixes between Release Candidates.
+In rare cases, critical features can be added between Release Candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branch
+-----------------------------------------------------
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z
+            # X.Y.Z corresponds with the Major, Minor and Patch version number
+            # of the release respectively. As an example 9.0.0
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+            # Push the maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run in dry-mode to see which commits will be cherry-picked.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+            # Push the updated maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+Create the Release Candidate and release branch from the updated maintenance branch
+-----------------------------------------------------------------------------------
+
+.. code-block::
+
+    # Create the release branch from the updated maintenance branch.
+    git checkout -b release-X.Y.Z maint-X.Y.Z

Review Comment:
   I am not entirely sure. I think that working with the maintenance branch as base and with a release candidate branch for the minor changes/changelogs/etc, should be enough in order to do the verification. @kszucs do you think the release branch is necessary at this point? I can't find any script where we are using it specifically.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r888998969


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,49 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+The initial Release Candidate branch is merged from master. Follow up Release
+Candidates will be created from a maintenance branch.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+Only specific features, if there is community consensus, will be merged to further Release Candidates.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # From an up to date master branch execute
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run on dry-mode to see what are the commits that will be cherry-pick.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+
+Create the rest of the Release branches.
+
+.. code-block::
+
     # Checkout release branch
     # Use master for major releases
-    git checkout -b release-4.0.0 master

Review Comment:
   The idea is that prior to this you are going to generate the maintenance branch via the command:
   ```
   archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
   ```
   This generates that branch from master on the first release *candidate* and updates the maintenance branch for following release candidates via:
   ```
   archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
   ```
   If it was not clear I can add a comment specifying that a maintenance branch should be created at this point?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] assignUser commented on pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
assignUser commented on PR #13308:
URL: https://github.com/apache/arrow/pull/13308#issuecomment-1145866781

   Looks very nice!
   +1 on starting the new release


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] pitrou commented on pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
pitrou commented on PR #13308:
URL: https://github.com/apache/arrow/pull/13308#issuecomment-1148928706

   @raulcd If you rebase on git master we can get a working docs build.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r892074106


##########
docs/source/developers/release.rst:
##########
@@ -85,26 +85,78 @@ These are the different steps that are required to create a release candidate.
     source dev/release/setup-gpg-agent.sh
     
     # Curate the release
-    # The end of the generated report shows the jira tickets with wrong version number assigned.
+    # The end of the generated report shows the JIRA tickets with wrong version number assigned.
     archery release curate <version>
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a Release Candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we should only add bug fixes between Release Candidates.
+In rare cases, critical features can be added between Release Candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branch
+-----------------------------------------------------
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z
+            # X.Y.Z corresponds with the Major, Minor and Patch version number
+            # of the release respectively. As an example 9.0.0
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+            # Push the maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run in dry-mode to see which commits will be cherry-picked.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+            # Push the updated maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+Create the Release Candidate and release branch from the updated maintenance branch
+-----------------------------------------------------------------------------------
+
+.. code-block::
+
+    # Create the release branch from the updated maintenance branch.
+    git checkout -b release-X.Y.Z maint-X.Y.Z
     
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
-    
-    # Create branch for the release candidate and place the necessary commits then create git tag
+    # Create branch for the Release Candidate and place the necessary commits then create git tag

Review Comment:
   There seems to be 3 commits added on the `01-prepare.sh` to that branch. Update the changelog, update the changelog for deb and rpm and update versions to match the release.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] amol- commented on pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
amol- commented on PR #13308:
URL: https://github.com/apache/arrow/pull/13308#issuecomment-1161559582

   @kszucs @kou @jorisvandenbossche @raulcd Is this one good to go or there are more changes required? It seems that it was last updated ~a week ago 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] assignUser commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
assignUser commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r888881808


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,49 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+The initial Release Candidate branch is merged from master. Follow up Release
+Candidates will be created from a maintenance branch.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+Only specific features, if there is community consensus, will be merged to further Release Candidates.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # From an up to date master branch execute
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run on dry-mode to see what are the commits that will be cherry-pick.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+
+Create the rest of the Release branches.
+
+.. code-block::
+
     # Checkout release branch
     # Use master for major releases
-    git checkout -b release-4.0.0 master

Review Comment:
   But where/when is `maint-X.Y.Z` created? e.g. there is no maint-8.0.0
   
   > for a follow up release candidate we want to create the release branch from the maintenance branch instead of master.
   
   👍 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r892087241


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z

Review Comment:
   I am not sure about that. We have had discussions in the mailing list about SEMVER and trying to have more releases. I do think being prepared with a versioning naming of Major.Minor.Patch on our maintenance branches that is flexible enough is not a problem and might benefit us in the future in order to achieve these other goals.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] pitrou commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
pitrou commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r891310510


##########
docs/source/developers/release.rst:
##########
@@ -85,26 +85,78 @@ These are the different steps that are required to create a release candidate.
     source dev/release/setup-gpg-agent.sh
     
     # Curate the release
-    # The end of the generated report shows the jira tickets with wrong version number assigned.
+    # The end of the generated report shows the JIRA tickets with wrong version number assigned.
     archery release curate <version>
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a Release Candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we should only add bug fixes between Release Candidates.
+In rare cases, critical features can be added between Release Candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branch
+-----------------------------------------------------
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z
+            # X.Y.Z corresponds with the Major, Minor and Patch version number
+            # of the release respectively. As an example 9.0.0
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+            # Push the maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run in dry-mode to see which commits that will be cherry-picked.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+            # Push the updated maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+Create the Release Candidate and release branch from the updated maintenance branch
+-----------------------------------------------------------------------------------

Review Comment:
   ```suggestion
   Create the release branch and release tag from the updated maintenance branch
   -----------------------------------------------------------------------------
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r891307459


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:

Review Comment:
   fixed to single branch



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r888998969


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,49 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+The initial Release Candidate branch is merged from master. Follow up Release
+Candidates will be created from a maintenance branch.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+Only specific features, if there is community consensus, will be merged to further Release Candidates.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # From an up to date master branch execute
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run on dry-mode to see what are the commits that will be cherry-pick.
+            # If there are commits that we don't want to get applied ensure the version on
+            # JIRA is set to the following release.
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue
+            # Update the maintenance branch with the previous commits
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
+
+Create the rest of the Release branches.
+
+.. code-block::
+
     # Checkout release branch
     # Use master for major releases
-    git checkout -b release-4.0.0 master

Review Comment:
   The idea is that prior to this you are going to generate the maintenance branch via the command:
   ```
   archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
   ```
   This generates that branch from master on the first release and updates the maintenance branch for following release candidates via:
   ```
   archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --continue --execute
   ```
   If it was not clear I can add a comment specifying that a maintenance branch should be created at this point?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on PR #13308:
URL: https://github.com/apache/arrow/pull/13308#issuecomment-1148933944

   > @raulcd If you rebase on git master we can get a working docs build.
   
   rebased master, Thanks!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] pitrou commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
pitrou commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r891110796


##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.

Review Comment:
   Nit: capitalization
   ```suggestion
       # The end of the generated report shows the JIRA tickets with wrong version number assigned.
   ```



##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z
+            archery release --jira-cache /tmp/jiracache cherry-pick X.Y.Z --execute
+            # Push the maintenance branch to the remote repository
+            git push -u apache maint-X.Y.Z
+
+   .. tab-item:: Follow up Release Candidates
+
+      .. code-block::
+
+            # First run on dry-mode to see what are the commits that will be cherry-pick.

Review Comment:
   ```suggestion
               # First run in dry-mode to see which the commits will be cherry-picked.
   ```



##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:

Review Comment:
   Why "branches"? Are there several of them?



##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:

Review Comment:
   Also make these subsections?



##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branches:
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z

Review Comment:
   What is "X.Y.Z" supposed to stand for? It's not clear to me.



##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.

Review Comment:
   ```suggestion
   This means that, in general, we should only add bug fixes between Release Candidates.
   ```



##########
docs/source/developers/release.rst:
##########
@@ -87,12 +87,55 @@ These are the different steps that are required to create a release candidate.
     # Curate the release
     # The end of the generated report shows the jira tickets with wrong version number assigned.
     archery release curate <version>
-    
-    # Checkout release branch
-    # Use master for major releases
-    git checkout -b release-4.0.0 master
-    # Use maintenance branches like maint-4.0.x for patch releases
-    git checkout -b release-4.0.1 maint-4.0.x
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a release candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we will only add fixes between Release Candidates.
+In rare cases, critical features can be added between release candidates, if

Review Comment:
   Please use consistent capitalization for "release candidates" / "Release Candidates".



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] pitrou commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
pitrou commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r891312027


##########
docs/source/developers/release.rst:
##########
@@ -85,26 +85,78 @@ These are the different steps that are required to create a release candidate.
     source dev/release/setup-gpg-agent.sh
     
     # Curate the release
-    # The end of the generated report shows the jira tickets with wrong version number assigned.
+    # The end of the generated report shows the JIRA tickets with wrong version number assigned.
     archery release curate <version>
+
+
+Creating a Release Candidate
+============================
+
+These are the different steps that are required to create a Release Candidate.
+
+For the initial Release Candidate, we will create a maintenance branch from master.
+Follow up Release Candidates will update the maintenance branch cherry-picking
+specific commits.
+
+We have implemented a Feature Freeze policy between Release Candidates.
+This means that, in general, we should only add bug fixes between Release Candidates.
+In rare cases, critical features can be added between Release Candidates, if
+there is community consensus.
+
+Create or update the corresponding maintenance branch
+-----------------------------------------------------
+
+.. tab-set::
+
+   .. tab-item:: Initial Release Candidate
+
+      .. code-block::
+
+            # Execute the following from an up to date master branch.
+            # This will create a branch locally called maint-X.Y.Z
+            # X.Y.Z corresponds with the Major, Minor and Patch version number
+            # of the release respectively. As an example 9.0.0

Review Comment:
   ```suggestion
               # (for example maint-9.0.0 for the 9.0.0 release)
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [arrow] raulcd commented on a diff in pull request #13308: ARROW-16666: [Docs][Release] Update release guide to specify new workflow and feature freeze

Posted by GitBox <gi...@apache.org>.
raulcd commented on code in PR #13308:
URL: https://github.com/apache/arrow/pull/13308#discussion_r903811893


##########
docs/source/developers/release.rst:
##########
@@ -130,23 +181,28 @@ These are the different steps that are required to create a release candidate.
     # after you complete the script:
     #   https://repository.apache.org/#stagingRepositories
     dev/release/06-java-upload.sh <version> <rc-number>
-    
-    # Automatically verify the release candidate
+
+Verify the Release
+------------------
+
+.. code-block::
+
+    # Automatically verify the Release Candidate
     #
-    # 1. Push the release candidate's branch to the fork
+    # 1. Push the Release Candidate's branch to the fork
     git push --set-upstream origin release-<version>-rc<rc-number>
-    # 2. Open a pull request from the release candidate's branch to the release branch
-    #    https://github.com/apache/arrow/compare/release-<version>...<fork-github-username>:release-<version>-rc<rc-number>
+    # 2. Open a pull request from the Release Candidate's branch to the maintenance branch
+    #    https://github.com/apache/arrow/compare/maint-<version>...<fork-github-username>:release-<version>-rc<rc-number>
     # 3. Create a comment for the pull request to trigger the automatized crossbow verification tasks
     #    @github-actions crossbow submit --group verify-rc-source --group verify-rc-binaries --group verify-rc-wheels --param release=<version> --param rc=<rc-number>
     #
     # See https://github.com/apache/arrow/pull/10126 as an example.
     
-    # Once the automatic verification has passed merge the release candidate's branch to the release branch
-    # may need the --force flag to push the release-<version> branch to the apache remote for RC1 or later
-    git checkout release-<version>
+    # Once the automatic verification has passed merge the Release Candidate's branch to the maintenance branch
+    # may need the --force flag to push the maint-<version> branch to the apache remote for RC1 or later

Review Comment:
   Thanks @kou I agree, this was stray from the previous workflow. Let me know if there is something else you would like me to change. Thanks!



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org