Compare commits

..

39 Commits

Author SHA1 Message Date
semantic-release-bot f04aa94d10 build(release): 1.6.3 [skip ci]
## [1.6.3](https://github.com/actions/create-github-app-token/compare/v1.6.2...v1.6.3) (2024-01-09)

### Bug Fixes

* **deps:** bump the production-dependencies group with 2 updates ([#94](https://github.com/actions/create-github-app-token/issues/94)) ([323044f](https://github.com/actions/create-github-app-token/commit/323044ff3180ac0ba3543efbe2b76ff90050e9b6)), closes [#562](https://github.com/actions/create-github-app-token/issues/562) [#557](https://github.com/actions/create-github-app-token/issues/557) [#562](https://github.com/actions/create-github-app-token/issues/562) [#560](https://github.com/actions/create-github-app-token/issues/560) [#559](https://github.com/actions/create-github-app-token/issues/559) [#558](https://github.com/actions/create-github-app-token/issues/558) [#557](https://github.com/actions/create-github-app-token/issues/557) [#553](https://github.com/actions/create-github-app-token/issues/553) [#552](https://github.com/actions/create-github-app-token/issues/552) [#551](https://github.com/actions/create-github-app-token/issues/551) [#75](https://github.com/actions/create-github-app-token/issues/75) [#75](https://github.com/actions/create-github-app-token/issues/75)
2024-01-09 22:21:09 +00:00
dependabot[bot] 323044ff31 fix(deps): bump the production-dependencies group with 2 updates (#94)
Bumps the production-dependencies group with 2 updates:
[@octokit/auth-app](https://github.com/octokit/auth-app.js) and
[p-retry](https://github.com/sindresorhus/p-retry).

Updates `@octokit/auth-app` from 6.0.1 to 6.0.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/octokit/auth-app.js/releases"><code>@​octokit/auth-app</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v6.0.3</h2>
<h2><a
href="https://github.com/octokit/auth-app.js/compare/v6.0.2...v6.0.3">6.0.3</a>
(2024-01-09)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>dependencies:</strong> bump universal-github-app-jwt to
1.1.2 (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/562">#562</a>)
(<a
href="https://github.com/octokit/auth-app.js/commit/52346fed070b20580f2e7b6a8479d2b39a2e2c31">52346fe</a>)</li>
</ul>
<h2>v6.0.2</h2>
<h2><a
href="https://github.com/octokit/auth-app.js/compare/v6.0.1...v6.0.2">6.0.2</a>
(2023-12-18)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>types:</strong> update <code>Cache#get</code> to allow
<code>Promise</code> return type (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/557">#557</a>)
(<a
href="https://github.com/octokit/auth-app.js/commit/f5e57aa12e6e90d92496a065cdfb70542e0190b3">f5e57aa</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/octokit/auth-app.js/commit/52346fed070b20580f2e7b6a8479d2b39a2e2c31"><code>52346fe</code></a>
fix(dependencies): bump universal-github-app-jwt to 1.1.2 (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/562">#562</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/aa7d921e1dea74d1408ea96b5f5f04dd577e445e"><code>aa7d921</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/560">#560</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/cb73ca4c3596c1320dde94182752ad4af090e9ac"><code>cb73ca4</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/559">#559</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/5d261b118ba6ba84010fb81c0ecb1f383c3e635a"><code>5d261b1</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/558">#558</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/f5e57aa12e6e90d92496a065cdfb70542e0190b3"><code>f5e57aa</code></a>
fix(types): update <code>Cache#get</code> to allow <code>Promise</code>
return type (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/557">#557</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/5fdc2f19e08c96125d865ab235b926be096420e7"><code>5fdc2f1</code></a>
build(deps): lock file maintenance</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/dda3b52a17907a3d17fe000da9f046bd0e7258cf"><code>dda3b52</code></a>
ci(action): update github/codeql-action action to v3</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/8bbd972db1c79b9ed59099442cdb12a1e3dc8afa"><code>8bbd972</code></a>
immediate-response uses pull_request_target trigger (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/553">#553</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/28cdca80d090031d52f227cba6b904ae978c9190"><code>28cdca8</code></a>
chore(deps): update dependency prettier to v3.1.1 (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/552">#552</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/64eacb2776cae0f4626e92a3cda0e990a1fa2e21"><code>64eacb2</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/551">#551</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/octokit/auth-app.js/compare/v6.0.1...v6.0.3">compare
view</a></li>
</ul>
</details>
<br />

Updates `p-retry` from 6.1.0 to 6.2.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sindresorhus/p-retry/releases">p-retry's
releases</a>.</em></p>
<blockquote>
<h2>v6.2.0</h2>
<ul>
<li>Add <a
href="https://github.com/sindresorhus/p-retry#shouldretryerror"><code>shouldRetry</code></a>
option (<a
href="https://redirect.github.com/sindresorhus/p-retry/issues/75">#75</a>)
b993a96</li>
</ul>
<p><a
href="https://github.com/sindresorhus/p-retry/compare/v6.1.0...v6.2.0">https://github.com/sindresorhus/p-retry/compare/v6.1.0...v6.2.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/sindresorhus/p-retry/commit/21a22dd094a54e0c364ddd4bcb91c2f88e2dd03c"><code>21a22dd</code></a>
6.2.0</li>
<li><a
href="https://github.com/sindresorhus/p-retry/commit/e7d8789d43a6d8b61e88eff1181f2895add6974c"><code>e7d8789</code></a>
Meta tweaks</li>
<li><a
href="https://github.com/sindresorhus/p-retry/commit/b993a96738c52b78f54dad605a0c4df4932d4f85"><code>b993a96</code></a>
Add <code>shouldRetry</code> option (<a
href="https://redirect.github.com/sindresorhus/p-retry/issues/75">#75</a>)</li>
<li>See full diff in <a
href="https://github.com/sindresorhus/p-retry/compare/v6.1.0...v6.2.0">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-09 14:20:33 -08:00
dependabot[bot] 936979e9ad build(deps-dev): bump the development-dependencies group with 4 updates
Bumps the development-dependencies group with 4 updates:
[ava](https://github.com/avajs/ava),
[esbuild](https://github.com/evanw/esbuild),
[open-cli](https://github.com/sindresorhus/open-cli) and
[undici](https://github.com/nodejs/undici).

Updates `ava` from 5.3.1 to 6.0.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/avajs/ava/releases">ava's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Ensure watch mode works outside of its integration tests by <a
href="https://github.com/novemberborn"><code>@​novemberborn</code></a>
in <a
href="https://redirect.github.com/avajs/ava/pull/3273">avajs/ava#3273</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/avajs/ava/compare/v6.0.0...v6.0.1">https://github.com/avajs/ava/compare/v6.0.0...v6.0.1</a></p>
<h2>v6.0.0</h2>
<h2>Breaking Changes</h2>
<ul>
<li>
<p>AVA now requires Node.js versions 18.18, 20.8 or 21. Versions 14 and
16 are no longer supported. <a
href="https://redirect.github.com/avajs/ava/issues/3251">#3251</a> <a
href="https://redirect.github.com/avajs/ava/issues/3216">#3216</a></p>
</li>
<li>
<p>When tests finish, worker threads or child processes are no longer
exited through <code>proces.exit()</code>. If your test file does not
exit on its own, the test run will time out. <a
href="https://redirect.github.com/avajs/ava/issues/3260">#3260</a></p>
</li>
<li>
<p>Changes to watch mode <a
href="https://redirect.github.com/avajs/ava/issues/3218">#3218</a>:</p>
<ul>
<li>Watch mode can no longer be started via the
<code>ava.config.*</code> or <code>package.json</code>
configuration.</li>
<li>The <code>ignoredByWatcher</code> configuration has moved to the
<code>watchMode</code> object, under the <code>ignoreChanges</code>
key.</li>
<li>Watch mode now uses the built-in <a
href="https://nodejs.org/api/fs.html#fswatchfilename-options-listener"><code>fs.watch()</code></a>
in recursive mode. This is supported on Linux in Node.js 20 or newer,
and MacOS and Windows in Node.js 18 as well. There are <a
href="https://nodejs.org/api/fs.html#caveats">caveats</a> to keep in
mind.</li>
</ul>
</li>
<li>
<p>Failed assertions now throw, meaning that any subsequent code is not
executed. This also impacts the type definitions. <a
href="https://redirect.github.com/avajs/ava/issues/3246">#3246</a></p>
</li>
<li>
<p><a
href="https://nodejs.org/api/util.html#utiltypesisnativeerrorvalue">Only
native errors</a> are now considered errors by the
<code>t.throws()</code> and <code>t.throwsAsync()</code> assertions. <a
href="Object.create(https://github.com/avajs/ava/blob/HEAD/Error.prototype)"><code>Object.create(https://github.com/avajs/ava/blob/HEAD/Error.prototype)</code>
is <strong>not</strong> a native error</a>. <a
href="https://redirect.github.com/avajs/ava/issues/3229">#3229</a></p>
</li>
<li>
<p>Changes to modules loaded through the <code>require</code>
configuration <a
href="https://redirect.github.com/avajs/ava/issues/3184">#3184</a>:</p>
<ul>
<li>If such modules export a default function, this function is now
invoked.</li>
<li>Local files are loaded through <code>@ava/typescript</code> if
necessary.</li>
</ul>
</li>
</ul>
<h2>Improvements</h2>
<h3>Rewritten watcher</h3>
<p>The watcher has been rewritten. It’s now built on <a
href="https://nodejs.org/api/fs.html#fswatchfilename-options-listener"><code>fs.watch()</code></a>
in recursive mode.</p>
<p><a href="https://github.com/vercel/nft"><code>@vercel/nft</code></a>
is used to perform static dependency analysis, supporting ESM and CJS
imports for JavaScript &amp; TypeScript source files. This is a huge
improvement over the previous runtime tracking of CJS imports, which did
not support ESM.</p>
<p>Integration with <a
href="https://github.com/avajs/typescript"><code>@ava/typescript</code></a>
has been improved. The watcher can now detect a change to a TypeScript
source file, then wait for the corresponding build output to change
before re-running tests.</p>
<p>The ignoredByWatcher configuration has moved to the watchMode object,
under the ignoreChanges key.</p>
<p>See <a
href="https://redirect.github.com/avajs/ava/issues/3218">#3218</a> and
<a
href="https://redirect.github.com/avajs/ava/issues/3257">#3257</a>.</p>
<h3>Failed assertions now throw</h3>
<p>Assertions now throw a <code>TestFailure</code> error when they fail.
This error is not exported or documented and should not be used or
thrown manually. You cannot catch this error in order to recover from a
failure, use <code>t.try()</code> instead.</p>
<p>All assertions except for <code>t.throws()</code> and
<code>t.throwsAsync()</code> now return <code>true</code> when they
pass. This is useful for some of the assertions in TypeScript where they
can be used as a type guard.</p>
<p>Committing a failed <code>t.try()</code> result now also throws.</p>
<p>See <a
href="https://redirect.github.com/avajs/ava/issues/3246">#3246</a>.</p>
<h3><code>t.throws()</code> and <code>t.throwsAsync()</code> can now
expect any error</h3>
<p>By default, the thrown error (or rejection reason) must be a native
error. You can change the assertion to expect any kind of error by
setting <code>any: true</code> in the expectation object:</p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/avajs/ava/commit/5975b602b771e0dc02382d24b65c5561bd5fc7ee"><code>5975b60</code></a>
6.0.1</li>
<li><a
href="https://github.com/avajs/ava/commit/32f282fc2163f9088803995536c2b461594e0d66"><code>32f282f</code></a>
Ensure watch mode works outside of its integration tests</li>
<li><a
href="https://github.com/avajs/ava/commit/cf7a2886bf2717cbb599d195279501be703998de"><code>cf7a288</code></a>
6.0.0</li>
<li><a
href="https://github.com/avajs/ava/commit/af5684dff58a79da862fa57fad0e946985f730a2"><code>af5684d</code></a>
Don't force-exit after tests have completed</li>
<li><a
href="https://github.com/avajs/ava/commit/88e433376a03e70ab5f9f3e7ed081f35708c99de"><code>88e4333</code></a>
Update dependencies &amp; other minor tweaks</li>
<li><a
href="https://github.com/avajs/ava/commit/cac1d1fe643865b31e42913988ca09f3d2017913"><code>cac1d1f</code></a>
Tweak README</li>
<li><a
href="https://github.com/avajs/ava/commit/0492d32863cda8aac032a45a3c29b56b47ba3b63"><code>0492d32</code></a>
Fix external assertions tests for Node.js 21</li>
<li><a
href="https://github.com/avajs/ava/commit/adbfcde981df1563a9c3ba7feb28516d00821470"><code>adbfcde</code></a>
Experimentally expose internal events for custom reporters</li>
<li><a
href="https://github.com/avajs/ava/commit/6790d50202cded442e80b1bd4316ec62ea852586"><code>6790d50</code></a>
Update memoize dependency</li>
<li><a
href="https://github.com/avajs/ava/commit/e07179bf4a238d5dd258e94f51fe92afe9dff08b"><code>e07179b</code></a>
Remove ability to select AVA 5 watcher</li>
<li>Additional commits viewable in <a
href="https://github.com/avajs/ava/compare/v5.3.1...v6.0.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `esbuild` from 0.19.8 to 0.19.11
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.19.11</h2>
<ul>
<li>
<p>Fix TypeScript-specific class transform edge case (<a
href="https://redirect.github.com/evanw/esbuild/issues/3559">#3559</a>)</p>
<p>The previous release introduced an optimization that avoided
transforming <code>super()</code> in the class constructor for
TypeScript code compiled with <code>useDefineForClassFields</code> set
to <code>false</code> if all class instance fields have no initializers.
The rationale was that in this case, all class instance fields are
omitted in the output so no changes to the constructor are needed.
However, if all of this is the case <em>and</em> there are
<code>#private</code> instance fields with initializers, those private
instance field initializers were still being moved into the constructor.
This was problematic because they were being inserted before the call to
<code>super()</code> (since <code>super()</code> is now no longer
transformed in that case). This release introduces an additional
optimization that avoids moving the private instance field initializers
into the constructor in this edge case, which generates smaller code,
matches the TypeScript compiler's output more closely, and avoids this
bug:</p>
<pre lang="ts"><code>// Original code
class Foo extends Bar {
  #private = 1;
  public: any;
  constructor() {
    super();
  }
}
<p>// Old output (with esbuild v0.19.9)
class Foo extends Bar {
constructor() {
super();
this.#private = 1;
}
#private;
}</p>
<p>// Old output (with esbuild v0.19.10)
class Foo extends Bar {
constructor() {
this.#private = 1;
super();
}
#private;
}</p>
<p>// New output
class Foo extends Bar {
#private = 1;
constructor() {
super();
}
}
</code></pre></p>
</li>
<li>
<p>Minifier: allow reording a primitive past a side-effect (<a
href="https://redirect.github.com/evanw/esbuild/issues/3568">#3568</a>)</p>
<p>The minifier previously allowed reordering a side-effect past a
primitive, but didn't handle the case of reordering a primitive past a
side-effect. This additional case is now handled:</p>
<pre lang="js"><code>// Original code
function f() {
  let x = false;
</code></pre>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h2>0.19.11</h2>
<ul>
<li>
<p>Fix TypeScript-specific class transform edge case (<a
href="https://redirect.github.com/evanw/esbuild/issues/3559">#3559</a>)</p>
<p>The previous release introduced an optimization that avoided
transforming <code>super()</code> in the class constructor for
TypeScript code compiled with <code>useDefineForClassFields</code> set
to <code>false</code> if all class instance fields have no initializers.
The rationale was that in this case, all class instance fields are
omitted in the output so no changes to the constructor are needed.
However, if all of this is the case <em>and</em> there are
<code>#private</code> instance fields with initializers, those private
instance field initializers were still being moved into the constructor.
This was problematic because they were being inserted before the call to
<code>super()</code> (since <code>super()</code> is now no longer
transformed in that case). This release introduces an additional
optimization that avoids moving the private instance field initializers
into the constructor in this edge case, which generates smaller code,
matches the TypeScript compiler's output more closely, and avoids this
bug:</p>
<pre lang="ts"><code>// Original code
class Foo extends Bar {
  #private = 1;
  public: any;
  constructor() {
    super();
  }
}
<p>// Old output (with esbuild v0.19.9)
class Foo extends Bar {
constructor() {
super();
this.#private = 1;
}
#private;
}</p>
<p>// Old output (with esbuild v0.19.10)
class Foo extends Bar {
constructor() {
this.#private = 1;
super();
}
#private;
}</p>
<p>// New output
class Foo extends Bar {
#private = 1;
constructor() {
super();
}
}
</code></pre></p>
</li>
<li>
<p>Minifier: allow reording a primitive past a side-effect (<a
href="https://redirect.github.com/evanw/esbuild/issues/3568">#3568</a>)</p>
<p>The minifier previously allowed reordering a side-effect past a
primitive, but didn't handle the case of reordering a primitive past a
side-effect. This additional case is now handled:</p>
<pre lang="js"><code>// Original code
function f() {
</code></pre>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/evanw/esbuild/commit/6ee82255bdfdffef2de60827e9d35a425a7cbff6"><code>6ee8225</code></a>
publish 0.19.11 to npm</li>
<li><a
href="https://github.com/evanw/esbuild/commit/f8ae3af32f698e0be5c159a4ab5d77324d3f44d7"><code>f8ae3af</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3561">#3561</a>:
treeshaking of known <code>Symbol</code> instances</li>
<li><a
href="https://github.com/evanw/esbuild/commit/0811058e16e1416547ba9abbaf182916eaf259f5"><code>0811058</code></a>
switch define data to flags</li>
<li><a
href="https://github.com/evanw/esbuild/commit/f5f8ff895c4665b661ac6a49940e7bb7f012603b"><code>f5f8ff8</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3568">#3568</a>:
can reorder primitive past side-effect</li>
<li><a
href="https://github.com/evanw/esbuild/commit/914f6080c77cfe32a54888caa51ca6ea13873ce9"><code>914f608</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3558">#3558</a>:
put the <code>stop()</code> api call back</li>
<li><a
href="https://github.com/evanw/esbuild/commit/2aa166b623a0db059409e7ccf02ebc084fcb3abd"><code>2aa166b</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3559">#3559</a>:
fix recent class transform regression</li>
<li><a
href="https://github.com/evanw/esbuild/commit/55e1127a49db0c26f1abd97f1b180bbc728aa95a"><code>55e1127</code></a>
publish 0.19.10 to npm</li>
<li><a
href="https://github.com/evanw/esbuild/commit/d968af29c3e11b0de0776c0648548d8e298afc02"><code>d968af2</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3511">#3511</a>:
<code>@__NO_SIDE_EFFECTS__</code> with templates</li>
<li><a
href="https://github.com/evanw/esbuild/commit/00c4ebeb91a576dcf710b36ca8927a99efff1d37"><code>00c4ebe</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3546">#3546</a>:
don't transform <code>require</code> glob imports</li>
<li><a
href="https://github.com/evanw/esbuild/commit/e1b7050aa074da1a0a846a01b4a3c82857128944"><code>e1b7050</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3319">#3319</a>:
missing symbol usage in glob transform</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.19.8...v0.19.11">compare
view</a></li>
</ul>
</details>
<br />

Updates `open-cli` from 7.2.0 to 8.0.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sindresorhus/open-cli/releases">open-cli's
releases</a>.</em></p>
<blockquote>
<h2>v8.0.0</h2>
<h3>Breaking</h3>
<ul>
<li>Require Node.js 18  bb32fe9</li>
</ul>
<p><a
href="https://github.com/sindresorhus/open-cli/compare/v7.2.0...v8.0.0">https://github.com/sindresorhus/open-cli/compare/v7.2.0...v8.0.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/sindresorhus/open-cli/commit/9550e180641aa42fd7ceb15b7e43a568d10f806a"><code>9550e18</code></a>
8.0.0</li>
<li><a
href="https://github.com/sindresorhus/open-cli/commit/bb32fe985de2de228a212405f0ea4a5b8b972b84"><code>bb32fe9</code></a>
Require Node.js 18</li>
<li>See full diff in <a
href="https://github.com/sindresorhus/open-cli/compare/v7.2.0...v8.0.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `undici` from 5.28.2 to 6.2.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/nodejs/undici/releases">undici's
releases</a>.</em></p>
<blockquote>
<h2>v6.2.1</h2>
<h2>What's Changed</h2>
<ul>
<li>perf: use tree by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2528">nodejs/undici#2528</a></li>
<li>chore: reduce dependencies by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2533">nodejs/undici#2533</a></li>
<li>Remove timers in agent.js by <a
href="https://github.com/mcollina"><code>@​mcollina</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2536">nodejs/undici#2536</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v6.2.0...v6.2.1">https://github.com/nodejs/undici/compare/v6.2.0...v6.2.1</a></p>
<h2>v6.2.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Remove FinalizationRegistry from Agent by <a
href="https://github.com/mcollina"><code>@​mcollina</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2530">nodejs/undici#2530</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v6.1.0...v6.2.0">https://github.com/nodejs/undici/compare/v6.1.0...v6.2.0</a></p>
<h2>v6.1.0</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: more sensible stack trace from dump error by <a
href="https://github.com/ronag"><code>@​ronag</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2503">nodejs/undici#2503</a></li>
<li>refactor: remove some node compat by <a
href="https://github.com/ronag"><code>@​ronag</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2502">nodejs/undici#2502</a></li>
<li>refactor: version cleanup by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2507">nodejs/undici#2507</a></li>
<li>perf(fetch): Improve fetch of detaurl by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2479">nodejs/undici#2479</a></li>
<li>feat: expose parseHeader by <a
href="https://github.com/ronag"><code>@​ronag</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2511">nodejs/undici#2511</a></li>
<li>perf(fetch): optimize call <code>dispatch</code> by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2493">nodejs/undici#2493</a></li>
<li>perf(util/parseHeaders): If the header name is buffer by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2501">nodejs/undici#2501</a></li>
<li>perf: twice faster method check by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2495">nodejs/undici#2495</a></li>
<li>refactor: remove Error.captureStackTrace by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2509">nodejs/undici#2509</a></li>
<li>perf: Improve processHeader by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2513">nodejs/undici#2513</a></li>
<li>perf: reduce <code>String#toLowerCase</code> call by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2516">nodejs/undici#2516</a></li>
<li>perf: optimize consumeEnd by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2510">nodejs/undici#2510</a></li>
<li>perf: reduce tst built time by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2517">nodejs/undici#2517</a></li>
<li>feat: allow customization of build environment by <a
href="https://github.com/khardix"><code>@​khardix</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2403">nodejs/undici#2403</a></li>
<li>fix: clear cache by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2519">nodejs/undici#2519</a></li>
<li>feat: Add resource timing entries for connection, request and
response by <a href="https://github.com/ToshB"><code>@​ToshB</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2481">nodejs/undici#2481</a></li>
<li>Call fg.unregister() after a dispatcher is done, adds UNDICI_NO_FG
to… by <a href="https://github.com/mcollina"><code>@​mcollina</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2527">nodejs/undici#2527</a></li>
<li>feat: expose headerNameToString by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2525">nodejs/undici#2525</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/khardix"><code>@​khardix</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2403">nodejs/undici#2403</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v6.0.1...v6.1.0">https://github.com/nodejs/undici/compare/v6.0.1...v6.1.0</a></p>
<h2>v6.0.1</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: stream error timings by <a
href="https://github.com/ronag"><code>@​ronag</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2497">nodejs/undici#2497</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v6.0.0...v6.0.1">https://github.com/nodejs/undici/compare/v6.0.0...v6.0.1</a></p>
<h2>v6.0.0</h2>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/nodejs/undici/commit/f51f917061aec737edfe635e52db5bccc6fc0ac6"><code>f51f917</code></a>
Bumped v6.2.1</li>
<li><a
href="https://github.com/nodejs/undici/commit/36e81319eb8920f5bccef60e172470b6dfb2734f"><code>36e8131</code></a>
Remove timers in agent.js (<a
href="https://redirect.github.com/nodejs/undici/issues/2536">#2536</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/5f4d435cbc0ec23d4f1d4ab65d1ef965087436a7"><code>5f4d435</code></a>
chore: reduce dependencies (<a
href="https://redirect.github.com/nodejs/undici/issues/2533">#2533</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/c5c6648a7d2097f9be4d1f7d06df9f158eff049d"><code>c5c6648</code></a>
perf: use tree (<a
href="https://redirect.github.com/nodejs/undici/issues/2528">#2528</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/0c4c4504852c71dac1a6eb8dfae0f2411b6f2fc6"><code>0c4c450</code></a>
Bumped v6.2.0</li>
<li><a
href="https://github.com/nodejs/undici/commit/59c2f3801c2619b808313f3d8727e8defd697123"><code>59c2f38</code></a>
Remove FinalizationRegistry from Agent (<a
href="https://redirect.github.com/nodejs/undici/issues/2530">#2530</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/250b89af0ae27b93aaacbb885e852636e2c78ce6"><code>250b89a</code></a>
Bumped v6.1.0</li>
<li><a
href="https://github.com/nodejs/undici/commit/38f2226718f8736bbb0d496f8b87618bcc78ddbc"><code>38f2226</code></a>
feat: expose headerNameToString (<a
href="https://redirect.github.com/nodejs/undici/issues/2525">#2525</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/974a85e9d423d0d3505adb39feef15434886f809"><code>974a85e</code></a>
Call fg.unregister() after a dispatcher is done, adds UNDICI_NO_FG to…
(<a
href="https://redirect.github.com/nodejs/undici/issues/2527">#2527</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/871baa74ec326518a3de3ee4591459e25617402e"><code>871baa7</code></a>
feat: Add resource timing entries for connection, request and response
(<a
href="https://redirect.github.com/nodejs/undici/issues/2481">#2481</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/nodejs/undici/compare/v5.28.2...v6.2.1">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-09 13:16:22 -08:00
semantic-release-bot 2986852ad8 build(release): 1.6.2 [skip ci]
## [1.6.2](https://github.com/actions/create-github-app-token/compare/v1.6.1...v1.6.2) (2023-12-06)

### Bug Fixes

* handle clock skew ([#87](https://github.com/actions/create-github-app-token/issues/87)) ([495056a](https://github.com/actions/create-github-app-token/commit/495056a51509f267cd7262080a7bb618ad7b5d08))
2023-12-06 20:25:58 +00:00
Bo Anderson 495056a515 fix: handle clock skew (#87)
GitHub's macOS runners for the past while have had some bad clock drift
which sometimes prevents this action from working with the error:

```console
'Issued at' claim ('iat') must be an Integer representing the time that the assertion was issued
```

`@octokit/auth-app` already has logic to handle this so we can defer to
that code.
2023-12-06 12:25:27 -08:00
Steve Russo 8746053070 docs(README): fix use of deprecated arguments (#86)
Using those fields that have an underscore (instead of a hyphen) cause
the following warnings if used:
```
Warning: Input 'app_id' has been deprecated with message: 'app_id' is deprecated and will be removed in a future version. Use 'app-id' instead.
Warning: Input 'private_key' has been deprecated with message: 'private_key' is deprecated and will be removed in a future version. Use 'private-key' instead.
```

So this PR just drops the last use of `app_id` and `private_key` from
the README in favor of `app-id` and `private-key`.
2023-12-05 09:16:54 -08:00
semantic-release-bot 46e4a501e1 build(release): 1.6.1 [skip ci]
## [1.6.1](https://github.com/actions/create-github-app-token/compare/v1.6.0...v1.6.1) (2023-12-01)

### Bug Fixes

* **deps:** bump dependencies([#84](https://github.com/actions/create-github-app-token/issues/84)) ([474769d](https://github.com/actions/create-github-app-token/commit/474769db88900a253a1c4aa9b4398d8a90c4cdab)), closes [#651](https://github.com/actions/create-github-app-token/issues/651) [#648](https://github.com/actions/create-github-app-token/issues/648) [#649](https://github.com/actions/create-github-app-token/issues/649) [#651](https://github.com/actions/create-github-app-token/issues/651) [#648](https://github.com/actions/create-github-app-token/issues/648) [#646](https://github.com/actions/create-github-app-token/issues/646)
2023-12-01 18:27:42 +00:00
dependabot[bot] 2e5cc74af2 build(deps-dev): bump the development-dependencies group with 3 updates (#85)
Bumps the development-dependencies group with 3 updates:
[esbuild](https://github.com/evanw/esbuild),
[undici](https://github.com/nodejs/undici) and
[yaml](https://github.com/eemeli/yaml).

Updates `esbuild` from 0.19.5 to 0.19.8
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.19.8</h2>
<ul>
<li>
<p>Add a treemap chart to esbuild's bundle analyzer (<a
href="https://redirect.github.com/evanw/esbuild/issues/2848">#2848</a>)</p>
<p>The bundler analyzer on esbuild's website (<a
href="https://esbuild.github.io/analyze/">https://esbuild.github.io/analyze/</a>)
now has a treemap chart type in addition to the two existing chart types
(sunburst and flame). This should be more familiar for people coming
from other similar tools, as well as make better use of large
screens.</p>
</li>
<li>
<p>Allow decorators after the <code>export</code> keyword (<a
href="https://redirect.github.com/evanw/esbuild/issues/104">#104</a>)</p>
<p>Previously esbuild's decorator parser followed the original behavior
of TypeScript's experimental decorators feature, which only allowed
decorators to come before the <code>export</code> keyword. However, the
upcoming JavaScript decorators feature also allows decorators to come
after the <code>export</code> keyword. And with TypeScript 5.0,
TypeScript now also allows experimental decorators to come after the
<code>export</code> keyword too. So esbuild now allows this as well:</p>
<pre lang="js"><code>// This old syntax has always been permitted:
@decorator export class Foo {}
@decorator export default class Foo {}
<p>// This new syntax is now permitted too:
export <a
href="https://github.com/decorator"><code>@​decorator</code></a> class
Foo {}
export default <a
href="https://github.com/decorator"><code>@​decorator</code></a> class
Foo {}
</code></pre></p>
<p>In addition, esbuild's decorator parser has been rewritten to fix
several subtle and likely unimportant edge cases with esbuild's parsing
of exports and decorators in TypeScript (e.g. TypeScript apparently does
automatic semicolon insertion after <code>interface</code> and
<code>export interface</code> but not after <code>export default
interface</code>).</p>
</li>
<li>
<p>Pretty-print decorators using the same whitespace as the original</p>
<p>When printing code containing decorators, esbuild will now try to
respect whether the original code contained newlines after the decorator
or not. This can make generated code containing many decorators much
more compact to read:</p>
<pre lang="js"><code>// Original code
class Foo {
  @a @b @c abc
  @x @y @z xyz
}
<p>// Old output
class Foo {
<a href="https://github.com/a"><code>@​a</code></a>
<a href="https://github.com/b"><code>@​b</code></a>
<a href="https://github.com/c"><code>@​c</code></a>
abc;
<a href="https://github.com/x"><code>@​x</code></a>
<a href="https://github.com/y"><code>@​y</code></a>
<a href="https://github.com/z"><code>@​z</code></a>
xyz;
}</p>
<p>// New output
class Foo {
<a href="https://github.com/a"><code>@​a</code></a> <a
href="https://github.com/b"><code>@​b</code></a> <a
href="https://github.com/c"><code>@​c</code></a> abc;
<a href="https://github.com/x"><code>@​x</code></a> <a
href="https://github.com/y"><code>@​y</code></a> <a
href="https://github.com/z"><code>@​z</code></a> xyz;
}
</code></pre></p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h2>0.19.8</h2>
<ul>
<li>
<p>Add a treemap chart to esbuild's bundle analyzer (<a
href="https://redirect.github.com/evanw/esbuild/issues/2848">#2848</a>)</p>
<p>The bundler analyzer on esbuild's website (<a
href="https://esbuild.github.io/analyze/">https://esbuild.github.io/analyze/</a>)
now has a treemap chart type in addition to the two existing chart types
(sunburst and flame). This should be more familiar for people coming
from other similar tools, as well as make better use of large
screens.</p>
</li>
<li>
<p>Allow decorators after the <code>export</code> keyword (<a
href="https://redirect.github.com/evanw/esbuild/issues/104">#104</a>)</p>
<p>Previously esbuild's decorator parser followed the original behavior
of TypeScript's experimental decorators feature, which only allowed
decorators to come before the <code>export</code> keyword. However, the
upcoming JavaScript decorators feature also allows decorators to come
after the <code>export</code> keyword. And with TypeScript 5.0,
TypeScript now also allows experimental decorators to come after the
<code>export</code> keyword too. So esbuild now allows this as well:</p>
<pre lang="js"><code>// This old syntax has always been permitted:
@decorator export class Foo {}
@decorator export default class Foo {}
<p>// This new syntax is now permitted too:
export <a
href="https://github.com/decorator"><code>@​decorator</code></a> class
Foo {}
export default <a
href="https://github.com/decorator"><code>@​decorator</code></a> class
Foo {}
</code></pre></p>
<p>In addition, esbuild's decorator parser has been rewritten to fix
several subtle and likely unimportant edge cases with esbuild's parsing
of exports and decorators in TypeScript (e.g. TypeScript apparently does
automatic semicolon insertion after <code>interface</code> and
<code>export interface</code> but not after <code>export default
interface</code>).</p>
</li>
<li>
<p>Pretty-print decorators using the same whitespace as the original</p>
<p>When printing code containing decorators, esbuild will now try to
respect whether the original code contained newlines after the decorator
or not. This can make generated code containing many decorators much
more compact to read:</p>
<pre lang="js"><code>// Original code
class Foo {
  @a @b @c abc
  @x @y @z xyz
}
<p>// Old output
class Foo {
<a href="https://github.com/a"><code>@​a</code></a>
<a href="https://github.com/b"><code>@​b</code></a>
<a href="https://github.com/c"><code>@​c</code></a>
abc;
<a href="https://github.com/x"><code>@​x</code></a>
<a href="https://github.com/y"><code>@​y</code></a>
<a href="https://github.com/z"><code>@​z</code></a>
xyz;
}</p>
<p>// New output
class Foo {
<a href="https://github.com/a"><code>@​a</code></a> <a
href="https://github.com/b"><code>@​b</code></a> <a
href="https://github.com/c"><code>@​c</code></a> abc;
<a href="https://github.com/x"><code>@​x</code></a> <a
href="https://github.com/y"><code>@​y</code></a> <a
href="https://github.com/z"><code>@​z</code></a> xyz;
}
</code></pre></p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/evanw/esbuild/commit/e97bd6706c7aaddb3770ae31b164d7ccaec8056c"><code>e97bd67</code></a>
publish 0.19.8 to npm</li>
<li><a
href="https://github.com/evanw/esbuild/commit/65b305894dc8bb3bae8a2a2c88f2b461135ef13f"><code>65b3058</code></a>
mention the treemap in the release notes (<a
href="https://redirect.github.com/evanw/esbuild/issues/2848">#2848</a>)</li>
<li><a
href="https://github.com/evanw/esbuild/commit/16883d42eb631aac354104a80cc41446b983bdf9"><code>16883d4</code></a>
add whitespace change to release notes</li>
<li><a
href="https://github.com/evanw/esbuild/commit/7383d0dbff033ae2f954a080a77b267eede303f9"><code>7383d0d</code></a>
decorators: printing preserves newline-tail status</li>
<li><a
href="https://github.com/evanw/esbuild/commit/7edc83da67e9bf5bb217401debf0669a7011e8b8"><code>7edc83d</code></a>
reword an experimental decorators error message</li>
<li><a
href="https://github.com/evanw/esbuild/commit/f3d535262e3998d845d0f102b944ecd5a9efda57"><code>f3d5352</code></a>
remove a now-unused field</li>
<li><a
href="https://github.com/evanw/esbuild/commit/e7551893c099e101f9491e2b79851671db4cd441"><code>e755189</code></a>
ts: forbid regular decorators on <code>declare</code> fields</li>
<li><a
href="https://github.com/evanw/esbuild/commit/69c9e7f9fa91db641ecbcfad40b9fd6977522f8a"><code>69c9e7f</code></a>
allow decorators to come after <code>export</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/104">#104</a>)</li>
<li><a
href="https://github.com/evanw/esbuild/commit/7baefdb4ea471d453a880a18fef5217347cf9973"><code>7baefdb</code></a>
fix a panic with &quot;export default interface\n&quot;</li>
<li><a
href="https://github.com/evanw/esbuild/commit/a8313d2c5d1e7574de92b3aade60c5c84fd31c59"><code>a8313d2</code></a>
use &quot;check&quot; for decorator validation, not
&quot;guess&quot;</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.19.5...v0.19.8">compare
view</a></li>
</ul>
</details>
<br />

Updates `undici` from 5.27.0 to 5.28.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/nodejs/undici/releases">undici's
releases</a>.</em></p>
<blockquote>
<h2>v5.28.2</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: remove optional chainning for compatible with Nodejs12 and
below by <a href="https://github.com/bugb"><code>@​bugb</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2470">nodejs/undici#2470</a></li>
<li>fix: remove <code>node:</code> prefix by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2471">nodejs/undici#2471</a></li>
<li>perf: avoid Headers initialization by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2468">nodejs/undici#2468</a></li>
<li>fix: handle SharedArrayBuffer correctly by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2466">nodejs/undici#2466</a></li>
<li>fix: Add <code>null</code> type to <code>signal</code> in
<code>RequestInit</code> by <a
href="https://github.com/gebsh"><code>@​gebsh</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2455">nodejs/undici#2455</a></li>
<li>fix: correctly handle data URL with hashes. by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2475">nodejs/undici#2475</a></li>
<li>fix: check response for timinginfo allow flag by <a
href="https://github.com/ToshB"><code>@​ToshB</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2477">nodejs/undici#2477</a></li>
<li>Make call to onBodySent conditional in RetryHandler by <a
href="https://github.com/MzUgM"><code>@​MzUgM</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2478">nodejs/undici#2478</a></li>
<li>refactor: better integrity check by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2462">nodejs/undici#2462</a></li>
<li>fix: Added support for inline URL username:password proxy auth by <a
href="https://github.com/matt-way"><code>@​matt-way</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2473">nodejs/undici#2473</a></li>
<li>build(deps-dev): bump jsdom from 22.1.0 to 23.0.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2472">nodejs/undici#2472</a></li>
<li>build(deps-dev): bump sinon from 16.1.3 to 17.0.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2405">nodejs/undici#2405</a></li>
<li>build(deps): bump ossf/scorecard-action from 2.2.0 to 2.3.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2396">nodejs/undici#2396</a></li>
<li>build(deps): bump actions/setup-node from 3.8.1 to 4.0.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2395">nodejs/undici#2395</a></li>
<li>build(deps): bump step-security/harden-runner from 2.5.0 to 2.6.0 by
<a href="https://github.com/dependabot"><code>@​dependabot</code></a> in
<a
href="https://redirect.github.com/nodejs/undici/pull/2392">nodejs/undici#2392</a></li>
<li>build(deps-dev): bump formdata-node from 4.4.1 to 6.0.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2389">nodejs/undici#2389</a></li>
<li>build(deps): bump actions/upload-artifact from 3.1.2 to 3.1.3 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2302">nodejs/undici#2302</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/bugb"><code>@​bugb</code></a> made their
first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2470">nodejs/undici#2470</a></li>
<li><a href="https://github.com/gebsh"><code>@​gebsh</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2455">nodejs/undici#2455</a></li>
<li><a href="https://github.com/ToshB"><code>@​ToshB</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2477">nodejs/undici#2477</a></li>
<li><a href="https://github.com/MzUgM"><code>@​MzUgM</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2478">nodejs/undici#2478</a></li>
<li><a href="https://github.com/matt-way"><code>@​matt-way</code></a>
made their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2473">nodejs/undici#2473</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.28.1...v5.28.2">https://github.com/nodejs/undici/compare/v5.28.1...v5.28.2</a></p>
<h2>v5.28.1</h2>
<h2>What's Changed</h2>
<ul>
<li>perf: Improve <code>normalizeMethod</code> by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2456">nodejs/undici#2456</a></li>
<li>fix: dispatch error handling by <a
href="https://github.com/ronag"><code>@​ronag</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2459">nodejs/undici#2459</a></li>
<li>perf(request): optimize if headers are given by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2454">nodejs/undici#2454</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.28.0...v5.28.1">https://github.com/nodejs/undici/compare/v5.28.0...v5.28.1</a></p>
<h2>v5.28.0</h2>
<h2>What's Changed</h2>
<ul>
<li>fix(parseHeaders): util.parseHeaders handle correctly array of
buffer… by <a
href="https://github.com/mdoria12"><code>@​mdoria12</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2398">nodejs/undici#2398</a></li>
<li>docs: add license to undici-types by <a
href="https://github.com/dancastillo"><code>@​dancastillo</code></a> in
<a
href="https://redirect.github.com/nodejs/undici/pull/2401">nodejs/undici#2401</a></li>
<li>perf: optimize Readable.dump by <a
href="https://github.com/ronag"><code>@​ronag</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2402">nodejs/undici#2402</a></li>
<li>perf(headers): Improve Headers by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2397">nodejs/undici#2397</a></li>
<li>test: re-enable conditional WPT Report for websockets by <a
href="https://github.com/panva"><code>@​panva</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2407">nodejs/undici#2407</a></li>
<li>fix: delay abort on 'close' by <a
href="https://github.com/ronag"><code>@​ronag</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2408">nodejs/undici#2408</a></li>
<li>refactor: use <code>substring</code> instead of <code>substr</code>
by <a href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2411">nodejs/undici#2411</a></li>
<li>add additional http2 test with fetch by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2419">nodejs/undici#2419</a></li>
<li>fix: HTTPToken check by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2410">nodejs/undici#2410</a></li>
<li>perf: optimize HeadersList.get by <a
href="https://github.com/tsctx"><code>@​tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2420">nodejs/undici#2420</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/nodejs/undici/commit/9a14e5f32a118fa93e769cc15ae8de9de552f2e4"><code>9a14e5f</code></a>
Bumped v5.28.2</li>
<li><a
href="https://github.com/nodejs/undici/commit/fcdfe878d792c4347b81179bc31a2d1b1f06e8fb"><code>fcdfe87</code></a>
build(deps): bump actions/upload-artifact from 3.1.2 to 3.1.3 (<a
href="https://redirect.github.com/nodejs/undici/issues/2302">#2302</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/169c157f9a576e4422a20060f57db1dc4693b373"><code>169c157</code></a>
build(deps-dev): bump formdata-node from 4.4.1 to 6.0.3 (<a
href="https://redirect.github.com/nodejs/undici/issues/2389">#2389</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/97881779e6ba41d2fdbfe27b5c9cc0563dc60134"><code>9788177</code></a>
build(deps): bump step-security/harden-runner from 2.5.0 to 2.6.0 (<a
href="https://redirect.github.com/nodejs/undici/issues/2392">#2392</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/1f6d1597648d332c0705befec74387631d5df9ff"><code>1f6d159</code></a>
build(deps): bump actions/setup-node from 3.8.1 to 4.0.0 (<a
href="https://redirect.github.com/nodejs/undici/issues/2395">#2395</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/a393a86d09581945ce4e601d2359023e901b2dd0"><code>a393a86</code></a>
build(deps): bump ossf/scorecard-action from 2.2.0 to 2.3.1 (<a
href="https://redirect.github.com/nodejs/undici/issues/2396">#2396</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/ea2f606e6b101fcbc578a407c8d4f9d10d17756e"><code>ea2f606</code></a>
build(deps-dev): bump sinon from 16.1.3 to 17.0.1 (<a
href="https://redirect.github.com/nodejs/undici/issues/2405">#2405</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/80979edc78c458e87786e25194bc64ed0a2184b4"><code>80979ed</code></a>
build(deps-dev): bump jsdom from 22.1.0 to 23.0.0 (<a
href="https://redirect.github.com/nodejs/undici/issues/2472">#2472</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/08183ea1d25964de9eac3b9944b0c933fe693e6f"><code>08183ea</code></a>
fix: Added support for inline URL username:password proxy auth (<a
href="https://redirect.github.com/nodejs/undici/issues/2473">#2473</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/28759f406ff808afa7a102e9e248291123ef59cb"><code>28759f4</code></a>
refactor: better integrity check (<a
href="https://redirect.github.com/nodejs/undici/issues/2462">#2462</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/nodejs/undici/compare/v5.27.0...v5.28.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `yaml` from 2.3.3 to 2.3.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eemeli/yaml/releases">yaml's
releases</a>.</em></p>
<blockquote>
<h2>v2.3.4</h2>
<ul>
<li>Do not throw for carriage return in tag shorthand (<a
href="https://redirect.github.com/eemeli/yaml/issues/501">#501</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/eemeli/yaml/commit/b7696fc001837a2e9d66ad78d7c04f47943daeca"><code>b7696fc</code></a>
2.3.4</li>
<li><a
href="https://github.com/eemeli/yaml/commit/4af74194f5e6964f0ce47aba42f9fa8a2389eb03"><code>4af7419</code></a>
fix: Carriage return in tag shorthand (<a
href="https://redirect.github.com/eemeli/yaml/issues/501">#501</a>)</li>
<li>See full diff in <a
href="https://github.com/eemeli/yaml/compare/v2.3.3...v2.3.4">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-01 10:27:09 -08:00
dependabot[bot] 474769db88 fix(deps): bump dependencies(#84)
Bumps the production-dependencies group with 1 update:
[@octokit/request](https://github.com/octokit/request.js).

Updates `@octokit/request` from 8.1.4 to 8.1.6
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/octokit/request.js/releases"><code>@​octokit/request</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v8.1.6</h2>
<h2><a
href="https://github.com/octokit/request.js/compare/v8.1.5...v8.1.6">8.1.6</a>
(2023-11-22)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>integrate isPlainObject (<a
href="https://redirect.github.com/octokit/request.js/issues/651">#651</a>)
(<a
href="https://github.com/octokit/request.js/commit/2554219c5bd805635b0fd3f96578c4c3e3ab988b">2554219</a>)</li>
</ul>
<h2>v8.1.5</h2>
<h2><a
href="https://github.com/octokit/request.js/compare/v8.1.4...v8.1.5">8.1.5</a>
(2023-11-09)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>avoid <code>Unexpected end of JSON input</code> when response body
is empty (<a
href="https://redirect.github.com/octokit/request.js/issues/648">#648</a>)
(<a
href="https://github.com/octokit/request.js/commit/819cc3fe0efbe7e3ee2144e12819137cbed6b1b8">819cc3f</a>),
closes <a
href="https://redirect.github.com/octokit/request.js/issues/649">#649</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/octokit/request.js/commit/2554219c5bd805635b0fd3f96578c4c3e3ab988b"><code>2554219</code></a>
fix: integrate isPlainObject (<a
href="https://redirect.github.com/octokit/request.js/issues/651">#651</a>)</li>
<li><a
href="https://github.com/octokit/request.js/commit/e5d3577630804ce538b262a11cb7ebf97c663768"><code>e5d3577</code></a>
chore(deps): update dependency prettier to v3.1.0</li>
<li><a
href="https://github.com/octokit/request.js/commit/819cc3fe0efbe7e3ee2144e12819137cbed6b1b8"><code>819cc3f</code></a>
fix: avoid <code>Unexpected end of JSON input</code> when response body
is empty (<a
href="https://redirect.github.com/octokit/request.js/issues/648">#648</a>)</li>
<li><a
href="https://github.com/octokit/request.js/commit/5c1fcdfa07f087bffe86bff3c84c9855b744de5b"><code>5c1fcdf</code></a>
chore(deps): update dependency <code>@​types/node</code> to v20</li>
<li><a
href="https://github.com/octokit/request.js/commit/9cb39bac4fe6c09aa7764a19bbc981e6fbadf995"><code>9cb39ba</code></a>
ci(action): update actions/setup-node action to v4 (<a
href="https://redirect.github.com/octokit/request.js/issues/646">#646</a>)</li>
<li><a
href="https://github.com/octokit/request.js/commit/60ed27a678a01de32eed74d9a18ff89f45fcffaf"><code>60ed27a</code></a>
build(deps-dev): bump <code>@​babel/traverse</code> from 7.20.12 to
7.23.2</li>
<li>See full diff in <a
href="https://github.com/octokit/request.js/compare/v8.1.4...v8.1.6">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@octokit/request&package-manager=npm_and_yarn&previous-version=8.1.4&new-version=8.1.6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-01 10:26:54 -08:00
semantic-release-bot e995b4e40a build(release): 1.6.0 [skip ci]
# [1.6.0](https://github.com/actions/create-github-app-token/compare/v1.5.1...v1.6.0) (2023-11-16)

### Features

* add retry ([#79](https://github.com/actions/create-github-app-token/issues/79)) ([0f3b4d7](https://github.com/actions/create-github-app-token/commit/0f3b4d7df99b1af7cb8596ba4f855d6de4155aa5)), closes [#71](https://github.com/actions/create-github-app-token/issues/71)
2023-11-16 22:53:33 +00:00
Stephane Moser 0f3b4d7df9 feat: add retry (#79)
resolves #71

- Add p-retry library
- Extract logic to new functions to improve the usage of retry logic
2023-11-12 08:00:38 -08:00
Gregor Martynus 9769eb4076 build(.node-version): use latest LTS version (#78)
this should resolve
https://github.com/actions/create-github-app-token/actions/runs/6741605908/job/18326430392
2023-11-06 12:58:23 -08:00
Grant Birkinbine bb368d6a10 General Improvements (#70)
# General Improvements

> This is a classic @GrantBirki drive-by PR 🚗

This pull request does the following:

- Lightly updates and formats a few existing Actions workflows
- Adds a new `package-check` workflow to validate the contents of the
`dist/` directory have been properly built
- Uses a `.node-version` file so that local development and Actions
remain on the same pinned version of node
- Adds status badges to the readme for visual effect  🎨
2023-11-02 22:23:07 -07:00
semantic-release-bot eaddb9eb7e build(release): 1.5.1 [skip ci]
## [1.5.1](https://github.com/actions/create-github-app-token/compare/v1.5.0...v1.5.1) (2023-11-01)

### Bug Fixes

* **deps:** bump the production-dependencies group with 1 update ([#68](https://github.com/actions/create-github-app-token/issues/68)) ([6375dce](https://github.com/actions/create-github-app-token/commit/6375dcedb2ea16f4290923bb46ed8a00ea439cae))
2023-11-01 16:31:38 +00:00
dependabot[bot] 6375dcedb2 fix(deps): bump the production-dependencies group with 1 update (#68)
[//]: # (dependabot-start)
⚠️  **Dependabot is rebasing this PR** ⚠️ 

Rebasing might not happen immediately, so don't worry if this takes some
time.

Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.

---

[//]: # (dependabot-end)

Bumps the production-dependencies group with 1 update:
[@octokit/request](https://github.com/octokit/request.js).

<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/octokit/request.js/releases"><code>@​octokit/request</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v8.1.4</h2>
<h2><a
href="https://github.com/octokit/request.js/compare/v8.1.3...v8.1.4">8.1.4</a>
(2023-10-09)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><code>error.cause</code> from undici may be instance of Error (<a
href="https://redirect.github.com/octokit/request.js/issues/643">#643</a>)
(<a
href="https://github.com/octokit/request.js/commit/c67f902350384846f88d91196e7066daadc08357">c67f902</a>)</li>
</ul>
<h2>v8.1.3</h2>
<h2><a
href="https://github.com/octokit/request.js/compare/v8.1.2...v8.1.3">8.1.3</a>
(2023-10-06)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>surface 'cause' for undici network errors (<a
href="https://redirect.github.com/octokit/request.js/issues/642">#642</a>)
(<a
href="https://github.com/octokit/request.js/commit/7c9abfbe8413b513f877e56d966a0cddb7708bf3">7c9abfb</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/octokit/request.js/commit/c67f902350384846f88d91196e7066daadc08357"><code>c67f902</code></a>
fix: <code>error.cause</code> from undici may be instance of Error (<a
href="https://redirect.github.com/octokit/request.js/issues/643">#643</a>)</li>
<li><a
href="https://github.com/octokit/request.js/commit/7c9abfbe8413b513f877e56d966a0cddb7708bf3"><code>7c9abfb</code></a>
fix: surface 'cause' for undici network errors (<a
href="https://redirect.github.com/octokit/request.js/issues/642">#642</a>)</li>
<li><a
href="https://github.com/octokit/request.js/commit/1e7ea00c78b4b7c92c1a25cd0b669cce9e9650c3"><code>1e7ea00</code></a>
ci(action): update actions/add-to-project action to v0.5.0 (<a
href="https://redirect.github.com/octokit/request.js/issues/640">#640</a>)</li>
<li><a
href="https://github.com/octokit/request.js/commit/f0d3b513c34b4981d2b84f52006e843fdf121b66"><code>f0d3b51</code></a>
ci(action): Workflows have changed (<a
href="https://redirect.github.com/octokit/request.js/issues/639">#639</a>)</li>
<li><a
href="https://github.com/octokit/request.js/commit/f598d06cc21e3f28803b666b7e7340c7d5ca818e"><code>f598d06</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
ddff993 (<a
href="https://redirect.github.com/octokit/request.js/issues/638">#638</a>)</li>
<li>See full diff in <a
href="https://github.com/octokit/request.js/compare/v8.1.2...v8.1.4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@octokit/request&package-manager=npm_and_yarn&previous-version=8.1.2&new-version=8.1.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 09:31:01 -07:00
dependabot[bot] 9577d5145a build(deps-dev): bump the development-dependencies group with 3 updates (#69)
Bumps the development-dependencies group with 3 updates:
[esbuild](https://github.com/evanw/esbuild),
[undici](https://github.com/nodejs/undici) and
[yaml](https://github.com/eemeli/yaml).

Updates `esbuild` from 0.19.4 to 0.19.5
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.19.5</h2>
<ul>
<li>
<p>Fix a regression in 0.19.0 regarding <code>paths</code> in
<code>tsconfig.json</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3354">#3354</a>)</p>
<p>The fix in esbuild version 0.19.0 to process
<code>tsconfig.json</code> aliases before the
<code>--packages=external</code> setting unintentionally broke an edge
case in esbuild's handling of certain <code>tsconfig.json</code> aliases
where there are multiple files with the same name in different
directories. This release adjusts esbuild's behavior for this edge case
so that it passes while still processing aliases before
<code>--packages=external</code>. Please read the linked issue for more
details.</p>
</li>
<li>
<p>Fix a CSS <code>font</code> property minification bug (<a
href="https://redirect.github.com/evanw/esbuild/issues/3452">#3452</a>)</p>
<p>This release fixes a bug where esbuild's CSS minifier didn't insert a
space between the font size and the font family in the <code>font</code>
CSS shorthand property in the edge case where the original source code
didn't already have a space and the leading string token was shortened
to an identifier:</p>
<pre lang="css"><code>/* Original code */
.foo { font: 16px&quot;Menlo&quot;; }
<p>/* Old output (with --minify) */
.foo{font:16pxMenlo}</p>
<p>/* New output (with --minify) */
.foo{font:16px Menlo}
</code></pre></p>
</li>
<li>
<p>Fix bundling CSS with asset names containing spaces (<a
href="https://redirect.github.com/evanw/esbuild/issues/3410">#3410</a>)</p>
<p>Assets referenced via CSS <code>url()</code> tokens may cause esbuild
to generate invalid output when bundling if the file name contains
spaces (e.g. <code>url(image 2.png)</code>). With this release, esbuild
will now quote all bundled asset references in <code>url()</code> tokens
to avoid this problem. This only affects assets loaded using the
<code>file</code> and <code>copy</code> loaders.</p>
</li>
<li>
<p>Fix invalid CSS <code>url()</code> tokens in <code>@import</code>
rules (<a
href="https://redirect.github.com/evanw/esbuild/issues/3426">#3426</a>)</p>
<p>In the future, CSS <code>url()</code> tokens may contain additional
stuff after the URL. This is irrelevant today as no CSS specification
does this. But esbuild previously had a bug where using these tokens in
an <code>@import</code> rule resulted in malformed output. This bug has
been fixed.</p>
</li>
<li>
<p>Fix <code>browser</code> + <code>false</code> + <code>type:
module</code> in <code>package.json</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3367">#3367</a>)</p>
<p>The <code>browser</code> field in <code>package.json</code> allows
you to map a file to <code>false</code> to have it be treated as an
empty file when bundling for the browser. However, if
<code>package.json</code> contains <code>&quot;type&quot;:
&quot;module&quot;</code> then all <code>.js</code> files will be
considered ESM, not CommonJS. Importing a named import from an empty
CommonJS file gives you undefined, but importing a named export from an
empty ESM file is a build error. This release changes esbuild's
interpretation of these files mapped to <code>false</code> in this
situation from ESM to CommonJS to avoid generating build errors for
named imports.</p>
</li>
<li>
<p>Fix a bug in top-level await error reporting (<a
href="https://redirect.github.com/evanw/esbuild/issues/3400">#3400</a>)</p>
<p>Using <code>require()</code> on a file that contains <a
href="https://v8.dev/features/top-level-await">top-level await</a> is
not allowed because <code>require()</code> must return synchronously and
top-level await makes that impossible. You will get a build error if you
try to bundle code that does this with esbuild. This release fixes a bug
in esbuild's error reporting code for complex cases of this situation
involving multiple levels of imports to get to the module containing the
top-level await.</p>
</li>
<li>
<p>Update to Unicode 15.1.0</p>
<p>The character tables that determine which characters form valid
JavaScript identifiers have been updated from Unicode version 15.0.0 to
the newly-released Unicode version 15.1.0. I'm not putting an example in
the release notes because all of the new characters will likely just
show up as little squares since fonts haven't been updated yet. But you
can read <a
href="https://www.unicode.org/versions/Unicode15.1.0/#Summary">https://www.unicode.org/versions/Unicode15.1.0/#Summary</a>
for more information about the changes.</p>
<p>This upgrade was contributed by <a
href="https://github.com/JLHwung"><code>@​JLHwung</code></a>.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h2>0.19.5</h2>
<ul>
<li>
<p>Fix a regression in 0.19.0 regarding <code>paths</code> in
<code>tsconfig.json</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3354">#3354</a>)</p>
<p>The fix in esbuild version 0.19.0 to process
<code>tsconfig.json</code> aliases before the
<code>--packages=external</code> setting unintentionally broke an edge
case in esbuild's handling of certain <code>tsconfig.json</code> aliases
where there are multiple files with the same name in different
directories. This release adjusts esbuild's behavior for this edge case
so that it passes while still processing aliases before
<code>--packages=external</code>. Please read the linked issue for more
details.</p>
</li>
<li>
<p>Fix a CSS <code>font</code> property minification bug (<a
href="https://redirect.github.com/evanw/esbuild/issues/3452">#3452</a>)</p>
<p>This release fixes a bug where esbuild's CSS minifier didn't insert a
space between the font size and the font family in the <code>font</code>
CSS shorthand property in the edge case where the original source code
didn't already have a space and the leading string token was shortened
to an identifier:</p>
<pre lang="css"><code>/* Original code */
.foo { font: 16px&quot;Menlo&quot;; }
<p>/* Old output (with --minify) */
.foo{font:16pxMenlo}</p>
<p>/* New output (with --minify) */
.foo{font:16px Menlo}
</code></pre></p>
</li>
<li>
<p>Fix bundling CSS with asset names containing spaces (<a
href="https://redirect.github.com/evanw/esbuild/issues/3410">#3410</a>)</p>
<p>Assets referenced via CSS <code>url()</code> tokens may cause esbuild
to generate invalid output when bundling if the file name contains
spaces (e.g. <code>url(image 2.png)</code>). With this release, esbuild
will now quote all bundled asset references in <code>url()</code> tokens
to avoid this problem. This only affects assets loaded using the
<code>file</code> and <code>copy</code> loaders.</p>
</li>
<li>
<p>Fix invalid CSS <code>url()</code> tokens in <code>@import</code>
rules (<a
href="https://redirect.github.com/evanw/esbuild/issues/3426">#3426</a>)</p>
<p>In the future, CSS <code>url()</code> tokens may contain additional
stuff after the URL. This is irrelevant today as no CSS specification
does this. But esbuild previously had a bug where using these tokens in
an <code>@import</code> rule resulted in malformed output. This bug has
been fixed.</p>
</li>
<li>
<p>Fix <code>browser</code> + <code>false</code> + <code>type:
module</code> in <code>package.json</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3367">#3367</a>)</p>
<p>The <code>browser</code> field in <code>package.json</code> allows
you to map a file to <code>false</code> to have it be treated as an
empty file when bundling for the browser. However, if
<code>package.json</code> contains <code>&quot;type&quot;:
&quot;module&quot;</code> then all <code>.js</code> files will be
considered ESM, not CommonJS. Importing a named import from an empty
CommonJS file gives you undefined, but importing a named export from an
empty ESM file is a build error. This release changes esbuild's
interpretation of these files mapped to <code>false</code> in this
situation from ESM to CommonJS to avoid generating build errors for
named imports.</p>
</li>
<li>
<p>Fix a bug in top-level await error reporting (<a
href="https://redirect.github.com/evanw/esbuild/issues/3400">#3400</a>)</p>
<p>Using <code>require()</code> on a file that contains <a
href="https://v8.dev/features/top-level-await">top-level await</a> is
not allowed because <code>require()</code> must return synchronously and
top-level await makes that impossible. You will get a build error if you
try to bundle code that does this with esbuild. This release fixes a bug
in esbuild's error reporting code for complex cases of this situation
involving multiple levels of imports to get to the module containing the
top-level await.</p>
</li>
<li>
<p>Update to Unicode 15.1.0</p>
<p>The character tables that determine which characters form valid
JavaScript identifiers have been updated from Unicode version 15.0.0 to
the newly-released Unicode version 15.1.0. I'm not putting an example in
the release notes because all of the new characters will likely just
show up as little squares since fonts haven't been updated yet. But you
can read <a
href="https://www.unicode.org/versions/Unicode15.1.0/#Summary">https://www.unicode.org/versions/Unicode15.1.0/#Summary</a>
for more information about the changes.</p>
<p>This upgrade was contributed by <a
href="https://github.com/JLHwung"><code>@​JLHwung</code></a>.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/evanw/esbuild/commit/a7fcc43fdb6b6edc58f781fe96328f4867f4b33e"><code>a7fcc43</code></a>
publish 0.19.5 to npm</li>
<li><a
href="https://github.com/evanw/esbuild/commit/58708094af0ffa53f73c73eb9c0a821e5b6ed778"><code>5870809</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3367">#3367</a>:
ignore ESM flag for disabled modules</li>
<li><a
href="https://github.com/evanw/esbuild/commit/d5f397f6e5dc6dbb70d2d4bbc5cefe725c2c853c"><code>d5f397f</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3354">#3354</a>:
<code>tsconfig.json</code> regression with <code>paths</code></li>
<li><a
href="https://github.com/evanw/esbuild/commit/72b1e8b4b0d14f9774e427079aae00f5e19c73c4"><code>72b1e8b</code></a>
resolver: move <code>IsExternal</code> into <code>PathPair</code></li>
<li><a
href="https://github.com/evanw/esbuild/commit/b0eddeac5018aadd24736e7f9e64444e05e4e0d2"><code>b0eddea</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3400">#3400</a>:
bug in top-level await error reporting</li>
<li><a
href="https://github.com/evanw/esbuild/commit/47fc80bdb3e57d17dff5787589b764f1541f475b"><code>47fc80b</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3426">#3426</a>:
improve invalid <code>url()</code> token parsing</li>
<li><a
href="https://github.com/evanw/esbuild/commit/d6973b938e4622db0f692d6eac846af60f7515e2"><code>d6973b9</code></a>
css: fix url token backtracking with leading space</li>
<li><a
href="https://github.com/evanw/esbuild/commit/30a43ec794a1b71f37c645f1f1b915090d54bf3e"><code>30a43ec</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3410">#3410</a>:
quote asset references in url tokens</li>
<li><a
href="https://github.com/evanw/esbuild/commit/a579bd80c24de9dd2ebce352e378b0f798bb8ba3"><code>a579bd8</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3452">#3452</a>:
insert space in <code>font</code> when minifying</li>
<li><a
href="https://github.com/evanw/esbuild/commit/cd91337d87e4f53e388a5a66d24e791957165b24"><code>cd91337</code></a>
update go 1.20.7 =&gt; 1.20.10</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.19.4...v0.19.5">compare
view</a></li>
</ul>
</details>
<br />

Updates `undici` from 5.26.2 to 5.27.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/nodejs/undici/releases">undici's
releases</a>.</em></p>
<blockquote>
<h2>v5.27.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Use sets and reusable TextEncoder/TextDecoder instances by <a
href="https://github.com/kibertoad"><code>@​kibertoad</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2368">nodejs/undici#2368</a></li>
<li>feat: forward onRequestSent to handler by <a
href="https://github.com/ronag"><code>@​ronag</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2375">nodejs/undici#2375</a></li>
<li>skip bundle test on node 16 by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2377">nodejs/undici#2377</a></li>
<li>fix windows CI by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2379">nodejs/undici#2379</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.26.5...v5.27.0">https://github.com/nodejs/undici/compare/v5.26.5...v5.27.0</a></p>
<h2>v5.26.5</h2>
<h2>What's Changed</h2>
<ul>
<li>Drop race condition in connect-timeout test by <a
href="https://github.com/mcollina"><code>@​mcollina</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2360">nodejs/undici#2360</a></li>
<li>Remove a couple of unnecessary async functions by <a
href="https://github.com/kibertoad"><code>@​kibertoad</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2367">nodejs/undici#2367</a></li>
<li>Update namespace type with Fetch exports by <a
href="https://github.com/Ethan-Arrowood"><code>@​Ethan-Arrowood</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2361">nodejs/undici#2361</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.26.4...v5.26.5">https://github.com/nodejs/undici/compare/v5.26.4...v5.26.5</a></p>
<h2>v5.26.4</h2>
<h2>What's Changed</h2>
<ul>
<li>use esbuild define/hooks by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2342">nodejs/undici#2342</a></li>
<li>fix request's arrayBuffer returning uint8 instead of arraybuffer by
<a href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in
<a
href="https://redirect.github.com/nodejs/undici/pull/2344">nodejs/undici#2344</a></li>
<li>fix: skip readMore call if parser is null or undefined by <a
href="https://github.com/iiAku"><code>@​iiAku</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2346">nodejs/undici#2346</a></li>
<li>test: first attempt for flaky fix by <a
href="https://github.com/metcoder95"><code>@​metcoder95</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2337">nodejs/undici#2337</a></li>
<li>test: only include WebSocket in WPT Report where it's landed by <a
href="https://github.com/panva"><code>@​panva</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2351">nodejs/undici#2351</a></li>
<li>Update DispatchInterceptor.md by <a
href="https://github.com/Uzlopak"><code>@​Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2354">nodejs/undici#2354</a></li>
<li>fix: Avoid error for stream() being aborted by <a
href="https://github.com/BobNobrain"><code>@​BobNobrain</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2355">nodejs/undici#2355</a></li>
<li>fix names with esbuild by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2359">nodejs/undici#2359</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/iiAku"><code>@​iiAku</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2346">nodejs/undici#2346</a></li>
<li><a href="https://github.com/Uzlopak"><code>@​Uzlopak</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2354">nodejs/undici#2354</a></li>
<li><a
href="https://github.com/BobNobrain"><code>@​BobNobrain</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2355">nodejs/undici#2355</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.26.3...v5.26.4">https://github.com/nodejs/undici/compare/v5.26.3...v5.26.4</a></p>
<h2>v5.26.3</h2>
<p>No release notes provided.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/nodejs/undici/commit/41c253d0c23fd1cf63b8033d8ab61c2cf13e8c6e"><code>41c253d</code></a>
5.27.0</li>
<li><a
href="https://github.com/nodejs/undici/commit/6df0fe04f0631203a2433d77895b6e1a1a13727a"><code>6df0fe0</code></a>
fix windows CI (<a
href="https://redirect.github.com/nodejs/undici/issues/2379">#2379</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/3ec35ee23a7f2693bd6f9f707f6a20dc6de7a6b0"><code>3ec35ee</code></a>
skip bundle test on node 16 (<a
href="https://redirect.github.com/nodejs/undici/issues/2377">#2377</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/67e714d0d55848a56616fa98394c207a835447c8"><code>67e714d</code></a>
feat: forward onRequestSent to handler (<a
href="https://redirect.github.com/nodejs/undici/issues/2375">#2375</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/8050ec0224a51d44f776364820e6a16112fb4781"><code>8050ec0</code></a>
Use sets and reusable TextEncoder/TextDecoder instances (<a
href="https://redirect.github.com/nodejs/undici/issues/2368">#2368</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/9197790ae0d015b40b75fd0c5cdb7420704b5272"><code>9197790</code></a>
Bumped v5.26.5</li>
<li><a
href="https://github.com/nodejs/undici/commit/c31bd88979c04e72ff5f2869b71c630720422ab8"><code>c31bd88</code></a>
Update namespace type with Fetch exports (<a
href="https://redirect.github.com/nodejs/undici/issues/2361">#2361</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/24db5d4eaf8b747e7c9bde4faf797943b6f73c8d"><code>24db5d4</code></a>
Remove a couple of unnecessary async functions (<a
href="https://redirect.github.com/nodejs/undici/issues/2367">#2367</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/63afd9b5e28380dc86de29ade69adaad7efcd231"><code>63afd9b</code></a>
Drop race condition in connect-timeout test (<a
href="https://redirect.github.com/nodejs/undici/issues/2360">#2360</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/dea70e27e4d14952eb7b96da021eb44d24d1159e"><code>dea70e2</code></a>
Bumped v5.26.4</li>
<li>Additional commits viewable in <a
href="https://github.com/nodejs/undici/compare/v5.26.2...v5.27.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `yaml` from 2.3.2 to 2.3.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/eemeli/yaml/releases">yaml's
releases</a>.</em></p>
<blockquote>
<h2>v2.3.3</h2>
<ul>
<li>Do not throw error on malformed URI escape in tag (<a
href="https://redirect.github.com/eemeli/yaml/issues/498">#498</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/eemeli/yaml/commit/e8576e852035900844d2cc2d502a2139a1610f48"><code>e8576e8</code></a>
2.3.3</li>
<li><a
href="https://github.com/eemeli/yaml/commit/3fb6c1f6310f728a5670ce5d63f610c65b520db9"><code>3fb6c1f</code></a>
chore: Refresh lockfile</li>
<li><a
href="https://github.com/eemeli/yaml/commit/69d881c96443b6cb9aa8d8f65cf615f4b1015b98"><code>69d881c</code></a>
fix: Do not throw error on malformed URI escape in tag (<a
href="https://redirect.github.com/eemeli/yaml/issues/498">#498</a>)</li>
<li>See full diff in <a
href="https://github.com/eemeli/yaml/compare/v2.3.2...v2.3.3">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
2023-11-01 09:29:43 -07:00
dependabot[bot] 7f24dca8d7 build(deps): bump actions/setup-node from 3 to 4 (#67)
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3
to 4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/setup-node/releases">actions/setup-node's
releases</a>.</em></p>
<blockquote>
<h2>v4.0.0</h2>
<h2>What's Changed</h2>
<p>In scope of this release we changed version of node runtime for
action from node16 to node20 and updated dependencies in <a
href="https://redirect.github.com/actions/setup-node/pull/866">actions/setup-node#866</a></p>
<p>Besides, release contains such changes as:</p>
<ul>
<li>Upgrade actions/checkout to v4 by <a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
<li>Update actions/checkout for documentation and yaml by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/876">actions/setup-node#876</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/gmembre-zenika"><code>@​gmembre-zenika</code></a>
made their first contribution in <a
href="https://redirect.github.com/actions/setup-node/pull/868">actions/setup-node#868</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v4.0.0">https://github.com/actions/setup-node/compare/v3...v4.0.0</a></p>
<h2>v3.8.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Update semver by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/861">actions/setup-node#861</a></li>
<li>Update temp directory creation by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/859">actions/setup-node#859</a></li>
<li>Bump <code>@​babel/traverse</code> from 7.15.4 to 7.23.2 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/870">actions/setup-node#870</a></li>
<li>Add notice about binaries not being updated yet by <a
href="https://github.com/nikolai-laevskii"><code>@​nikolai-laevskii</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/872">actions/setup-node#872</a></li>
<li>Update toolkit cache and core by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
and <a
href="https://github.com/seongwon-privatenote"><code>@​seongwon-privatenote</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/875">actions/setup-node#875</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.2">https://github.com/actions/setup-node/compare/v3...v3.8.2</a></p>
<h2>v3.8.1</h2>
<h2>What's Changed</h2>
<p>In scope of this release, the filter was removed within the
cache-save step by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/831">actions/setup-node#831</a>.
It is filtered and checked in the toolkit/cache library.</p>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/setup-node/compare/v3...v3.8.1">https://github.com/actions/setup-node/compare/v3...v3.8.1</a></p>
<h2>v3.8.0</h2>
<h2>What's Changed</h2>
<h3>Bug fixes:</h3>
<ul>
<li>Add check for existing paths by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/803">actions/setup-node#803</a></li>
<li>Resolve SymbolicLink by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/809">actions/setup-node#809</a></li>
<li>Change passing logic for cache input by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/816">actions/setup-node#816</a></li>
<li>Fix armv7 cache issue by <a
href="https://github.com/louislam"><code>@​louislam</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/794">actions/setup-node#794</a></li>
<li>Update check-dist workflow name by <a
href="https://github.com/sinchang"><code>@​sinchang</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/710">actions/setup-node#710</a></li>
</ul>
<h3>Feature implementations:</h3>
<ul>
<li>feat: handling the case where &quot;node&quot; is used for
tool-versions file. by <a
href="https://github.com/xytis"><code>@​xytis</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/812">actions/setup-node#812</a></li>
</ul>
<h3>Documentation changes:</h3>
<ul>
<li>Refer to semver package name in README.md by <a
href="https://github.com/olleolleolle"><code>@​olleolleolle</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/808">actions/setup-node#808</a></li>
</ul>
<h3>Update dependencies:</h3>
<ul>
<li>Update toolkit cache to fix zstd by <a
href="https://github.com/dmitry-shibanov"><code>@​dmitry-shibanov</code></a>
in <a
href="https://redirect.github.com/actions/setup-node/pull/804">actions/setup-node#804</a></li>
<li>Bump tough-cookie and <code>@​azure/ms-rest-js</code> by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/802">actions/setup-node#802</a></li>
<li>Bump semver from 6.1.2 to 6.3.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/actions/setup-node/pull/807">actions/setup-node#807</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/setup-node/commit/8f152de45cc393bb48ce5d89d36b731f54556e65"><code>8f152de</code></a>
Update actions/checkout for documentation and yaml (<a
href="https://redirect.github.com/actions/setup-node/issues/876">#876</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/23755b521f87533c8ed7f8fb13674f9021579e34"><code>23755b5</code></a>
upgrade actions/checkout to v4 (<a
href="https://redirect.github.com/actions/setup-node/issues/868">#868</a>)</li>
<li><a
href="https://github.com/actions/setup-node/commit/54534a2a9ba7308e8a8995af3104899e6a95b681"><code>54534a2</code></a>
Change node version for action to node20 (<a
href="https://redirect.github.com/actions/setup-node/issues/866">#866</a>)</li>
<li>See full diff in <a
href="https://github.com/actions/setup-node/compare/v3...v4">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions/setup-node&package-manager=github_actions&previous-version=3&new-version=4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 09:24:56 -07:00
Parker Brown d2cdb754af docs(README): create tokens for multiple accounts (#63)
Adds an example workflow to the README that shows how a matrix strategy can be used to create tokens for multiple user or organization accounts. Resolves #45.
2023-10-16 22:43:07 +00:00
dependabot[bot] 3bb715c53d build(deps-dev): bump undici from 5.25.4 to 5.26.2 (#65)
Bumps [undici](https://github.com/nodejs/undici) from 5.25.4 to 5.26.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/nodejs/undici/releases">undici's
releases</a>.</em></p>
<blockquote>
<h2>v5.26.2</h2>
<p>Security Release, CVE-2023-45143.</p>
<h2>v5.26.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Fix publish undici-types once and for all! by <a
href="https://github.com/Ethan-Arrowood"><code>@​Ethan-Arrowood</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2338">nodejs/undici#2338</a></li>
<li>Fix node detection omfg by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2341">nodejs/undici#2341</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.26.0...v5.26.1">https://github.com/nodejs/undici/compare/v5.26.0...v5.26.1</a></p>
<h2>v5.26.0</h2>
<h2>What's Changed</h2>
<ul>
<li>use npm install instead of npm ci by <a
href="https://github.com/Ethan-Arrowood"><code>@​Ethan-Arrowood</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2309">nodejs/undici#2309</a></li>
<li>change default header to <code>node</code> by <a
href="https://github.com/Ethan-Arrowood"><code>@​Ethan-Arrowood</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2310">nodejs/undici#2310</a></li>
<li>chore: change order of the pseudo-headers by <a
href="https://github.com/kyrylodolynskyi"><code>@​kyrylodolynskyi</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2308">nodejs/undici#2308</a></li>
<li>fix: Agent.Options.factory should accept URL object or string as
parameter by <a
href="https://github.com/nicole0707"><code>@​nicole0707</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2295">nodejs/undici#2295</a></li>
<li>build(deps-dev): bump sinon from 15.2.0 to 16.1.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2312">nodejs/undici#2312</a></li>
<li>test: handle npm ignore-scripts settings by <a
href="https://github.com/panva"><code>@​panva</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2313">nodejs/undici#2313</a></li>
<li>feat: respect <code>--max-http-header-size</code> Node.js flag by <a
href="https://github.com/balazsorban44"><code>@​balazsorban44</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2234">nodejs/undici#2234</a></li>
<li>fix(<a
href="https://redirect.github.com/nodejs/undici/issues/2311">#2311</a>):
End stream after body sent by <a
href="https://github.com/metcoder95"><code>@​metcoder95</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2314">nodejs/undici#2314</a></li>
<li>disallow setting host header in fetch by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2322">nodejs/undici#2322</a></li>
<li>[StepSecurity] ci: Harden GitHub Actions by <a
href="https://github.com/step-security-bot"><code>@​step-security-bot</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2325">nodejs/undici#2325</a></li>
<li>fix fetch with coverage enabled by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2330">nodejs/undici#2330</a></li>
<li>Fix stuck when using http2 POST Buffer by <a
href="https://github.com/binsee"><code>@​binsee</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2336">nodejs/undici#2336</a></li>
<li>fix: 🏷️ add allowH2 to BuildOptions by <a
href="https://github.com/binsee"><code>@​binsee</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2334">nodejs/undici#2334</a></li>
<li>fix: 🐛 fix process http2 header by <a
href="https://github.com/binsee"><code>@​binsee</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2332">nodejs/undici#2332</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/kyrylodolynskyi"><code>@​kyrylodolynskyi</code></a>
made their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2308">nodejs/undici#2308</a></li>
<li><a
href="https://github.com/nicole0707"><code>@​nicole0707</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2295">nodejs/undici#2295</a></li>
<li><a
href="https://github.com/balazsorban44"><code>@​balazsorban44</code></a>
made their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2234">nodejs/undici#2234</a></li>
<li><a href="https://github.com/binsee"><code>@​binsee</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2336">nodejs/undici#2336</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.23.4...v5.26.0">https://github.com/nodejs/undici/compare/v5.23.4...v5.26.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/nodejs/undici/commits/v5.26.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=undici&package-manager=npm_and_yarn&previous-version=5.25.4&new-version=5.26.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/actions/create-github-app-token/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-16 10:37:48 -07:00
semantic-release-bot 9d97a4282b build(release): 1.5.0 [skip ci]
# [1.5.0](https://github.com/actions/create-github-app-token/compare/v1.4.0...v1.5.0) (2023-10-06)

### Features

* use dash notation for inputs (deprecates underscore notation) ([#59](https://github.com/actions/create-github-app-token/issues/59)) ([7b1d2ae](https://github.com/actions/create-github-app-token/commit/7b1d2aef87b41884c03f2e69a0a422d5c69c5d72)), closes [#57](https://github.com/actions/create-github-app-token/issues/57) [/github.com/actions/create-github-app-token/issues/57#issuecomment-1751272252](https://github.com//github.com/actions/create-github-app-token/issues/57/issues/issuecomment-1751272252)
2023-10-06 20:42:48 +00:00
Gregor Martynus d21ec768fd ci(release): do not persist credentials when checking out (#62) 2023-10-06 13:42:08 -07:00
Gregor Martynus 998b8757ce ci(release): use local version (#60)
follow up to
https://github.com/actions/create-github-app-token/pull/59#issuecomment-1751353971

---------

Co-authored-by: Parker Brown <17183625+parkerbxyz@users.noreply.github.com>
2023-10-06 13:29:38 -07:00
Parker Brown b94a200224 docs: update skip-token-revoke input name (#61)
This is a quick follow-up to #59. I was mid-review when it merged and
noticed one instance of `skip_token_revoke` in the README that didn't
get changed to `skip-token-revoke`. The PR merged just before I pushed a
commit to fix it.
2023-10-06 13:19:45 -07:00
Clay Miller 7b1d2aef87 feat: use dash notation for inputs (deprecates underscore notation) (#59)
Fixes #57 

This PR implements the 3-step plan proposed by @gr2m in
https://github.com/actions/create-github-app-token/issues/57#issuecomment-1751272252:

> 1. Support both input types
> 2. Log a deprecation warning for the old notation
> 3. Add a test for deprecations

Although this PR supports both input formats simultaneously, I opted
_not_ to document the old format in the updated README. That’s a
decision I’m happy to revisit, if y’all would prefer to have
documentation for both the old and new formats.
2023-10-06 13:10:49 -07:00
Gregor Martynus bdb2377ad0 test: add coverage (#58) 2023-10-06 12:54:48 -07:00
Clay Miller 9b283559f1 test: integration tests for main.js (#56)
Part of https://github.com/actions/create-github-app-token/issues/43

This PR adds tests for
[`main.js`](https://github.com/actions/create-github-app-token/blob/main/lib/main.js),
similar to [the tests that already exist for
`post.js`](https://github.com/actions/create-github-app-token/tree/main/tests).

Specifically, it tests that:
- `main` exits with an error when `GITHUB_REPOSITORY` is missing.
- `main` exits with an error when `GITHUB_REPOSITORY_OWNER` is missing.
- `main` successfully obtains a token when…
- …the `owner` and `repositories` inputs are set (and the latter is a
single repo).
- …the `owner` and `repositories` inputs are set (and the latter is a
list of repos).
- …the `owner` input is set (to an org), but the `repositories` input
isn’t set.
- …the `owner` input is set (to a user), but the `repositories` input
isn’t set.
  - …the `owner` input is not set, but the `repositories` input is set.
  - …neither the `owner` nor `repositories` input is set.

❧

Architecturally, in order to keep individual tests concise, this PR adds
`tests/main.js`, which:
- sets commonly-used inputs, environment variables, and mocks, then
- calls a callback function that can edit the variables and add
additional mocks, then
- runs `main.js` itself.

The `tests/main-token-get-*.test.js` test files run `tests/main.js` with
various scenario-specific callback functions.
2023-10-06 12:39:35 -07:00
semantic-release-bot 8210939678 build(release): 1.4.0 [skip ci]
# [1.4.0](https://github.com/actions/create-github-app-token/compare/v1.3.0...v1.4.0) (2023-10-06)

### Features

* Add a `skip_token_revoke` input for configuring token revocation ([#54](https://github.com/actions/create-github-app-token/issues/54)) ([9ec88c4](https://github.com/actions/create-github-app-token/commit/9ec88c41eef7052418d233d147c59fbdce19c56f)), closes [1#L46-L47](https://github.com/1/issues/L46-L47) [1#L132](https://github.com/1/issues/L132)
2023-10-06 16:11:28 +00:00
Clay Miller 9ec88c41ee feat: Add a skip_token_revoke input for configuring token revocation (#54)
Fixes https://github.com/actions/create-github-app-token/issues/55

Currently, `actions/create-github-app-token` always/unconditionally
revokes the installation access token in a `post` step, at the
completion of the current job. This prevents tokens from being used in
other jobs.

This PR makes this behavior configurable:
- When the `skip-token-revoke` input is not specified (i.e. by default),
the token is revoked in a `post` step (i.e. the current behavior).
- When the `skip-token-revoke` input is set to a truthy value (e.g.
`"true"`[^1]), the token is not revoked in a `post` step.

This PR adds a test for the `skip-token-revoke: "true"` case.

This is configurable in other app token actions, e.g.
[tibdex/github-app-token](https://github.com/tibdex/github-app-token/blob/3eb77c7243b85c65e84acfa93fdbac02fb6bd532/README.md?plain=1#L46-L47)
and
[wow-actions/use-app-token](https://github.com/wow-actions/use-app-token/blob/cd772994fc762f99cf291f308797341327a49b0c/README.md?plain=1#L132).

[^1]: Note that `"false"` is also truthy: `Boolean("false")` is `true`.
If we think that’ll potentially confuse folks, I can require
`skip-token-revoke` to be set explicitly to `"true"`.
2023-10-06 09:10:49 -07:00
semantic-release-bot d400084c45 build(release): 1.3.0 [skip ci]
# [1.3.0](https://github.com/actions/create-github-app-token/compare/v1.2.2...v1.3.0) (2023-10-04)

### Features

* support tokens scoped to multiple repositories within organization ([#46](https://github.com/actions/create-github-app-token/issues/46)) ([20fd863](https://github.com/actions/create-github-app-token/commit/20fd86373fdcbeffde8b73b17ebb3a7a62c6c407))
2023-10-04 05:29:18 +00:00
Tim Reimherr 20fd86373f feat: support tokens scoped to multiple repositories within organization (#46)
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
Co-authored-by: Parker Brown <17183625+parkerbxyz@users.noreply.github.com>
2023-10-03 22:28:48 -07:00
semantic-release-bot 5804f049e1 build(release): 1.2.2 [skip ci]
## [1.2.2](https://github.com/actions/create-github-app-token/compare/v1.2.1...v1.2.2) (2023-10-02)

### Bug Fixes

* **deps:** bump the production-dependencies group with 3 updates ([#51](https://github.com/actions/create-github-app-token/issues/51)) ([6d98b25](https://github.com/actions/create-github-app-token/commit/6d98b259d9c6bef17db279eb4aefbbd031400ba4)), closes [#1511](https://github.com/actions/create-github-app-token/issues/1511) [#535](https://github.com/actions/create-github-app-token/issues/535) [#535](https://github.com/actions/create-github-app-token/issues/535) [#533](https://github.com/actions/create-github-app-token/issues/533) [#531](https://github.com/actions/create-github-app-token/issues/531) [#530](https://github.com/actions/create-github-app-token/issues/530) [#524](https://github.com/actions/create-github-app-token/issues/524) [#637](https://github.com/actions/create-github-app-token/issues/637) [#637](https://github.com/actions/create-github-app-token/issues/637) [#631](https://github.com/actions/create-github-app-token/issues/631) [#626](https://github.com/actions/create-github-app-token/issues/626)
2023-10-02 04:28:50 +00:00
dependabot[bot] 84daa2c0f0 build(deps-dev): bump the development-dependencies group with 2 updates (#52)
Bumps the development-dependencies group with 2 updates:
[esbuild](https://github.com/evanw/esbuild) and
[undici](https://github.com/nodejs/undici).

Updates `esbuild` from 0.19.2 to 0.19.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/releases">esbuild's
releases</a>.</em></p>
<blockquote>
<h2>v0.19.4</h2>
<ul>
<li>
<p>Fix printing of JavaScript decorators in tricky cases (<a
href="https://redirect.github.com/evanw/esbuild/issues/3396">#3396</a>)</p>
<p>This release fixes some bugs where esbuild's pretty-printing of
JavaScript decorators could incorrectly produced code with a syntax
error. The problem happened because esbuild sometimes substitutes
identifiers for other expressions in the pretty-printer itself, but the
decision about whether to wrap the expression or not didn't account for
this. Here are some examples:</p>
<pre lang="js"><code>// Original code
import { constant } from './constants.js'
import { imported } from 'external'
import { undef } from './empty.js'
class Foo {
  @constant()
  @imported()
  @undef()
  foo
}
<p>// Old output (with --bundle --format=cjs --packages=external
--minify-syntax)
var import_external = require(&quot;external&quot;);
var Foo = class {
<a href="https://github.com/123"><code>@​123</code></a>()
@(0, import_external.imported)()
@(void 0)()
foo;
};</p>
<p>// New output (with --bundle --format=cjs --packages=external
--minify-syntax)
var import_external = require(&quot;external&quot;);
var Foo = class {
@(123())
@((0, import_external.imported)())
@((void 0)())
foo;
};
</code></pre></p>
</li>
<li>
<p>Allow pre-release versions to be passed to <code>target</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3388">#3388</a>)</p>
<p>People want to be able to pass version numbers for unreleased
versions of node (which have extra stuff after the version numbers) to
esbuild's <code>target</code> setting and have esbuild do something
reasonable with them. These version strings are of course not present in
esbuild's internal feature compatibility table because an unreleased
version has not been released yet (by definition). With this release,
esbuild will now attempt to accept these version strings passed to
<code>target</code> and do something reasonable with them.</p>
</li>
</ul>
<h2>v0.19.3</h2>
<ul>
<li>
<p>Fix <code>list-style-type</code> with the <code>local-css</code>
loader (<a
href="https://redirect.github.com/evanw/esbuild/issues/3325">#3325</a>)</p>
<p>The <code>local-css</code> loader incorrectly treated all identifiers
provided to <code>list-style-type</code> as a custom local identifier.
That included identifiers such as <code>none</code> which have special
meaning in CSS, and which should not be treated as custom local
identifiers. This release fixes this bug:</p>
<pre lang="css"><code>/* Original code */
ul { list-style-type: none }
<p>/* Old output (with --loader=local-css) */
</code></pre></p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/evanw/esbuild/blob/main/CHANGELOG.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h2>0.19.4</h2>
<ul>
<li>
<p>Fix printing of JavaScript decorators in tricky cases (<a
href="https://redirect.github.com/evanw/esbuild/issues/3396">#3396</a>)</p>
<p>This release fixes some bugs where esbuild's pretty-printing of
JavaScript decorators could incorrectly produced code with a syntax
error. The problem happened because esbuild sometimes substitutes
identifiers for other expressions in the pretty-printer itself, but the
decision about whether to wrap the expression or not didn't account for
this. Here are some examples:</p>
<pre lang="js"><code>// Original code
import { constant } from './constants.js'
import { imported } from 'external'
import { undef } from './empty.js'
class Foo {
  @constant()
  @imported()
  @undef()
  foo
}
<p>// Old output (with --bundle --format=cjs --packages=external
--minify-syntax)
var import_external = require(&quot;external&quot;);
var Foo = class {
<a href="https://github.com/123"><code>@​123</code></a>()
@(0, import_external.imported)()
@(void 0)()
foo;
};</p>
<p>// New output (with --bundle --format=cjs --packages=external
--minify-syntax)
var import_external = require(&quot;external&quot;);
var Foo = class {
@(123())
@((0, import_external.imported)())
@((void 0)())
foo;
};
</code></pre></p>
</li>
<li>
<p>Allow pre-release versions to be passed to <code>target</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3388">#3388</a>)</p>
<p>People want to be able to pass version numbers for unreleased
versions of node (which have extra stuff after the version numbers) to
esbuild's <code>target</code> setting and have esbuild do something
reasonable with them. These version strings are of course not present in
esbuild's internal feature compatibility table because an unreleased
version has not been released yet (by definition). With this release,
esbuild will now attempt to accept these version strings passed to
<code>target</code> and do something reasonable with them.</p>
</li>
</ul>
<h2>0.19.3</h2>
<ul>
<li>
<p>Fix <code>list-style-type</code> with the <code>local-css</code>
loader (<a
href="https://redirect.github.com/evanw/esbuild/issues/3325">#3325</a>)</p>
<p>The <code>local-css</code> loader incorrectly treated all identifiers
provided to <code>list-style-type</code> as a custom local identifier.
That included identifiers such as <code>none</code> which have special
meaning in CSS, and which should not be treated as custom local
identifiers. This release fixes this bug:</p>
<pre lang="css"><code>/* Original code */
ul { list-style-type: none }
</code></pre>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/evanw/esbuild/commit/a75b16ec09e76a050cea8ad43588172dc297784d"><code>a75b16e</code></a>
publish 0.19.4 to npm</li>
<li><a
href="https://github.com/evanw/esbuild/commit/65a4439ff7c469ffc654f497fe3dee6bb1fa2ddb"><code>65a4439</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3396">#3396</a>:
js decorator pretty-printing bugs</li>
<li><a
href="https://github.com/evanw/esbuild/commit/6ad177c55bb5ea6f47cf741487308ee612c75222"><code>6ad177c</code></a>
add some js decorator printing tests</li>
<li><a
href="https://github.com/evanw/esbuild/commit/0e1696fdce7cd97d2d500358b69a4051f1417585"><code>0e1696f</code></a>
ignore <code>TP</code> in data from caniuse-lite</li>
<li><a
href="https://github.com/evanw/esbuild/commit/e7bf735c440c3e7ecc1b59826071ff6891f1691f"><code>e7bf735</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3390">#3390</a>:
allow <code>using</code> disposable functions (<a
href="https://redirect.github.com/evanw/esbuild/issues/3391">#3391</a>)</li>
<li><a
href="https://github.com/evanw/esbuild/commit/24bea0e759553755f73583c4d79c40d8a8bbf975"><code>24bea0e</code></a>
update <code>compat-table</code> (note: regexp unicode 15.1)</li>
<li><a
href="https://github.com/evanw/esbuild/commit/ea9c644db3c95cd264fa12f6d85fd67daabb51eb"><code>ea9c644</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3388">#3388</a>:
do something with pre-release versions</li>
<li><a
href="https://github.com/evanw/esbuild/commit/673ad10ff752486aa90749b63ebeb952c29106a1"><code>673ad10</code></a>
publish 0.19.3 to npm</li>
<li><a
href="https://github.com/evanw/esbuild/commit/6402f110e30d034d19a5f0410d3f5c6fdf86900b"><code>6402f11</code></a>
basic support for parsing import attributes</li>
<li><a
href="https://github.com/evanw/esbuild/commit/7ece5567511b25fa559082a8fd9aef8c23db66a1"><code>7ece556</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3322">#3322</a>:
avoid temporaries before <code>&quot;use strict&quot;</code></li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.19.2...v0.19.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `undici` from 5.23.0 to 5.25.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/nodejs/undici/releases">undici's
releases</a>.</em></p>
<blockquote>
<h2>v5.25.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Add Khaf to releasers by <a
href="https://github.com/mcollina"><code>@​mcollina</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2276">nodejs/undici#2276</a></li>
<li>fix: fix request with readable mode is object by <a
href="https://github.com/killagu"><code>@​killagu</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2279">nodejs/undici#2279</a></li>
<li>fix loading websockets when node is built w/ --without-ssl by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2282">nodejs/undici#2282</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/killagu"><code>@​killagu</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2279">nodejs/undici#2279</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.25.1...v5.25.2">https://github.com/nodejs/undici/compare/v5.25.1...v5.25.2</a></p>
<h2>v5.25.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Add publish types script by <a
href="https://github.com/Ethan-Arrowood"><code>@​Ethan-Arrowood</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2273">nodejs/undici#2273</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.25.0...v5.25.1">https://github.com/nodejs/undici/compare/v5.25.0...v5.25.1</a></p>
<h2>v5.25.0</h2>
<h2>What's Changed</h2>
<ul>
<li>fix: h2 without body by <a
href="https://github.com/metcoder95"><code>@​metcoder95</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2258">nodejs/undici#2258</a></li>
<li>ci: remove duplicated runs by <a
href="https://github.com/metcoder95"><code>@​metcoder95</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2265">nodejs/undici#2265</a></li>
<li>improve documentation of timeouts by making the units clear in all
places by <a href="https://github.com/mcfedr"><code>@​mcfedr</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2266">nodejs/undici#2266</a></li>
<li>expose websocket in node bundle by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2217">nodejs/undici#2217</a></li>
<li>test: fix Fetch/HTTP2 tests by <a
href="https://github.com/metcoder95"><code>@​metcoder95</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2263">nodejs/undici#2263</a></li>
<li>fix undici when node is built with --without-ssl by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2272">nodejs/undici#2272</a></li>
<li>fix: Fix type definition for Client Interceptors by <a
href="https://github.com/ComradeCow"><code>@​ComradeCow</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2269">nodejs/undici#2269</a></li>
<li>Fix http2 agent by <a
href="https://github.com/mcollina"><code>@​mcollina</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2275">nodejs/undici#2275</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a
href="https://github.com/ComradeCow"><code>@​ComradeCow</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2269">nodejs/undici#2269</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v5.24.0...v5.25.0">https://github.com/nodejs/undici/compare/v5.24.0...v5.25.0</a></p>
<h2>v5.24.0</h2>
<h2>Notable Changes</h2>
<ul>
<li>feat: Add H2 support by <a
href="https://github.com/metcoder95"><code>@​metcoder95</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2061">nodejs/undici#2061</a></li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>build(deps): bump step-security/harden-runner from 2.4.1 to 2.5.0 by
<a href="https://github.com/dependabot"><code>@​dependabot</code></a> in
<a
href="https://redirect.github.com/nodejs/undici/pull/2203">nodejs/undici#2203</a></li>
<li>better stack trace for body.json by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2215">nodejs/undici#2215</a></li>
<li>allow http &amp; https websocket urls by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2218">nodejs/undici#2218</a></li>
<li>build(deps-dev): bump <code>@​sinonjs/fake-timers</code> from 10.3.0
to 11.1.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2221">nodejs/undici#2221</a></li>
<li>fix: pass ProxyAgent proxy status code error by <a
href="https://github.com/NBNGaming"><code>@​NBNGaming</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2162">nodejs/undici#2162</a></li>
<li>fix failing test by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2223">nodejs/undici#2223</a></li>
<li>docs: update MockPool.md intercept method description by <a
href="https://github.com/capaj"><code>@​capaj</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2220">nodejs/undici#2220</a></li>
<li>Update wpts by <a
href="https://github.com/KhafraDev"><code>@​KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2226">nodejs/undici#2226</a></li>
<li>build(deps): bump github/codeql-action from 2.21.2 to 2.21.5 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2240">nodejs/undici#2240</a></li>
<li>build(deps): bump actions/setup-node from 3.6.0 to 3.8.1 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2237">nodejs/undici#2237</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/nodejs/undici/commit/4013c4b8932e73728809e4106d5c9d9d40648031"><code>4013c4b</code></a>
Bumped v5.25.2</li>
<li><a
href="https://github.com/nodejs/undici/commit/b85ac789de76d95de6db7d442b31feed46c671ca"><code>b85ac78</code></a>
fix loading websockets when node is built w/ --without-ssl (<a
href="https://redirect.github.com/nodejs/undici/issues/2282">#2282</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/ba95ff6cf622a4ce8d6d9d42da22ebf9f15685a0"><code>ba95ff6</code></a>
fix: fix request with readable mode is object (<a
href="https://redirect.github.com/nodejs/undici/issues/2279">#2279</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/a73260339fec7852b1c9a067b342bad0b87b20ee"><code>a732603</code></a>
Add Khaf to releasers (<a
href="https://redirect.github.com/nodejs/undici/issues/2276">#2276</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/c86279c9bcf62fe28d124b124b91eb364d478a25"><code>c86279c</code></a>
undici-types@5.25.1</li>
<li><a
href="https://github.com/nodejs/undici/commit/e8a667452cb00bf46a3bb62ee0d5af61723fb62a"><code>e8a6674</code></a>
5.25.1</li>
<li><a
href="https://github.com/nodejs/undici/commit/5c2e597bd938ce99a0246f9dfbfac6d3f3a31be9"><code>5c2e597</code></a>
Add publish types script (<a
href="https://redirect.github.com/nodejs/undici/issues/2273">#2273</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/985b3816708512bafefa1544def183cc6d1536be"><code>985b381</code></a>
Bumped v5.25.0</li>
<li><a
href="https://github.com/nodejs/undici/commit/d1e867e1cddbfed6ee405c8d8872ed4f0c964689"><code>d1e867e</code></a>
Fix http2 agent (<a
href="https://redirect.github.com/nodejs/undici/issues/2275">#2275</a>)</li>
<li><a
href="https://github.com/nodejs/undici/commit/4d7c319d67a73f7284216ac38e81be4f94f70cde"><code>4d7c319</code></a>
Fix type definition for Client Interceptors (<a
href="https://redirect.github.com/nodejs/undici/issues/2269">#2269</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/nodejs/undici/compare/v5.23.0...v5.25.2">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-01 21:28:18 -07:00
dependabot[bot] 6d98b259d9 fix(deps): bump the production-dependencies group with 3 updates (#51)
Bumps the production-dependencies group with 3 updates:
[@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core),
[@octokit/auth-app](https://github.com/octokit/auth-app.js) and
[@octokit/request](https://github.com/octokit/request.js).

Updates `@actions/core` from 1.10.0 to 1.10.1
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md"><code>@​actions/core</code>'s
changelog</a>.</em></p>
<blockquote>
<h3>1.10.1</h3>
<ul>
<li>Fix error message reference in oidc utils <a
href="https://redirect.github.com/actions/toolkit/pull/1511">#1511</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/actions/toolkit/commits/HEAD/packages/core">compare
view</a></li>
</ul>
</details>
<br />

Updates `@octokit/auth-app` from 6.0.0 to 6.0.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/octokit/auth-app.js/releases"><code>@​octokit/auth-app</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v6.0.1</h2>
<h2><a
href="https://github.com/octokit/auth-app.js/compare/v6.0.0...v6.0.1">6.0.1</a>
(2023-09-23)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> update dependency
<code>@​octokit/types</code> to v12 (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/535">#535</a>)
(<a
href="https://github.com/octokit/auth-app.js/commit/d7157719c2d28f9ffdfada61139b0d4984723a65">d715771</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/octokit/auth-app.js/commit/d7157719c2d28f9ffdfada61139b0d4984723a65"><code>d715771</code></a>
fix(deps): update dependency <code>@​octokit/types</code> to v12 (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/535">#535</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/62cfc5bbce931e056852e91bdc3d479e3e399881"><code>62cfc5b</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
46da6c0</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/b1c796928a8d59af23749d06e1f75e5d047b28f8"><code>b1c7969</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/533">#533</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/f584646566c0de02e85cecf40015a44f15b22028"><code>f584646</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
1f6c514</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/414bea3cc3bab71bc0148747678bddb0a4c6b9f9"><code>414bea3</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/531">#531</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/47e4bd1660c3faed2690ade1086ef96657e0b88a"><code>47e4bd1</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/530">#530</a>)</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/5d3973e9355ba5fb8c1c65f5710722a58d75dfbc"><code>5d3973e</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
223779b</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/192bd894e4e2a71faf2e5996eb7287deb1ad7fdc"><code>192bd89</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
46846e5</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/77cb45b6542ca1dd5d0086864e28fea0ddbe9297"><code>77cb45b</code></a>
ci(action): update actions/checkout action to v4</li>
<li><a
href="https://github.com/octokit/auth-app.js/commit/1c0d530c6b85890853b860b16f0c11e106bb676f"><code>1c0d530</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/auth-app.js/issues/524">#524</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/octokit/auth-app.js/compare/v6.0.0...v6.0.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `@octokit/request` from 8.1.1 to 8.1.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/octokit/request.js/releases"><code>@​octokit/request</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v8.1.2</h2>
<h2><a
href="https://github.com/octokit/request.js/compare/v8.1.1...v8.1.2">8.1.2</a>
(2023-09-23)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> update dependency
<code>@​octokit/types</code> to v12 (<a
href="https://redirect.github.com/octokit/request.js/issues/637">#637</a>)
(<a
href="https://github.com/octokit/request.js/commit/8fa4d612ad80bdf4c4c7da0efd0d6ad47bb6978b">8fa4d61</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/octokit/request.js/commit/8fa4d612ad80bdf4c4c7da0efd0d6ad47bb6978b"><code>8fa4d61</code></a>
fix(deps): update dependency <code>@​octokit/types</code> to v12 (<a
href="https://redirect.github.com/octokit/request.js/issues/637">#637</a>)</li>
<li><a
href="https://github.com/octokit/request.js/commit/b4b18153458cdbeae099dcc072cac88d8e2a81c5"><code>b4b1815</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
46da6c0</li>
<li><a
href="https://github.com/octokit/request.js/commit/77683b9dd783675622720e44d6e281d95eb86ab3"><code>77683b9</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
1f6c514</li>
<li><a
href="https://github.com/octokit/request.js/commit/45f319bac6c1281e42e989f4b97cf45cf8e4cd40"><code>45f319b</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
223779b</li>
<li><a
href="https://github.com/octokit/request.js/commit/d0a545f389d55a6677bd2ad4084fca7958ba9ade"><code>d0a545f</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
46846e5 (<a
href="https://redirect.github.com/octokit/request.js/issues/631">#631</a>)</li>
<li><a
href="https://github.com/octokit/request.js/commit/1ba853ad70ba0c8e856f89628aa1df0e26aadc75"><code>1ba853a</code></a>
ci(action): update actions/checkout action to v4</li>
<li><a
href="https://github.com/octokit/request.js/commit/5f5c4bf1d7acb9670c5347051afb62f9453e7121"><code>5f5c4bf</code></a>
chore(deps): update dependency prettier to v3.0.3</li>
<li><a
href="https://github.com/octokit/request.js/commit/f964d3d249698d6fd656dd978876c8d84e20c09c"><code>f964d3d</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
94ff342</li>
<li><a
href="https://github.com/octokit/request.js/commit/29edb28325de3a60442e15c7d45f20be9c4d350d"><code>29edb28</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
8c21c80</li>
<li><a
href="https://github.com/octokit/request.js/commit/05eb0a9ab60922ea7b283082afb89798c4eb6108"><code>05eb0a9</code></a>
ci(action): update peter-evans/create-or-update-comment digest to
bb291f6 (<a
href="https://redirect.github.com/octokit/request.js/issues/626">#626</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/octokit/request.js/compare/v8.1.1...v8.1.2">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-01 21:28:07 -07:00
dependabot[bot] 3629f23f43 build(deps): bump actions/checkout from 3 to 4 (#53) 2023-10-01 21:27:42 -07:00
Gregor Martynus 4bb2d37925 ci(test): do not run end-to-end tests in PRs from forks (#48) 2023-09-21 16:34:10 -07:00
Gregor Martynus 9f83520638 ci(test): actually run integrration tests (#47) 2023-09-21 13:53:30 -07:00
Parker Brown 10f155294b test: integration tests (#40)
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
2023-09-05 08:32:55 -07:00
semantic-release-bot 49ce228ea7 build(release): 1.2.1 [skip ci]
## [1.2.1](https://github.com/actions/create-github-app-token/compare/v1.2.0...v1.2.1) (2023-08-30)

### Bug Fixes

* **GHES:** respect `GITHUB_API_URL` when creating installation access token ([#38](https://github.com/actions/create-github-app-token/issues/38)) ([c08c5ac](https://github.com/actions/create-github-app-token/commit/c08c5ace340664df431bf7f11d51b61d92358c2b)), closes [#36](https://github.com/actions/create-github-app-token/issues/36)
2023-08-30 05:30:14 +00:00
Gregor Martynus c08c5ace34 fix(GHES): respect GITHUB_API_URL when creating installation access token (#38)
Follow up to #36. I just wanted to do some refactoring but turns out I
missed to pass the custom `request` instance to `createAppAuth`. It will
fallback to the default `request` which does not respect
`GITHUB_API_URL`
2023-08-29 22:29:41 -07:00
38 changed files with 5887 additions and 6277 deletions
+18 -8
View File
@@ -1,5 +1,6 @@
name: release
"on":
on:
push:
branches:
- main
@@ -14,16 +15,25 @@ jobs:
name: release
runs-on: ubuntu-latest
steps:
- uses: actions/create-github-app-token@v1
# build local version to create token
- uses: actions/checkout@v4
with:
persist-credentials: false
- uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: 'npm'
- run: npm ci
- run: npm run build
- uses: ./
id: app-token
with:
app_id: ${{ vars.RELEASER_APP_ID }}
private_key: ${{ secrets.RELEASER_APP_PRIVATE_KEY }}
- uses: actions/checkout@v3
with:
token: ${{ steps.app-token.outputs.token }}
app-id: ${{ vars.RELEASER_APP_ID }}
private-key: ${{ secrets.RELEASER_APP_PRIVATE_KEY }}
# install release dependencies and release
- run: npm install --no-save @semantic-release/git semantic-release-plugin-github-breaking-version-tag
- run: npm run build
- run: npx semantic-release --debug
env:
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
+27 -6
View File
@@ -1,5 +1,9 @@
name: test
on:
push:
branches:
- main
pull_request:
concurrency:
@@ -7,21 +11,38 @@ concurrency:
cancel-in-progress: true
jobs:
test:
integration:
name: Integration
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: "16.16"
node-version-file: .node-version
cache: 'npm'
- run: npm ci
- run: npm test
end-to-end:
name: End-to-End
runs-on: ubuntu-latest
# do not run from forks, as forks dont have access to repository secrets
if: github.event.pull_request.head.repo.owner.login == github.event.pull_request.base.repo.owner.login
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- run: npm ci
- run: npm run build
- uses: ./ # Uses the action in the root directory
id: test
with:
app_id: ${{ vars.TEST_APP_ID }}
private_key: ${{ secrets.TEST_APP_PRIVATE_KEY }}
app-id: ${{ vars.TEST_APP_ID }}
private-key: ${{ secrets.TEST_APP_PRIVATE_KEY }}
- uses: octokit/request-action@v2.x
id: get-repository
env:
+2 -1
View File
@@ -1,2 +1,3 @@
node_modules/
.env
coverage
node_modules/
+1
View File
@@ -0,0 +1 @@
20.9.0
+140 -10
View File
@@ -1,5 +1,7 @@
# Create GitHub App Token
[![test](https://github.com/actions/create-github-app-token/actions/workflows/test.yml/badge.svg)](https://github.com/actions/create-github-app-token/actions/workflows/test.yml)
GitHub Action for creating a GitHub App installation access token.
## Usage
@@ -10,7 +12,7 @@ In order to use this action, you need to:
2. [Store the App's ID in your repository environment variables](https://docs.github.com/actions/learn-github-actions/variables#defining-configuration-variables-for-multiple-workflows) (example: `APP_ID`)
3. [Store the App's private key in your repository secrets](https://docs.github.com/actions/security-guides/encrypted-secrets?tool=webui#creating-encrypted-secrets-for-a-repository) (example: `PRIVATE_KEY`)
### Minimal usage
### Create a token for the current repository
```yaml
on: [issues]
@@ -22,8 +24,8 @@ jobs:
- uses: actions/create-github-app-token@v1
id: app-token
with:
app_id: ${{ vars.APP_ID }}
private_key: ${{ secrets.PRIVATE_KEY }}
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.PRIVATE_KEY }}
- uses: peter-evans/create-or-update-comment@v3
with:
token: ${{ steps.app-token.outputs.token }}
@@ -44,9 +46,9 @@ jobs:
id: app-token
with:
# required
app_id: ${{ vars.APP_ID }}
private_key: ${{ secrets.PRIVATE_KEY }}
- uses: actions/checkout@v3
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.PRIVATE_KEY }}
- uses: actions/checkout@v4
with:
token: ${{ steps.app-token.outputs.token }}
ref: ${{ github.head_ref }}
@@ -57,16 +59,144 @@ jobs:
github_token: ${{ steps.app-token.outputs.token }}
```
### Create a token for all repositories in the current owner's installation
```yaml
on: [workflow_dispatch]
jobs:
hello-world:
runs-on: ubuntu-latest
steps:
- uses: actions/create-github-app-token@v1
id: app-token
with:
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.PRIVATE_KEY }}
owner: ${{ github.repository_owner }}
- uses: peter-evans/create-or-update-comment@v3
with:
token: ${{ steps.app-token.outputs.token }}
issue-number: ${{ github.event.issue.number }}
body: "Hello, World!"
```
### Create a token for multiple repositories in the current owner's installation
```yaml
on: [issues]
jobs:
hello-world:
runs-on: ubuntu-latest
steps:
- uses: actions/create-github-app-token@v1
id: app-token
with:
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.PRIVATE_KEY }}
owner: ${{ github.repository_owner }}
repositories: "repo1,repo2"
- uses: peter-evans/create-or-update-comment@v3
with:
token: ${{ steps.app-token.outputs.token }}
issue-number: ${{ github.event.issue.number }}
body: "Hello, World!"
```
### Create a token for all repositories in another owner's installation
```yaml
on: [issues]
jobs:
hello-world:
runs-on: ubuntu-latest
steps:
- uses: actions/create-github-app-token@v1
id: app-token
with:
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.PRIVATE_KEY }}
owner: another-owner
- uses: peter-evans/create-or-update-comment@v3
with:
token: ${{ steps.app-token.outputs.token }}
issue-number: ${{ github.event.issue.number }}
body: "Hello, World!"
```
### Create tokens for multiple user or organization accounts
You can use a matrix strategy to create tokens for multiple user or organization accounts.
> [!NOTE]
> See [this documentation](https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#multiline-strings) for information on using multiline strings in workflows.
```yaml
on: [workflow_dispatch]
jobs:
set-matrix:
runs-on: ubuntu-latest
outputs:
matrix: ${{steps.set.outputs.matrix }}
steps:
- id: set
run: echo 'matrix=[{"owner":"owner1"},{"owner":"owner2","repos":["repo1"]}]' >>"$GITHUB_OUTPUT"
use-matrix:
name: '@${{ matrix.owners-and-repos.owner }} installation'
needs: [set-matrix]
runs-on: ubuntu-latest
strategy:
matrix:
owners-and-repos: ${{ fromJson(needs.set-matrix.outputs.matrix) }}
steps:
- uses: actions/create-github-app-token@v1
id: app-token
with:
app-id: ${{ vars.APP_ID }}
private-key: ${{ secrets.PRIVATE_KEY }}
owner: ${{ matrix.owners-and-repos.owner }}
repositories: ${{ join(matrix.owners-and-repos.repos) }}
- uses: octokit/request-action@v2.x
id: get-installation-repositories
with:
route: GET /installation/repositories
env:
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
- run: echo "$MULTILINE_JSON_STRING"
env:
MULTILINE_JSON_STRING: ${{ steps.get-installation-repositories.outputs.data }}
```
## Inputs
### `app_id`
### `app-id`
**Required:** GitHub App ID.
### `private_key`
### `private-key`
**Required:** GitHub App private key.
### `owner`
**Optional:** GitHub App installation owner. If empty, defaults to the current repository owner.
### `repositories`
**Optional:** Comma-separated list of repositories to grant access to.
> [!NOTE]
> If `owner` is set and `repositories` is empty, access will be scoped to all repositories in the provided repository owner's installation. If `owner` and `repositories` are empty, access will be scoped to only the current repository.
### `skip-token-revoke`
**Optional:** If truthy, the token will not be revoked when the current job is complete.
## Outputs
### `token`
@@ -77,10 +207,10 @@ GitHub App installation access token.
The action creates an installation access token using [the `POST /app/installations/{installation_id}/access_tokens` endpoint](https://docs.github.com/rest/apps/apps?apiVersion=2022-11-28#create-an-installation-access-token-for-an-app). By default,
1. The token is scoped to the current repository.
1. The token is scoped to the current repository or `repositories` if set.
2. The token inherits all the installation's permissions.
3. The token is set as output `token` which can be used in subsequent steps.
4. The token is revoked in the `post` step of the action, which means it cannot be passed to another job.
4. Unless the `skip-token-revoke` input is set to a truthy value, the token is revoked in the `post` step of the action, which means it cannot be passed to another job.
5. The token is masked, it cannot be logged accidentally.
> [!NOTE]
+23 -2
View File
@@ -5,12 +5,33 @@ branding:
icon: "lock"
color: "gray-dark"
inputs:
app-id:
description: "GitHub App ID"
required: false # TODO: When 'app_id' is removed, make 'app-id' required
app_id:
description: "GitHub App ID"
required: true
required: false
deprecationMessage: "'app_id' is deprecated and will be removed in a future version. Use 'app-id' instead."
private-key:
description: "GitHub App private key"
required: false # TODO: When 'private_key' is removed, make 'private-key' required
private_key:
description: "GitHub App private key"
required: true
required: false
deprecationMessage: "'private_key' is deprecated and will be removed in a future version. Use 'private-key' instead."
owner:
description: "GitHub App owner (defaults to current repository owner)"
required: false
repositories:
description: "Repositories to install the GitHub App on (defaults to current repository if owner is unset)"
required: false
skip-token-revoke:
description: "If truthy, the token will not be revoked when the current job is complete"
required: false
skip_token_revoke:
description: "If truthy, the token will not be revoked when the current job is complete"
required: false
deprecationMessage: "'skip_token_revoke' is deprecated and will be removed in a future version. Use 'skip-token-revoke' instead."
outputs:
token:
description: "GitHub installation access token"
+25
View File
@@ -0,0 +1,25 @@
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="106"
height="20" role="img" aria-label="Coverage: 100%">
<title>Coverage: 100%</title>
<linearGradient id="s" x2="0" y2="100%">
<stop offset="0" stop-color="#bbb" stop-opacity=".1" />
<stop offset="1" stop-opacity=".1" />
</linearGradient>
<clipPath id="r">
<rect width="106" height="20" rx="3" fill="#fff" />
</clipPath>
<g clip-path="url(#r)">
<rect width="63" height="20" fill="#555" />
<rect x="63" width="43" height="20" fill="#4c1" />
<rect width="106" height="20" fill="url(#s)" />
</g>
<g fill="#fff" text-anchor="middle" font-family="Verdana,Geneva,DejaVu Sans,sans-serif"
text-rendering="geometricPrecision" font-size="110">
<text aria-hidden="true" x="325" y="150" fill="#010101" fill-opacity=".3"
transform="scale(.1)" textLength="530">Coverage</text>
<text x="325" y="140" transform="scale(.1)" fill="#fff" textLength="530">Coverage</text>
<text aria-hidden="true" x="835" y="150" fill="#010101" fill-opacity=".3"
transform="scale(.1)" textLength="330">100%</text>
<text x="835" y="140" transform="scale(.1)" fill="#fff" textLength="330">100%</text>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

+1296 -5896
View File
File diff suppressed because it is too large Load Diff
+197 -145
View File
@@ -34,10 +34,10 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
// node_modules/@actions/core/lib/utils.js
var require_utils = __commonJS({
"node_modules/@actions/core/lib/utils.js"(exports) {
"node_modules/@actions/core/lib/utils.js"(exports2) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.toCommandProperties = exports.toCommandValue = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.toCommandProperties = exports2.toCommandValue = void 0;
function toCommandValue(input) {
if (input === null || input === void 0) {
return "";
@@ -46,7 +46,7 @@ var require_utils = __commonJS({
}
return JSON.stringify(input);
}
exports.toCommandValue = toCommandValue;
exports2.toCommandValue = toCommandValue;
function toCommandProperties(annotationProperties) {
if (!Object.keys(annotationProperties).length) {
return {};
@@ -60,15 +60,15 @@ var require_utils = __commonJS({
endColumn: annotationProperties.endColumn
};
}
exports.toCommandProperties = toCommandProperties;
exports2.toCommandProperties = toCommandProperties;
}
});
// node_modules/@actions/core/lib/command.js
var require_command = __commonJS({
"node_modules/@actions/core/lib/command.js"(exports) {
"node_modules/@actions/core/lib/command.js"(exports2) {
"use strict";
var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) {
var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) {
if (k2 === void 0)
k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() {
@@ -79,12 +79,12 @@ var require_command = __commonJS({
k2 = k;
o[k2] = m[k];
});
var __setModuleDefault = exports && exports.__setModuleDefault || (Object.create ? function(o, v) {
var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
} : function(o, v) {
o["default"] = v;
});
var __importStar = exports && exports.__importStar || function(mod) {
var __importStar = exports2 && exports2.__importStar || function(mod) {
if (mod && mod.__esModule)
return mod;
var result = {};
@@ -96,19 +96,19 @@ var require_command = __commonJS({
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.issue = exports.issueCommand = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.issue = exports2.issueCommand = void 0;
var os = __importStar(require("os"));
var utils_1 = require_utils();
function issueCommand(command, properties, message) {
const cmd = new Command(command, properties, message);
process.stdout.write(cmd.toString() + os.EOL);
}
exports.issueCommand = issueCommand;
exports2.issueCommand = issueCommand;
function issue(name, message = "") {
issueCommand(name, {}, message);
}
exports.issue = issue;
exports2.issue = issue;
var CMD_STRING = "::";
var Command = class {
constructor(command, properties, message) {
@@ -486,9 +486,9 @@ var init_esm_node = __esm({
// node_modules/@actions/core/lib/file-command.js
var require_file_command = __commonJS({
"node_modules/@actions/core/lib/file-command.js"(exports) {
"node_modules/@actions/core/lib/file-command.js"(exports2) {
"use strict";
var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) {
var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) {
if (k2 === void 0)
k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() {
@@ -499,12 +499,12 @@ var require_file_command = __commonJS({
k2 = k;
o[k2] = m[k];
});
var __setModuleDefault = exports && exports.__setModuleDefault || (Object.create ? function(o, v) {
var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
} : function(o, v) {
o["default"] = v;
});
var __importStar = exports && exports.__importStar || function(mod) {
var __importStar = exports2 && exports2.__importStar || function(mod) {
if (mod && mod.__esModule)
return mod;
var result = {};
@@ -516,8 +516,8 @@ var require_file_command = __commonJS({
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.prepareKeyValueMessage = exports.issueFileCommand = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.prepareKeyValueMessage = exports2.issueFileCommand = void 0;
var fs = __importStar(require("fs"));
var os = __importStar(require("os"));
var uuid_1 = (init_esm_node(), __toCommonJS(esm_node_exports));
@@ -534,7 +534,7 @@ var require_file_command = __commonJS({
encoding: "utf8"
});
}
exports.issueFileCommand = issueFileCommand;
exports2.issueFileCommand = issueFileCommand;
function prepareKeyValueMessage(key, value) {
const delimiter = `ghadelimiter_${uuid_1.v4()}`;
const convertedValue = utils_1.toCommandValue(value);
@@ -546,16 +546,16 @@ var require_file_command = __commonJS({
}
return `${key}<<${delimiter}${os.EOL}${convertedValue}${os.EOL}${delimiter}`;
}
exports.prepareKeyValueMessage = prepareKeyValueMessage;
exports2.prepareKeyValueMessage = prepareKeyValueMessage;
}
});
// node_modules/@actions/http-client/lib/proxy.js
var require_proxy = __commonJS({
"node_modules/@actions/http-client/lib/proxy.js"(exports) {
"node_modules/@actions/http-client/lib/proxy.js"(exports2) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.checkBypass = exports.getProxyUrl = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.checkBypass = exports2.getProxyUrl = void 0;
function getProxyUrl(reqUrl) {
const usingSsl = reqUrl.protocol === "https:";
if (checkBypass(reqUrl)) {
@@ -569,12 +569,17 @@ var require_proxy = __commonJS({
}
})();
if (proxyVar) {
return new URL(proxyVar);
try {
return new URL(proxyVar);
} catch (_a) {
if (!proxyVar.startsWith("http://") && !proxyVar.startsWith("https://"))
return new URL(`http://${proxyVar}`);
}
} else {
return void 0;
}
}
exports.getProxyUrl = getProxyUrl;
exports2.getProxyUrl = getProxyUrl;
function checkBypass(reqUrl) {
if (!reqUrl.hostname) {
return false;
@@ -606,7 +611,7 @@ var require_proxy = __commonJS({
}
return false;
}
exports.checkBypass = checkBypass;
exports2.checkBypass = checkBypass;
function isLoopbackAddress(host) {
const hostLower = host.toLowerCase();
return hostLower === "localhost" || hostLower.startsWith("127.") || hostLower.startsWith("[::1]") || hostLower.startsWith("[0:0:0:0:0:0:0:1]");
@@ -616,7 +621,7 @@ var require_proxy = __commonJS({
// node_modules/tunnel/lib/tunnel.js
var require_tunnel = __commonJS({
"node_modules/tunnel/lib/tunnel.js"(exports) {
"node_modules/tunnel/lib/tunnel.js"(exports2) {
"use strict";
var net = require("net");
var tls = require("tls");
@@ -625,10 +630,10 @@ var require_tunnel = __commonJS({
var events = require("events");
var assert = require("assert");
var util = require("util");
exports.httpOverHttp = httpOverHttp;
exports.httpsOverHttp = httpsOverHttp;
exports.httpOverHttps = httpOverHttps;
exports.httpsOverHttps = httpsOverHttps;
exports2.httpOverHttp = httpOverHttp;
exports2.httpsOverHttp = httpsOverHttp;
exports2.httpOverHttps = httpOverHttps;
exports2.httpsOverHttps = httpsOverHttps;
function httpOverHttp(options) {
var agent = new TunnelingAgent(options);
agent.request = http.request;
@@ -840,22 +845,22 @@ var require_tunnel = __commonJS({
debug = function() {
};
}
exports.debug = debug;
exports2.debug = debug;
}
});
// node_modules/tunnel/index.js
var require_tunnel2 = __commonJS({
"node_modules/tunnel/index.js"(exports, module2) {
"node_modules/tunnel/index.js"(exports2, module2) {
module2.exports = require_tunnel();
}
});
// node_modules/@actions/http-client/lib/index.js
var require_lib = __commonJS({
"node_modules/@actions/http-client/lib/index.js"(exports) {
"node_modules/@actions/http-client/lib/index.js"(exports2) {
"use strict";
var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) {
var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) {
if (k2 === void 0)
k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() {
@@ -866,12 +871,12 @@ var require_lib = __commonJS({
k2 = k;
o[k2] = m[k];
});
var __setModuleDefault = exports && exports.__setModuleDefault || (Object.create ? function(o, v) {
var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
} : function(o, v) {
o["default"] = v;
});
var __importStar = exports && exports.__importStar || function(mod) {
var __importStar = exports2 && exports2.__importStar || function(mod) {
if (mod && mod.__esModule)
return mod;
var result = {};
@@ -883,7 +888,7 @@ var require_lib = __commonJS({
__setModuleDefault(result, mod);
return result;
};
var __awaiter = exports && exports.__awaiter || function(thisArg, _arguments, P, generator) {
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) {
function adopt(value) {
return value instanceof P ? value : new P(function(resolve) {
resolve(value);
@@ -910,8 +915,8 @@ var require_lib = __commonJS({
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.HttpClient = exports.isHttps = exports.HttpClientResponse = exports.HttpClientError = exports.getProxyUrl = exports.MediaTypes = exports.Headers = exports.HttpCodes = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.HttpClient = exports2.isHttps = exports2.HttpClientResponse = exports2.HttpClientError = exports2.getProxyUrl = exports2.MediaTypes = exports2.Headers = exports2.HttpCodes = void 0;
var http = __importStar(require("http"));
var https = __importStar(require("https"));
var pm = __importStar(require_proxy());
@@ -945,21 +950,21 @@ var require_lib = __commonJS({
HttpCodes2[HttpCodes2["BadGateway"] = 502] = "BadGateway";
HttpCodes2[HttpCodes2["ServiceUnavailable"] = 503] = "ServiceUnavailable";
HttpCodes2[HttpCodes2["GatewayTimeout"] = 504] = "GatewayTimeout";
})(HttpCodes = exports.HttpCodes || (exports.HttpCodes = {}));
})(HttpCodes = exports2.HttpCodes || (exports2.HttpCodes = {}));
var Headers;
(function(Headers2) {
Headers2["Accept"] = "accept";
Headers2["ContentType"] = "content-type";
})(Headers = exports.Headers || (exports.Headers = {}));
})(Headers = exports2.Headers || (exports2.Headers = {}));
var MediaTypes;
(function(MediaTypes2) {
MediaTypes2["ApplicationJson"] = "application/json";
})(MediaTypes = exports.MediaTypes || (exports.MediaTypes = {}));
})(MediaTypes = exports2.MediaTypes || (exports2.MediaTypes = {}));
function getProxyUrl(serverUrl) {
const proxyUrl = pm.getProxyUrl(new URL(serverUrl));
return proxyUrl ? proxyUrl.href : "";
}
exports.getProxyUrl = getProxyUrl;
exports2.getProxyUrl = getProxyUrl;
var HttpRedirectCodes = [
HttpCodes.MovedPermanently,
HttpCodes.ResourceMoved,
@@ -983,7 +988,7 @@ var require_lib = __commonJS({
Object.setPrototypeOf(this, _HttpClientError.prototype);
}
};
exports.HttpClientError = HttpClientError;
exports2.HttpClientError = HttpClientError;
var HttpClientResponse = class {
constructor(message) {
this.message = message;
@@ -1001,13 +1006,26 @@ var require_lib = __commonJS({
}));
});
}
readBodyBuffer() {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
const chunks = [];
this.message.on("data", (chunk) => {
chunks.push(chunk);
});
this.message.on("end", () => {
resolve(Buffer.concat(chunks));
});
}));
});
}
};
exports.HttpClientResponse = HttpClientResponse;
exports2.HttpClientResponse = HttpClientResponse;
function isHttps(requestUrl) {
const parsedUrl = new URL(requestUrl);
return parsedUrl.protocol === "https:";
}
exports.isHttps = isHttps;
exports2.isHttps = isHttps;
var HttpClient = class {
constructor(userAgent, handlers, requestOptions) {
this._ignoreSslError = false;
@@ -1426,16 +1444,16 @@ var require_lib = __commonJS({
});
}
};
exports.HttpClient = HttpClient;
exports2.HttpClient = HttpClient;
var lowercaseKeys = (obj) => Object.keys(obj).reduce((c, k) => (c[k.toLowerCase()] = obj[k], c), {});
}
});
// node_modules/@actions/http-client/lib/auth.js
var require_auth = __commonJS({
"node_modules/@actions/http-client/lib/auth.js"(exports) {
"node_modules/@actions/http-client/lib/auth.js"(exports2) {
"use strict";
var __awaiter = exports && exports.__awaiter || function(thisArg, _arguments, P, generator) {
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) {
function adopt(value) {
return value instanceof P ? value : new P(function(resolve) {
resolve(value);
@@ -1462,8 +1480,8 @@ var require_auth = __commonJS({
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.PersonalAccessTokenCredentialHandler = exports.BearerCredentialHandler = exports.BasicCredentialHandler = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.PersonalAccessTokenCredentialHandler = exports2.BearerCredentialHandler = exports2.BasicCredentialHandler = void 0;
var BasicCredentialHandler = class {
constructor(username, password) {
this.username = username;
@@ -1485,7 +1503,7 @@ var require_auth = __commonJS({
});
}
};
exports.BasicCredentialHandler = BasicCredentialHandler;
exports2.BasicCredentialHandler = BasicCredentialHandler;
var BearerCredentialHandler = class {
constructor(token) {
this.token = token;
@@ -1508,7 +1526,7 @@ var require_auth = __commonJS({
});
}
};
exports.BearerCredentialHandler = BearerCredentialHandler;
exports2.BearerCredentialHandler = BearerCredentialHandler;
var PersonalAccessTokenCredentialHandler = class {
constructor(token) {
this.token = token;
@@ -1531,15 +1549,15 @@ var require_auth = __commonJS({
});
}
};
exports.PersonalAccessTokenCredentialHandler = PersonalAccessTokenCredentialHandler;
exports2.PersonalAccessTokenCredentialHandler = PersonalAccessTokenCredentialHandler;
}
});
// node_modules/@actions/core/lib/oidc-utils.js
var require_oidc_utils = __commonJS({
"node_modules/@actions/core/lib/oidc-utils.js"(exports) {
"node_modules/@actions/core/lib/oidc-utils.js"(exports2) {
"use strict";
var __awaiter = exports && exports.__awaiter || function(thisArg, _arguments, P, generator) {
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) {
function adopt(value) {
return value instanceof P ? value : new P(function(resolve) {
resolve(value);
@@ -1566,8 +1584,8 @@ var require_oidc_utils = __commonJS({
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.OidcClient = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.OidcClient = void 0;
var http_client_1 = require_lib();
var auth_1 = require_auth();
var core_1 = require_core();
@@ -1602,7 +1620,7 @@ var require_oidc_utils = __commonJS({
Error Code : ${error.statusCode}
Error Message: ${error.result.message}`);
Error Message: ${error.message}`);
});
const id_token = (_a = res.result) === null || _a === void 0 ? void 0 : _a.value;
if (!id_token) {
@@ -1629,15 +1647,15 @@ var require_oidc_utils = __commonJS({
});
}
};
exports.OidcClient = OidcClient;
exports2.OidcClient = OidcClient;
}
});
// node_modules/@actions/core/lib/summary.js
var require_summary = __commonJS({
"node_modules/@actions/core/lib/summary.js"(exports) {
"node_modules/@actions/core/lib/summary.js"(exports2) {
"use strict";
var __awaiter = exports && exports.__awaiter || function(thisArg, _arguments, P, generator) {
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) {
function adopt(value) {
return value instanceof P ? value : new P(function(resolve) {
resolve(value);
@@ -1664,13 +1682,13 @@ var require_summary = __commonJS({
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.summary = exports.markdownSummary = exports.SUMMARY_DOCS_URL = exports.SUMMARY_ENV_VAR = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.summary = exports2.markdownSummary = exports2.SUMMARY_DOCS_URL = exports2.SUMMARY_ENV_VAR = void 0;
var os_1 = require("os");
var fs_1 = require("fs");
var { access, appendFile, writeFile } = fs_1.promises;
exports.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY";
exports.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";
exports2.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY";
exports2.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";
var Summary = class {
constructor() {
this._buffer = "";
@@ -1686,9 +1704,9 @@ var require_summary = __commonJS({
if (this._filePath) {
return this._filePath;
}
const pathFromEnv = process.env[exports.SUMMARY_ENV_VAR];
const pathFromEnv = process.env[exports2.SUMMARY_ENV_VAR];
if (!pathFromEnv) {
throw new Error(`Unable to find environment variable for $${exports.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`);
throw new Error(`Unable to find environment variable for $${exports2.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`);
}
try {
yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
@@ -1922,16 +1940,16 @@ var require_summary = __commonJS({
}
};
var _summary = new Summary();
exports.markdownSummary = _summary;
exports.summary = _summary;
exports2.markdownSummary = _summary;
exports2.summary = _summary;
}
});
// node_modules/@actions/core/lib/path-utils.js
var require_path_utils = __commonJS({
"node_modules/@actions/core/lib/path-utils.js"(exports) {
"node_modules/@actions/core/lib/path-utils.js"(exports2) {
"use strict";
var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) {
var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) {
if (k2 === void 0)
k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() {
@@ -1942,12 +1960,12 @@ var require_path_utils = __commonJS({
k2 = k;
o[k2] = m[k];
});
var __setModuleDefault = exports && exports.__setModuleDefault || (Object.create ? function(o, v) {
var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
} : function(o, v) {
o["default"] = v;
});
var __importStar = exports && exports.__importStar || function(mod) {
var __importStar = exports2 && exports2.__importStar || function(mod) {
if (mod && mod.__esModule)
return mod;
var result = {};
@@ -1959,29 +1977,29 @@ var require_path_utils = __commonJS({
__setModuleDefault(result, mod);
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.toPlatformPath = exports.toWin32Path = exports.toPosixPath = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.toPlatformPath = exports2.toWin32Path = exports2.toPosixPath = void 0;
var path = __importStar(require("path"));
function toPosixPath(pth) {
return pth.replace(/[\\]/g, "/");
}
exports.toPosixPath = toPosixPath;
exports2.toPosixPath = toPosixPath;
function toWin32Path(pth) {
return pth.replace(/[/]/g, "\\");
}
exports.toWin32Path = toWin32Path;
exports2.toWin32Path = toWin32Path;
function toPlatformPath(pth) {
return pth.replace(/[/\\]/g, path.sep);
}
exports.toPlatformPath = toPlatformPath;
exports2.toPlatformPath = toPlatformPath;
}
});
// node_modules/@actions/core/lib/core.js
var require_core = __commonJS({
"node_modules/@actions/core/lib/core.js"(exports) {
"node_modules/@actions/core/lib/core.js"(exports2) {
"use strict";
var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) {
var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) {
if (k2 === void 0)
k2 = k;
Object.defineProperty(o, k2, { enumerable: true, get: function() {
@@ -1992,12 +2010,12 @@ var require_core = __commonJS({
k2 = k;
o[k2] = m[k];
});
var __setModuleDefault = exports && exports.__setModuleDefault || (Object.create ? function(o, v) {
var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
} : function(o, v) {
o["default"] = v;
});
var __importStar = exports && exports.__importStar || function(mod) {
var __importStar = exports2 && exports2.__importStar || function(mod) {
if (mod && mod.__esModule)
return mod;
var result = {};
@@ -2009,7 +2027,7 @@ var require_core = __commonJS({
__setModuleDefault(result, mod);
return result;
};
var __awaiter = exports && exports.__awaiter || function(thisArg, _arguments, P, generator) {
var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) {
function adopt(value) {
return value instanceof P ? value : new P(function(resolve) {
resolve(value);
@@ -2036,8 +2054,8 @@ var require_core = __commonJS({
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getIDToken = exports.getState = exports.saveState = exports.group = exports.endGroup = exports.startGroup = exports.info = exports.notice = exports.warning = exports.error = exports.debug = exports.isDebug = exports.setFailed = exports.setCommandEcho = exports.setOutput = exports.getBooleanInput = exports.getMultilineInput = exports.getInput = exports.addPath = exports.setSecret = exports.exportVariable = exports.ExitCode = void 0;
Object.defineProperty(exports2, "__esModule", { value: true });
exports2.getIDToken = exports2.getState = exports2.saveState = exports2.group = exports2.endGroup = exports2.startGroup = exports2.info = exports2.notice = exports2.warning = exports2.error = exports2.debug = exports2.isDebug = exports2.setFailed = exports2.setCommandEcho = exports2.setOutput = exports2.getBooleanInput = exports2.getMultilineInput = exports2.getInput = exports2.addPath = exports2.setSecret = exports2.exportVariable = exports2.ExitCode = void 0;
var command_1 = require_command();
var file_command_1 = require_file_command();
var utils_1 = require_utils();
@@ -2048,7 +2066,7 @@ var require_core = __commonJS({
(function(ExitCode2) {
ExitCode2[ExitCode2["Success"] = 0] = "Success";
ExitCode2[ExitCode2["Failure"] = 1] = "Failure";
})(ExitCode = exports.ExitCode || (exports.ExitCode = {}));
})(ExitCode = exports2.ExitCode || (exports2.ExitCode = {}));
function exportVariable(name, val) {
const convertedVal = utils_1.toCommandValue(val);
process.env[name] = convertedVal;
@@ -2058,11 +2076,11 @@ var require_core = __commonJS({
}
command_1.issueCommand("set-env", { name }, convertedVal);
}
exports.exportVariable = exportVariable;
exports2.exportVariable = exportVariable;
function setSecret(secret) {
command_1.issueCommand("add-mask", {}, secret);
}
exports.setSecret = setSecret;
exports2.setSecret = setSecret;
function addPath(inputPath) {
const filePath = process.env["GITHUB_PATH"] || "";
if (filePath) {
@@ -2072,7 +2090,7 @@ var require_core = __commonJS({
}
process.env["PATH"] = `${inputPath}${path.delimiter}${process.env["PATH"]}`;
}
exports.addPath = addPath;
exports2.addPath = addPath;
function getInput(name, options) {
const val = process.env[`INPUT_${name.replace(/ /g, "_").toUpperCase()}`] || "";
if (options && options.required && !val) {
@@ -2083,7 +2101,7 @@ var require_core = __commonJS({
}
return val.trim();
}
exports.getInput = getInput;
exports2.getInput = getInput;
function getMultilineInput(name, options) {
const inputs = getInput(name, options).split("\n").filter((x) => x !== "");
if (options && options.trimWhitespace === false) {
@@ -2091,7 +2109,7 @@ var require_core = __commonJS({
}
return inputs.map((input) => input.trim());
}
exports.getMultilineInput = getMultilineInput;
exports2.getMultilineInput = getMultilineInput;
function getBooleanInput(name, options) {
const trueValue = ["true", "True", "TRUE"];
const falseValue = ["false", "False", "FALSE"];
@@ -2103,7 +2121,7 @@ var require_core = __commonJS({
throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${name}
Support boolean input list: \`true | True | TRUE | false | False | FALSE\``);
}
exports.getBooleanInput = getBooleanInput;
exports2.getBooleanInput = getBooleanInput;
function setOutput(name, value) {
const filePath = process.env["GITHUB_OUTPUT"] || "";
if (filePath) {
@@ -2112,48 +2130,48 @@ Support boolean input list: \`true | True | TRUE | false | False | FALSE\``);
process.stdout.write(os.EOL);
command_1.issueCommand("set-output", { name }, utils_1.toCommandValue(value));
}
exports.setOutput = setOutput;
exports2.setOutput = setOutput;
function setCommandEcho(enabled) {
command_1.issue("echo", enabled ? "on" : "off");
}
exports.setCommandEcho = setCommandEcho;
exports2.setCommandEcho = setCommandEcho;
function setFailed(message) {
process.exitCode = ExitCode.Failure;
error(message);
}
exports.setFailed = setFailed;
exports2.setFailed = setFailed;
function isDebug() {
return process.env["RUNNER_DEBUG"] === "1";
}
exports.isDebug = isDebug;
exports2.isDebug = isDebug;
function debug(message) {
command_1.issueCommand("debug", {}, message);
}
exports.debug = debug;
exports2.debug = debug;
function error(message, properties = {}) {
command_1.issueCommand("error", utils_1.toCommandProperties(properties), message instanceof Error ? message.toString() : message);
}
exports.error = error;
exports2.error = error;
function warning(message, properties = {}) {
command_1.issueCommand("warning", utils_1.toCommandProperties(properties), message instanceof Error ? message.toString() : message);
}
exports.warning = warning;
exports2.warning = warning;
function notice(message, properties = {}) {
command_1.issueCommand("notice", utils_1.toCommandProperties(properties), message instanceof Error ? message.toString() : message);
}
exports.notice = notice;
exports2.notice = notice;
function info(message) {
process.stdout.write(message + os.EOL);
}
exports.info = info;
exports2.info = info;
function startGroup(name) {
command_1.issue("group", name);
}
exports.startGroup = startGroup;
exports2.startGroup = startGroup;
function endGroup() {
command_1.issue("endgroup");
}
exports.endGroup = endGroup;
exports2.endGroup = endGroup;
function group(name, fn) {
return __awaiter(this, void 0, void 0, function* () {
startGroup(name);
@@ -2166,7 +2184,7 @@ Support boolean input list: \`true | True | TRUE | false | False | FALSE\``);
return result;
});
}
exports.group = group;
exports2.group = group;
function saveState(name, value) {
const filePath = process.env["GITHUB_STATE"] || "";
if (filePath) {
@@ -2174,33 +2192,33 @@ Support boolean input list: \`true | True | TRUE | false | False | FALSE\``);
}
command_1.issueCommand("save-state", { name }, utils_1.toCommandValue(value));
}
exports.saveState = saveState;
exports2.saveState = saveState;
function getState(name) {
return process.env[`STATE_${name}`] || "";
}
exports.getState = getState;
exports2.getState = getState;
function getIDToken(aud) {
return __awaiter(this, void 0, void 0, function* () {
return yield oidc_utils_1.OidcClient.getIDToken(aud);
});
}
exports.getIDToken = getIDToken;
exports2.getIDToken = getIDToken;
var summary_1 = require_summary();
Object.defineProperty(exports, "summary", { enumerable: true, get: function() {
Object.defineProperty(exports2, "summary", { enumerable: true, get: function() {
return summary_1.summary;
} });
var summary_2 = require_summary();
Object.defineProperty(exports, "markdownSummary", { enumerable: true, get: function() {
Object.defineProperty(exports2, "markdownSummary", { enumerable: true, get: function() {
return summary_2.markdownSummary;
} });
var path_utils_1 = require_path_utils();
Object.defineProperty(exports, "toPosixPath", { enumerable: true, get: function() {
Object.defineProperty(exports2, "toPosixPath", { enumerable: true, get: function() {
return path_utils_1.toPosixPath;
} });
Object.defineProperty(exports, "toWin32Path", { enumerable: true, get: function() {
Object.defineProperty(exports2, "toWin32Path", { enumerable: true, get: function() {
return path_utils_1.toWin32Path;
} });
Object.defineProperty(exports, "toPlatformPath", { enumerable: true, get: function() {
Object.defineProperty(exports2, "toPlatformPath", { enumerable: true, get: function() {
return path_utils_1.toPlatformPath;
} });
}
@@ -2208,9 +2226,9 @@ Support boolean input list: \`true | True | TRUE | false | False | FALSE\``);
// node_modules/universal-user-agent/dist-node/index.js
var require_dist_node = __commonJS({
"node_modules/universal-user-agent/dist-node/index.js"(exports) {
"node_modules/universal-user-agent/dist-node/index.js"(exports2) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
Object.defineProperty(exports2, "__esModule", { value: true });
function getUserAgent() {
if (typeof navigator === "object" && "userAgent" in navigator) {
return navigator.userAgent;
@@ -2220,15 +2238,15 @@ var require_dist_node = __commonJS({
}
return "<environment undetectable>";
}
exports.getUserAgent = getUserAgent;
exports2.getUserAgent = getUserAgent;
}
});
// node_modules/is-plain-object/dist/is-plain-object.js
var require_is_plain_object = __commonJS({
"node_modules/is-plain-object/dist/is-plain-object.js"(exports) {
"node_modules/is-plain-object/dist/is-plain-object.js"(exports2) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
Object.defineProperty(exports2, "__esModule", { value: true });
function isObject(o) {
return Object.prototype.toString.call(o) === "[object Object]";
}
@@ -2247,13 +2265,13 @@ var require_is_plain_object = __commonJS({
}
return true;
}
exports.isPlainObject = isPlainObject;
exports2.isPlainObject = isPlainObject;
}
});
// node_modules/@octokit/endpoint/dist-node/index.js
var require_dist_node2 = __commonJS({
"node_modules/@octokit/endpoint/dist-node/index.js"(exports, module2) {
"node_modules/@octokit/endpoint/dist-node/index.js"(exports2, module2) {
"use strict";
var __defProp2 = Object.defineProperty;
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
@@ -2278,7 +2296,7 @@ var require_dist_node2 = __commonJS({
});
module2.exports = __toCommonJS2(dist_src_exports);
var import_universal_user_agent = require_dist_node();
var VERSION = "9.0.0";
var VERSION = "9.0.1";
var userAgent = `octokit-endpoint.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
var DEFAULTS = {
method: "GET",
@@ -2581,9 +2599,9 @@ var require_dist_node2 = __commonJS({
// node_modules/deprecation/dist-node/index.js
var require_dist_node3 = __commonJS({
"node_modules/deprecation/dist-node/index.js"(exports) {
"node_modules/deprecation/dist-node/index.js"(exports2) {
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
Object.defineProperty(exports2, "__esModule", { value: true });
var Deprecation = class extends Error {
constructor(message) {
super(message);
@@ -2593,13 +2611,13 @@ var require_dist_node3 = __commonJS({
this.name = "Deprecation";
}
};
exports.Deprecation = Deprecation;
exports2.Deprecation = Deprecation;
}
});
// node_modules/wrappy/wrappy.js
var require_wrappy = __commonJS({
"node_modules/wrappy/wrappy.js"(exports, module2) {
"node_modules/wrappy/wrappy.js"(exports2, module2) {
module2.exports = wrappy;
function wrappy(fn, cb) {
if (fn && cb)
@@ -2630,7 +2648,7 @@ var require_wrappy = __commonJS({
// node_modules/once/once.js
var require_once = __commonJS({
"node_modules/once/once.js"(exports, module2) {
"node_modules/once/once.js"(exports2, module2) {
var wrappy = require_wrappy();
module2.exports = wrappy(once);
module2.exports.strict = wrappy(onceStrict);
@@ -2675,7 +2693,7 @@ var require_once = __commonJS({
// node_modules/@octokit/request-error/dist-node/index.js
var require_dist_node4 = __commonJS({
"node_modules/@octokit/request-error/dist-node/index.js"(exports, module2) {
"node_modules/@octokit/request-error/dist-node/index.js"(exports2, module2) {
"use strict";
var __create2 = Object.create;
var __defProp2 = Object.defineProperty;
@@ -2767,7 +2785,7 @@ var require_dist_node4 = __commonJS({
// node_modules/@octokit/request/dist-node/index.js
var require_dist_node5 = __commonJS({
"node_modules/@octokit/request/dist-node/index.js"(exports, module2) {
"node_modules/@octokit/request/dist-node/index.js"(exports2, module2) {
"use strict";
var __defProp2 = Object.defineProperty;
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
@@ -2793,8 +2811,18 @@ var require_dist_node5 = __commonJS({
module2.exports = __toCommonJS2(dist_src_exports);
var import_endpoint = require_dist_node2();
var import_universal_user_agent = require_dist_node();
var VERSION = "8.1.1";
var import_is_plain_object = require_is_plain_object();
var VERSION = "8.1.6";
function isPlainObject(value) {
if (typeof value !== "object" || value === null)
return false;
if (Object.prototype.toString.call(value) !== "[object Object]")
return false;
const proto = Object.getPrototypeOf(value);
if (proto === null)
return true;
const Ctor = Object.prototype.hasOwnProperty.call(proto, "constructor") && proto.constructor;
return typeof Ctor === "function" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value);
}
var import_request_error = require_dist_node4();
function getBufferResponse(response) {
return response.arrayBuffer();
@@ -2803,7 +2831,7 @@ var require_dist_node5 = __commonJS({
var _a, _b, _c;
const log = requestOptions.request && requestOptions.request.log ? requestOptions.request.log : console;
const parseSuccessResponseBody = ((_a = requestOptions.request) == null ? void 0 : _a.parseSuccessResponseBody) !== false;
if ((0, import_is_plain_object.isPlainObject)(requestOptions.body) || Array.isArray(requestOptions.body)) {
if (isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body)) {
requestOptions.body = JSON.stringify(requestOptions.body);
}
let headers = {};
@@ -2893,7 +2921,15 @@ var require_dist_node5 = __commonJS({
throw error;
else if (error.name === "AbortError")
throw error;
throw new import_request_error.RequestError(error.message, 500, {
let message = error.message;
if (error.name === "TypeError" && "cause" in error) {
if (error.cause instanceof Error) {
message = error.cause.message;
} else if (typeof error.cause === "string") {
message = error.cause;
}
}
throw new import_request_error.RequestError(message, 500, {
request: requestOptions
});
});
@@ -2901,7 +2937,7 @@ var require_dist_node5 = __commonJS({
async function getResponseData(response) {
const contentType = response.headers.get("content-type");
if (/application\/json/.test(contentType)) {
return response.json();
return response.json().catch(() => response.text()).catch(() => "");
}
if (!contentType || /^text\/|charset=utf-8$/.test(contentType)) {
return response.text();
@@ -2951,32 +2987,48 @@ var require_dist_node5 = __commonJS({
});
// post.js
var import_core2 = __toESM(require_core(), 1);
var import_request = __toESM(require_dist_node5(), 1);
var import_core = __toESM(require_core(), 1);
// lib/post.js
var import_core = __toESM(require_core(), 1);
async function post(core3, request2) {
const token = core3.getState("token");
if (!token)
async function post(core2, request2) {
const skipTokenRevoke = Boolean(
core2.getInput("skip-token-revoke") || core2.getInput("skip_token_revoke")
);
if (skipTokenRevoke) {
core2.info("Token revocation was skipped");
return;
}
const token = core2.getState("token");
if (!token) {
core2.info("Token is not set");
return;
}
await request2("DELETE /installation/token", {
headers: {
authorization: `token ${token}`
}
});
core3.info("Token revoked");
core2.info("Token revoked");
}
// lib/request.js
var import_request = __toESM(require_dist_node5(), 1);
var request_default = import_request.request.defaults({
baseUrl: process.env["GITHUB_API_URL"],
headers: {
"user-agent": "actions/create-github-app-token"
}
});
// post.js
post(
import_core2.default,
import_request.request.defaults({
import_core.default,
request_default.defaults({
baseUrl: process.env["GITHUB_API_URL"]
})
).catch((error) => {
console.error(error);
import_core2.default.setFailed(error.message);
import_core.default.setFailed(error.message);
});
/*! Bundled license information:
+126 -33
View File
@@ -1,56 +1,99 @@
import pRetry from "p-retry";
// @ts-check
import core from "@actions/core";
import { createAppAuth } from "@octokit/auth-app";
import { request } from "@octokit/request";
/**
* @param {string} appId
* @param {string} privateKey
* @param {string} repository
* @param {core} core
* @param {createAppAuth} createAppAuth
* @param {request} request
* @param {string} owner
* @param {string} repositories
* @param {import("@actions/core")} core
* @param {import("@octokit/auth-app").createAppAuth} createAppAuth
* @param {import("@octokit/request").request} request
* @param {boolean} skipTokenRevoke
*/
export async function main(
appId,
privateKey,
repository,
owner,
repositories,
core,
createAppAuth,
request
request,
skipTokenRevoke
) {
// Get owner and repo name from GITHUB_REPOSITORY
const [owner, repo] = repository.split("/");
let parsedOwner = "";
let parsedRepositoryNames = "";
// If neither owner nor repositories are set, default to current repository
if (!owner && !repositories) {
[parsedOwner, parsedRepositoryNames] = String(
process.env.GITHUB_REPOSITORY
).split("/");
core.info(
`owner and repositories not set, creating token for the current repository ("${parsedRepositoryNames}")`
);
}
// If only an owner is set, default to all repositories from that owner
if (owner && !repositories) {
parsedOwner = owner;
core.info(
`repositories not set, creating token for all repositories for given owner "${owner}"`
);
}
// If repositories are set, but no owner, default to `GITHUB_REPOSITORY_OWNER`
if (!owner && repositories) {
parsedOwner = String(process.env.GITHUB_REPOSITORY_OWNER);
parsedRepositoryNames = repositories;
core.info(
`owner not set, creating owner for given repositories "${repositories}" in current owner ("${parsedOwner}")`
);
}
// If both owner and repositories are set, use those values
if (owner && repositories) {
parsedOwner = owner;
parsedRepositoryNames = repositories;
core.info(
`owner and repositories set, creating token for repositories "${repositories}" owned by "${owner}"`
);
}
const auth = createAppAuth({
appId,
privateKey,
request,
});
const appAuthentication = await auth({
type: "app",
});
let authentication;
// If at least one repository is set, get installation ID from that repository
// Get the installation ID
// https://docs.github.com/en/rest/apps/apps?apiVersion=2022-11-28#get-a-repository-installation-for-the-authenticated-app
const { data: installation } = await request(
"GET /repos/{owner}/{repo}/installation",
{
owner,
repo,
headers: {
authorization: `bearer ${appAuthentication.token}`,
if (parsedRepositoryNames) {
authentication = await pRetry(() => getTokenFromRepository(request, auth, parsedOwner, parsedRepositoryNames), {
onFailedAttempt: (error) => {
core.info(
`Failed to create token for "${parsedRepositoryNames}" (attempt ${error.attemptNumber}): ${error.message}`
);
},
}
);
retries: 3,
});
// Create a new installation token
const authentication = await auth({
type: "installation",
installationId: installation.id,
repositoryNames: [repo],
});
} else {
// Otherwise get the installation for the owner, which can either be an organization or a user account
authentication = await pRetry(() => getTokenFromOwner(request, auth, parsedOwner), {
onFailedAttempt: (error) => {
core.info(
`Failed to create token for "${parsedOwner}" (attempt ${error.attemptNumber}): ${error.message}`
);
},
retries: 3,
});
}
// Register the token with the runner as a secret to ensure it is masked in logs
core.setSecret(authentication.token);
@@ -58,5 +101,55 @@ export async function main(
core.setOutput("token", authentication.token);
// Make token accessible to post function (so we can invalidate it)
core.saveState("token", authentication.token);
if (!skipTokenRevoke) {
core.saveState("token", authentication.token);
}
}
async function getTokenFromOwner(request, auth, parsedOwner) {
// https://docs.github.com/en/rest/apps/apps?apiVersion=2022-11-28#get-an-organization-installation-for-the-authenticated-app
const response = await request("GET /orgs/{org}/installation", {
org: parsedOwner,
request: {
hook: auth.hook,
},
}).catch((error) => {
/* c8 ignore next */
if (error.status !== 404) throw error;
// https://docs.github.com/rest/apps/apps?apiVersion=2022-11-28#get-a-user-installation-for-the-authenticated-app
return request("GET /users/{username}/installation", {
username: parsedOwner,
request: {
hook: auth.hook,
},
});
});
// Get token for for all repositories of the given installation
const authentication = await auth({
type: "installation",
installationId: response.data.id,
});
return authentication;
}
async function getTokenFromRepository(request, auth, parsedOwner, parsedRepositoryNames) {
// https://docs.github.com/rest/apps/apps?apiVersion=2022-11-28#get-a-repository-installation-for-the-authenticated-app
const response = await request("GET /repos/{owner}/{repo}/installation", {
owner: parsedOwner,
repo: parsedRepositoryNames.split(",")[0],
request: {
hook: auth.hook,
},
});
// Get token for given repositories
const authentication = await auth({
type: "installation",
installationId: response.data.id,
repositoryNames: parsedRepositoryNames.split(","),
});
return authentication;
}
+15 -6
View File
@@ -1,16 +1,25 @@
// @ts-check
import core from "@actions/core";
import { request } from "@octokit/request";
/**
* @param {core} core
* @param {request} request
* @param {import("@actions/core")} core
* @param {import("@octokit/request").request} request
*/
export async function post(core, request) {
const skipTokenRevoke = Boolean(
core.getInput("skip-token-revoke") || core.getInput("skip_token_revoke")
);
if (skipTokenRevoke) {
core.info("Token revocation was skipped");
return;
}
const token = core.getState("token");
if (!token) return;
if (!token) {
core.info("Token is not set");
return;
}
await request("DELETE /installation/token", {
headers: {
+8
View File
@@ -0,0 +1,8 @@
import { request } from "@octokit/request";
export default request.defaults({
baseUrl: process.env["GITHUB_API_URL"],
headers: {
"user-agent": "actions/create-github-app-token",
},
});
+25 -6
View File
@@ -2,29 +2,48 @@
import core from "@actions/core";
import { createAppAuth } from "@octokit/auth-app";
import { request } from "@octokit/request";
import { main } from "./lib/main.js";
import request from "./lib/request.js";
if (!process.env.GITHUB_REPOSITORY) {
throw new Error("GITHUB_REPOSITORY missing, must be set to '<owner>/<repo>'");
}
const appId = core.getInput("app_id");
const privateKey = core.getInput("private_key");
if (!process.env.GITHUB_REPOSITORY_OWNER) {
throw new Error("GITHUB_REPOSITORY_OWNER missing, must be set to '<owner>'");
}
const repository = process.env.GITHUB_REPOSITORY;
const appId = core.getInput("app-id") || core.getInput("app_id");
if (!appId) {
// The 'app_id' input was previously required, but it and 'app-id' are both optional now, until the former is removed. Still, we want to ensure that at least one of them is set.
throw new Error("Input required and not supplied: app-id");
}
const privateKey = core.getInput("private-key") || core.getInput("private_key");
if (!privateKey) {
// The 'private_key' input was previously required, but it and 'private-key' are both optional now, until the former is removed. Still, we want to ensure that at least one of them is set.
throw new Error("Input required and not supplied: private-key");
}
const owner = core.getInput("owner");
const repositories = core.getInput("repositories");
const skipTokenRevoke = Boolean(
core.getInput("skip-token-revoke") || core.getInput("skip_token_revoke")
);
main(
appId,
privateKey,
repository,
owner,
repositories,
core,
createAppAuth,
request.defaults({
baseUrl: process.env["GITHUB_API_URL"],
})
}),
skipTokenRevoke
).catch((error) => {
/* c8 ignore next 3 */
console.error(error);
core.setFailed(error.message);
});
+3281 -156
View File
File diff suppressed because it is too large Load Diff
+17 -7
View File
@@ -2,21 +2,31 @@
"name": "create-github-app-token",
"private": true,
"type": "module",
"version": "1.2.0",
"version": "1.6.3",
"description": "GitHub Action for creating a GitHub App Installation Access Token",
"scripts": {
"build": "esbuild main.js post.js --bundle --outdir=dist --out-extension:.js=.cjs --platform=node --target=node16.16",
"test": "echo \"Error: no test specified\" && exit 1"
"build": "esbuild main.js post.js --bundle --outdir=dist --out-extension:.js=.cjs --platform=node --target=node20.0.0",
"test": "c8 --100 ava tests/index.js",
"coverage": "c8 report --reporter html",
"postcoverage": "open-cli coverage/index.html"
},
"license": "MIT",
"dependencies": {
"@actions/core": "^1.10.0",
"@octokit/auth-app": "^6.0.0",
"@octokit/request": "^8.1.1"
"@actions/core": "^1.10.1",
"@octokit/auth-app": "^6.0.3",
"@octokit/request": "^8.1.6",
"p-retry": "^6.2.0"
},
"devDependencies": {
"@sinonjs/fake-timers": "^11.2.2",
"ava": "^6.0.1",
"c8": "^8.0.1",
"dotenv": "^16.3.1",
"esbuild": "^0.19.2"
"esbuild": "^0.19.11",
"execa": "^8.0.1",
"open-cli": "^8.0.0",
"undici": "^6.2.1",
"yaml": "^2.3.4"
},
"release": {
"branches": [
+2 -1
View File
@@ -1,9 +1,9 @@
// @ts-check
import core from "@actions/core";
import { request } from "@octokit/request";
import { post } from "./lib/post.js";
import request from "./lib/request.js";
post(
core,
@@ -11,6 +11,7 @@ post(
baseUrl: process.env["GITHUB_API_URL"],
})
).catch((error) => {
/* c8 ignore next 3 */
console.error(error);
core.setFailed(error.message);
});
+19
View File
@@ -0,0 +1,19 @@
# Tests
Add one test file per scenario. You can run them in isolation with:
```bash
node tests/post-token-set.test.js
```
All tests are run together in [tests/index.js](index.js), which can be executed with ava
```
npx ava tests/index.js
```
or with npm
```
npm test
```
+16
View File
@@ -0,0 +1,16 @@
import { readFileSync } from "node:fs";
import * as url from "node:url";
import YAML from "yaml";
const action = YAML.parse(
readFileSync(
url.fileURLToPath(new URL("../action.yml", import.meta.url)),
"utf8"
)
);
for (const [key, value] of Object.entries(action.inputs)) {
if ("deprecationMessage" in value) {
console.log(`${key}${value.deprecationMessage}`);
}
}
+19
View File
@@ -0,0 +1,19 @@
import { readdirSync } from "node:fs";
import { execa } from "execa";
import test from "ava";
const tests = readdirSync("tests").filter((file) => file.endsWith(".test.js"));
for (const file of tests) {
test(file, async (t) => {
// Override Actions environment variables that change `core`s behavior
const env = {
GITHUB_OUTPUT: undefined,
GITHUB_STATE: undefined,
};
const { stderr, stdout } = await execa("node", [`tests/${file}`], { env });
t.snapshot(stderr, "stderr");
t.snapshot(stdout, "stdout");
});
}
+9
View File
@@ -0,0 +1,9 @@
process.env.GITHUB_REPOSITORY_OWNER = "actions";
process.env.GITHUB_REPOSITORY = "actions/create-github-app-token";
// Verify `main` exits with an error when neither the `app-id` nor `app_id` input is set.
try {
await import("../main.js");
} catch (error) {
console.error(error.message);
}
+9
View File
@@ -0,0 +1,9 @@
process.env.GITHUB_REPOSITORY = "actions/create-github-app-token";
delete process.env.GITHUB_REPOSITORY_OWNER;
// Verify `main` exits with an error when `GITHUB_REPOSITORY_OWNER` is missing.
try {
await import("../main.js");
} catch (error) {
console.error(error.message);
}
+10
View File
@@ -0,0 +1,10 @@
process.env.GITHUB_REPOSITORY_OWNER = "actions";
process.env.GITHUB_REPOSITORY = "actions/create-github-app-token";
process.env["INPUT_APP-ID"] = "123456";
// Verify `main` exits with an error when neither the `private-key` nor `private_key` input is set.
try {
await import("../main.js");
} catch (error) {
console.error(error.message);
}
+8
View File
@@ -0,0 +1,8 @@
delete process.env.GITHUB_REPOSITORY;
// Verify `main` exits with an error when `GITHUB_REPOSITORY` is missing.
try {
await import("../main.js");
} catch (error) {
console.error(error.message);
}
+56
View File
@@ -0,0 +1,56 @@
import { test } from "./main.js";
import { install } from "@sinonjs/fake-timers";
// Verify `main` retry when the clock has drifted.
await test((mockPool) => {
process.env.INPUT_OWNER = 'actions'
process.env.INPUT_REPOSITORIES = 'failed-repo';
const owner = process.env.INPUT_OWNER
const repo = process.env.INPUT_REPOSITORIES
const mockInstallationId = "123456";
install({ now: 0, toFake: ["Date"] });
mockPool
.intercept({
path: `/repos/${owner}/${repo}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(({ headers }) => {
const [_, jwt] = (headers.authorization || "").split(" ");
const payload = JSON.parse(Buffer.from(jwt.split(".")[1], "base64").toString());
if (payload.iat < 0) {
return {
statusCode: 401,
data: {
message: "'Issued at' claim ('iat') must be an Integer representing the time that the assertion was issued."
},
responseOptions: {
headers: {
"content-type": "application/json",
"date": new Date(Date.now() + 30000).toUTCString()
}
}
};
}
return {
statusCode: 200,
data: {
id: mockInstallationId
},
responseOptions: {
headers: {
"content-type": "application/json"
}
}
};
}).times(2);
});
@@ -0,0 +1,39 @@
import { test } from "./main.js";
// Verify `main` retry when the GitHub API returns a 500 error.
await test((mockPool) => {
process.env.INPUT_OWNER = 'actions'
process.env.INPUT_REPOSITORIES = 'failed-repo';
const owner = process.env.INPUT_OWNER
const repo = process.env.INPUT_REPOSITORIES
const mockInstallationId = "123456";
mockPool
.intercept({
path: `/repos/${owner}/${repo}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(500, 'GitHub API not available')
mockPool
.intercept({
path: `/repos/${owner}/${repo}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(
200,
{ id: mockInstallationId },
{ headers: { "content-type": "application/json" } }
);
});
@@ -0,0 +1,7 @@
import { test } from "./main.js";
// Verify `main` successfully obtains a token when the `owner` and `repositories` inputs are set (and the latter is a list of repos).
await test(() => {
process.env.INPUT_OWNER = process.env.GITHUB_REPOSITORY_OWNER;
process.env.INPUT_REPOSITORIES = `${process.env.GITHUB_REPOSITORY},actions/toolkit`;
});
@@ -0,0 +1,7 @@
import { test } from "./main.js";
// Verify `main` successfully obtains a token when the `owner` and `repositories` inputs are set (and the latter is a single repo).
await test(() => {
process.env.INPUT_OWNER = process.env.GITHUB_REPOSITORY_OWNER;
process.env.INPUT_REPOSITORIES = process.env.GITHUB_REPOSITORY;
});
@@ -0,0 +1,25 @@
import { test } from "./main.js";
// Verify `main` successfully obtains a token when the `owner` input is set (to an org), but the `repositories` input isnt set.
await test((mockPool) => {
process.env.INPUT_OWNER = process.env.GITHUB_REPOSITORY_OWNER;
delete process.env.INPUT_REPOSITORIES;
// Mock installation id request
const mockInstallationId = "123456";
mockPool
.intercept({
path: `/orgs/${process.env.INPUT_OWNER}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(
200,
{ id: mockInstallationId },
{ headers: { "content-type": "application/json" } }
);
});
@@ -0,0 +1,36 @@
import { test } from "./main.js";
// Verify `main` successfully obtains a token when the `owner` input is set (to a user), but the `repositories` input isnt set.
await test((mockPool) => {
process.env.INPUT_OWNER = "smockle";
delete process.env.INPUT_REPOSITORIES;
// Mock installation id request
const mockInstallationId = "123456";
mockPool
.intercept({
path: `/orgs/${process.env.INPUT_OWNER}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(500, 'GitHub API not available')
mockPool
.intercept({
path: `/orgs/${process.env.INPUT_OWNER}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(
200,
{ id: mockInstallationId },
{ headers: { "content-type": "application/json" } }
);
});
@@ -0,0 +1,36 @@
import { test } from "./main.js";
// Verify `main` successfully obtains a token when the `owner` input is set (to a user), but the `repositories` input isnt set.
await test((mockPool) => {
process.env.INPUT_OWNER = "smockle";
delete process.env.INPUT_REPOSITORIES;
// Mock installation id request
const mockInstallationId = "123456";
mockPool
.intercept({
path: `/orgs/${process.env.INPUT_OWNER}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(404);
mockPool
.intercept({
path: `/users/${process.env.INPUT_OWNER}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(
200,
{ id: mockInstallationId },
{ headers: { "content-type": "application/json" } }
);
});
@@ -0,0 +1,7 @@
import { test } from "./main.js";
// Verify `main` successfully obtains a token when the `owner` input is not set, but the `repositories` input is set.
await test(() => {
delete process.env.INPUT_OWNER;
process.env.INPUT_REPOSITORIES = process.env.GITHUB_REPOSITORY;
});
@@ -0,0 +1,25 @@
import { test } from "./main.js";
// Verify `main` successfully obtains a token when neither the `owner` nor `repositories` input is set.
await test((mockPool) => {
delete process.env.INPUT_OWNER;
delete process.env.INPUT_REPOSITORIES;
// Mock installation id request
const mockInstallationId = "123456";
mockPool
.intercept({
path: `/repos/${process.env.GITHUB_REPOSITORY}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(
200,
{ id: mockInstallationId },
{ headers: { "content-type": "application/json" } }
);
});
+96
View File
@@ -0,0 +1,96 @@
// Base for all `main` tests.
// @ts-check
import { MockAgent, setGlobalDispatcher } from "undici";
export async function test(cb = (_mockPool) => {}) {
// Set required environment variables and inputs
process.env.GITHUB_REPOSITORY_OWNER = "actions";
process.env.GITHUB_REPOSITORY = "actions/create-github-app-token";
// inputs are set as environment variables with the prefix INPUT_
// https://docs.github.com/en/actions/creating-actions/metadata-syntax-for-github-actions#example-specifying-inputs
process.env["INPUT_APP-ID"] = "123456";
process.env["INPUT_PRIVATE-KEY"] = `-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEA280nfuUM9w00Ib9E2rvZJ6Qu3Ua3IqR34ZlK53vn/Iobn2EL
Z9puc5Q/nFBU15NKwHyQNb+OG2hTCkjd1Xi9XPzEOH1r42YQmTGq8YCkUSkk6KZA
5dnhLwN9pFquT9fQgrf4r1D5GJj3rqvj8JDr1sBmunArqY5u4gziSrIohcjLIZV0
cIMz/RUIMe/EAsNeiwzEteHAtf/WpMs+OfF94SIUrDlkPr0H0H3DER8l1HZAvE0e
eD3ZJ6njrF6UHQWDVrekSTB0clpVTTU9TMpe+gs2nnFww9G8As+WsW8xHVjVipJy
AwqBhiR+s7wlcbh2i0NQqt8GL9/jIFTmleiwsQIDAQABAoIBAHNyP8pgl/yyzKzk
/0871wUBMTQ7zji91dGCaFtJM0HrcDK4D/uOOPEv7nE1qDpKPLr5Me1pHUS7+NGw
EAPtlNhgUtew2JfppdIwyi5qeOPADoi7ud6AH8xHsxg+IMwC+JuP8WhzyUHoJj9y
PRi/pX94Mvy9qdE25HqKddjx1mLdaHhxqPkr16/em23uYZqm1lORsCPD3vTlthj7
WiEbBSqmpYvjj8iFP4yFk2N+LvuWgSilRzq1Af3qE7PUp4xhjmcOPs78Sag1T7nl
ww/pgqCegISABHik7j++/5T+UlI5cLsyp/XENU9zAd4kCIczwNKpun2bn+djJdft
ravyX4ECgYEA+k2mHfi1zwKF3wT+cJbf30+uXrJczK2yZ33//4RKnhBaq7nSbQAI
nhWz2JESBK0TEo0+L7yYYq3HnT9vcES5R1NxzruH9wXgxssSx3JUj6w1raXYPh3B
+1XpYQsa6/bo2LmBELEx47F8FQbNgD5dmTJ4jBrf6MV4rRh9h6Bs7UkCgYEA4M3K
eAw52c2MNMIxH/LxdOQtEBq5GMu3AQC8I64DSSRrAoiypfEgyTV6S4gWJ5TKgYfD
zclnOVJF+tITe3neO9wHoZp8iCjCnoijcT6p2cJ4IaW68LEHPOokWBk0EpLjF4p2
7sFi9+lUpXYXfCN7aMJ77QpGzB7dNsBf0KUxMCkCgYEAjw/mjGbk82bLwUaHby6s
0mQmk7V6WPpGZ+Sadx7TzzglutVAslA8nK5m1rdEBywtJINaMcqnhm8xEm15cj+1
blEBUVnaQpQ3fyf+mcR9FIknPRL3X7l+b/sQowjH4GqFd6m/XR0KGMwO0a3Lsyry
MGeqgtmxdMe5S6YdyXEmERECgYAgQsgklDSVIh9Vzux31kh6auhgoEUh3tJDbZSS
Vj2YeIZ21aE1mTYISglj34K2aW7qSc56sMWEf18VkKJFHQccdgYOVfo7HAZZ8+fo
r4J2gqb0xTDfq7gLMNrIXc2QQM4gKbnJp60JQM3p9NmH8huavBZGvSvNzTwXyGG3
so0tiQKBgGQXZaxaXhYUcxYHuCkQ3V4Vsj3ezlM92xXlP32SGFm3KgFhYy9kATxw
Cax1ytZzvlrKLQyQFVK1COs2rHt7W4cJ7op7C8zXfsigXCiejnS664oAuX8sQZID
x3WQZRiXlWejSMUAHuMwXrhGlltF3lw83+xAjnqsVp75kGS6OH61
-----END RSA PRIVATE KEY-----`; // This key is invalidated. Its from https://github.com/octokit/auth-app.js/issues/465#issuecomment-1564998327.
// Set up mocking
const mockAgent = new MockAgent();
mockAgent.disableNetConnect();
setGlobalDispatcher(mockAgent);
const mockPool = mockAgent.get("https://api.github.com");
// Calling `auth({ type: "app" })` to obtain a JWT doesnt make network requests, so no need to intercept.
// Mock installation id request
const mockInstallationId = "123456";
const owner = process.env.INPUT_OWNER ?? process.env.GITHUB_REPOSITORY_OWNER;
const repo = encodeURIComponent(
(process.env.INPUT_REPOSITORIES ?? process.env.GITHUB_REPOSITORY).split(
","
)[0]
);
mockPool
.intercept({
path: `/repos/${owner}/${repo}/installation`,
method: "GET",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(
200,
{ id: mockInstallationId },
{ headers: { "content-type": "application/json" } }
);
// Mock installation access token request
const mockInstallationAccessToken =
"ghs_16C7e42F292c6912E7710c838347Ae178B4a"; // This token is invalidated. Its from https://docs.github.com/en/rest/apps/apps?apiVersion=2022-11-28#create-an-installation-access-token-for-an-app.
mockPool
.intercept({
path: `/app/installations/${mockInstallationId}/access_tokens`,
method: "POST",
headers: {
accept: "application/vnd.github.v3+json",
"user-agent": "actions/create-github-app-token",
// Note: Intentionally omitting the `authorization` header, since JWT creation is not idempotent.
},
})
.reply(
201,
{ token: mockInstallationAccessToken },
{ headers: { "content-type": "application/json" } }
);
// Run the callback
cb(mockPool);
// Run the main script
await import("../main.js");
}
+25
View File
@@ -0,0 +1,25 @@
import { MockAgent, setGlobalDispatcher } from "undici";
// state variables are set as environment variables with the prefix STATE_
// https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#sending-values-to-the-pre-and-post-actions
process.env.STATE_token = "secret123";
const mockAgent = new MockAgent();
setGlobalDispatcher(mockAgent);
// Provide the base url to the request
const mockPool = mockAgent.get("https://api.github.com");
// intercept the request
mockPool
.intercept({
path: "/installation/token",
method: "DELETE",
headers: {
authorization: "token secret123",
},
})
.reply(204);
await import("../post.js");
+29
View File
@@ -0,0 +1,29 @@
import { MockAgent, setGlobalDispatcher } from "undici";
// state variables are set as environment variables with the prefix STATE_
// https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#sending-values-to-the-pre-and-post-actions
process.env.STATE_token = "secret123";
// inputs are set as environment variables with the prefix INPUT_
// https://docs.github.com/en/actions/creating-actions/metadata-syntax-for-github-actions#example-specifying-inputs
process.env["INPUT_SKIP-TOKEN-REVOKE"] = "true";
const mockAgent = new MockAgent();
setGlobalDispatcher(mockAgent);
// Provide the base url to the request
const mockPool = mockAgent.get("https://api.github.com");
// intercept the request
mockPool
.intercept({
path: "/installation/token",
method: "DELETE",
headers: {
authorization: "token secret123",
},
})
.reply(204);
await import("../post.js");
+5
View File
@@ -0,0 +1,5 @@
// state variables are set as environment variables with the prefix STATE_
// https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#sending-values-to-the-pre-and-post-actions
delete process.env.STATE_token;
await import("../post.js");
+201
View File
@@ -0,0 +1,201 @@
# Snapshot report for `tests/index.js`
The actual snapshot is saved in `index.js.snap`.
Generated by [AVA](https://avajs.dev).
## action-deprecated-inputs.test.js
> stderr
''
> stdout
`app_id — 'app_id' is deprecated and will be removed in a future version. Use 'app-id' instead.␊
private_key — 'private_key' is deprecated and will be removed in a future version. Use 'private-key' instead.␊
skip_token_revoke — 'skip_token_revoke' is deprecated and will be removed in a future version. Use 'skip-token-revoke' instead.`
## main-missing-app-id.test.js
> stderr
'Input required and not supplied: app-id'
> stdout
''
## main-missing-owner.test.js
> stderr
'GITHUB_REPOSITORY_OWNER missing, must be set to \'<owner>\''
> stdout
''
## main-missing-private-key.test.js
> stderr
'Input required and not supplied: private-key'
> stdout
''
## main-missing-repository.test.js
> stderr
'GITHUB_REPOSITORY missing, must be set to \'<owner>/<repo>\''
> stdout
''
## main-token-get-owner-set-repo-fail-response.test.js
> stderr
''
> stdout
`owner and repositories set, creating token for repositories "failed-repo" owned by "actions"␊
Failed to create token for "failed-repo" (attempt 1): GitHub API not available␊
::add-mask::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::set-output name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::save-state name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a`
## main-token-get-owner-set-repo-set-to-many.test.js
> stderr
''
> stdout
`owner and repositories set, creating token for repositories "actions/create-github-app-token,actions/toolkit" owned by "actions"␊
::add-mask::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::set-output name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::save-state name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a`
## main-token-get-owner-set-repo-set-to-one.test.js
> stderr
''
> stdout
`owner and repositories set, creating token for repositories "actions/create-github-app-token" owned by "actions"␊
::add-mask::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::set-output name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::save-state name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a`
## main-token-get-owner-set-to-org-repo-unset.test.js
> stderr
''
> stdout
`repositories not set, creating token for all repositories for given owner "actions"␊
::add-mask::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::set-output name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::save-state name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a`
## main-token-get-owner-set-to-user-fail-response.test.js
> stderr
''
> stdout
`repositories not set, creating token for all repositories for given owner "smockle"␊
Failed to create token for "smockle" (attempt 1): GitHub API not available␊
::add-mask::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::set-output name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::save-state name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a`
## main-token-get-owner-set-to-user-repo-unset.test.js
> stderr
''
> stdout
`repositories not set, creating token for all repositories for given owner "smockle"␊
::add-mask::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::set-output name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::save-state name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a`
## main-token-get-owner-unset-repo-set.test.js
> stderr
''
> stdout
`owner not set, creating owner for given repositories "actions/create-github-app-token" in current owner ("actions")␊
::add-mask::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::set-output name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::save-state name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a`
## main-token-get-owner-unset-repo-unset.test.js
> stderr
''
> stdout
`owner and repositories not set, creating token for the current repository ("create-github-app-token")␊
::add-mask::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::set-output name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a␊
::save-state name=token::ghs_16C7e42F292c6912E7710c838347Ae178B4a`
## post-token-set.test.js
> stderr
''
> stdout
'Token revoked'
## post-token-skipped.test.js
> stderr
''
> stdout
'Token revocation was skipped'
## post-token-unset.test.js
> stderr
''
> stdout
'Token is not set'
Binary file not shown.