DOM Inspector/Releases/Checklist: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 11: Line 11:
** e.g., when releasing DOMi 2.0.12, you would change it from 2.0.12pre to 2.0.12 on the DOMI_2_0_12 branch.  The commit message would be "Bug 738048 - (DOMi2.0.12) DOM Inspector 2.0.12".  See [http://hg.mozilla.org/dom-inspector/rev/c42fd9baba56 changeset c42fd9baba56].
** e.g., when releasing DOMi 2.0.12, you would change it from 2.0.12pre to 2.0.12 on the DOMI_2_0_12 branch.  The commit message would be "Bug 738048 - (DOMi2.0.12) DOM Inspector 2.0.12".  See [http://hg.mozilla.org/dom-inspector/rev/c42fd9baba56 changeset c42fd9baba56].
* Add a version-specific tag and a DOMI_LATEST_RELEASE tag
* Add a version-specific tag and a DOMI_LATEST_RELEASE tag
** e.g., <br/><nowiki>
** e.g.,<br/><nowiki>
</nowiki><samp>$ <kbd>hg tag DOMI_2_0_12_RELEASE</kbd></samp><br/><nowiki>
</nowiki><samp>$ <kbd>hg tag DOMI_2_0_12_RELEASE</kbd></samp><br/><nowiki>
</nowiki><samp>$ <kbd>hg tag -r DOMI_2_0_12_RELEASE DOMI_LATEST_RELEASE</kbd></samp>
</nowiki><samp>$ <kbd>hg tag -r DOMI_2_0_12_RELEASE DOMI_LATEST_RELEASE</kbd></samp>
Line 19: Line 19:
*** This should work with other, non-Firefox mozilla-central project source drops since we're not actually going to build the application; we're just going to leverage the mozilla build system.  It's just that the Firefox ftp directory includes a "latest" symlink, and others don't.
*** This should work with other, non-Firefox mozilla-central project source drops since we're not actually going to build the application; we're just going to leverage the mozilla build system.  It's just that the Firefox ftp directory includes a "latest" symlink, and others don't.
** Extract the source drop
** Extract the source drop
*** e.g., <samp>:~/src$ <kbd>tar xjf ./firefox-12.0.source.tar.bz2<kbd></samp>
*** e.g.,<br/><nowiki>
</nowiki><samp>:~/src$ <kbd>tar xjf ./firefox-12.0.source.tar.bz2<kbd></samp>
** Drop dom-inspector into the extensions directory
** Drop dom-inspector into the extensions directory
*** Clone the repo there
*** Clone the repo there:<br/><nowiki>
**** <samp>:~/src/mozilla-release/$ <kbd>hg clone http://hg.mozilla.org/dom-inspector ./extensions/inspector</kbd></samp>
</nowiki><samp>:~/src/mozilla-release$ <kbd>hg clone http://hg.mozilla.org/dom-inspector ./extensions/inspector</kbd></samp>
*** Update to the release branch
*** Update to the release branch:<br/><nowiki>
**** <samp>:~/src/mozilla-release/$ <kbd>hg update -R ./extensions/inspector DOMI_LATEST_RELEASE</kbd></samp>
</nowiki><samp>:~/src/mozilla-release$ <kbd>hg update -R ./extensions/inspector DOMI_LATEST_RELEASE</kbd></samp>
*** Alternatively, you can <kbd>mv</kbd>/<kbd>cp</kbd>/<kbd>hg archive</kbd> the repository you were working from before, but I usually clone a new one for good measure, since the dom-inspector repo is so small.
*** Alternatively, you can <kbd>mv</kbd>/<kbd>cp</kbd>/<kbd>hg archive</kbd> the repository you were working from before, but I usually clone a new one for good measure, since the dom-inspector repo is so small.
** Edit the .mozconfig to enable DOM Inspector in the build (and nothing else)
** Edit the .mozconfig to enable DOM Inspector in the build (and nothing else):<br/><nowiki>
*** <kbd>ac_add_options --enable-application=extensions<br/>ac_add_options --enable-extensions=inspector</kbd>
</nowiki><kbd>ac_add_options --enable-application=extensions<br/><nowiki>
** Start the build
</nowiki>ac_add_options --enable-extensions=inspector</kbd>
*** <samp>:~/src/mozilla-release/$ <kbd>make -f ./client.mk</kbd></samp>
** Start the build:<br/><nowiki>
</nowiki><samp>:~/src/mozilla-release$ <kbd>make -f ./client.mk</kbd></samp>
** Fish out the XPI from <var>$MOZOBJDIR</var>/dist/xpi-stage
** Fish out the XPI from <var>$MOZOBJDIR</var>/dist/xpi-stage
*** e.g., ~/src/mozilla-release/objdir-i686-pc-linux-gnu/dist/xpi-stage/inspector-2.0.12.xpi
*** e.g., ~/src/mozilla-release/objdir-i686-pc-linux-gnu/dist/xpi-stage/inspector-2.0.12.xpi

Revision as of 20:56, 31 May 2012

This is a snapshot of the page, documenting a future process. Some things will not work with the current state of the DOM Inspector repository.

DOM Inspector release day

DOM Inspector releases are prepared from a release branch. Get there by doing updating to the branch point of the latest branch, then updating the working directory to the tip of the branch:

 $ hg update DOMI_LATEST_BRANCH && hg update

From there the release process is as follows:

  • Verify that the maxVersion strings in install.rdf on the release branch for all applications match the versions that correspond to the current nightlies derived from mozilla-central. (This shouldn't be necessary if you've already done everything you're supposed to do on the last merge day.)
  • Change the makefile to reflect the new version number. Use the tracking bug for that release in your commit.
    • e.g., when releasing DOMi 2.0.12, you would change it from 2.0.12pre to 2.0.12 on the DOMI_2_0_12 branch. The commit message would be "Bug 738048 - (DOMi2.0.12) DOM Inspector 2.0.12". See changeset c42fd9baba56.
  • Add a version-specific tag and a DOMI_LATEST_RELEASE tag
    • e.g.,
      $ hg tag DOMI_2_0_12_RELEASE
      $ hg tag -r DOMI_2_0_12_RELEASE DOMI_LATEST_RELEASE
  • Build it
    • Download the latest mozilla-central release source drop
      • e.g., get it from ftp://ftp.mozilla.org/pub/firefox/releases/latest/source
      • This should work with other, non-Firefox mozilla-central project source drops since we're not actually going to build the application; we're just going to leverage the mozilla build system. It's just that the Firefox ftp directory includes a "latest" symlink, and others don't.
    • Extract the source drop
      • e.g.,
        :~/src$ tar xjf ./firefox-12.0.source.tar.bz2
    • Drop dom-inspector into the extensions directory
      • Clone the repo there:
        :~/src/mozilla-release$ hg clone http://hg.mozilla.org/dom-inspector ./extensions/inspector
      • Update to the release branch:
        :~/src/mozilla-release$ hg update -R ./extensions/inspector DOMI_LATEST_RELEASE
      • Alternatively, you can mv/cp/hg archive the repository you were working from before, but I usually clone a new one for good measure, since the dom-inspector repo is so small.
    • Edit the .mozconfig to enable DOM Inspector in the build (and nothing else):
      ac_add_options --enable-application=extensions
      ac_add_options --enable-extensions=inspector
    • Start the build:
      :~/src/mozilla-release$ make -f ./client.mk
    • Fish out the XPI from $MOZOBJDIR/dist/xpi-stage
      • e.g., ~/src/mozilla-release/objdir-i686-pc-linux-gnu/dist/xpi-stage/inspector-2.0.12.xpi
  • Prepare the release notes
    • find the dependent bugs for release bug
    • The notes take this form:
      <ul>
        <li>
          <a href="URL"
             title="Bug bug id - bug summary">Bug bug id</a>&nbsp;- bug summary (patch by contributor)
        </li>
      </ul>

      Localization fixes:
      <ul>
        <li>Language: Contributor</li>
      </ul>
    • feel free to add explanatory text or additional prose above or below the notes
  • Submit it to AMO
    • Paste the release notes
    • Ping someone in #addons for review
  • Leave a comment in the release bug about the AMO status
  • RESOLVE the bug when it gets reviewed and is made available on AMO