Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

testnet-three #2316

Closed
wants to merge 80 commits into from
Closed

testnet-three #2316

wants to merge 80 commits into from

Conversation

harbu
Copy link
Contributor

@harbu harbu commented Jan 18, 2024

Do not merge. Only a placeholder for testnet-three.

@github-actions github-actions bot added the docs label Jan 18, 2024
@github-actions github-actions bot added broker Related to Broker Package network Related to Network Package client Related to Client Package protocol Related to Protocol Package test-utils Related to Test Utils Package cli-tools Related to CLI Tools Package dht Related to DHT package utils proto-rpc labels Jan 18, 2024
harbu and others added 7 commits January 22, 2024 11:33
…2319)

## Summary

In bash script release.sh:
- Use `cd packages/<PKG> || exit` pattern. Safer to exit than to run
`npm publish` in an unintended dir.
- Build all packages in the very beginning (not strictly necessary if
following instructions, but maybe a good "just to be safe" thing to do,
it's a reasonably fast command anyway given that packages should be
built already at this point)
- Build client webpack first, then only start the release process.
(Kinda of sucks to have half of packages be published only to later
realize client webpack doesn't even compile. 🤦 That being said, this
shouldn't really happen if you are being patient and waiting for CI to
go green as the instructions recommend.)

NPM scripts:
- Remove `prepublishOnly` scripts from packages. (It's kind of a
safeguard, could be argued that it should be kept in. However we release
the monorepo as a whole, so you go thru the release.sh script anyway
ensuring everything is built. I would remove it here to make the release
process ever so slightly faster.)
- Remove client's `build-production`. (Enough to build webpack since the
node version will be built already, no point in rebuilding).
## Summary

Add a workflow for publishing packages to NPM. It is triggered manually
(for now). It uses the existing release.sh script.

TODO: run this thing for real

## Limitations and future improvements

- Make it automatically run after tests?
    - For every push to main? Other branhces?
    - For tagged commits only?
    - Which tag to use?
- Alternatively: put both Docker & NPM releases behind a button.
    - More control over release process
    - Annoying to manually click?
    - Continous dev builds can be nice for catching issues early though.
## Summary

Add a version field to the ConnectivityResponse. The server adds its
version to the response and the client will decide weather or not to
discard the response based on the received value.

## Other changes

Pumped up the number of failed connectivity requests before the stopping
connectivity checking from 5 to 10

## Limitations and future improvements

- When running connectivity checks on entry points, the entry points
that could not be reached should be tracked and excluded.
- Could also check for version mismatches on the server side. For now
older clients making connectivity requests to newer servers should be
compatible.
- The version field could be added to the PeerDescriptor. This way
incompatible connections can be avoided before ever opening a
connection.
)

## Summary

If the neighbor update interval detects that the local and remote node
boht have more then N number of connections they will disconnect the
shared connection. This way the target number of connections is kept
near the target number N

## Future improvements

- Rename `neighborCount` to eg `neighborTargetCount`?

---------

Co-authored-by: Eric Andrews <[email protected]>
## Summary

The TemporaryConnections were not properly closed directly after use.
Instead the implementation waited for the connections to be eventually
closed by the connection manager garbage collector.

The temorary connections are now closed after use with a new rpc call.
@github-actions github-actions bot added the ci Related to CI configuration label Jan 22, 2024
harbu and others added 10 commits January 22, 2024 14:47
## Summary

Renamed neighborCount and streamPartitionNeighborCount config variables
## Changes

**NOTICE (breaking):** after landing this PR to `main`, Docker tag `dev`
will point to `1.0` "bleeding edge" (used to be Brubeck "bleeding edge")

- Add workflow _release-docker.yml_ for manually triggering Docker
releases (via the `workflow_dispatch` mechanism)
- Add workflow _auto-release-docker.yml_ for automatically triggering
Docker releases on branch `main` when the _validate.yml_ workflow has
finished successfully
- In the set of pushed Docker tags, always include the current Git
branch name unless we are on branch `main`
    - Exception: `main` branch is mapped to `dev` tag 
- Remove old docker release workflow

## Future improvements

- Should we allow the possibility of providing a custom Docker tag? 
- Should we push Docker tags related to commit hashes
(https://github.com/docker/metadata-action#typesha)?
Add new test cases for signature validation. Previously we had signature validation tests for legacy signature type, and in this PR similar test cases were added for the current `SECP256K1` signature type.
harbu and others added 28 commits February 6, 2024 11:23
## Summary

Increase gas limit to ensure flag voting (as well as closing flags) do
not run out of gas in Polygon.
## Summary

Address leftover comments from here
#1265.
Export `NodeInfoResponse` type and `streamPartIdToDataKey` utility functions which are needed by the crawler.
Move `secp256k1` dependency from `client` package to `utils` package. The functionality was already moved in this PR: #2300
#2348)

## Summary

Run connectivity check to discover own IP address even when WS server
was not started. Fixes a clustering around NodeIds starting with 85 for
all nodes without a WS server as they use ip `127.0.0.1`.

Configuring entry points is now necessary when running a DhtNode without
a WS server, unless the node is configured with the proper values to
generate a PeerDescriptor without a ConnectivityCheck.

(Is backwards compatible)

## Future improvements

- Could refactor ConnectivityRequestHandler further
- Change ConnectivityRequest port to an optional field
- Perhaps ConnectivityCheck could be renamed to reflect that any kind of
checking is no longer done. The point is to find out the node's
connectivity information
- Could rename the entry point config in the connection layer? Entry
point still makes since since ConnectivityChecks are an operation that
all entry points should support.
…handshake is ongoing (#2352)

## Summary

Fixed a bad timing where a handshake could still be ongoing to a node
that sent a neighbor update. In such cases receiving neighbor would ask
the sender remove the receiver from the sender's neighbor structure.
This change makes the creation on bidirectional connections in the graph
more reliable. Additionally, the test case `happy path 64 nodes` in
`RandomGraphNode-Layer1Node-Latencies.test.ts` and
`RandomGraphNode-Layer1Node.test.ts` are approaching non-flakyness with
the mismatch counter set to 0.

## Future improvements

- Investigate the cause for why unidirectinal connections still happen
(although they are increasingly more rare)
- Try to come up with a deterministic mechanism to avoid cases where a
node is unlucky and multiple nodes cut connections to it at the same
time due to it having too many connections at once.
  - Why are there more than 5 connections in nodes in the first place?
…agers state (#2362)

## Summary

WebSocket client connections can sometimes remain hanging in the
connection managers state if the ConnectionManager acting as a client is
not running a WebSocket server itself. The client connections appear to
be targeted to the same WS server with a different nodeId. Something
could be going wrong with the handshake that should be rejecting new
connections if the nodeId does not mtach the server side.

Implementing this patch solution as the problem is rare and is thus
difficult to debug. The hanging connections don't seem to hinder the
nodes operation by that much but it is best to clean them up to avoid
memory leaks.
Log the error if the software crashes because of `uncaughtException` or `unhandledRejection`. Also send status code `1` to the operating system in those cases.

## Example

```ts
ERROR [2024-02-12T15:05:15.123] (NetworkStack             ): exit event: unhandledRejection
    err: {
      "type": "TypeError",
      "message": "Cannot read properties of undefined (reading 'metricsContext')",
      "stack":
          TypeError: Cannot read properties of undefined (reading 'metricsContext')
              at new NetworkStack (/Users/teogeb/workspace/network/packages/trackerless-network/dist/src/NetworkStack.js:47:39)
              at Immediate.<anonymous> (/Users/teogeb/workspace/network/packages/trackerless-network/dist/src/dev-sandbox.js:9:23)
    }
```

## Open questions 

Would it make sense to log info about other events (`SIGINT`, `SIGUSR1`, ...)? If we do that, we should avoid logging the multiple events: e.g. NodeJS always emits a separate `exit` event after `unhandledRejection`.
…2365)

## Summary

There was an unfortunate corner case where in some cases when trying to
find random peers to connect to a node could enter an infinite loop. It
is not clear if nodes ever entered it in production or testing but this
change ensures that the case is no longer possible.
#2367)

Removed some unnecessary type assertions. These assertions would be
`@typescript-eslint/no-unnecessary-type-assertion` errors when we land
#2364

## Open questions

Why e.g. this line in `LocalDataStore.test.ts` no longer needs type
assertion? We used to have exclamation mark to assert that the
`notDeletedData[0]` is not `undefined` if the array would not contain
any items:
```ts
const notDeletedData = Array.from(localDataStore.values(getDhtAddressFromRaw(storedEntry.key)))
expect(notDeletedData[0].deleted).toBeFalse()
```
## Summary

Include `dev` version of webpack build in release. It is referred to in
the client's package.json exports and relied upon by the front-end code.
Bumps the dependencies group with 28 updates:

| Package | From | To |
| --- | --- | --- |
|
[@types/jest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest)
| `29.5.11` | `29.5.12` |
|
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)
| `6.18.1` | `6.21.0` |
|
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)
| `6.18.1` | `6.21.0` |
| [lerna](https://github.com/lerna/lerna/tree/HEAD/packages/lerna) |
`8.0.2` | `8.1.2` |
| [semver](https://github.com/npm/node-semver) | `7.5.4` | `7.6.0` |
| [ts-jest](https://github.com/kulshekhar/ts-jest) | `29.1.1` | `29.1.2`
|
|
[@aws-sdk/client-route-53](https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-route-53)
| `3.490.0` | `3.511.0` |
| [acme-client](https://github.com/publishlab/node-acme-client) |
`5.0.0` | `5.3.0` |
| [dotenv](https://github.com/motdotla/dotenv) | `16.3.1` | `16.4.2` |
|
[@types/uuid](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/uuid)
| `9.0.7` | `9.0.8` |
| [@inquirer/prompts](https://github.com/SBoudrias/Inquirer.js) |
`3.3.0` | `4.0.0` |
| @streamr/network-contracts | `7.0.7` | `7.0.8` |
| [commander](https://github.com/tj/commander.js) | `11.1.0` | `12.0.0`
|
| [@inquirer/testing](https://github.com/SBoudrias/Inquirer.js) |
`2.1.9` | `2.1.11` |
| [@electron/rebuild](https://github.com/electron/rebuild) | `3.5.0` |
`3.6.0` |
| [electron](https://github.com/electron/electron) | `28.1.3` | `28.2.2`
|
| [karma-webpack](https://github.com/webpack-contrib/karma-webpack) |
`5.0.0` | `5.0.1` |
| [webpack](https://github.com/webpack/webpack) | `5.89.0` | `5.90.1` |
|
[@babel/runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime)
| `7.23.8` | `7.23.9` |
|
[@babel/runtime-corejs3](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime-corejs3)
| `7.23.8` | `7.23.9` |
|
[core-js](https://github.com/zloirock/core-js/tree/HEAD/packages/core-js)
| `3.35.0` | `3.35.1` |
|
[@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core)
| `7.23.7` | `7.23.9` |
|
[@babel/plugin-proposal-decorators](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-proposal-decorators)
| `7.23.7` | `7.23.9` |
|
[@babel/plugin-transform-runtime](https://github.com/babel/babel/tree/HEAD/packages/babel-plugin-transform-runtime)
| `7.23.7` | `7.23.9` |
|
[@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env)
| `7.23.8` | `7.23.9` |
| [nightwatch](https://github.com/nightwatchjs/nightwatch) | `3.3.8` |
`3.4.0` |
| [typedoc](https://github.com/TypeStrong/TypeDoc) | `0.25.7` | `0.25.8`
|
| [pino](https://github.com/pinojs/pino) | `8.17.2` | `8.18.0` |

Updates `@types/jest` from 29.5.11 to 29.5.12
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jest">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/eslint-plugin` from 6.18.1 to 6.21.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@​typescript-eslint/eslint-plugin</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v6.21.0</h2>
<h2>6.21.0 (2024-02-05)</h2>
<h3>🚀 Features</h3>
<ul>
<li>export plugin metadata (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8331">#8331</a>)</li>
<li>allow <code>parserOptions.project: false</code> (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8339">#8339</a>)</li>
<li><strong>eslint-plugin:</strong> add rule prefer-find (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8216">#8216</a>)</li>
<li><strong>typescript-estree:</strong> forbid duplicated accessibility
modifiers (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8257">#8257</a>)</li>
<li><strong>utils:</strong> improve eslint types (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8344">#8344</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>ast-spec:</strong> add <code>JSXElement</code> type to the
<code>JSXAttribute['value']</code> (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8285">#8285</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unused-vars] don't report on
types referenced in export assignment expression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8265">#8265</a>)</li>
<li><strong>eslint-plugin:</strong> [switch-exhaustiveness-check] better
support for intersections, infinite types, non-union values (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8250">#8250</a>)</li>
<li><strong>eslint-plugin:</strong> [consistent-type-imports] dont
report on types used in export assignment expressions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8332">#8332</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unnecessary-condition] handle
left-hand optional with exactOptionalPropertyTypes option (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8249">#8249</a>)</li>
<li><strong>eslint-plugin:</strong> [class-literal-property-style] allow
getter when same key setter exists (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8277">#8277</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion]
provide valid fixes for assertions with extra tokens before
<code>as</code> keyword (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8326">#8326</a>)</li>
<li><strong>rule-tester:</strong> fix a phantom dependency on the
&quot;semver&quot; package (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8260">#8260</a>)</li>
</ul>
<h3>❤️  Thank You</h3>
<ul>
<li>auvred <a
href="https://github.com/auvred"><code>@​auvred</code></a></li>
<li>Brad Zacher <a
href="https://github.com/bradzacher"><code>@​bradzacher</code></a></li>
<li>Kirk Waiblinger <a
href="https://github.com/kirkwaiblinger"><code>@​kirkwaiblinger</code></a></li>
<li>Pete Gonzalez <a
href="https://github.com/octogonz"><code>@​octogonz</code></a></li>
<li>YeonJuan <a
href="https://github.com/yeonjuan"><code>@​yeonjuan</code></a></li>
</ul>
<p>You can read about our <a
href="https://main--typescript-eslint.netlify.app/users/versioning">versioning
strategy</a> and <a
href="https://main--typescript-eslint.netlify.app/users/releases">releases</a>
on our website.</p>
<h2>v6.20.0</h2>
<h2>6.20.0 (2024-01-29)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [member-ordering] allow easy reuse
of the default ordering (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8248">#8248</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-useless-template-literals]
incorrect bigint autofix result (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8283">#8283</a>)</li>
<li><strong>eslint-plugin:</strong> [prefer-nullish-coalescing] treat
any/unknown as non-nullable (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8262">#8262</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-template-literals]
report Infinity &amp; NaN (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8295">#8295</a>)</li>
<li><strong>eslint-plugin:</strong> [prefer-readonly] disable checking
accessors (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8300">#8300</a>)</li>
</ul>
<h3>❤️  Thank You</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md"><code>@​typescript-eslint/eslint-plugin</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>6.21.0 (2024-02-05)</h2>
<h3>🚀 Features</h3>
<ul>
<li>
<p>export plugin metadata</p>
</li>
<li>
<p>allow <code>parserOptions.project: false</code></p>
</li>
<li>
<p><strong>eslint-plugin:</strong> add rule prefer-find</p>
</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>
<p><strong>eslint-plugin:</strong> [no-unused-vars] don't report on
types referenced in export assignment expression</p>
</li>
<li>
<p><strong>eslint-plugin:</strong> [switch-exhaustiveness-check] better
support for intersections, infinite types, non-union values</p>
</li>
<li>
<p><strong>eslint-plugin:</strong> [consistent-type-imports] dont report
on types used in export assignment expressions</p>
</li>
<li>
<p><strong>eslint-plugin:</strong> [no-unnecessary-condition] handle
left-hand optional with exactOptionalPropertyTypes option</p>
</li>
<li>
<p><strong>eslint-plugin:</strong> [class-literal-property-style] allow
getter when same key setter exists</p>
</li>
<li>
<p><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion]
provide valid fixes for assertions with extra tokens before
<code>as</code> keyword</p>
</li>
</ul>
<h3>❤️  Thank You</h3>
<ul>
<li>auvred</li>
<li>Brad Zacher</li>
<li>Kirk Waiblinger</li>
<li>Pete Gonzalez</li>
<li>YeonJuan</li>
</ul>
<p>You can read about our <a
href="https://main--typescript-eslint.netlify.app/users/versioning">versioning
strategy</a> and <a
href="https://main--typescript-eslint.netlify.app/users/releases">releases</a>
on our website.</p>
<h2>6.20.0 (2024-01-29)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [member-ordering] allow easy reuse
of the default ordering</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li>
<p><strong>eslint-plugin:</strong> [no-useless-template-literals]
incorrect bigint autofix result</p>
</li>
<li>
<p><strong>eslint-plugin:</strong> [prefer-nullish-coalescing] treat
any/unknown as non-nullable</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/289ee8885ce26714296d8258abb12a2fa2c38d61"><code>289ee88</code></a>
chore(release): publish 6.21.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/f892a72db1e88629830a56f0b5b7978dc28513e7"><code>f892a72</code></a>
docs(eslint-plugin): mention alternatives in no-explicit-any (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/8370">#8370</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/aa5edf7f675c3bad627cfd9355a9a04469414c5e"><code>aa5edf7</code></a>
chore(deps): update dependency prettier to v3.2.4 (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/8357">#8357</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/1d7447f4fd5e2fbae4211eb5fc07e93cf570b6b3"><code>1d7447f</code></a>
chore(eslint-plugin): [no-invalid-void-type] fix <code>Options</code>
typing to reflect ...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/e2b46e013541286027d1d976a5a0a6e4eae9a1f1"><code>e2b46e0</code></a>
fix(eslint-plugin): [no-unnecessary-type-assertion] provide valid fixes
for a...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/3bbb78daf2b338d12c2dac3ba608d28a6fd2c6b6"><code>3bbb78d</code></a>
feat(eslint-plugin): add rule prefer-find (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/8216">#8216</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/9883ee275e79006f048813da851f00ba34f09b92"><code>9883ee2</code></a>
feat: export plugin metadata (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/8331">#8331</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/69bd50140f3ed6395d6a7c23fb3753511fa85740"><code>69bd501</code></a>
fix(eslint-plugin): [class-literal-property-style] allow getter when
same key...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/cd5dff8b304395417c8bb9007b491a2450a35b33"><code>cd5dff8</code></a>
chore: bump eslint versions (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/8338">#8338</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/8d62ee651b5d82c79791ac0ff00926fc55e8c0fb"><code>8d62ee6</code></a>
chore: remove unnecessary eslint-disable comments (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/8336">#8336</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v6.21.0/packages/eslint-plugin">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/parser` from 6.18.1 to 6.21.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@​typescript-eslint/parser</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v6.21.0</h2>
<h2>6.21.0 (2024-02-05)</h2>
<h3>🚀 Features</h3>
<ul>
<li>export plugin metadata (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8331">#8331</a>)</li>
<li>allow <code>parserOptions.project: false</code> (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8339">#8339</a>)</li>
<li><strong>eslint-plugin:</strong> add rule prefer-find (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8216">#8216</a>)</li>
<li><strong>typescript-estree:</strong> forbid duplicated accessibility
modifiers (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8257">#8257</a>)</li>
<li><strong>utils:</strong> improve eslint types (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8344">#8344</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>ast-spec:</strong> add <code>JSXElement</code> type to the
<code>JSXAttribute['value']</code> (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8285">#8285</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unused-vars] don't report on
types referenced in export assignment expression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8265">#8265</a>)</li>
<li><strong>eslint-plugin:</strong> [switch-exhaustiveness-check] better
support for intersections, infinite types, non-union values (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8250">#8250</a>)</li>
<li><strong>eslint-plugin:</strong> [consistent-type-imports] dont
report on types used in export assignment expressions (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8332">#8332</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unnecessary-condition] handle
left-hand optional with exactOptionalPropertyTypes option (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8249">#8249</a>)</li>
<li><strong>eslint-plugin:</strong> [class-literal-property-style] allow
getter when same key setter exists (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8277">#8277</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion]
provide valid fixes for assertions with extra tokens before
<code>as</code> keyword (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8326">#8326</a>)</li>
<li><strong>rule-tester:</strong> fix a phantom dependency on the
&quot;semver&quot; package (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8260">#8260</a>)</li>
</ul>
<h3>❤️  Thank You</h3>
<ul>
<li>auvred <a
href="https://github.com/auvred"><code>@​auvred</code></a></li>
<li>Brad Zacher <a
href="https://github.com/bradzacher"><code>@​bradzacher</code></a></li>
<li>Kirk Waiblinger <a
href="https://github.com/kirkwaiblinger"><code>@​kirkwaiblinger</code></a></li>
<li>Pete Gonzalez <a
href="https://github.com/octogonz"><code>@​octogonz</code></a></li>
<li>YeonJuan <a
href="https://github.com/yeonjuan"><code>@​yeonjuan</code></a></li>
</ul>
<p>You can read about our <a
href="https://main--typescript-eslint.netlify.app/users/versioning">versioning
strategy</a> and <a
href="https://main--typescript-eslint.netlify.app/users/releases">releases</a>
on our website.</p>
<h2>v6.20.0</h2>
<h2>6.20.0 (2024-01-29)</h2>
<h3>🚀 Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [member-ordering] allow easy reuse
of the default ordering (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8248">#8248</a>)</li>
</ul>
<h3>🩹 Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-useless-template-literals]
incorrect bigint autofix result (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8283">#8283</a>)</li>
<li><strong>eslint-plugin:</strong> [prefer-nullish-coalescing] treat
any/unknown as non-nullable (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8262">#8262</a>)</li>
<li><strong>eslint-plugin:</strong> [no-useless-template-literals]
report Infinity &amp; NaN (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8295">#8295</a>)</li>
<li><strong>eslint-plugin:</strong> [prefer-readonly] disable checking
accessors (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/8300">#8300</a>)</li>
</ul>
<h3>❤️  Thank You</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md"><code>@​typescript-eslint/parser</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>6.21.0 (2024-02-05)</h2>
<h3>🚀 Features</h3>
<ul>
<li>allow <code>parserOptions.project: false</code></li>
</ul>
<h3>❤️  Thank You</h3>
<ul>
<li>auvred</li>
<li>Brad Zacher</li>
<li>Kirk Waiblinger</li>
<li>Pete Gonzalez</li>
<li>YeonJuan</li>
</ul>
<p>You can read about our <a
href="https://main--typescript-eslint.netlify.app/users/versioning">versioning
strategy</a> and <a
href="https://main--typescript-eslint.netlify.app/users/releases">releases</a>
on our website.</p>
<h2>6.20.0 (2024-01-29)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>You can read about our <a
href="https://main--typescript-eslint.netlify.app/users/versioning">versioning
strategy</a> and <a
href="https://main--typescript-eslint.netlify.app/users/releases">releases</a>
on our website.</p>
<h2>6.19.1 (2024-01-22)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>You can read about our <a
href="https://main--typescript-eslint.netlify.app/users/versioning">versioning
strategy</a> and <a
href="https://main--typescript-eslint.netlify.app/users/releases">releases</a>
on our website.</p>
<h2>6.19.0 (2024-01-15)</h2>
<p>This was a version bump only for parser to align it with other
projects, there were no code changes.</p>
<p>You can read about our <a
href="https://main--typescript-eslint.netlify.app/users/versioning">versioning
strategy</a> and <a
href="https://main--typescript-eslint.netlify.app/users/releases">releases</a>
on our website.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/289ee8885ce26714296d8258abb12a2fa2c38d61"><code>289ee88</code></a>
chore(release): publish 6.21.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/aa5edf7f675c3bad627cfd9355a9a04469414c5e"><code>aa5edf7</code></a>
chore(deps): update dependency prettier to v3.2.4 (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/8357">#8357</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/45c0cb2634960b6822d44db8eeeebe6529a58118"><code>45c0cb2</code></a>
chore: cleanup test-utils naming/locations (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/8341">#8341</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/a01a6e6b6fb157f8cf278179c098c4ab0beb22c6"><code>a01a6e6</code></a>
chore(release): publish 6.20.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/a91121425d8c40e90c6dfc282a13e5cbf78a6562"><code>a911214</code></a>
chore(release): publish 6.19.1</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/7c673a146d26d4360a25638f901a3c329bcca8c4"><code>7c673a1</code></a>
chore(release): publish 6.19.0</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v6.21.0/packages/parser">compare
view</a></li>
</ul>
</details>
<br />

Updates `lerna` from 8.0.2 to 8.1.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/lerna/lerna/releases">lerna's
releases</a>.</em></p>
<blockquote>
<h2>v8.1.2</h2>
<h2><a
href="https://github.com/lerna/lerna/compare/v8.1.1...v8.1.2">8.1.2</a>
(2024-02-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>improve git binary error (<a
href="https://redirect.github.com/lerna/lerna/issues/3945">#3945</a>)
(<a
href="https://github.com/lerna/lerna/commit/763797295818876bb97d54ddced309d80315361f">7637972</a>)</li>
</ul>
<h2>v8.1.1</h2>
<h2><a
href="https://github.com/lerna/lerna/compare/v8.1.0...v8.1.1">8.1.1</a>
(2024-02-05)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>list:</strong> explicitly exit upon completion (<a
href="https://github.com/lerna/lerna/commit/bafe090e837675c0febb938bab3e8c71b27dbe70">bafe090</a>)</li>
</ul>
<h2>v8.1.0</h2>
<h1><a
href="https://github.com/lerna/lerna/compare/v8.0.2...v8.1.0">8.1.0</a>
(2024-02-05)</h1>
<h3>Features</h3>
<ul>
<li>support nx v18 (<a
href="https://redirect.github.com/lerna/lerna/issues/3950">#3950</a>)
(<a
href="https://github.com/lerna/lerna/commit/ea3fb65b5f8f9af11a4acea3c63222283ea869d5">ea3fb65</a>)</li>
<li><strong>version:</strong> custom tag-version-separator for
independent projects (<a
href="https://redirect.github.com/lerna/lerna/issues/3951">#3951</a>)
(<a
href="https://github.com/lerna/lerna/commit/43de79cb5818baba8c7239b01f020817d0d1be6f">43de79c</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/lerna/lerna/blob/main/packages/lerna/CHANGELOG.md">lerna's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/lerna/lerna/compare/v8.1.1...v8.1.2">8.1.2</a>
(2024-02-05)</h2>
<p><strong>Note:</strong> Version bump only for package lerna</p>
<h2><a
href="https://github.com/lerna/lerna/compare/v8.1.0...v8.1.1">8.1.1</a>
(2024-02-05)</h2>
<p><strong>Note:</strong> Version bump only for package lerna</p>
<h1><a
href="https://github.com/lerna/lerna/compare/v8.0.2...v8.1.0">8.1.0</a>
(2024-02-05)</h1>
<h3>Features</h3>
<ul>
<li>support nx v18 (<a
href="https://redirect.github.com/lerna/lerna/issues/3950">#3950</a>)
(<a
href="https://github.com/lerna/lerna/commit/ea3fb65b5f8f9af11a4acea3c63222283ea869d5">ea3fb65</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/lerna/lerna/commit/9a4ad5ecd640480faa3011dcf80f6c51c2d756c3"><code>9a4ad5e</code></a>
chore(misc): publish 8.1.2</li>
<li><a
href="https://github.com/lerna/lerna/commit/b2b8b7d3239e1faf51f63e85d77e5bf591e636be"><code>b2b8b7d</code></a>
chore(misc): publish 8.1.1</li>
<li><a
href="https://github.com/lerna/lerna/commit/8c7316e761209728bd6a59670c2f49271a03e935"><code>8c7316e</code></a>
chore(misc): publish 8.1.0</li>
<li><a
href="https://github.com/lerna/lerna/commit/ea3fb65b5f8f9af11a4acea3c63222283ea869d5"><code>ea3fb65</code></a>
feat: support nx v18 (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/3950">#3950</a>)</li>
<li><a
href="https://github.com/lerna/lerna/commit/bd0b5ce228bb06faff60f89f2c76d479dbef9216"><code>bd0b5ce</code></a>
chore: update repo to nx 17.3 (<a
href="https://github.com/lerna/lerna/tree/HEAD/packages/lerna/issues/3944">#3944</a>)</li>
<li>See full diff in <a
href="https://github.com/lerna/lerna/commits/v8.1.2/packages/lerna">compare
view</a></li>
</ul>
</details>
<br />

Updates `semver` from 7.5.4 to 7.6.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/npm/node-semver/releases">semver's
releases</a>.</em></p>
<blockquote>
<h2>v7.6.0</h2>
<h2><a
href="https://github.com/npm/node-semver/compare/v7.5.4...v7.6.0">7.6.0</a>
(2024-01-31)</h2>
<h3>Features</h3>
<ul>
<li><a
href="https://github.com/npm/node-semver/commit/a7ab13a46201e342d34e84a989632b380f755baf"><code>a7ab13a</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/671">#671</a>
preserve pre-release and build parts of a version on coerce (<a
href="https://redirect.github.com/npm/node-semver/issues/671">#671</a>)
(<a href="https://github.com/madtisa"><code>@​madtisa</code></a>,
madtisa, <a
href="https://github.com/wraithgar"><code>@​wraithgar</code></a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><a
href="https://github.com/npm/node-semver/commit/816c7b2cbfcb1986958a290f941eddfd0441139e"><code>816c7b2</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/667">#667</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/0bd24d943cbd1a7f6a2b8d384590bfa98559e1de"><code>0bd24d9</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/667">#667</a>
bump <code>@​npmcli/template-oss</code> from 4.21.1 to 4.21.3 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
<li><a
href="https://github.com/npm/node-semver/commit/e521932f115a81030f4e7c34e8631cdd3c6a108b"><code>e521932</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/652">#652</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/88739918080debeb239aae840b35c07436148e50"><code>8873991</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/652">#652</a>
chore: chore: postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/f317dc8689781bcfd98e2c32b46157276acdd47c"><code>f317dc8</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/652">#652</a>
bump <code>@​npmcli/template-oss</code> from 4.19.0 to 4.21.0 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
<li><a
href="https://github.com/npm/node-semver/commit/7303db1fe54d6905b23ccb0162878e37d73535ef"><code>7303db1</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/658">#658</a>
add clean() test for build metadata (<a
href="https://redirect.github.com/npm/node-semver/issues/658">#658</a>)
(<a
href="https://github.com/jethrodaniel"><code>@​jethrodaniel</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/6240d75a7c620b0a222f05969a91fdc3dc2be0fb"><code>6240d75</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/656">#656</a>
add missing quotes in README.md (<a
href="https://redirect.github.com/npm/node-semver/issues/656">#656</a>)
(<a href="https://github.com/zyxkad"><code>@​zyxkad</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/14d263faa156e408a033b9b12a2f87735c2df42c"><code>14d263f</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/625">#625</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/7c34e1ac1bcc0bc6579b30745c96075c69bd0332"><code>7c34e1a</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/625">#625</a>
bump <code>@​npmcli/template-oss</code> from 4.18.1 to 4.19.0 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
<li><a
href="https://github.com/npm/node-semver/commit/123e0b03287e1af295ef82d55f55c16805596f35"><code>123e0b0</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/622">#622</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/737d5e1cf10e631bab8a28594aa2d5c9d4090814"><code>737d5e1</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/622">#622</a>
bump <code>@​npmcli/template-oss</code> from 4.18.0 to 4.18.1 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
<li><a
href="https://github.com/npm/node-semver/commit/cce61804ba6f997225a1267135c06676fe0524d2"><code>cce6180</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/598">#598</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/b914a3d0d26ca27d2685053d7d390af4e02eedd9"><code>b914a3d</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/598">#598</a>
bump <code>@​npmcli/template-oss</code> from 4.17.0 to 4.18.0 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/npm/node-semver/blob/main/CHANGELOG.md">semver's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/npm/node-semver/compare/v7.5.4...v7.6.0">7.6.0</a>
(2024-01-31)</h2>
<h3>Features</h3>
<ul>
<li><a
href="https://github.com/npm/node-semver/commit/a7ab13a46201e342d34e84a989632b380f755baf"><code>a7ab13a</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/671">#671</a>
preserve pre-release and build parts of a version on coerce (<a
href="https://redirect.github.com/npm/node-semver/issues/671">#671</a>)
(<a href="https://github.com/madtisa"><code>@​madtisa</code></a>,
madtisa, <a
href="https://github.com/wraithgar"><code>@​wraithgar</code></a>)</li>
</ul>
<h3>Chores</h3>
<ul>
<li><a
href="https://github.com/npm/node-semver/commit/816c7b2cbfcb1986958a290f941eddfd0441139e"><code>816c7b2</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/667">#667</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/0bd24d943cbd1a7f6a2b8d384590bfa98559e1de"><code>0bd24d9</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/667">#667</a>
bump <code>@​npmcli/template-oss</code> from 4.21.1 to 4.21.3 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
<li><a
href="https://github.com/npm/node-semver/commit/e521932f115a81030f4e7c34e8631cdd3c6a108b"><code>e521932</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/652">#652</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/88739918080debeb239aae840b35c07436148e50"><code>8873991</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/652">#652</a>
chore: chore: postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/f317dc8689781bcfd98e2c32b46157276acdd47c"><code>f317dc8</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/652">#652</a>
bump <code>@​npmcli/template-oss</code> from 4.19.0 to 4.21.0 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
<li><a
href="https://github.com/npm/node-semver/commit/7303db1fe54d6905b23ccb0162878e37d73535ef"><code>7303db1</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/658">#658</a>
add clean() test for build metadata (<a
href="https://redirect.github.com/npm/node-semver/issues/658">#658</a>)
(<a
href="https://github.com/jethrodaniel"><code>@​jethrodaniel</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/6240d75a7c620b0a222f05969a91fdc3dc2be0fb"><code>6240d75</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/656">#656</a>
add missing quotes in README.md (<a
href="https://redirect.github.com/npm/node-semver/issues/656">#656</a>)
(<a href="https://github.com/zyxkad"><code>@​zyxkad</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/14d263faa156e408a033b9b12a2f87735c2df42c"><code>14d263f</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/625">#625</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/7c34e1ac1bcc0bc6579b30745c96075c69bd0332"><code>7c34e1a</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/625">#625</a>
bump <code>@​npmcli/template-oss</code> from 4.18.1 to 4.19.0 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
<li><a
href="https://github.com/npm/node-semver/commit/123e0b03287e1af295ef82d55f55c16805596f35"><code>123e0b0</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/622">#622</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/737d5e1cf10e631bab8a28594aa2d5c9d4090814"><code>737d5e1</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/622">#622</a>
bump <code>@​npmcli/template-oss</code> from 4.18.0 to 4.18.1 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
<li><a
href="https://github.com/npm/node-semver/commit/cce61804ba6f997225a1267135c06676fe0524d2"><code>cce6180</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/598">#598</a>
postinstall for dependabot template-oss PR (<a
href="https://github.com/lukekarrys"><code>@​lukekarrys</code></a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/b914a3d0d26ca27d2685053d7d390af4e02eedd9"><code>b914a3d</code></a>
<a href="https://redirect.github.com/npm/node-semver/pull/598">#598</a>
bump <code>@​npmcli/template-oss</code> from 4.17.0 to 4.18.0 (<a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot])</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/npm/node-semver/commit/377f709718053a477ed717089c4403c4fec332a1"><code>377f709</code></a>
chore: release 7.6.0 (<a
href="https://redirect.github.com/npm/node-semver/issues/661">#661</a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/a7ab13a46201e342d34e84a989632b380f755baf"><code>a7ab13a</code></a>
feat: preserve pre-release and build parts of a version on coerce (<a
href="https://redirect.github.com/npm/node-semver/issues/671">#671</a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/816c7b2cbfcb1986958a290f941eddfd0441139e"><code>816c7b2</code></a>
chore: postinstall for dependabot template-oss PR</li>
<li><a
href="https://github.com/npm/node-semver/commit/0bd24d943cbd1a7f6a2b8d384590bfa98559e1de"><code>0bd24d9</code></a>
chore: bump <code>@​npmcli/template-oss</code> from 4.21.1 to
4.21.3</li>
<li><a
href="https://github.com/npm/node-semver/commit/e521932f115a81030f4e7c34e8631cdd3c6a108b"><code>e521932</code></a>
chore: postinstall for dependabot template-oss PR</li>
<li><a
href="https://github.com/npm/node-semver/commit/88739918080debeb239aae840b35c07436148e50"><code>8873991</code></a>
chore: chore: chore: postinstall for dependabot template-oss PR</li>
<li><a
href="https://github.com/npm/node-semver/commit/f317dc8689781bcfd98e2c32b46157276acdd47c"><code>f317dc8</code></a>
chore: bump <code>@​npmcli/template-oss</code> from 4.19.0 to
4.21.0</li>
<li><a
href="https://github.com/npm/node-semver/commit/7303db1fe54d6905b23ccb0162878e37d73535ef"><code>7303db1</code></a>
chore: add clean() test for build metadata (<a
href="https://redirect.github.com/npm/node-semver/issues/658">#658</a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/6240d75a7c620b0a222f05969a91fdc3dc2be0fb"><code>6240d75</code></a>
chore: add missing quotes in README.md (<a
href="https://redirect.github.com/npm/node-semver/issues/656">#656</a>)</li>
<li><a
href="https://github.com/npm/node-semver/commit/14d263faa156e408a033b9b12a2f87735c2df42c"><code>14d263f</code></a>
chore: postinstall for dependabot template-oss PR</li>
<li>Additional commits viewable in <a
href="https://github.com/npm/node-semver/compare/v7.5.4...v7.6.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `ts-jest` from 29.1.1 to 29.1.2
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/kulshekhar/ts-jest/releases">ts-jest's
releases</a>.</em></p>
<blockquote>
<h2>v29.1.2</h2>
<p>Please refer to <a
href="https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md">ts-jest's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/kulshekhar/ts-jest/compare/v29.1.1...v29.1.2">29.1.2</a>
(2024-01-22)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>calculated cache key based on <code>supportsStaticESM</code> (<a
href="https://github.com/kulshekhar/ts-jest/commit/a5d6f2d4f4bfa1c7c217f6faf9310958797b436f">a5d6f2d</a>)</li>
<li>correct error handling in <code>processAsync</code> (<a
href="https://github.com/kulshekhar/ts-jest/commit/e7be4bf6a863cd76efec28f40fdd5193b2f50bad">e7be4bf</a>),
closes <a
href="https://redirect.github.com/kulshekhar/ts-jest/issues/4207">#4207</a></li>
<li>use <code>Config.ProjectConfig</code> (<a
href="https://github.com/kulshekhar/ts-jest/commit/918312bee22a795ec6bb347f95df4c1ff0a054de">918312b</a>),
closes <a
href="https://redirect.github.com/kulshekhar/ts-jest/issues/4028">#4028</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/70d48be61a9dd641e75bd220ffb0f0488bd5fac7"><code>70d48be</code></a>
chore(release): 29.1.2</li>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/19778bdca0ef8755ec034c58dc1b2ffebededcaf"><code>19778bd</code></a>
build: reference transform options via jest
<code>TransformOptions</code> type</li>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/a5d6f2d4f4bfa1c7c217f6faf9310958797b436f"><code>a5d6f2d</code></a>
fix: calculated cache key based on supportsStaticESM</li>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/2d16f4a2af517b393bcd0b1b2602f7ae68480c99"><code>2d16f4a</code></a>
test(e2e): remove <code>onNodeVersions</code> function</li>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/0861a66d9d79399c720bc98448b4d13f48490224"><code>0861a66</code></a>
build(deps): Update dependency node-fetch to ^3.3.2</li>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/f41cc3e736b2f01b24ce3369130ed01d4cbc96a8"><code>f41cc3e</code></a>
build(deps): Update babel monorepo</li>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/41b8460f60d5108e5467ae226319771fb6d8619b"><code>41b8460</code></a>
build(deps): Update dependency docusaurus-remark-plugin-tab-blocks to
^1.3.1</li>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/e7be4bf6a863cd76efec28f40fdd5193b2f50bad"><code>e7be4bf</code></a>
fix: correct error handling in <code>processAsync</code></li>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/e31d95322179cbfcf25e2dd9ae9dea62a68179a8"><code>e31d953</code></a>
build(deps): Update actions/setup-node digest to 1a4442c</li>
<li><a
href="https://github.com/kulshekhar/ts-jest/commit/622539d8e421ccec0bb1c15b312e1ed59ef74602"><code>622539d</code></a>
build(deps): Update dependency <code>@​formatjs/ts-transformer</code> to
^3.13.9</li>
<li>Additional commits viewable in <a
href="https://github.com/kulshekhar/ts-jest/compare/v29.1.1...v29.1.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `@aws-sdk/client-route-53` from 3.490.0 to 3.511.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/aws/aws-sdk-js-v3/releases"><code>@​aws-sdk/client-route-53</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v3.511.0</h2>
<h4>3.511.0(2024-02-09)</h4>
<h5>Documentation Changes</h5>
<ul>
<li><strong>client-amp:</strong> Overall documentation updates. (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/1b75f97614360a83ed72ea3b3b432a1c689fcc9a">1b75f976</a>)</li>
<li><strong>client-ecs:</strong> Documentation only update for Amazon
ECS. (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/36a775be390d880cb7a9ec4000c0c416dcbeadd9">36a775be</a>)</li>
<li>update endpoint section (<a
href="https://redirect.github.com/aws/aws-sdk-js-v3/pull/5781">#5781</a>)
(<a
href="https://github.com/aws/aws-sdk-js-v3/commit/3d782f0ee069c405294c5e7e15a7f7d3e3f4a6ef">3d782f0e</a>)</li>
<li>add remark about SQS custom endpoints (<a
href="https://redirect.github.com/aws/aws-sdk-js-v3/pull/5780">#5780</a>)
(<a
href="https://github.com/aws/aws-sdk-js-v3/commit/4e0c0fc545a756f81eaccd7923ca45044e2d8fdc">4e0c0fc5</a>)</li>
</ul>
<h5>New Features</h5>
<ul>
<li><strong>clients:</strong> update client endpoints as of 2024-02-09
(<a
href="https://github.com/aws/aws-sdk-js-v3/commit/7f7fd0c50fafef13569de195848c5d1e20a3d81d">7f7fd0c5</a>)</li>
<li><strong>client-braket:</strong> Creating a job will result in
DeviceOfflineException when using an offline device, and
DeviceRetiredException when using a retired device. (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/228341b5692b363f35cb57eda308c6db6eecf1d0">228341b5</a>)</li>
<li><strong>client-cost-optimization-hub:</strong> Adding
includeMemberAccounts field to the response of ListEnrollmentStatuses
API. (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/13b240624b82b9db066d907bf7e513a45d22df77">13b24062</a>)</li>
<li><strong>client-batch:</strong> This feature allows Batch to support
configuration of repository credentials for jobs running on ECS (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/28bd5fcb588bf2a5ef06a04c95acb83b7915939e">28bd5fcb</a>)</li>
<li><strong>client-iot:</strong> This release allows AWS IoT Core users
to enable Online Certificate Status Protocol (OCSP) Stapling for TLS
X.509 Server Certificates when creating and updating AWS IoT Domain
Configurations with Custom Domain. (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/3d21d31bb896adff5b0e134da661e18c90283a6a">3d21d31b</a>)</li>
<li><strong>client-pricing:</strong> Add Throttling Exception to all
APIs. (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/022ccd4c6845b491e4996550e0ed6876ab4becde">022ccd4c</a>)</li>
</ul>
<h5>Bug Fixes</h5>
<ul>
<li><strong>credential-provider-node:</strong> pass client region to
inner credential client region (<a
href="https://redirect.github.com/aws/aws-sdk-js-v3/pull/5758">#5758</a>)
(<a
href="https://github.com/aws/aws-sdk-js-v3/commit/8c0b29eabfe0ce8dbd2cbdcfb8b0a31b003bc3f2">8c0b29ea</a>)</li>
</ul>
<hr />
<p>For list of updated packages, view
<strong>updated-packages.md</strong> in
<strong>assets-3.511.0.zip</strong></p>
<h2>v3.510.0</h2>
<h4>3.510.0(2024-02-08)</h4>
<h5>Documentation Changes</h5>
<ul>
<li>add supplemental docs (<a
href="https://redirect.github.com/aws/aws-sdk-js-v3/pull/5776">#5776</a>)
(<a
href="https://github.com/aws/aws-sdk-js-v3/commit/9dade00ecfff3c7d4e65ad318b60f03f8ddfe719">9dade00e</a>)</li>
</ul>
<h5>New Features</h5>
<ul>
<li><strong>client-quicksight:</strong> General Interactions for
Visuals; Waterfall Chart Color Configuration; Documentation Update (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/d97c013504074119aedc0d39adf1d7d1b495fe45">d97c0135</a>)</li>
<li><strong>client-codepipeline:</strong> Add ability to execute
pipelines with new parallel &amp; queued execution modes and add support
for triggers with filtering on branches and file paths. (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/8180cad135065dca5f718e3643a48cae024a22d8">8180cad1</a>)</li>
<li><strong>client-workspaces:</strong> This release introduces
User-Decoupling feature. This feature allows Workspaces Core customers
to provision workspaces without providing users. CreateWorkspaces and
DescribeWorkspaces APIs will now take a new optional parameter
&quot;WorkspaceName&quot;. (<a
href="https://github.com/aws/aws-sdk-js-v3/commit/73e1b347f2db05161bb4438a75b01470fcf02eee">73e1b347</a>)</li>
</ul>
<hr />
<p>For list of updated packages, view
<strong>updated-packages.md</strong> in
<strong>assets-3.510.0.zip</strong></p>
<h2>v3.509.0</h2>
<h4>3.509.0(2024-02-07)</h4>
<h5>New Features</h5>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/aws/aws-sdk-js-v3/blob/main/clients/client-route-53/CHANGELOG.md"><code>@​aws-sdk/client-route-53</code>'s
changelog</a>.</em></p>
<blockquote>
<h1><a
href="https://github.com/aws/aws-sdk-js-v3/compare/v3.510.0...v3.511.0">3.511.0</a>
(2024-02-09)</h1>
<p><strong>Note:</strong> Version bump only for package
<code>@​aws-sdk/client-route-53</code></p>
<h1><a
href="https://github.com/aws/aws-sdk-js-v3/compare/v3.508.0...v3.509.0">3.509.0</a>
(2024-02-07)</h1>
<p><strong>Note:</strong> Version bump only for package
<code>@​aws-sdk/client-route-53</code></p>
<h1><a
href="https://github.com/aws/aws-sdk-js-v3/compare/v3.506.0...v3.507.0">3.507.0</a>
(2024-02-05)</h1>
<h3>Features</h3>
<ul>
<li>unified error dispatcher in protocols (<a
href="https://redirect.github.com/aws/aws-sdk-js-v3/issues/5756">#5756</a>)
(<a
href="https://github.com/aws/aws-sdk-js-v3/commit/0872087ef56422541bd38d293f97613dfd10236f">0872087</a>)</li>
</ul>
<h1><a
href="https://github.com/aws/aws-sdk-js-v3/compare/v3.503.1...v3.504.0">3.504.0</a>
(2024-01-31)</h1>
<p><strong>Note:</strong> Version bump only for package
<code>@​aws-sdk/client-route-53</code></p>
<h2><a
href="https://github.com/aws/aws-sdk-js-v3/compare/v3.503.0...v3.503.1">3.503.1</a>
(2024-01-30)</h2>
<p><strong>Note:</strong> Version bump only for package
<code>@​aws-sdk/client-route-53</code></p>
<h1><a
href="https://github.com/aws/aws-sdk-js-v3/compare/v3.502.0...v3.503.0">3.503.0</a>
(2024-01-30)</h1>
<p><strong>Note:</strong> Version bump only for package
<code>@​aws-sdk/client-route-53</code></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/d0853063a415dcac7c88f0a4913fa3d7ef583045"><code>d085306</code></a>
Publish v3.511.0</li>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/fff6390f40819ff346df9b93d9d2f496e7ee5b1e"><code>fff6390</code></a>
Publish v3.509.0</li>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/93b5aca90ff8140645239dab30f48ecae45b9328"><code>93b5aca</code></a>
Publish v3.507.0</li>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/0872087ef56422541bd38d293f97613dfd10236f"><code>0872087</code></a>
feat: unified error dispatcher in protocols (<a
href="https://github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-route-53/issues/5756">#5756</a>)</li>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/004b7f81ea65140bdd2202ce953befe85d25d733"><code>004b7f8</code></a>
Publish v3.504.0</li>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/ea7e6bf82fb42119c05cc0ea25f709eac9fe1418"><code>ea7e6bf</code></a>
Publish v3.503.1</li>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/5cb98d64a0795465da7c863eeac1eadf803c9374"><code>5cb98d6</code></a>
Publish v3.503.0</li>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/8edb9b5a8e1af805cfb6f48c78da7e6aae3c1605"><code>8edb9b5</code></a>
docs(client-route-53): Update the SDKs for text changes in the
APIs.</li>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/7d6616391d47753e622c2ebcf44e513a632fbd77"><code>7d66163</code></a>
Publish v3.502.0</li>
<li><a
href="https://github.com/aws/aws-sdk-js-v3/commit/d27301d48f3e75fdaccabf58f779f0b33a70664e"><code>d27301d</code></a>
feat(credential-providers): lazy load STS &amp; SSO clients in
credential provide...</li>
<li>Additional commits viewable in <a
href="https://github.com/aws/aws-sdk-js-v3/commits/v3.511.0/clients/client-route-53">compare
view</a></li>
</ul>
</details>
<br />

Updates `acme-client` from 5.0.0 to 5.3.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/publishlab/node-acme-client/blob/master/CHANGELOG.md">acme-client's
changelog</a>.</em></p>
<blockquote>
<h2>v5.3.0 (2024-02-05)</h2>
<ul>
<li><code>added</code> Support and tests for satisfying
<code>tls-alpn-01</code> challenges</li>
<li><code>changed</code> Replace <code>jsrsasign</code> with
<code>@peculiar/x509</code> for certificate and CSR generation and
parsing</li>
<li><code>changed</code> Method
<code>getChallengeKeyAuthorization()</code> now returns
<code>$token.$thumbprint</code> when called with a
<code>tls-alpn-01</code> challenge
<ul>
<li>Previously returned base64url encoded SHA256 digest of
<code>$token.$thumbprint</code> erroneously</li>
<li>This change is not considered breaking since the previous behavior
was incorrect</li>
</ul>
</li>
</ul>
<h2>v5.2.0 (2024-01-22)</h2>
<ul>
<li><code>fixed</code> Allow self-signed or invalid certs when
validating <code>http-01</code> challenges that redirect to HTTPS - <a
href="https://redirect.github.com/publishlab/node-acme-client/issues/65">#65</a></li>
<li><code>fixed</code> Wait for all challenge promises to settle before
rejecting <code>client.auto()</code> - <a
href="https://redirect.github.com/publishlab/node-acme-client/issues/75">#75</a></li>
</ul>
<h2>v5.1.0 (2024-01-20)</h2>
<ul>
<li><code>fixed</code> Upgrade <code>[email protected]</code> - <a
href="https://github.com/kjur/jsrsasign/security/advisories/GHSA-rh63-9qcf-83gf">GHSA-rh63-9qcf-83gf</a></li>
<li><code>fixed</code> Upgrade <code>[email protected]</code> - <a
href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=2023-45857">CVE-2023-45857</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/88630a505451b94d754147240e697445fe1066e1"><code>88630a5</code></a>
Bump v5.3.0</li>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/eb2e96df3603072e5b7a620420d13e8ea763449e"><code>eb2e96d</code></a>
Example for dns-01</li>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/c17c6df7d9a9649a5e71d2c5105e21e3f9d9decc"><code>c17c6df</code></a>
Update IETF links</li>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/75455b9afb1229288fd054f6b6b463a76413a5cf"><code>75455b9</code></a>
Fix misc typos</li>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/5c758b17eb60f86fefe8f6d30bdef3c97731bf9d"><code>5c758b1</code></a>
Forgot SAN extension for self-signed ALPN certs</li>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/04b84884fa57a005ae0d72c5a1f1f54f50967100"><code>04b8488</code></a>
Replace jsrsasign dep with <code>@​peculiar/x509</code></li>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/6eaf8d34be569fca383fb0cc616d4dff6c87bf18"><code>6eaf8d3</code></a>
Example for on-demand http-01</li>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/a10912907490d6b2108d3cafdbe548fac7912319"><code>a109129</code></a>
Example for on-demand tls-alpn-01</li>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/b34134ac2fc745a9a205dd67257c1f1699a73272"><code>b34134a</code></a>
Example disclaimer, fallback cert</li>
<li><a
href="https://github.com/publishlab/node-acme-client/commit/0d328c19fb08577d78546c1e1f00af6246f32a73"><code>0d328c1</code></a>
Replace CircleCI with GitHub Actions</li>
<li>Additional commits viewable in <a
href="https://github.com/publishlab/node-acme-client/compare/v5.0.0...v5.3.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `dotenv` from 16.3.1 to 16.4.2
<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.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>
<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="https://github.com/motdotla/dotenv/commit/07948f7e1b6e6e1069be44b465bd7e9406487501"><code>07948f7</code></a>
16.4.2</li>
<li><a
href="https://github.com/motdotla/dotenv/commit/948fe80f84fa815d7f99cf2c1c2e214c445447ac"><code>948fe80</code></a>
update changelog</li>
<li><a
href="https://github.com/motdotla/dotenv/commit/f2729c13f3d59173fc197d5f9b3da867500e8a77"><code>f2729c1</code></a>
update funding link</li>
<li><a
href="https://github.com/motdotla/dotenv/commit/ca16eb5f09b9e5b2f2e7b068149c64480ab7ce77"><code>ca16eb5</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/806">#806</a>
from motdotla/dotenvx</li>
<li><a
href="https://github.com/motdotla/dotenv/commit/3384bef596cd0bf182705495380b28185aed0be2"><code>3384bef</code></a>
update dotenv.org to dotenvx.com</li>
<li><a
href="https://github.com/motdotla/dotenv/commit/f5a976fcf1f2ea9952b2b1ada7ea8520dfafb65c"><code>f5a976f</code></a>
update README</li>
<li><a
href="https://github.com/motdotla/dotenv/commit/85dbe875ccb9c29d0022adb539a28fd0d50bd3af"><code>85dbe87</code></a>
update README</li>
<li><a
href="https://github.com/motdotla/dotenv/commit/b679d4eb0c7d38c8283b07c1acc5f438b6905680"><code>b679d4e</code></a>
Merge pull request <a
href="https://redirect.github.com/motdotla/dotenv/issues/803">#803</a>
from motdotla/multiline</li>
<li><a
href="https://github.com/motdotla/dotenv/commit/a1e26b753d76146abae9f5efceaa55a012bf24c7"><code>a1e26b7</code></a>
add additional multiline test</li>
<li><a
href="https://github.com/motdotla/dotenv/commit/8076cbb4ae64b531308b42b5f27d35f49b74ed83"><code>8076cbb</code></a>
update README</li>
<li>Additional commits viewable in <a
href="https://github.com/motdotla/dotenv/compare/v16.3.1...v16.4.2">compare
view</a></li>
</ul>
</details>
<br />

Updates `@types/uuid` from 9.0.7 to 9.0.8
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/uuid">compare
view</a></li>
</ul>
</details>
<br />

Updates `@inquirer/prompts` from 3.3.0 to 4.0.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/SBoudrias/Inquirer.js/releases"><code>@​inquirer/prompts</code>'s
releases</a>.</em></p>
<blockquote>
<h2><code>@​inquirer/prompts</code><a
href="https://github.com/4"><code>@​4</code></a>.0.0</h2>
<ul>
<li>All prompts are now themable. See each prompts documentation about
the options available.</li>
<li>BREAKING: The <code>message</code> option of each prompt must now be
a <code>string</code>. It could previously be an asynchronous function.
See <a
href="https://github.com/SBoudrias/Inquirer.js#wait-for-config">recipes
for a migration option</a>.</li>
<li>Node 18 required</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/44016a40bc9e93455dfdb9fa6c25c27c1c109bd3"><code>44016a4</code></a>
Publish</li>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/c5fb9df4ba15ee946c32bcfaf52006bed044bd8a"><code>c5fb9df</code></a>
Next major release (<a
href="https://redirect.github.com/SBoudrias/Inquirer.js/issues/1355">#1355</a>)</li>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/b35b6bb529969be3ca0bb07808b7960896c9850d"><code>b35b6bb</code></a>
Chore: Upgrade to TS 5.3.3</li>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/4dee2b11d89a7c8a698c9eeda546ba8092b84f64"><code>4dee2b1</code></a>
Publish</li>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/c76d110e7d7b1bcb219448a06ede411dd36f35cc"><code>c76d110</code></a>
Chore: Increase codecov failure threshold</li>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/1d61ed8dcc7aef758e76511dbc05c7870b4df1a1"><code>1d61ed8</code></a>
Bugfix (password): Don't format helpTip as the answer</li>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/b5cc2f56b163cf4d6993ce71288250faaa34cc46"><code>b5cc2f5</code></a>
Bugfix (input): Do not reformat final transform</li>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/c52a91fe666e48fc2c3e080a452f091d5f2af476"><code>c52a91f</code></a>
Chore (editor): Cleanup rendering logic</li>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/f2bacfe16faac9afeb7ae812987527ec9a5563be"><code>f2bacfe</code></a>
Bugfix: Fix select prompt showing duplicated help tips. [BREAKING:
@inquirer/...</li>
<li><a
href="https://github.com/SBoudrias/Inquirer.js/commit/6c0d1d23e6881a10bc3d718d079a0a09ba382dd5"><code>6c0d1d2</code></a>
Publish</li>
<li>Additional commits viewable in <a
href="https://github.com/SBoudrias/Inquirer.js/compare/@inquirer/[email protected]...@inquirer/[email protected]">compare
view</a></li>
</ul>
</details>
<br />

Updates `@streamr/network-contracts` from 7.0.7 to 7.0.8

Updates `commander` from 11.1.0 to 12.0.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tj/commander.js/releases">commander's
releases</a>.</em></p>
<blockquote>
<h2>v12.0.0</h2>
<h3>Added</h3>
<ul>
<li><code>.addHelpOption()</code> as another way of configuring built-in
help option (<a
href="https://redirect.github.com/tj/commander.js/issues/2006">#2006</a>)</li>
<li><code>.helpCommand()</code> for configuring built-in help command
(<a
href="https://redirect.github.com/tj/commander.js/issues/2087">#2087</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li><em>Breaking:</em> use non-zero exit code when spawned executable
subcommand terminates due to a signal (<a
href="https://redirect.github.com/tj/commander.js/issues/2023">#2023</a>)</li>
<li><em>Breaking:</em> check <code>passThroughOptions</code> constraints
when using <code>.addCommand</code> and throw if parent command does not
have <code>.enablePositionalOptions()</code> enabled (<a
href="https://redirect.github.com/tj/commander.js/issues/1937">#1937</a>)</li>
</ul>
<h3>Changed</h3>
<ul>
<li><em>Breaking:</em> Commander 12 requires Node.js v18 or higher (<a
href="https://redirect.github.com/tj/commander.js/issues/2027">#2027</a>)</li>
<li><em>Breaking:</em> throw an error if add an option with a flag which
is already in use (<a
href="https://redirect.github.com/tj/commander.js/issues/2055">#2055</a>)</li>
<li><em>Breaking:</em> throw an error if add a command with name or
alias which is already in use (<a
href="https://redirect.github.com/tj/commander.js/issues/2059">#2059</a>)</li>
<li><em>Breaking:</em> throw error when calling
<code>.storeOptionsAsProperties()</code> after setting an option value
(<a
href="https://redirect.github.com/tj/commander.js/issues/1928">#1928</a>)</li>
<li>replace non-standard JSDoc of <code>@api private</code> with
documented <code>@private</code> (<a
href="https://redirect.github.com/tj/commander.js/issues/1949">#1949</a>)</li>
<li><code>.addHelpCommand()</code> now takes a Command (passing string
or boolean still works as before but deprecated) (<a
href="https://redirect.github.com/tj/commander.js/issues/2087">#2087</a>)</li>
<li>refactor internal implementation of built-in help option (<a
href="https://redirect.github.com/tj/commander.js/issues/2006">#2006</a>)</li>
<li>refactor internal implementation of built-in help command (<a
href="https://redirect.github.com/tj/commander.js/issues/2087">#2087</a>)</li>
</ul>
<h3>Deprecated</h3>
<ul>
<li><code>.addHelpCommand()</code> passing string or boolean (use
<code>.helpCommand()</code> or pass a Command) (<a
href="https://redirect.github.com/tj/commander.js/issues/2087">#2087</a>)</li>
</ul>
<h3>Removed</h3>
<ul>
<li><em>Breaking:</em> removed default export of a global Command
instance from CommonJS (use the named <code>program</code> export
instead) (<a
href="https://redirect.github.com/tj/commander.js/issues/2017">#2017</a>)</li>
</ul>
<h3>Migration Tips</h3>
<p><strong>global program</strong></p>
<p>If you are using the <a
href="https://github.com/tj/commander.js/blob/HEAD/docs/deprecated.md#default-import-of-global-command-object">deprecated</a>
default import of the global Command object, you need to switch to using
a named import (or create a new <code>Command</code>).</p>
<pre lang="js"><code>// const program = require('commander');
const { program } = require('commander');
</code></pre>
<p><strong>option and command clashes</strong></p>
<p>A couple of configuration problems now throw an error, which will
pick up issues in existing programs:</p>
<ul>
<li>adding an option which uses the same flag as a previous option</li>
<li>adding a command which uses the same name or alias as a previous
command</li>
</ul>
<h2>v12.0.0-1</h2>
<h3>Added</h3>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tj/commander.js/blob/master/CHANGELOG.md">commander's
changelog</a>.</em></p>
<blockquote>
<h2>[12.0.0] (2024-02-03)</h2>
<h3>Added</h3>
<ul>
<li><code>.addHelpOption()</code> as another way of configuring built-in
help option (<a
href="https://redirect.github.com/tj/commander.js/issues/2006">#2006</a>)</li>
<li><code>.helpCommand()</code> for configuring built-in help command
(<a
href="https://redirect.github.com/tj/commander.js/issues/2087">#2087</a>)</li>
</ul>
<h3>Fixed</h3>
<ul>
<li><em>Breaking:</em> use non-zero exit code when spawned executable
subcommand terminates due to a signal (<a
href="https://redirect.github.com/tj/comma…
## Summary

Low hanging fruit CPU optimisation in RoutingSession: 
No longer run `updateAndGetRoutablePeers()` if the session is closing in
`onRequestSucceeded()` or `onRequestFailed()`
…#2370)

## Summary

No longer set `this.stopped = true` in RoutingSession outside of
`stop()`
## Summary

The handshaker would remain listening to data from managed connections,
parsing data, until the connection would be closed. Now the handshaker
will stop listening to data once connection is handshaked.
## Summary

The `NetworkNode#fetchNodeInfo` can be called by any peer descriptor. Previously if it was called with the peer descriptor of the local node, the query failed with `CANNOT_CONNECT_TO_SELF` error.

Also changed the return type to be `NodeInfo` instead of `NodeInfoResponse`.
- The `NodeInfoResponse` is a low level RPC communication interface, and it is better to not to expose it in the `trackerless-network`'s public API.
- Both interfaces have the same fields, but in `NodeInfo` all the fields are required. (In practice all fields of `NodeInfoResponse` also also required, but we can't annotate the fields as such before we implement the protobuf message validation.)

## Refactoring

Extracted the `createNodeInfo` business logic from the RPC server to `NetworkStack`.
…r dependency (#2375)

## Summary

Reduce the amount of `message` events emitted in the ConnectionManager
and DhtNode.
## Summary

Reduce max size of the duplicate detectors in Router and
ConnectionManager

## Future Improvements

Is the duplicate detector in ConnectionManager needed anymore? There
should always only be a single connection. Should be possible after
#2375
## Summary

Cache routing tables based on targetId and previousId using `lru-cache`.
This is a significant performance improvement.

Calculating the routing table for each individual routed message is
expensive can be expensive in high throughput scenarios. By default,
routing tables are cached for 15 seconds and up to 1000 tables. The
cached routing tables will be updated on new connections and
disconnections to keep them up-to-date. Adding to a table is O(log n)
deleting is O(1). Complete reconstruction is O(n log n). Thus it makes
more sense to cache and maintain frequently used tables instead of
reconstructing them on demand.

## Future improvements

- Could make cache options configurable. It could be useful in some
cases to store more tables or keep them stored for longer.
- Remove the `contacted` field from `SortedContactList` values as it is
no longer needed anywhere.
@harbu harbu closed this Feb 29, 2024
@harbu harbu deleted the testnet-three branch July 4, 2024 10:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
broker Related to Broker Package ci Related to CI configuration cli-tools Related to CLI Tools Package client Related to Client Package dht Related to DHT package docs network Related to Network Package proto-rpc protocol Related to Protocol Package test-utils Related to Test Utils Package utils
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants