You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by GitBox <gi...@apache.org> on 2021/02/08 12:51:22 UTC

[GitHub] [airflow] ashb opened a new pull request #14132: Document Airflow's versioning and release policy for users

ashb opened a new pull request #14132:
URL: https://github.com/apache/airflow/pull/14132


   This document aims to show users what they can expect and rely upon from Airflow versions.
   
   Very much a WIP right now, just pushing up what I have so far
   
   
   <!--
   Thank you for contributing! Please make sure that your code changes
   are covered with tests. And in case of new features or big changes
   remember to adjust the documentation.
   
   Feel free to ping committers for the review!
   
   In case of existing issue, reference it using one of the following:
   
   closes: #ISSUE
   related: #ISSUE
   
   How to write a good git commit message:
   http://chris.beams.io/posts/git-commit/
   -->
   
   ---
   **^ Add meaningful description above**
   
   Read the **[Pull Request Guidelines](https://github.com/apache/airflow/blob/master/CONTRIBUTING.rst#pull-request-guidelines)** for more information.
   In case of fundamental code change, Airflow Improvement Proposal ([AIP](https://cwiki.apache.org/confluence/display/AIRFLOW/Airflow+Improvements+Proposals)) is needed.
   In case of a new dependency, check compliance with the [ASF 3rd Party License Policy](https://www.apache.org/legal/resolved.html#category-x).
   In case of backwards incompatible changes please leave a note in [UPDATING.md](https://github.com/apache/airflow/blob/master/UPDATING.md).


----------------------------------------------------------------
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.

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



[GitHub] [airflow] vikramkoka commented on a change in pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
vikramkoka commented on a change in pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#discussion_r575733188



##########
File path: docs/apache-airflow/release-process.rst
##########
@@ -0,0 +1,61 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+=========================
+Airflow's release process
+=========================
+
+Since Airflow 2.0.0 the release numbering works as follows:
+
+- Versions are numbered in the form X.Y.Z.
+- X is the major version number.
+- Y is the minor version number, also called the *feature release* version number.
+- Z is the patch number, which is incremented for bugfix and security releases- Before every new release, we’ll make a release candidate available, and often alpha or beta release too. These are of the form X.Y.Z alpha/beta/rc N, which means the Nth alpha/beta/release candidate of version X.Y.Z
+
+In git, each minor version will have its own branch, called ``vX-Y-stable`` where bugfix/security releases will be issued from.
+
+Each Airflow release will also have a tag in git indicating its version number, signed with the release manager's key. Additionally, each release series has its own branch, called stable/A.B.x, and bugfix/security releases will be issued from those branches.
+
+.. glossary::
+
+    Major release
+      Major releases (X.0.0, X+1.0.0 etc.) indicate a backwards-incompatible change.
+
+      These releases do not happen with any regular interval or on any predictable schedule.
+
+      Major versions should aim to not introduce any major new features, instead it should just be the removal
+      of previously deprecated features.
+
+    Feature releases
+      Feature releases (X.Y.0, X.Y+1.0, etc.) will happen roughly every two months – see release process for
+      details. These releases will contain new features, improvements to existing features, and such.
+
+    Patch releases
+      Patch releases (X.Y.Z, X.Y.Z+1, etc.) will happen, on an as-needed basis, as issues are reported and
+      fixed.
+
+      These releases will be 100% compatible with the associated feature release, unless this is
+      impossible for security reasons or to prevent data loss. So the answer to "should I upgrade to the
+      latest patch release?" will always be "yes."
+
+      The only exception is when a security or data loss issue can’t be fixed without breaking

Review comment:
       ```suggestion
         The only exception to the above with respect to 100% backwards compatibility is when a security or data loss issue can’t be fixed without breaking
   ```




----------------------------------------------------------------
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.

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



[GitHub] [airflow] vikramkoka commented on a change in pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
vikramkoka commented on a change in pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#discussion_r575733143



##########
File path: docs/apache-airflow/release-process.rst
##########
@@ -0,0 +1,61 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+=========================
+Airflow's release process
+=========================
+
+Since Airflow 2.0.0 the release numbering works as follows:
+
+- Versions are numbered in the form X.Y.Z.
+- X is the major version number.
+- Y is the minor version number, also called the *feature release* version number.
+- Z is the patch number, which is incremented for bugfix and security releases- Before every new release, we’ll make a release candidate available, and often alpha or beta release too. These are of the form X.Y.Z alpha/beta/rc N, which means the Nth alpha/beta/release candidate of version X.Y.Z
+
+In git, each minor version will have its own branch, called ``vX-Y-stable`` where bugfix/security releases will be issued from.
+
+Each Airflow release will also have a tag in git indicating its version number, signed with the release manager's key. Additionally, each release series has its own branch, called stable/A.B.x, and bugfix/security releases will be issued from those branches.
+
+.. glossary::
+
+    Major release
+      Major releases (X.0.0, X+1.0.0 etc.) indicate a backwards-incompatible change.
+
+      These releases do not happen with any regular interval or on any predictable schedule.
+
+      Major versions should aim to not introduce any major new features, instead it should just be the removal
+      of previously deprecated features.
+
+    Feature releases
+      Feature releases (X.Y.0, X.Y+1.0, etc.) will happen roughly every two months – see release process for
+      details. These releases will contain new features, improvements to existing features, and such.
+
+    Patch releases
+      Patch releases (X.Y.Z, X.Y.Z+1, etc.) will happen, on an as-needed basis, as issues are reported and
+      fixed.
+
+      These releases will be 100% compatible with the associated feature release, unless this is
+      impossible for security reasons or to prevent data loss. So the answer to "should I upgrade to the
+      latest patch release?" will always be "yes."

Review comment:
       ```suggestion
         These releases will be 100% compatible with the associated feature release. So the answer to "should I upgrade to the
         latest patch release?" will always be "yes."
   ```




----------------------------------------------------------------
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.

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



[GitHub] [airflow] vikramkoka commented on a change in pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
vikramkoka commented on a change in pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#discussion_r575733415



##########
File path: docs/apache-airflow/release-process.rst
##########
@@ -0,0 +1,61 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+=========================
+Airflow's release process
+=========================
+
+Since Airflow 2.0.0 the release numbering works as follows:
+
+- Versions are numbered in the form X.Y.Z.
+- X is the major version number.
+- Y is the minor version number, also called the *feature release* version number.
+- Z is the patch number, which is incremented for bugfix and security releases- Before every new release, we’ll make a release candidate available, and often alpha or beta release too. These are of the form X.Y.Z alpha/beta/rc N, which means the Nth alpha/beta/release candidate of version X.Y.Z
+
+In git, each minor version will have its own branch, called ``vX-Y-stable`` where bugfix/security releases will be issued from.
+
+Each Airflow release will also have a tag in git indicating its version number, signed with the release manager's key. Additionally, each release series has its own branch, called stable/A.B.x, and bugfix/security releases will be issued from those branches.
+
+.. glossary::
+
+    Major release
+      Major releases (X.0.0, X+1.0.0 etc.) indicate a backwards-incompatible change.
+
+      These releases do not happen with any regular interval or on any predictable schedule.
+
+      Major versions should aim to not introduce any major new features, instead it should just be the removal

Review comment:
       I think this statement is controversial enough that some explanation would be useful. 
   I realize that this is intended to make it is simpler for people to migrate to a major version without being confused by all the "new features", but that is only because of being at the dev call when you expressed it :)




----------------------------------------------------------------
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.

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



[GitHub] [airflow] potiuk commented on pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
potiuk commented on pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#issuecomment-779424004


   I believe We can merge those gradually and add more description as we find time


----------------------------------------------------------------
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.

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



[GitHub] [airflow] ashb commented on pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
ashb commented on pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#issuecomment-779252302


   > I think this looks really good. I left my feedback inline with the text.
   > 
   > I assume that you intend to add deprecation policy?
   
   Yes, I hadn't gotten around to coming back to this, but wanted to push up what I had so far -- it only existed un-pushed on my laptop :)


----------------------------------------------------------------
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.

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



[GitHub] [airflow] ashb commented on pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
ashb commented on pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#issuecomment-811808935


   I've "finished" off this PR for now. There's much more we _could_ add, but I've been sat on this too long, and I don't want perfect to be the enemy of the good here.


-- 
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.

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



[GitHub] [airflow] potiuk commented on a change in pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
potiuk commented on a change in pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#discussion_r576398085



##########
File path: docs/apache-airflow/release-process.rst
##########
@@ -0,0 +1,61 @@
+ .. Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+
+ ..   http://www.apache.org/licenses/LICENSE-2.0
+
+ .. Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+
+=========================
+Airflow's release process
+=========================
+
+Since Airflow 2.0.0 the release numbering works as follows:
+
+- Versions are numbered in the form X.Y.Z.
+- X is the major version number.
+- Y is the minor version number, also called the *feature release* version number.
+- Z is the patch number, which is incremented for bugfix and security releases- Before every new release, we’ll make a release candidate available, and often alpha or beta release too. These are of the form X.Y.Z alpha/beta/rc N, which means the Nth alpha/beta/release candidate of version X.Y.Z
+
+In git, each minor version will have its own branch, called ``vX-Y-stable`` where bugfix/security releases will be issued from.
+
+Each Airflow release will also have a tag in git indicating its version number, signed with the release manager's key. Additionally, each release series has its own branch, called stable/A.B.x, and bugfix/security releases will be issued from those branches.

Review comment:
       Yep. Signed tags for releases!




----------------------------------------------------------------
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.

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



[GitHub] [airflow] github-actions[bot] commented on pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
github-actions[bot] commented on pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#issuecomment-779423916


   The PR is likely ready to be merged. No tests are needed as no important environment files, nor python files were modified by it. However, committers might decide that full test matrix is needed and add the 'full tests needed' label. Then you should rebase it to the latest master or amend the last commit of the PR, and push it with --force-with-lease.


----------------------------------------------------------------
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.

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



[GitHub] [airflow] mik-laj commented on pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
mik-laj commented on pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#issuecomment-776456748


   Should we updaate "Support for Airflow 1.10.x releases" section on "Upgrading to Airflow 2.0+" page?  http://airflow.apache.org/docs/apache-airflow/stable/upgrading-to-2.html#support-for-airflow-1-10-x-releases
   


----------------------------------------------------------------
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.

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



[GitHub] [airflow] ashb merged pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
ashb merged pull request #14132:
URL: https://github.com/apache/airflow/pull/14132


   


-- 
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.

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



[GitHub] [airflow] potiuk commented on pull request #14132: Document Airflow's versioning and release policy for users

Posted by GitBox <gi...@apache.org>.
potiuk commented on pull request #14132:
URL: https://github.com/apache/airflow/pull/14132#issuecomment-779422174


   Yep I also have to add rules for providers on top of that once we hash-out all details for Airflow.


----------------------------------------------------------------
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.

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