How to release RawTherapee: Difference between revisions

From RawPedia
Jump to navigation Jump to search
No edit summary
No edit summary
Line 18: Line 18:
#::git push origin "5.9-rc1"
#::git push origin "5.9-rc1"
#::git push</pre>
#::git push</pre>
# Make a source tarball and upload it to the website:<pre>./tools/generateSourceTarball</pre><pre>sha1sum rawtherapee-5.9-rc1.tar.xz > rawtherapee-5.9-rc1.tar.xz.sha1</pre>
# Make a source tarball:<pre>./tools/generateSourceTarball</pre><pre>sha1sum rawtherapee-5.9-rc1.tar.xz > rawtherapee-5.9-rc1.tar.xz.sha1</pre>
# When ready for a final release (5.9, not 5.9-rc1), do as above, merge <code>release-5.9</code> into <code>releases</code>, tag and deleted <code>release-5.9</code>.
# Create a release for the new tag. Copy the description from the previous tag, updating the version as necessary. Attach the source tarball and hash file to the release: https://github.com/Beep6581/RawTherapee/tags
#: Never delete branch <code>releases</code>.
# Upload the source tarball and hash file to the website, to <code>shared/source</code>.
# Upload Linux/Windows/macOS installers/packages to the website, to <code>shared/builds</code>.
# Update the website, see https://gitlab.com/patdavid/rawtherapee-web/-/blob/master/README.md
 
When ready for a final release (5.9, not 5.9-rc1), do as above, merge <code>release-5.9</code> into <code>releases</code>, tag <code>5.9</code>, finally deleted branch <code>release-5.9</code>. Never delete branch <code>releases</code>.
 
Once done with the release, you may need to merge <code>releases</code> back into <code>dev</code> if new commits were made exclusively to the <code>release-5.9</code> branch. To do that,
# <code>git checkout releases</code>,
# Edit <code>RELEASE_NOTES.txt</code> and revert the contents to describe the development build (<code>git show dev:RELEASE_NOTES.txt</code>).
# Edit the splash screen in Inkscape to revert it to the dev one.
# <code>git commit -a -m "Preparing to merge back to dev"</code>
# <code>git checkout dev</code>
# <code>git checkout merge releases</code>
# <code>git push</code>

Revision as of 18:34, 16 November 2022

  1. Tea
  2. Pull and update
  3. Run:
    ./tools/generateTranslationDiffs
    Perform final language file updates.
  4. Run:
    dos2unix rtdata/languages/* rtdata/profiles/*
  5. Update splash screen, RELEASE_NOTES.txt, AppData, language files, profiles, etc. Once ready, commit to new branch:
    git checkout -b release-5.9
    git commit -a -m "Preparing for release 5.9-rc1"
    git push --set-upstream origin release-5.9
  6. Once others have revised the changes, merge this release-5.9 branch into releases:
    git checkout releases
    git pull
    git merge release-5.9
  7. Tag and push:
    git tag -a "5.9-rc1" -m "Tagged RawTherapee 5.9-rc1"
    git push origin "5.9-rc1"
    git push
  8. Make a source tarball:
    ./tools/generateSourceTarball
    sha1sum rawtherapee-5.9-rc1.tar.xz > rawtherapee-5.9-rc1.tar.xz.sha1
  9. Create a release for the new tag. Copy the description from the previous tag, updating the version as necessary. Attach the source tarball and hash file to the release: https://github.com/Beep6581/RawTherapee/tags
  10. Upload the source tarball and hash file to the website, to shared/source.
  11. Upload Linux/Windows/macOS installers/packages to the website, to shared/builds.
  12. Update the website, see https://gitlab.com/patdavid/rawtherapee-web/-/blob/master/README.md

When ready for a final release (5.9, not 5.9-rc1), do as above, merge release-5.9 into releases, tag 5.9, finally deleted branch release-5.9. Never delete branch releases.

Once done with the release, you may need to merge releases back into dev if new commits were made exclusively to the release-5.9 branch. To do that,

  1. git checkout releases,
  2. Edit RELEASE_NOTES.txt and revert the contents to describe the development build (git show dev:RELEASE_NOTES.txt).
  3. Edit the splash screen in Inkscape to revert it to the dev one.
  4. git commit -a -m "Preparing to merge back to dev"
  5. git checkout dev
  6. git checkout merge releases
  7. git push