diff --git a/RELEASING/README.md b/RELEASING/README.md index c6ea71d66157..b48d52712387 100644 --- a/RELEASING/README.md +++ b/RELEASING/README.md @@ -63,44 +63,50 @@ final release. Therefore, it's a good idea to do the following every time you work on a new phase of the release process to make sure you aren't releasing the wrong files/using wrong names. There's a script to help you set correctly all the necessary environment variables. Change your current directory to `superset/RELEASING` +and execute the `set_release_env.sh` script with the relevant parameters: ```bash # usage (BASH): . set_release_env.sh # usage (ZSH): source set_release_env.sh # - # example: source set_relese_env.sh 0.36.0rc3 myid@apache.org + # example: source set_release_env.sh 0.37.0rc1 myid@apache.org ``` -The script will output the exported variables. Here's example for 0.36.0rc3: +The script will output the exported variables. Here's example for 0.37.0rc1: ``` - ------------------------------- Set Release env variables - SUPERSET_VERSION=0.36.0 - SUPERSET_RC=3 - SUPERSET_GITHUB_BRANCH=0.36 + SUPERSET_VERSION=0.37.0 + SUPERSET_RC=1 + SUPERSET_GITHUB_BRANCH=0.37 SUPERSET_PGP_FULLNAME=myid@apache.org - SUPERSET_VERSION_RC=0.36.0rc3 - SUPERSET_RELEASE=apache-superset-incubating-0.36.0 - SUPERSET_RELEASE_RC=apache-superset-incubating-0.36.0rc3 - SUPERSET_RELEASE_TARBALL=apache-superset-incubating-0.36.0-source.tar.gz - SUPERSET_RELEASE_RC_TARBALL=apache-superset-incubating-0.36.0rc3-source.tar.gz - SUPERSET_TMP_ASF_SITE_PATH=/tmp/incubator-superset-site-0.36.0 - ------------------------------- + SUPERSET_VERSION_RC=0.37.0rc1 + SUPERSET_RELEASE=apache-superset-incubating-0.37.0 + SUPERSET_RELEASE_RC=apache-superset-incubating-0.37.0rc1 + SUPERSET_RELEASE_TARBALL=apache-superset-incubating-0.37.0-source.tar.gz + SUPERSET_RELEASE_RC_TARBALL=apache-superset-incubating-0.37.0rc1-source.tar.gz + SUPERSET_TMP_ASF_SITE_PATH=/tmp/incubator-superset-site-0.37.0 ``` ## Crafting a source release When crafting a new minor or major release we create -a branch named with the release MAJOR.MINOR version (on this example 0.35). +a branch named with the release MAJOR.MINOR version (on this example 0.37). This new branch will hold all PATCH and release candidates that belong to the MAJOR.MINOR version. The MAJOR.MINOR branch is normally a "cut" from a specific point in time from the master branch. -Then (if needed) apply all cherries that will make the PATCH +Then (if needed) apply all cherries that will make the PATCH. -Next update the `CHANGELOG.md` with all the changes that are included in the release. Make sure you have -set your GITHUB_TOKEN environment variable. +```bash +git checkout -b $SUPERSET_GITHUB_BRANCH +git push upstream $SUPERSET_GITHUB_BRANCH +``` + +Next, update the `CHANGELOG.md` with all the changes that are included in the release. +Make sure the branch has been pushed to `upstream` to ensure the changelog generator +can pick up changes since the previous release (otherwise `github-changes` will raise +an `Error: Not Found` exception). ```bash # will overwrites the local CHANGELOG.md, somehow you need to merge it in @@ -293,7 +299,7 @@ with the changes on `CHANGELOG.md` and `UPDATING.md`. ### Publishing a Convenience Release to PyPI Using the final release tarball, unpack it and run `./pypi_push.sh`. -This script will build the Javascript bundle and echo the twine command +This script will build the Javascript bundle and echo the twine command allowing you to publish to PyPI. You may need to ask a fellow committer to grant you access to it if you don't have access already. Make sure to create an account first if you don't have one, and reference your username diff --git a/RELEASING/email_templates/vote_pmc.j2 b/RELEASING/email_templates/vote_pmc.j2 index 9be485618722..008dfadb194d 100644 --- a/RELEASING/email_templates/vote_pmc.j2 +++ b/RELEASING/email_templates/vote_pmc.j2 @@ -34,6 +34,9 @@ https://github.com/apache/incubator-{{ project_module }}/tree/{{ version_rc }} The Change Log for the release: https://github.com/apache/incubator-{{ project_module }}/blob/{{ version_rc }}/CHANGELOG.md +The Updating instructions for the release: +https://github.com/apache/incubator-{{ project_module }}/blob/{{ version_rc }}/UPDATING.md + public keys are available at: https://www.apache.org/dist/incubator/{{ project_module }}/KEYS diff --git a/RELEASING/set_release_env.sh b/RELEASING/set_release_env.sh index 6b408a8f1707..6b8a7d5fc8ac 100755 --- a/RELEASING/set_release_env.sh +++ b/RELEASING/set_release_env.sh @@ -19,7 +19,7 @@ usage() { echo "usage (BASH): . set_release_env.sh " echo "usage (ZSH): source set_release_env.sh " echo - echo "example: source set_relese_env.sh 0.36.0rc3 myid@apache.org" + echo "example: source set_release_env.sh 0.37.0rc1 myid@apache.org" } if [ -z "$1" ] || [ -z "$2" ]; then diff --git a/UPDATING.md b/UPDATING.md index 4d669d082538..3b2e3e31949e 100644 --- a/UPDATING.md +++ b/UPDATING.md @@ -44,6 +44,8 @@ assists people when migrating to a new version. * [9572](https://github.com/apache/incubator-superset/pull/9572): a change which by default means that the Jinja `current_user_id`, `current_username`, and `url_param` context calls no longer need to be wrapped via `cache_key_wrapper` in order to be included in the cache key. The `cache_key_wrapper` function should only be required for Jinja add-ons. +## 0.36.0 + * [8867](https://github.com/apache/incubator-superset/pull/8867): a change which adds the `tmp_schema_name` column to the `query` table which requires locking the table. Given the `query` table is heavily used performance may be degraded during the migration. Scheduled downtime may be advised. * [9238](https://github.com/apache/incubator-superset/pull/9238): the config option `TIME_GRAIN_FUNCTIONS` has been renamed to `TIME_GRAIN_EXPRESSIONS` to better reflect the content of the dictionary.