Skip to content

chore(deps): update devdependencies (non-major) - #4

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/devdependencies-(non-major)
Open

renovate[bot] wants to merge 1 commit into
mainfrom
renovate/devdependencies-(non-major)

Conversation

@renovate

@renovate renovate Bot commented Oct 10, 2026

Copy link
Copy Markdown

ℹ️ Note

This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@changesets/changelog-github (source) ^0.5.2 → ^0.7.0 age confidence
@testing-library/react 16.3.2 → 16.3.3 age confidence
@types/node (source) 22.20.1 → 22.20.5 age confidence
@types/react (source) 19.2.17 → 19.3.0 age confidence
@types/react-dom (source) 19.2.3 → 19.3.0 age confidence
eslint-plugin-react-refresh ^0.4.14 → ^0.5.0 age confidence
lucide-react (source) ^0.555.0 → ^0.577.0 age confidence
prettier (source) 3.9.6 → 3.9.10 age confidence
prettier-plugin-tailwindcss ^0.7.1 → ^0.8.0 age confidence
react (source) 19.2.8 → 19.3.0 age confidence
react-dom (source) 19.2.8 → 19.3.0 age confidence
typescript-eslint (source) 8.65.0 → 8.71.1 age confidence

Release Notes

changesets/changesets (@​changesets/changelog-github)

v0.7.0

Compare Source

Minor Changes

v0.6.0

Compare Source

Minor Changes
Patch Changes
testing-library/react-testing-library (@​testing-library/react)

v16.3.3

Compare Source

Bug Fixes
ArnaudBarre/eslint-plugin-react-refresh (eslint-plugin-react-refresh)

v0.5.7

Compare Source

Add allowCompoundComponents option (#​117)

Default: false (true in vite config)

Don't warn when components are exported as an object gathering them. Every member of the object must be a component, and a member holding an anonymous function requires a component name as key.

This should be enabled if the fast refresh implementation correctly handles this case. Vite supports it since @vitejs/plugin-react 4.7.0, @vitejs/plugin-react-swc 3.11.0.

{
  "react-refresh/only-export-components": [
    "error",
    { "allowCompoundComponents": true }
  ]
}

Enabling this option allows code such as the following:

const Root = () => <></>;
const Label = () => <></>;
export const Tag = { Root, Label };

v0.5.6

Compare Source

  • Support re-exporting namespace components (fixes #​116)

v0.5.5

Compare Source

  • Fix SCREAMING_SNAKE_CASE constant exported via export { Name } incorrectly treated as React component #​114 (fixes #​113)
  • Add contentType and size to allowExportNames in Next config #​115

v0.5.4

Compare Source

  • Add instant to allowExportNames in Next config #​112

v0.5.3

Compare Source

  • Fix check for non component class exported via export { } #​110 (fixes #​109)

v0.5.2

Compare Source

  • Support nested function calls for extraHOCs (actually fixes #​104)

v0.5.1

Compare Source

  • Mark ESLint v10 as supported
  • Support false positives with TypeScript function overloading (fixes #​105)
  • Support nested function calls for extraHOCs (fixes #​104)

v0.5.0

Compare Source

Breaking changes
  • The package now ships as ESM and requires ESLint 9 + node 20. Because legacy config doesn't support ESM, this requires to use flat config
  • A new reactRefresh export is available and prefered over the default export. It's an object with two properties:
    • plugin: The plugin object with the rules
    • configs: An object containing configuration presets, each exposed as a function. These functions accept your custom options, merge them with sensible defaults for that config, and return the final config object.
  • customHOCs option was renamed to extraHOCs
  • Validation of HOCs calls is now more strict, you may need to add some HOCs to the extraHOCs option

Config example:

import { defineConfig } from "eslint/config";
import { reactRefresh } from "eslint-plugin-react-refresh";

export default defineConfig(
  /* Main config */
  reactRefresh.configs.vite({ extraHOCs: ["someLibHOC"] }),
);

Config example without config:

import { defineConfig } from "eslint/config";
import { reactRefresh } from "eslint-plugin-react-refresh";

export default defineConfig({
  files: ["**/*.ts", "**/*.tsx"],
  plugins: {
    // other plugins
    "react-refresh": reactRefresh.plugin,
  },
  rules: {
    // other rules
    "react-refresh/only-export-components": [
      "warn",
      { extraHOCs: ["someLibHOC"] },
    ],
  },
});
Why

This version follows a revamp of the internal logic to better make the difference between random call expressions like export const Enum = Object.keys(Record) and actual React HOC calls like export const MemoComponent = memo(Component). (fixes #​93)

The rule now handles ternaries and patterns like export default customHOC(props)(Component) which makes it able to correctly support files like this one given this config:

{
  "react-refresh/only-export-components": [
    "warn",
    { "extraHOCs": ["createRootRouteWithContext"] }
  ]
}

[!NOTE]
Actually createRoute functions from TanStack Router are not React HOCs, they return route objects that fake to be a memoized component but are not. When only doing createRootRoute({ component: Foo }), HMR will work fine, but as soon as you add a prop to the options that is not a React component, HMR will not work. I would recommend to avoid adding any TanStack function to extraHOCs it you want to preserve good HMR in the long term. Bluesky thread.

Because I'm not 100% sure this new logic doesn't introduce any false positive, this is done in a major-like version. This also give me the occasion to remove the hardcoded connect from the rule. If you are using connect from react-redux, you should now add it to extraHOCs like this:

{
  "react-refresh/only-export-components": ["warn", { "extraHOCs": ["connect"] }]
}
lucide-icons/lucide (lucide-react)

v0.577.0: Version 0.577.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.576.0...0.577.0

v0.576.0: Version 0.576.0

Compare Source

What's Changed

Full Changelog: lucide-icons/lucide@0.575.0...0.576.0

v0.575.0: Version 0.575.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.573.0...0.575.0

v0.574.0: Version 0.574.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.572.0...0.574.0

v0.573.0: Version 0.573.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.572.0...0.573.0

v0.572.0: Version 0.572.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.571.0...0.572.0

v0.571.0: Version 0.571.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.570.0...0.571.0

v0.570.0: Version 0.570.0

Compare Source

What's Changed

Full Changelog: lucide-icons/lucide@0.569.0...0.570.0

v0.569.0: Version 0.569.0

Compare Source

What's Changed

Full Changelog: lucide-icons/lucide@0.568.0...0.569.0

v0.568.0: Version 0.568.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.567.0...0.568.0

v0.567.0: Version 0.567.0

Compare Source

What's Changed

Full Changelog: lucide-icons/lucide@0.566.0...0.567.0

v0.566.0: Version 0.566.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.565.0...0.566.0

v0.565.0: Version 0.565.0

Compare Source

What's Changed

Full Changelog: lucide-icons/lucide@0.564.0...0.565.0

v0.564.0: Version 0.564.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.563.1...0.564.0

v0.563.0: Version 0.563.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.562.0...0.563.0

v0.562.0

Compare Source

v0.561.0: Version 0.561.0

Compare Source

What's Changed

Full Changelog: lucide-icons/lucide@0.560.0...0.561.0

v0.560.0: Version 0.560.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.559.0...0.560.0

v0.559.0: Version 0.559.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.558.0...0.559.0

v0.558.0: Version 0.558.0

Compare Source

What's Changed

Full Changelog: lucide-icons/lucide@0.557.0...0.558.0

v0.557.0: Version 0.557.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.556.0...0.557.0

v0.556.0: Version 0.556.0

Compare Source

What's Changed

New Contributors

Full Changelog: lucide-icons/lucide@0.555.0...0.556.0

prettier/prettier (prettier)

v3.9.10

Compare Source

diff

Markdown: Update micromark-extension-gfm-table to fix the table parse issue on performance (#​20266 by @​fisker)

See micromark/micromark-extension-gfm-table@4f43ead for details.

v3.9.9

Compare Source

diff

Markdown: Fix text with $ been incorrectly parsed as math syntax (#​20140 by @​fisker)
<!-- Input -->
**Uses $FOO** from `a.sh` and `b.sh`, plus `$BAR` from `c.sh`, before anything else runs here.

<!-- Prettier 3.9.8 -->
**Uses $FOO** from `a.sh` and `b.sh`, plus `$BAR`from`c.sh`, before anything else runs here.

<!-- Prettier 3.9.9 -->
**Uses $FOO** from `a.sh` and `b.sh`, plus `$BAR` from `c.sh`, before anything else runs here.

v3.9.8

Compare Source

diff

Markdown: Don't let Liquid objects interrupt paragraphs (#​20087 by @​seiyab)
<!-- Input -->
If `module` is not a [`WebAssembly.Module`](/en-US/docs/WebAssembly/Reference/JavaScript_interface/Module) object instance, a
{{jsxref("TypeError")}} is thrown.

<!-- Prettier 3.9.7 -->
If `module` is not a [`WebAssembly.Module`](/en-US/docs/WebAssembly/Reference/JavaScript_interface/Module) object instance, a

{{jsxref("TypeError")}} is thrown.

<!-- Prettier 3.9.8 -->
If `module` is not a [`WebAssembly.Module`](/en-US/docs/WebAssembly/Reference/JavaScript_interface/Module) object instance, a
{{jsxref("TypeError")}} is thrown.

v3.9.7

Compare Source

diff

Markdown: Prevent indentation drift in list-item code blocks (#​19647, #​19990 by @​Austin1serb, @​giaBaoJS)
<!-- Input -->
- [x] short first line.

      second paragraph at six spaces that wraps
      onto another line here.

<!-- Prettier 3.9.6 -->
- [x] short first line.

      second paragraph at six spaces that wraps
          onto another line here.

<!-- Prettier 3.9.7 -->
- [x] short first line.

      second paragraph at six spaces that wraps
      onto another line here.
JavaScript: Fix embedded template literal idempotency (#​19725 by @​fisker)
// Input
const foo = html`
            <div>${getText({
            value,
            })}</div>
`;

// Prettier 3.9.6 (first format)
const foo = html`
  <div>
    ${getText({
              value,
            })}
  </div>
`;

// Prettier 3.9.6 (second format)
const foo = html`
  <div>
    ${getText({
      value,
    })}
  </div>
`;

// Prettier 3.9.7
const foo = html`
  <div>
    ${getText({
      value,
    })}
  </div>
`;
Markdown: Preserve Liquid blocks after Markdown tables (#​19730 by @​wanxiankai, @​seiyab)
<!-- Input -->
| Argument | Type |
| -------- | ---- |
{% set default_params = {
    "model": ["str"],
} %}

<!-- Prettier 3.9.6 -->
| Argument                  | Type |
| ------------------------- | ---- |
| {% set default_params = { |

    "model": ["str"],

} %}

<!-- Prettier 3.9.7 -->
| Argument | Type |
| -------- | ---- |
{% set default_params = {
    "model": ["str"],
} %}
Markdown: Preserve single tildes in Markdown (#​19739 by @​lazerg)

Since 3.9.0, single-tilde spans like H~2~O were rewritten to double tildes, turning subscript syntax into strike-through. Only double tildes are treated that way now, matching GitHub.

<!-- Input -->
H~2~O

<!-- Prettier 3.9.6 -->
H~~2~~O

<!-- Prettier 3.9.7 -->
H~2~O
Markdown: Fix Markdown blockquote containing > characters (#​19802 by @​seiyab)
<!-- Input -->
> **test**\>

<!-- Prettier 3.9.6 -->
> **test**>\>

<!-- Prettier 3.9.7 -->
> **test**\>
Markdown: Strip blockquote markers from a setext heading's continuation lines (#​19878 by @​Kjubikstronk)

A setext heading spanning multiple lines inside a blockquote kept the > marker of its continuation lines as literal text.

<!-- Input -->
> Multi
> Line
> ===

<!-- Prettier 3.9.6 -->
> Multi > Line
> ===

<!-- Prettier 3.9.7 -->
> Multi
> Line
> ===
Markdown: Fix HTML block indentation drift in markdown list items (#​19987 by @​lazerg)
<!-- Input -->
1. Enable images:

    <p align="center">
      <img alt="example">
    </p>

<!-- Prettier 3.9.6 (--tab-width=4) -->
1. Enable images:

     <p align="center">
       <img alt="example">
     </p>

<!-- Prettier 3.9.7 (--tab-width=4) -->
1. Enable images:

    <p align="center">
      <img alt="example">
    </p>
Angular: Support @boundary error boundaries (#​20014 by @​Yahiro025)
<!-- Input -->
@boundary {
<complex-chart [data]="data"/>
}
@error (let err) {
<p>{{err.message}}</p>
}

<!-- Prettier 3.9.6 -->
SyntaxError: Unexpected character "EOF" (Do you have an unescaped "{" in your template? Use "{{ '{' }}") to escape it.) (6:1)

<!-- Prettier 3.9.7 -->
@boundary {
  <complex-chart [data]="data" />
} @error (let err) {
  <p>{{ err.message }}</p>
}
tailwindlabs/prettier-plugin-tailwindcss (prettier-plugin-tailwindcss)

v0.8.1

Compare Source

Fixed
  • Don't remove escape sequences when sorting classes in JavaScript string literals, which could produce invalid code in Vue attribute expressions (#​461)
  • Restore class sorting in Svelte markup and dynamic class={...} expressions when using prettier-plugin-svelte v4 (#​462)

v0.8.0

Compare Source

Changed
  • Require at least Prettier 3.7.x (#​420)
Added
  • Export public sorting APIs to /sorter (#​438)
Fixed
  • Remov

❗ Important

✂ PR body was truncated to here.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Never, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant