Current section
Files
Jump to
Current section
Files
graphql_relay
RELEASE.md
RELEASE.md
# Release process
This document outlines the release process:
1. Ensure you are running on the oldest supported Elixir version (check `.travis.yml` for what is supported)
2. Ensure `CHANGELOG.md` is updated and add current date
3. Change the version number in `mix.exs` and `README.md`
4. Run `mix test` to ensure all tests pass
5. Update `examples` to use new version
6. Commit changes above with title "Release vVERSION" and push to GitHub
git add .
git commit -m"Release vX.Y.Z"
git push origin master
7. Check CI is green
8. Create a release on GitHub and add the CHANGELOG from step #2 (https://github.com/graphql-elixir/graphql/releases/new) using VERSION as the tag and title
9. Publish new hex release with `mix hex.publish`
10. Publish hex docs with `mix hex.docs`
## Deprecation policy
GraphQL deprecations happen in 3 steps:
1. The feature is soft-deprecated. It means both CHANGELOG and documentation must list the feature as deprecated but no warning is effectively emitted by running the code. There is no requirement to soft-deprecate a feature.
2. The feature is effectively deprecated by emitting warnings on usage. In order to deprecate a feature, the proposed alternative MUST exist for AT LEAST two versions.
3. The feature is removed. This can only happen on major releases.