Skip to content
Closed

sync #584

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
47332d3
v1.0.1
TomTomB Feb 15, 2024
d337c36
add changelog text to output
TomTomB Feb 15, 2024
aa8fc1b
v1.4.6
TomTomB Feb 15, 2024
0affdaa
logging
TomTomB Feb 15, 2024
400b818
remove ci
TomTomB Feb 15, 2024
4fa1587
Merge remote-tracking branch 'origin/v1'
TomTomB Feb 15, 2024
ebc3760
Version Packages
github-actions[bot] Feb 15, 2024
fbcff44
Merge pull request #1 from TomTomB/changeset-release/main
TomTomB Feb 15, 2024
b8a4e47
logging and output fix
TomTomB Feb 15, 2024
eadac62
Version Packages
github-actions[bot] Feb 15, 2024
178ab5b
Merge pull request #2 from TomTomB/changeset-release/main
TomTomB Feb 15, 2024
c10c1ce
testing
TomTomB Feb 15, 2024
db99d7a
Merge branch 'main' of github.com:TomTomB/changesets-action
TomTomB Feb 15, 2024
b1824a4
Version Packages
github-actions[bot] Feb 15, 2024
d84deb2
Merge pull request #3 from TomTomB/changeset-release/main
TomTomB Feb 15, 2024
ea2ebb4
fix path
TomTomB Feb 15, 2024
e59dae6
Version Packages
github-actions[bot] Feb 15, 2024
f098345
Merge pull request #4 from TomTomB/changeset-release/main
TomTomB Feb 15, 2024
c51f67a
json safe release notes
TomTomB Feb 15, 2024
d99843f
Merge branch 'main' of github.com:TomTomB/changesets-action
TomTomB Feb 15, 2024
f2df236
Version Packages
github-actions[bot] Feb 15, 2024
06fa2e8
Merge pull request #5 from TomTomB/changeset-release/main
TomTomB Feb 15, 2024
bba64b6
slack output
TomTomB Feb 15, 2024
23e4b03
add package name
TomTomB Feb 15, 2024
df0693a
Version Packages
github-actions[bot] Feb 15, 2024
a79a9c9
Merge pull request #6 from TomTomB/changeset-release/main
TomTomB Feb 15, 2024
f36ef88
Version Packages
github-actions[bot] Feb 15, 2024
57966fb
Merge pull request #7 from TomTomB/changeset-release/main
TomTomB Feb 15, 2024
1faef99
md to slack
TomTomB Feb 16, 2024
1d8f579
Version Packages
github-actions[bot] Feb 16, 2024
0cf2d1c
Merge pull request #8 from TomTomB/changeset-release/main
TomTomB Feb 16, 2024
b1070d1
format
TomTomB Feb 16, 2024
000eb04
Merge branch 'main' of github.com:TomTomB/changesets-action
TomTomB Feb 16, 2024
512dd68
format2
TomTomB Feb 16, 2024
b69ad47
Version Packages
github-actions[bot] Feb 16, 2024
aca47d6
Merge pull request #9 from TomTomB/changeset-release/main
TomTomB Feb 16, 2024
e4946da
finalize
TomTomB Feb 16, 2024
d456ff9
Version Packages
github-actions[bot] Feb 16, 2024
7de8775
Merge pull request #10 from TomTomB/changeset-release/main
TomTomB Feb 16, 2024
650fbf3
Fix changelog parsing error and disable link and media unfurling in S…
TomTomB Feb 21, 2024
873a5e6
Version Packages
github-actions[bot] Feb 21, 2024
0a9f243
Merge pull request #11 from TomTomB/changeset-release/main
TomTomB Feb 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 0 additions & 24 deletions .github/workflows/ci.yml

This file was deleted.

66 changes: 66 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,71 @@
# @changesets/action

## 1.4.16

### Patch Changes

- [`650fbf3`](https://github.com/changesets/action/commit/650fbf3b719bb3981851873951e87131b1584751) Thanks [@TomTomB](https://github.com/TomTomB)! - do not unfurl links or media in slack message

## 1.4.15

### Patch Changes

- [`e4946da`](https://github.com/changesets/action/commit/e4946daeea099fd5f5a313660a8ae3ecb426a107) Thanks [@TomTomB](https://github.com/TomTomB)! - finalize

## 1.4.14

### Patch Changes

- [`b1070d1`](https://github.com/changesets/action/commit/b1070d177ff639db08f9420f941141578f3709a8) Thanks [@TomTomB](https://github.com/TomTomB)! - format

## 1.4.13

### Patch Changes

- [`1faef99`](https://github.com/changesets/action/commit/1faef99aefc0cee2d069ad750eaf043dc8eb419d) Thanks [@TomTomB](https://github.com/TomTomB)! - md to slack

## 1.4.12

### Patch Changes

- [`bba64b6`](https://github.com/changesets/action/commit/bba64b67c1768673a4e0aaf7a98399d17518bb3c) Thanks [@TomTomB](https://github.com/TomTomB)! - output slack format

## 1.4.11

### Patch Changes

- [`c51f67a`](https://github.com/changesets/action/commit/c51f67a7a5bf84e559d4111c1cb81a65075a1632) Thanks [@TomTomB](https://github.com/TomTomB)! - release notes json safe

## 1.4.10

### Patch Changes

- [`ea2ebb4`](https://github.com/changesets/action/commit/ea2ebb463651cffb56d3f400f64e41a5166ab031) Thanks [@TomTomB](https://github.com/TomTomB)! - fix path

## 1.4.9

### Patch Changes

- [`c10c1ce`](https://github.com/changesets/action/commit/c10c1ce0a97e6e666ed2be39cad239c8bc6a1a7b) Thanks [@TomTomB](https://github.com/TomTomB)! - testing with dummy packages

## 1.4.8

### Patch Changes

- [`b8a4e47`](https://github.com/changesets/action/commit/b8a4e47b187862671dbaeecf6a3d51796dfa2de5) Thanks [@TomTomB](https://github.com/TomTomB)! - logging

## 1.4.7

### Patch Changes

- [`0affdaa`](https://github.com/changesets/action/commit/0affdaadd396494043042e55ce3c6cadfdeb7f34) Thanks [@TomTomB](https://github.com/TomTomB)! - patching

## 1.4.6

### Patch Changes

- add test output

## 1.4.5

### Patch Changes
Expand Down
2 changes: 2 additions & 0 deletions action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ outputs:
description: A boolean about whether there were changesets. Useful if you want to create your own publishing functionality.
pullRequestNumber:
description: The pull request number that was created or updated
publishedReleaseNotes:
description: The release notes
branding:
icon: "package"
color: "blue"
63 changes: 63 additions & 0 deletions dist/index.js

Large diffs are not rendered by default.

19 changes: 10 additions & 9 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
{
"name": "@changesets/action",
"version": "1.4.5",
"version": "1.4.16",
"main": "dist/index.js",
"license": "MIT",
"devDependencies": {
"@changesets/changelog-github": "^0.4.2",
"@changesets/cli": "^2.20.0",
"@changesets/write": "^0.1.6",
"@vercel/ncc": "^0.36.1",
"fixturez": "^1.1.0",
"prettier": "^2.0.5",
"typescript": "^5.0.4",
"@babel/core": "^7.13.10",
"@babel/preset-env": "^7.13.10",
"@babel/preset-typescript": "^7.13.0",
"@changesets/changelog-github": "^0.4.2",
"@changesets/cli": "^2.20.0",
"@changesets/write": "^0.1.6",
"@types/fs-extra": "^8.0.0",
"@types/jest": "^29.5.1",
"@types/node": "^12.7.1",
"@types/semver": "^7.5.0",
"@vercel/ncc": "^0.36.1",
"babel-jest": "^29.5.0",
"fixturez": "^1.1.0",
"husky": "^3.0.3",
"jest": "^29.5.0"
"jest": "^29.5.0",
"prettier": "^2.0.5",
"typescript": "^5.0.4"
},
"scripts": {
"build": "ncc build src/index.ts -o dist --transpile-only --minify",
Expand All @@ -41,6 +41,7 @@
"@changesets/read": "^0.5.3",
"@manypkg/get-packages": "^1.1.3",
"@octokit/plugin-throttling": "^5.2.1",
"@tryfabric/mack": "^1.2.1",
"fs-extra": "^8.1.0",
"mdast-util-to-string": "^1.0.6",
"remark-parse": "^7.0.1",
Expand Down
8 changes: 7 additions & 1 deletion src/index.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import * as core from "@actions/core";
import fs from "fs-extra";
import * as gitUtils from "./gitUtils";
import { runPublish, runVersion } from "./run";
import readChangesetState from "./readChangesetState";
import { runPublish, runVersion } from "./run";

const getOptionalInput = (name: string) => core.getInput(name) || undefined;

Expand Down Expand Up @@ -97,6 +97,12 @@ const getOptionalInput = (name: string) => core.getInput(name) || undefined;
JSON.stringify(result.publishedPackages)
);
}

core.setOutput(
"publishedReleaseNotes",
JSON.stringify(result.publishedReleaseNotes)
);

return;
}
case hasChangesets && !hasNonEmptyChangesets:
Expand Down
76 changes: 65 additions & 11 deletions src/run.ts
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
import * as core from "@actions/core";
import { exec, getExecOutput } from "@actions/exec";
import { GitHub, getOctokitOptions } from "@actions/github/lib/utils";
import * as github from "@actions/github";
import * as core from "@actions/core";
import { GitHub, getOctokitOptions } from "@actions/github/lib/utils";
import { PreState } from "@changesets/types";
import { Package, getPackages } from "@manypkg/get-packages";
import { throttling } from "@octokit/plugin-throttling";
import { markdownToBlocks } from "@tryfabric/mack";
import fs from "fs-extra";
import { getPackages, Package } from "@manypkg/get-packages";
import path from "path";
import resolveFrom from "resolve-from";
import * as semver from "semver";
import { PreState } from "@changesets/types";
import * as gitUtils from "./gitUtils";
import readChangesetState from "./readChangesetState";
import {
getChangelogEntry,
getChangedPackages,
sortTheThings,
getChangelogEntry,
getVersionsByDirectory,
sortTheThings,
} from "./utils";
import * as gitUtils from "./gitUtils";
import readChangesetState from "./readChangesetState";
import resolveFrom from "resolve-from";
import { throttling } from "@octokit/plugin-throttling";

// GitHub Issues/PRs messages have a max size limit on the
// message body payload.
Expand Down Expand Up @@ -109,6 +110,7 @@ type PublishResult =
| {
published: true;
publishedPackages: PublishedPackage[];
publishedReleaseNotes: any;
}
| {
published: false;
Expand Down Expand Up @@ -192,16 +194,68 @@ export async function runPublish({
}

if (releasedPackages.length) {
const changelogs: any[] = [];

for (const pkg of releasedPackages) {
try {
let changelogFileName = path.join(pkg.dir, "CHANGELOG.md");

let changelog = await fs.readFile(changelogFileName, "utf8");

let changelogEntry = getChangelogEntry(
changelog,
pkg.packageJson.version
);

const titleBlock = {
type: "section",
text: {
type: "mrkdwn",
text: `*${pkg.packageJson.name}@${pkg.packageJson.version}*`,
},
};

const res = await markdownToBlocks(
changelogEntry.content.replace(/###/g, "")
);

changelogs.push(titleBlock, ...res);
} catch (error) {
core.error(
`Error parsing changelog for ${pkg.packageJson.name}. Is the changelog file missing?`
);
}
}

const slackMessageJson = {
unfurl_links: false,
unfurl_media: false,
text: `*New Release*`,
blocks: [
{
type: "section",
text: {
type: "mrkdwn",
text: `*New Release*`,
},
},
...changelogs,
],
};

return {
published: true,
publishedPackages: releasedPackages.map((pkg) => ({
name: pkg.packageJson.name,
version: pkg.packageJson.version,
})),
publishedReleaseNotes: slackMessageJson,
};
}

return { published: false };
return {
published: false,
};
}

const requireChangesetsCliPkgJson = (cwd: string) => {
Expand Down
31 changes: 31 additions & 0 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -1637,6 +1637,20 @@
dependencies:
"@sinonjs/commons" "^3.0.0"

"@slack/types@^2.1.0":
version "2.11.0"
resolved "https://registry.yarnpkg.com/@slack/types/-/types-2.11.0.tgz#948c556081c3db977dfa8433490cc2ff41f47203"
integrity sha512-UlIrDWvuLaDly3QZhCPnwUSI/KYmV1N9LyhuH6EDKCRS1HWZhyTG3Ja46T3D0rYfqdltKYFXbJSSRPwZpwO0cQ==

"@tryfabric/mack@^1.2.1":
version "1.2.1"
resolved "https://registry.yarnpkg.com/@tryfabric/mack/-/mack-1.2.1.tgz#21a2916466c93c76ce644cb41401e6bfa4bb5f06"
integrity sha512-qQKj3l4x/7fWPHyk3zO3hPK2NUTH8AINJnVbdBYforWpm+6RDzp22gFIE66BJd2z7EFmt7F9aUOyZTKwmxiXrA==
dependencies:
"@slack/types" "^2.1.0"
fast-xml-parser "^4.0.6"
marked "^4.0.12"

"@types/babel__core@^7.1.14":
version "7.20.0"
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.0.tgz#61bc5a4cae505ce98e1e36c5445e4bee060d8891"
Expand Down Expand Up @@ -2601,6 +2615,13 @@ fast-json-stable-stringify@^2.1.0:
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==

fast-xml-parser@^4.0.6:
version "4.3.4"
resolved "https://registry.yarnpkg.com/fast-xml-parser/-/fast-xml-parser-4.3.4.tgz#385cc256ad7bbc57b91515a38a22502a9e1fca0d"
integrity sha512-utnwm92SyozgA3hhH2I8qldf2lBqm6qHOICawRNRFu1qMe3+oqr+GcXjGqTmXTMGE5T4eC03kr/rlh5C1IRdZA==
dependencies:
strnum "^1.0.5"

fastq@^1.6.0:
version "1.15.0"
resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.15.0.tgz#d04d07c6a2a68fe4599fea8d2e103a937fae6b3a"
Expand Down Expand Up @@ -3794,6 +3815,11 @@ markdown-table@^1.1.0:
resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-1.1.3.tgz#9fcb69bcfdb8717bfd0398c6ec2d93036ef8de60"
integrity sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==

marked@^4.0.12:
version "4.3.0"
resolved "https://registry.yarnpkg.com/marked/-/marked-4.3.0.tgz#796362821b019f734054582038b116481b456cf3"
integrity sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==

mdast-util-compact@^1.0.0:
version "1.0.4"
resolved "https://registry.yarnpkg.com/mdast-util-compact/-/mdast-util-compact-1.0.4.tgz#d531bb7667b5123abf20859be086c4d06c894593"
Expand Down Expand Up @@ -4679,6 +4705,11 @@ strip-json-comments@^3.1.1:
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==

strnum@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.0.5.tgz#5c4e829fe15ad4ff0d20c3db5ac97b73c9b072db"
integrity sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==

supports-color@^5.3.0:
version "5.5.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
Expand Down