Skip to content

Commit af08979

Browse files
committed
release documentation ordered by asset dates
#docs fix cppalliance#802
1 parent 6c70e4d commit af08979

File tree

1 file changed

+13
-1
lines changed

1 file changed

+13
-1
lines changed

docs/extensions/mrdocs-releases.js

+13-1
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,16 @@ function fetchWithRetry(url, headers) {
8989
}
9090
}
9191

92+
function getReleaseDate(release) {
93+
const dates = [
94+
new Date(release.published_at),
95+
new Date(release.created_at),
96+
...release.assets.map(asset => new Date(asset.created_at)),
97+
...release.assets.map(asset => new Date(asset.updated_at))
98+
];
99+
return new Date(Math.max(...dates));
100+
}
101+
92102
module.exports = function (registry) {
93103
registry.blockMacro('mrdocs-releases', function () {
94104
const self = this
@@ -118,9 +128,11 @@ module.exports = function (registry) {
118128
let text = '|===\n'
119129
text += '| 3+| 🪟 Windows 2+| 🐧 Linux \n'
120130
text += '| 📃 Release | 📦 7z | 📦 msi | 📦 zip | 📦 tar.xz | 📦 tar.gz \n'
131+
releases.sort((a, b) => getReleaseDate(b) - getReleaseDate(a));
121132
for (const release of releases) {
122133
if (release.name === 'llvm-package') continue
123-
text += `| ${release.html_url}[${release.name},window=_blank]\n\n${humanizeDate(release.published_at)} `
134+
const date = getReleaseDate(release)
135+
text += `| ${release.html_url}[${release.name},window=_blank]\n\n${humanizeDate(date)} `
124136
const assetSuffixes = ['win64.7z', 'win64.msi', 'win64.zip', 'Linux.tar.xz', 'Linux.tar.gz']
125137
for (const suffix of assetSuffixes) {
126138
const asset = release.assets.find(asset => asset.name.endsWith(suffix))

0 commit comments

Comments
 (0)