Skip to content

Releasing appleseed

François Beaune edited this page Jan 11, 2014 · 12 revisions

This page will guide you through the process of preparing and releasing a new build of appleseed. The entire process should take between two and three hours.

Preparation

  • Make sure all local changes are committed and pushed to GitHub.
  • Make sure that QMC sampling is disabled!
  • Make sure the contents of the sandbox/extras/ folder is up-to-date (Blenderseed, mayaseed, etc.).

Tagging

In the Git repository, tag the last revision that is part of the release and push the tag to GitHub. Make sure to follow the naming convention used for the previous tags.

Building

On each supported platform:

  1. Pull the latest changes from GitHub (make sure the tags are fetched).
  2. Do git describe --long and check the version string.
  3. On OS X / Linux, edit build/CMakeCache.txt, look for CMAKE_BUILD_TYPE and make sure it is set to Ship.
  4. Build from scratch:
    • On OS X / Linux, in build/: cmake ../src ; make clean ; make
    • On Windows, build the whole solution in all configurations (Batch Build in Visual Studio).
  5. Make sure there is no compilation warning. If there are any, fix them and resume at step 1.

Packaging

  1. Make sure appleseed.package's configuration (scripts/appleseed.package.configuration.xml) is up-to-date.
  2. Run scripts/appleseed.package.py to build the package.

Testing

  1. Unzip the package file to archives/releases/<VERSION>-<MATURITY>/.
  2. Run appleseed.cli with the -v command line option and check the version information that get printed.
  3. Start appleseed.studio and:
    1. Check the version information in the About window.
    2. Run all unit tests and check that they all pass.
    3. Render the built-in Cornell Box project.
    4. Check that there is no warning or error messages in the Log panel.

Windows Devkits

  1. Make sure both the Debug and Ship configurations of appleseed were freshly built.
  2. In sandbox\extras\devkit, run recreate-and-package-vs110.bat to build a new devkit package.
  3. Rename the devkit package to match the name of the appleseed package.
  4. Upload the devkit package to Google Drive.
  5. Update the appleseed Devkits page.

Publishing

  1. Upload all the packages (currently to Google Drive).
  2. Create a new wiki page titled "appleseed <VERSION> <MATURITY> Release Notes".
  3. Copy the release notes from the Next Build page.
    1. Update the introduction paragraphs.
    2. Change "What's new in the next release" to "What's new in this release".
    3. Change "What's fixed in the next release" to "What's fixed in this release".
  4. Once the page is ready, publish it.
  5. Edit the Downloads page:
    1. Move the links from "Latest Release" to a new section in "Previous Releases".
    2. Update the links in "Latest Release".
  6. Log out and verify that the new links in the "Latest Release" section are working properly.
  7. Clear the Next Build page.

Announcing

  1. Write an announcement for the new release, as a Story page.
  2. Publish the announcement on the home page of http://appleseedhq.net/.
  3. Post a note on Twitter.
  4. Send a mail to the appleseed-dev mailing list.