This is an automated email from the ASF dual-hosted git repository.

nightowl888 pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/lucenenet-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new ef856dbe1 website: Updated make-release page with procedures for 
updating .htaccess and for generating automated release notes
ef856dbe1 is described below

commit ef856dbe1186b0c3a56a04464cbe6cfd34b8c6e6
Author: Shad Storhaug <[email protected]>
AuthorDate: Wed Nov 6 19:15:29 2024 +0700

    website: Updated make-release page with procedures for updating .htaccess 
and for generating automated release notes
---
 .htaccess                      |   4 +-
 contributing/make-release.html | 196 +++++++++++++++++++++++++++--------------
 manifest.json                  |  20 +++++
 3 files changed, 150 insertions(+), 70 deletions(-)

diff --git a/.htaccess b/.htaccess
index 578948c69..05acaef2d 100644
--- a/.htaccess
+++ b/.htaccess
@@ -1,4 +1,4 @@
-# 
-----------------------------------------------------------------------------------
+# 
-----------------------------------------------------------------------------------
 #
 # Licensed to the Apache Software Foundation (ASF) under one or more
 # contributor license agreements.  See the NOTICE file distributed with
@@ -42,4 +42,4 @@ RewriteEngine On
 RewriteRule ^docs/latest/(.*)$ /docs/3.0.3/$1 [R=301,L]
 
 # Redirect /docs/absolute-latest/ to /docs/4.8.0-beta00017/
-RewriteRule ^docs/absolute-latest/(.*)$ /docs/4.8.0-beta00017/$1 [R=301,L]
\ No newline at end of file
+RewriteRule ^docs/absolute(-latest|Latest)/(.*)$ /docs/4.8.0-beta00017/$1 
[R=301,L]
diff --git a/contributing/make-release.html b/contributing/make-release.html
index 07b4354d7..a08bdec2b 100644
--- a/contributing/make-release.html
+++ b/contributing/make-release.html
@@ -135,70 +135,11 @@
 </li>
 </ul>
 </li>
-<li><p>Prepare a GitHub Release. Review the <a 
href="https://github.com/apache/lucenenet/commits/master";>master branch commit 
history</a>, and <a 
href="https://github.com/apache/lucenenet/releases/new";>create a new 
<strong>DRAFT</strong> GitHub release</a> using the following template:</p>
-<pre><code class="lang-txt">&gt; This release contains &lt;any important 
changes that users should be aware of&gt;
-
-## Change Log
-
-### Breaking Changes
-* #&lt;GitHub Issue ID (optional)&gt; - &lt;A descriptive title (may need to 
add context or summarize)&gt;
-
-### Bugs
-* #&lt;GitHub Issue ID (optional)&gt; - &lt;A descriptive title (may need to 
add context or summarize)&gt;
-
-### Improvements
-* #&lt;GitHub Issue ID (optional)&gt; - &lt;A descriptive title (may need to 
add context or summarize)&gt;
-
-### New Features
-* #&lt;GitHub Issue ID (optional)&gt; - &lt;A descriptive title (may need to 
add context or summarize)&gt;
-</code></pre>
-<div class="TIP">
-<h5>Tip</h5>
-<p>Click the &quot;Save draft&quot; button frequently during the above updates 
to ensure you don't lose them if your browser crashes.</p>
-</div>
-<div class="NOTE">
-<h5>Note</h5>
-<p>Be sure to check the &quot;This is a pre-release&quot; box as 
appropriate.</p>
-</div>
-</li>
-<li><p>Click the &quot;Save draft&quot; button when finished.</p>
-</li>
-<li><p>Update Website with the release notes</p>
-<p>Only people with permissions on GitHub will be able to see the draft 
release notes. <a 
href="https://people.apache.org/phonebook.html?ctte=lucenenet";>PMC members</a> 
and <a 
href="https://people.apache.org/phonebook.html?unix=lucenenet";>committers</a> 
can have permissions, but only if they set them up themselves. So, we duplicate 
the above information on a release notes page that all subscribers of the 
[email protected] mailing list can view during the release vote.</p>
-<div class="NOTE">
-<h5>Note</h5>
-<p>If the release notes require updating, don't forget the primary place to 
update them are on the GitHub Releases draft page above. It is best to update 
that page and then copy the changes from GitHub Releases to the release notes 
page on the website, then commit the changes and <a 
href="https://lucenenet.apache.org/contributing/documentation.html#website";>publish
 the website</a> as usual.</p>
-</div>
-<ul>
-<li><p>Create a new release notes page in the 
<code>/websites/site/release-notes</code> directory, in most cases it's easiest 
to just copy the previous release notes page.</p>
-<ul>
-<li>Ensure the <code>uid</code> in the header is correct</li>
-<li>Update all headers to the release version number (i.e. 
<code>4.8.0-beta00008</code>)</li>
-</ul>
-</li>
-<li><p>Copy the release notes from the GitHub Releases draft to the new 
website release notes page</p>
-<ul>
-<li>Delete the prior information in the current version release notes except 
for the header (whether from a prior version or an update)</li>
-<li>Copy and paste the GitHub Releases draft just below the header</li>
-<li>Add the URLs to issues on GitHub. These are the instructions for 
Notepad++. Modify as needed if you are using another text editor.
-<ul>
-<li>Find: <code>#(\d+)</code></li>
-<li>Replace with: 
<code>[#$1]\(https://github.com/apache/lucenenet/pull/$1\)</code></li>
-<li>Search mode: &quot;regular expression&quot;</li>
-<li>Click &quot;Replace All&quot; and verify the URLs work correctly</li>
-</ul>
-</li>
-</ul>
-</li>
-<li><p>Follow the instructions on how to <a 
href="https://lucenenet.apache.org/contributing/documentation.html#website";>build,
 test &amp; publish the website</a> and run/test the website locally.</p>
-</li>
-<li><p>Commit changes and <a 
href="https://lucenenet.apache.org/contributing/documentation.html#website";>publish
 the website</a>.</p>
-</li>
-</ul>
+<li><p>Review the <a 
href="https://github.com/apache/lucenenet/commits/master";>master branch commit 
history on GitHub</a> to ensure everything looks right.</p>
 </li>
 <li><p>Add Missing License Headers</p>
 <ul>
-<li><p>Run <a href="https://creadur.apache.org/rat/";>Apache Release Audit 
Tool</a>:</p>
+<li><p>Run the <a href="https://creadur.apache.org/rat/";>Apache Release Audit 
Tool</a>:</p>
 <pre><code class="lang-powershell">dotnet msbuild -t:AuditRelease
 </code></pre>
 </li>
@@ -223,7 +164,7 @@
 </li>
 </ul>
 </li>
-<li><p>Execute a complete test locally (it can take around 20 minutes, but you 
may do the next step in parallel):</p>
+<li><p>Execute a complete test locally (it can take around 40 minutes, but you 
may do the next step in parallel):</p>
 <pre><code class="lang-powershell">build -pv &lt;packageVersion&gt; -t -mp 10
 </code></pre>
 <div class="NOTE">
@@ -292,6 +233,114 @@ git push &lt;remote-name (defaults to origin)&gt; master 
--tags
 <li><p>Check signature of generated artifacts (the 
<code>SignReleaseCandidate</code> target above runs the commands)</p>
 </li>
 </ul>
+<h3 id="create-the-release-notes">Create the Release Notes</h3>
+<h4 id="primer">Primer</h4>
+<p>We have partially automated the release notes through GitHub Releases. They 
are driven off of the GitHub Pull Requests and are categorized using labels. 
Labeling should be done during the PR review process, but there may need to be 
some cleanup by changing the title and/or labels of the PRs in the release.</p>
+<h5 id="labels-that-apply-to-the-release-notes">Labels that Apply to the 
Release Notes</h5>
+<table>
+<thead>
+<tr>
+<th>GitHub Label</th>
+<th>Action</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>notes:ignore</td>
+<td>Removes the PR from the release notes</td>
+</tr>
+<tr>
+<td>notes:breaking-change</td>
+<td>Categorizes the PR under &quot;Breaking Changes&quot;</td>
+</tr>
+<tr>
+<td>notes:new-feature</td>
+<td>Categorizes the PR under &quot;New Features&quot;</td>
+</tr>
+<tr>
+<td>notes:bug-fix</td>
+<td>Categorizes the PR under &quot;Bug Fixes&quot;</td>
+</tr>
+<tr>
+<td>notes:performance-improvement</td>
+<td>Categorizes the PR under &quot;Performance Improvements&quot;</td>
+</tr>
+<tr>
+<td>notes:website-or-documentation</td>
+<td>Categorizes the PR under &quot;Website and API Documentation&quot;</td>
+</tr>
+<tr>
+<td>&lt;none of the above&gt;</td>
+<td>Categorizes the PR under &quot;Other Changes&quot;</td>
+</tr>
+</tbody>
+</table>
+<div class="NOTE">
+<h5>Note</h5>
+<p>Using multiple labels from the above list is not supported and the first 
category in the above list will be used if more than one is applied to a GitHub 
pull request.</p>
+</div>
+<h4 id="create-a-draft-github-release">Create a Draft GitHub Release</h4>
+<ul>
+<li><p>Go to the <a 
href="https://github.com/apache/lucenenet/releases/new";>GitHub New Release</a> 
link.</p>
+</li>
+<li><p>Select the tag you previously created in <a 
href="#sign-the-release">Sign the Release</a> from the &quot;Choose a tag&quot; 
dropdown.</p>
+</li>
+<li><p>For the &quot;Previous tag&quot;, select the tag for the prior 
release.</p>
+</li>
+<li><p>Click &quot;Generate Release Notes&quot;.</p>
+</li>
+</ul>
+<p>The PRs will be listed and categorized in release notes. Review to 
ensure:</p>
+<ol>
+<li>The title is clear and understandable to the user what the PR is for.</li>
+<li>The PR is categorized appropriately. Typically &quot;Other Changes&quot; 
will be rare.</li>
+</ol>
+<p>If there are PRs that need to be edited, do so now. Then regenerate the 
release notes using the above instructions. Repeat until all of the PRs are 
categorized appropriately.</p>
+<ul>
+<li><p>Add important release information at the top of the release notes using 
the following template. This should include any reason why a user would want to 
choose this release over another one, such as important bug and vulnerability 
fixes. It should also contain any significant breaking changes that affect 
usability.</p>
+<pre><code class="lang-txt">&gt; This release contains &lt;any important 
changes that users should be aware of&gt;
+</code></pre>
+<div class="TIP">
+<h5>Tip</h5>
+<p>Click the &quot;Save draft&quot; button frequently during the above updates 
to ensure you don't lose them if your browser crashes.</p>
+</div>
+<div class="NOTE">
+<h5>Note</h5>
+<p>Be sure to check the &quot;This is a pre-release&quot; box as 
appropriate.</p>
+</div>
+</li>
+<li><p>Click the &quot;Save draft&quot; button when finished.</p>
+</li>
+</ul>
+<h3 id="add-the-release-notes-to-the-website">Add the Release Notes to the 
Website</h3>
+<p>Only people with permissions on GitHub will be able to see the draft 
release notes. <a 
href="https://people.apache.org/phonebook.html?ctte=lucenenet";>PMC members</a> 
and <a 
href="https://people.apache.org/phonebook.html?unix=lucenenet";>committers</a> 
can have permissions, but only if they set them up themselves. So, we duplicate 
the above information on a release notes page that all subscribers of the 
[email protected] mailing list can view during the release vote.</p>
+<div class="NOTE">
+<h5>Note</h5>
+<p>If the release notes require updating, don't forget the primary place to 
update them are on the GitHub Releases draft page above. It is best to update 
that page and then copy the changes from GitHub Releases to the release notes 
page on the website, then commit the changes and <a 
href="https://lucenenet.apache.org/contributing/documentation.html#website";>publish
 the website</a> as usual.</p>
+</div>
+<ul>
+<li><p>Create a new release notes page in the 
<code>/websites/site/release-notes</code> directory, in most cases it's easiest 
to just copy the previous release notes page.</p>
+<ul>
+<li>Ensure the <code>uid</code> in the header is correct</li>
+<li>Update all headers to the release version number (i.e. 
<code>4.8.0-beta00008</code>)
+<br>
+<br></li>
+</ul>
+</li>
+<li><p>Copy the release notes from the GitHub Releases draft to the new 
website release notes page</p>
+<ul>
+<li>Delete the prior information in the current version release notes except 
for the header (whether from a prior version or an update)</li>
+<li>Copy and paste the GitHub Releases draft just below the header</li>
+<li>Ensure any URLs are absolute since relative links will be broken if they 
apply to GitHub
+<br>
+<br></li>
+</ul>
+</li>
+<li><p>Follow the instructions on how to <a 
href="https://lucenenet.apache.org/contributing/documentation.html#website";>build,
 test &amp; publish the website</a> and run/test the website locally.</p>
+</li>
+<li><p>Commit changes and <a 
href="https://lucenenet.apache.org/contributing/documentation.html#website";>publish
 the website</a>.</p>
+</li>
+</ul>
 <h3 id="add-release-artifacts-to-the-svn-dev-distribution-repository">Add 
Release Artifacts to the SVN <code>dev</code> Distribution Repository</h3>
 <div class="WARNING">
 <h5>Warning</h5>
@@ -414,7 +463,7 @@ Non Binding Votes +1: [3] 0: [0] -1: [0]
 <ul>
 <li><p>Log the new version at <a 
href="https://reporter.apache.org/addrelease.html?lucenenet";>https://reporter.apache.org/addrelease.html?lucenenet</a></p>
 </li>
-<li><p>Publish the Draft <a 
href="https://github.com/apache/lucenenet/releases";>GitHub Release</a> that was 
<a href="#release-steps">created earlier</a>, updating the tag if necessary</p>
+<li><p>Publish the Draft <a 
href="https://github.com/apache/lucenenet/releases";>GitHub Release</a> that was 
<a href="#create-a-draft-github-release">created earlier</a>, updating the tag 
if necessary</p>
 </li>
 <li><p>Update Website with new release</p>
 <ul>
@@ -424,11 +473,21 @@ Non Binding Votes +1: [3] 0: [0] -1: [0]
 <p>Only update the version if it's a new stable version.</p>
 </div>
 </li>
+<li><p>Update the <code>/websites/site/lucenetemplate/.htaccess</code> file to 
reflect the <code>latest</code> and <code>absoluteLatest</code> versions.</p>
+<ul>
+<li><code>latest</code> should reflect the current release only if it is not a 
pre-release</li>
+<li><code>absoluteLatest</code> should reflect the current release (whether 
pre-release or not)
+<br>
+<br></li>
+</ul>
+</li>
 <li><p>Create a new release page in the <code>/websites/site/download</code>, 
in most cases it's easiest to just copy the previous release page.</p>
 <ul>
 <li>Ensure the <code>uid</code> in the header is correct</li>
 <li>Update all headers, status, release date to be correct</li>
-<li>Ensure supported frameworks and packages section is accurate for the new 
release</li>
+<li>Ensure supported frameworks and packages section is accurate for the new 
release
+<br>
+<br></li>
 </ul>
 </li>
 <li><p>Add the new release page to the 
<code>/websites/site/download/toc.yml</code> file</p>
@@ -443,7 +502,9 @@ Non Binding Votes +1: [3] 0: [0] -1: [0]
 </li>
 <li><p>Update the API Documentation with new release</p>
 <ul>
-<li>Follow the instructions on how to <a 
href="https://lucenenet.apache.org/contributing/documentation.html#api-docs";>build</a>,
 test and <a 
href="https://lucenenet.apache.org/contributing/documentation.html#publishing-the-docs";>publish</a>
 the docs.</li>
+<li>Follow the instructions on how to <a 
href="https://lucenenet.apache.org/contributing/documentation.html#api-docs";>build</a>,
 test and <a 
href="https://lucenenet.apache.org/contributing/documentation.html#publishing-the-docs";>publish</a>
 the docs.
+<br>
+<br></li>
 </ul>
 </li>
 <li><p>Send announcement email 24 hours after the release (to ensure the 
mirrors have propagated the download locations)</p>
@@ -482,8 +543,7 @@ The Apache Lucene.NET Team
 <h5>Note</h5>
 <p>Due to the fact that an Azure Pipeline cannot be re-run with the same 
version number and users who reference <code>.nupkg</code> files will have them 
in their local <code>.nuget</code> cache, there are 2 choices:</p>
 <ol>
-<li>To use the same version number that failed:</li>
-</ol>
+<li>To use the same version number that failed:
 <ul>
 <li>Create a new Azure DevOps pipeline by copying the settings from the 
pipeline named Lucene.NET-Release.</li>
 <li>Test the Lucene.NET-Release pipeline thoroughly, using different version 
numbers than the one you are releasing.</li>
@@ -491,7 +551,7 @@ The Apache Lucene.NET Team
 <li>Delete the tag for this release and recreate it with the same version 
number at the appropriate commit.</li>
 <li>If the vote has already started, the new release vote email should provide 
instructions for removing the previous version from the <code>.nuget</code> 
cache to ensure the new release with the same version is the one being 
scrutinized.</li>
 </ul>
-<ol start="2">
+</li>
 <li>To use a new version number, simply re-start the process from the 
beginning, copy the release notes from the previous version (both on GitHub and 
the website) and follow all of the remaining steps above. Discard the draft 
release notes on GitHub when complete.</li>
 </ol>
 </div>
diff --git a/manifest.json b/manifest.json
index 1bcd58033..0c6262a89 100644
--- a/manifest.json
+++ b/manifest.json
@@ -338,6 +338,26 @@
       },
       "version": ""
     },
+    {
+      "type": "Resource",
+      "source_relative_path": "lucenetemplate/.gitattributes",
+      "output": {
+        "resource": {
+          "relative_path": ".gitattributes"
+        }
+      },
+      "version": ""
+    },
+    {
+      "type": "Resource",
+      "source_relative_path": "lucenetemplate/.htaccess",
+      "output": {
+        "resource": {
+          "relative_path": ".htaccess"
+        }
+      },
+      "version": ""
+    },
     {
       "type": "Resource",
       "source_relative_path": "lucenetemplate/doap_Lucene_Net.rdf",

Reply via email to