Bumps the development-dependencies group with 3 updates in the /
directory: [ava](https://github.com/avajs/ava),
[dotenv](https://github.com/motdotla/dotenv) and
[esbuild](https://github.com/evanw/esbuild).
Updates `ava` from 6.2.0 to 6.3.0
<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.3.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Update dependencies, addressing <code>npm audit</code> warnings by
<a
href="https://github.com/novemberborn"><code>@novemberborn</code></a>
in <a
href="https://redirect.github.com/avajs/ava/pull/3377">avajs/ava#3377</a></li>
<li>Do not count writes to stdout/stderr as non-idling activity for
timeouts by <a
href="https://github.com/mdouglass"><code>@mdouglass</code></a> in <a
href="https://redirect.github.com/avajs/ava/pull/3374">avajs/ava#3374</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/mdouglass"><code>@mdouglass</code></a>
made their first contribution in <a
href="https://redirect.github.com/avajs/ava/pull/3374">avajs/ava#3374</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/avajs/ava/compare/v6.2.0...v6.3.0">https://github.com/avajs/ava/compare/v6.2.0...v6.3.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ca4240db7f"><code>ca4240d</code></a>
6.3.0</li>
<li><a
href="f243cab3b3"><code>f243cab</code></a>
Do not count writes to stdout/stderr as non-idling activity for
timeouts</li>
<li><a
href="4abb780b5b"><code>4abb780</code></a>
Update dependencies</li>
<li>See full diff in <a
href="https://github.com/avajs/ava/compare/v6.2.0...v6.3.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `dotenv` from 16.4.7 to 16.5.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md">dotenv's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.4.7...v16.5.0">16.5.0</a>
(2025-04-07)</h2>
<h3>Added</h3>
<ul>
<li>🎉 Added new sponsor <a
href="https://graphite.dev/?utm_source=github&utm_medium=repo&utm_campaign=dotenv">Graphite</a>
- <em>the AI developer productivity platform helping teams on GitHub
ship higher quality software, faster</em>.</li>
</ul>
<blockquote>
<p>[!TIP]
<strong><a href="https://github.com/sponsors/motdotla">Become a
sponsor</a></strong></p>
<p>The dotenvx README is viewed thousands of times DAILY on GitHub and
NPM.
Sponsoring dotenv is a great way to get in front of developers and give
back to the developer community at the same time.</p>
</blockquote>
<h3>Changed</h3>
<ul>
<li>Remove <code>_log</code> method. Use <code>_debug</code> <a
href="https://redirect.github.com/motdotla/dotenv/pull/862">#862</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d39cc9a94e"><code>d39cc9a</code></a>
16.5.0</li>
<li><a
href="2f4e407c73"><code>2f4e407</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/863">#863</a>
from Fdawgs/patch-1</li>
<li><a
href="a1eef11a70"><code>a1eef11</code></a>
chore(package): add homepage url</li>
<li><a
href="fb7e407892"><code>fb7e407</code></a>
README update</li>
<li><a
href="bf9113fad6"><code>bf9113f</code></a>
README update</li>
<li><a
href="9326f05f95"><code>9326f05</code></a>
changelog 🪵</li>
<li><a
href="2e8da3018a"><code>2e8da30</code></a>
changelog 🪵</li>
<li><a
href="3257b3adaf"><code>3257b3a</code></a>
changelog 🪵</li>
<li><a
href="c0ca62c841"><code>c0ca62c</code></a>
changelog 🪵</li>
<li><a
href="797c5e9d6e"><code>797c5e9</code></a>
changelog 🪵</li>
<li>Additional commits viewable in <a
href="https://github.com/motdotla/dotenv/compare/v16.4.7...v16.5.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `esbuild` from 0.25.2 to 0.25.3
<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.25.3</h2>
<ul>
<li>
<p>Fix lowered <code>async</code> arrow functions before
<code>super()</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4141">#4141</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4142">#4142</a>)</p>
<p>This change makes it possible to call an <code>async</code> arrow
function in a constructor before calling <code>super()</code> when
targeting environments without <code>async</code> support, as long as
the function body doesn't reference <code>this</code>. Here's an example
(notice the change from <code>this</code> to <code>null</code>):</p>
<pre lang="js"><code>// Original code
class Foo extends Object {
constructor() {
(async () => await foo())()
super()
}
}
<p>// Old output (with --target=es2016)<br />
class Foo extends Object {<br />
constructor() {<br />
(() => __async(this, null, function* () {<br />
return yield foo();<br />
}))();<br />
super();<br />
}<br />
}</p>
<p>// New output (with --target=es2016)<br />
class Foo extends Object {<br />
constructor() {<br />
(() => __async(null, null, function* () {<br />
return yield foo();<br />
}))();<br />
super();<br />
}<br />
}<br />
</code></pre></p>
<p>Some background: Arrow functions with the <code>async</code> keyword
are transformed into generator functions for older language targets such
as <code>--target=es2016</code>. Since arrow functions capture
<code>this</code>, the generated code forwards <code>this</code> into
the body of the generator function. However, JavaScript class syntax
forbids using <code>this</code> in a constructor before calling
<code>super()</code>, and this forwarding was problematic since
previously happened even when the function body doesn't use
<code>this</code>. Starting with this release, esbuild will now only
forward <code>this</code> if it's used within the function body.</p>
<p>This fix was contributed by <a
href="https://github.com/magic-akari"><code>@magic-akari</code></a>.</p>
</li>
<li>
<p>Fix memory leak with <code>--watch=true</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4131">#4131</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4132">#4132</a>)</p>
<p>This release fixes a memory leak with esbuild when
<code>--watch=true</code> is used instead of <code>--watch</code>.
Previously using <code>--watch=true</code> caused esbuild to continue to
use more and more memory for every rebuild, but
<code>--watch=true</code> should now behave like <code>--watch</code>
and not leak memory.</p>
<p>This bug happened because esbuild disables the garbage collector when
it's not run as a long-lived process for extra speed, but esbuild's
checks for which arguments cause esbuild to be a long-lived process
weren't updated for the new <code>--watch=true</code> style of boolean
command-line flags. This has been an issue since this boolean flag
syntax was added in version 0.14.24 in 2022. These checks are
unfortunately separate from the regular argument parser because of how
esbuild's internals are organized (the command-line interface is exposed
as a separate <a
href="https://pkg.go.dev/github.com/evanw/esbuild/pkg/cli">Go API</a> so
you can build your own custom esbuild CLI).</p>
<p>This fix was contributed by <a
href="https://github.com/mxschmitt"><code>@mxschmitt</code></a>.</p>
</li>
<li>
<p>More concise output for repeated legal comments (<a
href="https://redirect.github.com/evanw/esbuild/issues/4139">#4139</a>)</p>
<p>Some libraries have many files and also use the same legal comment
text in all files. Previously esbuild would copy each legal comment to
the output file. Starting with this release, legal comments duplicated
across separate files will now be grouped in the output file by unique
comment content.</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.25.3</h2>
<ul>
<li>
<p>Fix lowered <code>async</code> arrow functions before
<code>super()</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4141">#4141</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4142">#4142</a>)</p>
<p>This change makes it possible to call an <code>async</code> arrow
function in a constructor before calling <code>super()</code> when
targeting environments without <code>async</code> support, as long as
the function body doesn't reference <code>this</code>. Here's an example
(notice the change from <code>this</code> to <code>null</code>):</p>
<pre lang="js"><code>// Original code
class Foo extends Object {
constructor() {
(async () => await foo())()
super()
}
}
<p>// Old output (with --target=es2016)<br />
class Foo extends Object {<br />
constructor() {<br />
(() => __async(this, null, function* () {<br />
return yield foo();<br />
}))();<br />
super();<br />
}<br />
}</p>
<p>// New output (with --target=es2016)<br />
class Foo extends Object {<br />
constructor() {<br />
(() => __async(null, null, function* () {<br />
return yield foo();<br />
}))();<br />
super();<br />
}<br />
}<br />
</code></pre></p>
<p>Some background: Arrow functions with the <code>async</code> keyword
are transformed into generator functions for older language targets such
as <code>--target=es2016</code>. Since arrow functions capture
<code>this</code>, the generated code forwards <code>this</code> into
the body of the generator function. However, JavaScript class syntax
forbids using <code>this</code> in a constructor before calling
<code>super()</code>, and this forwarding was problematic since
previously happened even when the function body doesn't use
<code>this</code>. Starting with this release, esbuild will now only
forward <code>this</code> if it's used within the function body.</p>
<p>This fix was contributed by <a
href="https://github.com/magic-akari"><code>@magic-akari</code></a>.</p>
</li>
<li>
<p>Fix memory leak with <code>--watch=true</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4131">#4131</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4132">#4132</a>)</p>
<p>This release fixes a memory leak with esbuild when
<code>--watch=true</code> is used instead of <code>--watch</code>.
Previously using <code>--watch=true</code> caused esbuild to continue to
use more and more memory for every rebuild, but
<code>--watch=true</code> should now behave like <code>--watch</code>
and not leak memory.</p>
<p>This bug happened because esbuild disables the garbage collector when
it's not run as a long-lived process for extra speed, but esbuild's
checks for which arguments cause esbuild to be a long-lived process
weren't updated for the new <code>--watch=true</code> style of boolean
command-line flags. This has been an issue since this boolean flag
syntax was added in version 0.14.24 in 2022. These checks are
unfortunately separate from the regular argument parser because of how
esbuild's internals are organized (the command-line interface is exposed
as a separate <a
href="https://pkg.go.dev/github.com/evanw/esbuild/pkg/cli">Go API</a> so
you can build your own custom esbuild CLI).</p>
<p>This fix was contributed by <a
href="https://github.com/mxschmitt"><code>@mxschmitt</code></a>.</p>
</li>
<li>
<p>More concise output for repeated legal comments (<a
href="https://redirect.github.com/evanw/esbuild/issues/4139">#4139</a>)</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="677910b073"><code>677910b</code></a>
publish 0.25.3 to npm</li>
<li><a
href="a41040efdb"><code>a41040e</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4110">#4110</a>:
support custom non-IP <code>host</code> values</li>
<li><a
href="dfe0e1c632"><code>dfe0e1c</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4114">#4114</a>:
add a limit to css nesting expansion</li>
<li><a
href="a54916b92c"><code>a54916b</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4139">#4139</a>:
deduplicate repeated legal comments</li>
<li><a
href="dc60e6025d"><code>dc60e60</code></a>
run <code>make update-compat-table</code></li>
<li><a
href="d917038c97"><code>d917038</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4144">#4144</a>:
node path resolution edge case</li>
<li><a
href="7ed168403b"><code>7ed1684</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4141">#4141</a>:
Avoid redundant <code>this</code> access during async function lowering
(<a
href="https://redirect.github.com/evanw/esbuild/issues/4142">#4142</a>)</li>
<li><a
href="edc3a23438"><code>edc3a23</code></a>
docs(dev): update alias command for <code>make test-go</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4113">#4113</a>)</li>
<li><a
href="1ee8b6717e"><code>1ee8b67</code></a>
workaround <code>process.exit()</code> not exiting in node</li>
<li><a
href="5c56e0737c"><code>5c56e07</code></a>
changelog note with credit for the fix</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.25.2...v0.25.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>
Bumps [@octokit/openapi](https://github.com/octokit/openapi) from 18.2.0
to 19.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/octokit/openapi/releases"><code>@octokit/openapi</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v19.0.0</h2>
<h1><a
href="https://github.com/octokit/openapi/compare/v18.2.0...v19.0.0">19.0.0</a>
(2025-04-09)</h1>
<h3>Features</h3>
<ul>
<li>new <code>/orgs/{org}/campaigns</code>,
<code>/orgs/{org}/campaigns/{campaign_number}</code> endpoints, remove
Copilot usage endpoints, description updates, remove GHES 3.12 (<a
href="https://redirect.github.com/octokit/openapi/issues/491">#491</a>)
(<a
href="709a8f01d5">709a8f0</a>)</li>
</ul>
<h3>BREAKING CHANGES</h3>
<ul>
<li>Drop GHES 3.12</li>
<li>Remove Copilot usage endpoints</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="709a8f01d5"><code>709a8f0</code></a>
feat: new <code>/orgs/{org}/campaigns</code>,
<code>/orgs/{org}/campaigns/{campaign_number}</code> ...</li>
<li><a
href="329c7ebe37"><code>329c7eb</code></a>
ci(action): update actions/create-github-app-token action to v2 (<a
href="https://redirect.github.com/octokit/openapi/issues/490">#490</a>)</li>
<li><a
href="e2e9e6ede2"><code>e2e9e6e</code></a>
ci: replace <code>OCTOKITBOT_PROJECT_ACTION_TOKEN</code> and
<code>OCTOKITBOT_PAT</code> with a tok...</li>
<li><a
href="d59338c42c"><code>d59338c</code></a>
build(deps): lock file maintenance (<a
href="https://redirect.github.com/octokit/openapi/issues/488">#488</a>)</li>
<li>See full diff in <a
href="https://github.com/octokit/openapi/compare/v18.2.0...v19.0.0">compare
view</a></li>
</ul>
</details>
<br />
[](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>
This pull request fixes the handling of permissions inputs.
- Updated `getPermissionsFromInputs` in
`lib/get-permissions-from-inputs.js` to use hyphens
(`INPUT_PERMISSION-`) instead of underscores (`INPUT_PERMISSION_`) in
input keys, added a check to skip empty values, and clarified behavior
when no permissions are set.
- Added a `shouldRetry` function to retry requests when server errors
(HTTP status 500 or higher) occur in the `main` function in
`lib/main.js` to prevent unnecessary retries.
- Updated test cases in `tests/main-token-permissions-set.test.js` to
match the new input key format with hyphens.
- Added a default empty string for unset inputs (e.g.,
`INPUT_PERMISSION-ADMINISTRATION`) in `tests/main.js` to simulate the
behavior of the Actions runner.
- Updated snapshots in `tests/snapshots/index.js.md` to reflect the
updated hyphenated input keys in permissions.
---------
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
This PR switches from evaluating values passed to `skip-token-revoke` as
true if they are truthy in JavaScript, to using `getBooleanInput`. This
change ensures that only proper YAML boolean values are recognized,
preventing unintended evaluations to true.
- The definition of `getBooleanInput` is here: definition of
`core#getBooealnInput` is here:
930c890727/packages/core/src/core.ts (L188-L208)
The documentation states, `"If truthy, the token will not be revoked
when the current job is complete"`, so this change could be considered a
breaking change. This means that if there are users who rely on `truthy`
and expect values like whitespace or `"false"` to be evaluated as true
(though this is likely rare), it would be a breaking change.
- `Boolean(" ")` and `Boolean("false")` are both evaluated as true.
Alternatively, it can simply be considered a fix. How to handle this is
up to the maintainer.
Resolves https://github.com/actions/create-github-app-token/issues/216
BREAKING CHANGE: Removed deprecated inputs (`app_id`, `private_key`, `skip_token_revoke`) and made `app-id` and `private-key` required in the action configuration.
This pull request updates the release configuration to include
package-lock.json. This should ensure the action version is update in
package-lock.json when the release workflow runs.
It seems that there is an unused badge in this repository. This badge
was introduced in
https://github.com/actions/create-github-app-token/pull/70, but after
some trial and error, it was removed from the README
(f28f8958a7
in the PR). However, the badge itself was not deleted.
Therefore, this badge appears to be unnecessary. This patch removes it.
- Load `app-permissions` from schema exported by `@octokit/openapi`
- Update documentation in README.md
- Implement the `permissions_*` inputs in the action code
---------
Co-authored-by: Parker Brown <17183625+parkerbxyz@users.noreply.github.com>
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.24.2 to 0.25.0.
<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.25.0</h2>
<p><strong>This release deliberately contains backwards-incompatible
changes.</strong> To avoid automatically picking up releases like this,
you should either be pinning the exact version of <code>esbuild</code>
in your <code>package.json</code> file (recommended) or be using a
version range syntax that only accepts patch upgrades such as
<code>^0.24.0</code> or <code>~0.24.0</code>. See npm's documentation
about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<ul>
<li>
<p>Restrict access to esbuild's development server (<a
href="https://github.com/evanw/esbuild/security/advisories/GHSA-67mh-4wv8-2f99">GHSA-67mh-4wv8-2f99</a>)</p>
<p>This change addresses esbuild's first security vulnerability report.
Previously esbuild set the <code>Access-Control-Allow-Origin</code>
header to <code>*</code> to allow esbuild's development server to be
flexible in how it's used for development. However, this allows the
websites you visit to make HTTP requests to esbuild's local development
server, which gives read-only access to your source code if the website
were to fetch your source code's specific URL. You can read more
information in <a
href="https://github.com/evanw/esbuild/security/advisories/GHSA-67mh-4wv8-2f99">the
report</a>.</p>
<p>Starting with this release, <a
href="https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS">CORS</a>
will now be disabled, and requests will now be denied if the host does
not match the one provided to <code>--serve=</code>. The default host is
<code>0.0.0.0</code>, which refers to all of the IP addresses that
represent the local machine (e.g. both <code>127.0.0.1</code> and
<code>192.168.0.1</code>). If you want to customize anything about
esbuild's development server, you can <a
href="https://esbuild.github.io/api/#serve-proxy">put a proxy in front
of esbuild</a> and modify the incoming and/or outgoing requests.</p>
<p>In addition, the <code>serve()</code> API call has been changed to
return an array of <code>hosts</code> instead of a single
<code>host</code> string. This makes it possible to determine all of the
hosts that esbuild's development server will accept.</p>
<p>Thanks to <a
href="https://github.com/sapphi-red"><code>@sapphi-red</code></a> for
reporting this issue.</p>
</li>
<li>
<p>Delete output files when a build fails in watch mode (<a
href="https://redirect.github.com/evanw/esbuild/issues/3643">#3643</a>)</p>
<p>It has been requested for esbuild to delete files when a build fails
in watch mode. Previously esbuild left the old files in place, which
could cause people to not immediately realize that the most recent build
failed. With this release, esbuild will now delete all output files if a
rebuild fails. Fixing the build error and triggering another rebuild
will restore all output files again.</p>
</li>
<li>
<p>Fix correctness issues with the CSS nesting transform (<a
href="https://redirect.github.com/evanw/esbuild/issues/3620">#3620</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3877">#3877</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3933">#3933</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3997">#3997</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4005">#4005</a>,
<a href="https://redirect.github.com/evanw/esbuild/pull/4037">#4037</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4038">#4038</a>)</p>
<p>This release fixes the following problems:</p>
<ul>
<li>
<p>Naive expansion of CSS nesting can result in an exponential blow-up
of generated CSS if each nesting level has multiple selectors.
Previously esbuild sometimes collapsed individual nesting levels using
<code>:is()</code> to limit expansion. However, this collapsing wasn't
correct in some cases, so it has been removed to fix correctness
issues.</p>
<pre lang="css"><code>/* Original code */
.parent {
> .a,
> .b1 > .b2 {
color: red;
}
}
<p>/* Old output (with --supported:nesting=false) */<br />
.parent > :is(.a, .b1 > .b2) {<br />
color: red;<br />
}</p>
<p>/* New output (with --supported:nesting=false) */<br />
.parent > .a,<br />
.parent > .b1 > .b2 {<br />
color: red;<br />
}<br />
</code></pre></p>
<p>Thanks to <a
href="https://github.com/tim-we"><code>@tim-we</code></a> for working
on a fix.</p>
</li>
<li>
<p>The <code>&</code> CSS nesting selector can be repeated multiple
times to increase CSS specificity. Previously esbuild ignored this
possibility and incorrectly considered <code>&&</code> to have
the same specificity as <code>&</code>. With this release, this
should now work correctly:</p>
<pre lang="css"><code>/* Original code (color should be red) */
</code></pre>
</li>
</ul>
</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-2024.md">esbuild's
changelog</a>.</em></p>
<blockquote>
<h1>Changelog: 2024</h1>
<p>This changelog documents all esbuild versions published in the year
2024 (versions 0.19.12 through 0.24.2).</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e9174d671b"><code>e9174d6</code></a>
publish 0.25.0 to npm</li>
<li><a
href="c27dbebb9e"><code>c27dbeb</code></a>
fix <code>hosts</code> in <code>plugin-tests.js</code></li>
<li><a
href="6794f602a4"><code>6794f60</code></a>
fix <code>hosts</code> in <code>node-unref-tests.js</code></li>
<li><a
href="de85afd65e"><code>de85afd</code></a>
Merge commit from fork</li>
<li><a
href="da1de1bf77"><code>da1de1b</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4065">#4065</a>:
bitwise operators can return bigints</li>
<li><a
href="f4e9d19fb2"><code>f4e9d19</code></a>
switch case liveness: <code>default</code> is always last</li>
<li><a
href="7aa47c3e77"><code>7aa47c3</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4028">#4028</a>:
minify live/dead <code>switch</code> cases better</li>
<li><a
href="22ecd30619"><code>22ecd30</code></a>
minify: more constant folding for strict equality</li>
<li><a
href="4cdf03c036"><code>4cdf03c</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4053">#4053</a>:
reordering of <code>.tsx</code> in <code>node_modules</code></li>
<li><a
href="dc719775b7"><code>dc71977</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3692">#3692</a>:
<code>0</code> now picks a random ephemeral port</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.24.2...v0.25.0">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Bumps the production-dependencies group with 1 update:
[@octokit/request](https://github.com/octokit/request.js).
Updates `@octokit/request` from 9.1.3 to 9.1.4
<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>v9.1.4</h2>
<h2><a
href="https://github.com/octokit/request.js/compare/v9.1.3...v9.1.4">9.1.4</a>
(2024-12-29)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> bump <code>@octokit/types</code> to fix deno
compat (<a
href="https://redirect.github.com/octokit/request.js/issues/730">#730</a>)
(<a
href="324ffef20c">324ffef</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="324ffef20c"><code>324ffef</code></a>
fix(deps): bump <code>@octokit/types</code> to fix deno compat (<a
href="https://redirect.github.com/octokit/request.js/issues/730">#730</a>)</li>
<li><a
href="70bf3e2c0e"><code>70bf3e2</code></a>
chore(deps): update dependency prettier to v3.4.2 (<a
href="https://redirect.github.com/octokit/request.js/issues/729">#729</a>)</li>
<li><a
href="ce1ad0ac35"><code>ce1ad0a</code></a>
chore(deps): update dependency prettier to v3.4.1 (<a
href="https://redirect.github.com/octokit/request.js/issues/727">#727</a>)</li>
<li><a
href="b92657632a"><code>b926576</code></a>
chore(deps): update dependency prettier to v3.4.0 (<a
href="https://redirect.github.com/octokit/request.js/issues/726">#726</a>)</li>
<li><a
href="2baa69ba6d"><code>2baa69b</code></a>
chore(deps): update dependency fetch-mock to v12 (<a
href="https://redirect.github.com/octokit/request.js/issues/723">#723</a>)</li>
<li><a
href="1ffa99bc99"><code>1ffa99b</code></a>
chore(deps): update dependency <code>@types/node</code> to v22 (<a
href="https://redirect.github.com/octokit/request.js/issues/724">#724</a>)</li>
<li><a
href="c9269b065a"><code>c9269b0</code></a>
ci run build (<a
href="https://redirect.github.com/octokit/request.js/issues/722">#722</a>)</li>
<li><a
href="439dc38a32"><code>439dc38</code></a>
chore(deps): update dependency <code>@octokit/tsconfig</code> to v4 (<a
href="https://redirect.github.com/octokit/request.js/issues/721">#721</a>)</li>
<li><a
href="bbc206c7dc"><code>bbc206c</code></a>
build(deps): bump rollup from 4.21.3 to 4.22.4 (<a
href="https://redirect.github.com/octokit/request.js/issues/720">#720</a>)</li>
<li><a
href="a2787540e1"><code>a278754</code></a>
chore(deps): update dependency esbuild to ^0.24.0 (<a
href="https://redirect.github.com/octokit/request.js/issues/719">#719</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/octokit/request.js/compare/v9.1.3...v9.1.4">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
Bumps [@sinonjs/fake-timers](https://github.com/sinonjs/fake-timers)
from 13.0.2 to 14.0.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/sinonjs/fake-timers/blob/main/CHANGELOG.md"><code>@sinonjs/fake-timers</code>'s
changelog</a>.</em></p>
<blockquote>
<h1>14.0.0 / 2024-12-09</h1>
<ul>
<li>breaking: Drop Node 16, use Node 22 LTS and update tests to handle
the new Navigation API (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/519">#519</a>)</li>
<li>fix: Resilient to prototype pollution of Intl (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/517">#517</a>)</li>
<li>fix: return fake version for <code>performance.timeOrigin</code> (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/515">#515</a>)</li>
</ul>
<h1>13.0.5 / 2024-10-28</h1>
<ul>
<li>Ensure checks based Object.keys length pass for fake Dates (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/513">#513</a>)</li>
</ul>
<h1>13.0.4 / 2024-10-22</h1>
<ul>
<li>Fix constructor-based checks for fake Date no longer pass after
installing (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/512">#512</a>)
(patches the patch)</li>
</ul>
<h1>13.0.3 / 2024-10-17</h1>
<ul>
<li>Ensure checks based on the constructor property passes for fake
Dates (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/511">#511</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="48f089fdc8"><code>48f089f</code></a>
14.0.0</li>
<li><a
href="12b7b21ee1"><code>12b7b21</code></a>
Updated release files for 14.0.0</li>
<li><a
href="4516b5abfb"><code>4516b5a</code></a>
Use Node 22 LTS and update tests to handle the new Navigation API (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/519">#519</a>)</li>
<li><a
href="656733c091"><code>656733c</code></a>
fix: Resilient to prototype pollution of Intl (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/517">#517</a>)</li>
<li><a
href="ff8d907199"><code>ff8d907</code></a>
fix: return fake version for <code>performance.timeOrigin</code> (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/515">#515</a>)</li>
<li><a
href="7861c930e8"><code>7861c93</code></a>
13.0.5</li>
<li><a
href="edbb45f2b1"><code>edbb45f</code></a>
Updated release files for 13.0.5</li>
<li><a
href="754d7856ec"><code>754d785</code></a>
Ensure checks based Object.keys length pass for fake Dates (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/513">#513</a>)</li>
<li><a
href="77a516cd61"><code>77a516c</code></a>
13.0.4</li>
<li><a
href="711b98e926"><code>711b98e</code></a>
Updated release files for 13.0.4</li>
<li>Additional commits viewable in <a
href="https://github.com/sinonjs/fake-timers/compare/v13.0.2...v14.0.0">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
Bumps the development-dependencies group with 2 updates:
[esbuild](https://github.com/evanw/esbuild) and
[yaml](https://github.com/eemeli/yaml).
Updates `esbuild` from 0.24.0 to 0.24.2
<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.24.2</h2>
<ul>
<li>
<p>Fix regression with <code>--define</code> and
<code>import.meta</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4010">#4010</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4012">#4012</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4013">#4013</a>)</p>
<p>The previous change in version 0.24.1 to use a more expression-like
parser for <code>define</code> values to allow quoted property names
introduced a regression that removed the ability to use
<code>--define:import.meta=...</code>. Even though <code>import</code>
is normally a keyword that can't be used as an identifier, ES modules
special-case the <code>import.meta</code> expression to behave like an
identifier anyway. This change fixes the regression.</p>
<p>This fix was contributed by <a
href="https://github.com/sapphi-red"><code>@sapphi-red</code></a>.</p>
</li>
</ul>
<h2>v0.24.1</h2>
<ul>
<li>
<p>Allow <code>es2024</code> as a target in <code>tsconfig.json</code>
(<a
href="https://redirect.github.com/evanw/esbuild/issues/4004">#4004</a>)</p>
<p>TypeScript recently <a
href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-7/#support-for---target-es2024-and---lib-es2024">added
<code>es2024</code></a> as a compilation target, so esbuild now supports
this in the <code>target</code> field of <code>tsconfig.json</code>
files, such as in the following configuration file:</p>
<pre lang="json"><code>{
"compilerOptions": {
"target": "ES2024"
}
}
</code></pre>
<p>As a reminder, the only thing that esbuild uses this field for is
determining whether or not to use legacy TypeScript behavior for class
fields. You can read more in <a
href="https://esbuild.github.io/content-types/#tsconfig-json">the
documentation</a>.</p>
<p>This fix was contributed by <a
href="https://github.com/billyjanitsch"><code>@billyjanitsch</code></a>.</p>
</li>
<li>
<p>Allow automatic semicolon insertion after
<code>get</code>/<code>set</code></p>
<p>This change fixes a grammar bug in the parser that incorrectly
treated the following code as a syntax error:</p>
<pre lang="ts"><code>class Foo {
get
*x() {}
set
*y() {}
}
</code></pre>
<p>The above code will be considered valid starting with this release.
This change to esbuild follows a <a
href="https://redirect.github.com/microsoft/TypeScript/pull/60225">similar
change to TypeScript</a> which will allow this syntax starting with
TypeScript 5.7.</p>
</li>
<li>
<p>Allow quoted property names in <code>--define</code> and
<code>--pure</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4008">#4008</a>)</p>
<p>The <code>define</code> and <code>pure</code> API options now accept
identifier expressions containing quoted property names. Previously all
identifiers in the identifier expression had to be bare identifiers.
This change now makes <code>--define</code> and <code>--pure</code>
consistent with <code>--global-name</code>, which already supported
quoted property names. For example, the following is now possible:</p>
<pre lang="js"><code>// The following code now transforms to
"return true;\n"
console.log(esbuild.transformSync(
`return process.env['SOME-TEST-VAR']`,
{ define: { 'process.env["SOME-TEST-VAR"]': 'true' } },
))
</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.24.2</h2>
<ul>
<li>
<p>Fix regression with <code>--define</code> and
<code>import.meta</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4010">#4010</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/4012">#4012</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/4013">#4013</a>)</p>
<p>The previous change in version 0.24.1 to use a more expression-like
parser for <code>define</code> values to allow quoted property names
introduced a regression that removed the ability to use
<code>--define:import.meta=...</code>. Even though <code>import</code>
is normally a keyword that can't be used as an identifier, ES modules
special-case the <code>import.meta</code> expression to behave like an
identifier anyway. This change fixes the regression.</p>
<p>This fix was contributed by <a
href="https://github.com/sapphi-red"><code>@sapphi-red</code></a>.</p>
</li>
</ul>
<h2>0.24.1</h2>
<ul>
<li>
<p>Allow <code>es2024</code> as a target in <code>tsconfig.json</code>
(<a
href="https://redirect.github.com/evanw/esbuild/issues/4004">#4004</a>)</p>
<p>TypeScript recently <a
href="https://devblogs.microsoft.com/typescript/announcing-typescript-5-7/#support-for---target-es2024-and---lib-es2024">added
<code>es2024</code></a> as a compilation target, so esbuild now supports
this in the <code>target</code> field of <code>tsconfig.json</code>
files, such as in the following configuration file:</p>
<pre lang="json"><code>{
"compilerOptions": {
"target": "ES2024"
}
}
</code></pre>
<p>As a reminder, the only thing that esbuild uses this field for is
determining whether or not to use legacy TypeScript behavior for class
fields. You can read more in <a
href="https://esbuild.github.io/content-types/#tsconfig-json">the
documentation</a>.</p>
<p>This fix was contributed by <a
href="https://github.com/billyjanitsch"><code>@billyjanitsch</code></a>.</p>
</li>
<li>
<p>Allow automatic semicolon insertion after
<code>get</code>/<code>set</code></p>
<p>This change fixes a grammar bug in the parser that incorrectly
treated the following code as a syntax error:</p>
<pre lang="ts"><code>class Foo {
get
*x() {}
set
*y() {}
}
</code></pre>
<p>The above code will be considered valid starting with this release.
This change to esbuild follows a <a
href="https://redirect.github.com/microsoft/TypeScript/pull/60225">similar
change to TypeScript</a> which will allow this syntax starting with
TypeScript 5.7.</p>
</li>
<li>
<p>Allow quoted property names in <code>--define</code> and
<code>--pure</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/4008">#4008</a>)</p>
<p>The <code>define</code> and <code>pure</code> API options now accept
identifier expressions containing quoted property names. Previously all
identifiers in the identifier expression had to be bare identifiers.
This change now makes <code>--define</code> and <code>--pure</code>
consistent with <code>--global-name</code>, which already supported
quoted property names. For example, the following is now possible:</p>
<pre lang="js"><code>// The following code now transforms to
"return true;\n"
console.log(esbuild.transformSync(
`return process.env['SOME-TEST-VAR']`,
{ define: { 'process.env["SOME-TEST-VAR"]': 'true' } },
</code></pre>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="745abd9f0c"><code>745abd9</code></a>
publish 0.24.2 to npm</li>
<li><a
href="79fd0b0ccc"><code>79fd0b0</code></a>
skip nulls in source map finalization (<a
href="https://redirect.github.com/evanw/esbuild/issues/4011">#4011</a>)</li>
<li><a
href="4b9322f723"><code>4b9322f</code></a>
source map: avoid null entry for 0-length parts</li>
<li><a
href="199a0d38e4"><code>199a0d3</code></a>
close <a
href="https://redirect.github.com/evanw/esbuild/issues/4013">#4013</a>:
credit to <a
href="https://github.com/sapphi-red"><code>@sapphi-red</code></a> for
the fix</li>
<li><a
href="947f99fb08"><code>947f99f</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4010">#4010</a>,
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/4012">#4012</a>:
<code>import.meta</code> regression</li>
<li><a
href="de9598f42d"><code>de9598f</code></a>
publish 0.24.1 to npm</li>
<li><a
href="15d56ca7d2"><code>15d56ca</code></a>
emit null source mappings for empty chunk content</li>
<li><a
href="8d98f6f6e6"><code>8d98f6f</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3985">#3985</a>:
<code>entryPoint</code> metadata for <code>copy</code> loader</li>
<li><a
href="0db1b828bf"><code>0db1b82</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3998">#3998</a>:
avoid <code>outbase</code> in identifier names</li>
<li><a
href="723647263f"><code>7236472</code></a>
close <a
href="https://redirect.github.com/evanw/esbuild/issues/3974">#3974</a>:
add support for netbsd on arm64</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.24.0...v0.24.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `yaml` from 2.6.1 to 2.7.0
<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.7.0</h2>
<p>The library is now available on JSR as <a
href="https://jsr.io/@eemeli/yaml"><code>@eemeli/yaml</code></a> and on
deno.land/x as <a href="https://deno.land/x/yaml">yaml</a>. In addition
to Node.js and browsers, it should work in Deno, Bun, and Cloudflare
Workers.</p>
<ul>
<li>Use .ts extension in all relative imports (<a
href="https://redirect.github.com/eemeli/yaml/issues/591">#591</a>)</li>
<li>Ignore newline after block seq indicator as space before value (<a
href="https://redirect.github.com/eemeli/yaml/issues/590">#590</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8f512b526a"><code>8f512b5</code></a>
2.7.0</li>
<li><a
href="8a7569afff"><code>8a7569a</code></a>
ci: Add jsr.jsonc & jsr-publish workflow</li>
<li><a
href="8ef085fa87"><code>8ef085f</code></a>
docs: Fix API docs links</li>
<li><a
href="374c19cfdc"><code>374c19c</code></a>
style: Really use explicit imports for process.env and Buffer</li>
<li><a
href="1ab037d646"><code>1ab037d</code></a>
style: Include explicit type declarations on all public APIs</li>
<li><a
href="4354c4233d"><code>4354c42</code></a>
style: Use explicit imports for process.env and Buffer</li>
<li><a
href="2c55723ab9"><code>2c55723</code></a>
Merge pull request <a
href="https://redirect.github.com/eemeli/yaml/issues/591">#591</a> from
eemeli/import-ts</li>
<li><a
href="ab240c17d3"><code>ab240c1</code></a>
fix: Drop .ts extension from import & export paths in .d.ts
files</li>
<li><a
href="c4c49f9e95"><code>c4c49f9</code></a>
fix: Use separate rather than inline type keyword for TS
compatibility</li>
<li><a
href="3bec004db4"><code>3bec004</code></a>
ci: Add deno smoke test</li>
<li>Additional commits viewable in <a
href="https://github.com/eemeli/yaml/compare/v2.6.1...v2.7.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>
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
### Fix syntax error in GitHub Actions example in README
This PR fixes a syntax error in the "Create a git committer string for
an app installation" example in the README file.
#### What was wrong?
The example contained an incorrect space in the variable syntax:
```yaml
${ {steps.committer.outputs.string }}
```
This caused the example to fail, as GitHub Actions does not allow spaces
in variable interpolation.
#### What was fixed?
The syntax was corrected to:
```yaml
${{ steps.committer.outputs.string }}
```
This fix ensures that users can copy and use the example without
encountering any errors.
Combines the two installation requests (org and user) into one because
`/org/{org}` can also be accessed at `/users/{org}`.
---------
Co-authored-by: Gregor Martynus <39992+gr2m@users.noreply.github.com>
Bumps the development-dependencies group with 3 updates:
[@sinonjs/fake-timers](https://github.com/sinonjs/fake-timers),
[esbuild](https://github.com/evanw/esbuild) and
[execa](https://github.com/sindresorhus/execa).
Updates `@sinonjs/fake-timers` from 13.0.1 to 13.0.2
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/sinonjs/fake-timers/blob/main/CHANGELOG.md"><code>@sinonjs/fake-timers</code>'s
changelog</a>.</em></p>
<blockquote>
<h1>13.0.2 / 2024-09-13</h1>
<ul>
<li>fix <a
href="https://redirect.github.com/sinonjs/fake-timers/issues/504">#504</a>:
make instances of original Date pass as instances of the fake Date (<a
href="https://redirect.github.com/sinonjs/fake-timers/issues/505">#505</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="78024200ae"><code>7802420</code></a>
13.0.2</li>
<li><a
href="b98dc757d9"><code>b98dc75</code></a>
Updated release files for 13.0.2</li>
<li><a
href="ae0a2665c6"><code>ae0a266</code></a>
fix <a
href="https://redirect.github.com/sinonjs/fake-timers/issues/504">#504</a>:
make instances of original Date pass as instances of the fake Date
...</li>
<li>See full diff in <a
href="https://github.com/sinonjs/fake-timers/compare/v13.0.1...v13.0.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `esbuild` from 0.23.1 to 0.24.0
<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.24.0</h2>
<p><strong><em>This release deliberately contains backwards-incompatible
changes.</em></strong> To avoid automatically picking up releases like
this, you should either be pinning the exact version of
<code>esbuild</code> in your <code>package.json</code> file
(recommended) or be using a version range syntax that only accepts patch
upgrades such as <code>^0.23.0</code> or <code>~0.23.0</code>. See npm's
documentation about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<ul>
<li>
<p>Drop support for older platforms (<a
href="https://redirect.github.com/evanw/esbuild/pull/3902">#3902</a>)</p>
<p>This release drops support for the following operating system:</p>
<ul>
<li>macOS 10.15 Catalina</li>
</ul>
<p>This is because the Go programming language dropped support for this
operating system version in Go 1.23, and this release updates esbuild
from Go 1.22 to Go 1.23. Go 1.23 now requires macOS 11 Big Sur or
later.</p>
<p>Note that this only affects the binary esbuild executables that are
published to the esbuild npm package. It's still possible to compile
esbuild's source code for these older operating systems. If you need to,
you can compile esbuild for yourself using an older version of the Go
compiler (before Go version 1.23). That might look something like
this:</p>
<pre><code>git clone https://github.com/evanw/esbuild.git
cd esbuild
go build ./cmd/esbuild
./esbuild --version
</code></pre>
</li>
<li>
<p>Fix class field decorators in TypeScript if
<code>useDefineForClassFields</code> is <code>false</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3913">#3913</a>)</p>
<p>Setting the <code>useDefineForClassFields</code> flag to
<code>false</code> in <code>tsconfig.json</code> means class fields use
the legacy TypeScript behavior instead of the standard JavaScript
behavior. Specifically they use assign semantics instead of define
semantics (e.g. setters are triggered) and fields without an initializer
are not initialized at all. However, when this legacy behavior is
combined with standard JavaScript decorators, TypeScript switches to
always initializing all fields, even those without initializers.
Previously esbuild incorrectly continued to omit field initializers for
this edge case. These field initializers in this case should now be
emitted starting with this release.</p>
</li>
<li>
<p>Avoid incorrect cycle warning with <code>tsconfig.json</code>
multiple inheritance (<a
href="https://redirect.github.com/evanw/esbuild/issues/3898">#3898</a>)</p>
<p>TypeScript 5.0 introduced multiple inheritance for
<code>tsconfig.json</code> files where <code>extends</code> can be an
array of file paths. Previously esbuild would incorrectly treat files
encountered more than once when processing separate subtrees of the
multiple inheritance hierarchy as an inheritance cycle. With this
release, <code>tsconfig.json</code> files containing this edge case
should work correctly without generating a warning.</p>
</li>
<li>
<p>Handle Yarn Plug'n'Play stack overflow with
<code>tsconfig.json</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3915">#3915</a>)</p>
<p>Previously a <code>tsconfig.json</code> file that
<code>extends</code> another file in a package with an
<code>exports</code> map could cause a stack overflow when Yarn's
Plug'n'Play resolution was active. This edge case should work now
starting with this release.</p>
</li>
<li>
<p>Work around more issues with Deno 1.31+ (<a
href="https://redirect.github.com/evanw/esbuild/pull/3917">#3917</a>)</p>
<p>This version of Deno broke the <code>stdin</code> and
<code>stdout</code> properties on command objects for inherited streams,
which matters when you run esbuild's Deno module as the entry point
(i.e. when <code>import.meta.main</code> is <code>true</code>).
Previously esbuild would crash in Deno 1.31+ if you ran esbuild like
that. This should be fixed starting with this release.</p>
<p>This fix was contributed by <a
href="https://github.com/Joshix-1"><code>@Joshix-1</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.24.0</h2>
<p><strong><em>This release deliberately contains backwards-incompatible
changes.</em></strong> To avoid automatically picking up releases like
this, you should either be pinning the exact version of
<code>esbuild</code> in your <code>package.json</code> file
(recommended) or be using a version range syntax that only accepts patch
upgrades such as <code>^0.23.0</code> or <code>~0.23.0</code>. See npm's
documentation about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<ul>
<li>
<p>Drop support for older platforms (<a
href="https://redirect.github.com/evanw/esbuild/pull/3902">#3902</a>)</p>
<p>This release drops support for the following operating system:</p>
<ul>
<li>macOS 10.15 Catalina</li>
</ul>
<p>This is because the Go programming language dropped support for this
operating system version in Go 1.23, and this release updates esbuild
from Go 1.22 to Go 1.23. Go 1.23 now requires macOS 11 Big Sur or
later.</p>
<p>Note that this only affects the binary esbuild executables that are
published to the esbuild npm package. It's still possible to compile
esbuild's source code for these older operating systems. If you need to,
you can compile esbuild for yourself using an older version of the Go
compiler (before Go version 1.23). That might look something like
this:</p>
<pre><code>git clone https://github.com/evanw/esbuild.git
cd esbuild
go build ./cmd/esbuild
./esbuild --version
</code></pre>
</li>
<li>
<p>Fix class field decorators in TypeScript if
<code>useDefineForClassFields</code> is <code>false</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3913">#3913</a>)</p>
<p>Setting the <code>useDefineForClassFields</code> flag to
<code>false</code> in <code>tsconfig.json</code> means class fields use
the legacy TypeScript behavior instead of the standard JavaScript
behavior. Specifically they use assign semantics instead of define
semantics (e.g. setters are triggered) and fields without an initializer
are not initialized at all. However, when this legacy behavior is
combined with standard JavaScript decorators, TypeScript switches to
always initializing all fields, even those without initializers.
Previously esbuild incorrectly continued to omit field initializers for
this edge case. These field initializers in this case should now be
emitted starting with this release.</p>
</li>
<li>
<p>Avoid incorrect cycle warning with <code>tsconfig.json</code>
multiple inheritance (<a
href="https://redirect.github.com/evanw/esbuild/issues/3898">#3898</a>)</p>
<p>TypeScript 5.0 introduced multiple inheritance for
<code>tsconfig.json</code> files where <code>extends</code> can be an
array of file paths. Previously esbuild would incorrectly treat files
encountered more than once when processing separate subtrees of the
multiple inheritance hierarchy as an inheritance cycle. With this
release, <code>tsconfig.json</code> files containing this edge case
should work correctly without generating a warning.</p>
</li>
<li>
<p>Handle Yarn Plug'n'Play stack overflow with
<code>tsconfig.json</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3915">#3915</a>)</p>
<p>Previously a <code>tsconfig.json</code> file that
<code>extends</code> another file in a package with an
<code>exports</code> map could cause a stack overflow when Yarn's
Plug'n'Play resolution was active. This edge case should work now
starting with this release.</p>
</li>
<li>
<p>Work around more issues with Deno 1.31+ (<a
href="https://redirect.github.com/evanw/esbuild/pull/3917">#3917</a>)</p>
<p>This version of Deno broke the <code>stdin</code> and
<code>stdout</code> properties on command objects for inherited streams,
which matters when you run esbuild's Deno module as the entry point
(i.e. when <code>import.meta.main</code> is <code>true</code>).
Previously esbuild would crash in Deno 1.31+ if you ran esbuild like
that. This should be fixed starting with this release.</p>
<p>This fix was contributed by <a
href="https://github.com/Joshix-1"><code>@Joshix-1</code></a>.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d34e79e2a9"><code>d34e79e</code></a>
publish 0.24.0 to npm</li>
<li><a
href="045a87f164"><code>045a87f</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3887">#3887</a>:
omit dead export warning for <code>default</code></li>
<li><a
href="6e049b81d2"><code>6e049b8</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3913">#3913</a>:
useDefineForClassFields and decorators</li>
<li><a
href="9c26f987dd"><code>9c26f98</code></a>
lower decorators for useDefineForClassFields <a
href="https://redirect.github.com/evanw/esbuild/issues/3913">#3913</a></li>
<li><a
href="46fdb686e2"><code>46fdb68</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3898">#3898</a>:
incorrect cyclic tsconfig.json warning</li>
<li><a
href="b50044303b"><code>b500443</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3917">#3917</a>:
running esbuild cli with deno</li>
<li><a
href="b125e62c70"><code>b125e62</code></a>
run <code>make update-compat-table</code></li>
<li><a
href="112b9aa32e"><code>112b9aa</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3915">#3915</a>:
stack overflow with yarn + tsconfig</li>
<li><a
href="ed5a555488"><code>ed5a555</code></a>
wasm: catch and rethrow stack overflows (<a
href="https://redirect.github.com/evanw/esbuild/issues/3915">#3915</a>)</li>
<li><a
href="11d3196156"><code>11d3196</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3902">#3902</a>:
update go 1.22.5 => 1.23.1</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.23.1...v0.24.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `execa` from 9.3.1 to 9.4.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sindresorhus/execa/releases">execa's
releases</a>.</em></p>
<blockquote>
<h2>v9.4.0</h2>
<h2>Features</h2>
<ul>
<li>We've created a separate package called <a
href="https://github.com/sindresorhus/nano-spawn">nano-spawn</a>. It is
similar to Execa but with fewer features, for a much smaller package
size. <a
href="https://github.com/sindresorhus/execa/blob/main/docs/small.md">More
info.</a></li>
</ul>
<h2>Bug fixes</h2>
<ul>
<li>Both <a
href="https://github.com/sindresorhus/execa/blob/main/docs/node.md"><code>execaNode()</code></a>
and the <a
href="https://github.com/sindresorhus/execa/blob/main/docs/environment.md#local-binaries"><code>preferLocal</code></a>
option modify the <code>PATH</code> environment variable. This release
includes some minor improvements to ensure that environment variable
remains small (<a
href="https://redirect.github.com/sindresorhus/npm-run-path/pull/20">sindresorhus/npm-run-path#20</a>).
It also handles a few related edge cases better (<a
href="https://redirect.github.com/sindresorhus/npm-run-path/pull/21">sindresorhus/npm-run-path#21</a>).</li>
</ul>
<h2>Documentation</h2>
<ul>
<li>Small documentation typo fix, thanks <a
href="https://github.com/rrthomas"><code>@rrthomas</code></a>! (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1153">#1153</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1b9b9bbf17"><code>1b9b9bb</code></a>
9.4.0</li>
<li><a
href="ba483e74ad"><code>ba483e7</code></a>
Upgrade <code>npm-run-path</code> (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1156">#1156</a>)</li>
<li><a
href="eb3cfbac90"><code>eb3cfba</code></a>
Add documentation about nano-spawn (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1157">#1157</a>)</li>
<li><a
href="3fc804916d"><code>3fc8049</code></a>
Fix a typo (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1153">#1153</a>)</li>
<li><a
href="c4cb62a463"><code>c4cb62a</code></a>
Improve documentation for <code>windowsVerbatimArguments</code> (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1149">#1149</a>)</li>
<li>See full diff in <a
href="https://github.com/sindresorhus/execa/compare/v9.3.1...v9.4.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>
This workflow file publishes new action releases to the immutable action package of the same name as this repo.
---------
Co-authored-by: Parker Brown <17183625+parkerbxyz@users.noreply.github.com>
Resolves https://github.com/actions/create-github-app-token/issues/106
- Fixes the parsing to cope with whitespace in the input string.
- Allows the input to be comma or newline-separated. (I've done this for
all array-type inputs in my own actions, but I'm happy to remove this if
you only want to support comma-separated.)
- Added tests for parsing comma and newline-separated inputs.
This pull request fixes the file extension for two test files that were
incorrectly named. This caused them not to be tested. A new test has
been added to ensure all test files have the correct extension.
This also fixes a bug in some tests where `repositories` inputs included
the repository owner. The owner has been removed from these inputs and
the snapshots have been updated.
Bumps the development-dependencies group with 4 updates:
[c8](https://github.com/bcoe/c8),
[esbuild](https://github.com/evanw/esbuild),
[execa](https://github.com/sindresorhus/execa) and
[yaml](https://github.com/eemeli/yaml).
Updates `c8` from 9.1.0 to 10.1.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/bcoe/c8/releases">c8's
releases</a>.</em></p>
<blockquote>
<h2>v10.1.2</h2>
<h2><a
href="https://github.com/bcoe/c8/compare/v10.1.1...v10.1.2">10.1.2</a>
(2024-06-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> make monocart-coverage-reports an optional
with meta defined (<a
href="3b91fdaa0e">3b91fda</a>)</li>
</ul>
<h2>v10.1.1</h2>
<h2><a
href="https://github.com/bcoe/c8/compare/v10.1.0...v10.1.1">10.1.1</a>
(2024-06-11)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>stop installing monocart-coverage-reports (<a
href="https://redirect.github.com/bcoe/c8/issues/535">#535</a>) (<a
href="13979a76b5">13979a7</a>)</li>
</ul>
<h2>v10.1.0</h2>
<h2><a
href="https://github.com/bcoe/c8/compare/v10.0.0...v10.1.0">10.1.0</a>
(2024-06-11)</h2>
<h3>Features</h3>
<ul>
<li>add experimental monocart reports (<a
href="https://redirect.github.com/bcoe/c8/issues/521">#521</a>) (<a
href="2e5e297ac0">2e5e297</a>)</li>
</ul>
<h2>v10.0.0</h2>
<h2><a
href="https://github.com/bcoe/c8/compare/v9.1.0...v10.0.0">10.0.0</a>
(2024-06-10)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<ul>
<li><strong>deps:</strong> Node 18 is now the minimum supported Node.js
version</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> update test-exclude with new glob / minimatch
(<a href="https://redirect.github.com/bcoe/c8/issues/531">#531</a>) (<a
href="e33cf30d0c">e33cf30</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/bcoe/c8/blob/main/CHANGELOG.md">c8's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/bcoe/c8/compare/v10.1.1...v10.1.2">10.1.2</a>
(2024-06-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> make monocart-coverage-reports an optional
with meta defined (<a
href="3b91fdaa0e">3b91fda</a>)</li>
</ul>
<h2><a
href="https://github.com/bcoe/c8/compare/v10.1.0...v10.1.1">10.1.1</a>
(2024-06-11)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>stop installing monocart-coverage-reports (<a
href="https://redirect.github.com/bcoe/c8/issues/535">#535</a>) (<a
href="13979a76b5">13979a7</a>)</li>
</ul>
<h2><a
href="https://github.com/bcoe/c8/compare/v10.0.0...v10.1.0">10.1.0</a>
(2024-06-11)</h2>
<h3>Features</h3>
<ul>
<li>add experimental monocart reports (<a
href="https://redirect.github.com/bcoe/c8/issues/521">#521</a>) (<a
href="2e5e297ac0">2e5e297</a>)</li>
</ul>
<h2><a
href="https://github.com/bcoe/c8/compare/v9.1.0...v10.0.0">10.0.0</a>
(2024-06-10)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<ul>
<li><strong>deps:</strong> Node 18 is now the minimum supported Node.js
version</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>deps:</strong> update test-exclude with new glob / minimatch
(<a href="https://redirect.github.com/bcoe/c8/issues/531">#531</a>) (<a
href="e33cf30d0c">e33cf30</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="ff146b4dde"><code>ff146b4</code></a>
chore(main): release 10.1.2 (<a
href="https://redirect.github.com/bcoe/c8/issues/538">#538</a>)</li>
<li><a
href="3b91fdaa0e"><code>3b91fda</code></a>
fix(deps): make monocart-coverage-reports an optional with meta
defined</li>
<li><a
href="e3560e1211"><code>e3560e1</code></a>
chore(main): release 10.1.1 (<a
href="https://redirect.github.com/bcoe/c8/issues/536">#536</a>)</li>
<li><a
href="13979a76b5"><code>13979a7</code></a>
fix: stop installing monocart-coverage-reports (<a
href="https://redirect.github.com/bcoe/c8/issues/535">#535</a>)</li>
<li><a
href="15ac6905cd"><code>15ac690</code></a>
chore(main): release 10.1.0 (<a
href="https://redirect.github.com/bcoe/c8/issues/533">#533</a>)</li>
<li><a
href="96e869ff8c"><code>96e869f</code></a>
build(deps-dev): bump braces from 3.0.2 to 3.0.3 (<a
href="https://redirect.github.com/bcoe/c8/issues/534">#534</a>)</li>
<li><a
href="2e5e297ac0"><code>2e5e297</code></a>
feat: add experimental monocart reports (<a
href="https://redirect.github.com/bcoe/c8/issues/521">#521</a>)</li>
<li><a
href="dc38051b14"><code>dc38051</code></a>
chore(main): release 10.0.0 (<a
href="https://redirect.github.com/bcoe/c8/issues/532">#532</a>)</li>
<li><a
href="e33cf30d0c"><code>e33cf30</code></a>
fix(deps)!: update test-exclude with new glob / minimatch (<a
href="https://redirect.github.com/bcoe/c8/issues/531">#531</a>)</li>
<li><a
href="1eeeaebe65"><code>1eeeaeb</code></a>
doc(CONTRIBUTING): remove dead link, update broken link (<a
href="https://redirect.github.com/bcoe/c8/issues/526">#526</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/bcoe/c8/compare/v9.1.0...v10.1.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `esbuild` from 0.21.4 to 0.22.0
<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.22.0</h2>
<p><strong>This release deliberately contains backwards-incompatible
changes.</strong> To avoid automatically picking up releases like this,
you should either be pinning the exact version of <code>esbuild</code>
in your <code>package.json</code> file (recommended) or be using a
version range syntax that only accepts patch upgrades such as
<code>^0.21.0</code> or <code>~0.21.0</code>. See npm's documentation
about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<ul>
<li>
<p>Omit packages from bundles by default when targeting node (<a
href="https://redirect.github.com/evanw/esbuild/issues/1874">#1874</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/2830">#2830</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/2846">#2846</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/2915">#2915</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3145">#3145</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3294">#3294</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3323">#3323</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3582">#3582</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3809">#3809</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3815">#3815</a>)</p>
<p>This breaking change is an experiment. People are commonly confused
when using esbuild to bundle code for node (i.e. for
<code>--platform=node</code>) because some packages may not be intended
for bundlers, and may use node-specific features that don't work with a
bundler. Even though esbuild's "getting started" instructions
say to use <code>--packages=external</code> to work around this problem,
many people don't read the documentation and don't do this, and are then
confused when it doesn't work. So arguably this is a bad default
behavior for esbuild to have if people keep tripping over this.</p>
<p>With this release, esbuild will now omit packages from the bundle by
default when the platform is <code>node</code> (i.e. the previous
behavior of <code>--packages=external</code> is now the default in this
case). <em>Note that your dependencies must now be present on the file
system when your bundle is run.</em> If you don't want this behavior,
you can do <code>--packages=bundle</code> to allow packages to be
included in the bundle (i.e. the previous default behavior). Note that
<code>--packages=bundle</code> doesn't mean all packages are bundled,
just that packages are allowed to be bundled. You can still exclude
individual packages from the bundle using <code>--external:</code> even
when <code>--packages=bundle</code> is present.</p>
<p>The <code>--packages=</code> setting considers all import paths that
"look like" package imports in the original source code to be
package imports. Specifically import paths that don't start with a path
segment of <code>/</code> or <code>.</code> or <code>..</code> are
considered to be package imports. The only two exceptions to this rule
are <a
href="https://nodejs.org/api/packages.html#subpath-imports">subpath
imports</a> (which start with a <code>#</code> character) and TypeScript
path remappings via <code>paths</code> and/or <code>baseUrl</code> in
<code>tsconfig.json</code> (which are applied first).</p>
</li>
<li>
<p>Drop support for older platforms (<a
href="https://redirect.github.com/evanw/esbuild/issues/3802">#3802</a>)</p>
<p>This release drops support for the following operating systems:</p>
<ul>
<li>Windows 7</li>
<li>Windows 8</li>
<li>Windows Server 2008</li>
<li>Windows Server 2012</li>
</ul>
<p>This is because the Go programming language dropped support for these
operating system versions in <a
href="https://go.dev/doc/go1.21#windows">Go 1.21</a>, and this release
updates esbuild from Go 1.20 to Go 1.22.</p>
<p>Note that this only affects the binary esbuild executables that are
published to the <code>esbuild</code> npm package. It's still possible
to compile esbuild's source code for these older operating systems. If
you need to, you can compile esbuild for yourself using an older version
of the Go compiler (before Go version 1.21). That might look something
like this:</p>
<pre><code>git clone https://github.com/evanw/esbuild.git
cd esbuild
go build ./cmd/esbuild
./esbuild.exe --version
</code></pre>
<p>In addition, this release increases the minimum required node version
for esbuild's JavaScript API from node 12 to node 18. Node 18 is the
oldest version of node that is still being supported (see node's <a
href="https://nodejs.org/en/about/previous-releases">release
schedule</a> for more information). This increase is because of an
incompatibility between the JavaScript that the Go compiler generates
for the <code>esbuild-wasm</code> package and versions of node before
node 17.4 (specifically the <code>crypto.getRandomValues</code>
function).</p>
</li>
<li>
<p>Update <code>await using</code> behavior to match TypeScript</p>
<p>TypeScript 5.5 subtly changes the way <code>await using</code>
behaves. This release updates esbuild to match these changes in
TypeScript. You can read more about these changes in <a
href="https://redirect.github.com/microsoft/TypeScript/pull/58624">microsoft/TypeScript#58624</a>.</p>
</li>
<li>
<p>Allow <code>es2024</code> as a target environment</p>
<p>The ECMAScript 2024 specification was just approved, so it has been
added to esbuild as a possible compilation target. You can read more
about the features that it adds here: <a
href="https://2ality.com/2024/06/ecmascript-2024.html">https://2ality.com/2024/06/ecmascript-2024.html</a>.
The only addition that's relevant for esbuild is the regular expression
<code>/v</code> flag. With <code>--target=es2024</code>, regular
expressions that use the <code>/v</code> flag will now be passed through
untransformed instead of being transformed into a call to <code>new
RegExp</code>.</p>
</li>
<li>
<p>Publish binaries for OpenBSD on 64-bit ARM (<a
href="https://redirect.github.com/evanw/esbuild/issues/3665">#3665</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/3674">#3674</a>)</p>
<p>With this release, you should now be able to install the
<code>esbuild</code> npm package in OpenBSD on 64-bit ARM, such as on an
Apple device with an M1 chip.</p>
<p>This was contributed by <a
href="https://github.com/ikmckenz"><code>@ikmckenz</code></a>.</p>
</li>
<li>
<p>Publish binaries for WASI (WebAssembly System Interface) preview 1
(<a
href="https://redirect.github.com/evanw/esbuild/issues/3300">#3300</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/3779">#3779</a>)</p>
<p>The upcoming WASI (WebAssembly System Interface) standard is going to
be a way to run WebAssembly outside of a JavaScript host environment. In
this scenario you only need a <code>.wasm</code> file without any
supporting JavaScript code. Instead of JavaScript providing the APIs for
the host environment, the WASI standard specifies a "system
interface" that WebAssembly code can access directly (e.g. for file
system access).</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.22.0</h2>
<p><strong>This release deliberately contains backwards-incompatible
changes.</strong> To avoid automatically picking up releases like this,
you should either be pinning the exact version of <code>esbuild</code>
in your <code>package.json</code> file (recommended) or be using a
version range syntax that only accepts patch upgrades such as
<code>^0.21.0</code> or <code>~0.21.0</code>. See npm's documentation
about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<ul>
<li>
<p>Omit packages from bundles by default when targeting node (<a
href="https://redirect.github.com/evanw/esbuild/issues/1874">#1874</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/2830">#2830</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/2846">#2846</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/2915">#2915</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3145">#3145</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3294">#3294</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3323">#3323</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3582">#3582</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3809">#3809</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3815">#3815</a>)</p>
<p>This breaking change is an experiment. People are commonly confused
when using esbuild to bundle code for node (i.e. for
<code>--platform=node</code>) because some packages may not be intended
for bundlers, and may use node-specific features that don't work with a
bundler. Even though esbuild's "getting started" instructions
say to use <code>--packages=external</code> to work around this problem,
many people don't read the documentation and don't do this, and are then
confused when it doesn't work. So arguably this is a bad default
behavior for esbuild to have if people keep tripping over this.</p>
<p>With this release, esbuild will now omit packages from the bundle by
default when the platform is <code>node</code> (i.e. the previous
behavior of <code>--packages=external</code> is now the default in this
case). <em>Note that your dependencies must now be present on the file
system when your bundle is run.</em> If you don't want this behavior,
you can do <code>--packages=bundle</code> to allow packages to be
included in the bundle (i.e. the previous default behavior). Note that
<code>--packages=bundle</code> doesn't mean all packages are bundled,
just that packages are allowed to be bundled. You can still exclude
individual packages from the bundle using <code>--external:</code> even
when <code>--packages=bundle</code> is present.</p>
<p>The <code>--packages=</code> setting considers all import paths that
"look like" package imports in the original source code to be
package imports. Specifically import paths that don't start with a path
segment of <code>/</code> or <code>.</code> or <code>..</code> are
considered to be package imports. The only two exceptions to this rule
are <a
href="https://nodejs.org/api/packages.html#subpath-imports">subpath
imports</a> (which start with a <code>#</code> character) and TypeScript
path remappings via <code>paths</code> and/or <code>baseUrl</code> in
<code>tsconfig.json</code> (which are applied first).</p>
</li>
<li>
<p>Drop support for older platforms (<a
href="https://redirect.github.com/evanw/esbuild/issues/3802">#3802</a>)</p>
<p>This release drops support for the following operating systems:</p>
<ul>
<li>Windows 7</li>
<li>Windows 8</li>
<li>Windows Server 2008</li>
<li>Windows Server 2012</li>
</ul>
<p>This is because the Go programming language dropped support for these
operating system versions in <a
href="https://go.dev/doc/go1.21#windows">Go 1.21</a>, and this release
updates esbuild from Go 1.20 to Go 1.22.</p>
<p>Note that this only affects the binary esbuild executables that are
published to the <code>esbuild</code> npm package. It's still possible
to compile esbuild's source code for these older operating systems. If
you need to, you can compile esbuild for yourself using an older version
of the Go compiler (before Go version 1.21). That might look something
like this:</p>
<pre><code>git clone https://github.com/evanw/esbuild.git
cd esbuild
go build ./cmd/esbuild
./esbuild.exe --version
</code></pre>
<p>In addition, this release increases the minimum required node version
for esbuild's JavaScript API from node 12 to node 18. Node 18 is the
oldest version of node that is still being supported (see node's <a
href="https://nodejs.org/en/about/previous-releases">release
schedule</a> for more information). This increase is because of an
incompatibility between the JavaScript that the Go compiler generates
for the <code>esbuild-wasm</code> package and versions of node before
node 17.4 (specifically the <code>crypto.getRandomValues</code>
function).</p>
</li>
<li>
<p>Update <code>await using</code> behavior to match TypeScript</p>
<p>TypeScript 5.5 subtly changes the way <code>await using</code>
behaves. This release updates esbuild to match these changes in
TypeScript. You can read more about these changes in <a
href="https://redirect.github.com/microsoft/TypeScript/pull/58624">microsoft/TypeScript#58624</a>.</p>
</li>
<li>
<p>Allow <code>es2024</code> as a target environment</p>
<p>The ECMAScript 2024 specification was just approved, so it has been
added to esbuild as a possible compilation target. You can read more
about the features that it adds here: <a
href="https://2ality.com/2024/06/ecmascript-2024.html">https://2ality.com/2024/06/ecmascript-2024.html</a>.
The only addition that's relevant for esbuild is the regular expression
<code>/v</code> flag. With <code>--target=es2024</code>, regular
expressions that use the <code>/v</code> flag will now be passed through
untransformed instead of being transformed into a call to <code>new
RegExp</code>.</p>
</li>
<li>
<p>Publish binaries for OpenBSD on 64-bit ARM (<a
href="https://redirect.github.com/evanw/esbuild/issues/3665">#3665</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/3674">#3674</a>)</p>
<p>With this release, you should now be able to install the
<code>esbuild</code> npm package in OpenBSD on 64-bit ARM, such as on an
Apple device with an M1 chip.</p>
<p>This was contributed by <a
href="https://github.com/ikmckenz"><code>@ikmckenz</code></a>.</p>
</li>
<li>
<p>Publish binaries for WASI (WebAssembly System Interface) preview 1
(<a
href="https://redirect.github.com/evanw/esbuild/issues/3300">#3300</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/3779">#3779</a>)</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="80c6e6ea09"><code>80c6e6e</code></a>
publish 0.22.0 to npm</li>
<li><a
href="196dcad195"><code>196dcad</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/1874">#1874</a>:
node defaults to <code>--packages=external</code></li>
<li><a
href="3f57db853f"><code>3f57db8</code></a>
release notes for <a
href="https://redirect.github.com/evanw/esbuild/issues/3539">#3539</a></li>
<li><a
href="91663db644"><code>91663db</code></a>
Provide API to create a custom esbuild CLI with plugins (<a
href="https://redirect.github.com/evanw/esbuild/issues/3539">#3539</a>)</li>
<li><a
href="e01c0e028c"><code>e01c0e0</code></a>
also mention <a
href="https://redirect.github.com/evanw/esbuild/issues/3665">#3665</a>
in release notes</li>
<li><a
href="65711b32d5"><code>65711b3</code></a>
release notes for <a
href="https://redirect.github.com/evanw/esbuild/issues/3674">#3674</a></li>
<li><a
href="63eb8140a7"><code>63eb814</code></a>
Add OpenBSD arm64 (<a
href="https://redirect.github.com/evanw/esbuild/issues/3674">#3674</a>)</li>
<li><a
href="b7220009d0"><code>b722000</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3300">#3300</a>,
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3779">#3779</a>:
add <code>@esbuild/wasi-preview1</code></li>
<li><a
href="6679ec8c7f"><code>6679ec8</code></a>
fix: verbose analyse output improperly trimmed (<a
href="https://redirect.github.com/evanw/esbuild/issues/3785">#3785</a>)</li>
<li><a
href="94f09ea521"><code>94f09ea</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3790">#3790</a>:
warn about incorrect <code>onResolve</code> plugin</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.21.4...v0.22.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `execa` from 9.1.0 to 9.3.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sindresorhus/execa/releases">execa's
releases</a>.</em></p>
<blockquote>
<h2>v9.3.0</h2>
<h2>Features</h2>
<ul>
<li>The <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/api.md#optionsverbose"><code>verbose</code></a>
option can now be <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/api.md#verbose-function">a
function</a> to <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/debugging.md#custom-logging">customize
logging</a>. (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1130">#1130</a>)</li>
</ul>
<h2>v9.2.0</h2>
<p>This release includes a <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/ipc.md">new
set of methods</a> to exchange messages between the current process and
a Node.js subprocess, also known as "IPC". This allows <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/input.md#any-input-type">passing</a>
and <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/output.md#any-output-type">returning</a>
almost any message type to/from a Node.js subprocess. Also, <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/ipc.md#debugging">debugging</a>
IPC is now much easier.</p>
<p>Moreover, a new <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/api.md#optionsgracefulcancel"><code>gracefulCancel</code></a>
option has also been added to <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/termination.md#graceful-termination">terminate
a subprocess gracefully</a>.</p>
<p>For a deeper dive-in, please check and share the <a
href="https://medium.com/@ehmicky/ipc-made-easy-with-execa-9-2-939c6a358731">release
post</a>!</p>
<p>Thanks <a href="https://github.com/iiroj"><code>@iiroj</code></a>
for your contribution, <a
href="https://github.com/SimonSiefke"><code>@SimonSiefke</code></a> and
<a href="https://github.com/adymorz"><code>@adymorz</code></a> for
reporting the bugs fixed in this release, and <a
href="https://github.com/karlhorky"><code>@karlhorky</code></a> for
improving the documentation!</p>
<h2>Deprecations</h2>
<ul>
<li>Passing <code>'ipc'</code> to the <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/api.md#optionsstdio"><code>stdio</code></a>
option has been deprecated. It will be removed in the next major
release. Instead, the <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/api.md#optionsipc"><code>ipc:
true</code></a> option should be used. (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1056">#1056</a>)</li>
</ul>
<pre lang="diff"><code>- await execa('npm', ['run', 'build'], {stdio:
['pipe', 'pipe', 'pipe', 'ipc']});
+ await execa('npm', ['run', 'build'], {ipc: true});
</code></pre>
<ul>
<li>The <a
href="https://github.com/sindresorhus/execa/blob/v9.1.0/docs/api.md#execacommandcommand-options"><code>execaCommand()</code></a>
method has been deprecated. It will be removed in the next major
release. If most cases, the <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/execution.md#template-string-syntax">template
string syntax</a> should be used instead.</li>
</ul>
<pre lang="diff"><code>- import {execaCommand} from 'execa';
+ import {execa} from 'execa';
<ul>
<li>await execaCommand('npm run build');</li>
</ul>
<ul>
<li>await execa<code>npm run build</code>;</li>
</ul>
<p>const taskName = 'build';</p>
<ul>
<li>await execaCommand(<code>npm run ${taskName}</code>);</li>
</ul>
<ul>
<li>await execa<code>npm run ${taskName}</code>;</li>
</ul>
<p>const commandArguments = ['run', 'task with space'];
await execa<code>npm ${commandArguments}</code>;
</code></pre></p>
<p>If the file and/or multiple arguments are supplied as a single
string, <a
href="https://github.com/sindresorhus/execa/blob/main/docs/api.md#parsecommandstringcommand">parseCommandString(command)</a>
can split that string into an array. <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/escaping.md">More
info.</a> (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1054">#1054</a>)</p>
<pre lang="diff"><code>- import {execaCommand} from 'execa';
+ import {execa, parseCommandString} from 'execa';
<p>const commandString = 'npm run task';</p>
<ul>
<li>await execaCommand(commandString);</li>
</ul>
<ul>
<li>const commandArray = parseCommandString(commandString); // ['npm',
'run', 'task']</li>
<li>await execa<code>${commandArray}</code>;
</tr></table>
</code></pre></li>
</ul>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="57658b0190"><code>57658b0</code></a>
9.3.0</li>
<li><a
href="8daf3484e9"><code>8daf348</code></a>
Allow <code>verbose</code> option to be a function for custom logging
(<a
href="https://redirect.github.com/sindresorhus/execa/issues/1130">#1130</a>)</li>
<li><a
href="78edcb9f2b"><code>78edcb9</code></a>
Fix c8 memory crash (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1129">#1129</a>)</li>
<li><a
href="18d320f93a"><code>18d320f</code></a>
Refactor test helpers for the <code>verbose</code> option (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1128">#1128</a>)</li>
<li><a
href="37e00242ea"><code>37e0024</code></a>
Add more tests for the <code>verbose</code> option (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1127">#1127</a>)</li>
<li><a
href="f9f1199f67"><code>f9f1199</code></a>
Refactor <code>verbose</code> logic (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1126">#1126</a>)</li>
<li><a
href="cbe805c72d"><code>cbe805c</code></a>
9.2.0</li>
<li><a
href="8ae69754d9"><code>8ae6975</code></a>
Send fewer requests with link checking (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1122">#1122</a>)</li>
<li><a
href="e15e5162c1"><code>e15e516</code></a>
Fix typo in IPC documentation (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1121">#1121</a>)</li>
<li><a
href="4044152329"><code>4044152</code></a>
Automatically check Markdown links (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1120">#1120</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/sindresorhus/execa/compare/v9.1.0...v9.3.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `yaml` from 2.4.2 to 2.4.5
<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.4.5</h2>
<ul>
<li>Improve tab handling (<a
href="https://redirect.github.com/eemeli/yaml/issues/553">#553</a>,
yaml-test-suite tests <a
href="https://github.com/yaml/yaml-test-suite/blob/main/src/DK95.yaml">DK95</a>
& <a
href="https://github.com/yaml/yaml-test-suite/blob/main/src/Y79Y.yaml">Y79Y</a>)</li>
</ul>
<h2>v2.4.4</h2>
<p>With special thanks to <a
href="https://github.com/RedCMD"><code>@RedCMD</code></a> for finding
and reporting all of the following:</p>
<ul>
<li>Allow comment after top-level block scalar with explicit indent
indicator (<a
href="https://redirect.github.com/eemeli/yaml/issues/547">#547</a>)</li>
<li>Allow tab as indent for line comments before nodes (<a
href="https://redirect.github.com/eemeli/yaml/issues/548">#548</a>)</li>
<li>Do not allow tab before block collection (<a
href="https://redirect.github.com/eemeli/yaml/issues/549">#549</a>)</li>
<li>In flow collections, allow <code>[]{}</code> immediately after
<code>:</code> with plain key (<a
href="https://redirect.github.com/eemeli/yaml/issues/550">#550</a>)</li>
<li>Require indentation for <code>?</code> explicit-key contents (<a
href="https://redirect.github.com/eemeli/yaml/issues/551">#551</a>)</li>
<li>Require indentation from block scalar header & flow collections
in mapping values (<a
href="https://redirect.github.com/eemeli/yaml/issues/553">#553</a>)</li>
</ul>
<h2>v2.4.3</h2>
<ul>
<li>Improve error when parsing a non-string value (<a
href="https://redirect.github.com/eemeli/yaml/issues/459">#459</a>)</li>
<li>Do not parse <code>-.NaN</code> or <code>+.nan</code> as NaN (<a
href="https://redirect.github.com/eemeli/yaml/issues/546">#546</a>)</li>
<li>Support <code>#</code> within <code>%TAG</code> prefixes with
trailing <code>#comments</code></li>
<li>Check for non-node complex keys when stringifying with simpleKeys
(<a
href="https://redirect.github.com/eemeli/yaml/issues/541">#541</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="1b8fde6717"><code>1b8fde6</code></a>
2.4.5</li>
<li><a
href="f3c7d030e9"><code>f3c7d03</code></a>
test: Obey yaml-test-suite skip instructions</li>
<li><a
href="4e66d72c76"><code>4e66d72</code></a>
fix: Improve tab handling (tests DK95 & Y79Y, <a
href="https://redirect.github.com/eemeli/yaml/issues/553">#553</a>)</li>
<li><a
href="d06f3867ae"><code>d06f386</code></a>
2.4.4</li>
<li><a
href="39053e83bb"><code>39053e8</code></a>
chore: Satisfy strict TS</li>
<li><a
href="8baee44423"><code>8baee44</code></a>
test: Use source files for yaml-test-suite tests</li>
<li><a
href="280a861919"><code>280a861</code></a>
fix: Allow comment after top-level block scalar with explicit indent
indicato...</li>
<li><a
href="767bc477e6"><code>767bc47</code></a>
fix: Require indentation from block scalar header & flow collections
in mappi...</li>
<li><a
href="5096f83786"><code>5096f83</code></a>
fix: Require indentation for ? explicit-key contents (fixes <a
href="https://redirect.github.com/eemeli/yaml/issues/551">#551</a>)</li>
<li><a
href="22f2c6fadd"><code>22f2c6f</code></a>
fix: In flow collections, allow []{} immediately after : with plain key
(fixe...</li>
<li>Additional commits viewable in <a
href="https://github.com/eemeli/yaml/compare/v2.4.2...v2.4.5">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>
Closes#140
The pull request at #95 introduced changes to avoid revoking expired
tokens by saving the `expiresAt` value in the state. The change,
however, used `core.setOutput` instead of `core.setState` meaning the
value is not saved in the state but rather available in the output.
```javascript
if (!skipTokenRevoke) {
core.saveState("token", authentication.token);
core.setOutput("expiresAt", authentication.expiresAt);
}
```
This means that when we use the value downstream, it evaluates to an
empty string and the following code block is never run:
```javascript
const expiresAt = core.getState("expiresAt");
if (expiresAt && tokenExpiresIn(expiresAt) < 0) {
core.info("Token expired, skipping token revocation");
return;
}
```
This is a tiny PR to correct that typo.
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to
3.0.3.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="74b2db2938"><code>74b2db2</code></a>
3.0.3</li>
<li><a
href="88f1429a0f"><code>88f1429</code></a>
update eslint. lint, fix unit tests.</li>
<li><a
href="415d660c30"><code>415d660</code></a>
Snyk js braces 6838727 (<a
href="https://redirect.github.com/micromatch/braces/issues/40">#40</a>)</li>
<li><a
href="190510f79d"><code>190510f</code></a>
fix tests, skip 1 test in test/braces.expand</li>
<li><a
href="716eb9f12d"><code>716eb9f</code></a>
readme bump</li>
<li><a
href="a5851e57f4"><code>a5851e5</code></a>
Merge pull request <a
href="https://redirect.github.com/micromatch/braces/issues/37">#37</a>
from coderaiser/fix/vulnerability</li>
<li><a
href="2092bd1fb1"><code>2092bd1</code></a>
feature: braces: add maxSymbols (<a
href="https://github.com/micromatch/braces/issues/">https://github.com/micromatch/braces/issues/</a>...</li>
<li><a
href="9f5b4cf473"><code>9f5b4cf</code></a>
fix: vulnerability (<a
href="https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727">https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727</a>)</li>
<li><a
href="98414f9f1f"><code>98414f9</code></a>
remove funding file</li>
<li><a
href="665ab5d561"><code>665ab5d</code></a>
update keepEscaping doc (<a
href="https://redirect.github.com/micromatch/braces/issues/27">#27</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/micromatch/braces/compare/3.0.2...3.0.3">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Bumps the development-dependencies group with 3 updates:
[ava](https://github.com/avajs/ava),
[esbuild](https://github.com/evanw/esbuild) and
[execa](https://github.com/sindresorhus/execa).
Updates `ava` from 6.1.2 to 6.1.3
<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.1.3</h2>
<h2>What's Changed</h2>
<ul>
<li>Include Node.js 22 in supported engines and test matrix by <a
href="https://github.com/lenovouser"><code>@lenovouser</code></a> in <a
href="https://redirect.github.com/avajs/ava/pull/3328">avajs/ava#3328</a></li>
<li>Add VS Code debugging instructions for Yarn PnP projects by <a
href="https://github.com/bitjson"><code>@bitjson</code></a> in <a
href="https://redirect.github.com/avajs/ava/pull/3317">avajs/ava#3317</a></li>
<li>Document <code>serial</code> configuration option by <a
href="https://github.com/turadg"><code>@turadg</code></a> in <a
href="https://redirect.github.com/avajs/ava/pull/3321">avajs/ava#3321</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/bitjson"><code>@bitjson</code></a> made
their first contribution in <a
href="https://redirect.github.com/avajs/ava/pull/3317">avajs/ava#3317</a></li>
<li><a href="https://github.com/turadg"><code>@turadg</code></a> made
their first contribution in <a
href="https://redirect.github.com/avajs/ava/pull/3321">avajs/ava#3321</a></li>
<li><a
href="https://github.com/lenovouser"><code>@lenovouser</code></a> made
their first contribution in <a
href="https://redirect.github.com/avajs/ava/pull/3328">avajs/ava#3328</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/avajs/ava/compare/v6.1.2...v6.1.3">https://github.com/avajs/ava/compare/v6.1.2...v6.1.3</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f8bf00cd98"><code>f8bf00c</code></a>
6.1.3</li>
<li><a
href="002b3a0e93"><code>002b3a0</code></a>
Include Node.js 22 in supported engines and test matrix</li>
<li><a
href="ec1a8d2336"><code>ec1a8d2</code></a>
Document <code>serial</code> configuration option</li>
<li><a
href="01ec2804ab"><code>01ec280</code></a>
Add VS Code debugging instructions for Yarn PnP projects</li>
<li>See full diff in <a
href="https://github.com/avajs/ava/compare/v6.1.2...v6.1.3">compare
view</a></li>
</ul>
</details>
<br />
Updates `esbuild` from 0.20.2 to 0.21.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.21.4</h2>
<ul>
<li>
<p>Update support for import assertions and import attributes in node
(<a
href="https://redirect.github.com/evanw/esbuild/issues/3778">#3778</a>)</p>
<p>Import assertions (the <code>assert</code> keyword) have been removed
from node starting in v22.0.0. So esbuild will now strip them and
generate a warning with <code>--target=node22</code> or above:</p>
<pre><code>▲ [WARNING] The "assert" keyword is not supported
in the configured target environment ("node22")
[assert-to-with]
<pre><code>example.mjs:1:40:
1 │ import json from &quot;esbuild/package.json&quot; assert {
type: &quot;json&quot; }
│ ~~~~~~
╵ with
</code></pre>
<p>Did you mean to use "with" instead of "assert"?
</code></pre></p>
<p>Import attributes (the <code>with</code> keyword) have been
backported to node 18 starting in v18.20.0. So esbuild will no longer
strip them with <code>--target=node18.N</code> if <code>N</code> is 20
or greater.</p>
</li>
<li>
<p>Fix <code>for await</code> transform when a label is present</p>
<p>This release fixes a bug where the <code>for await</code> transform,
which wraps the loop in a <code>try</code> statement, previously failed
to also move the loop's label into the <code>try</code> statement. This
bug only affects code that uses both of these features in combination.
Here's an example of some affected code:</p>
<pre lang="js"><code>// Original code
async function test() {
outer: for await (const x of [Promise.resolve([0, 1])]) {
for (const y of x) if (y) break outer
throw 'fail'
}
}
<p>// Old output (with --target=es6)
function test() {
return __async(this, null, function* () {
outer: try {
for (var iter = __forAwait([Promise.resolve([0, 1])]), more, temp,
error; more = !(temp = yield iter.next()).done; more = false) {
const x = temp.value;
for (const y of x) if (y) break outer;
throw "fail";
}
} catch (temp) {
error = [temp];
} finally {
try {
more && (temp = iter.return) && (yield temp.call(iter));
} finally {
if (error)
throw error[0];
}
}
</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.21.4</h2>
<ul>
<li>
<p>Update support for import assertions and import attributes in node
(<a
href="https://redirect.github.com/evanw/esbuild/issues/3778">#3778</a>)</p>
<p>Import assertions (the <code>assert</code> keyword) have been removed
from node starting in v22.0.0. So esbuild will now strip them and
generate a warning with <code>--target=node22</code> or above:</p>
<pre><code>▲ [WARNING] The "assert" keyword is not supported
in the configured target environment ("node22")
[assert-to-with]
<pre><code>example.mjs:1:40:
1 │ import json from &quot;esbuild/package.json&quot; assert {
type: &quot;json&quot; }
│ ~~~~~~
╵ with
</code></pre>
<p>Did you mean to use "with" instead of "assert"?
</code></pre></p>
<p>Import attributes (the <code>with</code> keyword) have been
backported to node 18 starting in v18.20.0. So esbuild will no longer
strip them with <code>--target=node18.N</code> if <code>N</code> is 20
or greater.</p>
</li>
<li>
<p>Fix <code>for await</code> transform when a label is present</p>
<p>This release fixes a bug where the <code>for await</code> transform,
which wraps the loop in a <code>try</code> statement, previously failed
to also move the loop's label into the <code>try</code> statement. This
bug only affects code that uses both of these features in combination.
Here's an example of some affected code:</p>
<pre lang="js"><code>// Original code
async function test() {
outer: for await (const x of [Promise.resolve([0, 1])]) {
for (const y of x) if (y) break outer
throw 'fail'
}
}
<p>// Old output (with --target=es6)
function test() {
return __async(this, null, function* () {
outer: try {
for (var iter = __forAwait([Promise.resolve([0, 1])]), more, temp,
error; more = !(temp = yield iter.next()).done; more = false) {
const x = temp.value;
for (const y of x) if (y) break outer;
throw "fail";
}
} catch (temp) {
error = [temp];
} finally {
try {
more && (temp = iter.return) && (yield temp.call(iter));
} finally {
if (error)
throw error[0];
}
</code></pre></p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="67cbf87a49"><code>67cbf87</code></a>
publish 0.21.4 to npm</li>
<li><a
href="4ad11c303e"><code>4ad11c3</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3639">#3639</a>,
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3646">#3646</a>:
pass <code>with</code> to <code>onResolve</code></li>
<li><a
href="516ca317a4"><code>516ca31</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3343">#3343</a>:
allow bundle-internal string aliases</li>
<li><a
href="9e2f304cb6"><code>9e2f304</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3416">#3416</a>,
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3425">#3425</a>:
better enum constant folding</li>
<li><a
href="8f1faf7d4a"><code>8f1faf7</code></a>
implement late constant-folding for <code>&& || ??</code></li>
<li><a
href="7d50a50dcc"><code>7d50a50</code></a>
implement late constant-folding of string enums</li>
<li><a
href="1b29ac7d0a"><code>1b29ac7</code></a>
fold equality checks after cross-module inlining</li>
<li><a
href="d7a8bf3270"><code>d7a8bf3</code></a>
formatting support for <code>@position-try</code> (for <a
href="https://redirect.github.com/evanw/esbuild/issues/3773">#3773</a>)</li>
<li><a
href="5069410daf"><code>5069410</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3778">#3778</a>:
import assertions/attributes for node</li>
<li><a
href="11d568c874"><code>11d568c</code></a>
run <code>make update-compat-table</code></li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.20.2...v0.21.4">compare
view</a></li>
</ul>
</details>
<br />
Updates `execa` from 8.0.1 to 9.1.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/sindresorhus/execa/releases">execa's
releases</a>.</em></p>
<blockquote>
<h2>v9.1.0</h2>
<h2>Features (types)</h2>
<ul>
<li>Export <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/typescript.md#available-types"><code>TemplateExpression</code></a>
type. (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1049">#1049</a>)</li>
</ul>
<h2>v9.0.2</h2>
<h2>Bug fixes (types)</h2>
<ul>
<li>Do not require using <code>--lib dom</code> for TypeScript users (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1043">#1043</a>,
<a
href="https://redirect.github.com/sindresorhus/execa/issues/1044">#1044</a>)</li>
<li>Fix type of the <code>reject</code> option (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1046">#1046</a>)</li>
</ul>
<h2>v9.0.1</h2>
<h2>Bug fixes (types)</h2>
<ul>
<li>Fix types not being importable (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1033">#1033</a>)
3bdab60</li>
<li>Fix complexity bug with types (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1037">#1037</a>)
6cc519b</li>
<li>Fix complexity bug with types (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1035">#1035</a>)
fee011d</li>
</ul>
<h2>v9.0.0</h2>
<p>This major release brings many important features including:</p>
<ul>
<li><a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#3a26">Split
the output</a> into lines, or <a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#3a26">progressively
iterate</a> over them.</li>
<li><a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#cbd6">Transform
or filter</a> the input/output using <a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#399a">simple
functions</a>.</li>
<li>Print the output <a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#693f">to
the terminal</a> while still retrieving it programmatically.</li>
<li>Redirect the input/output <a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#693f">from/to
a file</a>.</li>
<li><a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#ec17">Advanced
piping</a> between multiple subprocesses.</li>
<li>Improved <a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#2913">verbose
mode</a>, for debugging.</li>
<li>More <a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#40d7">detailed
errors</a>, including when <a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#668c">terminating
subprocesses</a>.</li>
<li>Enhanced <a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#725b">template
string syntax</a>.</li>
<li><a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#bcbf">Global/shared
options</a>.</li>
<li><a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#5731">Web
streams</a> and Transform streams support.</li>
<li><a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f#47b9">Convert
the subprocess</a> to a stream.</li>
<li><a
href="https://github.com/sindresorhus/execa/blob/HEAD/readme.md#documentation">New
documentation</a> with many examples.</li>
</ul>
<p>Please check the <a
href="https://medium.com/@ehmicky/execa-9-release-d0d5daaa097f">release
post</a> for a high-level overview! For the full list of breaking
changes, features and bug fixes, please read below.</p>
<p>Thanks <a
href="https://github.com/younggglcy"><code>@younggglcy</code></a>, <a
href="https://github.com/koshic"><code>@koshic</code></a>, <a
href="https://github.com/am0o0"><code>@am0o0</code></a> and <a
href="https://github.com/codesmith-emmy"><code>@codesmith-emmy</code></a>
for your help!</p>
<hr />
<p>One of the maintainers <a
href="https://github.com/ehmicky"><code>@ehmicky</code></a> is looking
for a remote full-time position. Specialized in Node.js back-ends and
CLIs, he led Netlify <a
href="https://www.netlify.com/platform/core/build/">Build</a>, <a
href="https://www.netlify.com/integrations/">Plugins</a> and
Configuration for 2.5 years. Feel free to contact him on <a
href="https://www.mickael-hebert.com">his website</a> or on <a
href="https://www.linkedin.com/in/mickaelhebert/">LinkedIn</a>!</p>
<hr />
<h2>Breaking changes (not types)</h2>
<ul>
<li>
<p>Dropped support for Node.js version <code><18.19.0</code> and
<code>20.0.0 - 20.4.0</code>. (834e3726)</p>
</li>
<li>
<p>When the <a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/api.md#optionsencoding"><code>encoding</code>
option</a> is <code>'buffer'</code>, the output (<a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/api.md#resultstdout"><code>result.stdout</code></a>,
<a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/api.md#resultstderr"><code>result.stderr</code></a>,
<a
href="https://github.com/sindresorhus/execa/blob/HEAD/docs/api.md#resultall"><code>result.all</code></a>)
is now an <a
href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Uint8Array"><code>Uint8Array</code></a>
instead of a <a
href="https://nodejs.org/api/buffer.html#class-buffer"><code>Buffer</code></a>.
For more information, see <a
href="https://sindresorhus.com/blog/goodbye-nodejs-buffer">this blog
post</a>. (by <a
href="https://github.com/younggglcy"><code>@younggglcy</code></a>) (<a
href="https://redirect.github.com/sindresorhus/execa/issues/586">#586</a>)</p>
</li>
</ul>
<pre lang="js"><code></tr></table>
</code></pre>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="62d02af669"><code>62d02af</code></a>
9.1.0</li>
<li><a
href="733d6ff6c2"><code>733d6ff</code></a>
Split CI jobs (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1052">#1052</a>)</li>
<li><a
href="3b11ac87d9"><code>3b11ac8</code></a>
Check types on TypeScript 5.1 + latest (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1051">#1051</a>)</li>
<li><a
href="de8e7daabe"><code>de8e7da</code></a>
Document minimum TypeScript version (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1050">#1050</a>)</li>
<li><a
href="2d8475291b"><code>2d84752</code></a>
Export <code>TemplateExpression</code> type (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1049">#1049</a>)</li>
<li><a
href="b8c131ce8e"><code>b8c131c</code></a>
9.0.2</li>
<li><a
href="e2903e990f"><code>e2903e9</code></a>
Run TypeScript on the types (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1042">#1042</a>)</li>
<li><a
href="ab2a9ed13c"><code>ab2a9ed</code></a>
Fix type of result when using the <code>reject: false</code> option (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1046">#1046</a>)</li>
<li><a
href="11bbd9d641"><code>11bbd9d</code></a>
Fix type of <code>TransformStream</code> (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1044">#1044</a>)</li>
<li><a
href="6f4941e2a1"><code>6f4941e</code></a>
Fix typing of web streams (<a
href="https://redirect.github.com/sindresorhus/execa/issues/1043">#1043</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/sindresorhus/execa/compare/v8.0.1...v9.1.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>
Bumps the development-dependencies group with 1 update:
[yaml](https://github.com/eemeli/yaml).
Updates `yaml` from 2.4.1 to 2.4.2
<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.4.2</h2>
<ul>
<li>Restrict YAML 1.1 boolean strings to their explicit capitalization
(<a
href="https://redirect.github.com/eemeli/yaml/issues/530">#530</a>)</li>
<li>Add sponsorship by <a href="https://www.scipress.io/">Scipress</a>
(<a
href="https://redirect.github.com/eemeli/yaml/issues/536">#536</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="f792d1b72f"><code>f792d1b</code></a>
2.4.2</li>
<li><a
href="de120d69ab"><code>de120d6</code></a>
docs: Move sponsor section up</li>
<li><a
href="5410c25083"><code>5410c25</code></a>
ci: Drop tests in EOL Node.js versions</li>
<li><a
href="30868a8135"><code>30868a8</code></a>
chore: Add sponsorship by Scipress (<a
href="https://redirect.github.com/eemeli/yaml/issues/536">#536</a>)</li>
<li><a
href="1c6fd6a76a"><code>1c6fd6a</code></a>
fix: Restrict YAML 1.1 boolean strings to their explicit capitalization
(<a
href="https://redirect.github.com/eemeli/yaml/issues/530">#530</a>)</li>
<li>See full diff in <a
href="https://github.com/eemeli/yaml/compare/v2.4.1...v2.4.2">compare
view</a></li>
</ul>
</details>
<br />
[](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>
Bumps the development-dependencies group with 2 updates:
[esbuild](https://github.com/evanw/esbuild) and
[yaml](https://github.com/eemeli/yaml).
Updates `esbuild` from 0.20.1 to 0.20.2
<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.20.2</h2>
<ul>
<li>
<p>Support TypeScript experimental decorators on <code>abstract</code>
class fields (<a
href="https://redirect.github.com/evanw/esbuild/issues/3684">#3684</a>)</p>
<p>With this release, you can now use TypeScript experimental decorators
on <code>abstract</code> class fields. This was silently compiled
incorrectly in esbuild 0.19.7 and below, and was an error from esbuild
0.19.8 to esbuild 0.20.1. Code such as the following should now work
correctly:</p>
<pre lang="ts"><code>// Original code
const log = (x: any, y: string) => console.log(y)
abstract class Foo { @log abstract foo: string }
new class extends Foo { foo = '' }
<p>// Old output (with --loader=ts
--tsconfig-raw={&quot;compilerOptions&quot;:{&quot;experimentalDecorators&quot;:true}})
const log = (x, y) => console.log(y);
class Foo {
}
new class extends Foo {
foo = "";
}();</p>
<p>// New output (with --loader=ts
--tsconfig-raw={&quot;compilerOptions&quot;:{&quot;experimentalDecorators&quot;:true}})
const log = (x, y) => console.log(y);
class Foo {
}
__decorateClass([
log
], Foo.prototype, "foo", 2);
new class extends Foo {
foo = "";
}();
</code></pre></p>
</li>
<li>
<p>JSON loader now preserves <code>__proto__</code> properties (<a
href="https://redirect.github.com/evanw/esbuild/issues/3700">#3700</a>)</p>
<p>Copying JSON source code into a JavaScript file will change its
meaning if a JSON object contains the <code>__proto__</code> key. A
literal <code>__proto__</code> property in a JavaScript object literal
sets the prototype of the object instead of adding a property named
<code>__proto__</code>, while a literal <code>__proto__</code> property
in a JSON object literal just adds a property named
<code>__proto__</code>. With this release, esbuild will now work around
this problem by converting JSON to JavaScript with a computed property
key in this case:</p>
<pre lang="js"><code>// Original code
import data from
'data:application/json,{"__proto__":{"fail":true}}'
if (Object.getPrototypeOf(data)?.fail) throw 'fail'
<p>// Old output (with --bundle)
(() => {
//
<data:application/json,{"<strong>proto</strong>":{"fail":true}}>
var json_proto_fail_true_default = { <strong>proto</strong>: { fail:
true } };</p>
<p>// entry.js
if (Object.getPrototypeOf(json_proto_fail_true_default)?.fail)
throw "fail";
})();</p>
<p></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.20.2</h2>
<ul>
<li>
<p>Support TypeScript experimental decorators on <code>abstract</code>
class fields (<a
href="https://redirect.github.com/evanw/esbuild/issues/3684">#3684</a>)</p>
<p>With this release, you can now use TypeScript experimental decorators
on <code>abstract</code> class fields. This was silently compiled
incorrectly in esbuild 0.19.7 and below, and was an error from esbuild
0.19.8 to esbuild 0.20.1. Code such as the following should now work
correctly:</p>
<pre lang="ts"><code>// Original code
const log = (x: any, y: string) => console.log(y)
abstract class Foo { @log abstract foo: string }
new class extends Foo { foo = '' }
<p>// Old output (with --loader=ts
--tsconfig-raw={&quot;compilerOptions&quot;:{&quot;experimentalDecorators&quot;:true}})
const log = (x, y) => console.log(y);
class Foo {
}
new class extends Foo {
foo = "";
}();</p>
<p>// New output (with --loader=ts
--tsconfig-raw={&quot;compilerOptions&quot;:{&quot;experimentalDecorators&quot;:true}})
const log = (x, y) => console.log(y);
class Foo {
}
__decorateClass([
log
], Foo.prototype, "foo", 2);
new class extends Foo {
foo = "";
}();
</code></pre></p>
</li>
<li>
<p>JSON loader now preserves <code>__proto__</code> properties (<a
href="https://redirect.github.com/evanw/esbuild/issues/3700">#3700</a>)</p>
<p>Copying JSON source code into a JavaScript file will change its
meaning if a JSON object contains the <code>__proto__</code> key. A
literal <code>__proto__</code> property in a JavaScript object literal
sets the prototype of the object instead of adding a property named
<code>__proto__</code>, while a literal <code>__proto__</code> property
in a JSON object literal just adds a property named
<code>__proto__</code>. With this release, esbuild will now work around
this problem by converting JSON to JavaScript with a computed property
key in this case:</p>
<pre lang="js"><code>// Original code
import data from
'data:application/json,{"__proto__":{"fail":true}}'
if (Object.getPrototypeOf(data)?.fail) throw 'fail'
<p>// Old output (with --bundle)
(() => {
//
<data:application/json,{"<strong>proto</strong>":{"fail":true}}>
var json_proto_fail_true_default = { <strong>proto</strong>: { fail:
true } };</p>
<p>// entry.js
if (Object.getPrototypeOf(json_proto_fail_true_default)?.fail)
throw "fail";
})();
</code></pre></p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="617eddaa32"><code>617edda</code></a>
publish 0.20.2 to npm</li>
<li><a
href="4780075ace"><code>4780075</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3700">#3700</a>:
json loader preserves <code>__proto__</code> keys</li>
<li><a
href="30bed2d2d7"><code>30bed2d</code></a>
better errors for invalid js decorator syntax</li>
<li><a
href="300eeb7112"><code>300eeb7</code></a>
ts: allow non-null assertions in js decorators</li>
<li><a
href="4d997d9485"><code>4d997d9</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3698">#3698</a>:
yarn pnp edge case with <code>tsconfig.json</code></li>
<li><a
href="cf42954760"><code>cf42954</code></a>
resolver: improve some debug logging</li>
<li><a
href="b0765ae132"><code>b0765ae</code></a>
fix some lints</li>
<li><a
href="dfa6206919"><code>dfa6206</code></a>
fix some comments (closes <a
href="https://redirect.github.com/evanw/esbuild/issues/3683">#3683</a>)</li>
<li><a
href="ae5cc17516"><code>ae5cc17</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3684">#3684</a>:
<code>abstract</code> experimental decorators</li>
<li><a
href="c809af050a"><code>c809af0</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/2388">#2388</a>:
allow consuming types without dom types (<a
href="https://redirect.github.com/evanw/esbuild/issues/3679">#3679</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.20.1...v0.20.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `yaml` from 2.4.0 to 2.4.1
<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.4.1</h2>
<ul>
<li>cst: Do not drop trailing newline after line comment in block-map if
followed by unindented block-seq value (<a
href="https://redirect.github.com/eemeli/yaml/issues/525">#525</a>)</li>
<li>Stringify flow collection comments in parent (<a
href="https://redirect.github.com/eemeli/yaml/issues/528">#528</a>)</li>
<li>Do not skip folding lines after the first in indented block scalars
(<a
href="https://redirect.github.com/eemeli/yaml/issues/529">#529</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4aa56d337d"><code>4aa56d3</code></a>
2.4.1</li>
<li><a
href="e651ce1457"><code>e651ce1</code></a>
chore: Refresh lockfile</li>
<li><a
href="1775f1341f"><code>1775f13</code></a>
test: Drop unused import to satisfy TS</li>
<li><a
href="40903db981"><code>40903db</code></a>
fix(cst): Do not drop trailing newline after line comment in block-map
if fol...</li>
<li><a
href="46a816ecc1"><code>46a816e</code></a>
fix: Do not skip folding lines after the first in indented block scalars
(fix...</li>
<li><a
href="750adbe05d"><code>750adbe</code></a>
fix: Stringify flow collection comments in parent (fixes <a
href="https://redirect.github.com/eemeli/yaml/issues/528">#528</a>)</li>
<li><a
href="e07998c607"><code>e07998c</code></a>
ci: Move update action to yaml-playground, where it has write
access</li>
<li><a
href="5ba73d1706"><code>5ba73d1</code></a>
ci: Update yaml-playground build & BrowserStack tests (<a
href="https://redirect.github.com/eemeli/yaml/issues/524">#524</a>)</li>
<li>See full diff in <a
href="https://github.com/eemeli/yaml/compare/v2.4.0...v2.4.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>
It is convenient to use `https://api.github.com/users/$app_slug[bot]` to
obtain the corresponding account ID later.
Then build `Signed-off-by: $app_slug[bot]
<$id+$app_slug[bot]@users.noreply.github.com>`.
Currently, there is no Linux environment to build test snapshot files
Bumps the development-dependencies group with 4 updates:
[ava](https://github.com/avajs/ava),
[dotenv](https://github.com/motdotla/dotenv),
[esbuild](https://github.com/evanw/esbuild) and
[yaml](https://github.com/eemeli/yaml).
Updates `ava` from 6.1.1 to 6.1.2
<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.1.2</h2>
<h2>What's Changed</h2>
<ul>
<li>Fix throws assertions rejecting falsy values when <code>any:
true</code> by <a
href="https://github.com/gibson042"><code>@gibson042</code></a> in <a
href="https://redirect.github.com/avajs/ava/pull/3313">avajs/ava#3313</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/avajs/ava/compare/v6.1.1...v6.1.2">https://github.com/avajs/ava/compare/v6.1.1...v6.1.2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="5d48c953e5"><code>5d48c95</code></a>
6.1.2</li>
<li><a
href="be5000aac1"><code>be5000a</code></a>
Fix throws assertions rejecting falsy values when any: true</li>
<li><a
href="1d62caf585"><code>1d62caf</code></a>
Upgrade xo to v0.57.0</li>
<li>See full diff in <a
href="https://github.com/avajs/ava/compare/v6.1.1...v6.1.2">compare
view</a></li>
</ul>
</details>
<br />
Updates `dotenv` from 16.4.1 to 16.4.5
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md">dotenv's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.4.4...v16.4.5">16.4.5</a>
(2024-02-19)</h2>
<h3>Changed</h3>
<ul>
<li>🐞 fix recent regression when using <code>path</code> option. return
to historical behavior: do not attempt to auto find <code>.env</code> if
<code>path</code> set. (regression was introduced in
<code>16.4.3</code>) <a
href="https://redirect.github.com/motdotla/dotenv/pull/814">#814</a></li>
</ul>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.4.3...v16.4.4">16.4.4</a>
(2024-02-13)</h2>
<h3>Changed</h3>
<ul>
<li>🐞 Replaced chaining operator <code>?.</code> with old school
<code>&&</code> (fixing node 12 failures) <a
href="https://redirect.github.com/motdotla/dotenv/pull/812">#812</a></li>
</ul>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.4.2...v16.4.3">16.4.3</a>
(2024-02-12)</h2>
<h3>Changed</h3>
<ul>
<li>Fixed processing of multiple files in <code>options.path</code> <a
href="https://redirect.github.com/motdotla/dotenv/pull/805">#805</a></li>
</ul>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.4.1...v16.4.2">16.4.2</a>
(2024-02-10)</h2>
<h3>Changed</h3>
<ul>
<li>Changed funding link in package.json to <a
href="https://dotenvx.com"><code>dotenvx.com</code></a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9f3e83352e"><code>9f3e833</code></a>
16.4.5</li>
<li><a
href="69241772b6"><code>6924177</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/814">#814</a>
from motdotla/dont-check-existance</li>
<li><a
href="353342048c"><code>3533420</code></a>
changelog 🪵</li>
<li><a
href="249e5a64f6"><code>249e5a6</code></a>
adjust logic to support tests</li>
<li><a
href="87fd887e31"><code>87fd887</code></a>
do not check if exists</li>
<li><a
href="1146910932"><code>1146910</code></a>
rename .env-multiline to .env.multiline</li>
<li><a
href="d03e39794a"><code>d03e397</code></a>
16.4.4</li>
<li><a
href="3275a0a940"><code>3275a0a</code></a>
changelog 🪵</li>
<li><a
href="f40a8c3e35"><code>f40a8c3</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/812">#812</a>
from motdotla/patch-12</li>
<li><a
href="1dc22d312f"><code>1dc22d3</code></a>
replace 14 chaining operator</li>
<li>Additional commits viewable in <a
href="https://github.com/motdotla/dotenv/compare/v16.4.1...v16.4.5">compare
view</a></li>
</ul>
</details>
<br />
Updates `esbuild` from 0.20.0 to 0.20.1
<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.20.1</h2>
<ul>
<li>
<p>Fix a bug with the CSS nesting transform (<a
href="https://redirect.github.com/evanw/esbuild/issues/3648">#3648</a>)</p>
<p>This release fixes a bug with the CSS nesting transform for older
browsers where the generated CSS could be incorrect if a selector list
contained a pseudo element followed by another selector. The bug was
caused by incorrectly mutating the parent rule's selector list when
filtering out pseudo elements for the child rules:</p>
<pre lang="css"><code>/* Original code */
.foo {
&:after,
& .bar {
color: red;
}
}
<p>/* Old output (with --supported:nesting=false) */
.foo .bar,
.foo .bar {
color: red;
}</p>
<p>/* New output (with --supported:nesting=false) */
.foo:after,
.foo .bar {
color: red;
}
</code></pre></p>
</li>
<li>
<p>Constant folding for JavaScript inequality operators (<a
href="https://redirect.github.com/evanw/esbuild/issues/3645">#3645</a>)</p>
<p>This release introduces constant folding for the <code>< >
<= >=</code> operators. The minifier will now replace these
operators with <code>true</code> or <code>false</code> when both sides
are compile-time numeric or string constants:</p>
<pre lang="js"><code>// Original code
console.log(1 < 2, '🍕' > '🧀')
<p>// Old output (with --minify)
console.log(1<2,"🍕">"🧀");</p>
<p>// New output (with --minify)
console.log(!0,!1);
</code></pre></p>
</li>
<li>
<p>Better handling of <code>__proto__</code> edge cases (<a
href="https://redirect.github.com/evanw/esbuild/pull/3651">#3651</a>)</p>
<p>JavaScript object literal syntax contains a special case where a
non-computed property with a key of <code>__proto__</code> sets the
prototype of the object. This does not apply to computed properties or
to properties that use the shorthand property syntax introduced in ES6.
Previously esbuild didn't correctly preserve the "sets the
prototype" status of properties inside an object literal, meaning a
property that sets the prototype could accidentally be transformed into
one that doesn't and vice versa. This has now been fixed:</p>
<pre lang="js"><code>// Original code
function foo(__proto__) {
return { __proto__: __proto__ } // Note: sets the prototype
</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.20.1</h2>
<ul>
<li>
<p>Fix a bug with the CSS nesting transform (<a
href="https://redirect.github.com/evanw/esbuild/issues/3648">#3648</a>)</p>
<p>This release fixes a bug with the CSS nesting transform for older
browsers where the generated CSS could be incorrect if a selector list
contained a pseudo element followed by another selector. The bug was
caused by incorrectly mutating the parent rule's selector list when
filtering out pseudo elements for the child rules:</p>
<pre lang="css"><code>/* Original code */
.foo {
&:after,
& .bar {
color: red;
}
}
<p>/* Old output (with --supported:nesting=false) */
.foo .bar,
.foo .bar {
color: red;
}</p>
<p>/* New output (with --supported:nesting=false) */
.foo:after,
.foo .bar {
color: red;
}
</code></pre></p>
</li>
<li>
<p>Constant folding for JavaScript inequality operators (<a
href="https://redirect.github.com/evanw/esbuild/issues/3645">#3645</a>)</p>
<p>This release introduces constant folding for the <code>< >
<= >=</code> operators. The minifier will now replace these
operators with <code>true</code> or <code>false</code> when both sides
are compile-time numeric or string constants:</p>
<pre lang="js"><code>// Original code
console.log(1 < 2, '🍕' > '🧀')
<p>// Old output (with --minify)
console.log(1<2,"🍕">"🧀");</p>
<p>// New output (with --minify)
console.log(!0,!1);
</code></pre></p>
</li>
<li>
<p>Better handling of <code>__proto__</code> edge cases (<a
href="https://redirect.github.com/evanw/esbuild/pull/3651">#3651</a>)</p>
<p>JavaScript object literal syntax contains a special case where a
non-computed property with a key of <code>__proto__</code> sets the
prototype of the object. This does not apply to computed properties or
to properties that use the shorthand property syntax introduced in ES6.
Previously esbuild didn't correctly preserve the "sets the
prototype" status of properties inside an object literal, meaning a
property that sets the prototype could accidentally be transformed into
one that doesn't and vice versa. This has now been fixed:</p>
<pre lang="js"><code>// Original code
function foo(__proto__) {
</code></pre>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9f9e4f85e6"><code>9f9e4f8</code></a>
publish 0.20.1 to npm</li>
<li><a
href="ac365374f9"><code>ac36537</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3651">#3651</a>:
handle <code>__proto__</code> edge cases better</li>
<li><a
href="555db48d3d"><code>555db48</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3645">#3645</a>:
constant folding for <code>\< > \<= >=</code></li>
<li><a
href="5650831e1e"><code>5650831</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3650">#3650</a>:
add a wrapper for float64 math</li>
<li><a
href="d086889869"><code>d086889</code></a>
fix some lints</li>
<li><a
href="ad3d8c63ea"><code>ad3d8c6</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3648">#3648</a>:
copy selectors before checking children</li>
<li><a
href="a08f30db4a"><code>a08f30d</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3634">#3634</a>:
crash if resolving with bad source dir</li>
<li>See full diff in <a
href="https://github.com/evanw/esbuild/compare/v0.20.0...v0.20.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `yaml` from 2.3.4 to 2.4.0
<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.4.0</h2>
<ul>
<li>Add a command-line tool (<a
href="https://redirect.github.com/eemeli/yaml/issues/523">#523</a>)</li>
<li>Use the <code>lineWidth</code> option for line breaking in flow
collections (<a
href="https://redirect.github.com/eemeli/yaml/issues/522">#522</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="8d8cfb70a1"><code>8d8cfb7</code></a>
2.4.0</li>
<li><a
href="e6a5e28052"><code>e6a5e28</code></a>
feat: Add CLI tool (<a
href="https://redirect.github.com/eemeli/yaml/issues/523">#523</a>)</li>
<li><a
href="959f1cf937"><code>959f1cf</code></a>
docs: Add a predocs script creating symlinks for docs generator</li>
<li><a
href="74a86e2670"><code>74a86e2</code></a>
docs: Add yaml-types mention</li>
<li><a
href="e80a4c5f2f"><code>e80a4c5</code></a>
chore: Update json-test-suite</li>
<li><a
href="b5fa4cbe61"><code>b5fa4cb</code></a>
chore: Update Babel plugins</li>
<li><a
href="9fc76faedd"><code>9fc76fa</code></a>
chore: Update <code>@types/node</code> to v20</li>
<li><a
href="495cfebf3d"><code>495cfeb</code></a>
chore: Update rollup to v4</li>
<li><a
href="28b3ba5bf2"><code>28b3ba5</code></a>
chore: Update typescript-eslint to v7</li>
<li><a
href="e4f963ae15"><code>e4f963a</code></a>
style: Apply updated Prettier rules</li>
<li>Additional commits viewable in <a
href="https://github.com/eemeli/yaml/compare/v2.3.4...v2.4.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>
Bumps the development-dependencies group with 5 updates:
| Package | From | To |
| --- | --- | --- |
| [ava](https://github.com/avajs/ava) | `6.0.1` | `6.1.1` |
| [c8](https://github.com/bcoe/c8) | `8.0.1` | `9.1.0` |
| [dotenv](https://github.com/motdotla/dotenv) | `16.3.1` | `16.4.1` |
| [esbuild](https://github.com/evanw/esbuild) | `0.19.11` | `0.20.0` |
| [undici](https://github.com/nodejs/undici) | `6.2.1` | `6.6.0` |
Updates `ava` from 6.0.1 to 6.1.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.1.1</h2>
<h2>What's Changed</h2>
<ul>
<li>Fix 'previous failures' in watch mode always incrementing by <a
href="https://github.com/novemberborn"><code>@novemberborn</code></a>
in <a
href="https://redirect.github.com/avajs/ava/pull/3297">avajs/ava#3297</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/avajs/ava/compare/v6.1.0...v6.1.1">https://github.com/avajs/ava/compare/v6.1.0...v6.1.1</a></p>
<h2>v6.1.0</h2>
<h2>What's Changed</h2>
<ul>
<li>
<p>Implement <code>registerCompletionHandler()</code> by <a
href="https://github.com/novemberborn"><code>@novemberborn</code></a>
in <a
href="https://redirect.github.com/avajs/ava/pull/3283">avajs/ava#3283</a></p>
<p>AVA 6 expects test code to clean up gracefully when the tests are
complete, allowing the test environment (worker thread or child process)
to exit. If this does not happen, AVA will report a timeout. You can use
<code>registerCompletionHandler()</code> to perform any other clean up
(or indeed exit the process) after AVA has completed the test execution.
See <a
href="https://github.com/avajs/ava/blob/main/docs/08-common-pitfalls.md#timeouts-because-a-file-failed-to-exit">the
description here</a>.</p>
</li>
<li>
<p>Fix potential bug with watch mode when no failed test files are
written by <a
href="https://github.com/novemberborn"><code>@novemberborn</code></a>
in <a
href="https://redirect.github.com/avajs/ava/pull/3287">avajs/ava#3287</a></p>
</li>
<li>
<p>Fix <code>ava/internal</code> ESM type module by <a
href="https://github.com/codetheweb"><code>@codetheweb</code></a> in <a
href="https://redirect.github.com/avajs/ava/pull/3292">avajs/ava#3292</a></p>
</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/avajs/ava/compare/v6.0.1...v6.1.0">https://github.com/avajs/ava/compare/v6.0.1...v6.1.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="2e0c2b1cef"><code>2e0c2b1</code></a>
6.1.1</li>
<li><a
href="5161bf77d4"><code>5161bf7</code></a>
Update dependencies</li>
<li><a
href="15dddf3ff5"><code>15dddf3</code></a>
Fix external-assertions snapshot for Node.js 20.11</li>
<li><a
href="db0fdb2925"><code>db0fdb2</code></a>
Fix 'previous failures' in watch mode always incrementing</li>
<li><a
href="735bf4172a"><code>735bf41</code></a>
Update TypeScript recipe to suggest --import flag and tsimp</li>
<li><a
href="aae39b20ba"><code>aae39b2</code></a>
6.1.0</li>
<li><a
href="c3e2c72e0a"><code>c3e2c72</code></a>
Fix ava/internal ESM type module</li>
<li><a
href="0a050243ea"><code>0a05024</code></a>
Implement registerCompletionHandler()</li>
<li><a
href="cc8b839724"><code>cc8b839</code></a>
Ensure AVA exits with code 1 after an unexpected process.exit() in a
test worker</li>
<li><a
href="35f6c86bcd"><code>35f6c86</code></a>
Fix potential bug with watch mode when no failed test files are
written</li>
<li>Additional commits viewable in <a
href="https://github.com/avajs/ava/compare/v6.0.1...v6.1.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `c8` from 8.0.1 to 9.1.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/bcoe/c8/releases">c8's
releases</a>.</em></p>
<blockquote>
<h2>v9.1.0</h2>
<h2><a
href="https://github.com/bcoe/c8/compare/v9.0.0...v9.1.0">9.1.0</a>
(2024-01-11)</h2>
<h3>Features</h3>
<ul>
<li>support passing reporter options from config (<a
href="https://redirect.github.com/bcoe/c8/issues/459">#459</a>) (<a
href="88db5db56e">88db5db</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>refactor:</strong> remove stale check for
createDynamicModule (<a
href="5e18365b15">5e18365</a>)</li>
</ul>
<h2>v9.0.0</h2>
<h2><a
href="https://github.com/bcoe/c8/compare/v8.0.1...v9.0.0">9.0.0</a>
(2024-01-03)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<ul>
<li><strong>build:</strong> minimum Node.js version is now 14.14.0</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>build:</strong> minimum Node.js version is now 14.14.0 (<a
href="2cdc86bd0a">2cdc86b</a>)</li>
<li><strong>deps:</strong> update foreground-child to promise API (<a
href="https://redirect.github.com/bcoe/c8/issues/512">#512</a>) (<a
href="b46b640127">b46b640</a>)</li>
<li><strong>deps:</strong> use Node.js built in rm (<a
href="2cdc86bd0a">2cdc86b</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/bcoe/c8/blob/main/CHANGELOG.md">c8's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/bcoe/c8/compare/v9.0.0...v9.1.0">9.1.0</a>
(2024-01-11)</h2>
<h3>Features</h3>
<ul>
<li>support passing reporter options from config (<a
href="https://redirect.github.com/bcoe/c8/issues/459">#459</a>) (<a
href="88db5db56e">88db5db</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>refactor:</strong> remove stale check for
createDynamicModule (<a
href="5e18365b15">5e18365</a>)</li>
</ul>
<h2><a
href="https://github.com/bcoe/c8/compare/v8.0.1...v9.0.0">9.0.0</a>
(2024-01-03)</h2>
<h3>⚠ BREAKING CHANGES</h3>
<ul>
<li><strong>build:</strong> minimum Node.js version is now 14.14.0</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>build:</strong> minimum Node.js version is now 14.14.0 (<a
href="2cdc86bd0a">2cdc86b</a>)</li>
<li><strong>deps:</strong> update foreground-child to promise API (<a
href="https://redirect.github.com/bcoe/c8/issues/512">#512</a>) (<a
href="b46b640127">b46b640</a>)</li>
<li><strong>deps:</strong> use Node.js built in rm (<a
href="2cdc86bd0a">2cdc86b</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="4ae2a4d7de"><code>4ae2a4d</code></a>
chore(main): release 9.1.0 (<a
href="https://redirect.github.com/bcoe/c8/issues/513">#513</a>)</li>
<li><a
href="88db5db56e"><code>88db5db</code></a>
feat: support passing reporter options from config (<a
href="https://redirect.github.com/bcoe/c8/issues/459">#459</a>)</li>
<li><a
href="5e18365b15"><code>5e18365</code></a>
fix(refactor): remove stale check for createDynamicModule</li>
<li><a
href="128bee2336"><code>128bee2</code></a>
chore(main): release 9.0.0 (<a
href="https://redirect.github.com/bcoe/c8/issues/510">#510</a>)</li>
<li><a
href="8724c706ef"><code>8724c70</code></a>
chore(deps): update dependency <code>@types/node</code> to v20 (<a
href="https://redirect.github.com/bcoe/c8/issues/496">#496</a>)</li>
<li><a
href="66705b5955"><code>66705b5</code></a>
chore(deps): update dependency typescript to v5 (<a
href="https://redirect.github.com/bcoe/c8/issues/458">#458</a>)</li>
<li><a
href="b46b640127"><code>b46b640</code></a>
feat(deps): update foreground-child to promise API (<a
href="https://redirect.github.com/bcoe/c8/issues/512">#512</a>)</li>
<li><a
href="ef672da08d"><code>ef672da</code></a>
test: fix snapshot (<a
href="https://redirect.github.com/bcoe/c8/issues/511">#511</a>)</li>
<li><a
href="2cdc86bd0a"><code>2cdc86b</code></a>
chore(deps): Remove rimraf (<a
href="https://redirect.github.com/bcoe/c8/issues/509">#509</a>)</li>
<li>See full diff in <a
href="https://github.com/bcoe/c8/compare/v8.0.1...v9.1.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `dotenv` from 16.3.1 to 16.4.1
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md">dotenv's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.4.0...v16.4.1">16.4.1</a>
(2024-01-24)</h2>
<ul>
<li>Patch support for array as <code>path</code> option <a
href="https://redirect.github.com/motdotla/dotenv/pull/797">#797</a></li>
</ul>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.3.2...v16.4.0">16.4.0</a>
(2024-01-23)</h2>
<ul>
<li>Add <code>error.code</code> to error messages around
<code>.env.vault</code> decryption handling <a
href="https://redirect.github.com/motdotla/dotenv/pull/795">#795</a></li>
<li>Add ability to find <code>.env.vault</code> file when filename(s)
passed as an array <a
href="https://redirect.github.com/motdotla/dotenv/pull/784">#784</a></li>
</ul>
<h2><a
href="https://github.com/motdotla/dotenv/compare/v16.3.1...v16.3.2">16.3.2</a>
(2024-01-18)</h2>
<h3>Added</h3>
<ul>
<li>Add debug message when no encoding set <a
href="https://redirect.github.com/motdotla/dotenv/pull/735">#735</a></li>
</ul>
<h3>Changed</h3>
<ul>
<li>Fix output typing for <code>populate</code> <a
href="https://redirect.github.com/motdotla/dotenv/pull/792">#792</a></li>
<li>Use subarray instead of slice <a
href="https://redirect.github.com/motdotla/dotenv/pull/793">#793</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="e251ee244a"><code>e251ee2</code></a>
16.4.1</li>
<li><a
href="a7fee29bd0"><code>a7fee29</code></a>
update CHANGELOG 🪵</li>
<li><a
href="579d136c21"><code>579d136</code></a>
update README</li>
<li><a
href="7ea2f81a2e"><code>7ea2f81</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/798">#798</a>
from motdotla/fix-tests</li>
<li><a
href="6b829d2551"><code>6b829d2</code></a>
demonstrate currently failing (pending) test. multiple env files should
merge</li>
<li><a
href="3e2284b89d"><code>3e2284b</code></a>
largely remove mocking from tests except where useful</li>
<li><a
href="2039c4edc6"><code>2039c4e</code></a>
wip: fix tests</li>
<li><a
href="48a6ade3bf"><code>48a6ade</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/797">#797</a>
from tran-simon/master</li>
<li><a
href="cfd735d7d0"><code>cfd735d</code></a>
fix: support array for path option</li>
<li><a
href="a44cb3dd00"><code>a44cb3d</code></a>
update README</li>
<li>Additional commits viewable in <a
href="https://github.com/motdotla/dotenv/compare/v16.3.1...v16.4.1">compare
view</a></li>
</ul>
</details>
<br />
Updates `esbuild` from 0.19.11 to 0.20.0
<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.20.0</h2>
<p><strong>This release deliberately contains backwards-incompatible
changes.</strong> To avoid automatically picking up releases like this,
you should either be pinning the exact version of <code>esbuild</code>
in your <code>package.json</code> file (recommended) or be using a
version range syntax that only accepts patch upgrades such as
<code>^0.19.0</code> or <code>~0.19.0</code>. See npm's documentation
about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<p>This time there is only one breaking change, and it only matters for
people using Deno. Deno tests that use esbuild will now fail unless you
make the change described below.</p>
<ul>
<li>
<p>Work around API deprecations in Deno 1.40.x (<a
href="https://redirect.github.com/evanw/esbuild/issues/3609">#3609</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/3611">#3611</a>)</p>
<p><a href="https://deno.com/blog/v1.40">Deno 1.40.0</a> was just
released and introduced run-time warnings about certain APIs that
esbuild uses. With this release, esbuild will work around these run-time
warnings by using newer APIs if they are present and falling back to the
original APIs otherwise. This should avoid the warnings without breaking
compatibility with older versions of Deno.</p>
<p>Unfortunately, doing this introduces a breaking change. The newer
child process APIs lack a way to synchronously terminate esbuild's child
process, so calling <code>esbuild.stop()</code> from within a Deno test
is no longer sufficient to prevent Deno from failing a test that uses
esbuild's API (Deno fails tests that create a child process without
killing it before the test ends). To work around this, esbuild's
<code>stop()</code> function has been changed to return a promise, and
you now have to change <code>esbuild.stop()</code> to <code>await
esbuild.stop()</code> in all of your Deno tests.</p>
</li>
<li>
<p>Reorder implicit file extensions within <code>node_modules</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3341">#3341</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3608">#3608</a>)</p>
<p>In <a
href="https://github.com/evanw/esbuild/releases/v0.18.0">version
0.18.0</a>, esbuild changed the behavior of implicit file extensions
within <code>node_modules</code> directories (i.e. in published
packages) to prefer <code>.js</code> over <code>.ts</code> even when the
<code>--resolve-extensions=</code> order prefers <code>.ts</code> over
<code>.js</code> (which it does by default). However, doing that also
accidentally made esbuild prefer <code>.css</code> over
<code>.ts</code>, which caused problems for people that published
packages containing both TypeScript and CSS in files with the same
name.</p>
<p>With this release, esbuild will reorder TypeScript file extensions
immediately after the last JavaScript file extensions in the implicit
file extension order instead of putting them at the end of the order.
Specifically the default implicit file extension order is
<code>.tsx,.ts,.jsx,.js,.css,.json</code> which used to become
<code>.jsx,.js,.css,.json,.tsx,.ts</code> in <code>node_modules</code>
directories. With this release it will now become
<code>.jsx,.js,.tsx,.ts,.css,.json</code> instead.</p>
<p>Why even rewrite the implicit file extension order at all? One reason
is because the <code>.js</code> file is more likely to behave correctly
than the <code>.ts</code> file. The behavior of the <code>.ts</code>
file may depend on <code>tsconfig.json</code> and the
<code>tsconfig.json</code> file may not even be published, or may use
<code>extends</code> to refer to a base <code>tsconfig.json</code> file
that wasn't published. People can get into this situation when they
forget to add all <code>.ts</code> files to their
<code>.npmignore</code> file before publishing to npm. Picking
<code>.js</code> over <code>.ts</code> helps make it more likely that
resulting bundle will behave correctly.</p>
</li>
</ul>
<h2>v0.19.12</h2>
<ul>
<li>
<p>The "preserve" JSX mode now preserves JSX text verbatim (<a
href="https://redirect.github.com/evanw/esbuild/issues/3605">#3605</a>)</p>
<p>The <a href="https://facebook.github.io/jsx/">JSX specification</a>
deliberately doesn't specify how JSX text is supposed to be interpreted
and there is no canonical way to interpret JSX text. Two most popular
interpretations are Babel and TypeScript. Yes <a
href="https://twitter.com/jarredsumner/status/1456118847937781764">they
are different</a> (esbuild <a
href="https://twitter.com/evanwallace/status/1456122279453208576">deliberately
follows TypeScript</a> by the way).</p>
<p>Previously esbuild normalized text to the TypeScript interpretation
when the "preserve" JSX mode is active. However,
"preserve" should arguably reproduce the original JSX text
verbatim so that whatever JSX transform runs after esbuild is free to
interpret it however it wants. So with this release, esbuild will now
pass JSX text through unmodified:</p>
<pre lang="jsx"><code>// Original code
let el =
<a href={'/'} title='&apos;&quot;'> some text
{foo}
more text </a>
<p>// Old output (with --loader=jsx --jsx=preserve)
let el = <a href="/" title={<code>'&quot;</code>}>
{" some text"}
{foo}
{"more text "}
</a>;</p>
<p>// New output (with --loader=jsx --jsx=preserve)
let el = <a href={"/"} title='&apos;&quot;'>
some text
{foo}
more text </a>;
</code></pre></p>
</li>
<li>
<p>Allow JSX elements as JSX attribute values</p>
<p>JSX has an obscure feature where you can use JSX elements in
attribute position without surrounding them with <code>{...}</code>. It
looks like this:</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.20.0</h2>
<p><strong>This release deliberately contains backwards-incompatible
changes.</strong> To avoid automatically picking up releases like this,
you should either be pinning the exact version of <code>esbuild</code>
in your <code>package.json</code> file (recommended) or be using a
version range syntax that only accepts patch upgrades such as
<code>^0.19.0</code> or <code>~0.19.0</code>. See npm's documentation
about <a
href="https://docs.npmjs.com/cli/v6/using-npm/semver/">semver</a> for
more information.</p>
<p>This time there is only one breaking change, and it only matters for
people using Deno. Deno tests that use esbuild will now fail unless you
make the change described below.</p>
<ul>
<li>
<p>Work around API deprecations in Deno 1.40.x (<a
href="https://redirect.github.com/evanw/esbuild/issues/3609">#3609</a>,
<a
href="https://redirect.github.com/evanw/esbuild/pull/3611">#3611</a>)</p>
<p><a href="https://deno.com/blog/v1.40">Deno 1.40.0</a> was just
released and introduced run-time warnings about certain APIs that
esbuild uses. With this release, esbuild will work around these run-time
warnings by using newer APIs if they are present and falling back to the
original APIs otherwise. This should avoid the warnings without breaking
compatibility with older versions of Deno.</p>
<p>Unfortunately, doing this introduces a breaking change. The newer
child process APIs lack a way to synchronously terminate esbuild's child
process, so calling <code>esbuild.stop()</code> from within a Deno test
is no longer sufficient to prevent Deno from failing a test that uses
esbuild's API (Deno fails tests that create a child process without
killing it before the test ends). To work around this, esbuild's
<code>stop()</code> function has been changed to return a promise, and
you now have to change <code>esbuild.stop()</code> to <code>await
esbuild.stop()</code> in all of your Deno tests.</p>
</li>
<li>
<p>Reorder implicit file extensions within <code>node_modules</code> (<a
href="https://redirect.github.com/evanw/esbuild/issues/3341">#3341</a>,
<a
href="https://redirect.github.com/evanw/esbuild/issues/3608">#3608</a>)</p>
<p>In <a
href="https://github.com/evanw/esbuild/releases/v0.18.0">version
0.18.0</a>, esbuild changed the behavior of implicit file extensions
within <code>node_modules</code> directories (i.e. in published
packages) to prefer <code>.js</code> over <code>.ts</code> even when the
<code>--resolve-extensions=</code> order prefers <code>.ts</code> over
<code>.js</code> (which it does by default). However, doing that also
accidentally made esbuild prefer <code>.css</code> over
<code>.ts</code>, which caused problems for people that published
packages containing both TypeScript and CSS in files with the same
name.</p>
<p>With this release, esbuild will reorder TypeScript file extensions
immediately after the last JavaScript file extensions in the implicit
file extension order instead of putting them at the end of the order.
Specifically the default implicit file extension order is
<code>.tsx,.ts,.jsx,.js,.css,.json</code> which used to become
<code>.jsx,.js,.css,.json,.tsx,.ts</code> in <code>node_modules</code>
directories. With this release it will now become
<code>.jsx,.js,.tsx,.ts,.css,.json</code> instead.</p>
<p>Why even rewrite the implicit file extension order at all? One reason
is because the <code>.js</code> file is more likely to behave correctly
than the <code>.ts</code> file. The behavior of the <code>.ts</code>
file may depend on <code>tsconfig.json</code> and the
<code>tsconfig.json</code> file may not even be published, or may use
<code>extends</code> to refer to a base <code>tsconfig.json</code> file
that wasn't published. People can get into this situation when they
forget to add all <code>.ts</code> files to their
<code>.npmignore</code> file before publishing to npm. Picking
<code>.js</code> over <code>.ts</code> helps make it more likely that
resulting bundle will behave correctly.</p>
</li>
</ul>
<h2>0.19.12</h2>
<ul>
<li>
<p>The "preserve" JSX mode now preserves JSX text verbatim (<a
href="https://redirect.github.com/evanw/esbuild/issues/3605">#3605</a>)</p>
<p>The <a href="https://facebook.github.io/jsx/">JSX specification</a>
deliberately doesn't specify how JSX text is supposed to be interpreted
and there is no canonical way to interpret JSX text. Two most popular
interpretations are Babel and TypeScript. Yes <a
href="https://twitter.com/jarredsumner/status/1456118847937781764">they
are different</a> (esbuild <a
href="https://twitter.com/evanwallace/status/1456122279453208576">deliberately
follows TypeScript</a> by the way).</p>
<p>Previously esbuild normalized text to the TypeScript interpretation
when the "preserve" JSX mode is active. However,
"preserve" should arguably reproduce the original JSX text
verbatim so that whatever JSX transform runs after esbuild is free to
interpret it however it wants. So with this release, esbuild will now
pass JSX text through unmodified:</p>
<pre lang="jsx"><code>// Original code
let el =
<a href={'/'} title='&apos;&quot;'> some text
{foo}
more text </a>
<p>// Old output (with --loader=jsx --jsx=preserve)
let el = <a href="/" title={<code>'&quot;</code>}>
{" some text"}
{foo}
{"more text "}
</a>;</p>
<p>// New output (with --loader=jsx --jsx=preserve)
let el = <a href={"/"} title='&apos;&quot;'>
some text
{foo}
more text </a>;
</code></pre></p>
</li>
<li>
<p>Allow JSX elements as JSX attribute values</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="2af5ccf478"><code>2af5ccf</code></a>
publish 0.20.0 to npm</li>
<li><a
href="0bccf08675"><code>0bccf08</code></a>
fix <a
href="https://redirect.github.com/esbuild/deno-esbuild/pull/5">esbuild/deno-esbuild#5</a></li>
<li><a
href="931f87db26"><code>931f87d</code></a>
work around api deprecations in deno 1.40.x (<a
href="https://redirect.github.com/evanw/esbuild/issues/3609">#3609</a>)
(<a
href="https://redirect.github.com/evanw/esbuild/issues/3611">#3611</a>)</li>
<li><a
href="22a9cf5754"><code>22a9cf5</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3341">#3341</a>,
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3608">#3608</a>:
sort <code>.ts</code> right after <code>.js</code></li>
<li><a
href="f8ec3007b6"><code>f8ec300</code></a>
run <code>npm pkg fix</code> as suggested by the npm cli</li>
<li><a
href="d7fd1ad357"><code>d7fd1ad</code></a>
publish 0.19.12 to npm</li>
<li><a
href="e04a6900b7"><code>e04a690</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3605">#3605</a>:
print the original JSX AST unmodified</li>
<li><a
href="f571399222"><code>f571399</code></a>
allow jsx elements as jsx attribute values</li>
<li><a
href="a652e730ff"><code>a652e73</code></a>
run <code>make update-compat-table</code></li>
<li><a
href="35c0d65b9d"><code>35c0d65</code></a>
fix <a
href="https://redirect.github.com/evanw/esbuild/issues/3574">#3574</a>:
ts type parser bug with infer + extends</li>
<li>Additional commits viewable in <a
href="https://github.com/evanw/esbuild/compare/v0.19.11...v0.20.0">compare
view</a></li>
</ul>
</details>
<br />
Updates `undici` from 6.2.1 to 6.6.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>v6.6.0</h2>
<h2>What's Changed</h2>
<ul>
<li>add webSocket example by <a
href="https://github.com/mertcanaltin"><code>@mertcanaltin</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2626">nodejs/undici#2626</a></li>
<li>chore: remove atomic-sleep as dev dependency by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2648">nodejs/undici#2648</a></li>
<li>chore: remove semver as dev dependency by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2646">nodejs/undici#2646</a></li>
<li>chore: remove table as dev dependency by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2649">nodejs/undici#2649</a></li>
<li>chore: remove delay as dev dependency by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2647">nodejs/undici#2647</a></li>
<li>chore: reduce noise in test-logs test/issue-2349.js by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2655">nodejs/undici#2655</a></li>
<li>chore: fix faketimer warning in test/request-timeout.js by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2656">nodejs/undici#2656</a></li>
<li>chore: reduce noise in test logs test/client-node-max-header-size.js
by <a href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2654">nodejs/undici#2654</a></li>
<li>refactor: use fromInnerResponse by <a
href="https://github.com/tsctx"><code>@tsctx</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2635">nodejs/undici#2635</a></li>
<li>fix: support deflate raw responses by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2650">nodejs/undici#2650</a></li>
<li>Support building for externally shared js builtins by <a
href="https://github.com/mochaaP"><code>@mochaaP</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2643">nodejs/undici#2643</a></li>
<li>fix: typo clampAndCoarsenConnectionTimingInfo by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2653">nodejs/undici#2653</a></li>
<li>chore: use 'node:'-prefix for requiring node core modules by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2662">nodejs/undici#2662</a></li>
<li>build(deps-dev): bump husky from 8.0.3 to 9.0.7 by <a
href="https://github.com/dependabot"><code>@dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2667">nodejs/undici#2667</a></li>
<li>build(deps-dev): bump cronometro from 1.2.0 to 2.0.2 by <a
href="https://github.com/dependabot"><code>@dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2668">nodejs/undici#2668</a></li>
<li>remove timers/promises import by <a
href="https://github.com/KhafraDev"><code>@KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2665">nodejs/undici#2665</a></li>
<li>chore: fix various codesmells by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2669">nodejs/undici#2669</a></li>
<li>chore: remove this alias in agent.js by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2671">nodejs/undici#2671</a></li>
<li>chore: use optional chaining by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2666">nodejs/undici#2666</a></li>
<li>chore: small perf improvements by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2661">nodejs/undici#2661</a></li>
<li>implement spec changes from a while ago by <a
href="https://github.com/KhafraDev"><code>@KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2676">nodejs/undici#2676</a></li>
<li>websocket: fix close when no closing code is received by <a
href="https://github.com/KhafraDev"><code>@KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2680">nodejs/undici#2680</a></li>
<li>fix: make ci less flaky by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2684">nodejs/undici#2684</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/mochaaP"><code>@mochaaP</code></a> made
their first contribution in <a
href="https://redirect.github.com/nodejs/undici/pull/2643">nodejs/undici#2643</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v6.5.0...v6.6.0">https://github.com/nodejs/undici/compare/v6.5.0...v6.6.0</a></p>
<h2>v6.5.0</h2>
<h2>What's Changed</h2>
<ul>
<li>build(deps-dev): bump jsdom from 23.2.0 to 24.0.0 by <a
href="https://github.com/dependabot"><code>@dependabot</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2632">nodejs/undici#2632</a></li>
<li>feat: Implement EventSource by <a
href="https://github.com/Uzlopak"><code>@Uzlopak</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2608">nodejs/undici#2608</a></li>
<li>fix: readable body by <a
href="https://github.com/ronag"><code>@ronag</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2642">nodejs/undici#2642</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/nodejs/undici/compare/v6.4.0...v6.5.0">https://github.com/nodejs/undici/compare/v6.4.0...v6.5.0</a></p>
<h2>v6.4.0</h2>
<h2>What's Changed</h2>
<ul>
<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/2605">nodejs/undici#2605</a></li>
<li>cacheStorage: separate matchAll logic by <a
href="https://github.com/KhafraDev"><code>@KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2599">nodejs/undici#2599</a></li>
<li>cleanup index by <a
href="https://github.com/KhafraDev"><code>@KhafraDev</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2598">nodejs/undici#2598</a></li>
<li>feat: port <code>balanced-pool</code>, <code>ca-fingerprint</code>,
<code>client-abort</code> tests to <code>node:test</code> by <a
href="https://github.com/sosukesuzuki"><code>@sosukesuzuki</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2584">nodejs/undici#2584</a></li>
<li>ci: unpin nodejs workflow version by <a
href="https://github.com/dominykas"><code>@dominykas</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2434">nodejs/undici#2434</a></li>
<li>test(<a
href="https://redirect.github.com/nodejs/undici/issues/2600">#2600</a>):
Flaky debug test by <a
href="https://github.com/metcoder95"><code>@metcoder95</code></a> in <a
href="https://redirect.github.com/nodejs/undici/pull/2607">nodejs/undici#2607</a></li>
<li>fix: h2 hang issue with empty body by <a
href="https://github.com/timursevimli"><code>@timursevimli</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2601">nodejs/undici#2601</a></li>
<li>Fix tests for Node.js v21 by <a
href="https://github.com/sosukesuzuki"><code>@sosukesuzuki</code></a>
in <a
href="https://redirect.github.com/nodejs/undici/pull/2609">nodejs/undici#2609</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="fa2d2d29a4"><code>fa2d2d2</code></a>
Bumped v6.6.0</li>
<li><a
href="9bcf6f867f"><code>9bcf6f8</code></a>
fix: make ci less flaky (<a
href="https://redirect.github.com/nodejs/undici/issues/2684">#2684</a>)</li>
<li><a
href="0808a72157"><code>0808a72</code></a>
websocket: fix close when no closing code is received (<a
href="https://redirect.github.com/nodejs/undici/issues/2680">#2680</a>)</li>
<li><a
href="8220e7d192"><code>8220e7d</code></a>
implement spec changes from a while ago (<a
href="https://redirect.github.com/nodejs/undici/issues/2676">#2676</a>)</li>
<li><a
href="f1d7ada7eb"><code>f1d7ada</code></a>
chore: small perf improvements (<a
href="https://redirect.github.com/nodejs/undici/issues/2661">#2661</a>)</li>
<li><a
href="3e37392bd4"><code>3e37392</code></a>
chore: use optional chaining (<a
href="https://redirect.github.com/nodejs/undici/issues/2666">#2666</a>)</li>
<li><a
href="ee35bb0b7a"><code>ee35bb0</code></a>
chore: remove this alias in agent.js (<a
href="https://redirect.github.com/nodejs/undici/issues/2671">#2671</a>)</li>
<li><a
href="82477d734d"><code>82477d7</code></a>
chore: fix various codesmells (<a
href="https://redirect.github.com/nodejs/undici/issues/2669">#2669</a>)</li>
<li><a
href="2144da490e"><code>2144da4</code></a>
remove timers/promises import (<a
href="https://redirect.github.com/nodejs/undici/issues/2665">#2665</a>)</li>
<li><a
href="bed84897c3"><code>bed8489</code></a>
build(deps-dev): bump cronometro from 1.2.0 to 2.0.2 (<a
href="https://redirect.github.com/nodejs/undici/issues/2668">#2668</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/nodejs/undici/compare/v6.2.1...v6.6.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>
Fixes#72
If an Actions job is long enough, more than an hour can pass between
creating and revoking the App token in the post-job clean up step. Since
the token itself is used to authenticate with the revoke API, an expired
token will fail to be revoked.
This PR saves the token expiration in the actions state and uses that in
the post step to determine if the token can be revoked. I've also added
error handling to the revoke token API call, as it's unlikely that users
would want their job to fail if the token can't be revoked.
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="52346fed07">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="f5e57aa12e">f5e57aa</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="52346fed07"><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="aa7d921e1d"><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="cb73ca4c35"><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="5d261b118b"><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="f5e57aa12e"><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="5fdc2f19e0"><code>5fdc2f1</code></a>
build(deps): lock file maintenance</li>
<li><a
href="dda3b52a17"><code>dda3b52</code></a>
ci(action): update github/codeql-action action to v3</li>
<li><a
href="8bbd972db1"><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="28cdca80d0"><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="64eacb2776"><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="21a22dd094"><code>21a22dd</code></a>
6.2.0</li>
<li><a
href="e7d8789d43"><code>e7d8789</code></a>
Meta tweaks</li>
<li><a
href="b993a96738"><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>
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 & 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="5975b602b7"><code>5975b60</code></a>
6.0.1</li>
<li><a
href="32f282fc21"><code>32f282f</code></a>
Ensure watch mode works outside of its integration tests</li>
<li><a
href="cf7a2886bf"><code>cf7a288</code></a>
6.0.0</li>
<li><a
href="af5684dff5"><code>af5684d</code></a>
Don't force-exit after tests have completed</li>
<li><a
href="88e433376a"><code>88e4333</code></a>
Update dependencies & other minor tweaks</li>
<li><a
href="cac1d1fe64"><code>cac1d1f</code></a>
Tweak README</li>
<li><a
href="0492d32863"><code>0492d32</code></a>
Fix external assertions tests for Node.js 21</li>
<li><a
href="adbfcde981"><code>adbfcde</code></a>
Experimentally expose internal events for custom reporters</li>
<li><a
href="6790d50202"><code>6790d50</code></a>
Update memoize dependency</li>
<li><a
href="e07179bf4a"><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="6ee82255bd"><code>6ee8225</code></a>
publish 0.19.11 to npm</li>
<li><a
href="f8ae3af32f"><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="0811058e16"><code>0811058</code></a>
switch define data to flags</li>
<li><a
href="f5f8ff895c"><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="914f6080c7"><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="2aa166b623"><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="55e1127a49"><code>55e1127</code></a>
publish 0.19.10 to npm</li>
<li><a
href="d968af29c3"><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="00c4ebeb91"><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="e1b7050aa0"><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="9550e18064"><code>9550e18</code></a>
8.0.0</li>
<li><a
href="bb32fe985d"><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="f51f917061"><code>f51f917</code></a>
Bumped v6.2.1</li>
<li><a
href="36e81319eb"><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="5f4d435cbc"><code>5f4d435</code></a>
chore: reduce dependencies (<a
href="https://redirect.github.com/nodejs/undici/issues/2533">#2533</a>)</li>
<li><a
href="c5c6648a7d"><code>c5c6648</code></a>
perf: use tree (<a
href="https://redirect.github.com/nodejs/undici/issues/2528">#2528</a>)</li>
<li><a
href="0c4c450485"><code>0c4c450</code></a>
Bumped v6.2.0</li>
<li><a
href="59c2f3801c"><code>59c2f38</code></a>
Remove FinalizationRegistry from Agent (<a
href="https://redirect.github.com/nodejs/undici/issues/2530">#2530</a>)</li>
<li><a
href="250b89af0a"><code>250b89a</code></a>
Bumped v6.1.0</li>
<li><a
href="38f2226718"><code>38f2226</code></a>
feat: expose headerNameToString (<a
href="https://redirect.github.com/nodejs/undici/issues/2525">#2525</a>)</li>
<li><a
href="974a85e9d4"><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="871baa74ec"><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>
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.
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
45 changed files with 83044 additions and 12198 deletions
@@ -12,25 +12,30 @@ 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`)
> [!IMPORTANT]
> An installation access token expires after 1 hour. Please [see this comment](https://github.com/actions/create-github-app-token/issues/121#issuecomment-2043214796) for alternative approaches if you have long-running processes.
### Create a token for the current repository
```yaml
on:[issues]
name:Run tests on staging
on:
push:
branches:
- main
jobs:
hello-world:
runs-on:ubuntu-latest
steps:
- uses:actions/create-github-app-token@v1
- uses:actions/create-github-app-token@v2
id:app-token
with:
app-id:${{ vars.APP_ID }}
private-key:${{ secrets.PRIVATE_KEY }}
- uses:peter-evans/create-or-update-comment@v3
- uses:./actions/staging-tests
with:
token:${{ steps.app-token.outputs.token }}
issue-number:${{ github.event.issue.number }}
body:"Hello, World!"
```
### Use app token with `actions/checkout`
@@ -42,7 +47,7 @@ jobs:
auto-format:
runs-on:ubuntu-latest
steps:
- uses:actions/create-github-app-token@v1
- uses:actions/create-github-app-token@v2
id:app-token
with:
# required
@@ -59,6 +64,68 @@ jobs:
github_token:${{ steps.app-token.outputs.token }}
```
### Create a git committer string for an app installation
```yaml
on:[pull_request]
jobs:
auto-format:
runs-on:ubuntu-latest
steps:
- uses:actions/create-github-app-token@v2
id:app-token
with:
# required
app-id:${{ vars.APP_ID }}
private-key:${{ secrets.PRIVATE_KEY }}
- name:Get GitHub App User ID
id:get-user-id
run:echo "user-id=$(gh api "/users/${{ steps.app-token.outputs.app-slug }}[bot]" --jq .id)" >> "$GITHUB_OUTPUT"
# git commands like commit work using the bot user
- run:|
git add .
git commit -m "Auto-generated changes"
git push
```
> [!TIP]
> The `<BOT USER ID>` is the numeric user ID of the app's bot user, which can be found under `https://api.github.com/users/<app-slug>%5Bbot%5D`.
>
> For example, we can check at `https://api.github.com/users/dependabot[bot]` to see the user ID of Dependabot is 49699333.
>
> Alternatively, you can use the [octokit/request-action](https://github.com/octokit/request-action) to get the ID.
### Create a token for all repositories in the current owner's installation
```yaml
@@ -68,7 +135,7 @@ jobs:
hello-world:
runs-on:ubuntu-latest
steps:
- uses:actions/create-github-app-token@v1
- uses:actions/create-github-app-token@v2
id:app-token
with:
app-id:${{ vars.APP_ID }}
@@ -90,13 +157,15 @@ jobs:
hello-world:
runs-on:ubuntu-latest
steps:
- uses:actions/create-github-app-token@v1
- uses:actions/create-github-app-token@v2
id:app-token
with:
app-id:${{ vars.APP_ID }}
private-key:${{ secrets.PRIVATE_KEY }}
owner:${{ github.repository_owner }}
repositories:"repo1,repo2"
repositories:|
repo1
repo2
- uses:peter-evans/create-or-update-comment@v3
with:
token:${{ steps.app-token.outputs.token }}
@@ -113,7 +182,7 @@ jobs:
hello-world:
runs-on:ubuntu-latest
steps:
- uses:actions/create-github-app-token@v1
- uses:actions/create-github-app-token@v2
id:app-token
with:
app-id:${{ vars.APP_ID }}
@@ -126,6 +195,32 @@ jobs:
body:"Hello, World!"
```
### Create a token with specific permissions
> [!NOTE]
> Selected permissions must be granted to the installation of the specified app and repository owner. Setting a permission that the installation does not have will result in an error.
```yaml
on:[issues]
jobs:
hello-world:
runs-on:ubuntu-latest
steps:
- uses:actions/create-github-app-token@v2
id:app-token
with:
app-id:${{ vars.APP_ID }}
private-key:${{ secrets.PRIVATE_KEY }}
owner:${{ github.repository_owner }}
permission-issues:write
- 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.
**Required:** GitHub App private key. Escaped newlines (`\\n`) will be automatically replaced with actual newlines.
Some other actions may require the private key to be Base64 encoded. To avoid recreating a new secret, it can be decoded on the fly, but it needs to be managed securely. Here is an example of how this can be achieved:
**Optional:** GitHub App installation owner. If empty, defaults to the current repository owner.
**Optional:** The owner of the GitHub App installation. If empty, defaults to the current repository owner.
### `repositories`
**Optional:** Comma-separated list of repositories to grant access to.
**Optional:** Comma or newline-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.
### `permission-<permission name>`
**Optional:** The permissions to grant to the token. By default, the token inherits all of the installation's permissions. We recommend to explicitly list the permissions that are required for a use case. This follows GitHub's own recommendation to [control permissions of `GITHUB_TOKEN` in workflows](https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/controlling-permissions-for-github_token). The documentation also lists all available permissions, just prefix the permission key with `permission-` (e.g., `pull-requests` → `permission-pull-requests`).
The reason we define one `permision-<permission name>` input per permission is to benefit from type intelligence and input validation built into GitHub's action runner.
### `skip-token-revoke`
**Optional:** If truthy, the token will not be revoked when the current job is complete.
**Optional:** If true, the token will not be revoked when the current job is complete.
### `github-api-url`
**Optional:** The URL of the GitHub REST API. Defaults to the URL of the GitHub Rest API where the workflow is run from.
## Outputs
@@ -203,6 +355,14 @@ jobs:
GitHub App installation access token.
### `installation-id`
GitHub App installation ID.
### `app-slug`
GitHub App slug.
## How it works
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,
@@ -210,12 +370,16 @@ The action creates an installation access token using [the `POST /app/installati
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. 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.
4. Unless the `skip-token-revoke` input is set to true, 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]
> Installation permissions can differ from the app's permissions they belong to. Installation permissions are set when an app is installed on an account. When the app adds more permissions after the installation, an account administrator will have to approve the new permissions before they are set on the installation.
required: false # TODO:When 'app_id' is removed, make 'app-id' required
app_id:
description:"GitHub App ID"
required:false
deprecationMessage:"'app_id' is deprecated and will be removed in a future version. Use 'app-id' instead."
required:true
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:false
deprecationMessage:"'private_key' is deprecated and will be removed in a future version. Use 'private-key' instead."
required:true
owner:
description:"GitHub App owner (defaults to current repository owner)"
description:"The owner of the GitHub App installation (defaults to current repository owner)"
required:false
repositories:
description:"Repositories to install the GitHub App on (defaults to current repository if owner is unset)"
description:"Comma or newline-separated list of 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"
description:"If true, 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."
default:"false"
# Make GitHub API configurable to support non-GitHub Cloud use cases
# see https://github.com/actions/create-github-app-token/issues/77
github-api-url:
description:The URL of the GitHub REST API.
default:${{ github.api_url }}
# <START GENERATED PERMISSIONS INPUTS>
permission-actions:
description:"The level of permission to grant the access token for GitHub Actions workflows, workflow runs, and artifacts. Can be set to 'read' or 'write'."
permission-administration:
description:"The level of permission to grant the access token for repository creation, deletion, settings, teams, and collaborators creation. Can be set to 'read' or 'write'."
permission-checks:
description:"The level of permission to grant the access token for checks on code. Can be set to 'read' or 'write'."
permission-codespaces:
description:"The level of permission to grant the access token to create, edit, delete, and list Codespaces. Can be set to 'read' or 'write'."
permission-contents:
description:"The level of permission to grant the access token for repository contents, commits, branches, downloads, releases, and merges. Can be set to 'read' or 'write'."
permission-dependabot-secrets:
description:"The level of permission to grant the access token to manage Dependabot secrets. Can be set to 'read' or 'write'."
permission-deployments:
description:"The level of permission to grant the access token for deployments and deployment statuses. Can be set to 'read' or 'write'."
permission-email-addresses:
description:"The level of permission to grant the access token to manage the email addresses belonging to a user. Can be set to 'read' or 'write'."
permission-environments:
description:"The level of permission to grant the access token for managing repository environments. Can be set to 'read' or 'write'."
permission-followers:
description:"The level of permission to grant the access token to manage the followers belonging to a user. Can be set to 'read' or 'write'."
permission-git-ssh-keys:
description:"The level of permission to grant the access token to manage git SSH keys. Can be set to 'read' or 'write'."
permission-gpg-keys:
description:"The level of permission to grant the access token to view and manage GPG keys belonging to a user. Can be set to 'read' or 'write'."
permission-interaction-limits:
description:"The level of permission to grant the access token to view and manage interaction limits on a repository. Can be set to 'read' or 'write'."
permission-issues:
description:"The level of permission to grant the access token for issues and related comments, assignees, labels, and milestones. Can be set to 'read' or 'write'."
permission-members:
description:"The level of permission to grant the access token for organization teams and members. Can be set to 'read' or 'write'."
permission-metadata:
description:"The level of permission to grant the access token to search repositories, list collaborators, and access repository metadata. Can be set to 'read' or 'write'."
permission-organization-administration:
description:"The level of permission to grant the access token to manage access to an organization. Can be set to 'read' or 'write'."
permission-organization-announcement-banners:
description:"The level of permission to grant the access token to view and manage announcement banners for an organization. Can be set to 'read' or 'write'."
permission-organization-copilot-seat-management:
description:"The level of permission to grant the access token for managing access to GitHub Copilot for members of an organization with a Copilot Business subscription. This property is in public preview and is subject to change. Can be set to 'write'."
permission-organization-custom-org-roles:
description:"The level of permission to grant the access token for custom organization roles management. Can be set to 'read' or 'write'."
permission-organization-custom-properties:
description:"The level of permission to grant the access token for custom property management. Can be set to 'read', 'write', or 'admin'."
permission-organization-custom-roles:
description:"The level of permission to grant the access token for custom repository roles management. Can be set to 'read' or 'write'."
permission-organization-events:
description:"The level of permission to grant the access token to view events triggered by an activity in an organization. Can be set to 'read'."
permission-organization-hooks:
description:"The level of permission to grant the access token to manage the post-receive hooks for an organization. Can be set to 'read' or 'write'."
permission-organization-packages:
description:"The level of permission to grant the access token for organization packages published to GitHub Packages. Can be set to 'read' or 'write'."
description:"The level of permission to grant the access token for viewing and managing fine-grained personal access tokens that have been approved by an organization. Can be set to 'read' or 'write'."
permission-organization-personal-access-tokens:
description:"The level of permission to grant the access token for viewing and managing fine-grained personal access token requests to an organization. Can be set to 'read' or 'write'."
permission-organization-plan:
description:"The level of permission to grant the access token for viewing an organization's plan. Can be set to 'read'."
permission-organization-projects:
description:"The level of permission to grant the access token to manage organization projects and projects public preview (where available). Can be set to 'read', 'write', or 'admin'."
permission-organization-secrets:
description:"The level of permission to grant the access token to manage organization secrets. Can be set to 'read' or 'write'."
permission-organization-self-hosted-runners:
description:"The level of permission to grant the access token to view and manage GitHub Actions self-hosted runners available to an organization. Can be set to 'read' or 'write'."
permission-organization-user-blocking:
description:"The level of permission to grant the access token to view and manage users blocked by the organization. Can be set to 'read' or 'write'."
permission-packages:
description:"The level of permission to grant the access token for packages published to GitHub Packages. Can be set to 'read' or 'write'."
permission-pages:
description:"The level of permission to grant the access token to retrieve Pages statuses, configuration, and builds, as well as create new builds. Can be set to 'read' or 'write'."
permission-profile:
description:"The level of permission to grant the access token to manage the profile settings belonging to a user. Can be set to 'write'."
permission-pull-requests:
description:"The level of permission to grant the access token for pull requests and related comments, assignees, labels, milestones, and merges. Can be set to 'read' or 'write'."
permission-repository-custom-properties:
description:"The level of permission to grant the access token to view and edit custom properties for a repository, when allowed by the property. Can be set to 'read' or 'write'."
permission-repository-hooks:
description:"The level of permission to grant the access token to manage the post-receive hooks for a repository. Can be set to 'read' or 'write'."
permission-repository-projects:
description:"The level of permission to grant the access token to manage repository projects, columns, and cards. Can be set to 'read', 'write', or 'admin'."
permission-secret-scanning-alerts:
description:"The level of permission to grant the access token to view and manage secret scanning alerts. Can be set to 'read' or 'write'."
permission-secrets:
description:"The level of permission to grant the access token to manage repository secrets. Can be set to 'read' or 'write'."
permission-security-events:
description:"The level of permission to grant the access token to view and manage security events like code scanning alerts. Can be set to 'read' or 'write'."
permission-single-file:
description:"The level of permission to grant the access token to manage just a single file. Can be set to 'read' or 'write'."
permission-starring:
description:"The level of permission to grant the access token to list and manage repositories a user is starring. Can be set to 'read' or 'write'."
permission-statuses:
description:"The level of permission to grant the access token for commit statuses. Can be set to 'read' or 'write'."
permission-team-discussions:
description:"The level of permission to grant the access token to manage team discussions and related comments. Can be set to 'read' or 'write'."
permission-vulnerability-alerts:
description:"The level of permission to grant the access token to manage Dependabot alerts. Can be set to 'read' or 'write'."
permission-workflows:
description:"The level of permission to grant the access token to update GitHub Actions workflow files. Can be set to 'write'."
// 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.
thrownewError("Input required and not supplied: app-id");
// 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.
thrownewError("Input required and not supplied: private-key");
"description":"The permissions granted to the user access token.",
"properties":{
"actions":{
"type":"string",
"description":"The level of permission to grant the access token for GitHub Actions workflows, workflow runs, and artifacts.",
"enum":[
"read",
"write"
]
},
"administration":{
"type":"string",
"description":"The level of permission to grant the access token for repository creation, deletion, settings, teams, and collaborators creation.",
"enum":[
"read",
"write"
]
},
"checks":{
"type":"string",
"description":"The level of permission to grant the access token for checks on code.",
"enum":[
"read",
"write"
]
},
"codespaces":{
"type":"string",
"description":"The level of permission to grant the access token to create, edit, delete, and list Codespaces.",
"enum":[
"read",
"write"
]
},
"contents":{
"type":"string",
"description":"The level of permission to grant the access token for repository contents, commits, branches, downloads, releases, and merges.",
"enum":[
"read",
"write"
]
},
"dependabot_secrets":{
"type":"string",
"description":"The level of permission to grant the access token to manage Dependabot secrets.",
"enum":[
"read",
"write"
]
},
"deployments":{
"type":"string",
"description":"The level of permission to grant the access token for deployments and deployment statuses.",
"enum":[
"read",
"write"
]
},
"environments":{
"type":"string",
"description":"The level of permission to grant the access token for managing repository environments.",
"enum":[
"read",
"write"
]
},
"issues":{
"type":"string",
"description":"The level of permission to grant the access token for issues and related comments, assignees, labels, and milestones.",
"enum":[
"read",
"write"
]
},
"metadata":{
"type":"string",
"description":"The level of permission to grant the access token to search repositories, list collaborators, and access repository metadata.",
"enum":[
"read",
"write"
]
},
"packages":{
"type":"string",
"description":"The level of permission to grant the access token for packages published to GitHub Packages.",
"enum":[
"read",
"write"
]
},
"pages":{
"type":"string",
"description":"The level of permission to grant the access token to retrieve Pages statuses, configuration, and builds, as well as create new builds.",
"enum":[
"read",
"write"
]
},
"pull_requests":{
"type":"string",
"description":"The level of permission to grant the access token for pull requests and related comments, assignees, labels, milestones, and merges.",
"enum":[
"read",
"write"
]
},
"repository_custom_properties":{
"type":"string",
"description":"The level of permission to grant the access token to view and edit custom properties for a repository, when allowed by the property.",
"enum":[
"read",
"write"
]
},
"repository_hooks":{
"type":"string",
"description":"The level of permission to grant the access token to manage the post-receive hooks for a repository.",
"enum":[
"read",
"write"
]
},
"repository_projects":{
"type":"string",
"description":"The level of permission to grant the access token to manage repository projects, columns, and cards.",
"enum":[
"read",
"write",
"admin"
]
},
"secret_scanning_alerts":{
"type":"string",
"description":"The level of permission to grant the access token to view and manage secret scanning alerts.",
"enum":[
"read",
"write"
]
},
"secrets":{
"type":"string",
"description":"The level of permission to grant the access token to manage repository secrets.",
"enum":[
"read",
"write"
]
},
"security_events":{
"type":"string",
"description":"The level of permission to grant the access token to view and manage security events like code scanning alerts.",
"enum":[
"read",
"write"
]
},
"single_file":{
"type":"string",
"description":"The level of permission to grant the access token to manage just a single file.",
"enum":[
"read",
"write"
]
},
"statuses":{
"type":"string",
"description":"The level of permission to grant the access token for commit statuses.",
"enum":[
"read",
"write"
]
},
"vulnerability_alerts":{
"type":"string",
"description":"The level of permission to grant the access token to manage Dependabot alerts.",
"enum":[
"read",
"write"
]
},
"workflows":{
"type":"string",
"description":"The level of permission to grant the access token to update GitHub Actions workflow files.",
"enum":[
"write"
]
},
"members":{
"type":"string",
"description":"The level of permission to grant the access token for organization teams and members.",
"enum":[
"read",
"write"
]
},
"organization_administration":{
"type":"string",
"description":"The level of permission to grant the access token to manage access to an organization.",
"enum":[
"read",
"write"
]
},
"organization_custom_roles":{
"type":"string",
"description":"The level of permission to grant the access token for custom repository roles management.",
"enum":[
"read",
"write"
]
},
"organization_custom_org_roles":{
"type":"string",
"description":"The level of permission to grant the access token for custom organization roles management.",
"enum":[
"read",
"write"
]
},
"organization_custom_properties":{
"type":"string",
"description":"The level of permission to grant the access token for custom property management.",
"enum":[
"read",
"write",
"admin"
]
},
"organization_copilot_seat_management":{
"type":"string",
"description":"The level of permission to grant the access token for managing access to GitHub Copilot for members of an organization with a Copilot Business subscription. This property is in public preview and is subject to change.",
"enum":[
"write"
]
},
"organization_announcement_banners":{
"type":"string",
"description":"The level of permission to grant the access token to view and manage announcement banners for an organization.",
"enum":[
"read",
"write"
]
},
"organization_events":{
"type":"string",
"description":"The level of permission to grant the access token to view events triggered by an activity in an organization.",
"enum":[
"read"
]
},
"organization_hooks":{
"type":"string",
"description":"The level of permission to grant the access token to manage the post-receive hooks for an organization.",
"enum":[
"read",
"write"
]
},
"organization_personal_access_tokens":{
"type":"string",
"description":"The level of permission to grant the access token for viewing and managing fine-grained personal access token requests to an organization.",
"enum":[
"read",
"write"
]
},
"organization_personal_access_token_requests":{
"type":"string",
"description":"The level of permission to grant the access token for viewing and managing fine-grained personal access tokens that have been approved by an organization.",
"enum":[
"read",
"write"
]
},
"organization_plan":{
"type":"string",
"description":"The level of permission to grant the access token for viewing an organization's plan.",
"enum":[
"read"
]
},
"organization_projects":{
"type":"string",
"description":"The level of permission to grant the access token to manage organization projects and projects public preview (where available).",
"enum":[
"read",
"write",
"admin"
]
},
"organization_packages":{
"type":"string",
"description":"The level of permission to grant the access token for organization packages published to GitHub Packages.",
"enum":[
"read",
"write"
]
},
"organization_secrets":{
"type":"string",
"description":"The level of permission to grant the access token to manage organization secrets.",
"enum":[
"read",
"write"
]
},
"organization_self_hosted_runners":{
"type":"string",
"description":"The level of permission to grant the access token to view and manage GitHub Actions self-hosted runners available to an organization.",
"enum":[
"read",
"write"
]
},
"organization_user_blocking":{
"type":"string",
"description":"The level of permission to grant the access token to view and manage users blocked by the organization.",
"enum":[
"read",
"write"
]
},
"team_discussions":{
"type":"string",
"description":"The level of permission to grant the access token to manage team discussions and related comments.",
"enum":[
"read",
"write"
]
},
"email_addresses":{
"type":"string",
"description":"The level of permission to grant the access token to manage the email addresses belonging to a user.",
"enum":[
"read",
"write"
]
},
"followers":{
"type":"string",
"description":"The level of permission to grant the access token to manage the followers belonging to a user.",
"enum":[
"read",
"write"
]
},
"git_ssh_keys":{
"type":"string",
"description":"The level of permission to grant the access token to manage git SSH keys.",
"enum":[
"read",
"write"
]
},
"gpg_keys":{
"type":"string",
"description":"The level of permission to grant the access token to view and manage GPG keys belonging to a user.",
"enum":[
"read",
"write"
]
},
"interaction_limits":{
"type":"string",
"description":"The level of permission to grant the access token to view and manage interaction limits on a repository.",
"enum":[
"read",
"write"
]
},
"profile":{
"type":"string",
"description":"The level of permission to grant the access token to manage the profile settings belonging to a user.",
"enum":[
"write"
]
},
"starring":{
"type":"string",
"description":"The level of permission to grant the access token to list and manage repositories a user is starring.",
// In the action.yml file, replace the content between the `<START GENERATED PERMISSIONS INPUTS>` and `<END GENERATED PERMISSIONS INPUTS>` comments with the new content
The output from the tests is captured into a snapshot ([tests/snapshots/index.js.md](snapshots/index.js.md)). It includes all requests sent by our scripts to verify it's working correctly and to prevent regressions.
## How to add a new test
We have tests both for the `main.js` and `post.js` scripts.
- If you do not expect an error, take [main-token-permissions-set.test.js](tests/main-token-permissions-set.test.js) as a starting point.
- If your test has an expected error, take [main-missing-app-id.test.js](tests/main-missing-app-id.test.js) as a starting point.
"ghs_16C7e42F292c6912E7710c838347Ae178B4a";// This token is invalidated. It’s from https://docs.github.com/en/rest/apps/apps?apiVersion=2022-11-28#create-an-installation-access-token-for-an-app.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.