Skip to content

Commit

Permalink
refactor!: drop q from dependencies (#974)
Browse files Browse the repository at this point in the history
BREAKING CHANGE: now all promises are native
  • Loading branch information
dangreen committed Feb 10, 2023
1 parent d538940 commit d0e5d59
Show file tree
Hide file tree
Showing 43 changed files with 425 additions and 442 deletions.
1 change: 0 additions & 1 deletion package.json
Expand Up @@ -58,7 +58,6 @@
"git-tails": "^1.0.0",
"mocha": "^8.0.0",
"pinkie-promise": "^2.0.0",
"q": "^1.5.1",
"rimraf": "^3.0.2",
"safe-buffer": "5.2.1",
"semver": "^6.0.0",
Expand Down
@@ -1,10 +1,10 @@
'use strict'

const Q = require('q')
const parserOpts = require('./parser-opts')
const writerOpts = require('./writer-opts')

module.exports = Q.all([parserOpts, writerOpts])
.spread((parserOpts, writerOpts) => {
return { parserOpts, writerOpts }
})
module.exports = Promise.all([parserOpts, writerOpts])
.then(([parserOpts, writerOpts]) => ({
parserOpts,
writerOpts
}))
12 changes: 7 additions & 5 deletions packages/conventional-changelog-angular/index.js
@@ -1,11 +1,13 @@
'use strict'
const Q = require('q')
const conventionalChangelog = require('./conventional-changelog')
const parserOpts = require('./parser-opts')
const recommendedBumpOpts = require('./conventional-recommended-bump')
const writerOpts = require('./writer-opts')

module.exports = Q.all([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts])
.spread((conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts) => {
return { conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts }
})
module.exports = Promise.all([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts])
.then(([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts]) => ({
conventionalChangelog,
parserOpts,
recommendedBumpOpts,
writerOpts
}))
3 changes: 1 addition & 2 deletions packages/conventional-changelog-angular/package.json
Expand Up @@ -33,7 +33,6 @@
},
"homepage": "https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular#readme",
"dependencies": {
"compare-func": "^2.0.0",
"q": "^1.5.1"
"compare-func": "^2.0.0"
}
}
9 changes: 4 additions & 5 deletions packages/conventional-changelog-angular/writer-opts.js
@@ -1,17 +1,16 @@
'use strict'

const compareFunc = require('compare-func')
const Q = require('q')
const readFile = Q.denodeify(require('fs').readFile)
const resolve = require('path').resolve
const { readFile } = require('fs').promises
const { resolve } = require('path')

module.exports = Q.all([
module.exports = Promise.all([
readFile(resolve(__dirname, './templates/template.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/header.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/commit.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/footer.hbs'), 'utf-8')
])
.spread((template, header, commit, footer) => {
.then(([template, header, commit, footer]) => {
const writerOpts = getWriterOpts()

writerOpts.mainTemplate = template
Expand Down
10 changes: 5 additions & 5 deletions packages/conventional-changelog-atom/conventional-changelog.js
@@ -1,10 +1,10 @@
'use strict'

const Q = require('q')
const parserOpts = require('./parser-opts')
const writerOpts = require('./writer-opts')

module.exports = Q.all([parserOpts, writerOpts])
.spread((parserOpts, writerOpts) => {
return { parserOpts, writerOpts }
})
module.exports = Promise.all([parserOpts, writerOpts])
.then(([parserOpts, writerOpts]) => ({
parserOpts,
writerOpts
}))
12 changes: 8 additions & 4 deletions packages/conventional-changelog-atom/index.js
@@ -1,5 +1,4 @@
'use strict'
const Q = require('q')
const conventionalChangelog = require('./conventional-changelog')
const parserOpts = require('./parser-opts')
const recommendedBumpOpts = require('./conventional-recommended-bump')
Expand All @@ -8,8 +7,13 @@ const writerOpts = require('./writer-opts')
module.exports = presetOpts

function presetOpts (cb) {
Q.all([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts])
.spread((conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts) => {
cb(null, { conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts })
Promise.all([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts])
.then(([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts]) => {
cb(null, {
conventionalChangelog,
parserOpts,
recommendedBumpOpts,
writerOpts
})
})
}
5 changes: 1 addition & 4 deletions packages/conventional-changelog-atom/package.json
Expand Up @@ -31,8 +31,5 @@
"bugs": {
"url": "https://github.com/conventional-changelog/conventional-changelog/issues"
},
"homepage": "https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-atom#readme",
"dependencies": {
"q": "^1.5.1"
}
"homepage": "https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-atom#readme"
}
9 changes: 4 additions & 5 deletions packages/conventional-changelog-atom/writer-opts.js
@@ -1,15 +1,14 @@
'use strict'

const Q = require('q')
const readFile = Q.denodeify(require('fs').readFile)
const resolve = require('path').resolve
const { readFile } = require('fs').promises
const { resolve } = require('path')

module.exports = Q.all([
module.exports = Promise.all([
readFile(resolve(__dirname, './templates/template.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/header.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/commit.hbs'), 'utf-8')
])
.spread((template, header, commit) => {
.then(([template, header, commit]) => {
const writerOpts = getWriterOpts()

writerOpts.mainTemplate = template
Expand Down
@@ -1,7 +1,6 @@
'use strict'
const Q = require('q')

module.exports = Q.resolve({
module.exports = Promise.resolve({
writerOpts: {
mainTemplate: '{{commitGroups.[0].commits.[0].type}}{{testContext}}template'
}
Expand Down
@@ -1,10 +1,10 @@
'use strict'

const Q = require('q')
const parserOpts = require('./parser-opts')
const writerOpts = require('./writer-opts')

module.exports = Q.all([parserOpts, writerOpts])
.spread((parserOpts, writerOpts) => {
return { parserOpts, writerOpts }
})
module.exports = Promise.all([parserOpts, writerOpts])
.then(([parserOpts, writerOpts]) => ({
parserOpts,
writerOpts
}))
12 changes: 8 additions & 4 deletions packages/conventional-changelog-codemirror/index.js
@@ -1,5 +1,4 @@
'use strict'
const Q = require('q')
const conventionalChangelog = require('./conventional-changelog')
const parserOpts = require('./parser-opts')
const recommendedBumpOpts = require('./conventional-recommended-bump')
Expand All @@ -8,8 +7,13 @@ const writerOpts = require('./writer-opts')
module.exports = presetOpts

function presetOpts (cb) {
Q.all([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts])
.spread((conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts) => {
cb(null, { conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts })
Promise.all([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts])
.then(([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts]) => {
cb(null, {
conventionalChangelog,
parserOpts,
recommendedBumpOpts,
writerOpts
})
})
}
5 changes: 1 addition & 4 deletions packages/conventional-changelog-codemirror/package.json
Expand Up @@ -31,8 +31,5 @@
"bugs": {
"url": "https://github.com/conventional-changelog/conventional-changelog/issues"
},
"homepage": "https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-codemirror#readme",
"dependencies": {
"q": "^1.5.1"
}
"homepage": "https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-codemirror#readme"
}
9 changes: 4 additions & 5 deletions packages/conventional-changelog-codemirror/writer-opts.js
@@ -1,15 +1,14 @@
'use strict'

const Q = require('q')
const readFile = Q.denodeify(require('fs').readFile)
const resolve = require('path').resolve
const { readFile } = require('fs').promises
const { resolve } = require('path')

module.exports = Q.all([
module.exports = Promise.all([
readFile(resolve(__dirname, './templates/template.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/header.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/commit.hbs'), 'utf-8')
])
.spread((template, header, commit) => {
.then(([template, header, commit]) => {
const writerOpts = getWriterOpts()

writerOpts.mainTemplate = template
Expand Down
@@ -1,12 +1,12 @@
'use strict'

const Q = require('q')
const parserOpts = require('./parser-opts')
const writerOpts = require('./writer-opts')

module.exports = function (config) {
return Q.all([parserOpts(config), writerOpts(config)])
.spread((parserOpts, writerOpts) => {
return { parserOpts, writerOpts }
})
return Promise.all([parserOpts(config), writerOpts(config)])
.then(([parserOpts, writerOpts]) => ({
parserOpts,
writerOpts
}))
}
26 changes: 18 additions & 8 deletions packages/conventional-changelog-conventionalcommits/index.js
@@ -1,5 +1,4 @@
'use strict'
const Q = require('q')
const conventionalChangelog = require('./conventional-changelog')
const parserOpts = require('./parser-opts')
const recommendedBumpOpts = require('./conventional-recommended-bump')
Expand All @@ -11,13 +10,21 @@ module.exports = function (parameter) {
// parameter is a callback object
const config = {}
// FIXME: use presetOpts(config) for callback
Q.all([
Promise.all([
conventionalChangelog(config),
parserOpts(config),
recommendedBumpOpts(config),
writerOpts(config)
]).spread((conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts) => {
parameter(null, { gitRawCommitsOpts: { noMerges: null }, conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts })
]).then(([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts]) => {
parameter(null, {
gitRawCommitsOpts: {
noMerges: null
},
conventionalChangelog,
parserOpts,
recommendedBumpOpts,
writerOpts
})
})
} else {
const config = parameter || {}
Expand All @@ -26,12 +33,15 @@ module.exports = function (parameter) {
}

function presetOpts (config) {
return Q.all([
return Promise.all([
conventionalChangelog(config),
parserOpts(config),
recommendedBumpOpts(config),
writerOpts(config)
]).spread((conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts) => {
return { conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts }
})
]).then(([conventionalChangelog, parserOpts, recommendedBumpOpts, writerOpts]) => ({
conventionalChangelog,
parserOpts,
recommendedBumpOpts,
writerOpts
}))
}
Expand Up @@ -34,7 +34,6 @@
},
"homepage": "https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-conventionalcommits#readme",
"dependencies": {
"compare-func": "^2.0.0",
"q": "^1.5.1"
"compare-func": "^2.0.0"
}
}
38 changes: 20 additions & 18 deletions packages/conventional-changelog-conventionalcommits/writer-opts.js
Expand Up @@ -2,9 +2,8 @@

const addBangNotes = require('./add-bang-notes')
const compareFunc = require('compare-func')
const Q = require('q')
const readFile = Q.denodeify(require('fs').readFile)
const resolve = require('path').resolve
const { readFile } = require('fs').promises
const { resolve } = require('path')
const releaseAsRe = /release-as:\s*\w*@?([0-9]+\.[0-9]+\.[0-9a-z]+(-[0-9a-z.]+)?)\s*/i

/**
Expand All @@ -14,7 +13,7 @@ const owner = '{{#if this.owner}}{{~this.owner}}{{else}}{{~@root.owner}}{{/if}}'
const host = '{{~@root.host}}'
const repository = '{{#if this.repository}}{{~this.repository}}{{else}}{{~@root.repository}}{{/if}}'

module.exports = function (config) {
module.exports = async (config) => {
config = defaultConfig(config)
const commitUrlFormat = expandTemplate(config.commitUrlFormat, {
host,
Expand All @@ -34,25 +33,28 @@ module.exports = function (config) {
prefix: '{{this.prefix}}'
})

return Q.all([
const [
template,
header,
commit,
footer
] = await Promise.all([
readFile(resolve(__dirname, './templates/template.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/header.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/commit.hbs'), 'utf-8'),
readFile(resolve(__dirname, './templates/footer.hbs'), 'utf-8')
])
.spread((template, header, commit, footer) => {
const writerOpts = getWriterOpts(config)

writerOpts.mainTemplate = template
writerOpts.headerPartial = header
.replace(/{{compareUrlFormat}}/g, compareUrlFormat)
writerOpts.commitPartial = commit
.replace(/{{commitUrlFormat}}/g, commitUrlFormat)
.replace(/{{issueUrlFormat}}/g, issueUrlFormat)
writerOpts.footerPartial = footer

return writerOpts
})
const writerOpts = getWriterOpts(config)

writerOpts.mainTemplate = template
writerOpts.headerPartial = header
.replace(/{{compareUrlFormat}}/g, compareUrlFormat)
writerOpts.commitPartial = commit
.replace(/{{commitUrlFormat}}/g, commitUrlFormat)
.replace(/{{issueUrlFormat}}/g, issueUrlFormat)
writerOpts.footerPartial = footer

return writerOpts
}

function findTypeEntry (types, commit) {
Expand Down

0 comments on commit d0e5d59

Please sign in to comment.