<p>Benjamin Keith Ford <strong>uploaded patch set #8</strong> to this change.</p><p><a href="https://gerrit.asterisk.org/c/repotools/+/10941">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">build: Improve handling of CHANGES and UPGRADE.txt for releases.<br><br>The release script now handles the merging of the CHANGES and<br>UPGRADE.txt files for us! When a release is being done, the script will<br>go through the staging changes in the Asterisk working directory<br>(<asterisk-home>/doc/<file>-staging) and add each change to the<br>corresponding file. A separate script (process-staging-changes) has also<br>been added that can be used when creating a new version from master. It<br>takes 3 arguments: -l/--local-root, which is optional,<br>-s/--start-version, and -e/--end-version. You can use -h for more<br>information on each option. Another script has been added that should be<br>run after process-staging-changes. This script is called<br>commit-staging-changes. It will go through all unstaged changes, add<br>them, and then commit them to the local repository. Then it will push<br>these changes to the remote. These scripts should be used for master or<br>if we need to do things manually (for some reason).<br><br>This means that there's a new way to document our major changes. All<br>changes for CHANGES will go into doc/CHANGES-staging and all changes for<br>UPGRADE.txt will go into doc/UPGRADE-staging. Each of these files should<br>have a meaningful name related to what the change is. For example, if<br>you made a change to something in pjsip, your file might be called<br>"res_pjsip_relative_title", where "relative_title" will be something a<br>little more descriptive than that. Inside of each file, you will have a<br>subject (1 or more) and corresponding headers (as of right now, the only<br>header is 'Master-Only'), with the description of the change following<br>that. You can have multiple subject lines in one file. For example, it<br>may look something like this:<br><br>   Subject: res_pjsip<br>   Subject: Core<br><br>   This is a detailed description of what I changed.<br><br>   You can have new lines in between as well, spacing is handled by the<br>   release script!<br><br>The header lines (Subject:) are case sensative. One thing to note is<br>that master is different. Since changes that are master-only will only<br>go into the master branch, we add another special tag (Master-Only) that<br>will go underneath the "Subject:" header. Note that it doesn't have to<br>go under the "Subject:" headers, but it makes it easier to read. There<br>should be no space between these.<br><br>   Subject: res_ari<br>   Master-Only: true<br><br>   This is a master-only change! You can put "True" or "true".<br><br>Note that the "Master-Only" header will only ever be true. There should<br>not be any scenarios where there will be a "Master-Only" header with the<br>value false.<br><br>For master (and possibly other releases), it will be necessary to do<br>some of this manually before running the mkrelease.py script. This is<br>because when cutting a major release (like from 16 to 17), the mainline<br>branch will never be master, so master must have these changes made<br>manually. The easiest way to do this is to make the changes before<br>cutting the new branch, so that the work does not need to be done twice.<br>Here's an example (run from the repotools dir):<br><br>   ./process-staging-changes -s 16 -e 17<br>   (check the working dir to make sure it looks correct)<br>   ./commit-staging-changes -v 17<br><br>Note that both of these scripts take an optional parameter (-l /<br>--local-root). This works the exact same way as in the mkrelease.py<br>script. If you are not working from the default directory (/tmp), you<br>MUST specify the path with this option.<br><br>Fore more information, check out the wiki page:<br>https://wiki.asterisk.org/wiki/display/AST/CHANGES+and+UPGRADE.txt<br><br>First step for ASTERISK_28111. The directories will need to be added,<br>and all changes will need to be refactored into these directories. Also,<br>the UPGRADE.txt file will no longer branch off into different files for<br>each release of a new major version, so these should be merged together<br>as well to reduce clutter.<br><br>Change-Id: I6dc084afedaeecaf36aaec66c3cf6a5a8ed4ef3c<br>---<br>A commit-staging-changes<br>M digium_git.py<br>M mkrelease.py<br>A process-staging-changes<br>A staging_changes.py<br>5 files changed, 429 insertions(+), 6 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.asterisk.org:29418/repotools refs/changes/41/10941/8</pre><p>To view, visit <a href="https://gerrit.asterisk.org/c/repotools/+/10941">change 10941</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.asterisk.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.asterisk.org/c/repotools/+/10941"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: repotools </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I6dc084afedaeecaf36aaec66c3cf6a5a8ed4ef3c </div>
<div style="display:none"> Gerrit-Change-Number: 10941 </div>
<div style="display:none"> Gerrit-PatchSet: 8 </div>
<div style="display:none"> Gerrit-Owner: Benjamin Keith Ford <bford@digium.com> </div>
<div style="display:none"> Gerrit-Reviewer: Benjamin Keith Ford <bford@digium.com> </div>
<div style="display:none"> Gerrit-Reviewer: George Joseph <gjoseph@digium.com> </div>
<div style="display:none"> Gerrit-Reviewer: Kevin Harwell <kharwell@digium.com> </div>
<div style="display:none"> Gerrit-MessageType: newpatchset </div>