| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <meta name="viewport" content="width=device-width,initial-scale=1"> |
| <title>Post Release (Successful) :: Apache Isis</title> |
| <link rel="canonical" href="https://isis.apache.org/comguide/2.0.0-M3/post-release-successful.html"> |
| <meta name="generator" content="Antora 2.2.0"> |
| <link rel="stylesheet" href="../../_/css/site.css"> |
| <link rel="stylesheet" href="../../_/css/site-custom.css"> |
| <link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,700,700i|Raleway:300,400,500,700,800|Montserrat:300,400,700" rel="stylesheet"> |
| <link rel="home" href="https://isis.apache.org" title="Apache Isis"> |
| <link rel="next" href="post-release-unsuccessful.html" title="Post Release (Unsuccessful)"> |
| <link rel="prev" href="verifying-releases.html" title="Verifying Releases"> |
| </head> |
| <body class="article"> |
| <header class="header"> |
| <nav class="navbar"> |
| <div class="navbar-brand"> |
| <a class="navbar-item" href="https://isis.apache.org"> |
| <span class="icon"> |
| <img src="../../_/img/isis-logo-48x48.png"></img> |
| </span> |
| <span>Apache Isis</span> |
| </a> |
| <button class="navbar-burger" data-target="topbar-nav"> |
| <span></span> |
| <span></span> |
| <span></span> |
| </button> |
| </div> |
| <div id="topbar-nav" class="navbar-menu"> |
| <a class="navbar-end"> |
| <div class="navbar-item has-dropdown is-hoverable"> |
| <a class="navbar-link" href="#">Quick Start</a> |
| <div class="navbar-dropdown"> |
| <span class="navbar-item navbar-heading">Starter Apps</span> |
| <a class="navbar-item" href="../../docs/latest/starters/helloworld.html">Hello World</a> |
| <a class="navbar-item" href="../../docs/latest/starters/simpleapp.html">Simple App</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Demos & Tutorials</span> |
| <a class="navbar-item" href="../../docs/latest/demo/about.html">Demo App</a> |
| <a class="navbar-item" href="https://danhaywood.gitlab.io/isis-petclinic-tutorial-docs/petclinic/1.16.2/intro.html">Petclinic (tutorial)</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Resources</span> |
| <a class="navbar-item" href="../../docs/latest/resources/cheatsheet.html">Cheatsheet</a> |
| <a class="navbar-item" href="../../docs/latest/resources/icons.html">Icons</a> |
| </div> |
| </div> |
| <div class="navbar-item has-dropdown is-hoverable"> |
| <a class="navbar-link" href="#">Guides</a> |
| <div class="navbar-dropdown"> |
| <span class="navbar-item navbar-heading">Development</span> |
| <a class="navbar-item" href="../../setupguide/latest/about.html">Setup Guide</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Core</span> |
| <a class="navbar-item" href="../../userguide/latest/about.html">User Guide</a> |
| <a class="navbar-item" href="../../refguide/latest/about.html">Reference Guide</a> |
| <a class="navbar-item" href="../../testing/latest/about.html">Testing Guide</a> |
| </div> |
| </div> |
| <div class="navbar-item has-dropdown is-hoverable"> |
| <a class="navbar-link" href="#">Libraries</a> |
| <div class="navbar-dropdown"> |
| <span class="navbar-item navbar-heading">For Use in Apps</span> |
| <a class="navbar-item" href="../../subdomains/latest/about.html">Subdomain Libraries</a> |
| <a class="navbar-item" href="../../valuetypes/latest/about.html">Value Types</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Integrate between Apps</span> |
| <a class="navbar-item" href="../../mappings/latest/about.html">Bounded Context Mapping Libraries</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Other</span> |
| <a class="navbar-item" href="../../incubator/latest/about.html">Incubator</a> |
| <a class="navbar-item" href="../../legacy/latest/about.html">Legacy</a> |
| </div> |
| </div> |
| <div class="navbar-item has-dropdown is-hoverable"> |
| <a class="navbar-link" href="#">Components</a> |
| <div class="navbar-dropdown"> |
| <span class="navbar-item navbar-heading">Viewers</span> |
| <a class="navbar-item" href="../../vw/latest/about.html">Wicket UI</a> |
| <a class="navbar-item" href="../../vro/latest/about.html">Restful Objects (REST)</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Security</span> |
| <a class="navbar-item" href="../../security/latest/about.html">Security Guide</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Persistence</span> |
| <a class="navbar-item" href="../../pjdo/latest/about.html">DataNucleus (JDO)</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Extensions</span> |
| <a class="navbar-item" href="../../extensions/latest/about.html">Extensions Catalog</a> |
| </div> |
| </div> |
| <div class="navbar-item has-dropdown is-hoverable"> |
| <a class="navbar-link" href="#">Support</a> |
| <div class="navbar-dropdown"> |
| <span class="navbar-item navbar-heading">Contact</span> |
| <a class="navbar-item" href="../../docs/latest/support/slack-channel.html">Slack</a> |
| <a class="navbar-item" href="../../docs/latest/support/mailing-list.html">Mailing Lists</a> |
| <a class="navbar-item" href="https://issues.apache.org/jira/browse/ISIS">JIRA</a> |
| <a class="navbar-item" href="https://stackoverflow.com/questions/tagged/isis">Stack Overflow</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Releases</span> |
| <a class="navbar-item" href="../../docs/latest/downloads/how-to.html">Downloads</a> |
| <a class="navbar-item" href="../../relnotes/latest/about.html">Release Notes</a> |
| <a class="navbar-item" href="../../docs/latest/archive/1-x.html">Archive (1.x)</a> |
| <hr class="navbar-divider"/> |
| <span class="navbar-item navbar-heading">Framework</span> |
| <a class="navbar-item" href="../../conguide/latest/about.html">Contributors' Guide</a> |
| <a class="navbar-item" href="../../comguide/latest/about.html">Committers' Guide</a> |
| <a class="navbar-item" href="../../core/latest/about.html">Core Design</a> |
| </div> |
| </div> |
| <div class="navbar-item has-dropdown is-hoverable"> |
| <a class="navbar-link" href="#">ASF</a> |
| <div class="navbar-dropdown"> |
| <a class="navbar-item" href="http://www.apache.org/">Apache Homepage</a> |
| <a class="navbar-item" href="https://www.apache.org/events/current-event">Events</a> |
| <a class="navbar-item" href="https://www.apache.org/licenses/">Licenses</a> |
| <a class="navbar-item" href="https://www.apache.org/security/">Security</a> |
| <a class="navbar-item" href="https://www.apache.org/foundation/sponsorship.html">Sponsorship</a> |
| <a class="navbar-item" href="https://www.apache.org/foundation/thanks.html">Thanks</a> |
| <hr class="navbar-divider"/> |
| <a class="navbar-item" href="https://whimsy.apache.org/board/minutes/Isis.html">PMC board minutes</a> |
| </div> |
| </div> |
| <a class="navbar-item" href="../../docs/latest/about.html"> |
| <span class="icon"> |
| <img src="../../_/img/home.png"></img> |
| </span> |
| </a> |
| </div> |
| </div> |
| </nav> |
| </header> |
| <div class="body "> |
| <div class="nav-container" data-component="comguide" data-version="2.0.0-M3"> |
| <aside class="nav"> |
| <div class="panels"> |
| <div class="nav-panel-pagination"> |
| <a class="page-previous" rel="prev" href="verifying-releases.html" title="Verifying Releases"><span></span></a> |
| <a class="page-next" rel="next" |
| href="post-release-unsuccessful.html" title="Post Release (Unsuccessful)"><span></span></a> |
| <!-- |
| page.parent doesn't seem to be set... |
| <a class="page-parent disabled" rel="prev" href="" title="Verifying Releases"><span></span></a> |
| --> |
| </div> |
| <div class="nav-panel-menu is-active" data-panel="menu"> |
| <nav class="nav-menu"> |
| <h3 class="title"><a href="about.html">Committers' Guide</a></h3> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="0"> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="merging-a-pull-request.html">Merging a Pull Request</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="applying-patches.html">Applying Patches</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="cutting-a-release.html">Cutting a Release</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="verifying-releases.html">Verifying Releases</a> |
| </li> |
| <li class="nav-item is-current-page" data-depth="1"> |
| <a class="nav-link" href="post-release-successful.html">Post Release (Successful)</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="post-release-unsuccessful.html">Post Release (Unsuccessful)</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="release-process-for-interim-releases.html">Interim Releases</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="key-generation.html">Key Generation</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="release-process-prereqs.html">Appendix: Release Process Prereqs</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="policies.html">Appendix: Policies</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="pmc-notes.html">Appendix: PMC Notes</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </nav> |
| </div> |
| <div class="nav-panel-explore" data-panel="explore"> |
| <div class="context"> |
| <span class="title">Committers' Guide</span> |
| <span class="version">2.0.0-M3</span> |
| </div> |
| <ul class="components"> |
| <li class="component"> |
| <span class="title"> </span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../docs/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">BC Mappings Catalog</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../mappings/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component is-current"> |
| <span class="title">Committers' Guide</span> |
| <ul class="versions"> |
| <li class="version is-current is-latest"> |
| <a href="about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Contributors' Guide</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../conguide/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Design Docs</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../core/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Extensions Catalog</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../extensions/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Incubator Catalog</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../incubator/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">JDO/DataNucleus</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../pjdo/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Legacy Catalog</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../legacy/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Reference Guide</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../refguide/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Release Notes</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../relnotes/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Restful Objects Viewer</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../vro/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Security Guide</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../security/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Setup Guide</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../setupguide/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Subdomains Catalog</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../subdomains/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Testing Guide</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../testing/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">User Guide</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../userguide/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Value Types Catalog</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../valuetypes/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| <li class="component"> |
| <span class="title">Wicket Viewer</span> |
| <ul class="versions"> |
| <li class="version is-latest"> |
| <a href="../../vw/2.0.0-M3/about.html">2.0.0-M3</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </aside> |
| </div> |
| <main role="main"> |
| <div class="toolbar" role="navigation"> |
| <button class="nav-toggle"></button> |
| <a href="../../docs/2.0.0-M3/about.html" class="home-link"></a> |
| <nav class="breadcrumbs" aria-label="breadcrumbs"> |
| <ul> |
| <li><a href="about.html">Committers' Guide</a></li> |
| <li><a href="post-release-successful.html">Post Release (Successful)</a></li> |
| </ul> |
| </nav> |
| <div class="edit-this-page"><a href="https://github.com/apache/isis/edit/2.0.0-M3/antora/components/comguide/modules/ROOT/pages/post-release-successful.adoc">Edit</a></div> |
| </div> |
| <article class="doc"> |
| <a name="section-top"></a> |
| <h1 class="page">Post Release (Successful)</h1> |
| <div id="preamble"> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>The release process consists of:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>the release manager <a href="cutting-a-release.html" class="page">cutting the release</a></p> |
| </li> |
| <li> |
| <p>members of the Apache Isis PMC <a href="verifying-releases.html" class="page">verifying</a> and voting on the release</p> |
| </li> |
| <li> |
| <p>the release manager performing post-release tasks, for either a successful or an <a href="post-release-unsuccessful.html" class="page">unsuccessful</a> vote (former documented below)</p> |
| </li> |
| </ul> |
| </div> |
| <div class="paragraph"> |
| <p>For a vote to succeed, there must be +3 votes from PMC members, and the vote must have been open at least 72 hours. |
| If there are not +3 votes after this time then it is perfectly permissible to keep the vote open longer.</p> |
| </div> |
| <div class="paragraph"> |
| <p>This section describes the steps to perform if the vote has been successful.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="inform-dev-ml"><a class="anchor" href="#inform-dev-ml"></a>Inform dev ML</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Post the results to the <code>dev@isis.a.o</code> mailing list:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code>[RESULT] [VOTE] Apache Isis Core release 2.0.0-M3</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>using the body (alter last line as appropriate):</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code>The vote has completed with the following result : |
| |
| +1 (binding): ... list of names ... |
| +1 (non binding): ... list of names ... |
| |
| -1 (binding): ... list of names ... |
| -1 (non binding): ... list of names ... |
| |
| The vote is SUCCESSFUL. |
| |
| I\'ll now go ahead and complete the post-release activities.</code></pre> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="release-to-maven-central"><a class="anchor" href="#release-to-maven-central"></a>Release to Maven Central</h2> |
| <div class="sectionbody"> |
| <div class="admonitionblock caution"> |
| <table> |
| <tr> |
| <td class="icon"> |
| <i class="fa icon-caution" title="Caution"></i> |
| </td> |
| <td class="content"> |
| We release from Maven Central before anything else; we don’t want to push the git tags (an irreversible action) until we know that this has worked ok. |
| </td> |
| </tr> |
| </table> |
| </div> |
| <div class="paragraph"> |
| <p>From the <a href="http://repository.apache.org">ASF Nexus repository</a>, select the staging repository and select 'release' from the top menu.</p> |
| </div> |
| <div class="imageblock"> |
| <div class="content"> |
| <a class="image" href="_images/release-process/nexus-release-1.png"><img src="_images/release-process/nexus-release-1.png" alt="nexus release 1" width="600px"></a> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>This moves the release artifacts into an Apache releases repository; from there they will be automatically moved to the Maven repository.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="set-environment-variables"><a class="anchor" href="#set-environment-variables"></a>Set environment variables</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>As we did for the cutting of the release, we set environment variables to parameterize the following steps:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">export ISISJIRA=ISIS-9999 <i class="conum" data-value="1"></i><b>(1)</b> |
| export ISISTMP=/c/tmp <i class="conum" data-value="2"></i><b>(2)</b> |
| export ISISREL=2.0.0-M3 <i class="conum" data-value="3"></i><b>(3)</b> |
| export ISISRC=RC1 <i class="conum" data-value="4"></i><b>(4)</b> |
| export ISISBRANCH=release-$ISISREL-$ISISRC |
| export ISISART=isis |
| |
| env | grep ISIS | sort</code></pre> |
| </div> |
| </div> |
| <div class="colist arabic"> |
| <table> |
| <tr> |
| <td><i class="conum" data-value="1"></i><b>1</b></td> |
| <td>set to an "umbrella" ticket for all release activities. |
| (One should exist already, <a href="#create-new-jira">created at</a> the beginning of the development cycle now completing).</td> |
| </tr> |
| <tr> |
| <td><i class="conum" data-value="2"></i><b>2</b></td> |
| <td>adjust by platform</td> |
| </tr> |
| <tr> |
| <td><i class="conum" data-value="3"></i><b>3</b></td> |
| <td>adjust as required</td> |
| </tr> |
| <tr> |
| <td><i class="conum" data-value="4"></i><b>4</b></td> |
| <td>adjust as necessary if there was more than one attempt to release</td> |
| </tr> |
| </table> |
| </div> |
| <div class="paragraph"> |
| <p>Open up a terminal, and switch to the correct release branch:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git checkout $ISISBRANCH</code></pre> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="update-tags"><a class="anchor" href="#update-tags"></a>Update tags</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Replace the <code>-RCn</code> tag with another without the qualifier.</p> |
| </div> |
| <div class="paragraph"> |
| <p>You can do this using the <code>scripts/promoterctag.sh</code> script; for example:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">sh scripts/promoterctag.sh $ISISART-$ISISREL $ISISRC</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>This script pushes the tag under <code>refs/tags/rel</code>. |
| As per Apache policy (communicated on 10th Jan 2016 to Apache PMCs), this path is 'protected' and is unmodifiable (guaranteeing the provenance that the ASF needs for releases).</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="update-jira"><a class="anchor" href="#update-jira"></a>Update JIRA</h2> |
| <div class="sectionbody"> |
| <div class="sect2"> |
| <h3 id="close-tickets"><a class="anchor" href="#close-tickets"></a>Close tickets</h3> |
| <div class="paragraph"> |
| <p>Close all JIRA tickets for the release, or moved to future releases if not yet addressed. |
| Any tickets that were partially implemented should be closed, and new tickets created for the functionality on the ticket not yet implemented.</p> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="generate-release-notes"><a class="anchor" href="#generate-release-notes"></a>Generate Release Notes</h3> |
| <div class="paragraph"> |
| <p>From the root directory, generate the release notes for the current release, in Asciidoc format; eg:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">sh scripts/jira-release-notes.sh ISIS $ISISREL > /tmp/1</code></pre> |
| </div> |
| </div> |
| <div class="admonitionblock note"> |
| <table> |
| <tr> |
| <td class="icon"> |
| <i class="fa icon-note" title="Note"></i> |
| </td> |
| <td class="content"> |
| <div class="paragraph"> |
| <p>This script uses 'jq' to parse JSON. |
| See the script itself for details of how to install this utility.</p> |
| </div> |
| </td> |
| </tr> |
| </table> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="mark-the-version-as-released"><a class="anchor" href="#mark-the-version-as-released"></a>Mark the version as released</h3> |
| <div class="paragraph"> |
| <p>In JIRA, go to the <a href="https://issues.apache.org/jira/plugins/servlet/project-config/ISIS/versions">administration section</a> for the Apache Isis project and update the version as being released.</p> |
| </div> |
| <div class="paragraph"> |
| <p>In the <a href="https://issues.apache.org/jira/secure/RapidBoard.jspa?rapidView=87">Kanban view</a> this will have the effect of marking all tickets as released (clearing the "done" column).</p> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="create-new-jira"><a class="anchor" href="#create-new-jira"></a>Create new JIRA</h3> |
| <div class="paragraph"> |
| <p>Create a new JIRA ticket as a catch-all for the <em>next</em> release.</p> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="update-release-notes"><a class="anchor" href="#update-release-notes"></a>Update Release Notes</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>In the main <code>isis</code> repo (ie containing the asciidoc source):</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Create a new <code>relnotes.adoc</code> file to hold the JIRA-generated release notes generated above.</p> |
| <div class="paragraph"> |
| <p>This should live in <code>antora/components/relnotes/modules/ROOT/pages/yyyy/vvv/relnotes.adoc</code></p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>where <code>yyyy</code> is the year</p> |
| </li> |
| <li> |
| <p>where <code>vvv</code> is the version number</p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p>Update the <code>nav.adoc</code> file to reference these release notes</p> |
| <div class="paragraph"> |
| <p>In <code>antora/components/relnotes/ROOT/nav.adoc</code></p> |
| </div> |
| </li> |
| <li> |
| <p>Update the table in the <code>about.adoc</code> summary</p> |
| <div class="paragraph"> |
| <p>In <code>antora/components/relnotes/ROOT/pages/about.adoc</code></p> |
| </div> |
| </li> |
| <li> |
| <p>update the <code>doap_isis.rdf</code> file (which provides a machine-parseable description of the project) with details of the new release. |
| Validate using the <a href="http://www.w3.org/RDF/Validator/">W3C RDF Validator</a> service.</p> |
| <div class="admonitionblock tip"> |
| <table> |
| <tr> |
| <td class="icon"> |
| <i class="fa icon-tip" title="Tip"></i> |
| </td> |
| <td class="content"> |
| For more on DOAP files, see these <a href="http://projects.apache.org/doap.html">Apache policy docs</a>. |
| </td> |
| </tr> |
| </table> |
| </div> |
| </li> |
| <li> |
| <p>Update the <a href="https://github.com/apache/isis/blob/master/STATUS">STATUS</a> file (in root of Apache Isis' source) should be updated with details of the new release.</p> |
| </li> |
| <li> |
| <p>commit the changes</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git add . |
| git commit -m "$ISISJIRA: updates release notes, STATUS and doap_isis.rdf"</code></pre> |
| </div> |
| </div> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="release-source-zip"><a class="anchor" href="#release-source-zip"></a>Release Source Zip</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>As described in the <a href="http://www.apache.org/dev/release-publishing.html#distribution_dist">Apache documentation</a>, each Apache TLP has a <code>release/TLP-name</code> directory in the distribution Subversion repository at <a href="https://dist.apache.org/repos/dist">https://dist.apache.org/repos/dist</a>. |
| Once a release vote passes, the release manager should <code>svn add</code> the artifacts (plus signature and hash files) into this location. |
| The release is then automatically pushed to <a href="http://www.apache.org/dist/">http://www.apache.org/dist/</a> by <code>svnpubsub</code>. |
| Only the most recent release of each supported release line should be contained here, old versions should be deleted.</p> |
| </div> |
| <div class="paragraph"> |
| <p>Each project is responsible for the structure of its directory. |
| The directory structure of Apache Isis reflects the directory structure in our git source code repo:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code>isis/ |
| core/</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>If necessary, checkout this directory structure:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">svn co https://dist.apache.org/repos/dist/release/isis isis-dist</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>Next, add the new release into the appropriate directory, and delete any previous release. |
| The <code>upd.sh</code> script can be used to automate this:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">old_ver=$1 |
| new_ver=$2 |
| |
| |
| # constants |
| repo_root=https://repository.apache.org/content/repositories/releases/org/apache/isis |
| |
| zip="source-release.zip" |
| asc="$zip.asc" |
| md5="$zip.md5" |
| |
| |
| # |
| # isis-core |
| # |
| type="core" |
| fullname="isis" |
| pushd isis-core |
| |
| curl -O $repo_root/$type/$fullname/$new_ver/$fullname-$new_ver-$asc |
| svn add $fullname-$new_ver-$asc |
| curl -O $repo_root/$type/$fullname/$new_ver/$fullname-$new_ver-$md5 |
| svn add $fullname-$new_ver-$md5 |
| curl -O $repo_root/$type/$fullname/$new_ver/$fullname-$new_ver-$zip |
| svn add $fullname-$new_ver-$zip |
| |
| svn delete $fullname-$old_ver-$asc |
| svn delete $fullname-$old_ver-$md5 |
| svn delete $fullname-$old_ver-$zip |
| |
| popd</code></pre> |
| </div> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">sh upd.sh [previous_release] 2.0.0-M3</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>The script downloads the artifacts from the Nexus release repository, adds the artifacts to subversion and deletes the previous version.</p> |
| </div> |
| <div class="paragraph"> |
| <p>Double check that the files are correct; there is sometimes a small delay in the files becoming available in the release repository. |
| It should be sufficient to check just the <code>md5</code> or <code>.asc</code> files that these look valid (aren’t HTML 404 error pages):</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">vi `find . -name *.md5`</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>Assuming all is good, commit the changes:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code>svn commit -m "publishing isis source releases to dist.apache.org"</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>If the files are invalid, then revert using <code>svn revert . --recursive</code> and try again in a little while.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="final-website-updates"><a class="anchor" href="#final-website-updates"></a>Final website updates</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Apply any remaining documentation updates:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>If there have been documentation changes made in other branches since the release branch was created, then merge these in.</p> |
| </li> |
| <li> |
| <p>If there have been updates to any of the schemas, copy them over:</p> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>copy the new schema(s) from <code>api/schema/src/main/resources/o.a.i.s.xxx</code></p> |
| <div class="paragraph"> |
| <p>to its versioned:</p> |
| </div> |
| <div class="paragraph"> |
| <p><code>antora/supplemental-ui/schema/xxx/xxx-ver.xsd</code></p> |
| </div> |
| </li> |
| <li> |
| <p>ensure the non-versioned is same as the highest versioned</p> |
| <div class="paragraph"> |
| <p><code>antora/supplemental-ui/schema/xxx/xxx.xsd</code></p> |
| </div> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p>Commit the changes:</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git add . |
| git commit -m "$ISISJIRA: merging in final changes to docs"</code></pre> |
| </div> |
| </div> |
| </li> |
| </ul> |
| </div> |
| <div class="paragraph"> |
| <p>We are now ready to <a href="#generate-website">generate the website</a>.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="generate-website"><a class="anchor" href="#generate-website"></a>Generate website</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>We use Antora to generate the site, not only the version being release but also any previous versions listed in <code>site.yml</code>. |
| This is done using the <code>content.sources.url[].branches</code> properties. |
| We use branches for all cases - note that the branch name appears in the generated UI. |
| If there are patches to the documentation, we move the branches.</p> |
| </div> |
| <div class="paragraph"> |
| <p>We therefore temporarily modify all of the <code>antora.yml</code> files (and update <code>index.html</code>) file and create a branch for this change; then we update <code>site.yml</code> with a reference to that new branch. |
| All of this is changed afterwards.</p> |
| </div> |
| <div class="sect2"> |
| <h3 id="create-doc-branch"><a class="anchor" href="#create-doc-branch"></a>Create doc branch</h3> |
| <div class="paragraph"> |
| <p>First, we prepare a doc branch to reference:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Update all <code>antora.yml</code> files, eg using an IDE:</p> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><code>version: latest</code> → <code>version: 2.0.0-M3</code></p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p>Commit all these changes:</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git add . |
| git commit -m "$ISISJIRA: bumps antora.yml and index.html to $ISISREL"</code></pre> |
| </div> |
| </div> |
| </li> |
| </ul> |
| </div> |
| <div class="paragraph"> |
| <p>We now create a branch to reference in the <code>site.yml</code>, later on.</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>We create the <code>2.0.0-M3</code> branch.</p> |
| <div class="paragraph"> |
| <p>This mirrors the "rel/isis-2.0.0-M3" used for the formal (immutable) release tag, but is a branch because it allows us to move it, and must have this simplified name as it is used in the "edit page" link of the site template.</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git branch 2.0.0-M3 |
| git push origin 2.0.0-M3</code></pre> |
| </div> |
| </div> |
| </li> |
| </ul> |
| </div> |
| <div class="paragraph"> |
| <p>Finally, revert the last commit (backing out changes to <code>antora.yml</code> files):</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git revert HEAD</code></pre> |
| </div> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="update-index-html-site-yml-generate"><a class="anchor" href="#update-index-html-site-yml-generate"></a>Update <code>index.html</code> & site.yml` & generate</h3> |
| <div class="paragraph"> |
| <p>Lastly, we update <code>index.html</code> and then <code>site.yml</code></p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Update the home page of the website, <code>antora/supplemental-ui/index.html</code></p> |
| <div class="paragraph"> |
| <p>Note that this isn’t performed in the docs branch (<a href="#create-doc-branch">previous section</a>) because the supplemental files are <em>not</em> versioned as a doc component:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>update any mention of <code>master</code> → <code>2.0.0-M3</code></p> |
| <div class="paragraph"> |
| <p>This should be the two sets of starter app instructions for helloworld and simpleapp.</p> |
| </div> |
| </li> |
| <li> |
| <p>update any mention of <code>latest</code> → <code>2.0.0-M3</code></p> |
| <div class="paragraph"> |
| <p>This should be in hyperlinks, <code><a href="docs/…​"></code></p> |
| </div> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p>Now update <code>site.yml</code></p> |
| <div class="paragraph"> |
| <p>This will reference the new branch (and any previous branches). |
| Every content source needs to be updated:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><code>branches: HEAD</code> → <code>branches: 2.0.0-M3</code></p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p>commit this change, too (there’s no need to push):</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git add . |
| git commit -m "$ISISJIRA: adds tag to site.yml"</code></pre> |
| </div> |
| </div> |
| </li> |
| </ul> |
| </div> |
| <div class="paragraph"> |
| <p>We are now in a position to actually generate the Antora website:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>generate the website:</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">sh preview.sh</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>This will write to <code>antora/target/site</code>; we’ll use the results in the <a href="#publish-website">next section</a>.</p> |
| </div> |
| </li> |
| </ul> |
| </div> |
| <div class="paragraph"> |
| <p>Finally, revert the last commit (backing out changes to <code>site.yml</code>):</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git revert HEAD</code></pre> |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="publish-website"><a class="anchor" href="#publish-website"></a>Publish website</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>We now copy the results of the Antora website generation over to the <code>isis-site</code> repo:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>in the <code>isis-site</code> repo, check out the <code>asf-site</code> branch:</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">cd ../isis-site |
| |
| git checkout asf-site |
| git pull --ff-only</code></pre> |
| </div> |
| </div> |
| </li> |
| <li> |
| <p>still in the <code>isis-site</code> repo, delete all the files in <code>content/</code> <em>except</em> for the <code>schema</code> and <code>versions</code> directories:</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">pushd content |
| for a in $(ls -1 | grep -v schema | grep -v versions) |
| do |
| rm -rf $a |
| done |
| popd</code></pre> |
| </div> |
| </div> |
| </li> |
| <li> |
| <p>Copy the generated Antora site to <code>isis-site</code> repo’s <code>contents</code> directory:</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">cd ../isis |
| |
| cp -Rf antora/target/site/* ../isis-site/content/.</code></pre> |
| </div> |
| </div> |
| </li> |
| <li> |
| <p>Back in the <code>isis-site</code> repo, commit the changes and preview:</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">cd ../isis-site |
| |
| git add . |
| git commit -m "$ISISJIRA : production changes to website" |
| |
| sh preview.sh</code></pre> |
| </div> |
| </div> |
| </li> |
| <li> |
| <p>If everything looks ok, then push the changes to make live, and switch back to the <code>isis</code> repo:</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git push origin asf-site |
| |
| cd ../isis</code></pre> |
| </div> |
| </div> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="merge-in-release-branch"><a class="anchor" href="#merge-in-release-branch"></a>Merge in release branch</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Because we release from a branch, the changes made in the branch should be merged back from the release branch back into the <code>master</code> branch.</p> |
| </div> |
| <div class="paragraph"> |
| <p>In the <code>isis</code> repo:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">git checkout master # update master with latest |
| git pull |
| git merge release-2.0.0-M3-RC1 # merge branch onto master |
| git push origin --delete release-2.0.0-M3-RC1 # remote branch no longer needed |
| git branch -d release-2.0.0-M3-RC1 # branch no longer needed</code></pre> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="bump-isisrel-in-site-yml"><a class="anchor" href="#bump-isisrel-in-site-yml"></a>Bump {isisrel} in <code>site.yml</code></h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>In <code>site.yml</code> file, bump the version of <code>{isisrel}</code>, and commit.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="update-the-asf-reporter-website"><a class="anchor" href="#update-the-asf-reporter-website"></a>Update the ASF Reporter website</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Log the new release in the <a href="https://reporter.apache.org/addrelease.html?isis">ASF Reporter website</a>.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="announce-the-release"><a class="anchor" href="#announce-the-release"></a>Announce the release</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Announce the release to <a href="mailto:users@isis.apache.org">users mailing list</a>.</p> |
| </div> |
| <div class="paragraph"> |
| <p>For example, for a release of Apache Isis Core, use the following subject:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code>[ANN] Apache Isis version 2.0.0-M3 Released</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>And use the following body (summarizing the main points as required):</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code>The Apache Isis team is pleased to announce the release of Apache Isis 2.0.0-M3. |
| |
| New features in this release include: |
| |
| * ... |
| |
| Full release notes are available on the Apache Isis website at [1]. |
| |
| You can access this release directly from the Maven central repo [2]. |
| Alternatively, download the release and build it from source [3]. |
| |
| Enjoy! |
| |
| --The Apache Isis team |
| |
| [1] http://isis.apache.org/relnotes/latest/about.html |
| [2] http://search.maven.org |
| [3] http://isis.apache.org/downloads.html</code></pre> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="blog-post"><a class="anchor" href="#blog-post"></a>Blog post</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p><a href="https://blogs.apache.org/roller-ui/login.rol">Log onto</a> the <a href="http://blogs.apache.org/isis/">Apache blog</a> and create a new post. |
| Copy-n-paste the above mailing list announcement should suffice.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="update-dependencies"><a class="anchor" href="#update-dependencies"></a>Update dependencies</h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>With the release complete, now is a good time to bump versions of dependencies (so that there is a full release cycle to identify any possible issues).</p> |
| </div> |
| <div class="paragraph"> |
| <p>You will probably want to create a new JIRA ticket for these updates (or if minor then use the "catch-all" JIRA ticket raised earlier for the next release).</p> |
| </div> |
| <div class="sect2"> |
| <h3 id="merge-in-any-changes-from-org-apacheapache"><a class="anchor" href="#merge-in-any-changes-from-org-apacheapache"></a>Merge in any changes from <code>org.apache:apache</code></h3> |
| <div class="paragraph"> |
| <p>Check (via <a href="http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.apache%22%20a%3A%22apache%22">search.maven.org</a>) whether there is a newer version of the Apache parent <code>org.apache:apache</code>.</p> |
| </div> |
| <div class="paragraph"> |
| <p>If there are, merge in these changes to the <code>core-parent</code> POM.</p> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="update-plugin-versions"><a class="anchor" href="#update-plugin-versions"></a>Update plugin versions</h3> |
| <div class="paragraph"> |
| <p>The <code>maven-versions-plugin</code> should be used to determine if there are newer versions of any of the plugins used to build Apache Isis. |
| Since this goes off to the internet, it may take a minute or two to run:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">mvn versions:display-plugin-updates > /tmp/foo |
| grep "\->" /tmp/foo | /bin/sort -u</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>Review the generated output and make updates as you see fit. |
| (However, if updating, please check by searching for known issues with newer versions).</p> |
| </div> |
| </div> |
| <div class="sect2"> |
| <h3 id="update-dependency-versions"><a class="anchor" href="#update-dependency-versions"></a>Update dependency versions</h3> |
| <div class="paragraph"> |
| <p>The <code>maven-versions-plugin</code> should be used to determine if there are newer versions of any of Isis' dependencies. |
| Since this goes off to the internet, it may take a minute or two to run:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">mvn versions:display-dependency-updates > /tmp/foo |
| grep "\->" /tmp/foo | /bin/sort -u</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>Update any of the dependencies that are out-of-date. |
| That said, do note that some dependencies may show up with a new dependency, when in fact the dependency is for an old, badly named version. |
| Also, there may be new dependencies that you do not wish to move to, eg release candidates or milestones.</p> |
| </div> |
| <div class="paragraph"> |
| <p>For example, here is a report showing both of these cases:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">[INFO] asm:asm ..................................... 3.3.1 -> 20041228.180559 |
| [INFO] commons-httpclient:commons-httpclient .......... 3.1 -> 3.1-jbossorg-1 |
| [INFO] commons-logging:commons-logging ......... 1.1.1 -> 99.0-does-not-exist |
| [INFO] dom4j:dom4j ................................. 1.6.1 -> 20040902.021138 |
| [INFO] org.datanucleus:datanucleus-api-jdo ................ 3.1.2 -> 3.2.0-m1 |
| [INFO] org.datanucleus:datanucleus-core ................... 3.1.2 -> 3.2.0-m1 |
| [INFO] org.datanucleus:datanucleus-jodatime ............... 3.1.1 -> 3.2.0-m1 |
| [INFO] org.datanucleus:datanucleus-rdbms .................. 3.1.2 -> 3.2.0-m1 |
| [INFO] org.easymock:easymock ................................... 2.5.2 -> 3.1 |
| [INFO] org.jboss.resteasy:resteasy-jaxrs ............. 2.3.1.GA -> 3.0-beta-1</code></pre> |
| </div> |
| </div> |
| <div class="paragraph"> |
| <p>For these artifacts you will need to search <a href="http://search.maven.org">Maven central repo</a> directly yourself to confirm there are no newer dependencies not shown in this list.</p> |
| </div> |
| </div> |
| </div> |
| </div> |
| </article> |
| <aside class="article-aside toc" role="navigation"> |
| <p class="toc-title">On this page</p> |
| <div id="article-toc"></div> |
| </aside> |
| </main> |
| </div> |
| <footer class="footer"> |
| <div class="content"> |
| <div class="copyright"> |
| <p> |
| Copyright © 2010~2020 The Apache Software Foundation, licensed under the Apache License, v2.0. |
| <br/> |
| Apache, the Apache feather logo, Apache Isis, and the Apache Isis project logo are all trademarks of The Apache Software Foundation. |
| </p> |
| </div> |
| <div class="revision"> |
| <p>Revision: SNAPSHOT</p> |
| </div> |
| </div> |
| </footer> |
| <script src="../../_/js/site.js"></script> |
| <script async src="../../_/js/vendor/highlight.js"></script> |
| <script src="../../_/js/vendor/jquery-3.4.1.min.js"></script> |
| <script src="../../_/js/vendor/jquery-ui-1.12.1.custom.widget-only.min.js"></script> |
| <script src="../../_/js/vendor/jquery.tocify.min.js"></script> |
| |
| <script> |
| $(function() { |
| $("#article-toc").tocify( { |
| showEffect: "slideDown", |
| hashGenerator: "pretty", |
| hideEffect: "slideUp", |
| selectors: "h2, h3", |
| scrollTo: 120, |
| smoothScroll: true, |
| theme: "jqueryui", |
| highlightOnScroll: true |
| } ); |
| }); |
| </script> |
| </body> |
| </html> |