Methods
(private) _checkChangelogFile() → {Promise}
Check if the changelog file exists
Returns:
- Type:
-
Promise
(private) _createChangelog(body)
Create the changelog file
Parameters:
Name | Type | Description |
---|---|---|
body |
string
|
The body of the file |
(private) _createRelease(releaseOptions) → {Promise}
Create a release from a given tag (in the options)
Parameters:
Name | Type | Description |
---|---|---|
releaseOptions |
Object
|
The options to build the release: |
Returns:
- Type:
-
Promise
Example
{
"tag_name": "1.0.0",
"target_commitish": "master",
"name": "v1.0.0",
"body": "Description of the release",
"draft": false,
"prerelease": false
}
(private) _createReleaseRanges(releaseDates) → {Array}
Create the ranges of release dates
Parameters:
Name | Type | Description |
---|---|---|
releaseDates |
Array
|
The release dates |
Returns:
- Type:
-
Array
(private) _editRelease(releaseId, releaseOptions) → {Promise}
Edit a release from a given tag (in the options)
Parameters:
Name | Type | Description |
---|---|---|
releaseId |
number
|
The id of the release to edit |
releaseOptions |
Object
|
The options to build the release: |
Returns:
- Type:
-
Promise
Example
{
"tag_name": "v1.0.0",
"target_commitish": "master",
"name": "v1.0.0",
"body": "Description of the release",
"draft": false,
"prerelease": false
}
(private) _filterBlockIssue(range, issue) → {Boolean}
Filter the issue based on the date range, or if is in the release milestone.
Parameters:
Name | Type | Description |
---|---|---|
range |
Array
|
The release ranges |
issue |
Object
|
GitHub issue |
Returns:
- Type:
-
Boolean
(private) _filterCommit(commit) → {Boolean}
Filter a commit based on the includeMessages option and commit message
Parameters:
Name | Type | Description |
---|---|---|
commit |
Object
|
Returns:
- Type:
-
Boolean
(private) _filterIssue(issue) → {Boolean}
Filter the issue based on gren options and labels
Parameters:
Name | Type | Description |
---|---|---|
issue |
Object
|
Returns:
- Type:
-
Boolean
(private) _generateCommitsBody(commits) → {string}
Return a commit messages generated body
Parameters:
Name | Type | Description |
---|---|---|
commits |
Array
|
Returns:
- Type:
-
string
(private) _getClosedIssues(releaseRanges) → {Promise}
Get all the closed issues from the current repo
Parameters:
Name | Type | Description |
---|---|---|
releaseRanges |
Array
|
The array of date ranges |
Returns:
- Type:
-
Promise
The promise which resolves the list of the issues
(private) _getCommitBlocks(releaseRanges) → {Array.<Promise>}
Get the blocks of commits based on release dates
Parameters:
Name | Type | Description |
---|---|---|
releaseRanges |
Array
|
The array of date ranges |
Returns:
- Type:
-
Array.<Promise>
(private) _getCommitsBetweenTwo(since, until) → {Promise}
Gets all the commits between two dates
Parameters:
Name | Type | Description |
---|---|---|
since |
string
|
The since date in ISO |
until |
string
|
The until date in ISO |
Returns:
- Type:
-
Promise
The promise which resolves the [Array] commit messages
(private) _getIssueBlocks(releaseRanges) → {Array.<Promise>}
Get the blocks of issues based on release dates
Parameters:
Name | Type | Description |
---|---|---|
releaseRanges |
Array
|
The array of date ranges |
Returns:
- Type:
-
Array.<Promise>
(private) _getLastTags() → {Promise}
Get all the tags of the repo
Returns:
- Type:
-
Promise
(private) _getListReleases() → {Promise}
Get all releases
Returns:
- Type:
-
Promise
The promise which resolves an array of releases
_getReleaseBlocks() → {Promise}
Generate release blocks based on issues or commit messages depending on the option.
Returns:
- Type:
-
Promise
Resolving the release blocks
(private) _getSelectedTags(allTags, tags) → {Boolean|Array}
Get the tags information from the given ones, and adds the next one in case only one is given
Parameters:
Name | Type | Description |
---|---|---|
allTags |
Array
|
string
|
|
tags |
Array.<Object>
|
Returns:
- Type:
-
Boolean
|Array
(private) _getTagDates(tags) → {Array.<Promise>}
Get the dates of the last two tags
Parameters:
Name | Type | Description |
---|---|---|
tags |
Array.<Object>
|
List of all the tags in the repo |
Returns:
- Type:
-
Array.<Promise>
The promises which returns the dates
(private) _groupBy(issues) → {Array}
Create groups of issues based on labels
Parameters:
Name | Type | Description |
---|---|---|
issues |
Array
|
The array of all the issues. |
Returns:
- Type:
-
Array
(private) _groupByLabel(issues) → {string}
Group the issues based on their first label
Parameters:
Name | Type | Description |
---|---|---|
issues |
Array
|
Returns:
- Type:
-
string
(private) _hasNetwork() → {Promise}
Check if there is connectivity
Returns:
- Type:
-
Promise
(private) _lablesAreIgnored(labels) → {boolean}
Compare the ignored labels with the passed ones
Parameters:
Name | Type | Description |
---|---|---|
labels |
Array
|
The labels to check |
Returns:
- Type:
-
boolean
If the labels array contains any of the ignore ones
Example
[{
name: 'bug'
}]
(private) _prepareRelease(tags) → {Promise}
Creates the options to make the release
Parameters:
Name | Type | Description |
---|---|---|
tags |
Array.<Object>
|
The collection of tags |
Returns:
- Type:
-
Promise
(private) _sortReleasesByDate(releaseDates) → {Array}
Sort releases by dates
Parameters:
Name | Type | Description |
---|---|---|
releaseDates |
Array
|
Returns:
- Type:
-
Array
(private) _templateCommits(commit) → {string}
Return the templated commit message
Parameters:
Name | Type | Description |
---|---|---|
commit |
Object
|
Returns:
- Type:
-
string
(private) _templateGroups(groups) → {string}
Generates the template for the groups
Parameters:
Name | Type | Description |
---|---|---|
groups |
Object
|
The groups to template e.g. { 'bugs': [{...}, {...}, {...}] } |
Returns:
- Type:
-
string
(private) _templateIssue(issue) → {string}
Generate the MD template for each issue
Parameters:
Name | Type | Description |
---|---|---|
issue |
Object
|
Returns:
- Type:
-
string
(private) _templateIssueBody(blocks) → {string}
Generate the Changelog issues body template
Parameters:
Name | Type | Description |
---|---|---|
blocks |
Array.<Object>
|
Returns:
- Type:
-
string
(private) _templateLabels(issue) → {string}
Generate the MD template from all the labels of a specific issue
Parameters:
Name | Type | Description |
---|---|---|
issue |
Object
|
Returns:
- Type:
-
string
changelog() → {Promise}
Generate changelog file based on the release notes or generate new one
Returns:
- Type:
-
Promise