zarro 1.124.1 → 1.124.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/gulp-tasks/modules/alter-package-json-version.js +1 -1
- package/gulp-tasks/modules/git-sha.js +13 -5
- package/gulp-tasks/modules/gulp-increment-nuget-package-dependency-version.js +1 -1
- package/gulp-tasks/modules/gulp-increment-nuget-package-version.js +5 -5
- package/gulp-tasks/modules/increment-version.js +3 -3
- package/gulp-tasks/modules/register-environment-variables.js +3 -0
- package/gulp-tasks/pack.js +3 -3
- package/package.json +2 -2
- package/types.d.ts +923 -922
|
@@ -19,7 +19,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
19
19
|
}
|
|
20
20
|
validateVersioningStrategy(opts.strategy);
|
|
21
21
|
try {
|
|
22
|
-
const json = await readTextFile(opts.packageJsonPath), indent = guessIndent(json), index = JSON.parse(json), currentVersion = index.version || "0.0.0", incremented =
|
|
22
|
+
const json = await readTextFile(opts.packageJsonPath), indent = guessIndent(json), index = JSON.parse(json), currentVersion = index.version || "0.0.0", incremented = incrementVersion(currentVersion, opts.strategy, opts.zero, opts.incrementBy);
|
|
23
23
|
index.version = incremented;
|
|
24
24
|
const newJson = JSON.stringify(index, null, indent);
|
|
25
25
|
if (opts.dryRun) {
|
|
@@ -1,14 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
(function () {
|
|
3
3
|
const Git = require("simple-git");
|
|
4
|
-
async function
|
|
4
|
+
async function fetchGitSha(forRepo) {
|
|
5
5
|
const git = new Git(forRepo);
|
|
6
6
|
const log = await git.log({ maxCount: 1 });
|
|
7
7
|
return log.latest.hash;
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
// this is a bit of an hax: we're hoping that we get some
|
|
10
|
+
// time between when this is fired off and when it's required
|
|
11
|
+
// but the consumers of this can't do async :| so this is
|
|
12
|
+
// as good as it gets, I guess.
|
|
13
|
+
let currentGitSha = "";
|
|
14
|
+
fetchGitSha().then(result => currentGitSha = result);
|
|
15
|
+
function currentGitSHA() {
|
|
16
|
+
return currentGitSha;
|
|
12
17
|
}
|
|
13
|
-
|
|
18
|
+
function currentShortSHA() {
|
|
19
|
+
return currentGitSha.substring(0, 7);
|
|
20
|
+
}
|
|
21
|
+
module.exports = { currentShortSHA, currentGitSHA, fetchGitSha };
|
|
14
22
|
})();
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
return;
|
|
14
14
|
}
|
|
15
15
|
if ((dependency.$.id || "").match(packageMatch)) {
|
|
16
|
-
const newVersion =
|
|
16
|
+
const newVersion = incrementVersion(dependency.$.version, env.resolve("VERSION_INCREMENT_STRATEGY"), env.resolveFlag("VERSION_INCREMENT_ZERO"), env.resolveNumber("PACK_INCREMENT_VERSION_BY"));
|
|
17
17
|
gutil.log(gutil.colors.yellow(`${packageId}: dependency ${dependency.$.id} version incremented to: ${newVersion}`));
|
|
18
18
|
dependency.$.version = newVersion;
|
|
19
19
|
}
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
}
|
|
9
9
|
};
|
|
10
10
|
// FIXME: proper types plz
|
|
11
|
-
function incrementPackageVersionInCsProj(xml, file) {
|
|
11
|
+
async function incrementPackageVersionInCsProj(xml, file) {
|
|
12
12
|
debug(JSON.stringify(xml, null, 2));
|
|
13
13
|
const packageVersionPropGroup = xml.Project.PropertyGroup.filter((g) => !!g.PackageVersion)[0];
|
|
14
14
|
if (!packageVersionPropGroup) {
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
});
|
|
64
64
|
return xml;
|
|
65
65
|
}
|
|
66
|
-
function incrementPackageVersionInNuspec(xml, file) {
|
|
66
|
+
async function incrementPackageVersionInNuspec(xml, file) {
|
|
67
67
|
const meta = xml.package.metadata[0], packageName = meta.id[0], node = meta.version, current = node[0];
|
|
68
68
|
const newVersion = incrementVersion(current);
|
|
69
69
|
node[0] = newVersion;
|
|
@@ -71,12 +71,12 @@
|
|
|
71
71
|
return xml;
|
|
72
72
|
}
|
|
73
73
|
function incrementPackageVersion() {
|
|
74
|
-
return editXml((xml, file) => {
|
|
74
|
+
return editXml(async (xml, file) => {
|
|
75
75
|
if (xml.package) {
|
|
76
|
-
return incrementPackageVersionInNuspec(xml, file);
|
|
76
|
+
return await incrementPackageVersionInNuspec(xml, file);
|
|
77
77
|
}
|
|
78
78
|
else if (xml.Project) {
|
|
79
|
-
return incrementPackageVersionInCsProj(xml, file);
|
|
79
|
+
return await incrementPackageVersionInCsProj(xml, file);
|
|
80
80
|
}
|
|
81
81
|
throw new ZarroError(`Don't know how to increment package version in document:\n\n${JSON.stringify(xml)}`);
|
|
82
82
|
}, xmlOpts);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
(function () {
|
|
3
3
|
const { ZarroError } = requireModule("zarro-error");
|
|
4
|
-
const {
|
|
4
|
+
const { currentShortSHA } = requireModule("git-sha");
|
|
5
5
|
function zeroFrom(parts, startIndex) {
|
|
6
6
|
for (let i = startIndex; i < parts.length; i++) {
|
|
7
7
|
parts[i] = 0;
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
"minor": 1,
|
|
20
20
|
"patch": 2
|
|
21
21
|
};
|
|
22
|
-
module.exports =
|
|
22
|
+
module.exports = function incrementVersion(version, strategy, zeroLowerOrder = true, incrementBy = 1) {
|
|
23
23
|
const dashedParts = version.split("-"), parts = dashedParts[0].split(".").map(i => parseInt(i));
|
|
24
24
|
let toIncrement = incrementLookup[(strategy || "").toLowerCase()];
|
|
25
25
|
if (toIncrement === undefined) {
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
if (strategy != "prerelease") {
|
|
36
36
|
return result;
|
|
37
37
|
}
|
|
38
|
-
const sha =
|
|
38
|
+
const sha = currentShortSHA();
|
|
39
39
|
return `${result}-${timestamp()}-${sha}`;
|
|
40
40
|
};
|
|
41
41
|
function timestamp() {
|
|
@@ -381,6 +381,9 @@ module.exports = function _env(env) {
|
|
|
381
381
|
default: ""
|
|
382
382
|
});
|
|
383
383
|
|
|
384
|
+
if (!!process.env.PACKAGE_TARGET_FOLDER) {
|
|
385
|
+
throw new Error(`env var PACKAGE_TARGET_FOLDER has been renamed to PACK_TARGET_FOLDER`);
|
|
386
|
+
}
|
|
384
387
|
env.register({
|
|
385
388
|
name: "PACK_TARGET_FOLDER",
|
|
386
389
|
help: "Folder to serve as output for package build tasks",
|
package/gulp-tasks/pack.js
CHANGED
|
@@ -17,7 +17,7 @@ const getToolsFolder = requireModule("get-tools-folder"),
|
|
|
17
17
|
|
|
18
18
|
env.associate(
|
|
19
19
|
[
|
|
20
|
-
"
|
|
20
|
+
"PACK_TARGET_FOLDER",
|
|
21
21
|
"DOTNET_CORE",
|
|
22
22
|
"PACK_INCLUDE_CSPROJ",
|
|
23
23
|
"PACK_EXCLUDE_CSPROJ",
|
|
@@ -34,7 +34,7 @@ gulp.task(
|
|
|
34
34
|
"Creates nupkgs from all nuspec files in this repo",
|
|
35
35
|
["prepack"],
|
|
36
36
|
() => {
|
|
37
|
-
const target = env.resolve("
|
|
37
|
+
const target = env.resolve("PACK_TARGET_FOLDER"),
|
|
38
38
|
isDotnetCore = env.resolveFlag("DOTNET_CORE"),
|
|
39
39
|
incrementVersion = env.resolveFlag("PACK_INCREMENT_VERSION")
|
|
40
40
|
packerFn = isDotnetCore ? packWithDotnetCore : packWithNuget;
|
|
@@ -116,7 +116,7 @@ gulp.task(
|
|
|
116
116
|
"clean-packages",
|
|
117
117
|
"Removes any existing package artifacts",
|
|
118
118
|
async () => {
|
|
119
|
-
const packageFolder =
|
|
119
|
+
const packageFolder = env.resolve("PACK_TARGET_FOLDER");
|
|
120
120
|
await del(packageFolder);
|
|
121
121
|
await fs.ensureDirectoryExists(packageFolder);
|
|
122
122
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zarro",
|
|
3
|
-
"version": "1.124.
|
|
3
|
+
"version": "1.124.3",
|
|
4
4
|
"description": "Some glue to make gulp easier, perhaps even zero- or close-to-zero-conf",
|
|
5
5
|
"bin": {
|
|
6
6
|
"zarro": "./index.js"
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"undertaker-forward-reference": "^1.0.2",
|
|
62
62
|
"vinyl": "^2.2.1",
|
|
63
63
|
"which": "^2.0.2",
|
|
64
|
-
"xml2js": "^0.
|
|
64
|
+
"xml2js": "^0.5.0",
|
|
65
65
|
"yafs": "^1.23.0"
|
|
66
66
|
},
|
|
67
67
|
"files": [
|