Skip to content

Latest commit

 

History

History
52 lines (30 loc) · 1.83 KB

RELEASING.md

File metadata and controls

52 lines (30 loc) · 1.83 KB

Releasing new versions of Recipe Robot

Requirements

  • DropDMG, with a configuration called "Recipe Robot" that has the proper layout and settings
  • Xcode and command line tools
  • Carthage (install using brew install carthage)

Steps

  1. Update frameworks with Carthage:

     cd ./app
     carthage update --platform macOS
    
  2. Ensure both the MARKETING_VERSION variables in app/Recipe Robot.xcodeproj/project.pbxproj have been updated.

  3. Ensure the version in scripts/recipe_robot_lib/tools.py has been updated.

  4. Ensure the change log has been updated and reflects actual release date.

  5. Merge development branch to main/master branch.

  6. Run Recipe Robot unit tests and fix any errors. (See scripts/test/README.md for detailed steps.)

  7. Open Xcode and choose Product > Archive.

  8. Click Distribute App > Direct Distribution > Distribute. Wait for notarization to complete.

  9. Once ready, click Export Notarized App and save to build/Release/Recipe Robot.app.

  10. Build a release disk image:

    rm -fv build/RecipeRobot*.dmg
    dropdmg --config-name "Recipe Robot" --destination build/ "build/Release/Recipe Robot.app"
    autoload zmv
    zmv -v 'build/Recipe Robot (*).dmg' 'build/RecipeRobot-$1.dmg'
    open build/
    
  11. Create new release on GitHub with title format Recipe Robot X.X.X. Set label format to vX.X.X. Add notes from change log. Attach built disk image.

  12. Manually update appcast.xml on the gh-pages branch.

  13. Announce to autopkg and other relevant channels, if desired.

  14. Create new dev branch.

  15. Bump versions for development:

    • MARKETING_VERSION variables in app/Recipe Robot.xcodeproj/project.pbxproj

    • Version in scripts/recipe_robot_lib/tools.py