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

Foxglove update #1

Merged
merged 139 commits into from
Dec 27, 2023
Merged

Foxglove update #1

merged 139 commits into from
Dec 27, 2023

Conversation

servetoz
Copy link
Collaborator

User-Facing Changes

Description

foxglovebot and others added 30 commits November 7, 2023 01:20
If there is no configured range or min/max for the x-axis, set the
x-axis bounds to `0, end-time`. This avoids the chart constantly
re-computing the end time when new data arrives and makes the behavior consistent with how plot panels behave.
**User-Facing Changes**
Fixed issues where splitting tab panels would sometimes result in panels
losing their config, or multiple panels sharing the same config.

**Description**
- The logic that "clones" panels residing in tabs when the tab is split
lives in `getSaveConfigsPayloadForAddedPanel`. This function was only
being invoked when the panel being split was not inside a tab layout. It
needs to be invoked regardless of whether the panel being split is in
nested in another tab.
- When cloning panels while splitting, the `relatedConfigs` was being
used as a source for the newly cloned panels' configs. This
`relatedConfigs` was a subset of the overall `configById`, which led to
newly cloned panels sometimes having no config (because it could not be
found in `relatedConfigs`). I changed this to pass in the whole
`configById`.
- Removed the `relatedConfigs` concept entirely since we do not use this
in the app (it was related to a defunct "presets" feature).
- Removed some test helpers which were no longer used.
**User-Facing Changes**
- N/A

**Description**
- Consistent labelling of event details in app sidebar

Before:

![image](https://github.com/foxglove/studio/assets/6993359/1b76f9ff-256e-4969-9867-4c7eb82f334e)

After:
"timestamp" --> "start"
**User-Facing Changes**
None

**Description**
Removes console error related `:nth-child`


Resoves FG-5514
When I added this function I forgot that `BuiltinPanelExtensionContext`
was a thing. It is more appropriate for this function to live there
until the API is reviewed and shipped.
**User-Facing Changes**
<!-- will be used as a changelog entry -->
- Fix ModelPrimitive flickering on update

**Description**

Updated to do as much before the animation frame as possible. So now old
renderables are cleared or kept before the await loop for loading new
renderables.

Below are videos of stepping through animation frames to show that there
is less flickering.

Before:


https://github.com/foxglove/studio/assets/10187776/ee84b955-1310-4aa4-9415-04df161e5d70

After:


https://github.com/foxglove/studio/assets/10187776/e0aba817-3fa4-475b-ae2e-a8d69e1b350b


Sample data file:
[flamingo.mcap.zip](https://github.com/foxglove/studio/files/13284693/flamingo.mcap.zip)


<!-- link relevant GitHub issues -->
Fixes: FG-5363
Fixes:  https://github.com/foxglove/studio/issues/7007
<!-- add `docs` label if this PR requires documentation updates -->
<!-- add relevant metric tracking for experimental / new features -->
Bumps
[@fluentui/react-icons](https://github.com/microsoft/fluentui-system-icons)
from 2.0.218 to 2.0.222.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/microsoft/fluentui-system-icons/commits">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@fluentui/react-icons&package-manager=npm_and_yarn&previous-version=2.0.218&new-version=2.0.222)](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 will merge this PR once CI passes on it, as requested by
@foxglovebot.

[//]: # (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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the eslint group with 4 updates:
[@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin),
[@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser),
[@typescript-eslint/rule-tester](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/rule-tester)
and
[@typescript-eslint/utils](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/utils).

Updates `@typescript-eslint/eslint-plugin` from 6.9.0 to 6.10.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.10.0</h2>
<h1><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.1...v6.10.0">6.10.0</a>
(2023-11-06)</h1>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-unused-vars] handle logical
assignment (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7854">#7854</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/11e57c5937cc2ad2e6b035f8d3fb25a918490960">11e57c5</a>)</li>
<li><strong>eslint-plugin:</strong> [require-await] add support for
&quot;await using&quot; (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7866">#7866</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/855abea2d7ba0235e61430f9481117af5f8f1bf7">855abea</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [ban-ts-comments] suggest
ts-expect-error over ts-ignore (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7849">#7849</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/5e73a4810add09470426129bc6b267cfaa42c378">5e73a48</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.9.1</h2>
<h2><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.0...v6.9.1">6.9.1</a>
(2023-10-30)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [naming-convention] allow PascalCase
for imports (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7841">#7841</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/7ad86eead76fa9e96573ac011376c1cb8c009cee">7ad86ee</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unused-expressions] handle
TSInstantiationExpression expression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7831">#7831</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/31988e0d2e6cf5e6bb9bb287958b1f03ca084259">31988e0</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>
</blockquote>
</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>
<h1><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.1...v6.10.0">6.10.0</a>
(2023-11-06)</h1>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-unused-vars] handle logical
assignment (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7854">#7854</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/11e57c5937cc2ad2e6b035f8d3fb25a918490960">11e57c5</a>)</li>
<li><strong>eslint-plugin:</strong> [require-await] add support for
&quot;await using&quot; (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7866">#7866</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/855abea2d7ba0235e61430f9481117af5f8f1bf7">855abea</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [ban-ts-comments] suggest
ts-expect-error over ts-ignore (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7849">#7849</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/5e73a4810add09470426129bc6b267cfaa42c378">5e73a48</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><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.0...v6.9.1">6.9.1</a>
(2023-10-30)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [naming-convention] allow PascalCase
for imports (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7841">#7841</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/7ad86eead76fa9e96573ac011376c1cb8c009cee">7ad86ee</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unused-expressions] handle
TSInstantiationExpression expression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7831">#7831</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/31988e0d2e6cf5e6bb9bb287958b1f03ca084259">31988e0</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>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/75c128856b1ce05a4fec799bfa6de03b3dab03d0"><code>75c1288</code></a>
chore: publish v6.10.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/29c2e688afa7d9b8873d97c3961b65805d87cf2a"><code>29c2e68</code></a>
docs: flip the flag of skipCompoundAssignments in the example (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/7868">#7868</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/855abea2d7ba0235e61430f9481117af5f8f1bf7"><code>855abea</code></a>
fix(eslint-plugin): [require-await] add support for &quot;await
using&quot; (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/7866">#7866</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/11e57c5937cc2ad2e6b035f8d3fb25a918490960"><code>11e57c5</code></a>
fix(eslint-plugin): [no-unused-vars] handle logical assignment (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/7854">#7854</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/5e73a4810add09470426129bc6b267cfaa42c378"><code>5e73a48</code></a>
feat(eslint-plugin): [ban-ts-comments] suggest ts-expect-error over
ts-ignore...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/1e472949e561ea37e160f4c9d9e0136e04f40a1f"><code>1e47294</code></a>
chore: publish v6.9.1</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/7ad86eead76fa9e96573ac011376c1cb8c009cee"><code>7ad86ee</code></a>
fix(eslint-plugin): [naming-convention] allow PascalCase for imports (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/7841">#7841</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/3300fa15d07e774a037000d208da02de048ac062"><code>3300fa1</code></a>
docs: add caveats to no-explicit-any docs (<a
href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin/issues/7805">#7805</a>)</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/31988e0d2e6cf5e6bb9bb287958b1f03ca084259"><code>31988e0</code></a>
fix(eslint-plugin): [no-unused-expressions] handle
TSInstantiationExpression ...</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/64552788ec479b0c4328035a5fb83844fa2af395"><code>6455278</code></a>
docs(eslint-plugin): [no-unsafe-member-access] correct example idx from
const...</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v6.10.0/packages/eslint-plugin">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/parser` from 6.9.0 to 6.10.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.10.0</h2>
<h1><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.1...v6.10.0">6.10.0</a>
(2023-11-06)</h1>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-unused-vars] handle logical
assignment (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7854">#7854</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/11e57c5937cc2ad2e6b035f8d3fb25a918490960">11e57c5</a>)</li>
<li><strong>eslint-plugin:</strong> [require-await] add support for
&quot;await using&quot; (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7866">#7866</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/855abea2d7ba0235e61430f9481117af5f8f1bf7">855abea</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [ban-ts-comments] suggest
ts-expect-error over ts-ignore (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7849">#7849</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/5e73a4810add09470426129bc6b267cfaa42c378">5e73a48</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.9.1</h2>
<h2><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.0...v6.9.1">6.9.1</a>
(2023-10-30)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [naming-convention] allow PascalCase
for imports (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7841">#7841</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/7ad86eead76fa9e96573ac011376c1cb8c009cee">7ad86ee</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unused-expressions] handle
TSInstantiationExpression expression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7831">#7831</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/31988e0d2e6cf5e6bb9bb287958b1f03ca084259">31988e0</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>
</blockquote>
</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>
<h1><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.1...v6.10.0">6.10.0</a>
(2023-11-06)</h1>
<p><strong>Note:</strong> Version bump only for package
<code>@​typescript-eslint/parser</code></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><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.0...v6.9.1">6.9.1</a>
(2023-10-30)</h2>
<p><strong>Note:</strong> Version bump only for package
<code>@​typescript-eslint/parser</code></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/75c128856b1ce05a4fec799bfa6de03b3dab03d0"><code>75c1288</code></a>
chore: publish v6.10.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/1e472949e561ea37e160f4c9d9e0136e04f40a1f"><code>1e47294</code></a>
chore: publish v6.9.1</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v6.10.0/packages/parser">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/rule-tester` from 6.9.0 to 6.10.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@​typescript-eslint/rule-tester</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v6.10.0</h2>
<h1><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.1...v6.10.0">6.10.0</a>
(2023-11-06)</h1>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-unused-vars] handle logical
assignment (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7854">#7854</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/11e57c5937cc2ad2e6b035f8d3fb25a918490960">11e57c5</a>)</li>
<li><strong>eslint-plugin:</strong> [require-await] add support for
&quot;await using&quot; (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7866">#7866</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/855abea2d7ba0235e61430f9481117af5f8f1bf7">855abea</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [ban-ts-comments] suggest
ts-expect-error over ts-ignore (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7849">#7849</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/5e73a4810add09470426129bc6b267cfaa42c378">5e73a48</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.9.1</h2>
<h2><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.0...v6.9.1">6.9.1</a>
(2023-10-30)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [naming-convention] allow PascalCase
for imports (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7841">#7841</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/7ad86eead76fa9e96573ac011376c1cb8c009cee">7ad86ee</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unused-expressions] handle
TSInstantiationExpression expression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7831">#7831</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/31988e0d2e6cf5e6bb9bb287958b1f03ca084259">31988e0</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>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/rule-tester/CHANGELOG.md"><code>@​typescript-eslint/rule-tester</code>'s
changelog</a>.</em></p>
<blockquote>
<h1><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.1...v6.10.0">6.10.0</a>
(2023-11-06)</h1>
<p><strong>Note:</strong> Version bump only for package
<code>@​typescript-eslint/rule-tester</code></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><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.0...v6.9.1">6.9.1</a>
(2023-10-30)</h2>
<p><strong>Note:</strong> Version bump only for package
<code>@​typescript-eslint/rule-tester</code></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/75c128856b1ce05a4fec799bfa6de03b3dab03d0"><code>75c1288</code></a>
chore: publish v6.10.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/1e472949e561ea37e160f4c9d9e0136e04f40a1f"><code>1e47294</code></a>
chore: publish v6.9.1</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v6.10.0/packages/rule-tester">compare
view</a></li>
</ul>
</details>
<br />

Updates `@typescript-eslint/utils` from 6.9.0 to 6.10.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@​typescript-eslint/utils</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v6.10.0</h2>
<h1><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.1...v6.10.0">6.10.0</a>
(2023-11-06)</h1>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [no-unused-vars] handle logical
assignment (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7854">#7854</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/11e57c5937cc2ad2e6b035f8d3fb25a918490960">11e57c5</a>)</li>
<li><strong>eslint-plugin:</strong> [require-await] add support for
&quot;await using&quot; (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7866">#7866</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/855abea2d7ba0235e61430f9481117af5f8f1bf7">855abea</a>)</li>
</ul>
<h3>Features</h3>
<ul>
<li><strong>eslint-plugin:</strong> [ban-ts-comments] suggest
ts-expect-error over ts-ignore (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7849">#7849</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/5e73a4810add09470426129bc6b267cfaa42c378">5e73a48</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.9.1</h2>
<h2><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.0...v6.9.1">6.9.1</a>
(2023-10-30)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>eslint-plugin:</strong> [naming-convention] allow PascalCase
for imports (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7841">#7841</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/7ad86eead76fa9e96573ac011376c1cb8c009cee">7ad86ee</a>)</li>
<li><strong>eslint-plugin:</strong> [no-unused-expressions] handle
TSInstantiationExpression expression (<a
href="https://redirect.github.com/typescript-eslint/typescript-eslint/issues/7831">#7831</a>)
(<a
href="https://github.com/typescript-eslint/typescript-eslint/commit/31988e0d2e6cf5e6bb9bb287958b1f03ca084259">31988e0</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>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/utils/CHANGELOG.md"><code>@​typescript-eslint/utils</code>'s
changelog</a>.</em></p>
<blockquote>
<h1><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.1...v6.10.0">6.10.0</a>
(2023-11-06)</h1>
<p><strong>Note:</strong> Version bump only for package
<code>@​typescript-eslint/utils</code></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><a
href="https://github.com/typescript-eslint/typescript-eslint/compare/v6.9.0...v6.9.1">6.9.1</a>
(2023-10-30)</h2>
<p><strong>Note:</strong> Version bump only for package
<code>@​typescript-eslint/utils</code></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/75c128856b1ce05a4fec799bfa6de03b3dab03d0"><code>75c1288</code></a>
chore: publish v6.10.0</li>
<li><a
href="https://github.com/typescript-eslint/typescript-eslint/commit/1e472949e561ea37e160f4c9d9e0136e04f40a1f"><code>1e47294</code></a>
chore: publish v6.9.1</li>
<li>See full diff in <a
href="https://github.com/typescript-eslint/typescript-eslint/commits/v6.10.0/packages/utils">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 will merge this PR once CI passes on it, as requested by
@foxglovebot.

[//]: # (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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the storybook group with 6 updates:

| Package | From | To |
| --- | --- | --- |
|
[@storybook/addon-actions](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/actions)
| `7.5.1` | `7.5.3` |
|
[@storybook/addon-essentials](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials)
| `7.5.1` | `7.5.3` |
|
[@storybook/addon-interactions](https://github.com/storybookjs/storybook/tree/HEAD/code/addons/interactions)
| `7.5.1` | `7.5.3` |
|
[@storybook/react](https://github.com/storybookjs/storybook/tree/HEAD/code/renderers/react)
| `7.5.1` | `7.5.3` |
|
[@storybook/react-webpack5](https://github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-webpack5)
| `7.5.1` | `7.5.3` |
|
[storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/cli)
| `7.5.1` | `7.5.3` |

Updates `@storybook/addon-actions` from 7.5.1 to 7.5.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/releases"><code>@​storybook/addon-actions</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v7.5.3</h2>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>v7.5.2</h2>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/blob/v7.5.3/CHANGELOG.md"><code>@​storybook/addon-actions</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/storybookjs/storybook/commit/dc82000b8a5f4698e374b453dcf755a35ee11ec7"><code>dc82000</code></a>
Bump version from &quot;7.5.2&quot; to &quot;7.5.3&quot; [skip ci]</li>
<li><a
href="https://github.com/storybookjs/storybook/commit/0ef03ec3f78ee1989b7210ad90511f9cba0477ac"><code>0ef03ec</code></a>
Bump version from &quot;7.5.1&quot; to &quot;7.5.2&quot; [skip ci]</li>
<li>See full diff in <a
href="https://github.com/storybookjs/storybook/commits/v7.5.3/code/addons/actions">compare
view</a></li>
</ul>
</details>
<br />

Updates `@storybook/addon-essentials` from 7.5.1 to 7.5.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/releases"><code>@​storybook/addon-essentials</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v7.5.3</h2>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>v7.5.2</h2>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/blob/v7.5.3/CHANGELOG.md"><code>@​storybook/addon-essentials</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/storybookjs/storybook/commit/dc82000b8a5f4698e374b453dcf755a35ee11ec7"><code>dc82000</code></a>
Bump version from &quot;7.5.2&quot; to &quot;7.5.3&quot; [skip ci]</li>
<li><a
href="https://github.com/storybookjs/storybook/commit/0ef03ec3f78ee1989b7210ad90511f9cba0477ac"><code>0ef03ec</code></a>
Bump version from &quot;7.5.1&quot; to &quot;7.5.2&quot; [skip ci]</li>
<li>See full diff in <a
href="https://github.com/storybookjs/storybook/commits/v7.5.3/code/addons/essentials">compare
view</a></li>
</ul>
</details>
<br />

Updates `@storybook/addon-interactions` from 7.5.1 to 7.5.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/releases"><code>@​storybook/addon-interactions</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v7.5.3</h2>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>v7.5.2</h2>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/blob/v7.5.3/CHANGELOG.md"><code>@​storybook/addon-interactions</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/storybookjs/storybook/commit/dc82000b8a5f4698e374b453dcf755a35ee11ec7"><code>dc82000</code></a>
Bump version from &quot;7.5.2&quot; to &quot;7.5.3&quot; [skip ci]</li>
<li><a
href="https://github.com/storybookjs/storybook/commit/0ef03ec3f78ee1989b7210ad90511f9cba0477ac"><code>0ef03ec</code></a>
Bump version from &quot;7.5.1&quot; to &quot;7.5.2&quot; [skip ci]</li>
<li>See full diff in <a
href="https://github.com/storybookjs/storybook/commits/v7.5.3/code/addons/interactions">compare
view</a></li>
</ul>
</details>
<br />

Updates `@storybook/react` from 7.5.1 to 7.5.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/releases"><code>@​storybook/react</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v7.5.3</h2>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>v7.5.2</h2>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/blob/v7.5.3/CHANGELOG.md"><code>@​storybook/react</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/storybookjs/storybook/commit/dc82000b8a5f4698e374b453dcf755a35ee11ec7"><code>dc82000</code></a>
Bump version from &quot;7.5.2&quot; to &quot;7.5.3&quot; [skip ci]</li>
<li><a
href="https://github.com/storybookjs/storybook/commit/0ef03ec3f78ee1989b7210ad90511f9cba0477ac"><code>0ef03ec</code></a>
Bump version from &quot;7.5.1&quot; to &quot;7.5.2&quot; [skip ci]</li>
<li>See full diff in <a
href="https://github.com/storybookjs/storybook/commits/v7.5.3/code/renderers/react">compare
view</a></li>
</ul>
</details>
<br />

Updates `@storybook/react-webpack5` from 7.5.1 to 7.5.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/releases"><code>@​storybook/react-webpack5</code>'s
releases</a>.</em></p>
<blockquote>
<h2>v7.5.3</h2>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>v7.5.2</h2>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/blob/v7.5.3/CHANGELOG.md"><code>@​storybook/react-webpack5</code>'s
changelog</a>.</em></p>
<blockquote>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/storybookjs/storybook/commit/dc82000b8a5f4698e374b453dcf755a35ee11ec7"><code>dc82000</code></a>
Bump version from &quot;7.5.2&quot; to &quot;7.5.3&quot; [skip ci]</li>
<li><a
href="https://github.com/storybookjs/storybook/commit/0ef03ec3f78ee1989b7210ad90511f9cba0477ac"><code>0ef03ec</code></a>
Bump version from &quot;7.5.1&quot; to &quot;7.5.2&quot; [skip ci]</li>
<li>See full diff in <a
href="https://github.com/storybookjs/storybook/commits/v7.5.3/code/frameworks/react-webpack5">compare
view</a></li>
</ul>
</details>
<br />

Updates `storybook` from 7.5.1 to 7.5.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/releases">storybook's
releases</a>.</em></p>
<blockquote>
<h2>v7.5.3</h2>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>v7.5.2</h2>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/storybookjs/storybook/blob/v7.5.3/CHANGELOG.md">storybook's
changelog</a>.</em></p>
<blockquote>
<h2>7.5.3</h2>
<ul>
<li>Angular: Support v17 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24717">#24717</a>,
thanks <a
href="https://github.com/valentinpalkovic"><code>@​valentinpalkovic</code></a>!</li>
<li>CLI: Catch when prettier failed to prettify main and preview config
files - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24604">#24604</a>,
thanks <a
href="https://github.com/kasperpeulen"><code>@​kasperpeulen</code></a>!</li>
<li>UI: Fix button contrast-ratio - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24525">#24525</a>,
thanks <a
href="https://github.com/maheshchandra10"><code>@​maheshchandra10</code></a>!</li>
</ul>
<h2>7.5.2</h2>
<ul>
<li>Addon-themes: Fix globals not being set when using absolute path -
<a
href="https://redirect.github.com/storybookjs/storybook/pull/24596">#24596</a>,
thanks <a
href="https://github.com/JReinhold"><code>@​JReinhold</code></a>!</li>
<li>CLI: Allow Yarn v4 in <code>link</code> command - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24551">#24551</a>,
thanks <a
href="https://github.com/yannbf"><code>@​yannbf</code></a>!</li>
<li>Next.js: Support v14.0.0 - <a
href="https://redirect.github.com/storybookjs/storybook/pull/24593">#24593</a>,
thanks <a
href="https://github.com/nikospapcom"><code>@​nikospapcom</code></a>!</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/storybookjs/storybook/commit/dc82000b8a5f4698e374b453dcf755a35ee11ec7"><code>dc82000</code></a>
Bump version from &quot;7.5.2&quot; to &quot;7.5.3&quot; [skip ci]</li>
<li><a
href="https://github.com/storybookjs/storybook/commit/10c5eaa483768876f3cbf586bb48247928ab567c"><code>10c5eaa</code></a>
Merge pull request <a
href="https://github.com/storybookjs/storybook/tree/HEAD/code/lib/cli/issues/24604">#24604</a>
from storybookjs/kasper/try-catch-pretify-main-preview</li>
<li><a
href="https://github.com/storybookjs/storybook/commit/0ef03ec3f78ee1989b7210ad90511f9cba0477ac"><code>0ef03ec</code></a>
Bump version from &quot;7.5.1&quot; to &quot;7.5.2&quot; [skip ci]</li>
<li><a
href="https://github.com/storybookjs/storybook/commit/6d63849cf436b3a2e5ec9497dd8234806a267bb1"><code>6d63849</code></a>
Merge pull request <a
href="https://github.com/storybookjs/storybook/tree/HEAD/code/lib/cli/issues/24551">#24551</a>
from storybookjs/yann/fix-link-command</li>
<li>See full diff in <a
href="https://github.com/storybookjs/storybook/commits/v7.5.3/code/lib/cli">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 will merge this PR once CI passes on it, as requested by
@foxglovebot.

[//]: # (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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [@foxglove/rosmsg](https://github.com/foxglove/rosmsg) from 4.2.2
to 5.0.1.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/foxglove/rosmsg/commit/7d70732ff5b334f8674d27c3cfb3c64669f3be41"><code>7d70732</code></a>
v5.0.1 (<a
href="https://redirect.github.com/foxglove/rosmsg/issues/41">#41</a>)</li>
<li><a
href="https://github.com/foxglove/rosmsg/commit/92713deadab75ba4715ec3d96080ec0e73d70ac1"><code>92713de</code></a>
Fix message parsing not taking into account type namespace (<a
href="https://redirect.github.com/foxglove/rosmsg/issues/40">#40</a>)</li>
<li><a
href="https://github.com/foxglove/rosmsg/commit/5cd65f9092b6b8b6783b5a92678efbeea5297928"><code>5cd65f9</code></a>
- 5.0.0 version: removes ros2idl support (<a
href="https://redirect.github.com/foxglove/rosmsg/issues/38">#38</a>)</li>
<li><a
href="https://github.com/foxglove/rosmsg/commit/b6796e5bdbb86d74b9ff6c9f6d8d4ad87da3fcfc"><code>b6796e5</code></a>
Remove <code>parseRos2idl</code> implementation (<a
href="https://redirect.github.com/foxglove/rosmsg/issues/37">#37</a>)</li>
<li><a
href="https://github.com/foxglove/rosmsg/commit/ea2e308ca666ae9a9539b1e336ccf9730a14f15e"><code>ea2e308</code></a>
Update readme to have valid ros 1 schema (<a
href="https://redirect.github.com/foxglove/rosmsg/issues/36">#36</a>)</li>
<li>See full diff in <a
href="https://github.com/foxglove/rosmsg/compare/v4.2.2...v5.0.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@foxglove/rosmsg&package-manager=npm_and_yarn&previous-version=4.2.2&new-version=5.0.1)](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 will merge this PR once CI passes on it, as requested by
@foxglovebot.

[//]: # (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] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
**User-Facing Changes**
Hide the topic stats as a last resort and tighten spacing around drag
handle.

FG-5411
**User-Facing Changes**
None

**Description**
https://github.com/foxglove/studio/assets/924528/ada41813-e2ab-4bb1-97c2-fa2543d342c5

Bug fix where plot legend remove button was not sticking

Resolves FG-5484
This change updates the tooltip display logic for the state transition
panel. Previously the user had to hover near a data point to see the
state value. For sparse state transitions this meant finding the
specific point. This change updates the logic to show the current state
under the cursor regardless of how far the hover is from the data point.

The change is powered by a new chart.js interaction mode (see comment in
code). This mode looks for the last state value under the cursor and
presents this as the interaction item.
https://github.com/foxglove/studio/pull/7086 introduced a new
interaction mode for identifying the last datum across datasets. It uses
a sparse array to track the items for datasets by index. This sparse
array can sometimes have holes which cause downstream logic with handing
the returned items to fail. The returned array should not have holes so
this change filters our missing values.
**User-Facing Changes**
Fix rare case of URDF url field not being shown

**Description**
Fixes that the custom layer URDF url field was not shown when the source
type (default is `url`) was undefined.
**User-Facing Changes**
None

**Description**

The IterablePlayer uses the `connectionId` as part of the key in the
problem manager. The source was not sending any `connectionId`, so
errors on multiple channels would override each other and only one was
visible at a time. With this change, each channel's latest error is
visible.


https://github.com/foxglove/studio/blob/3f87e3009acfb94020ad8270492225179ca6a5d3/packages/studio-base/src/players/IterablePlayer/IterablePlayer.ts#L652

Fixes FG-5631
**User-Facing Changes**
Fixed drag & drop of topics containing spaces.

**Description**
This already worked properly for dragging individual fields from topics
with spaces, but I forgot to call `quoteTopicNameIfNeeded` in a couple
of places that applied only to top-level topic items.
Reverts foxglove/studio#7087

This broke mouse interactions with the Plot panel.
**User-Facing Changes**
None

**Description**
The Log panel would crash if it received `timestamp: null`. Improved the
normalization functions to catch this case (and some others).

I did not try to go overboard here with normalization because we could
spend a ton of effort doing this in all our panels... some day it would
be nice to have more centralized schema validation (see FG-4917)

Fixes FG-5578
…ayerState (#7092)

**User-Facing Changes**

None

**Description**

Adds PerformanceContext and logs data from UserScriptPlayer to the
context.
… 3 shortcut (#7107)

**User-Facing Changes**
None

**Description**
3 key no longer iterferes with Tab selection

Resolves FG-5489
…7102)

**User-Facing Changes**
Remove ROS assumptions when using services with foxglove websocket

**Description**
Updates the websocket player to comply with the latest `ws-protocol`
spec changes made in foxglove/ws-protocol#563.
This allows to remove some ROS specific assumptions which makes it
easier to advertise services from non-ROS systems.

Fixes #6970
Resolves FG-5280
Allows app context to provide the extension settings
**User-Facing Changes**
<!-- will be used as a changelog entry -->
-n/a

**Description**

renamed crcPrimitivesMatch to dataPrimitives match
commented reason for two calls to this.updateOutlineVisibility

<!-- link relevant GitHub issues -->
<!-- add `docs` label if this PR requires documentation updates -->
<!-- add relevant metric tracking for experimental / new features -->
**User-Facing Changes**
Fix relative mesh URLs of URDF loaded from file not working

**Description**
Fixes that meshes with relative paths were not working for URDFs that
were loaded from file as the
[baseURL](https://github.com/foxglove/studio/blob/e3c981bf595731b7e20c41d6873daae4aff15857/packages/studio-base/src/panels/ThreeDeeRender/renderables/Urdfs.ts#L941)
was not defined.
achim-k and others added 27 commits December 6, 2023 08:16
**User-Facing Changes**
Improve performance of reading MCAP files

**Description**
Includes foxglove/mcap#1031
**User-Facing Changes**
None

**Description**
Improvement for internal integration testing.
**User-Facing Changes**
<!-- will be used as a changelog entry -->
- Point clouds will default to color by `z` when intensity and rgb
fields aren't present

**Description**

Updated to color by `z` as a fallback for all colorMode applicable
renderables. Also in this I consolidated the autoselecting of color
settings, and updated all renderables to use the same method. I also
consolidated the setting of fields for pointlcouds since `isSupported`
would run on both foxglove and ros pointclouds, and we should be using
it as a flag to determine whether to update the autoselection of color
settings aside from the colorField being `undefined` because the
colorField can be undefined for `rgba-fields`.

We're also defaulting to `x` in `colorMode.ts`
[here](https://github.com/foxglove/studio/blob/main/packages/studio-base/src/panels/ThreeDeeRender/renderables/colorMode.ts#L199),
which we use for FoxgloveGrid, and Images. ~~Should I update that to use
`z` as well?~~ updated.


<!-- link relevant GitHub issues -->
Fixes: FG-5831
<!-- add `docs` label if this PR requires documentation updates -->
<!-- add relevant metric tracking for experimental / new features -->
**User-Facing Changes**
None

**Description**
Rename "Settings" to "Visualization settings"

Relates to FG-6039
**User-Facing Changes**
Bug fix

**Description**
[Bug reported in
storybook](https://www.chromatic.com/test?appId=603ec8bf7908b500231841e2&id=6564e09e2f132656d829b88a)

<img width="451" alt="Screen Shot 2023-12-06 at 1 00 37 pm"
src="https://github.com/foxglove/studio/assets/924528/c823b340-9126-4ffe-ad26-fcaa1b9053d7">

Resolves FG-5917
**User-Facing Changes**
None

**Description**
Resolves FG-5926

<!-- link relevant GitHub issues -->
<!-- add `docs` label if this PR requires documentation updates -->
<!-- add relevant metric tracking for experimental / new features -->
**User-Facing Changes**
None

**Description**
Fixes some React/mui warnings:
- Missing `key` on array items
- Adding `<Tooltip>` around disabled button
**User-Facing Changes**
Performance improvements in plot panel downsampling

**Description**
It turns out that the LTTB algorithm proposed in #6997 skipped important
details, so we decided to do the following:
1. Enforce an upper bound to the number of points in the existing
downsampling algorithm (#7167)
2. Remove the LTTB-specific optimizations from the incremental
downsampling PR and make a separate one with _just_ incremental
downsampling using the old algorithm (this PR)

By cutting out LTTB we're able to avoid a heap of complexity that it
required in order to maintain visual similarity.

As in the original PR, the plot worker is now _extremely_ idle while
ingesting new data. Now the bottleneck is just loading block data.
<img width="702" alt="Снимок экрана 2023-11-27 в 10 29 29 AM"
src="https://github.com/foxglove/studio/assets/4588553/bf6c56dd-2858-4ede-8b70-c75ee8ae5796">
**User-Facing Changes**
attempt to resolve `package://` asset URLs relative to URDF url

**Description**
Often, a URDF contains `package://` references to e.g. mesh files or
xacro includes (converted to package:// URLs by
[xacro-parser](https://www.npmjs.com/package/xacro-parser)). package://
resources can be loaded in 2 different ways:
- Through the player's fetchAsset method (if defined) - e.g. used for
foxglove_websocket
- Through the Desktop app (if ROS_PACKAGE_PATH is defined)

This PR adds a third method in case the first two are not applicable: 

```
As last resort to load the package://<pkgName>/<pkgPath> URL, we resolve the package URL to
be relative of the base URL (which contains <pkgName> and is not a package:// URL itself).
Example:
   base URL: https://example.com/<pkgName>/urdf/robot.urdf
   resolved: https://example.com/<pkgName>/<pkgPath>
```

This allows loading entire URDFs from Github URLs, for instance:

-
https://raw.githubusercontent.com/LeoRover/leo_common-ros2/humble/leo_description/urdf/leo.urdf.xacro
-
https://raw.githubusercontent.com/LeoRover/leo_common-ros2/de35d0ee7/leo_description/urdf/leo.urdf.xacro
**User-Facing Changes**
<!-- will be used as a changelog entry -->
- Image panel will now display over canvas that it is waiting for
messages

**Description**
Allows SceneExtensions to display heads-up messages to the DOM over the
canvas.

Empty state (3 cases, all have stories): 
<img width="1156" alt="image"
src="https://github.com/foxglove/studio/assets/10187776/c46f5ddc-59c6-46cf-baf2-37f1d7df43c4">

Notice state: for video keyframes (private), sync annotations, waiting
for image messages when calibration is present
<img width="1148" alt="image"
src="https://github.com/foxglove/studio/assets/10187776/c968571e-bb4f-41d8-b93c-bb27113551de">



<!-- link relevant GitHub issues -->
FG-5459
<!-- add `docs` label if this PR requires documentation updates -->
<!-- add relevant metric tracking for experimental / new features -->

---------

Co-authored-by: Andrew Carr <[email protected]>
Co-authored-by: Jacob Bandes-Storch <[email protected]>
Due to the lengthy message and the absence of break points (such as
spaces and hyphens), a horizontal scrollbar appears. The functionality
of automatic scrolling to the bottom is not working.
…228)

**User-Facing Changes**
<!-- will be used as a changelog entry -->
- Fix: gauge and indicator panels no longer preload topics unnecessarily

**Description**


<!-- link relevant GitHub issues -->
<!-- add `docs` label if this PR requires documentation updates -->
<!-- add relevant metric tracking for experimental / new features -->
… transform (#7231)

User-facing changes:

 - Fix: error when adding transform will not cause 3D panel to crash

Description:

Wrapped `addTransform` methods along with `toNanoSec` in try/catch and
show error on transform section.

<img width="1151" alt="image"
src="https://github.com/foxglove/studio/assets/10187776/1fdfb6ec-9c30-455a-881e-e67edac32f99">


Fixes: FG-6090
**User-Facing Changes**
Fix an issue where plotting a signal with the header stamp would result
in misleading output.
Revert a "fix" that was intended to handle missing block data more
safely.
Fix an issue where downsampled plot data points could appear out of
order.

**Description**

This PR fixes ~three~ four separate issues:
1. #7193 caused a regression for topic aliases. I'm just going to revert
it for now.
2. We were incorrectly showing the dots for signals that use header
stamps. I centralized the logic that downsamples entire signals at once
and ensured they correctly detect when we actually can just render the
raw points.
3. (Unrelated to the customer issues) Our downsampler occasionally
reversed the order of points inside of a single interval. We now sort
the points inside of an interval.
4. It turns out that `showLine` can also appear on `TypedDataset`s and
not just on the path, which is news to me. This caused an issue where we
were hiding points (with `pointRadius=0`) that were not connected by a
line.

<!-- link relevant GitHub issues -->
<!-- add `docs` label if this PR requires documentation updates -->
<!-- add relevant metric tracking for experimental / new features -->
**User-Facing Changes**
Introduce a new downsampling algorithm for the State Transition panel to
greatly improve its performance.

**Description**
This PR introduces a downsampling algorithm specifically for state
transition data called `downsampleStates`. It is conceptually similar to
our existing `downsampleTimeseries` algorithm, which divides the
viewport into a set of equally-sized intervals.

The nature of state transitions lets us do something a bit more
sophisticated: when an interval contains more points than are in our
"budget" (put differently: it contains more than one distinct state
transition), we render it in gray. We can work on the UX of this, but it
does work, includes a suite of tests, and resolves the high-level issue
with the panel's rendering performance.

Here is an example from nuScenes. This scenario intentionally contains a
lot of state transitions, more than might actually occur in everyday
use; it's just a good way of demonstrating how this might work.


https://github.com/foxglove/studio/assets/4588553/a9b3e86b-b673-4529-bd8d-c126a8eb34c4

When the user mouses over a segment with multiple states, we render them
in the tooltip:
<img width="917" alt="image"
src="https://github.com/foxglove/studio/assets/4588553/bca84d9f-7b7a-4ddf-a99e-2fd7ac4cc36f">
**User-Facing Changes**
None

**Description**
Cleanup inconsistent empty states on panels
**User-Facing Changes**
<!-- will be used as a changelog entry -->
- N/A

**Description**
- Use "data source" and `dataSource` vs. "datasource" and `datasource`
consistently across the codebase and UI
- Also cleaned up Teleop panel's empty state messaging to be consistent
with others (no "please")
**User-Facing Changes**
Improve memory estimation to make OOM crashes less likely

**Description**
For estimating the size of a deserialized message, we currently use a
schema-based approach where the message schema definition is analyzed to
get an idea on what fields are to be expected in the message and how big
the message might be. This however falls short on dynamic messages with
arrays or strings as we cannot know the array or string size upfront.
For these messages, we conservatively assumed an empty array size and a
fixed string size, which in some cases leads to a large underestimation
of the actual message size.

This PR introduces a new estimation method that estimates the memory
size of a deserialized message by iterating over its properties. Unlike
the schema-based estimation, this new method iterates on the properties
of a deserialized message and can thus more accurately estimate the size
of dynamic messages. The size estimates are cached for each topic as it
would be quite expensive to do estimate the size for every message.
Caching also has its disadvantages however, namely that a topic's first
message size estimate will be used for subsequent messages on that topic
which might not reflect reality (e.g. consider two publishers publishing
pointclouds of various sizes to the same topic).

Experimental results have shown that the proposed new size estimation
method produces more accurate size estimates than the current
schema-based estimation method, especially when the message schema
contains dynamic types (arrays or strings).
@servetoz servetoz merged commit c430c9e into main Dec 27, 2023
1 check passed
@servetoz servetoz deleted the foxglove-update branch December 27, 2023 15:08
@servetoz servetoz restored the foxglove-update branch December 27, 2023 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.