Skip to content
9 changes: 0 additions & 9 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,6 @@ module.exports = {
'no-console': 'off',
'no-continue': 'off',
'no-lonely-if': 'off',
'no-multi-spaces': ['error', {
exceptions: {
Property: true,
VariableDeclarator: true,
},
}],
'no-nested-ternary': 'off',
'no-param-reassign': 'off',
'no-plusplus': 'off',
Expand Down Expand Up @@ -93,17 +87,14 @@ module.exports = {
'no-restricted-globals': 'off',
'no-restricted-properties': 'off',
'no-var': 'off', // https://github.com/fomantic/Fomantic-UI/pull/2584
'one-var': 'off',
'prefer-const': 'off',
'prefer-exponentiation-operator': 'off',
'prefer-rest-params': 'off',
'prefer-spread': 'off',
'semi-style': 'off',
'unicorn/no-array-for-each': 'off',
'unicorn/no-for-loop': 'off', // autofixes to "for of"
'unicorn/prefer-code-point': 'off',
'unicorn/prefer-includes': 'off',
'unicorn/prefer-node-protocol': 'off', // needs Node 14+
'unicorn/prefer-number-properties': 'off',
'unicorn/prefer-optional-catch-binding': 'off',
'unicorn/prefer-prototype-methods': 'off',
Expand Down
134 changes: 64 additions & 70 deletions changelog-setup.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
const semver = require('semver'); // eslint-disable-line import/no-extraneous-dependencies

let changelogDeps = {},
loopVersion = '',
uniqueCommits = []
;
let changelogDeps = {};
let loopVersion = '';
let uniqueCommits = [];
const issueLinks = function (item) {
if (typeof loopVersion !== 'string') {
return item;
Expand Down Expand Up @@ -113,79 +112,74 @@ module.exports = function (Handlebars) {
loopVersion = options.data.root.releases[options.data.index].tag;

changelogDeps = {};
const
depsRegex = /(?:build\(deps[A-Za-z-]*\):|\[Snyk]) (?:\[?[Ss]ecurity]? )?(?:bump|upgrade) ([\w./@-]+) from (\d+\.\d+\.\d+) to (\d+\.\d+\.\d+)/,
detectVersionRange = function (item) {
let subjectDetails = item.subject.match(depsRegex);
if (!subjectDetails) {
return true;
}

let depPackage = subjectDetails[1],
depVersionFrom = subjectDetails[2],
depVersionTo = subjectDetails[3]
;
if (!changelogDeps[depPackage]) {
changelogDeps[depPackage] = {
from: '999.999.999',
to: '0.0.0',
};
}
if (semver.lt(depVersionFrom, changelogDeps[depPackage].from)) {
changelogDeps[depPackage].from = depVersionFrom;
}
if (semver.gte(depVersionTo, changelogDeps[depPackage].to)) {
changelogDeps[depPackage].to = depVersionTo;

return true;
}
const depsRegex = /(?:build\(deps[A-Za-z-]*\):|\[Snyk]) (?:\[?[Ss]ecurity]? )?(?:bump|upgrade) ([\w./@-]+) from (\d+\.\d+\.\d+) to (\d+\.\d+\.\d+)/;
const detectVersionRange = function (item) {
let subjectDetails = item.subject.match(depsRegex);
if (!subjectDetails) {
return true;
}

let depPackage = subjectDetails[1];
let depVersionFrom = subjectDetails[2];
let depVersionTo = subjectDetails[3];
if (!changelogDeps[depPackage]) {
changelogDeps[depPackage] = {
from: '999.999.999',
to: '0.0.0',
};
}
if (semver.lt(depVersionFrom, changelogDeps[depPackage].from)) {
changelogDeps[depPackage].from = depVersionFrom;
}
if (semver.gte(depVersionTo, changelogDeps[depPackage].to)) {
changelogDeps[depPackage].to = depVersionTo;

return false;
},
list = context
.filter((item) => {
const commit = item.commit || item;
if (exclude) {
const pattern = new RegExp(exclude, 'm');
if (pattern.test(commit.message)) {
return false;
}
}
if (message) {
const pattern = new RegExp(message, 'm');
return true;
}

return pattern.test(commit.message);
return false;
};
const list = context
.filter((item) => {
const commit = item.commit || item;
if (exclude) {
const pattern = new RegExp(exclude, 'm');
if (pattern.test(commit.message)) {
return false;
}
if (subject) {
const pattern = new RegExp(subject);
}
if (message) {
const pattern = new RegExp(message, 'm');

return pattern.test(commit.subject);
}
return pattern.test(commit.message);
}
if (subject) {
const pattern = new RegExp(subject);

return true;
})
.filter(detectVersionRange)
// second round as the previous list came unordered from git
.filter(detectVersionRange)
// adjust from version to create the whole range in one line (linked to the latest commit)
.map((item) => {
let subjectDetails = item.subject.match(depsRegex);
if (!subjectDetails) {
return item;
}
let
depPackage = subjectDetails[1],
depVersionFrom = subjectDetails[2]
;
item.subject = item.subject.replace(depVersionFrom, changelogDeps[depPackage].from);
return pattern.test(commit.subject);
}

return true;
})
.filter(detectVersionRange)
// second round as the previous list came unordered from git
.filter(detectVersionRange)
// adjust from version to create the whole range in one line (linked to the latest commit)
.map((item) => {
let subjectDetails = item.subject.match(depsRegex);
if (!subjectDetails) {
return item;
})
.map(issueLinks)
.map((item) => options.fn(item))
.sort()
.join('')
;
}
let depPackage = subjectDetails[1];
let depVersionFrom = subjectDetails[2];
item.subject = item.subject.replace(depVersionFrom, changelogDeps[depPackage].from);

return item;
})
.map(issueLinks)
.map((item) => options.fn(item))
.sort()
.join('');
if (!list) {
return '';
}
Expand Down
6 changes: 2 additions & 4 deletions examples/assets/show-examples.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@ $(document)
variation: 'small inverted',
exclusive: true,
content: $(this).attr('class'),
})
;
});
});
})
;
});
12 changes: 5 additions & 7 deletions gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,13 @@
* Set-up
*******************************/

const
gulp = require('gulp'),
const gulp = require('gulp');

// read user config to know what task to load
config = require('./tasks/config/user'),
// read user config to know what task to load
const config = require('./tasks/config/user');

admin = require('./tasks/collections/admin'),
rtl = require('./tasks/collections/rtl')
;
const admin = require('./tasks/collections/admin');
const rtl = require('./tasks/collections/rtl');

/*******************************
* Tasks
Expand Down
17 changes: 7 additions & 10 deletions scripts/nightly-version.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
// node
const fs = require('fs');
const path = require('path');
const childProcess = require('child_process');
const fs = require('node:fs');
const path = require('node:path');
const childProcess = require('node:child_process');

const process = require('process');
const process = require('node:process');

// npm
const fetch = require('node-fetch'); // eslint-disable-line import/no-extraneous-dependencies
Expand All @@ -20,16 +20,14 @@ const currentRev = childProcess // get the current rev from the repo
.execSync('git rev-parse HEAD')
.toString()
.trim()
.slice(0, 7)
;
.slice(0, 7);
Comment thread
lubber-de marked this conversation as resolved.

const getNextVersion = async function () {
const versions = await fetch(`${ghBase}/repos/${repoUrlPath}/milestones`)
.then((r) => r.json())
.then((milestones) => milestones.filter((m) => m.title.indexOf('x') === -1)) // remove all versions with `x` in it
.then((versions) => versions.map((m) => m.title)) // create array of versions
.then((versions) => semver.sort(versions))
;
.then((versions) => semver.sort(versions));

// Return first entry aka the smallest version in milestones which would therefore
// be the next version
Expand Down Expand Up @@ -95,5 +93,4 @@ getNightlyVersion()
JSON.stringify(pkg, null, 2)
);
})
.then(() => console.log(`Done (${pkg.version})`))
;
.then(() => console.log(`Done (${pkg.version})`));
Loading