add version info to deno downloads
authorAJ ONeal <aj@therootcompany.com>
Thu, 19 Nov 2020 04:57:02 +0000 (04:57 +0000)
committerAJ ONeal <coolaj86@gmail.com>
Wed, 2 Dec 2020 20:23:53 +0000 (13:23 -0700)
_webi/releases.js
deno/releases.js

index f5ef319dae5bb45af268b46b4282121ddf6afd32..c7b0b519a9008f4060ab0eb36097229460a5d6a2 100644 (file)
@@ -42,6 +42,7 @@ Releases.renderBash = function (
           .replace(/[^+\-]*/, '')
           .replace(/^-/, '')
       };
+      var pkgFile = rel.filename || rel.name;
       return fs.promises
         .readFile(path.join(__dirname, 'template.sh'), 'utf8')
         .then(function (tplTxt) {
@@ -113,7 +114,7 @@ Releases.renderBash = function (
               )
               .replace(
                 /^#?WEBI_PKG_FILE=.*/m,
-                "WEBI_PKG_FILE='" + rel.name + "'"
+                "WEBI_PKG_FILE='" + pkgFile + "'"
               )
               // PKG details
               .replace(/^#?PKG_NAME=.*/m, "PKG_NAME='" + pkg + "'")
index 0a597a9b07c35e49bd315a15838445d3eb117d03..e32f5a945997a0d83cb5b6e84abccedc4e5c42f7 100644 (file)
@@ -1,5 +1,7 @@
 'use strict';
 
+var path = require('path');
+
 var github = require('../_common/github.js');
 var owner = 'denoland';
 var repo = 'deno';
@@ -7,9 +9,22 @@ var repo = 'deno';
 module.exports = function (request) {
   return github(request, owner, repo).then(function (all) {
     // remove checksums and .deb
-    all.releases = all.releases.filter(function (rel) {
-      return !/(\.txt)|(\.deb)$/i.test(rel.name);
-    });
+    all.releases = all.releases
+      .filter(function (rel) {
+        return !/(\.txt)|(\.deb)$/i.test(rel.name);
+      })
+      .map(function (rel) {
+        var ext;
+        if (!rel.name.match(rel.version)) {
+          ext = path.extname(rel.name);
+          rel.filename =
+            rel.name.slice(0, rel.name.length - ext.length) +
+            '-' +
+            rel.version +
+            ext;
+        }
+        return rel;
+      });
     return all;
   });
 };
@@ -17,6 +32,6 @@ module.exports = function (request) {
 if (module === require.main) {
   module.exports(require('@root/request')).then(function (all) {
     all = require('../_webi/normalize.js')(all);
-    console.info(JSON.stringify(all));
+    console.info(JSON.stringify(all, null, 2));
   });
 }