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

fix(types): fix StateCreator subtyping #1373

Merged
merged 3 commits into from
Oct 22, 2022

Conversation

devanshj
Copy link
Contributor

@devanshj devanshj commented Oct 19, 2022

I originally had the phantom type because I assumed it would be required. I'm still a little skeptic about this change but just want to expermiment and see the CI results hence opening the PR.

This PR's branch is based on #1372's branch. Note that this does not require the change in #1372, but has it as base because if we're going with #1371 this PR would probably be much less useful.

@codesandbox-ci
Copy link

codesandbox-ci bot commented Oct 19, 2022

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit d701253:

Sandbox Source
React Configuration
React Typescript Configuration
React Browserify Configuration
React Snowpack Configuration
React Parcel Configuration
Next.js Configuration

},
})

create<State>()(persist(foo()))
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So fixing the StateCreator subtyping no longer errors on this line as it does today... https://tsplay.dev/mq3pjw

@devanshj devanshj marked this pull request as draft October 19, 2022 21:13
@devanshj
Copy link
Contributor Author

Now that we're going with #1371 this is not much useful, we can revisit later if we want, closing for now.

@devanshj devanshj closed this Oct 20, 2022
@dai-shi
Copy link
Member

dai-shi commented Oct 20, 2022

if we're going with #1371 this PR would probably be much less useful.

I get it, but removing PopArgument is something looking nice.

@devanshj
Copy link
Contributor Author

I was initially a little skeptic because I misunderstood some nuance, now I'm less skeptic about this change, so we can reopen this if you want. (Ofc not the UnknownBecauseOfGenericMutators part but just removing the phantom parameter).

Not only it removes the PopArgument stuff but also improves the StateCreator in terms of subtyping so it's actually a good change.

Reopening, let me know what you think.

@devanshj devanshj reopened this Oct 22, 2022
@devanshj devanshj marked this pull request as ready for review October 22, 2022 15:39
Copy link
Member

@dai-shi dai-shi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@dai-shi dai-shi added this to the v4.1.3 milestone Oct 22, 2022
@dai-shi dai-shi merged commit ca05978 into pmndrs:main Oct 22, 2022
kodiakhq bot referenced this pull request in mheob/ef-calc Nov 3, 2022
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | [`^18.8.3` -> `^18.11.8`](https://renovatebot.com/diffs/npm/@types%2fnode/18.8.3/18.11.8) | [![age](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.11.8/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.11.8/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.11.8/compatibility-slim/18.8.3)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@types%2fnode/18.11.8/confidence-slim/18.8.3)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | [`^18.0.21` -> `^18.0.24`](https://renovatebot.com/diffs/npm/@types%2freact/18.0.21/18.0.24) | [![age](https://badges.renovateapi.com/packages/npm/@types%2freact/18.0.24/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@types%2freact/18.0.24/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@types%2freact/18.0.24/compatibility-slim/18.0.21)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@types%2freact/18.0.24/confidence-slim/18.0.21)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped)) | [`^18.0.6` -> `^18.0.8`](https://renovatebot.com/diffs/npm/@types%2freact-dom/18.0.6/18.0.8) | [![age](https://badges.renovateapi.com/packages/npm/@types%2freact-dom/18.0.8/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@types%2freact-dom/18.0.8/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@types%2freact-dom/18.0.8/compatibility-slim/18.0.6)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@types%2freact-dom/18.0.8/confidence-slim/18.0.6)](https://docs.renovatebot.com/merge-confidence/) |
| [@vitejs/plugin-react](https://github.com/vitejs/vite/tree/main/packages/plugin-react#readme) ([source](https://github.com/vitejs/vite)) | [`^2.1.0` -> `^2.2.0`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-react/2.1.0/2.2.0) | [![age](https://badges.renovateapi.com/packages/npm/@vitejs%2fplugin-react/2.2.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/@vitejs%2fplugin-react/2.2.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/@vitejs%2fplugin-react/2.2.0/compatibility-slim/2.1.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/@vitejs%2fplugin-react/2.2.0/confidence-slim/2.1.0)](https://docs.renovatebot.com/merge-confidence/) |
| [eslint](https://eslint.org) ([source](https://github.com/eslint/eslint)) | [`^8.25.0` -> `^8.26.0`](https://renovatebot.com/diffs/npm/eslint/8.25.0/8.26.0) | [![age](https://badges.renovateapi.com/packages/npm/eslint/8.26.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/eslint/8.26.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/eslint/8.26.0/compatibility-slim/8.25.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/eslint/8.26.0/confidence-slim/8.25.0)](https://docs.renovatebot.com/merge-confidence/) |
| [vite](https://github.com/vitejs/vite/tree/main/#readme) ([source](https://github.com/vitejs/vite)) | [`^3.1.6` -> `^3.2.1`](https://renovatebot.com/diffs/npm/vite/3.1.6/3.2.1) | [![age](https://badges.renovateapi.com/packages/npm/vite/3.2.1/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/vite/3.2.1/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/vite/3.2.1/compatibility-slim/3.1.6)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/vite/3.2.1/confidence-slim/3.1.6)](https://docs.renovatebot.com/merge-confidence/) |
| [zustand](https://github.com/pmndrs/zustand) | [`^4.1.2` -> `^4.1.3`](https://renovatebot.com/diffs/npm/zustand/4.1.2/4.1.3) | [![age](https://badges.renovateapi.com/packages/npm/zustand/4.1.3/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/zustand/4.1.3/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/zustand/4.1.3/compatibility-slim/4.1.2)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/zustand/4.1.3/confidence-slim/4.1.2)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>vitejs/vite (@&#8203;vitejs/plugin-react)</summary>

### [`v2.2.0`](https://github.com/vitejs/vite/blob/HEAD/packages/plugin-react/CHANGELOG.md#&#8203;220-2022-10-26)

[Compare Source](https://github.com/vitejs/vite/compare/v2.1.0...v2.2.0)

-   fix(deps): update all non-major dependencies ([#&#8203;10610](https://github.com/vitejs/vite/issues/10610)) ([bb95467](https://github.com/vitejs/vite/commit/bb95467)), closes [#&#8203;10610](https://github.com/vitejs/vite/issues/10610)
-   fix(plugin-react): update `package.json` ([#&#8203;10479](https://github.com/vitejs/vite/issues/10479)) ([7f45eb5](https://github.com/vitejs/vite/commit/7f45eb5)), closes [#&#8203;10479](https://github.com/vitejs/vite/issues/10479)
-   chore(deps): update all non-major dependencies ([#&#8203;10393](https://github.com/vitejs/vite/issues/10393)) ([f519423](https://github.com/vitejs/vite/commit/f519423)), closes [#&#8203;10393](https://github.com/vitejs/vite/issues/10393)

</details>

<details>
<summary>eslint/eslint</summary>

### [`v8.26.0`](https://github.com/eslint/eslint/releases/tag/v8.26.0)

[Compare Source](https://github.com/eslint/eslint/compare/v8.25.0...v8.26.0)

#### Features

-   [`4715787`](https://github.com/eslint/eslint/commit/4715787724a71494ba0bb0c5fe4639570bb6985b) feat: check `Object.create()` in getter-return ([#&#8203;16420](https://github.com/eslint/eslint/issues/16420)) (Yuki Hirasawa)
-   [`28d1902`](https://github.com/eslint/eslint/commit/28d190264017dbaa29f2ab218f73b623143cd1af) feat: `no-implicit-globals` supports `exported` block comment ([#&#8203;16343](https://github.com/eslint/eslint/issues/16343)) (Sosuke Suzuki)
-   [`e940be7`](https://github.com/eslint/eslint/commit/e940be7a83d0caea15b64c1e1c2785a6540e2641) feat: Use ESLINT_USE_FLAT_CONFIG environment variable for flat config ([#&#8203;16356](https://github.com/eslint/eslint/issues/16356)) (Tomer Aberbach)
-   [`dd0c58f`](https://github.com/eslint/eslint/commit/dd0c58f0f34d24331ae55139af39cf2747125f5e) feat: Swap out Globby for custom globbing solution. ([#&#8203;16369](https://github.com/eslint/eslint/issues/16369)) (Nicholas C. Zakas)

#### Bug Fixes

-   [`df77409`](https://github.com/eslint/eslint/commit/df7740967ffab2915974c7b310ac76ea2915ac2d) fix: use `baseConfig` constructor option in FlatESLint ([#&#8203;16432](https://github.com/eslint/eslint/issues/16432)) (Milos Djermanovic)
-   [`33668ee`](https://github.com/eslint/eslint/commit/33668ee9d22e1988ba03e07fb547738bdb21dc0e) fix: Ensure that glob patterns are matched correctly. ([#&#8203;16449](https://github.com/eslint/eslint/issues/16449)) (Nicholas C. Zakas)
-   [`740b208`](https://github.com/eslint/eslint/commit/740b20826fadc5322ea5547c1ba41793944e571d) fix: ignore messages without a `ruleId` in `getRulesMetaForResults` ([#&#8203;16409](https://github.com/eslint/eslint/issues/16409)) (Francesco Trotta)
-   [`8f9759e`](https://github.com/eslint/eslint/commit/8f9759e2a94586357d85fac902e038fabdba79a7) fix: `--ignore-pattern` in flat config mode should be relative to `cwd` ([#&#8203;16425](https://github.com/eslint/eslint/issues/16425)) (Milos Djermanovic)
-   [`325ad37`](https://github.com/eslint/eslint/commit/325ad375a52d1c7b8b8fd23943350c91781366a2) fix: make `getRulesMetaForResults` return a plain object in trivial case ([#&#8203;16438](https://github.com/eslint/eslint/issues/16438)) (Francesco Trotta)
-   [`a2810bc`](https://github.com/eslint/eslint/commit/a2810bc485d9f1123a86b60702fcaa51e19d71a3) fix: Ensure that directories can be unignored. ([#&#8203;16436](https://github.com/eslint/eslint/issues/16436)) (Nicholas C. Zakas)
-   [`35916ad`](https://github.com/eslint/eslint/commit/35916ad9bfc07dab63361721df1bd7f21e43e094) fix: Ensure unignore and reignore work correctly in flat config. ([#&#8203;16422](https://github.com/eslint/eslint/issues/16422)) (Nicholas C. Zakas)

#### Documentation

-   [`651649b`](https://github.com/eslint/eslint/commit/651649b12797594a86c0d659d6a0d1cdbda6f57b) docs: Core concepts page ([#&#8203;16399](https://github.com/eslint/eslint/issues/16399)) (Ben Perlmutter)
-   [`631cf72`](https://github.com/eslint/eslint/commit/631cf72e82f316a2cc08770e5c81b858637ab04a) docs: note --ignore-path not supported with flat config ([#&#8203;16434](https://github.com/eslint/eslint/issues/16434)) (Andy Edwards)
-   [`1692840`](https://github.com/eslint/eslint/commit/1692840a2f763737a4891419dc304db4ebedab5d) docs: fix syntax in examples for new config files ([#&#8203;16427](https://github.com/eslint/eslint/issues/16427)) (Milos Djermanovic)
-   [`d336cfc`](https://github.com/eslint/eslint/commit/d336cfc9145a72bf8730250ee1e331a135e6ee2c) docs: Document extending plugin with new config ([#&#8203;16394](https://github.com/eslint/eslint/issues/16394)) (Ben Perlmutter)

#### Chores

-   [`e917a9a`](https://github.com/eslint/eslint/commit/e917a9a2e555d398c64b985fc933d44a42c958f0) ci: add node v19 ([#&#8203;16443](https://github.com/eslint/eslint/issues/16443)) (Koichi ITO)
-   [`4b70b91`](https://github.com/eslint/eslint/commit/4b70b91a6e28669ab8e2a4ce2a6d9ed40be20fa7) chore: Add VS Code issues link ([#&#8203;16423](https://github.com/eslint/eslint/issues/16423)) (Nicholas C. Zakas)
-   [`232d291`](https://github.com/eslint/eslint/commit/232d2916ac5e44db55c2ffbd2f3b37ad70037b7b) chore: suppress a Node.js deprecation warning ([#&#8203;16398](https://github.com/eslint/eslint/issues/16398)) (Koichi ITO)

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v3.2.1`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small321-2022-10-28-small)

[Compare Source](https://github.com/vitejs/vite/compare/4198e3428457b648aa622b665035bebe2821c660...v3.2.1)

-   fix: prioritize existing env over .env (fixes [#&#8203;10676](https://github.com/vitejs/vite/issues/10676)) ([#&#8203;10684](https://github.com/vitejs/vite/issues/10684)) ([e2ea6af](https://github.com/vitejs/vite/commit/e2ea6af)), closes [#&#8203;10676](https://github.com/vitejs/vite/issues/10676) [#&#8203;10684](https://github.com/vitejs/vite/issues/10684)
-   fix: remove picomatch type import (fixes [#&#8203;10656](https://github.com/vitejs/vite/issues/10656)) ([#&#8203;10678](https://github.com/vitejs/vite/issues/10678)) ([1128b4d](https://github.com/vitejs/vite/commit/1128b4d)), closes [#&#8203;10656](https://github.com/vitejs/vite/issues/10656) [#&#8203;10678](https://github.com/vitejs/vite/issues/10678)
-   fix(config): resolve externalized specifier with internal resolver ([#&#8203;10683](https://github.com/vitejs/vite/issues/10683)) ([b15d21c](https://github.com/vitejs/vite/commit/b15d21c))
-   feat: Add support for imba in html scripts ([#&#8203;10679](https://github.com/vitejs/vite/issues/10679)) ([b823fd6](https://github.com/vitejs/vite/commit/b823fd6)), closes [#&#8203;10679](https://github.com/vitejs/vite/issues/10679)
-   chore: join URL segments more safely ([#&#8203;10590](https://github.com/vitejs/vite/issues/10590)) ([675bf07](https://github.com/vitejs/vite/commit/675bf07)), closes [#&#8203;10590](https://github.com/vitejs/vite/issues/10590)
-   chore: update changelog for 3.2 ([#&#8203;10646](https://github.com/vitejs/vite/issues/10646)) ([f787a60](https://github.com/vitejs/vite/commit/f787a60)), closes [#&#8203;10646](https://github.com/vitejs/vite/issues/10646)

### [`v3.2.0`](https://github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#&#8203;320-2022-10-26)

[Compare Source](https://github.com/vitejs/vite/compare/v3.1.8...4198e3428457b648aa622b665035bebe2821c660)

##### Main Changes

##### Multiple Entries for Library Mode

Library mode now supports multiple entries:

```js
  lib: {
    entry: {
        primary: 'src/index.ts',
        secondary: 'src/secondary.ts'
    },
    formats: ['es', 'cjs']
  }
  // => primary.es.js, primary.cjs.js, secondary.es.js, secondary.cjs.js
```

Check out the PR [#&#8203;7047](https://github.com/vitejs/vite/issues/7047), and the [`build.lib` config docs](https://main.vitejs.dev/config/build-options.html#build-lib)

##### `build.modulePreload` options

Vite now allows filtering and modifying module preload dependencies for each entry and async chunk. [`experimental.renderBuiltUrl`](https://vitejs.dev/guide/build.html#advanced-base-options) will also get called for preload asset paths. And `build.modulePreload.resolveDependencies` will be called both for JS dynamic imports preload lists and also for HTML preload lists for chunks imported from entry HTML files. Refer to the PR for more context [#&#8203;9938](https://github.com/vitejs/vite/issues/9938) and check out the [modulePreload config docs](https://vitejs.dev/config/build-options.html#build-modulepreload). Note: `build.modulePreloadPolyfill` is now deprecated, please migrate to `build.modulePreload.polyfill`.

##### Include Duplicate Assets in the Manifest

Laravel and other backends integrations will now get entries for every asset file, even if they have been de-duplicated. See [#&#8203;9928](https://github.com/vitejs/vite/issues/9928) for more information.

##### Customizable ErrorOverlay

You can now customize the ErrorOverlay by using [css parts](https://developer.mozilla.org/en-US/docs/Web/CSS/::part). Check out the PR for more details: [#&#8203;10234](https://github.com/vitejs/vite/issues/10234).

##### Features

-   feat(build): experimental copyPublicDir option ([#&#8203;10550](https://github.com/vitejs/vite/issues/10550)) ([4f4a39f](https://github.com/vitejs/vite/commit/4f4a39f)), closes [#&#8203;10550](https://github.com/vitejs/vite/issues/10550)
-   feat(css): export preprocessCSS API ([#&#8203;10429](https://github.com/vitejs/vite/issues/10429)) ([177b427](https://github.com/vitejs/vite/commit/177b427)), closes [#&#8203;10429](https://github.com/vitejs/vite/issues/10429)
-   feat(preview): support outDir option ([#&#8203;10418](https://github.com/vitejs/vite/issues/10418)) ([15b90b3](https://github.com/vitejs/vite/commit/15b90b3)), closes [#&#8203;10418](https://github.com/vitejs/vite/issues/10418)
-   feat: include line and column in error format ([#&#8203;10529](https://github.com/vitejs/vite/issues/10529)) ([d806c4a](https://github.com/vitejs/vite/commit/d806c4a)), closes [#&#8203;10529](https://github.com/vitejs/vite/issues/10529)
-   feat: reuse opening tab in chromium browsers when start dev server ([#&#8203;10485](https://github.com/vitejs/vite/issues/10485)) ([1a2e7a8](https://github.com/vitejs/vite/commit/1a2e7a8)), closes [#&#8203;10485](https://github.com/vitejs/vite/issues/10485)
-   feat: update esbuild compilation affecting fields ([#&#8203;10374](https://github.com/vitejs/vite/issues/10374)) ([f542727](https://github.com/vitejs/vite/commit/f542727)), closes [#&#8203;10374](https://github.com/vitejs/vite/issues/10374)
-   feat(proxy): Include URL of request in proxy errors ([#&#8203;10508](https://github.com/vitejs/vite/issues/10508)) ([27e2832](https://github.com/vitejs/vite/commit/27e2832)), closes [#&#8203;10508](https://github.com/vitejs/vite/issues/10508)
-   refactor: delete dependent pre built proxy modules ([#&#8203;10427](https://github.com/vitejs/vite/issues/10427)) ([b3b388d](https://github.com/vitejs/vite/commit/b3b388d)), closes [#&#8203;10427](https://github.com/vitejs/vite/issues/10427)
-   feat(server): invalidate module with hmr ([#&#8203;10333](https://github.com/vitejs/vite/issues/10333)) ([8328011](https://github.com/vitejs/vite/commit/8328011)), closes [#&#8203;10333](https://github.com/vitejs/vite/issues/10333)
-   feat: build.modulePreload options ([#&#8203;9938](https://github.com/vitejs/vite/issues/9938)) ([e223f84](https://github.com/vitejs/vite/commit/e223f84)), closes [#&#8203;9938](https://github.com/vitejs/vite/issues/9938)
-   feat: customize ErrorOverlay ([#&#8203;10234](https://github.com/vitejs/vite/issues/10234)) ([fe4dc8d](https://github.com/vitejs/vite/commit/fe4dc8d)), closes [#&#8203;10234](https://github.com/vitejs/vite/issues/10234)
-   feat: dynamic import support ?url and ?worker ([#&#8203;8261](https://github.com/vitejs/vite/issues/8261)) ([0cb01ca](https://github.com/vitejs/vite/commit/0cb01ca)), closes [#&#8203;8261](https://github.com/vitejs/vite/issues/8261)
-   feat: include duplicate assets in the manifest ([#&#8203;9928](https://github.com/vitejs/vite/issues/9928)) ([42ecf37](https://github.com/vitejs/vite/commit/42ecf37)), closes [#&#8203;9928](https://github.com/vitejs/vite/issues/9928)
-   feat: support import.meta.hot.invalidate ([#&#8203;10244](https://github.com/vitejs/vite/issues/10244)) ([fb8ab16](https://github.com/vitejs/vite/commit/fb8ab16)), closes [#&#8203;10244](https://github.com/vitejs/vite/issues/10244)
-   feat: support postcss sugarss ([#&#8203;6705](https://github.com/vitejs/vite/issues/6705)) ([8ede2f1](https://github.com/vitejs/vite/commit/8ede2f1)), closes [#&#8203;6705](https://github.com/vitejs/vite/issues/6705)
-   feat(assets): allow `new URL` to resolve package assets ([#&#8203;7837](https://github.com/vitejs/vite/issues/7837)) ([bafccf5](https://github.com/vitejs/vite/commit/bafccf5)), closes [#&#8203;7837](https://github.com/vitejs/vite/issues/7837)
-   feat(client): add data-vite-dev-id attribute to style elements ([#&#8203;10080](https://github.com/vitejs/vite/issues/10080)) ([ea09fde](https://github.com/vitejs/vite/commit/ea09fde)), closes [#&#8203;10080](https://github.com/vitejs/vite/issues/10080)
-   feat(lib): allow multiple entries ([#&#8203;7047](https://github.com/vitejs/vite/issues/7047)) ([65a0fad](https://github.com/vitejs/vite/commit/65a0fad)), closes [#&#8203;7047](https://github.com/vitejs/vite/issues/7047)
-   feat(optimizer): Support bun lockfile format ([#&#8203;10288](https://github.com/vitejs/vite/issues/10288)) ([931d69b](https://github.com/vitejs/vite/commit/931d69b)), closes [#&#8203;10288](https://github.com/vitejs/vite/issues/10288)
-   refactor(types): bundle client types ([#&#8203;9966](https://github.com/vitejs/vite/issues/9966)) ([da632bf](https://github.com/vitejs/vite/commit/da632bf)), closes [#&#8203;9966](https://github.com/vitejs/vite/issues/9966)
-   refactor(types): simplify type exports ([#&#8203;10243](https://github.com/vitejs/vite/issues/10243)) ([291174d](https://github.com/vitejs/vite/commit/291174d)), closes [#&#8203;10243](https://github.com/vitejs/vite/issues/10243)
-   perf: cache compiled glob for `server.fs.deny` ([#&#8203;10044](https://github.com/vitejs/vite/issues/10044)) ([df560b0](https://github.com/vitejs/vite/commit/df560b0)), closes [#&#8203;10044](https://github.com/vitejs/vite/issues/10044)

##### Bug Fixes

-   fix: add a warning if css urls not exist during build time (fix [#&#8203;9800](https://github.com/vitejs/vite/issues/9800)) ([#&#8203;10331](https://github.com/vitejs/vite/issues/10331)) ([9f268da](https://github.com/vitejs/vite/commit/9f268da)), closes [#&#8203;9800](https://github.com/vitejs/vite/issues/9800) [#&#8203;10331](https://github.com/vitejs/vite/issues/10331)
-   fix: increase error overlay z-index ([#&#8203;10603](https://github.com/vitejs/vite/issues/10603)) ([1157941](https://github.com/vitejs/vite/commit/1157941)), closes [#&#8203;10603](https://github.com/vitejs/vite/issues/10603)
-   fix: revert es-module-lexer version ([#&#8203;10614](https://github.com/vitejs/vite/issues/10614)) ([cffe5c9](https://github.com/vitejs/vite/commit/cffe5c9)), closes [#&#8203;10614](https://github.com/vitejs/vite/issues/10614)
-   fix: when the file path is an absolute path, parsing causes parameter loss ([#&#8203;10449](https://github.com/vitejs/vite/issues/10449)) ([df86990](https://github.com/vitejs/vite/commit/df86990)), closes [#&#8203;10449](https://github.com/vitejs/vite/issues/10449)
-   fix(config): resolve build options with fallback ([#&#8203;10645](https://github.com/vitejs/vite/issues/10645)) ([f7021e3](https://github.com/vitejs/vite/commit/f7021e3)), closes [#&#8203;10645](https://github.com/vitejs/vite/issues/10645)
-   fix(deps): update all non-major dependencies ([#&#8203;10610](https://github.com/vitejs/vite/issues/10610)) ([bb95467](https://github.com/vitejs/vite/commit/bb95467)), closes [#&#8203;10610](https://github.com/vitejs/vite/issues/10610)
-   fix(hmr): cannot reload after missing import on server startup ([#&#8203;9534](https://github.com/vitejs/vite/issues/9534)) ([#&#8203;10602](https://github.com/vitejs/vite/issues/10602)) ([ee7c28a](https://github.com/vitejs/vite/commit/ee7c28a)), closes [#&#8203;9534](https://github.com/vitejs/vite/issues/9534) [#&#8203;10602](https://github.com/vitejs/vite/issues/10602)
-   fix(css): strip BOM (fixes [#&#8203;10043](https://github.com/vitejs/vite/issues/10043)) ([#&#8203;10577](https://github.com/vitejs/vite/issues/10577)) ([e0463bd](https://github.com/vitejs/vite/commit/e0463bd)), closes [#&#8203;10043](https://github.com/vitejs/vite/issues/10043) [#&#8203;10577](https://github.com/vitejs/vite/issues/10577)
-   fix(ssr): resolve with isRequire true ([#&#8203;10569](https://github.com/vitejs/vite/issues/10569)) ([7b81210](https://github.com/vitejs/vite/commit/7b81210)), closes [#&#8203;10569](https://github.com/vitejs/vite/issues/10569)
-   fix: prefer exports when resolving ([#&#8203;10371](https://github.com/vitejs/vite/issues/10371)) ([3259006](https://github.com/vitejs/vite/commit/3259006)), closes [#&#8203;10371](https://github.com/vitejs/vite/issues/10371)
-   fix(config): partial deno support ([#&#8203;10446](https://github.com/vitejs/vite/issues/10446)) ([c4489ea](https://github.com/vitejs/vite/commit/c4489ea)), closes [#&#8203;10446](https://github.com/vitejs/vite/issues/10446)
-   fix(config): skip resolve builtin modules ([#&#8203;10420](https://github.com/vitejs/vite/issues/10420)) ([ecba3f8](https://github.com/vitejs/vite/commit/ecba3f8)), closes [#&#8203;10420](https://github.com/vitejs/vite/issues/10420)
-   fix(ssr): handle parallel hookNodeResolve ([#&#8203;10401](https://github.com/vitejs/vite/issues/10401)) ([1a961d9](https://github.com/vitejs/vite/commit/1a961d9)), closes [#&#8203;10401](https://github.com/vitejs/vite/issues/10401)
-   fix(cli): when the user enters the same command ([#&#8203;10474](https://github.com/vitejs/vite/issues/10474)) ([2326f4a](https://github.com/vitejs/vite/commit/2326f4a)), closes [#&#8203;10474](https://github.com/vitejs/vite/issues/10474)
-   fix(config): don't use module condition (`import.meta.resolve`) (fixes [#&#8203;10430](https://github.com/vitejs/vite/issues/10430)) ([#&#8203;10528](https://github.com/vitejs/vite/issues/10528)) ([64f19b9](https://github.com/vitejs/vite/commit/64f19b9)), closes [#&#8203;10430](https://github.com/vitejs/vite/issues/10430) [#&#8203;10528](https://github.com/vitejs/vite/issues/10528)
-   fix(css): remove `?direct` in id for postcss process ([#&#8203;10514](https://github.com/vitejs/vite/issues/10514)) ([67e7bf2](https://github.com/vitejs/vite/commit/67e7bf2)), closes [#&#8203;10514](https://github.com/vitejs/vite/issues/10514)
-   fix(html): allow self closing on non-void elements ([#&#8203;10478](https://github.com/vitejs/vite/issues/10478)) ([29292af](https://github.com/vitejs/vite/commit/29292af)), closes [#&#8203;10478](https://github.com/vitejs/vite/issues/10478)
-   fix(legacy): restore entry chunk CSS inlining, reverts [#&#8203;9761](https://github.com/vitejs/vite/issues/9761) ([#&#8203;10496](https://github.com/vitejs/vite/issues/10496)) ([9cc808e](https://github.com/vitejs/vite/commit/9cc808e)), closes [#&#8203;9761](https://github.com/vitejs/vite/issues/9761) [#&#8203;10496](https://github.com/vitejs/vite/issues/10496)
-   chore: simplify filter plugin code ([#&#8203;10459](https://github.com/vitejs/vite/issues/10459)) ([5d9b810](https://github.com/vitejs/vite/commit/5d9b810)), closes [#&#8203;10459](https://github.com/vitejs/vite/issues/10459)
-   chore(deps): update all non-major dependencies ([#&#8203;10488](https://github.com/vitejs/vite/issues/10488)) ([15aa827](https://github.com/vitejs/vite/commit/15aa827)), closes [#&#8203;10488](https://github.com/vitejs/vite/issues/10488)
-   chore: update magic-string ([#&#8203;10364](https://github.com/vitejs/vite/issues/10364)) ([23c9259](https://github.com/vitejs/vite/commit/23c9259)), closes [#&#8203;10364](https://github.com/vitejs/vite/issues/10364)
-   chore(deps): update all non-major dependencies ([#&#8203;10393](https://github.com/vitejs/vite/issues/10393)) ([f519423](https://github.com/vitejs/vite/commit/f519423)), closes [#&#8203;10393](https://github.com/vitejs/vite/issues/10393)
-   chore(deps): update dependency [@&#8203;rollup/plugin-alias](https://github.com/rollup/plugin-alias) to v4 ([#&#8203;10394](https://github.com/vitejs/vite/issues/10394)) ([e2b4c8f](https://github.com/vitejs/vite/commit/e2b4c8f)), closes [#&#8203;10394](https://github.com/vitejs/vite/issues/10394)
-   feat(lib): cjs instead of umd as default format for multiple entries ([#&#8203;10315](https://github.com/vitejs/vite/issues/10315)) ([07d3fbd](https://github.com/vitejs/vite/commit/07d3fbd)), closes [#&#8203;10315](https://github.com/vitejs/vite/issues/10315)
-   fix: make client type work with `moduleResolution=node16` ([#&#8203;10375](https://github.com/vitejs/vite/issues/10375)) ([8c4df1f](https://github.com/vitejs/vite/commit/8c4df1f)), closes [#&#8203;10375](https://github.com/vitejs/vite/issues/10375)
-   fix(config): don't resolve by module field ([#&#8203;10347](https://github.com/vitejs/vite/issues/10347)) ([cc1c829](https://github.com/vitejs/vite/commit/cc1c829)), closes [#&#8203;10347](https://github.com/vitejs/vite/issues/10347)
-   fix(html): handle attrs with prefix (fixes [#&#8203;10337](https://github.com/vitejs/vite/issues/10337)) ([#&#8203;10381](https://github.com/vitejs/vite/issues/10381)) ([7b4d6e8](https://github.com/vitejs/vite/commit/7b4d6e8)), closes [#&#8203;10337](https://github.com/vitejs/vite/issues/10337) [#&#8203;10381](https://github.com/vitejs/vite/issues/10381)
-   fix(ssr): track var as function scope ([#&#8203;10388](https://github.com/vitejs/vite/issues/10388)) ([87b48f9](https://github.com/vitejs/vite/commit/87b48f9)), closes [#&#8203;10388](https://github.com/vitejs/vite/issues/10388)
-   fix: add module types ([#&#8203;10299](https://github.com/vitejs/vite/issues/10299)) ([0b89dd2](https://github.com/vitejs/vite/commit/0b89dd2)), closes [#&#8203;10299](https://github.com/vitejs/vite/issues/10299)
-   fix: css order problem in async chunk ([#&#8203;9949](https://github.com/vitejs/vite/issues/9949)) ([6c7b834](https://github.com/vitejs/vite/commit/6c7b834)), closes [#&#8203;9949](https://github.com/vitejs/vite/issues/9949)
-   fix: don't duplicate styles with dynamic import (fix [#&#8203;9967](https://github.com/vitejs/vite/issues/9967)) ([#&#8203;9970](https://github.com/vitejs/vite/issues/9970)) ([65f97bd](https://github.com/vitejs/vite/commit/65f97bd)), closes [#&#8203;9967](https://github.com/vitejs/vite/issues/9967) [#&#8203;9970](https://github.com/vitejs/vite/issues/9970)
-   fix: env variables override ([#&#8203;10113](https://github.com/vitejs/vite/issues/10113)) ([d619460](https://github.com/vitejs/vite/commit/d619460)), closes [#&#8203;10113](https://github.com/vitejs/vite/issues/10113)
-   fix: isFromTsImporter flag in worker virtual model ([#&#8203;10273](https://github.com/vitejs/vite/issues/10273)) ([78f74c9](https://github.com/vitejs/vite/commit/78f74c9)), closes [#&#8203;10273](https://github.com/vitejs/vite/issues/10273)
-   fix: properly close optimizer on server restart ([#&#8203;10028](https://github.com/vitejs/vite/issues/10028)) ([a32777f](https://github.com/vitejs/vite/commit/a32777f)), closes [#&#8203;10028](https://github.com/vitejs/vite/issues/10028)
-   fix: respect `mainFields` when resolving browser/module field (fixes [#&#8203;8659](https://github.com/vitejs/vite/issues/8659)) ([#&#8203;10071](https://github.com/vitejs/vite/issues/10071)) ([533d13c](https://github.com/vitejs/vite/commit/533d13c)), closes [#&#8203;8659](https://github.com/vitejs/vite/issues/8659) [#&#8203;10071](https://github.com/vitejs/vite/issues/10071)
-   fix: respect resolve.conditions, when resolving browser/require field ([#&#8203;9860](https://github.com/vitejs/vite/issues/9860)) ([9a83eaf](https://github.com/vitejs/vite/commit/9a83eaf)), closes [#&#8203;9860](https://github.com/vitejs/vite/issues/9860)
-   fix: support process each out dir when there are two or more ([#&#8203;9748](https://github.com/vitejs/vite/issues/9748)) ([ee3231c](https://github.com/vitejs/vite/commit/ee3231c)), closes [#&#8203;9748](https://github.com/vitejs/vite/issues/9748)
-   fix(build): fix resolution algorithm when `build.ssr` is true ([#&#8203;9989](https://github.com/vitejs/vite/issues/9989)) ([7229251](https://github.com/vitejs/vite/commit/7229251)), closes [#&#8203;9989](https://github.com/vitejs/vite/issues/9989)
-   fix(config): resolve implicit deps as absolute path ([#&#8203;10254](https://github.com/vitejs/vite/issues/10254)) ([ec1f3ae](https://github.com/vitejs/vite/commit/ec1f3ae)), closes [#&#8203;10254](https://github.com/vitejs/vite/issues/10254)
-   fix(css):  missing css in lib mode ([#&#8203;10185](https://github.com/vitejs/vite/issues/10185)) ([e4c1c6d](https://github.com/vitejs/vite/commit/e4c1c6d)), closes [#&#8203;10185](https://github.com/vitejs/vite/issues/10185)
-   fix(deps): update all non-major dependencies ([#&#8203;10160](https://github.com/vitejs/vite/issues/10160)) ([6233c83](https://github.com/vitejs/vite/commit/6233c83)), closes [#&#8203;10160](https://github.com/vitejs/vite/issues/10160)
-   fix(deps): update all non-major dependencies ([#&#8203;10316](https://github.com/vitejs/vite/issues/10316)) ([a38b450](https://github.com/vitejs/vite/commit/a38b450)), closes [#&#8203;10316](https://github.com/vitejs/vite/issues/10316)
-   fix(deps): update rollup to `^2.79.1` ([#&#8203;10298](https://github.com/vitejs/vite/issues/10298)) ([2266d83](https://github.com/vitejs/vite/commit/2266d83)), closes [#&#8203;10298](https://github.com/vitejs/vite/issues/10298)
-   fix(esbuild): transpile with esnext in dev ([#&#8203;10207](https://github.com/vitejs/vite/issues/10207)) ([43b7b78](https://github.com/vitejs/vite/commit/43b7b78)), closes [#&#8203;10207](https://github.com/vitejs/vite/issues/10207)
-   fix(hmr): handle virtual module update ([#&#8203;10324](https://github.com/vitejs/vite/issues/10324)) ([7c4accb](https://github.com/vitejs/vite/commit/7c4accb)), closes [#&#8203;10324](https://github.com/vitejs/vite/issues/10324)
-   fix(optimizer): browser field bare import (fix [#&#8203;7599](https://github.com/vitejs/vite/issues/7599)) ([#&#8203;10314](https://github.com/vitejs/vite/issues/10314)) ([cba13e8](https://github.com/vitejs/vite/commit/cba13e8)), closes [#&#8203;7599](https://github.com/vitejs/vite/issues/7599) [#&#8203;10314](https://github.com/vitejs/vite/issues/10314)
-   fix(sass): reorder sass importers ([#&#8203;10101](https://github.com/vitejs/vite/issues/10101)) ([a543731](https://github.com/vitejs/vite/commit/a543731)), closes [#&#8203;10101](https://github.com/vitejs/vite/issues/10101)
-   fix(server): handle appType mpa html fallback ([#&#8203;10336](https://github.com/vitejs/vite/issues/10336)) ([65dd88b](https://github.com/vitejs/vite/commit/65dd88b)), closes [#&#8203;10336](https://github.com/vitejs/vite/issues/10336)
-   fix(ssr): correctly track scope ([#&#8203;10300](https://github.com/vitejs/vite/issues/10300)) ([a60529f](https://github.com/vitejs/vite/commit/a60529f)), closes [#&#8203;10300](https://github.com/vitejs/vite/issues/10300)
-   fix(worker): support comment in worker constructor option ([#&#8203;10226](https://github.com/vitejs/vite/issues/10226)) ([66c9058](https://github.com/vitejs/vite/commit/66c9058)), closes [#&#8203;10226](https://github.com/vitejs/vite/issues/10226)
-   fix(worker): support trailing comma ([#&#8203;10211](https://github.com/vitejs/vite/issues/10211)) ([0542e7c](https://github.com/vitejs/vite/commit/0542e7c)), closes [#&#8203;10211](https://github.com/vitejs/vite/issues/10211)

##### Previous Changelogs

##### [3.2.0-beta.4](https://github.com/vitejs/vite/compare/v3.2.0-beta.3....v3.2.0-beta.4) (2022-10-24)

See [3.2.0-beta.4 changelog](https://github.com/vitejs/vite/blob/v3.2.0-beta.4/packages/vite/CHANGELOG.md)

##### [3.2.0-beta.3](https://github.com/vitejs/vite/compare/v3.2.0-beta.2...v3.2.0-beta.3) (2022-10-20)

See [3.2.0-beta.3 changelog](https://github.com/vitejs/vite/blob/v3.2.0-beta.4/packages/vite/CHANGELOG.md)

##### [3.2.0-beta.2](https://github.com/vitejs/vite/compare/v3.2.0-beta.1...v3.2.0-beta.2) (2022-10-14)

See [3.2.0-beta.2 changelog](https://github.com/vitejs/vite/blob/v3.2.0-beta.4/packages/vite/CHANGELOG.md)

##### [3.2.0-beta.1](https://github.com/vitejs/vite/compare/v3.2.0-beta.0...v3.2.0-beta.1) (2022-10-10)

See [3.2.0-beta.1 changelog](https://github.com/vitejs/vite/blob/v3.2.0-beta.4/packages/vite/CHANGELOG.md)

##### [3.2.0-beta.0](https://github.com/vitejs/vite/compare/v3.1.3...v3.2.0-beta.0) (2022-10-05)

See [3.2.0-beta.0 changelog](https://github.com/vitejs/vite/blob/v3.2.0-beta.4/packages/vite/CHANGELOG.md)

### [`v3.1.8`](https://github.com/vitejs/vite/releases/tag/v3.1.8)

[Compare Source](https://github.com/vitejs/vite/compare/v3.1.7...v3.1.8)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v3.1.8/packages/vite/CHANGELOG.md) for details.

### [`v3.1.7`](https://github.com/vitejs/vite/releases/tag/v3.1.7)

[Compare Source](https://github.com/vitejs/vite/compare/v3.1.6...v3.1.7)

Please refer to [CHANGELOG.md](https://github.com/vitejs/vite/blob/v3.1.7/packages/vite/CHANGELOG.md) for details.

</details>

<details>
<summary>pmndrs/zustand</summary>

### [`v4.1.3`](https://github.com/pmndrs/zustand/releases/tag/v4.1.3)

[Compare Source](https://github.com/pmndrs/zustand/compare/v4.1.2...v4.1.3)

This improves store types for TS users. We also upgrade rollup. Please report issues if anyone finds any.

#### What's Changed

-   fix(types): assume `getState` and `setState` will always exist on the store by [@&#8203;devanshj](https://github.com/devanshj) in [https://github.com/pmndrs/zustand/pull/1371](https://github.com/pmndrs/zustand/pull/1371)
-   fix(types): fix `StateCreator` subtyping by [@&#8203;devanshj](https://github.com/devanshj) in [https://github.com/pmndrs/zustand/pull/1373](https://github.com/pmndrs/zustand/pull/1373)

#### New Contributors

-   [@&#8203;dongkun](https://github.com/dongkun) made their first contribution in [https://github.com/pmndrs/zustand/pull/1352](https://github.com/pmndrs/zustand/pull/1352)
-   [@&#8203;srini-leanfolks](https://github.com/srini-leanfolks) made their first contribution in [https://github.com/pmndrs/zustand/pull/1357](https://github.com/pmndrs/zustand/pull/1357)

**Full Changelog**: pmndrs/zustand@v4.1.2...v4.1.3

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Wednesday" in timezone Europe/Berlin, Automerge - At any time (no schedule defined).

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

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/mheob/ef-calc).
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.

2 participants