Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Release DSpace Language Packs (I18N) Modules

If possibleBefore performing a main release, you should release see if the DSpace Language Packs (i18n modules) before the main release. Oftentimes, it's best to release these one or two days prior to the DSpace release (that way they've already propagated out to the Maven repository).need an updated release.  The easiest way to check if they need to be released it by checking to see if any commits have occurred since the previous release (see below for links).  Please note that you can release these I18N Modules on the same day as the main DSpace release.  The DSpace parent pom.xml is now configured to also check Sonatype's Release Repository for any Maven artifacts (so you do NOT need to wait for the I18N modules to appear in Maven Central)

At the moment the i18n modules are maintained in two separate GitHub projects. There are currently two i18n modules you will need to release:

Info
titleVersion Numbering Convention for Language Packs

Note that the version numbering convention for Language Packs is always the same as the current DSpace release, with an additional .[sequence-number]. For example, the i18n modules for the 1.8.0 release are numbered as follows: 1.8.0.0, 1.8.0.1, etc. However, for 3.0 , the i18n modules will be were numbered as follows: 3.0.0, 3.0.1, etc.

...

  1. Checkout the Language Pack Module:
    1. git clone git@github.com:DSpace/dspace-api-lang.git dspace-api-lang
    2. cd dspace-api-lang
    3. git checkout master 
      NOTE: always release language packs from the master branch, we do not use a maintenance branch for language packs.
  2. Do a Dry Run: mvn release:prepare -DdryRun=true
  3. Tag and Increment Version: mvn release:prepare -Dresume=false
    • Make sure to assign a version number of the format: [major].[minor].[sequence-number] (e.g. 3.0.0, 3.0.1, etc for 3.0 releases of language packs)
    • NOTE: The release process should suggest the correct version number by default
  4. Deploy Artifacts to Staging in Sonatype: mvn release:perform
  5. Verify and Release Staged Artifacts in Sonatype (see instructions at link)
  6. Go back and run steps #1-5 above for the other language packs modules (dspace-xmlui-lang)-5 above for the other language packs modules (dspace-xmlui-lang)

Once both Language Packs have been released, you can immediately perform the DSpace release. You do not need to wait for them to appear in Maven Central, as our DSpace parent pom.xml will find them in Sonatype's Release Repository immediately.

Final Commits & Preparation

...

  • Preface- Should contain a very basic overview of the Release. Make sure the Release number is updated here!
    • NOTE: For Subminor releases (bug-fix-only releases), you may want to leave all information about the previous major release, and just enhance the content to state that this was a bug-fix release, and list any new contributors, etc.
  • Installation - Obviously make sure the Installation Documentation is updated for this Release
  • Upgrading a DSpace Installation - Same for the Upgrade Documentation, make sure it's up to date
  • History- Make sure the online History for this latest Release is included. You should be able to just edit copy the page, copy the fancy code that generated the history for another release, last version's page and update the version numbers. For example, copy the previous release's History section page, and change the release numbers as follows:
    • You'll notice all the release History JIRA history is generated via the jiraissue plugin. In the url argument for that plugin, you should find the DSpace version number embedded in the querystring like: "... AND+fixVersion+%3D+%2213.7.0%22 ..." If you look closely, you'll see the 'fixVersion' is set to "13.7.0" in that search string. All you should need to do is update that version number !(and the plugin will now search for tickets closed for 4.0)
    • Also make sure to update the title argument for that jiraissueplugin to list the proper version number information

      Note

      Obviously, this is just a brief reminder of important areas of Documentation which always require updates. There's surely other areas, like Configuration section, which will require some updates for your release.

...

Code Block
git clone git@github.com:DSpace/DSpace.git ~/dspace-release
cd ~/dspace-release
git checkout dspace-3_x
 
(or whatever the current maintenance branch might be named)

Update your Local Maven Cache (optional - may not be needed)

Before starting the release, you may wish to ensure your local maven cache (~/.m2/repository) is completely up-to-date by running (from [dspace-src]):

...