Skip to content

Commit

Permalink
feat: initial version
Browse files Browse the repository at this point in the history
  • Loading branch information
gr2m committed Mar 3, 2021
1 parent f65d036 commit ee9397c
Showing 1 changed file with 51 additions and 0 deletions.
51 changes: 51 additions & 0 deletions script.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
/**
* Find releases in repositories. Pass an optional `since` option (`YYYY-MM-dd`) to ignore
* releases prior a set date
*
* @param {import('@octoherd/octokit').Octokit} octokit
* @param {import('@octokit/openapi-types').components["schemas"]["repository"]} repository
* @param { {since?: string} } options Custom user options passed to the CLI
*/
export async function script(octokit, repository, options) {
const since = options.since || "";

const owner = repository.owner.login;
const repo = repository.name;

// https://docs.github.com/en/free-pro-team@latest/rest/reference/repos#list-releases
const allReleases = await octokit.paginate(
"GET /repos/{owner}/{repo}/releases",
{
owner,
repo,
per_page: 100,
}
);

const releases = allReleases.filter((release) => {
return since ? release.created_at > String(since) : true;
});

octokit.log.info(
{
releases: releases.map((release) => {
const type = /\.0\.0$/.test(release.tag_name)
? "breaking"
: /\.0$/.test(release.tag_name)
? "feature"
: "fix";

return {
created_at: release.created_at,
version: release.tag_name,
notes: release.body,
type,
};
}),
repository: [owner, repo].join("/"),
},
`${releases.length} releases found in ${repository.html_url}${
since ? ` since ${since}` : ""
}`
);
}

0 comments on commit ee9397c

Please sign in to comment.