You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@shiro.apache.org by bm...@apache.org on 2021/09/08 20:12:21 UTC

[shiro-site] branch jbake updated (7177ace -> b52106d)

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

bmarwell pushed a change to branch jbake
in repository https://gitbox.apache.org/repos/asf/shiro-site.git.


    from 7177ace  [Bootstrap5] Fix footer alignment of items by using 4 cols
     new 045c74d  [JBake][Templates] Download pages.
     new 77da2c5  [JBake][Templates] Use yaml data for download pages.
     new c974bbe  [README] move and convert readme, add CONTRIBUTING.adoc.
     new 11402d5  [SHIRO-261] simplified and modified contribute page so that more people would read it.
     new df3ac7f  Remove .DS_Store
     new b52106d  [JBake][Content] Converted five more pages.

The 6 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 README.md                                |  32 ---
 codec.html.vtl                           |   2 -
 core.md                                  |  25 --
 download.html.vtl                        | 424 -------------------------------
 how-to-contribute.md                     | 197 +++++++-------
 jbake/.gitignore                         |   1 +
 jbake/CONTRIBUTING.adoc                  |  36 +++
 jbake/README.adoc                        |  40 +++
 jbake/content/10-minute-tutorial.adoc    |   1 -
 about.md => jbake/content/about.md       |  14 +-
 jbake/content/codec.adoc                 |   8 +
 jbake/content/core.md                    |  31 +++
 jbake/content/download.adoc              |  20 ++
 forums.md => jbake/content/forums.md     |  14 +-
 jbake/content/mailing-lists.adoc         |  40 +++
 jbake/content/release-archive.adoc       |  20 ++
 jbake/data/artifacts.yaml                | 120 +++++++++
 jbake/data/releases.yaml                 | 167 ++++++++++++
 jbake/jbake.properties                   |   6 +
 jbake/pom.xml                            |  90 +++++++
 jbake/templates/download.ftl             |  79 ++++++
 jbake/templates/lend_a_hand.ftl          |  27 ++
 jbake/templates/macros/artifacttable.ftl |  45 ++++
 jbake/templates/macros/versions.ftl      | 101 +-------
 mailing-lists.md.vtl                     |  17 --
 25 files changed, 860 insertions(+), 697 deletions(-)
 delete mode 100644 README.md
 delete mode 100644 codec.html.vtl
 delete mode 100644 core.md
 delete mode 100644 download.html.vtl
 create mode 100644 jbake/CONTRIBUTING.adoc
 create mode 100644 jbake/README.adoc
 rename about.md => jbake/content/about.md (51%)
 create mode 100644 jbake/content/codec.adoc
 create mode 100644 jbake/content/core.md
 create mode 100644 jbake/content/download.adoc
 rename forums.md => jbake/content/forums.md (56%)
 create mode 100644 jbake/content/mailing-lists.adoc
 create mode 100644 jbake/content/release-archive.adoc
 create mode 100644 jbake/data/artifacts.yaml
 create mode 100644 jbake/data/releases.yaml
 create mode 100644 jbake/pom.xml
 create mode 100644 jbake/templates/download.ftl
 create mode 100644 jbake/templates/lend_a_hand.ftl
 create mode 100644 jbake/templates/macros/artifacttable.ftl
 delete mode 100644 mailing-lists.md.vtl

[shiro-site] 03/06: [README] move and convert readme, add CONTRIBUTING.adoc.

Posted by bm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

bmarwell pushed a commit to branch jbake
in repository https://gitbox.apache.org/repos/asf/shiro-site.git

commit c974bbe9c5ff986ea1fd79a1d8c5f8f7ade75a63
Author: Benjamin Marwell <bm...@apache.org>
AuthorDate: Mon Sep 6 07:17:27 2021 +0200

    [README] move and convert readme, add CONTRIBUTING.adoc.
---
 README.md                             | 32 ----------------------------
 jbake/CONTRIBUTING.adoc               | 36 +++++++++++++++++++++++++++++++
 jbake/README.adoc                     | 40 +++++++++++++++++++++++++++++++++++
 jbake/content/10-minute-tutorial.adoc |  1 -
 4 files changed, 76 insertions(+), 33 deletions(-)

diff --git a/README.md b/README.md
deleted file mode 100644
index f5c2683..0000000
--- a/README.md
+++ /dev/null
@@ -1,32 +0,0 @@
-# Apache Shiro Website Overview
-
-The Apache Shiro website is a static content website accessible at http://shiro.apache.org
-
-Site content is authored as Markdown and HTML files.  These files are scanned by a tool that applies a page template to each file's contents as necessary, and the rendered static .html files are output to a `dest_dir` directory.
-
-To publish the site commit changes to the `asf-site` branch of this repository.  ASF infrastructure will see the commit and automatically push the changes to the ASF's production webservers.
-
-## Generating and Publishing
-
-The tool used to generate the static content is [SCMS](https://github.com/lhazlewood/scms).  Once scms is installed and in your `$PATH`, generating and publishing the site on the command line is easy.
- 
-The following example assumes you have commit permissions to the `apache/shiro-site` repository, typically because your are an Apache Shiro project committer:
-    
-    # clone both repo branches `asf-site` and `main`
-    git clone https://github.com/apache/shiro-site -b asf-site shiro-site-publish
-    git clone https://github.com/apache/shiro-site
-    
-    # build the site
-    cd shiro-site
-    scms . ../shiro-site-publish
-    # Open up the local ../shiro-site-publish/index.html file in your web browser.  Ensure the changes reflect what you want. 
-
-    # These next commands will publish changes to live ASF web servers.  Be confident the changes are what you want:
-    cd ../shiro-site-publish
-    git add .
-    git commit -am "my change description"
-    git push origin asf-site
-    
-    # It should only take a few minutes until the files are live 
-
-
diff --git a/jbake/CONTRIBUTING.adoc b/jbake/CONTRIBUTING.adoc
new file mode 100644
index 0000000..b902c1b
--- /dev/null
+++ b/jbake/CONTRIBUTING.adoc
@@ -0,0 +1,36 @@
+= Apache Shiro Site: Contributing
+
+== General guidelines
+
+* New files are written in AsciiDoc, using `.adoc` filename extensions.
+* Each sentence ends with a newline (`\n`).
+Git will automatically convert line endings for you.
+
+
+== Changes for a new Apache Shiro Release
+
+=== Changes to link:data/releases.yaml[]
+
+* If the new `latestRelease` is a new minor release (e.g. `1.x.0`), prepend the old version to the `oldReleases` array. +
+Please skip this step for minor releases.
+* If the new `latestRelease` is a minor release, update the version number of the `releases` object at the end of the file. +
+_Rationale:_ Every minor release should only be represented with the latest bugfix release.
+* Change `latestRelease: "..."` to the new version.
+* Update the `versionInfo` object accordingly. +
+You can just add a new release, there is no need to remove old releases.
+
+=== Changes to link:data/artifacts.yaml[]
+
+In the unlikely event that new artifacts were generated, please modify link:data/artifacts.yaml[] according to your needs. +
+Do not delete artifacts, as they may be in use for old versions.
+
+After modifying the artifacts file, update the `releases` object in link:data/releases.yaml[] to include the new artifact's name.
+
+== Development server
+
+To start a development server on http://localhost:8820, use this command:
+
+[source,bash]
+----
+mvn clean jbake:inline
+----
diff --git a/jbake/README.adoc b/jbake/README.adoc
new file mode 100644
index 0000000..128ab55
--- /dev/null
+++ b/jbake/README.adoc
@@ -0,0 +1,40 @@
+= Apache Shiro Website Overview
+
+The Apache Shiro website is a static content website accessible at http://shiro.apache.org/.
+
+Site content is authored as Markdown, Asciidoc and HTML files.
+These files are parsed by the tool `jbake` and renders the content files using freemarker templates to static `.html` files.
+
+To publish the site commit changes to the `asf-site` branch of this repository.
+ASF infrastructure will see the commit and automatically push the changes to the ASF͘'s production webservers.
+
+== Generating and Publishing
+
+The tool used to generate the static content is https://jbake.org/[JBake].
+JBake is used as a maven plugin, i.e. you do not need to have it in your `${PATH}`.
+Generating and publishing the site on the command only takes a few maven and git commands.
+Please carefully check the requirements outlined in link:CONTRIBUTING.adoc[].
+
+The following example assumes you have commit permissions to the `apache/shiro-site` repository, typically because you are an Apache Shiro project committer:
+
+[source,bash]
+----
+# clone both repo branches `asf-site` and `main`
+git clone https://github.com/apache/shiro-site -b asf-site shiro-site-publish
+git clone https://github.com/apache/shiro-site
+
+# build the site
+cd shiro-site
+mvn clean generate-resources
+# Open up the local ../shiro-site-publish/index.html file in your web browser.
+# Ensure the changes reflect what you want.
+
+# These next commands will publish changes to live ASF web servers.
+# Be confident the changes are what you want:
+cd ../shiro-site-publish
+git add .
+git commit -am "my change description"
+git push origin asf-site
+----
+
+It should only take a few moments until the changes are live.
diff --git a/jbake/content/10-minute-tutorial.adoc b/jbake/content/10-minute-tutorial.adoc
index d203baf..d565fd2 100644
--- a/jbake/content/10-minute-tutorial.adoc
+++ b/jbake/content/10-minute-tutorial.adoc
@@ -220,4 +220,3 @@ Then can move onto other link:documentation.html[Documentation,title="Documentat
 You'll also probably want to join the user link:mailing-lists.html[mailing list,title="Mailing Lists"] - you'll find that we have a great community with people willing to help whenever possible.
 
 Thanks for following along.We hope you enjoy using Apache Shiro!
-

[shiro-site] 06/06: [JBake][Content] Converted five more pages.

Posted by bm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

bmarwell pushed a commit to branch jbake
in repository https://gitbox.apache.org/repos/asf/shiro-site.git

commit b52106d239d6cc0966734fccc819e1a4819ed3b4
Author: Benjamin Marwell <bm...@apache.org>
AuthorDate: Wed Sep 8 22:09:36 2021 +0200

    [JBake][Content] Converted five more pages.
    
      - about.md
      - codec.html.vtl => codec.adoc
      - core.md
      - forums.md
      - mailing-lists.md.vtl => mailing-lists.adoc
---
 codec.html.vtl                       |  2 --
 core.md                              | 25 ----------------------
 about.md => jbake/content/about.md   | 14 +++++++------
 jbake/content/codec.adoc             |  8 ++++++++
 jbake/content/core.md                | 31 ++++++++++++++++++++++++++++
 forums.md => jbake/content/forums.md | 14 +++++++------
 jbake/content/mailing-lists.adoc     | 40 ++++++++++++++++++++++++++++++++++++
 jbake/jbake.properties               |  1 +
 jbake/templates/lend_a_hand.ftl      | 27 ++++++++++++++++++++++++
 mailing-lists.md.vtl                 | 17 ---------------
 10 files changed, 123 insertions(+), 56 deletions(-)

diff --git a/codec.html.vtl b/codec.html.vtl
deleted file mode 100644
index 7261b65..0000000
--- a/codec.html.vtl
+++ /dev/null
@@ -1,2 +0,0 @@
-#todoAddDoc())
-<input type="hidden" id="ghEditPage" value="codec.html.vtl"></input>
diff --git a/core.md b/core.md
deleted file mode 100644
index 427a36b..0000000
--- a/core.md
+++ /dev/null
@@ -1,25 +0,0 @@
-<a name="Core-CoreConceptsinApacheShiro"></a>
-#Core Concepts in Apache Shiro
-
-This part of the documentation covers Shiro's core architectural concepts.
-
-First we'll present Shiro's architecture and a summary of each core concept.  Then we'll cover the most important concept in Shiro - the `Subject`, a security-specific 'view' of a <em>single</em> application user.  Next we'll discuss the <tt>SecurityManager</tt>, an application singleton that manages all Subjects for the application, and as well as the SecurityManager's supporting components that do most of Shiro's heavy lifting. Then onto Realms, the security-specific DAOs, Shiro commun [...]
-
-* [Architecture](architecture.html)
-
-* [Subject](subject.html)
-
-* [SecurityManager](securitymanager.html)
-
-* [Realms](realm.html)
-
-* [Permissions](permissions.html)
-
-<a name="Core-Lendahandwithdocumentation"></a>
-##Lend a hand with documentation
-
-While we hope this documentation helps you with the work you're doing with Apache Shiro, the community is improving and expanding the documentation all the time.  If you'd like to help the Shiro project, please consider correcting, expanding, or adding documentation where you see a need. Every little bit of help you provide expands the community and in turn improves Shiro.
-
-The easiest way to contribute your documentation is to send it to the [User Forum](http://shiro-user.582556.n2.nabble.com/) or the [User Mailing List](mailing-lists.html).
-
-<input type="hidden" id="ghEditPage" value="core.md"></input>
diff --git a/about.md b/jbake/content/about.md
similarity index 51%
rename from about.md
rename to jbake/content/about.md
index bdfff43..1581475 100644
--- a/about.md
+++ b/jbake/content/about.md
@@ -1,7 +1,11 @@
-<a name="About-AboutApacheShiro"></a>
-#About Apache Shiro
+title=About Apache Shiro
+type=page
+tags=documentation, about
+status=published
+~~~~~~
 
-Apache Shiro is is a top level open source project under the [Apache Software Foundation](http://www.apache.org). As a project, Shiro is an application security framework that provides application developers very clean and simple ways of supporting four cornerstones of security in their applications: authentication, authorization, enterprise session management and cryptography.
+Apache Shiro is is a top level open source project under the [Apache Software Foundation](https://www.apache.org). 
+As a project, Shiro is an application security framework that provides application developers very clean and simple ways of supporting four cornerstones of security in their applications: authentication, authorization, enterprise session management and cryptography.
 
 If you'd like to learn more about Shiro please visit the links below
 
@@ -9,10 +13,8 @@ If you'd like to learn more about Shiro please visit the links below
 
 * [Features](features.html) - Explore the major features of the project
 
-* [News](news.html) - Stay up to date on the latest Apache Shiro news
+* [News](../../news.html) - Stay up to date on the latest Apache Shiro news
 
 * [Events](events.html) - See what Apache Shiro events are coming that you should consider attending
 
 * [License](license.html) - Review the license under which Shiro is released - Apache Software License, Version 2.0
-
-<input type="hidden" id="ghEditPage" value="about.md"></input>
diff --git a/jbake/content/codec.adoc b/jbake/content/codec.adoc
new file mode 100644
index 0000000..2c37716
--- /dev/null
+++ b/jbake/content/codec.adoc
@@ -0,0 +1,8 @@
+= Apache Shiro Codecs
+:jbake-type: lend_a_hand
+:jbake-status: published
+:jbake-tags: documentation, todo, lend-a-hand
+:idprefix:
+:icons: font
+
+TODO
diff --git a/jbake/content/core.md b/jbake/content/core.md
new file mode 100644
index 0000000..69b0ae8
--- /dev/null
+++ b/jbake/content/core.md
@@ -0,0 +1,31 @@
+title=Core Concepts in Apache Shiro
+type=page
+tags=documentation, about
+status=published
+~~~~~~
+
+This part of the documentation covers Shiro's core architectural concepts.
+
+First we'll present Shiro's architecture and a summary of each core concept. Then we'll cover the most important concept in Shiro - the `Subject`, a security-specific 'view' of a <em>single</em> application user.
+Next we'll discuss the <tt>SecurityManager</tt>, an application singleton that manages all Subjects for the application, and as well as the SecurityManager's supporting components that do most of Shiro's heavy lifting.
+Then onto Realms, the security-specific DAOs, Shiro communicates with and then Permissions, the building block of any security policy.
+
+* [Architecture](architecture.html)
+
+* [Subject](subject.html)
+
+* [SecurityManager](securitymanager.html)
+
+* [Realms](realm.html)
+
+* [Permissions](permissions.html)
+
+<a name="Core-Lendahandwithdocumentation"></a>
+##Lend a hand with documentation
+
+While we hope this documentation helps you with the work you're doing with Apache Shiro, the community is improving and expanding the documentation all the time.
+If you'd like to help the Shiro project, please consider correcting, expanding, or adding documentation where you see a need.
+Every little bit of help you provide expands the community and in turn improves Shiro.
+
+The easiest way to contribute your documentation is to send it to the [User Forum](https://lists.apache.org/list.html?user@shiro.apache.org) or the [User Mailing List](mailing-lists.html).
+
diff --git a/forums.md b/jbake/content/forums.md
similarity index 56%
rename from forums.md
rename to jbake/content/forums.md
index 54baa49..8649ab0 100644
--- a/forums.md
+++ b/jbake/content/forums.md
@@ -1,15 +1,17 @@
-<a name="Forums-ApacheShiroCommunityForums"></a>
-#Apache Shiro Community Forums
+title=Apache Shiro Community Forums
+type=page
+tags=documentation, community
+status=published
+~~~~~~
 
 For users that prefer to use browse the mailing lists with a browser can use [ASF Lists](https://lists.apache.org/) (Pony Mail). 
 
-*   [Shiro User Forum](https://lists.apache.org/list.html?user@shiro.apache.org)
-*   [Shiro Developer Forum](https://lists.apache.org/list.html?dev@shiro.apache.org)
+* [Shiro User Forum](https://lists.apache.org/list.html?user@shiro.apache.org)
+* [Shiro Developer Forum](https://lists.apache.org/list.html?dev@shiro.apache.org)
 
 > **NOTE:** Previously, `nabble.com` was used as an alternative to the mailing list, this service is not longer hosting the mailing list archive.
 
 <a name="Forums-MailingLists"></a>
-##Mailing Lists
+## Mailing Lists
 
 For those that may prefer mailing lists, please see the [Mailing Lists](mailing-lists.html) information.
-<input type="hidden" id="ghEditPage" value="forums.md"></input>
diff --git a/jbake/content/mailing-lists.adoc b/jbake/content/mailing-lists.adoc
new file mode 100644
index 0000000..24ea079
--- /dev/null
+++ b/jbake/content/mailing-lists.adoc
@@ -0,0 +1,40 @@
+= Apache Shiro Mailing Lists
+:jbake-type: page
+:jbake-status: published
+:jbake-tags: documentation, mailing, contact
+:idprefix:
+:icons: font
+
+
+|===
+|List Name |List Address |Subscribe |Unsubscribe |ASF (Online Forums)
+
+|Shiro User List
+|mailto:user@shiro.apache.org[user@shiro.apache.org]
+|mailto:user-subscribe@shiro.apache.org[Subscribe]
+|mailto:user-unsubscribe@shiro.apache.org[Unsubscribe]
+|link:++https://lists.apache.org/list.html?user@shiro.apache.org++[ASF Forum and Archive]
+
+|Shiro Developer List
+|mailto:dev@shiro.apache.org[dev@shiro.apache.org]
+|mailto:dev-subscribe@shiro.apache.org[Subscribe]
+|mailto:dev-unsubscribe@shiro.apache.org[Unsubscribe]
+|link:++https://lists.apache.org/list.html?dev@shiro.apache.org++[ASF Forum and Archive]
+
+|Shiro Issues/JIRA List
+|mailto:issues@shiro.apache.org[issues@shiro.apache.org]
+|mailto:issues-subscribe@shiro.apache.org[Subscribe]
+|mailto:issues-unsubscribe@shiro.apache.org[Unsubscribe]
+|link:++https://lists.apache.org/list.html?issues@shiro.apache.org++[ASF Forum and Archive]
+
+|Shiro SCM List
+|mailto:commits@shiro.apache.org[commits@shiro.apache.org]
+|mailto:commits-subscribe@shiro.apache.org[Subscribe]
+|mailto:commits-unsubscribe@shiro.apache.org[Unsubscribe]
+|link:++https://lists.apache.org/list.html?commits@shiro.apache.org++[ASF Forum and Archive]
+|===
+
+
+== Discussion Forums
+
+If you prefer you could use our discussion link:forums.html[Forums] which are synced with the above mailing lists.
diff --git a/jbake/jbake.properties b/jbake/jbake.properties
index 7992cc1..3ab2072 100644
--- a/jbake/jbake.properties
+++ b/jbake/jbake.properties
@@ -7,3 +7,4 @@ render.sitemap=true
 render.archive=true
 
 template.download.file=download.ftl
+template.lend_a_hand.file=lend_a_hand.ftl
diff --git a/jbake/templates/lend_a_hand.ftl b/jbake/templates/lend_a_hand.ftl
new file mode 100644
index 0000000..885e680
--- /dev/null
+++ b/jbake/templates/lend_a_hand.ftl
@@ -0,0 +1,27 @@
+<#include "header.ftl">
+
+<#include "menu.ftl">
+
+<#if (content.title)??>
+  <div class="page-header">
+    <h1>${content.title}</h1>
+  </div>
+<#else></#if>
+
+<p><em>${content.date?string("dd MMMM yyyy")}</em></p>
+
+<p>TODO</p>
+
+<h2><a id="Lendahandwithdocumentation"></a>Lend a hand with documentation</h2>
+
+<p>While we hope this documentation helps you with the work you're doing with Apache Shiro,
+  the community is improving and expanding the documentation all the time.
+  If you'd like to help the Shiro project, please consider correcting, expanding, or adding documentation where you see a need.
+  Every little bit of help you provide expands the community and in turn improves Shiro. </p>
+
+<p>The easiest way to contribute your documentation is to submit a pull-request by clicking on the <code>Edit</code> link below,
+  or send it to the <a href="mailing-lists.html" title="Mailing Lists">User Mailing List</a>.</p>
+
+<hr />
+
+<#include "footer.ftl">
diff --git a/mailing-lists.md.vtl b/mailing-lists.md.vtl
deleted file mode 100644
index fd34f7d..0000000
--- a/mailing-lists.md.vtl
+++ /dev/null
@@ -1,17 +0,0 @@
-#mdStyle()
-
-<a name="MailingLists-ApacheShiroMailingLists"></a>
-# Apache Shiro Mailing Lists
-
-| List Name            | List Address                                                | Subscribe                                              | Unsubscribe                                                | ASF (Online Forums)                                                                  |
-|----------------------|-------------------------------------------------------------|--------------------------------------------------------|------------------------------------------------------------|--------------------------------------------------------------------------------------|
-| Shiro User List      | [user@shiro.apache.org](mailto:user@shiro.apache.org)       | [Subscribe](mailto:user-subscribe@shiro.apache.org)    | [Unsubscribe](mailto:user-unsubscribe@shiro.apache.org)    | [ASF Forum and Archive](https://lists.apache.org/list.html?user@shiro.apache.org)    |
-| Shiro Developer List | [dev@shiro.apache.org](mailto:dev@shiro.apache.org)         | [Subscribe](mailto:dev-subscribe@shiro.apache.org)     | [Unsubscribe](mailto:dev-unsubscribe@shiro.apache.org)     | [ASF Forum and Archive](https://lists.apache.org/list.html?dev@shiro.apache.org)     |
-| Shiro Issues/JIRA List | [issues@shiro.apache.org](mailto:issues@shiro.apache.org) | [Subscribe](mailto:issues-subscribe@shiro.apache.org)  | [Unsubscribe](mailto:issues-unsubscribe@shiro.apache.org)  | [ASF Forum and Archive](https://lists.apache.org/list.html?issues@shiro.apache.org)  |
-| Shiro SCM List       | [commits@shiro.apache.org](mailto:commits@shiro.apache.org) | [Subscribe](mailto:commits-subscribe@shiro.apache.org) | [Unsubscribe](mailto:commits-unsubscribe@shiro.apache.org) | [ASF Forum and Archive](https://lists.apache.org/list.html?commits@shiro.apache.org) |
-
-<a name="MailingLists-DiscussionForums"></a>
-### Discussion Forums
-
-If you prefer you could use our discussion [Forums](forums.html "Forums") which are sync'd with the above mailing lists.
-<input type="hidden" id="ghEditPage" value="mailing-lists.md"></input>

[shiro-site] 04/06: [SHIRO-261] simplified and modified contribute page so that more people would read it.

Posted by bm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

bmarwell pushed a commit to branch jbake
in repository https://gitbox.apache.org/repos/asf/shiro-site.git

commit 11402d5c89a4866a1c31fec87a987174db0c2f49
Author: Piret Niva <pi...@iki.fi>
AuthorDate: Tue Feb 16 21:17:08 2021 +0200

    [SHIRO-261] simplified and modified contribute page so that more people would read it.
    
    Revert "[SHIRO-261] simplified and modified contribute page so that more people would read it."
    
    [SHIRO-261] simplified and modified contribute page so that more people would read it.
    
    [SHIRO-261] simplified and modified contribute page so that more people would read it.
    
    Revert "[SHIRO-261] simplified and modified contribute page so that more people would read it."
    
    This reverts commit e81a7acb003f1849a27132a74693d9ab70316966.
    
    [SHIRO-261] simplified and modified contribute page so that more people would read it.
    
    SHIRO-261 Minor layout changes and spelling corrections.
    
    Update how-to-contribute.md
    
    Co-authored-by: Benjamin Marwell <bm...@gmail.com>
    
    SHIRO-261, modified mailing list url
---
 .DS_Store            | Bin 0 -> 6148 bytes
 how-to-contribute.md | 197 ++++++++++++++++++++++++++++-----------------------
 2 files changed, 109 insertions(+), 88 deletions(-)

diff --git a/.DS_Store b/.DS_Store
new file mode 100644
index 0000000..5008ddf
Binary files /dev/null and b/.DS_Store differ
diff --git a/how-to-contribute.md b/how-to-contribute.md
index 3af9830..7562425 100644
--- a/how-to-contribute.md
+++ b/how-to-contribute.md
@@ -1,48 +1,64 @@
 <a name="HowtoContribute-ContributingtoApacheShiro"></a>
-#Contributing to Apache Shiro
-
-*   [Introduction](#HowtoContribute-introduction)
-*   [Help Wanted Here](#HowtoContribute-help)
-*   [Procedure for reporting bugs and issues and enhancement suggestions](#HowtoContribute-procedure)
-*   [Git Usage](#HowtoContribute-git)
-*   [Git Committers](#HowtoContribute-committer)
-*   [Procedure for Raising Development Issues](#HowtoContribute-issues)
-*   [How to prepare and contribute patches](#HowtoContribute-patches)
-*   [How to revert changes in Git](#HowtoContribute-revert)
-*   [Contribution Notes and Tips](#HowtoContribute-tips)
+# Contributing to Apache Shiro
+
+* [Introduction](#HowtoContribute-introduction)
+* [Help Wanted Here](#HowtoContribute-help)
+* [Procedure for Raising Development Issues](#HowtoContribute-issues)
+* [Procedure for Reporting Bugs and Issues and Enhancement uggestions](#HowtoContribute-procedure)
+* [Git Usage](#HowtoContribute-git)
+* [Git Committers](#HowtoContribute-committer)
+* [Contribution Notes and Tips](#HowtoContribute-tips)
 
 <a name="HowtoContribute-introductions"></a>
 <a name="HowtoContribute-Introduction"></a>
-##Introduction
+## Introduction
+
+Apache Shiro is an [Open Source](https://opensource.org/) software security framework that performs authentication, authorization, cryptography and session management. The Shiro Project is an volunteer project released under a [liberal license](license.html "License"). Anyone can participate and volunteer. No need to be an experienced developer or have great visions. Roll up your sleeves and come try, help is always welcome, and your input will be appreciated!
 
-The Shiro Project is an [Open Source](https://opensource.org/) volunteer project released under a [very liberal license](license.html "License"). This means there are many ways to contribute to the project - either with direct participation (coding, documenting, answering questions, proposing ideas, reporting bugs, suggesting bug-fixes, etc..) or by resource donations (staff time, conference presentations, publicity, software) and even general hardware/money [donations](http://www.apache [...]
+There are many ways how to contribute to this project, you can participate directly by:
+* coding
+* documenting
+* answering questions
+* proposing ideas
+* reporting bugs
+* suggesting bug-fixes
+* etc.
 
-To begin with, we suggest you to subscribe to the [Shiro mailing lists](mailing-lists.html "Mailing Lists") (follow the link for information on how to subscribe and to access the mail list archives). Listen-in for a while, to hear how others make contributions.
+Or you can participate with resource donations:
+* staff time
+* conference presentations
+* publicity
+* software
+* general hardware/money [donations](http://www.apache.org/foundation/thanks.html) via the [Apache Software Foundation](http://www.apache.org)
 
-You can get your local working copy of the [latest and greatest code](download.html "Download") by following the directions in our [Download](download.html "Download") page. Review the To Do list in the [issue tracker](https://issues.apache.org/jira/browse/SHIRO) and then choose a task that interests you. Perhaps you have noticed something that needs patching, or have a new feature to contribute. Make the changes, do the testing, generate a patch, and discuss on the [dev mailing list](ma [...]
+You can get your local working copy of the [latest and greatest code](download.html "Download") by following the directions in [Download](download.html "Download") page. Review the To Do list in the [issue tracker](https://issues.apache.org/jira/browse/SHIRO) and then choose a task that interests you.
 
-Document writers are usually the most wanted people so if you like to help but you're not familiar with the innermost technical details, don't worry: you can still be tremendously helpful!
+Perhaps you have noticed something that needs patching or have a new feature to contribute. Make the changes, do the testing, generate a patch, and discuss on the [dev mailing list](https://shiro.apache.org/mailing-lists.html "Mailing Lists"). The process is easy and explained below. Subscribe to the mailing list!
 
 <a name="HowtoContribute-help"></a>
 <a name="HowtoContribute-HelpWantedHere"></a>
-##Help Wanted Here
+## Help Wanted
 
 You can be a huge help by providing extra assistance in any of the following areas:
 
-*   Assisting to improve documentation and the website.
-*   Testing Shiro (especially its less-frequently-used features) on various configurations and reporting back.
-*   New samples for the 'shiro-sample' to concisely describe and demonstrate features. Such samples can also enable automated testing.
-*   Debugging - producing reproducible test cases and/or finding causes of bugs. Most bugs are recorded as issues (see [explanation below](#HowtoContribute-procedure)).
-*   Providing new use-cases and requirements. If you think that Shiro does not quite meet your needs then tell us about it on the mailing list.
-*   Specifying/analysing/designing new features - and beyond. If you wish to get further involved with this, please join the [`shiro-dev` mailing list](mailing-lists.html "Mailing Lists"), install and try out Shiro and read some of the [mail archives](mailing-lists.html "Mailing Lists"). You should have a reasonable fluency in security technologies, some Java and Maven skills, and a basic understanding of the Shiro architecture - don't just say "it should have XYZ" without reading anythi [...]
-*   Packaging easy-to-install packages (such as RPMs) for the myriad of possible configurations out there. (The project does not maintain anything but the basic .zip and .tar.gz packages, but anyone is welcome to build their own specific packages and announce them on the forrest-dev list)
-*   ... and there is just one other thing - don't forget to tell everyone who asks, how great Shiro is! The more people that know about and start to use Shiro, the larger the pool of potential contributors will be.
+* Assisting to improve documentation and the website.
+* Testing Shiro on various configurations and reporting back, especially Shiro's less-frequently-used features.
+* New samples for the 'shiro-sample' to concisely describe and demonstrate features. Such samples can also enable automated testing.
+* Debugging - producing reproducible test cases and/or finding causes of bugs. Most bugs are [recorded as issues](#HowtoContribute-procedure)).
+* Providing new use-cases and requirements.
+** If you think that Shiro does not quite meet your needs then tell us about it on the mailing list.
+* Specifying, analyzing or designing new features - and beyond.
+**	If you wish to get further involved with this, please join the [`shiro-dev` mailing list](https://shiro.apache.org/mailing-lists.html "Mailing Lists"), install and try out Shiro and read some of the [mail archives](https://shiro.apache.org/mailing-lists.html "Mailing Lists").
+***	Don't just say "it should have XYZ" without reading anything first - because chances are, somebody has already thought of that feature.
+* Packaging easy-to-install packages (such as Red Hat Package Managers (RPM)) for the myriad of possible configurations out there.
+** The project does not maintain anything but the basic .zip and .tar.gz packages, but anyone is welcome to build their own specific packages and announce those on the mailing list.
+* ... and one more thing - don't forget to tell everyone, how great Shiro is! The more people that know about and start to use Shiro, the larger the pool of potential contributors will be.
 
 <a name="HowtoContribute-procedure"></a>
 <a name="HowtoContribute-Procedureforreportingbugsandissuesandenhancementsuggestions"></a>
-##Procedure for reporting bugs and issues and enhancement suggestions
+## Procedure for Reporting Bugs and Issues and Enhancement Suggestions
 
-If you think that you have found a bug or you have a suggestion for improvement, then please discuss it on one of the [mailing lists](mailing-lists.html "Mailing Lists"). However, please check our [issue tracker](https://issues.apache.org/jira/browse/SHIRO) first as it may be already reported.
+If you think that you have found a bug or you have a suggestion for improvement, then please discuss it on one of the [mailing lists](https://shiro.apache.org/mailing-lists.html "Mailing Lists"). However, please check our [issue tracker](https://issues.apache.org/jira/browse/SHIRO) first as it may be already reported.
 
 The [Apache Shiro Issue Tracker](https://issues.apache.org/jira/browse/SHIRO) collates our known issues. Obviously not every issue is listed there. Some issues have been discussed on the mailing list but do not yet have an issue recorded.
 
@@ -50,83 +66,73 @@ The Roadmap is the best way to get an overview. The Unscheduled list also needs
 
 When creating a new issue, please provide a concise Summary Title and a short Description. Add further information as Comments and include links to the mail archives. The normal procedure is to discuss the issue on the mailing list and then add relevant notes to the issue tracker, otherwise it becomes cluttered.
 
-<a name="HowtoContribute-git"></a>
-<a name="HowtoContribute-GitUsage"></a>
-##Git Usage
-
-An overview of how to use Git to participate in Shiro development. Do not be afraid - you cannot accidentally destroy the actual code repository, because you are working with a local copy as an anonymous user. Therefore, you do not have the system permissions to change anything. You can only update your local repository and compare your revisions with the real repository. The [Download Shiro](download.html "Download") page explains how to check-out the code base and build your local copy.
-
-<a name="HowtoContribute-committer"></a>
-<a name="HowtoContribute-GitCommitters"></a>
-## Git Committers
-
-After a developer has consistently provided contributions (code, documentation and discussion) and demonstrated committment, then the rest of the dev community may vote to grant this developer commit access to the Git repository. See the [ASF developers resources](http://www.apache.org/dev/) especially the [Source code repositories](http://www.apache.org/dev/version-control.html).
-
 <a name="HowtoContribute-issues"></a>
 <a name="HowtoContribute-ProcedureforRaisingDevelopmentIssues"></a>
 ## Procedure for Raising Development Issues
 
-There are two methods for discussing development and submitting patches. So that everyone can be productive, it is important to know which method is appropriate for a certain situation and how to go about it without confusion. This section explains when to use the developer [mailing list](mailing-lists.html "Mailing Lists") and the [issue tracker](https://issues.apache.org/jira/browse/SHIRO).
+There are two methods for discussing development and submitting patches. So that everyone can be productive, it is important to know which method is appropriate for a certain situation and how to go about it without confusion.
+
+### Mailing List
 
-Research your topic thoroughly before beginning to discuss a new development issue. Search and browse through the email archives - your issue may have been discussed before. Prepare your post clearly and concisely.
+Research your topic thoroughly before beginning to discuss a new development issue on the [mailing list](https://shiro.apache.org/mailing-lists.html "Mailing Lists"). Search and browse through the email archives - your issue may have been discussed before. Prepare your post clearly and concisely.
 
 Most issues will be discovered, resolved, and then patched quickly via the developer mailing list. Larger issues, and ones that are not yet fully understood or are hard to solve, are destined for the issue tracker.
 
-Experienced developers use the issue tracker directly, as they are very sure when they have found a bug and when not. However, less experienced users should first discuss it on the user or developer mailing list (as appropriate). Impatient people always enter everything into the issue tracker without caring if it is a bug of Shiro or their own installation/configuration mistake - please do not do this.
+### Issue Tracker
 
-As a rule-of-thumb, discuss an issue on the developers mailing list first to work out any details. After it is confirmed to be worthwhile, and you are clear about it, then submit the bug description or patch via Bug Tracking.
+Experienced developers use the [issue tracker](https://issues.apache.org/jira/browse/SHIRO) directly, as they are very sure when they have found a bug and when not. Less experienced users should first discuss it on the user or developer mailing list (as appropriate). Impatient people always enter everything into the issue tracker without caring if it is a bug of Shiro, or their own installation/configuration mistake - please do not do this.
 
-Perhaps you do not get any answer on your first reply, so just post it again until you get one. (But please not every hour - allow a few days for the list to deal with it.) Bear in mind that other countries will have holidays at different times to your country and that they are in different time zones. You might also consider rewriting your initial posting. It may have not been clear to the readers on the mailing list.
+Discuss an issue on the developers mailing list first to work out any details. After it is confirmed to be worthwhile, and you are clear about it, then submit the bug description or patch via Bug Tracking.
 
-<a name="HowtoContribute-patches"></a>
-<a name="HowtoContribute-Howtoprepareandcontributepatches"></a>
-##Contributing as a Non-Committer
+Perhaps you do not get any answer on your first reply, so just post it again until you get one. But please not every hour - allow a few days for the list to deal with it. Bear in mind that other countries will have holidays at different times to your country and that they are in different time zones. You might also consider rewriting your initial posting. It may have not been clear to the readers on the mailing list.
 
-If you're a committer on an Apache project, it means that you can commit directly to the project's repository. For instance, with Apache Shiro committers are allowed to directly push commits into the git repository.
+<a name="HowtoContribute-submitThroughJira"></a>
+### Submitting a Patch Through Jira
 
-Non-committers, however, have to submit patches for review. Apache Shiro accepts GitHub pull requests. If you are new to Git and GitHub, check these two links:
+While we encourage you to submit your contribution through GitHub pull requests, you can also attach a patch in a Jira ticket. For the purpose of these instructions, we'll assume that you already have a system with Git and have found a bug to fix or have a feature that you'd like to submit, and you're willing to contribute that code or documentation under the Apache License 2.0.
 
-*   [GitHub 15 minutes tutorial](https://try.github.io/levels/1/challenges/1)
-*   [Creating Pull Requests](https://help.github.com/articles/creating-a-pull-request/)
+Further, if you're fixing a bug, we'll assume that you've either filed a bug report (where you will attach your patch) or are submitting a fix for a known bug. If you find a bug and would like to fix it, that's awesome! Please be sure to file the bug too, though.
 
-Apache Shiro has a read-only mirror on GitHub that is kept in sync with the canonical Git repo maintained by the Apache Software Foundation. Submitting GitHub pull requests is the easiest way to get your contribution upstream. For detailed instructions see the link below:
-
-[GitHub Contribution Guidelines](https://github.com/apache/shiro/blob/main/CONTRIBUTING.md)
+If you want to add a feature, you should bring it up for discussion on the dev@shiro.apache.org mailing list before implementing it. This ensures that it meshes with the plans that other contributors have for Apache Shiro, and that you're not doing redundant work. Other developers may also have ideas for the feature or suggestions that will help you land the feature without having to re-do the work. More information about our mailing lists can be found here.
 
-<a name="HowtoContribute-submitThroughJIRA"></a>
-###Submitting a patch through JIRA
+In short, communication is a vital part of making a contribution to an Apache project.
 
-While we encourage you to submit your contribution through GitHub pull requests, you can also attach a patch in a JIRA ticket. For the purpose of these instructions, we'll assume that you already have a system with Git and have found a bug to fix or have a feature that you'd like to submit, and you're willing to contribute that code or documentation under the Apache License 2.0.
+<a name="HowtoContribute-git"></a>
+<a name="HowtoContribute-GitUsage"></a>
+## Git Usage
 
-Further, if you're fixing a bug we'll assume that you've either filed a bug report (where you will attach your patch) or are submitting a fix for a known bug. If you find a bug and would like to fix it, that's awesome! Please be sure to file the bug too, though.
+An overview of how to use Git to participate in Shiro development. Beginners, don't be afraid - you cannot accidentally destroy the actual code repository, because you are working with a local copy as an anonymous user. Therefore, you do not have the system permissions to change anything. You can only update your local repository and compare your revisions with the real repository. The [Download Shiro](download.html "Download") page explains how to check-out the code base and build your  [...]
 
-If you want to add a feature, you should bring it up for discussion on the dev@shiro.apache.org mailing list before implementing it. This ensures that it meshes with the plans that other contributors have for Apache Shiro, and that you're not doing redundant work. Other developers may also have ideas for the feature or suggestions that will help you land the feature without having to re-do the work. More information about our mailing lists can be found here.
+<a name="HowtoContribute-gettingStartedGit"></a>
+### Getting Started with Development
 
-In short, communication is a vital part of making a contribution to an Apache project.
+Go to [Github](https://github.com/apache/shiro "Shiro") and fork the project by pressing the Fork button. Fork makes a copy of an existing repository and you can start doing new development on your copy.
 
-<a name="HowtoContribute-gettingStartedGit"></a>
-###Getting Started
+### Getting Started with Git
 
-First, lets make sure that you've added your name and email to your `~/.gitconfig`:
+Add your name and email to your `~/.gitconfig`:
 
 ``` bash
 $ git config --global user.name "Your Name"
 $ git config --global user.email you@domain.com
 ```
 
-You'll grab the Shiro source with git:
+Obtain a copy of the Shiro source code:
 
 ``` bash
 $ git clone https://gitbox.apache.org/repos/asf/shiro.git
 ```
 
-If you already have the source, make sure you're working with the most recent version. Do a `git pull` if you cloned the source more than a few hours ago. (Apache Shiro development can move pretty fast!)
+Make sure you're working with the most recent version. Do a `git pull` if you cloned the source more than a few hours ago.
 
 ``` bash
 $ git checkout -b mybranch
 ```
 
-This does two things: One, it creates the branch mybranch and two, it changes your working branch to mybranch. Running `git branch` will show you which branch you're working on, with an asterisk next to the active branch, like so:
+This does two things:
+* creates the branch mybranch
+* changes your working branch to mybranch.
+Running `git branch` will show you which branch you're working on, with an asterisk next to the active branch.
 
 ``` bash
 [user@localhost shiro]$ git branch
@@ -134,44 +140,59 @@ main
 * mybranch
 ```
 
-Make whatever changes you're going to make, be sure to use git add to stage the changes, and then you're going to commit the changes to your working branch:
+Use `git add` to stage the changes. Commit the changes to your working branch:
 
 ``` bash
 git commit -m "Insert a meaningful summary of changes here."
 ```
 
-Finally, you can create a patch and attach it to the JIRA issue that you created for the bug you are fixing.
+Finally, you can create a patch and attach it to the Jira issue:
 
 ``` bash
 git format-patch main --stdout > ~/patch-name.patch
 ```
 
+* When sending a patch, you usually do not need to worry about which Git branch it should be applied to. The maintainers of the repository will decide.
+* Every contribution is worthwhile! Even when the code isn't perfect, or documentation has typos. Even if you got it wrong the first time around. Any contribution is a start of something special. Through your continued effort and the help of the community, your contribution will evolve.
+
 <a name="HowtoContribute-review"></a>
-###Review
+### Review
+After submitting pull request, you should receive a response within a few days. If you receive no response within a week, please send a message to the shiro-dev mailing list (dev@shiro.apache.org).
+
+<a name="HowtoContribute-committer"></a>
+<a name="HowtoContribute-GitCommitters"></a>
+## Git Committers
+
+After a developer has consistently provided contributions such as code, documentation and discussion, and demonstrated commitment, then the rest of the dev community may vote to grant this developer commit access to the Git repository. See the [ASF developers resources](http://www.apache.org/dev/) and especially the [Source code repositories](http://www.apache.org/dev/version-control.html).
+
+<a name="HowtoContribute-patches"></a>
+<a name="HowtoContribute-Howtoprepareandcontributepatches"></a>
+## Contributing as a Non-Committer
 
-Once you've submitted your pull request, you should receive a response within a few days. If you receive no response within a week, please ping the shiro-dev mailing list (dev@shiro.apache.org).
+Non-committers have to submit patches for review. Apache Shiro accepts GitHub pull requests. 
+
+Apache Shiro has a read-only mirror on GitHub that is kept in sync with the canonical Git repo maintained by the Apache Software Foundation. For detailed instructions see the [GitHub Contribution Guidelines](https://github.com/apache/shiro/blob/master/CONTRIBUTING.md).
 
 <a name="HowtoContribute-tips"></a>
 <a name="HowtoContribute-ContributionNotesandTips"></a>
-##Contribution Notes and Tips
+## Contribution Notes and Tips
 
 This is a collection of tips for contributing to the project in a manner that is productive for all parties.
 
-*   See general ASF [Tips for email contributors](http://www.apache.org/dev/contrib-email-tips.html)
-*   There is no such thing as a dumb question. Always check the [archives](mailing-lists.html "Mailing Lists") to see if someone else asked it first and maybe already received an answer.
-*   Every contribution is worthwhile. Even if the code isn't perfect. Even if the documentation has typos. Even if you got it wrong the first time around. Any contribution is a start of something special. Through your continued effort and the help of the community, your contribution will evolve and get ever closer to "perfect".
-*   Use sensible and concise email subject headings. Search engines, and humans trying to browse a voluminous list, will respond favourably to a descriptive title.
-*   Start new threads with new Subject for new topics, rather than reusing the previous Subject line.
-*   Keep each topic focused. If some new topic arises then start a new discussion. This leaves the original topic to continue uncluttered.  
-    Whenever you decide to start a new topic, then start with a fresh new email message window. Do not use the "Reply to" button, because threaded mail-readers get confused (they utilise the In-reply-to header). If so, then your new topic will get lost in the previous thread and go unanswered.
-*   Prepend your email subject line with a marker when that is appropriate, e.g. [Proposal], [RT] (Random Thought which quickly blossom into research topics <i class="fa fa-smile-o" aria-hidden="true"></i>, [STATUS] (development status of a certain facility).
-*   Remember that most people are participating in development on a volunteer basis and in their "spare time". These enthusiasts will attempt to respond to issues. It may take a little while to get your answers.
-*   Research your topic thoroughly before beginning to discuss a new development issue. Search and browse through the email archives - your issue may have been discussed before. Do not just perceive a problem and then rush out with a question - instead, delve.
-*   Try to at least offer a partial solution and not just a problem statement.
-*   Take the time to clearly explain your issue and write a concise email message. Less confusion facilitates fast and complete resolution.
-*   Do not bother to send an email reply that simply says "thanks". When the issue is resolved, that is the finish - end of thread. Reduce clutter.
-*   You would usually do any development work against the main branch in Git.
-*   When sending a patch, you usually do not need to worry about which Git branch it should be applied to. The maintainers of the repository will decide.
-*   Keep all project-related discussion on the mailing list. It is much better to utilise the wider audience, rather than to break off into private discussion groups. You never know who else will have the answer to your issues, and anyway other people are interested in the outcome.
-*   Become familiar with the mailing lists. As you browse and search, you will see the way other people do things. Follow the leading examples.
+### Links
+* [Tips for email contributors](http://www.apache.org/dev/contrib-email-tips.html).
+* Old questions and answers in [archives](https://shiro.apache.org/mailing-lists.html "Mailing Lists").
+
+There are no dumb questions. But browse, search and learn from mailing list archives. Research your topic thoroughly before beginning to discuss a new development issue. 
+
+### Emails
+* Start new threads with new Subject for new topics, rather than reusing the previous Subject line. Use a descriptive title!
+** Clearly explain your issue and write a concise email message.
+* Try to at least offer a partial solution and not just a problem statement.
+* Prepend your email subject line with a marker when that is appropriate, e.g.:
+** [Proposal]
+** [RT] (Random Thought which quickly blossom into research topics)
+** [STATUS] (development status of a certain facility)
+
+Reduce clutter, don't send an e-mail which simply says "thanks". Keep all project-related discussion on the mailing list. It is better to utilize the wider audience, rather than to break off into private discussions. You never know who else will have the answer to your issues, and anyway other people are interested in the outcome. 
 <input type="hidden" id="ghEditPage" value="how-to-contribute.md"></input>

[shiro-site] 01/06: [JBake][Templates] Download pages.

Posted by bm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

bmarwell pushed a commit to branch jbake
in repository https://gitbox.apache.org/repos/asf/shiro-site.git

commit 045c74dbc8180c262155f0d25bfa0a3f675d0b19
Author: Benjamin Marwell <bm...@apache.org>
AuthorDate: Mon Sep 6 07:05:57 2021 +0200

    [JBake][Templates] Download pages.
---
 download.html.vtl                        | 424 -------------------------------
 jbake/content/download.adoc              |  20 ++
 jbake/content/release-archive.adoc       |  21 ++
 jbake/jbake.properties                   |   3 +
 jbake/templates/download.ftl             |  72 ++++++
 jbake/templates/macros/artifacttable.ftl |  47 ++++
 jbake/templates/macros/versions.ftl      |  97 +++++++
 7 files changed, 260 insertions(+), 424 deletions(-)

diff --git a/download.html.vtl b/download.html.vtl
deleted file mode 100644
index 1e9b642..0000000
--- a/download.html.vtl
+++ /dev/null
@@ -1,424 +0,0 @@
-#parse("templates/includes.vtl")
-#mdStyle()
-
-#macro(artifactTable, $versionObject)
-
-<table style="width: 100%" class="table">
-    <thead>
-    <tr>
-        <th class="col-md-1">Artifact</th>
-        <th class="col-md-3">Maven Usage</th>
-        <th class="col-md-3">Notes</th>
-    </tr>
-    </thead>
-    <tbody>
-        #foreach($artifact in $versionObject.artifacts)
-        <tr>
-            #set($version = $versionObject.version)
-
-            #if($artifact.c)
-                #set($classifier = "-$artifact.c")
-            #else
-                #set($classifier = "")
-            #end
-
-            <td style="white-space: nowrap;">
-                <a href="https://repo1.maven.org/maven2/$artifact.g.replace('.', '/')/${artifact.a}/${version}/${artifact.a}-${version}${classifier}.${artifact.type}">$artifact.a</a><br/>
-                (<a href="https://repo1.maven.org/maven2/$artifact.g.replace('.', '/')/${artifact.a}/${version}/${artifact.a}-${version}${classifier}.${artifact.type}.asc">pgp</a>,
-                <a href="https://repo1.maven.org/maven2/$artifact.g.replace('.', '/')/${artifact.a}/${version}/${artifact.a}-${version}${classifier}.${artifact.type}.md5">md5</a>,
-                <a href="https://repo1.maven.org/maven2/$artifact.g.replace('.', '/')/${artifact.a}/${version}/${artifact.a}-${version}${classifier}.${artifact.type}.sha1">sha1</a>)
-            </td>
-
-            <td>
-                #if($artifact.gavAlt)
-                    $artifact.gavAlt
-                #else
-<pre><code class="xml">&lt;dependency&gt;
-  &lt;groupId&gt;$artifact.g&lt;/groupId&gt;
-  &lt;artifactId&gt;$artifact.a&lt;/artifactId&gt;
-  &lt;version&gt;$version&lt;/version&gt;
-&lt;/dependency&gt;
-</code></pre>
-                #end
-            </td>
-
-            <td>$artifact.description.replace('%version%', "$version")</td>
-
-        </tr>
-        #end
-    </tbody>
-</table>
-#end
-
-<h1><a name="Download-DownloadApacheShiro"></a>Download Apache Shiro</h1>
-
-<p>Apache Shiro ${latestRelease} is the current stable release (Java 1.8+ JVM).</p>
-
-<p>To download Shiro please follow the instructions below.</p>
-
-<h3>Code Signatures</h3>
-
-<p>You may <a class="external-link" href="https://infra.apache.org/release-signing.html#verifying-signature">verify the
-    authenticity</a> of all artifacts below by using the PGP <a class="external-link"
-                                                                href="https://www.apache.org/dist/shiro/KEYS">KEYS</a>
-    file. </p>
-
-<h3>Releases</h3>
-
-<div>
-    <ul>
-        <li>
-            <a href="#latest">Latest Stable Release (${latestRelease})</a>
-            <ul>
-                <li><a href="#latestBinary">${latestRelease} Binary Distribution</a></li>
-                <li><a href="#latestSource">${latestRelease} Source Code Distribution</a></li>
-                <li><a href="#latestGit">${latestRelease} Git Source repository</a></li>
-            </ul>
-        </li>
-
-        <li><a href="#previous">Previous Releases</a>
-            <ul>
-                <li><a href="#1.7.x">$shiro17x.version</a></li>
-                <ul>
-                    <li><a href="#1.7.xBinary">$shiro17x.version Binary Distribution</a></li>
-                    <li><a href="#1.7.xSource">$shiro17x.version Source Code Distribution</a></li>
-                    <li><a href="#1.7.xGit">$shiro17x.version Git Source repository</a></li>
-                </ul>
-            </ul>
-            <ul>
-                <li><a href="#1.6.x">$shiro16x.version</a></li>
-                <ul>
-                    <li><a href="#1.6.xBinary">$shiro16x.version Binary Distribution</a></li>
-                    <li><a href="#1.6.xSource">$shiro16x.version Source Code Distribution</a></li>
-                    <li><a href="#1.6.xGit">$shiro16x.version Git Source repository</a></li>
-                </ul>
-            </ul>
-            <ul>
-                <li><a href="#1.5.x">$shiro15x.version</a></li>
-                <ul>
-                    <li><a href="#1.5.xBinary">$shiro15x.version Binary Distribution</a></li>
-                    <li><a href="#1.5.xSource">$shiro15x.version Source Code Distribution</a></li>
-                    <li><a href="#1.5.xGit">$shiro15x.version Git Source repository</a></li>
-                </ul>
-            </ul>
-            <ul>
-                <li><a href="#1.4.x">$shiro14x.version</a></li>
-                <ul>
-                    <li><a href="#1.4.xBinary">$shiro14x.version Binary Distribution</a></li>
-                    <li><a href="#1.4.xSource">$shiro14x.version Source Code Distribution</a></li>
-                    <li><a href="#1.4.xGit">$shiro14x.version Git Source repository</a></li>
-                </ul>
-            </ul>
-            <ul>
-                <li><a href="#1.3.x">$shiro13x.version</a></li>
-                <ul>
-                    <li><a href="#1.3.xBinary">$shiro13x.version Binary Distribution</a></li>
-                    <li><a href="#1.3.xSource">$shiro13x.version Source Code Distribution</a></li>
-                    <li><a href="#1.3.xGit">$shiro13x.version Git Source repository</a></li>
-                </ul>
-            </ul>
-            <ul>
-                <li><a href="#1.2.x">$shiro12x.version</a></li>
-                <ul>
-                    <li><a href="#1.2.xBinary">$shiro12x.version Binary Distribution</a></li>
-                    <li><a href="#1.2.xSource">$shiro12x.version Source Code Distribution</a></li>
-                    <li><a href="#1.2.xGit">$shiro12x.version Git Source repository</a></li>
-                </ul>
-            </ul>
-            <ul>
-                <li><a href="#1.1.x">$shiro11x.version</a></li>
-                <ul>
-                    <li><a href="#1.1.xBinary">$shiro11x.version Binary Distribution</a></li>
-                    <li><a href="#1.1.xSource">$shiro11x.version Source Code Distribution</a></li>
-                    <li><a href="#1.1.xGit">$shiro11x.version Git Source repository</a></li>
-                </ul>
-            </ul>
-        </li>
-    </ul>
-</div>
-
-
-<h2><a name="latest"></a>Latest Stable Release</h2>
-
-<!-- SHIRO LATEST VERSION -->
-<h3>${latestRelease}</h3>
-
-<h4><a name="latestBinary"></a>${latestRelease} Binary Distribution</h4>
-
-<p>Associated documentation can be found <a href="documentation.html" title="Documentation">here</a></p>
-
-<p>To download the files directly as one .jar file just click the link in the "Artifact" column. If you would like
-    acquire Shiro through Maven, then please use the markup listed under "Maven Usage"</p>
-
-<p>
-</p>
-
-#artifactTable($shiro18x)
-
-<h4><a name="latestSource"></a>${latestRelease} Source Code Distribution</h4>
-
-<p>The source bundle requires JDK 1.8 and Maven 3.0.3+ to build:</p>
-
-<p><a class="external-link" href="https://www.apache.org/dyn/closer.lua/shiro/${latestRelease}/shiro-root-${latestRelease}-source-release.zip">zip</a>
-    (<a class="external-link"
-        href="https://www.apache.org/dist/shiro/${latestRelease}/shiro-root-${latestRelease}-source-release.zip.asc">pgp</a>, <a
-            class="external-link"
-            href="https://www.apache.org/dist/shiro/${latestRelease}/shiro-root-${latestRelease}-source-release.zip.sha512">sha512</a>)
-</p>
-
-<h4><a name="latestGit"></a>${latestRelease} Git Source repository</h4>
-
-<p>The source can be cloned anonymously from Git with this command:</p>
-<pre><code style="bash">git clone https://github.com/apache/shiro.git
-git checkout shiro-root-${latestRelease} -b shiro-root-${latestRelease}
-</code>
-</pre>
-
-
-<h2><a name="previous"></a>Previous Releases</h2>
-
-<!-- SHIRO 1.7.X VERSION -->
-<h3><a name="1.7.x"></a>${shiro17x.version}</h3>
-
-<h4><a name="1.7.xBinary"></a>${shiro17x.version} Binary Distribution</h4>
-
-<p>Associated documentation can be found <a href="documentation.html" title="Documentation">here</a></p>
-
-<p>To download the files directly as one .jar file just click the link in the "Artifact" column. If you would like
-    acquire Shiro through Maven, then please use the markup listed under "Maven Usage"</p>
-
-<p>
-</p>
-
-#artifactTable($shiro17x)
-
-<h4><a name="1.7.xSource"></a>${shiro17x.version} Source Code Distribution</h4>
-
-<p>The source bundle requires JDK 1.8 and Maven 3.0.3+ to build:</p>
-
-<p><a class="external-link" href="https://www.apache.org/dyn/closer.lua/shiro/${shiro17x.version}/shiro-root-${shiro17x.version}-source-release.zip">zip</a>
-    (<a class="external-link"
-        href="https://www.apache.org/dist/shiro/${shiro17x.version}/shiro-root-${shiro17x.version}-source-release.zip.asc">pgp</a>, <a
-            class="external-link"
-            href="https://www.apache.org/dist/shiro/${shiro17x.version}/shiro-root-${shiro17x.version}-source-release.zip.md5">md5</a>, <a
-           class="external-link"
-           href="https://www.apache.org/dist/shiro/${shiro17x.version}/shiro-root-${shiro17x.version}-source-release.zip.sha1">sha1</a>)
-</p>
-
-<h4><a name="1.7.xGit"></a>${shiro17x.version} Git Source repository</h4>
-
-<p>The source can be cloned anonymously from Git with this command:</p>
-<pre><code class="bash">git clone https://github.com/apache/shiro.git
-git checkout shiro-root-${shiro17x.version} -b shiro-root-${shiro17x.version}
-</code></pre>
-
-<!-- SHIRO 1.6.X VERSION -->
-<h3><a name="1.6.x"></a>${shiro16x.version}</h3>
-
-<h4><a name="1.6.xBinary"></a>${shiro16x.version} Binary Distribution</h4>
-
-<p>Associated documentation can be found <a href="documentation.html" title="Documentation">here</a></p>
-
-<p>To download the files directly as one .jar file just click the link in the "Artifact" column. If you would like
-    acquire Shiro through Maven, then please use the markup listed under "Maven Usage"</p>
-
-<p>
-</p>
-
-#artifactTable($shiro16x)
-
-<h4><a name="1.6.xSource"></a>${shiro16x.version} Source Code Distribution</h4>
-
-<p>The source bundle requires JDK 1.8 and Maven 3.0.3+ to build:</p>
-
-<p><a class="external-link" href="https://www.apache.org/dyn/closer.lua/shiro/${shiro16x.version}/shiro-root-${shiro16x.version}-source-release.zip">zip</a>
-    (<a class="external-link"
-        href="https://www.apache.org/dist/shiro/${shiro16x.version}/shiro-root-${shiro16x.version}-source-release.zip.asc">pgp</a>, <a
-            class="external-link"
-            href="https://www.apache.org/dist/shiro/${shiro16x.version}/shiro-root-${shiro16x.version}-source-release.zip.md5">md5</a>, <a
-           class="external-link"
-           href="https://www.apache.org/dist/shiro/${shiro16x.version}/shiro-root-${shiro16x.version}-source-release.zip.sha1">sha1</a>)
-</p>
-
-<h4><a name="1.6.xGit"></a>${shiro16x.version} Git Source repository</h4>
-
-<p>The source can be cloned anonymously from Git with this command:</p>
-<pre><code class="bash">git clone https://github.com/apache/shiro.git
-git checkout shiro-root-${shiro16x.version} -b shiro-root-${shiro16x.version}
-</code></pre>
-
-
-<!-- SHIRO 1.5.X VERSION -->
-<h3><a name="1.5.x"></a>${shiro15x.version}</h3>
-
-<h4><a name="1.5.xBinary"></a>${shiro15x.version} Binary Distribution</h4>
-
-<p>Associated documentation can be found <a href="documentation.html" title="Documentation">here</a></p>
-
-<p>To download the files directly as one .jar file just click the link in the "Artifact" column. If you would like
-    acquire Shiro through Maven, then please use the markup listed under "Maven Usage"</p>
-
-<p>
-</p>
-
-#artifactTable($shiro15x)
-
-<h4><a name="1.5.xSource"></a>${shiro15x.version} Source Code Distribution</h4>
-
-<p>The source bundle requires JDK 1.8 and Maven 3.0.3+ to build:</p>
-
-<p><a class="external-link" href="https://www.apache.org/dyn/closer.lua/shiro/${shiro15x.version}/shiro-root-${shiro15x.version}-source-release.zip">zip</a>
-    (<a class="external-link"
-        href="https://www.apache.org/dist/shiro/${shiro15x.version}/shiro-root-${shiro15x.version}-source-release.zip.asc">pgp</a>, <a
-            class="external-link"
-            href="https://www.apache.org/dist/shiro/${shiro15x.version}/shiro-root-${shiro15x.version}-source-release.zip.sha512">sha512</a>)
-</p>
-
-<h4><a name="1.5.xGit"></a>${shiro15x.version} Git Source repository</h4>
-
-<p>The source can be cloned anonymously from Git with this command:</p>
-<pre><code class="bash">git clone https://github.com/apache/shiro.git
-git checkout shiro-root-${shiro15x.version} -b shiro-root-${shiro15x.version}
-</code></pre>
-
-
-<!-- SHIRO 1.4.X VERSION -->
-<h3><a name="1.4.x"></a>${shiro14x.version}</h3>
-
-<h4><a name="1.4.xBinary"></a>${shiro14x.version} Binary Distribution</h4>
-
-<p>Associated documentation can be found <a href="documentation.html" title="Documentation">here</a></p>
-
-<p>To download the files directly as one .jar file just click the link in the "Artifact" column. If you would like
-    acquire Shiro through Maven, then please use the markup listed under "Maven Usage"</p>
-
-<p>
-</p>
-
-#artifactTable($shiro14x)
-
-<h4><a name="1.4.xSource"></a>${shiro14x.version} Source Code Distribution</h4>
-
-<p>The source bundle requires JDK 1.6 and Maven 3.0.3+ to build:</p>
-
-<p><a class="external-link" href="https://www.apache.org/dyn/closer.lua/shiro/${shiro14x.version}/shiro-root-${shiro14x.version}-source-release.zip">zip</a>
-    (<a class="external-link"
-        href="https://www.apache.org/dist/shiro/${shiro14x.version}/shiro-root-${shiro14x.version}-source-release.zip.asc">pgp</a>, <a
-            class="external-link"
-            href="https://www.apache.org/dist/shiro/${shiro14x.version}/shiro-root-${shiro14x.version}-source-release.zip.sha512">sha512</a>)
-</p>
-
-<h4><a name="1.4.xGit"></a>${shiro14x.version} Git Source repository</h4>
-
-<p>The source can be cloned anonymously from Git with this command:</p>
-<pre><code class="bash">git clone https://github.com/apache/shiro.git
-git checkout shiro-root-${shiro14x.version} -b shiro-root-${shiro14x.version}
-</code></pre>
-
-
-<!-- SHIRO 1.3.X VERSION -->
-<h3><a name="1.3.x"></a>${shiro13x.version}</h3>
-
-<h4><a name="1.3.xBinary"></a>${shiro13x.version} Binary Distribution</h4>
-
-<p>Associated documentation can be found <a href="documentation.html" title="Documentation">here</a></p>
-
-<p>To download the files directly as one .jar file just click the link in the "Artifact" column. If you would like
-    acquire Shiro through Maven, then please use the markup listed under "Maven Usage"</p>
-
-<p>
-</p>
-
-#artifactTable($shiro13x)
-
-<h4><a name="1.3.xSource"></a>${shiro13x.version} Source Code Distribution</h4>
-
-<p>The source bundle requires JDK 1.6 and Maven 3.0.3+ to build:</p>
-
-<p><a class="external-link" href="https://www.apache.org/dyn/closer.lua/shiro/${shiro13x.version}/shiro-root-${shiro13x.version}-source-release.zip">zip</a>
-    (<a class="external-link"
-        href="https://www.apache.org/dist/shiro/${shiro13x.version}/shiro-root-${shiro13x.version}-source-release.zip.asc">pgp</a>, <a
-            class="external-link"
-            href="https://www.apache.org/dist/shiro/${shiro13x.version}/shiro-root-${shiro13x.version}-source-release.zip.md5">md5</a>, <a
-            class="external-link"
-            href="https://www.apache.org/dist/shiro/${shiro13x.version}/shiro-root-${shiro13x.version}-source-release.zip.sha1">sha1</a>)
-</p>
-
-<h4><a name="1.3.xGit"></a>${shiro13x.version} Git Source repository</h4>
-
-<p>The source can be cloned anonymously from Git with this command:</p>
-<pre><code class="bash">git clone https://github.com/apache/shiro.git
-git checkout shiro-root-${shiro13x.version} -b shiro-root-${shiro13x.version}
-</code></pre>
-
-<!-- SHIRO 1.2.X VERSION -->
-<h3><a name="1.2.x"></a>${shiro12x.version}</h3>
-
-<h4><a name="1.2.xBinary"></a>${shiro12x.version} Binary Distribution</h4>
-
-<p>Associated documentation can be found <a href="documentation.html" title="Documentation">here</a></p>
-
-<p>To download the files directly as one .jar file just click the link in the "Artifact" column. If you would like
-    acquire Shiro through Maven, then please use the markup listed under "Maven Usage"</p>
-
-<p>
-</p>
-
-#artifactTable($shiro12x)
-
-<h4><a name="1.2.xSource"></a>${shiro12x.version} Source Code Distribution</h4>
-
-<p>The source bundle requires JDK 1.6 and Maven 3.0.3+ to build:</p>
-
-<p><a class="external-link" href="https://www.apache.org/dyn/closer.lua/shiro/${shiro12x.version}/shiro-root-${shiro12x.version}-source-release.zip">zip</a>
-    (<a class="external-link"
-        href="https://www.apache.org/dist/shiro/${shiro12x.version}/shiro-root-${shiro12x.version}-source-release.zip.asc">pgp</a>, <a
-            class="external-link"
-            href="https://www.apache.org/dist/shiro/${shiro12x.version}/shiro-root-${shiro12x.version}-source-release.zip.md5">md5</a>, <a
-            class="external-link"
-            href="https://www.apache.org/dist/shiro/${shiro12x.version}/shiro-root-${shiro12x.version}-source-release.zip.sha1">sha1</a>)
-</p>
-
-<h4><a name="1.2.xGit"></a>${shiro12x.version} Git Source repository</h4>
-
-<p>The source can be cloned anonymously from Git with this command:</p>
-<pre><code class="bash">git clone https://github.com/apache/shiro.git
-git checkout shiro-root-${shiro12x.version} -b shiro-root-${shiro12x.version}
-</code></pre>
-
-
-<!-- SHIRO 1.1.X VERSION -->
-<h3><a name="1.1.x"></a>${shiro11x.version}</h3>
-
-<h4><a name="1.1.xBinary"></a>${shiro11x.version} Binary Distribution</h4>
-
-<p>Associated documentation can be found <a href="documentation.html" title="Documentation">here</a></p>
-
-<p>To download the files directly as one .jar file just click the link in the "Artifact" column. If you would like
-    acquire Shiro through Maven, then please use the markup listed under "Maven Usage"</p>
-
-<p>
-</p>
-
-#artifactTable($shiro11x)
-
-<h4><a name="1.1.xSource"></a>${shiro11x.version} Source Code Distribution</h4>
-
-<p>The ${shiro11x.version} source bundle requires JDK 1.5+ and Maven 2.2+ to build:</p>
-
-<p><a class="external-link"
-      href="https://www.apache.org/dyn/closer.lua/shiro/${shiro11x.version}/shiro-root-${shiro11x.version}-source-release.zip">zip</a> (<a
-        class="external-link" href="https://archive.apache.org/dist/shiro/${shiro11x.version}/shiro-root-${shiro11x.version}-source-release.zip.asc">pgp</a>,
-    <a class="external-link" href="https://archive.apache.org/dist/shiro/${shiro11x.version}/shiro-root-${shiro11x.version}-source-release.zip.md5">md5</a>,
-    <a class="external-link" href="https://archive.apache.org/dist/shiro/${shiro11x.version}/shiro-root-${shiro11x.version}-source-release.zip.sha1">sha1</a>)
-</p>
-
-<h4><a name="1.1.xGit"></a>${shiro11x.version} Git Source repository</h4>
-
-<p>The source can be cloned anonymously from Git with this command:</p>
-<pre><code class="bash">git clone https://github.com/apache/shiro.git
-git checkout shiro-root-${shiro11x.version} -b shiro-root-${shiro11x.version}
-</code></pre>
-
-
-<input type="hidden" id="ghEditPage" value="download.html.vtl"></input>
diff --git a/jbake/content/download.adoc b/jbake/content/download.adoc
new file mode 100644
index 0000000..5db5b5d
--- /dev/null
+++ b/jbake/content/download.adoc
@@ -0,0 +1,20 @@
+= Download Apache Shiro
+:jbake-type: download
+:jbake-status: published
+:jbake-tags: documentation, download
+:jbake-releases: {"versions":["shiro18x"]}
+:idprefix:
+:icons: font
+
+Apache Shiro ${latestRelease} is the current stable release (Java 1.8+ JVM).
+
+To download Shiro please follow the instructions below.
+
+== Code Signatures
+
+You may link:https://infra.apache.org/release-signing.html#verifying-signature[verify the authenticity] of all artifacts below by using the PGP link:https://www.apache.org/dist/shiro/KEYS[KEYS] file.
+
+== Current Release
+
+The current release is ${latestRelease}.
+For older releases, please visit our link:release-archive.html[release archive].
diff --git a/jbake/content/release-archive.adoc b/jbake/content/release-archive.adoc
new file mode 100644
index 0000000..1570d60
--- /dev/null
+++ b/jbake/content/release-archive.adoc
@@ -0,0 +1,21 @@
+= Release Archive
+:jbake-type: download
+:jbake-status: published
+:jbake-tags: documentation, download, archive
+:jbake-releases: { "versions": [ "shiro17x", "shiro16x" ] }
+:idprefix:
+
+This is the Apache Shiro release archive.
+
+To download archived versions of Apache Shiro please follow the instructions below.
+Please note that the current version of Apache Shiro is ${latestRelease}.
+We recommend to stick to the latest version.
+
+== Code Signatures
+
+You may link:https://infra.apache.org/release-signing.html#verifying-signature[verify the authenticity] of all artifacts below by using the PGP link:https://www.apache.org/dist/shiro/KEYS[KEYS] file.
+
+== Previous Releases
+
+This is the release archive.
+To download the current release, please go to the link:download.html[download page] instead.
diff --git a/jbake/jbake.properties b/jbake/jbake.properties
index 7255bdb..608fb5e 100644
--- a/jbake/jbake.properties
+++ b/jbake/jbake.properties
@@ -2,3 +2,6 @@ site.host=https://shiro.apache.org
 render.tags=false
 render.sitemap=true
 render.archive=true
+
+template.download.file=download.ftl
+
diff --git a/jbake/templates/download.ftl b/jbake/templates/download.ftl
new file mode 100644
index 0000000..61f0444
--- /dev/null
+++ b/jbake/templates/download.ftl
@@ -0,0 +1,72 @@
+<#include "header.ftl">
+
+<#include "menu.ftl">
+
+<#include "macros/artifacttable.ftl">
+
+<#if (content.title)??>
+  <div class="page-header">
+    <h1>${content.title}</h1>
+  </div>
+<#else></#if>
+
+<p><@content.body?interpret /></p>
+
+<p>
+  <ul>
+  <#list ((content.releases).versions)![] as version>
+    <#assign release=version?eval />
+    <li><a href="#${release.version?replace(".", "")}">Apache Shiro Release v${release.version}</a></li>
+    <ul>
+      <li><a href="#${release.version?replace(".", "")}Binary">${release.version} Binary Distribution</a></li>
+      <li><a href="#${release.version?replace(".", "")}Source">${release.version} Source Code Distribution</a></li>
+      <li><a href="#${release.version?replace(".", "")}Git">${release.version} Git Source repository</a></li>
+    </ul>
+  </#list>
+  </ul>
+</p>
+
+
+
+<#list ((content.releases).versions)![] as version>
+  <#assign release=version?eval />
+  <h2>Release ${release.version}</h2>
+
+  <h4><a id="#${release.version?replace(".", "")}Binary"></a>${release.version} Binary Distribution</h4>
+
+
+  <p>Associated documentation can be found <a href="documentation.html" title="Documentation">here</a></p>
+
+  <p>To download the files directly as one .jar file just click the link in the "Artifact" column. If you would like
+    acquire Shiro through Maven, then please use the markup listed under "Maven Usage"</p>
+
+  <p>
+  </p>
+
+  <@artifactTable versionObject=release />
+
+  <h4><a id=""#${release.version?replace(".", "")}Source"></a>${release.version} Source Code Distribution</h4>
+
+  <p>The source bundle requires JDK 1.8 and Maven 3.0.3+ to build:</p>
+
+  <p><a class="external-link" href="https://www.apache.org/dyn/closer.lua/shiro/${release.version}/shiro-root-${release.version}-source-release.zip">zip</a>
+    (<a class="external-link"
+        href="https://www.apache.org/dist/shiro/${release.version}/shiro-root-${release.version}-source-release.zip.asc">pgp</a>, <a
+            class="external-link"
+            href="https://www.apache.org/dist/shiro/${release.version}/shiro-root-${release.version}-source-release.zip.sha512">sha512</a>)
+  </p>
+
+  <h4><a name="latestGit"></a>${release.version} Git Source repository</h4>
+
+  <p>The source can be cloned anonymously from Git with this command:</p>
+  <pre><code style="bash" class="language-bash">git clone https://github.com/apache/shiro.git
+git checkout shiro-root-${release.version} -b shiro-root-${release.version}
+</code>
+</pre>
+
+</#list>
+
+
+<hr />
+
+<#include "footer.ftl">
diff --git a/jbake/templates/macros/artifacttable.ftl b/jbake/templates/macros/artifacttable.ftl
new file mode 100644
index 0000000..9121740
--- /dev/null
+++ b/jbake/templates/macros/artifacttable.ftl
@@ -0,0 +1,47 @@
+<#macro artifactTable versionObject={} >
+<#assign version=versionObject.version />
+<table style="width: 100%" class="table">
+  <thead>
+    <tr>
+      <th class="col-md-1">Artifact</th>
+      <th class="col-md-3">Maven Usage</th>
+      <th class="col-md-3">Notes</th>
+    </tr>
+  </thead>
+
+  <tbody>
+  <#list versionObject.artifacts as artifact>
+  <tr>
+    <#assign classifier=artifact.c!"">
+    <#assign group=artifact.g?replace('.', '/') >
+
+    <td style="white-space: nowrap;">
+      <a href="https://repo1.maven.org/maven2/${group}/${artifact.a}/${version}/${artifact.a}-${version}${classifier}.${artifact.type}">${artifact.a}</a><br/>
+      (<a href="https://repo1.maven.org/maven2/${group}/${artifact.a}/${version}/${artifact.a}-${version}${classifier}.${artifact.type}.asc">pgp</a>,
+      <a href="https://repo1.maven.org/maven2/${group}/${artifact.a}/${version}/${artifact.a}-${version}${classifier}.${artifact.type}.md5">md5</a>,
+      <a href="https://repo1.maven.org/maven2/${group}/${artifact.a}/${version}/${artifact.a}-${version}${classifier}.${artifact.type}.sha1">sha1</a>)
+    </td>
+
+    <td>
+      <#if (artifact.gavAlt)?? >
+        ${artifact.gavAlt}
+      <#else>
+      </#if>
+      #if($artifact.gavAlt)
+
+      #else
+      <pre><code class="xml">&lt;dependency&gt;
+  &lt;groupId&gt;$artifact.g&lt;/groupId&gt;
+  &lt;artifactId&gt;$artifact.a&lt;/artifactId&gt;
+  &lt;version&gt;$version&lt;/version&gt;
+&lt;/dependency&gt;
+</code></pre>
+    </td>
+
+    <td>$artifact.description.replace('%version%', "$version")</td>
+
+  </tr>
+  </#list>
+  </tbody>
+</table>
+</#macro>
diff --git a/jbake/templates/macros/versions.ftl b/jbake/templates/macros/versions.ftl
index 998d3e8..9ba2c1f 100644
--- a/jbake/templates/macros/versions.ftl
+++ b/jbake/templates/macros/versions.ftl
@@ -58,6 +58,103 @@ environments (e.g. Ant). However, this is <b>NOT</b> recommended in Maven builds
 retain correct dependency metadata, which can lead to Maven working incorrectly. For Maven builds,
 it is <b>highly</b> recommended to specify individual modules listed below as you require them.'} />
 
+
+<#assign  shiro11x = {"version": "1.1.0", "artifacts": [
+  shiroAll,
+  shiroCore,
+  shiroWeb,
+  shiroAspectJ,
+  shiroEhCache,
+  shiroQuartz,
+  shiroSpring
+]} />
+
+<#assign  shiro12x = {"version": "1.2.6", "artifacts": [
+  shiroAll,
+  shiroCore,
+  shiroWeb,
+  shiroAspectJ,
+  shiroCas,
+  shiroEhCache,
+  shiroFeatures,
+  shiroGuice,
+  shiroQuartz,
+  shiroSpring,
+  shiroHasher
+]} />
+
+<#assign  shiro13x = {"version": "1.3.2", "artifacts": [
+  shiroAll,
+  shiroCore,
+  shiroWeb,
+  shiroAspectJ,
+  shiroCas,
+  shiroEhCache,
+  shiroHazelcast,
+  shiroFeatures,
+  shiroGuice,
+  shiroQuartz,
+  shiroSpring,
+  shiroHasher
+]} />
+
+<#assign  shiro14x = {"version": "1.4.2", "artifacts": [
+  shiroAll,
+  shiroCore,
+  shiroWeb,
+  shiroServletPlugin,
+  shiroJaxrs,
+  shiroAspectJ,
+  shiroCas,
+  shiroEhCache,
+  shiroHazelcast,
+  shiroFeatures,
+  shiroGuice,
+  shiroQuartz,
+  shiroSpring,
+  shiroSpringBoot,
+  shiroSpringBootWeb,
+  shiroHasher
+]} />
+
+<#assign  shiro15x = {"version": "1.5.3", "artifacts": [
+  shiroAll,
+  shiroCore,
+  shiroWeb,
+  shiroServletPlugin,
+  shiroJaxrs,
+  shiroAspectJ,
+  shiroCas,
+  shiroEhCache,
+  shiroHazelcast,
+  shiroFeatures,
+  shiroGuice,
+  shiroQuartz,
+  shiroSpring,
+  shiroSpringBoot,
+  shiroSpringBootWeb,
+  shiroHasher
+]} />
+
+<#assign  shiro16x = {"version": "1.6.0", "artifacts": [
+  shiroAll,
+  shiroCore,
+  shiroWeb,
+  shiroServletPlugin,
+  shiroJaxrs,
+  shiroAspectJ,
+  shiroCas,
+  shiroEhCache,
+  shiroHazelcast,
+  shiroFeatures,
+  shiroGuice,
+  shiroQuartz,
+  shiroSpring,
+  shiroSpringBoot,
+  shiroSpringBootWeb,
+  shiroHasher
+]} />
+
 <#assign shiro17x = {"version": "1.7.1", "artifacts": [
   shiroAll,
   shiroCore,

[shiro-site] 02/06: [JBake][Templates] Use yaml data for download pages.

Posted by bm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

bmarwell pushed a commit to branch jbake
in repository https://gitbox.apache.org/repos/asf/shiro-site.git

commit 77da2c5207971b49ef3690826c2ab57c5b233ec7
Author: Benjamin Marwell <bm...@apache.org>
AuthorDate: Mon Sep 6 07:15:17 2021 +0200

    [JBake][Templates] Use yaml data for download pages.
---
 jbake/.gitignore                         |   1 +
 jbake/content/release-archive.adoc       |   1 -
 jbake/data/artifacts.yaml                | 120 +++++++++++++++++++
 jbake/data/releases.yaml                 | 167 ++++++++++++++++++++++++++
 jbake/jbake.properties                   |   4 +-
 jbake/pom.xml                            |  90 ++++++++++++++
 jbake/templates/download.ftl             |  15 ++-
 jbake/templates/macros/artifacttable.ftl |  20 ++--
 jbake/templates/macros/versions.ftl      | 198 +------------------------------
 9 files changed, 406 insertions(+), 210 deletions(-)

diff --git a/jbake/.gitignore b/jbake/.gitignore
index 53752db..9adf614 100644
--- a/jbake/.gitignore
+++ b/jbake/.gitignore
@@ -1 +1,2 @@
 output
+/target/
diff --git a/jbake/content/release-archive.adoc b/jbake/content/release-archive.adoc
index 1570d60..4c7520e 100644
--- a/jbake/content/release-archive.adoc
+++ b/jbake/content/release-archive.adoc
@@ -2,7 +2,6 @@
 :jbake-type: download
 :jbake-status: published
 :jbake-tags: documentation, download, archive
-:jbake-releases: { "versions": [ "shiro17x", "shiro16x" ] }
 :idprefix:
 
 This is the Apache Shiro release archive.
diff --git a/jbake/data/artifacts.yaml b/jbake/data/artifacts.yaml
new file mode 100644
index 0000000..83cf5ee
--- /dev/null
+++ b/jbake/data/artifacts.yaml
@@ -0,0 +1,120 @@
+artifacts:
+
+  shiroCore:
+    "g": "org.apache.shiro"
+    "a": "shiro-core"
+    "type": "jar"
+    "description": |
+      Required in all environments.
+      <a class="external-link" href="https://slf4j.org/">Slf4j</a>'s <code>slf4j-api</code> jar
+      and one of its binding jars is required.
+      <code>commons-beanutils</code> is required only if using INI config.
+
+  shiroWeb:
+    "g": "org.apache.shiro"
+    "a": "shiro-web"
+    "type": "jar"
+    "description": "Enables support for web-based applications."
+
+  shiroServletPlugin:
+    "g": "org.apache.shiro"
+    "a": "shiro-servlet-plugin"
+    "type": "jar"
+    "description": "Servlet Fragment which configures Shiro's servlet filter."
+
+  shiroJaxrs:
+    "g": "org.apache.shiro"
+    "a": "shiro-jaxrs"
+    "type": "jar"
+    "description": "Enables support for JAX-RS applications."
+
+  shiroAspectJ:
+    "g": "org.apache.shiro"
+    "a": "shiro-aspectj"
+    "type": "jar"
+    "description": |
+      Enables <a class="external-link" href="https://www.eclipse.org/aspectj/">AspectJ</a> support for Shiro AOP and Annotations.
+
+  shiroCas:
+    "g": "org.apache.shiro"
+    "a": "shiro-cas"
+    "type": "jar"
+    "description": |
+      Enables Jasig <a class='external-link' href='https://wiki.jasig.org/display/CAS/Home'>CAS</a> support.
+      <strong>Warning:</strong>&nbsp;
+      Shiro-CAS support is deprecated, support has been moved
+      to the Apache Shiro based <a href='https://github.com/bujiio/buji-pac4j'>buji-pac4j</a> project.
+
+  shiroEhCache:
+    "g": "org.apache.shiro"
+    "a": "shiro-ehcache"
+    "type": "jar"
+    "description": 'Enables <a class="external-link" href="https://www.ehcache.org">Ehcache</a>-based famework caching.'
+
+  shiroHazelcast:
+    "g": "org.apache.shiro"
+    "a": "shiro-hazelcast"
+    "type": "jar"
+    "description": 'Enables <a class="external-link" href="https://hazelcast.org">Hazelcast</a>-based famework caching.'
+
+  shiroFeatures:
+    "g": "org.apache.shiro"
+    "a": "shiro-features"
+    "c": "features"
+    "type": "xml"
+    "description": 'OSGi / <a class="external-link" href="https://karaf.apache.org/">Apache Karaf</a> integration.'
+
+  shiroGuice:
+    "g": "org.apache.shiro"
+    "a": "shiro-guice"
+    "type": "jar"
+    "description": 'Enables <a class="external-link" href="https://github.com/google/guice">Google Guice</a> integration.'
+
+  shiroQuartz:
+    "g": "org.apache.shiro"
+    "a": "shiro-quartz"
+    "type": "jar"
+    "description": |
+      Enables <a class="external-link" href="https://www.quartz-scheduler.org/">Quartz</a>-based scheduling for Shiro native session validation.
+
+  shiroSpring:
+    "g": "org.apache.shiro"
+    "a": "shiro-spring"
+    "type": "jar"
+    "description": 'Enables <a class="external-link" href="https://spring.io/">Spring Framework</a> integration.'
+
+  shiroSpringBoot:
+    "g": "org.apache.shiro"
+    "a": "shiro-spring-boot-starter"
+    "type": "jar"
+    "description": '<a class="external-link" href="https://spring.io/">Spring Boot</a> starter.'
+
+  shiroSpringBootWeb:
+    "g": "org.apache.shiro"
+    "a": "shiro-spring-boot-web-starter"
+    "type": "jar"
+    "description": '<a class="external-link" href="https://spring.io/">Spring Boot</a> web starter.'
+
+  shiroHasher:
+    "g": "org.apache.shiro.tools"
+    "a": "shiro-tools-hasher"
+    "c": "cli"
+    "type": "jar"
+    "gavAlt": '<b>Not Relevant</b>'
+    "description": |
+      A command-line program to perform hashing (MD5, SHA, etc) for files, streams and passwords.
+      Note that this is a command line program and not intended to be used as a Maven/program dependency.
+      It is intended to be downloaded and executed:
+      <pre><code class='bash'> java -jar shiro-tools-hasher-%version%-cli.jar</code></pre>
+
+  shiroAll:
+    "g": "org.apache.shiro"
+    "a": "shiro-all"
+    "type": "jar"
+    "gavAlt": '<b>Not Recommended</b>'
+    "description": |
+      Includes all binary functionality for Shiro (without dependencies),
+      useful in certain build environments (e.g. Ant).
+      However, this is <b>NOT</b> recommended in Maven builds
+      as it does not retain correct dependency metadata, which can lead to Maven working incorrectly.
+      For Maven builds, it is <b>highly</b> recommended to specify individual modules listed below as you require them.
diff --git a/jbake/data/releases.yaml b/jbake/data/releases.yaml
new file mode 100644
index 0000000..89a732a
--- /dev/null
+++ b/jbake/data/releases.yaml
@@ -0,0 +1,167 @@
+---
+# for each release, update this variable with the latest version.
+latestRelease: "1.8.0"
+
+# also add or replace the latest version here.
+versionInfo:
+  '1.8.0':
+    releaseDate: 2021-08-06
+
+# oldReleases contain a list of all releases but the most recent one.
+# this is used for release-archive.adoc.
+oldReleases:
+  - shiro17x
+  - shiro16x
+  - shiro15x
+  - shiro14x
+  - shiro13x
+  - shiro12x
+  - shiro11x
+
+# this is the release table.
+# for each minor release, only keep the latest bugfix release.
+# e.g. for shiro 1.2.x, only keep 1.2.6, not 1.2.5 etc.
+#
+# artifacts are a list of artifact names maintained in artifacts.yaml.
+releases:
+  shiro11x:
+    version: 1.1.0
+    artifacts:
+      - shiroAll
+      - shiroCore
+      - shiroWeb
+      - shiroAspectJ
+      - shiroEhCache
+      - shiroQuartz
+      - shiroSpring
+
+  shiro12x:
+    version: 1.2.6
+    artifacts:
+      - shiroAll
+      - shiroCore
+      - shiroWeb
+      - shiroAspectJ
+      - shiroCas
+      - shiroEhCache
+      - shiroFeatures
+      - shiroGuice
+      - shiroQuartz
+      - shiroSpring
+      - shiroHasher
+
+  shiro13x:
+    version: 1.3.2
+    artifacts:
+      - shiroAll
+      - shiroCore
+      - shiroWeb
+      - shiroAspectJ
+      - shiroCas
+      - shiroEhCache
+      - shiroHazelcast
+      - shiroFeatures
+      - shiroGuice
+      - shiroQuartz
+      - shiroSpring
+      - shiroHasher
+
+  shiro14x:
+    version: 1.4.2
+    artifacts:
+      - shiroAll
+      - shiroCore
+      - shiroWeb
+      - shiroServletPlugin
+      - shiroJaxrs
+      - shiroAspectJ
+      - shiroCas
+      - shiroEhCache
+      - shiroHazelcast
+      - shiroFeatures
+      - shiroGuice
+      - shiroQuartz
+      - shiroSpring
+      - shiroSpringBoot
+      - shiroSpringBootWeb
+      - shiroHasher
+
+  shiro15x:
+    version: 1.5.3
+    artifacts:
+      - shiroAll
+      - shiroCore
+      - shiroWeb
+      - shiroServletPlugin
+      - shiroJaxrs
+      - shiroAspectJ
+      - shiroCas
+      - shiroEhCache
+      - shiroHazelcast
+      - shiroFeatures
+      - shiroGuice
+      - shiroQuartz
+      - shiroSpring
+      - shiroSpringBoot
+      - shiroSpringBootWeb
+      - shiroHasher
+
+  shiro16x:
+    version: 1.6.0
+    artifacts:
+      - shiroAll
+      - shiroCore
+      - shiroWeb
+      - shiroServletPlugin
+      - shiroJaxrs
+      - shiroAspectJ
+      - shiroCas
+      - shiroEhCache
+      - shiroHazelcast
+      - shiroFeatures
+      - shiroGuice
+      - shiroQuartz
+      - shiroSpring
+      - shiroSpringBoot
+      - shiroSpringBootWeb
+      - shiroHasher
+
+  shiro17x:
+    version: 1.7.1
+    artifacts:
+      - shiroAll
+      - shiroCore
+      - shiroWeb
+      - shiroServletPlugin
+      - shiroJaxrs
+      - shiroAspectJ
+      - shiroCas
+      - shiroEhCache
+      - shiroHazelcast
+      - shiroFeatures
+      - shiroGuice
+      - shiroQuartz
+      - shiroSpring
+      - shiroSpringBoot
+      - shiroSpringBootWeb
+      - shiroHasher
+
+  shiro18x:
+    version: 1.8.0
+    artifacts:
+      - shiroAll
+      - shiroCore
+      - shiroWeb
+      - shiroServletPlugin
+      - shiroJaxrs
+      - shiroAspectJ
+      - shiroCas
+      - shiroEhCache
+      - shiroHazelcast
+      - shiroFeatures
+      - shiroGuice
+      - shiroQuartz
+      - shiroSpring
+      - shiroSpringBoot
+      - shiroSpringBootWeb
+      - shiroHasher
diff --git a/jbake/jbake.properties b/jbake/jbake.properties
index 608fb5e..7992cc1 100644
--- a/jbake/jbake.properties
+++ b/jbake/jbake.properties
@@ -1,7 +1,9 @@
 site.host=https://shiro.apache.org
+default.status=published
+asciidoctor.attributes=source-highlighter=highlight.js
+
 render.tags=false
 render.sitemap=true
 render.archive=true
 
 template.download.file=download.ftl
-
diff --git a/jbake/pom.xml b/jbake/pom.xml
new file mode 100644
index 0000000..92c9ac8
--- /dev/null
+++ b/jbake/pom.xml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache</groupId>
+    <artifactId>apache</artifactId>
+    <version>24</version>
+  </parent>
+
+  <groupId>org.apache.shirp</groupId>
+  <artifactId>shiro-website</artifactId>
+  <packaging>pom</packaging>
+  <version>999-SNAPSHOT</version>
+
+  <name>Apache Shiro website</name>
+  <description>
+    Apache Shiro is a yet powerful simple java security framework.
+  </description>
+  <url>https://shiro.apache.org</url>
+  <inceptionYear>2013</inceptionYear>
+  <licenses>
+    <license>
+      <name>The Apache Software License, Version 2.0</name>
+      <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
+      <distribution>repo</distribution>
+    </license>
+  </licenses>
+
+  <properties>
+    <project.build.outputTimestamp>1631003912</project.build.outputTimestamp>
+  </properties>
+
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.jbake</groupId>
+        <artifactId>jbake-maven-plugin</artifactId>
+        <version>0.3.6-rc.2</version>
+        <executions>
+          <execution>
+            <phase>generate-resources</phase>
+            <goals>
+              <goal>generate</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <inputDirectory>${project.basedir}</inputDirectory>
+          <outputDirectory>${project.build.directory}/website</outputDirectory>
+        </configuration>
+        <dependencies>
+          <dependency>
+            <groupId>org.jbake</groupId>
+            <artifactId>jbake-core</artifactId>
+            <version>2.7.0-rc.4</version>
+          </dependency>
+          <dependency>
+            <groupId>org.asciidoctor</groupId>
+            <artifactId>asciidoctorj</artifactId>
+            <version>2.5.2</version>
+          </dependency>
+          <dependency>
+            <groupId>org.freemarker</groupId>
+            <artifactId>freemarker</artifactId>
+            <version>2.3.31</version>
+          </dependency>
+          <!-- markdown support -->
+          <dependency>
+            <groupId>com.vladsch.flexmark</groupId>
+            <artifactId>flexmark</artifactId>
+            <version>0.62.2</version>
+          </dependency>
+          <dependency>
+            <groupId>com.vladsch.flexmark</groupId>
+            <artifactId>flexmark-profile-pegdown</artifactId>
+            <version>0.62.2</version>
+          </dependency>
+          <!-- freemarker .data support. -->
+          <dependency>
+            <groupId>org.yaml</groupId>
+            <artifactId>snakeyaml</artifactId>
+            <version>1.29</version>
+          </dependency>
+        </dependencies>
+      </plugin>
+    </plugins>
+  </build>
+</project>
diff --git a/jbake/templates/download.ftl b/jbake/templates/download.ftl
index 61f0444..1c6f1ae 100644
--- a/jbake/templates/download.ftl
+++ b/jbake/templates/download.ftl
@@ -12,10 +12,17 @@
 
 <p><@content.body?interpret /></p>
 
+<#-- if not releases are given using :jbake-release:, assume oldReleases. -->
+<#if ((content.releases).versions)??>
+    <#assign displayReleases=((content.releases).versions)![] />
+<#else>
+    <#assign displayReleases=oldReleases />
+</#if>
+
 <p>
   <ul>
-  <#list ((content.releases).versions)![] as version>
-    <#assign release=version?eval />
+  <#list displayReleases as version>
+    <#assign release=releases[version] />
     <li><a href="#${release.version?replace(".", "")}">Apache Shiro Release v${release.version}</a></li>
     <ul>
       <li><a href="#${release.version?replace(".", "")}Binary">${release.version} Binary Distribution</a></li>
@@ -28,8 +35,8 @@
 
 
 
-<#list ((content.releases).versions)![] as version>
-  <#assign release=version?eval />
+<#list displayReleases as version>
+  <#assign release=releases[version] />
   <h2>Release ${release.version}</h2>
 
   <h4><a id="#${release.version?replace(".", "")}Binary"></a>${release.version} Binary Distribution</h4>
diff --git a/jbake/templates/macros/artifacttable.ftl b/jbake/templates/macros/artifacttable.ftl
index 9121740..339d77b 100644
--- a/jbake/templates/macros/artifacttable.ftl
+++ b/jbake/templates/macros/artifacttable.ftl
@@ -10,7 +10,9 @@
   </thead>
 
   <tbody>
-  <#list versionObject.artifacts as artifact>
+  <#list versionObject.artifacts as artifactName>
+  <#-- releases.yaml contains the artifactObject's names. We can just resolve them using eval. -->
+  <#assign artifact=artifacts[artifactName]>
   <tr>
     <#assign classifier=artifact.c!"">
     <#assign group=artifact.g?replace('.', '/') >
@@ -26,19 +28,15 @@
       <#if (artifact.gavAlt)?? >
         ${artifact.gavAlt}
       <#else>
+        <pre><code class="xml language-xml">&lt;dependency&gt;
+  &lt;groupId&gt;${artifact.g}&lt;/groupId&gt;
+  &lt;artifactId&gt;${artifact.a}&lt;/artifactId&gt;
+  &lt;version&gt;${version}&lt;/version&gt;
+&lt;/dependency&gt;</code></pre>
       </#if>
-      #if($artifact.gavAlt)
-
-      #else
-      <pre><code class="xml">&lt;dependency&gt;
-  &lt;groupId&gt;$artifact.g&lt;/groupId&gt;
-  &lt;artifactId&gt;$artifact.a&lt;/artifactId&gt;
-  &lt;version&gt;$version&lt;/version&gt;
-&lt;/dependency&gt;
-</code></pre>
     </td>
 
-    <td>$artifact.description.replace('%version%', "$version")</td>
+    <td>${(artifact.description)?replace('%version%', version)}</td>
 
   </tr>
   </#list>
diff --git a/jbake/templates/macros/versions.ftl b/jbake/templates/macros/versions.ftl
index 9ba2c1f..29d8fe6 100644
--- a/jbake/templates/macros/versions.ftl
+++ b/jbake/templates/macros/versions.ftl
@@ -1,194 +1,6 @@
-<#assign latestRelease = "1.8.0" />
-<#assign versionInfo = {"1.8.0": { "releaseDate": "2021-08-26" } } />
+<#assign latestRelease = data.get('releases.yaml').latestRelease>
+<#assign versionInfo = data.get('releases.yaml').versionInfo>
+<#assign releases = data.get('releases.yaml').releases>
+<#assign oldReleases = data.get('releases.yaml').oldReleases>
 
-<#assign shiroCore = {"g":"org.apache.shiro", "a": "shiro-core", "type": "jar",
-"description": 'Required in all environments. <a class="external-link" href="https://slf4j.org/">Slf4j</a>\'s
-<code>slf4j-api</code> jar and one of its binding jars is required. <code>commons-beanutils</code> is
-required only if using INI config.'} />
-
-<#assign shiroWeb = {"g": "org.apache.shiro", "a": "shiro-web", "type": "jar",
-"description": "Enables support for web-based applications."} />
-
-<#assign shiroServletPlugin = {"g": "org.apache.shiro", "a": "shiro-servlet-plugin", "type": "jar",
-"description": "Servlet Fragment which configures Shiro's servlet filter."} />
-
-<#assign shiroJaxrs = {"g": "org.apache.shiro", "a": "shiro-jaxrs", "type": "jar",
-"description": "Enables support for JAX-RS applications."} />
-
-<#assign shiroAspectJ = {"g": "org.apache.shiro", "a": "shiro-aspectj", "type": "jar",
-"description": 'Enables <a class="external-link" href="https://www.eclipse.org/aspectj/">AspectJ</a> support for Shiro AOP and Annotations.'} />
-
-<#assign shiroCas = {"g": "org.apache.shiro", "a": "shiro-cas", "type": "jar",
-"description": "Enables Jasig <a class='external-link' href='https://wiki.jasig.org/display/CAS/Home'>CAS</a> support.
-#warning('NOTE:', 'Shiro-CAS support is deprecated, support has been moved to the Apache Shiro based <a href=''https://github.com/bujiio/buji-pac4j''>buji-pac4j</a> project.')"} />
-
-<#assign shiroEhCache = {"g": "org.apache.shiro", "a": "shiro-ehcache", "type": "jar",
-"description": 'Enables <a class="external-link" href="https://www.ehcache.org">Ehcache</a>-based famework caching.'} />
-
-<#assign shiroHazelcast = {"g": "org.apache.shiro", "a": "shiro-hazelcast", "type": "jar",
-"description": 'Enables <a class="external-link" href="https://hazelcast.org">Hazelcast</a>-based famework caching.'} />
-
-<#assign shiroFeatures = {"g": "org.apache.shiro", "a": "shiro-features", "c": "features", "type": "xml",
-"description": 'OSGi / <a class="external-link" href="https://karaf.apache.org/">Apache Karaf</a> integration.'} />
-
-<#assign shiroGuice = {"g": "org.apache.shiro", "a": "shiro-guice", "type": "jar",
-"description": 'Enables <a class="external-link" href="https://github.com/google/guice">Google Guice</a> integration.'} />
-
-<#assign shiroQuartz = {"g": "org.apache.shiro", "a": "shiro-quartz", "type": "jar",
-"description": 'Enables <a class="external-link" href="https://www.quartz-scheduler.org/">Quartz</a>-based scheduling for Shiro native session validation.'} />
-
-<#assign shiroSpring = {"g": "org.apache.shiro", "a": "shiro-spring", "type": "jar",
-"description": 'Enables <a class="external-link" href="https://spring.io/">Spring Framework</a> integration.'} />
-
-<#assign shiroSpringBoot = {"g": "org.apache.shiro", "a": "shiro-spring-boot-starter", "type": "jar",
-"description": '<a class="external-link" href="https://spring.io/">Spring Boot</a> starter.'} />
-
-<#assign shiroSpringBootWeb = {"g": "org.apache.shiro", "a": "shiro-spring-boot-web-starter", "type": "jar",
-"description": '<a class="external-link" href="https://spring.io/">Spring Boot</a> web starter.'} />
-
-<#assign shiroHasher = {"g": "org.apache.shiro.tools", "a": "shiro-tools-hasher", "c": "cli", "type": "jar", "gavAlt": '<b>Not Relevant</b>',
-"description": "A command-line program to perform hashing (MD5, SHA, etc) for files, streams and passwords.
-Note that this is a command line program and not intended to be used as a Maven/program
-dependency. It is intended to be downloaded and executed:
-<pre><code class='bash'> java -jar shiro-tools-hasher-%version%-cli.jar</code></pre>"} />
-
-<#assign shiroAll = {"g": "org.apache.shiro", "a": "shiro-all", "type": "jar", "gavAlt": '<b>Not Recommended</b>',
-"description": 'Includes all binary functionality for Shiro (without dependencies), useful in certain build
-environments (e.g. Ant). However, this is <b>NOT</b> recommended in Maven builds as it does not
-retain correct dependency metadata, which can lead to Maven working incorrectly. For Maven builds,
-it is <b>highly</b> recommended to specify individual modules listed below as you require them.'} />
-
-
-<#assign  shiro11x = {"version": "1.1.0", "artifacts": [
-  shiroAll,
-  shiroCore,
-  shiroWeb,
-  shiroAspectJ,
-  shiroEhCache,
-  shiroQuartz,
-  shiroSpring
-]} />
-
-<#assign  shiro12x = {"version": "1.2.6", "artifacts": [
-  shiroAll,
-  shiroCore,
-  shiroWeb,
-  shiroAspectJ,
-  shiroCas,
-  shiroEhCache,
-  shiroFeatures,
-  shiroGuice,
-  shiroQuartz,
-  shiroSpring,
-  shiroHasher
-]} />
-
-<#assign  shiro13x = {"version": "1.3.2", "artifacts": [
-  shiroAll,
-  shiroCore,
-  shiroWeb,
-  shiroAspectJ,
-  shiroCas,
-  shiroEhCache,
-  shiroHazelcast,
-  shiroFeatures,
-  shiroGuice,
-  shiroQuartz,
-  shiroSpring,
-  shiroHasher
-]} />
-
-<#assign  shiro14x = {"version": "1.4.2", "artifacts": [
-  shiroAll,
-  shiroCore,
-  shiroWeb,
-  shiroServletPlugin,
-  shiroJaxrs,
-  shiroAspectJ,
-  shiroCas,
-  shiroEhCache,
-  shiroHazelcast,
-  shiroFeatures,
-  shiroGuice,
-  shiroQuartz,
-  shiroSpring,
-  shiroSpringBoot,
-  shiroSpringBootWeb,
-  shiroHasher
-]} />
-
-<#assign  shiro15x = {"version": "1.5.3", "artifacts": [
-  shiroAll,
-  shiroCore,
-  shiroWeb,
-  shiroServletPlugin,
-  shiroJaxrs,
-  shiroAspectJ,
-  shiroCas,
-  shiroEhCache,
-  shiroHazelcast,
-  shiroFeatures,
-  shiroGuice,
-  shiroQuartz,
-  shiroSpring,
-  shiroSpringBoot,
-  shiroSpringBootWeb,
-  shiroHasher
-]} />
-
-<#assign  shiro16x = {"version": "1.6.0", "artifacts": [
-  shiroAll,
-  shiroCore,
-  shiroWeb,
-  shiroServletPlugin,
-  shiroJaxrs,
-  shiroAspectJ,
-  shiroCas,
-  shiroEhCache,
-  shiroHazelcast,
-  shiroFeatures,
-  shiroGuice,
-  shiroQuartz,
-  shiroSpring,
-  shiroSpringBoot,
-  shiroSpringBootWeb,
-  shiroHasher
-]} />
-
-<#assign shiro17x = {"version": "1.7.1", "artifacts": [
-  shiroAll,
-  shiroCore,
-  shiroWeb,
-  shiroServletPlugin,
-  shiroJaxrs,
-  shiroAspectJ,
-  shiroCas,
-  shiroEhCache,
-  shiroHazelcast,
-  shiroFeatures,
-  shiroGuice,
-  shiroQuartz,
-  shiroSpring,
-  shiroSpringBoot,
-  shiroSpringBootWeb,
-  shiroHasher
-]} />
-
-<#assign shiro18x = {"version": latestRelease, "artifacts": [
-  shiroAll,
-  shiroCore,
-  shiroWeb,
-  shiroServletPlugin,
-  shiroJaxrs,
-  shiroAspectJ,
-  shiroCas,
-  shiroEhCache,
-  shiroHazelcast,
-  shiroFeatures,
-  shiroGuice,
-  shiroQuartz,
-  shiroSpring,
-  shiroSpringBoot,
-  shiroSpringBootWeb,
-  shiroHasher
-]} />
+<#assign artifacts = data.get('artifacts.yaml').artifacts>

[shiro-site] 05/06: Remove .DS_Store

Posted by bm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

bmarwell pushed a commit to branch jbake
in repository https://gitbox.apache.org/repos/asf/shiro-site.git

commit df3ac7f69be060c6d089421c9ed72451ea882fa3
Author: Brian Demers <bd...@apache.org>
AuthorDate: Tue Sep 7 15:23:13 2021 -0400

    Remove .DS_Store
---
 .DS_Store | Bin 6148 -> 0 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

diff --git a/.DS_Store b/.DS_Store
deleted file mode 100644
index 5008ddf..0000000
Binary files a/.DS_Store and /dev/null differ