-
Notifications
You must be signed in to change notification settings - Fork 48
Releasing new versions
Inspect the difference between the last release and the current master
branch to determine the numerical version change as specified within the semantic versioning guidelines - such as v1.2.3
, v0.9.0
, and so on. This will be the specified $VERSION_NUMBER
referenced in the instructions below.
Once you've determined the version being released, you can begin with the release process:
- Create a new branch, named
release-$VERSION_NUMBER
. - Update the internal and marketing version within the project:
$ agvtool next-version -all && agvtool new-marketing-version `$VERSION_NUMBER`
- Update MapboxGeocoder.swift.podspec with the new
$VERSION_NUMBER
. - Update README.md with the new
$VERSION_NUMBER
. - Create a new pull request, targeting the
master
branch. Tag one of the project contributors to review.
- Create a new draft release with the
$VERSION_NUMBER
as the title. Leave the target tag empty for now. - In the body of the release, include a link to the difference between the previous release and your
$RELEASE_VERSION
as follows:[Changes](https://github.com/mapbox/MapboxGeocoder.swift/compare/$LAST_RELEASE_VERSION...$RELEASE_VERSION) since [$LAST_RELEASE_VERSION](https://github.com/mapbox/MapboxGeocoder.swift/releases/tag/$LAST_RELEASE_VERSION):
- Write a changelog summarizing the differences between the last release and the newest release.
- After getting the release PR approved, merge the changes into
master
. - Back in your local project, check out the
master
branch and pull in the latest changes coming from your recently merged release PR. - Create a new tag with your release version:
$ git tag $RELEASE_VERSION && git push origin && $RELEASE_VERSION
- Go back to the draft release and include the new
$RELEASE_VERSION
tag - Publish the release!
No additional work is needed to release a new version of MapboxGeocoder.swift to Carthage.
If this is your first time contributing to this project, you will need to get approval to publish new versions of this Pod. Follow registration instructions here, and then contact the maintainers to receive access.
Once you have permissions to publish the Pod, push your released version:
pod trunk push
Please ensure that the version number gets updated within internal documentation sites. If you aren’t a member of the Mapbox organization, contact Mapbox to get it updated.
Once the above steps have been completed, a new version of MapboxGeocoder.swift release is born 🐣 🎉