chore: improve release documentation (#10292)

* fix: releasing readme.md

* fix: improvements to release documentation
This commit is contained in:
Ville Brofeldt 2020-07-11 19:00:02 +03:00 committed by GitHub
parent 06fd1b5e4d
commit 1f5eec1c4a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 30 additions and 19 deletions

View File

@ -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 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 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` necessary environment variables. Change your current directory to `superset/RELEASING`
and execute the `set_release_env.sh` script with the relevant parameters:
```bash ```bash
# usage (BASH): . set_release_env.sh <SUPERSET_RC_VERSION> <PGP_KEY_FULLNAME> # usage (BASH): . set_release_env.sh <SUPERSET_RC_VERSION> <PGP_KEY_FULLNAME>
# usage (ZSH): source set_release_env.sh <SUPERSET_RC_VERSION> <PGP_KEY_FULLNAME> # usage (ZSH): source set_release_env.sh <SUPERSET_RC_VERSION> <PGP_KEY_FULLNAME>
# #
# 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 Set Release env variables
SUPERSET_VERSION=0.36.0 SUPERSET_VERSION=0.37.0
SUPERSET_RC=3 SUPERSET_RC=1
SUPERSET_GITHUB_BRANCH=0.36 SUPERSET_GITHUB_BRANCH=0.37
SUPERSET_PGP_FULLNAME=myid@apache.org SUPERSET_PGP_FULLNAME=myid@apache.org
SUPERSET_VERSION_RC=0.36.0rc3 SUPERSET_VERSION_RC=0.37.0rc1
SUPERSET_RELEASE=apache-superset-incubating-0.36.0 SUPERSET_RELEASE=apache-superset-incubating-0.37.0
SUPERSET_RELEASE_RC=apache-superset-incubating-0.36.0rc3 SUPERSET_RELEASE_RC=apache-superset-incubating-0.37.0rc1
SUPERSET_RELEASE_TARBALL=apache-superset-incubating-0.36.0-source.tar.gz SUPERSET_RELEASE_TARBALL=apache-superset-incubating-0.37.0-source.tar.gz
SUPERSET_RELEASE_RC_TARBALL=apache-superset-incubating-0.36.0rc3-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.36.0 SUPERSET_TMP_ASF_SITE_PATH=/tmp/incubator-superset-site-0.37.0
-------------------------------
``` ```
## Crafting a source release ## Crafting a source release
When crafting a new minor or major release we create 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 This new branch will hold all PATCH and release candidates
that belong to the MAJOR.MINOR version. 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. 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 ```bash
set your GITHUB_TOKEN environment variable. 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 ```bash
# will overwrites the local CHANGELOG.md, somehow you need to merge it in # 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 ### Publishing a Convenience Release to PyPI
Using the final release tarball, unpack it and run `./pypi_push.sh`. 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 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 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 an account first if you don't have one, and reference your username

View File

@ -34,6 +34,9 @@ https://github.com/apache/incubator-{{ project_module }}/tree/{{ version_rc }}
The Change Log for the release: The Change Log for the release:
https://github.com/apache/incubator-{{ project_module }}/blob/{{ version_rc }}/CHANGELOG.md 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: public keys are available at:
https://www.apache.org/dist/incubator/{{ project_module }}/KEYS https://www.apache.org/dist/incubator/{{ project_module }}/KEYS

View File

@ -19,7 +19,7 @@ usage() {
echo "usage (BASH): . set_release_env.sh <SUPERSET_RC_VERSION> <PGP_KEY_FULLNAME>" echo "usage (BASH): . set_release_env.sh <SUPERSET_RC_VERSION> <PGP_KEY_FULLNAME>"
echo "usage (ZSH): source set_release_env.sh <SUPERSET_RC_VERSION> <PGP_KEY_FULLNAME>" echo "usage (ZSH): source set_release_env.sh <SUPERSET_RC_VERSION> <PGP_KEY_FULLNAME>"
echo 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 if [ -z "$1" ] || [ -z "$2" ]; then

View File

@ -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. * [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. * [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. * [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.