alamb commented on code in PR #6565:
URL: https://github.com/apache/arrow-rs/pull/6565#discussion_r1801853988


##########
object_store/dev/release/README.md:
##########
@@ -17,4 +17,187 @@
   under the License.
 -->
 
-See instructions in [`/dev/release/README.md`](../../../dev/release/README.md)
+
+# Release Process
+
+## Overview
+
+This file documents the release process for the `object_store` crate.
+
+At the time of writing, we release a new version of `object_store` on demand 
rather than on a regular schedule.
+
+As we are still in an early phase, we use the 0.x version scheme. If any code 
has 
+been merged to master that has a breaking API change, as defined in [Rust RFC 
1105]
+the minor version number is incremented changed (e.g. `0.3.0` to `0.4.0`). 
+Otherwise the patch version is incremented (e.g. `0.3.0` to `0.3.1`).
+
+[Rust RFC 1105]: 
https://github.com/rust-lang/rfcs/blob/master/text/1105-api-evolution.md
+# Release Mechanics
+
+## Process Overview
+
+As part of the Apache governance model, official releases consist of
+signed source tarballs approved by the PMC.
+
+We then use the code in the approved source tarball to release to
+crates.io, the Rust ecosystem's package manager.
+
+We create a `CHANGELOG.md` so our users know what has been changed between 
releases.
+
+The CHANGELOG is created automatically using
+[update_change_log.sh](https://github.com/apache/arrow-rs/blob/master/object_store/dev/release/update_change_log.sh)
+
+This script creates a changelog using github issues and the
+labels associated with them.
+
+## Prepare CHANGELOG and version:
+
+Now prepare a PR to update `CHANGELOG.md` and versions on `master` to reflect 
the planned release.
+
+For `object_store` this process is done in the `object_store` directory. See 
[#6227] for an example
+
+[#6227]: https://github.com/apache/arrow-rs/pull/6227
+
+```bash
+git checkout master
+git pull
+git checkout -b <RELEASE_BRANCH>
+
+# Update versions. Make sure to run it before the next step since we do not 
want CHANGELOG-old.md affected.
+sed -i '' -e 's/14.0.0/39.0.0/g' `find . -name 'Cargo.toml' -or -name '*.md' | 
grep -v CHANGELOG.md`
+git commit -a -m 'Update version'
+
+# ensure your github token is available
+export ARROW_GITHUB_API_TOKEN=<TOKEN>
+
+# manually edit ./dev/release/update_change_log.sh to reflect the release 
version

Review Comment:
   ```suggestion
   # Copy the contents of CHANGELOG.md to the top of CHANGELOG-old.md
   
   # manually edit ./dev/release/update_change_log.sh to reflect the release 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to