git-semver-tags 2.0.3 → 3.0.0

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/CHANGELOG.md CHANGED
@@ -3,6 +3,20 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.0.0](https://github.com/conventional-changelog/conventional-changelog/compare/git-semver-tags@2.0.3...git-semver-tags@3.0.0) (2019-07-29)
7
+
8
+
9
+ * refactor!: modify gitSemverTags to take options first (#390) ([dc8aeda](https://github.com/conventional-changelog/conventional-changelog/commit/dc8aeda)), closes [#390](https://github.com/conventional-changelog/conventional-changelog/issues/390)
10
+
11
+
12
+ ### BREAKING CHANGES
13
+
14
+ * gitSemverTags now takes options followed by callback.
15
+
16
+
17
+
18
+
19
+
6
20
  ## [2.0.3](https://github.com/conventional-changelog/conventional-changelog/compare/git-semver-tags@2.0.2...git-semver-tags@2.0.3) (2019-05-18)
7
21
 
8
22
 
package/README.md CHANGED
@@ -14,7 +14,9 @@ $ npm install --save git-semver-tags
14
14
  ## Usage
15
15
 
16
16
  ```js
17
- var gitSemverTags = require('git-semver-tags', [options]);
17
+ var gitSemverTags = require('git-semver-tags');
18
+
19
+ // gitSemverTags([options,] callback)
18
20
 
19
21
  gitSemverTags(function(err, tags) {
20
22
  console.log(tags);
package/cli.js CHANGED
@@ -7,20 +7,21 @@ var args = meow(`
7
7
  Usage
8
8
  git-semver-tags
9
9
  Options
10
- --lerna parse lerna style git tags
11
- --package when listing lerna style tags, filter by a package
12
- --tagPrefix prefix to remove from the tags during their processing`
10
+ --cwd path to git repository to be searched
11
+ --lerna parse lerna style git tags
12
+ --package <name> when listing lerna style tags, filter by a package
13
+ --tagPrefix <prefix> prefix to remove from the tags during their processing`
13
14
  )
14
15
 
15
- gitSemverTags(function (err, tags) {
16
+ gitSemverTags({
17
+ lernaTags: args.flags.lerna,
18
+ package: args.flags.package,
19
+ tagPrefix: args.flags.tagPrefix
20
+ }, function (err, tags) {
16
21
  if (err) {
17
22
  console.error(err.toString())
18
23
  process.exit(1)
19
24
  }
20
25
 
21
26
  console.log(tags.join('\n'))
22
- }, {
23
- lernaTags: args.flags.lerna,
24
- package: args.flags.package,
25
- tagPrefix: args.flags.tagPrefix
26
27
  })
package/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  'use strict'
2
2
 
3
+ var proc = require('process')
3
4
  var exec = require('child_process').exec
4
5
  var semverValid = require('semver').valid
5
6
  var regex = /tag:\s*(.+?)[,)]/gi
@@ -13,17 +14,19 @@ function lernaTag (tag, pkg) {
13
14
  }
14
15
  }
15
16
 
16
- module.exports = function (callback, opts) {
17
- opts = opts || {}
17
+ module.exports = function gitSemverTags (opts, callback) {
18
+ if (typeof opts === 'function') {
19
+ callback = opts
20
+ opts = {}
21
+ }
22
+ var options = Object.assign({ maxBuffer: Infinity, cwd: proc.cwd() }, opts)
18
23
 
19
- if (opts.package && !opts.lernaTags) {
20
- callback(Error('opts.package should only be used when running in lerna mode'))
24
+ if (options.package && !options.lernaTags) {
25
+ callback(new Error('opts.package should only be used when running in lerna mode'))
21
26
  return
22
27
  }
23
28
 
24
- exec(cmd, {
25
- maxBuffer: Infinity
26
- }, function (err, data) {
29
+ exec(cmd, options, function (err, data) {
27
30
  if (err) {
28
31
  callback(err)
29
32
  return
@@ -31,18 +34,18 @@ module.exports = function (callback, opts) {
31
34
 
32
35
  var tags = []
33
36
  var tagPrefixRegexp
34
- if (opts.tagPrefix) {
35
- tagPrefixRegexp = new RegExp('^' + opts.tagPrefix + '(.*)')
37
+ if (options.tagPrefix) {
38
+ tagPrefixRegexp = new RegExp('^' + options.tagPrefix + '(.*)')
36
39
  }
37
40
  data.split('\n').forEach(function (decorations) {
38
41
  var match
39
42
  while ((match = regex.exec(decorations))) {
40
43
  var tag = match[1]
41
- if (opts.lernaTags) {
42
- if (lernaTag(tag, opts.package)) {
44
+ if (options.lernaTags) {
45
+ if (lernaTag(tag, options.package)) {
43
46
  tags.push(tag)
44
47
  }
45
- } else if (opts.tagPrefix) {
48
+ } else if (options.tagPrefix) {
46
49
  var matches = tag.match(tagPrefixRegexp)
47
50
  if (matches && semverValid(matches[1])) {
48
51
  tags.push(tag)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "git-semver-tags",
3
- "version": "2.0.3",
3
+ "version": "3.0.0",
4
4
  "description": "Get all git semver tags of your repository in reverse chronological order",
5
5
  "bugs": {
6
6
  "url": "https://github.com/conventional-changelog/conventional-changelog/issues"
@@ -41,5 +41,5 @@
41
41
  "bin": {
42
42
  "git-semver-tags": "cli.js"
43
43
  },
44
- "gitHead": "38f5508191f8afc1a8503d1fd24e2de6d05b8738"
44
+ "gitHead": "dadbbf8b1acbe4b3a8f345633bde3f4a4ad0bea4"
45
45
  }