1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-12-22 19:07:54 +01:00
Unleash is the open source feature toggle service.
Go to file
renovate[bot] e1be9b0f12
chore(deps): update dependency vite to v4 (#2773)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vite](https://togithub.com/vitejs/vite/tree/main/#readme)
([source](https://togithub.com/vitejs/vite)) | [`3.2.5` ->
`4.0.3`](https://renovatebot.com/diffs/npm/vite/3.2.5/4.0.3) |
[![age](https://badges.renovateapi.com/packages/npm/vite/4.0.3/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/vite/4.0.3/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/vite/4.0.3/compatibility-slim/3.2.5)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/vite/4.0.3/confidence-slim/3.2.5)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vitejs/vite</summary>

###
[`v4.0.3`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small403-2022-12-21-small)

[Compare
Source](https://togithub.com/vitejs/vite/compare/v4.0.2...v4.0.3)

- chore(deps): update dependency
[@&#8203;rollup/plugin-commonjs](https://togithub.com/rollup/plugin-commonjs)
to v24 ([#&#8203;11420](https://togithub.com/vitejs/vite/issues/11420))
([241db16](https://togithub.com/vitejs/vite/commit/241db16)), closes
[#&#8203;11420](https://togithub.com/vitejs/vite/issues/11420)
- chore(typo): fix typo
([#&#8203;11445](https://togithub.com/vitejs/vite/issues/11445))
([ed80ea5](https://togithub.com/vitejs/vite/commit/ed80ea5)), closes
[#&#8203;11445](https://togithub.com/vitejs/vite/issues/11445)
- fix(ssr): ignore module exports condition
([#&#8203;11409](https://togithub.com/vitejs/vite/issues/11409))
([d3c9c0b](https://togithub.com/vitejs/vite/commit/d3c9c0b)), closes
[#&#8203;11409](https://togithub.com/vitejs/vite/issues/11409)
- feat: allow import.meta.hot define override
([#&#8203;8944](https://togithub.com/vitejs/vite/issues/8944))
([857d578](https://togithub.com/vitejs/vite/commit/857d578)), closes
[#&#8203;8944](https://togithub.com/vitejs/vite/issues/8944)

###
[`v4.0.2`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small402-2022-12-18-small)

[Compare
Source](https://togithub.com/vitejs/vite/compare/v4.0.1...v4.0.2)

- fix: fix the error message in the `toOutputFilePathWithoutRuntime`
function
([#&#8203;11367](https://togithub.com/vitejs/vite/issues/11367))
([8820f75](https://togithub.com/vitejs/vite/commit/8820f75)), closes
[#&#8203;11367](https://togithub.com/vitejs/vite/issues/11367)
- fix: make `vite optimize` prebundle for dev
([#&#8203;11387](https://togithub.com/vitejs/vite/issues/11387))
([b4ced0f](https://togithub.com/vitejs/vite/commit/b4ced0f)), closes
[#&#8203;11387](https://togithub.com/vitejs/vite/issues/11387)
- fix: revert
[#&#8203;11290](https://togithub.com/vitejs/vite/issues/11290)
([#&#8203;11412](https://togithub.com/vitejs/vite/issues/11412))
([6587d2f](https://togithub.com/vitejs/vite/commit/6587d2f)), closes
[#&#8203;11290](https://togithub.com/vitejs/vite/issues/11290)
[#&#8203;11412](https://togithub.com/vitejs/vite/issues/11412)
- fix: server and preview open fails to add slash before relative path
([#&#8203;11394](https://togithub.com/vitejs/vite/issues/11394))
([57276b7](https://togithub.com/vitejs/vite/commit/57276b7)), closes
[#&#8203;11394](https://togithub.com/vitejs/vite/issues/11394)
- fix: skip applescript when no Chromium browser found (fixes
[#&#8203;11205](https://togithub.com/vitejs/vite/issues/11205))
([#&#8203;11406](https://togithub.com/vitejs/vite/issues/11406))
([274d1f3](https://togithub.com/vitejs/vite/commit/274d1f3)), closes
[#&#8203;11205](https://togithub.com/vitejs/vite/issues/11205)
[#&#8203;11406](https://togithub.com/vitejs/vite/issues/11406)
- fix(deps): update dependency ufo to v1
([#&#8203;11372](https://togithub.com/vitejs/vite/issues/11372))
([4288300](https://togithub.com/vitejs/vite/commit/4288300)), closes
[#&#8203;11372](https://togithub.com/vitejs/vite/issues/11372)
- chore: typecheck create-vite
([#&#8203;11295](https://togithub.com/vitejs/vite/issues/11295))
([af86e5b](https://togithub.com/vitejs/vite/commit/af86e5b)), closes
[#&#8203;11295](https://togithub.com/vitejs/vite/issues/11295)
- chore(deps): update dependency convert-source-map to v2
([#&#8203;10548](https://togithub.com/vitejs/vite/issues/10548))
([8dc6528](https://togithub.com/vitejs/vite/commit/8dc6528)), closes
[#&#8203;10548](https://togithub.com/vitejs/vite/issues/10548)
- chore(deps): update dependency mlly to v1
([#&#8203;11370](https://togithub.com/vitejs/vite/issues/11370))
([9662d4d](https://togithub.com/vitejs/vite/commit/9662d4d)), closes
[#&#8203;11370](https://togithub.com/vitejs/vite/issues/11370)

###
[`v4.0.1`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small401-2022-12-12-small)

[Compare
Source](566d4c7bb5...v4.0.1)

- feat: show server url by pressing `u`
([#&#8203;11319](https://togithub.com/vitejs/vite/issues/11319))
([8c0bb7b](https://togithub.com/vitejs/vite/commit/8c0bb7b)), closes
[#&#8203;11319](https://togithub.com/vitejs/vite/issues/11319)
- feat(html): clickable error position for html parse error
([#&#8203;11334](https://togithub.com/vitejs/vite/issues/11334))
([2e15f3d](https://togithub.com/vitejs/vite/commit/2e15f3d)), closes
[#&#8203;11334](https://togithub.com/vitejs/vite/issues/11334)
- fix: ?inline warning for .css.js file
([#&#8203;11347](https://togithub.com/vitejs/vite/issues/11347))
([729fb1a](https://togithub.com/vitejs/vite/commit/729fb1a)), closes
[#&#8203;11347](https://togithub.com/vitejs/vite/issues/11347)
- fix: check if build exists so preview doesn't show 404s due to
nonexistent build
([#&#8203;10564](https://togithub.com/vitejs/vite/issues/10564))
([0a1db8c](https://togithub.com/vitejs/vite/commit/0a1db8c)), closes
[#&#8203;10564](https://togithub.com/vitejs/vite/issues/10564)
- fix: derive `useDefineForClassFields` value from
`tsconfig.compilerOptions.target` (fixes
[#&#8203;10296](https://togithub.com/vitejs/vite/issues/10296)) (#
([42976d8](https://togithub.com/vitejs/vite/commit/42976d8)), closes
[#&#8203;10296](https://togithub.com/vitejs/vite/issues/10296)
[#&#8203;11301](https://togithub.com/vitejs/vite/issues/11301)
- fix: preview fallback
([#&#8203;11312](https://togithub.com/vitejs/vite/issues/11312))
([cfedf9c](https://togithub.com/vitejs/vite/commit/cfedf9c)), closes
[#&#8203;11312](https://togithub.com/vitejs/vite/issues/11312)
- fix: respect base when using `/__open-in-editor`
([#&#8203;11337](https://togithub.com/vitejs/vite/issues/11337))
([8856c2e](https://togithub.com/vitejs/vite/commit/8856c2e)), closes
[#&#8203;11337](https://togithub.com/vitejs/vite/issues/11337)
- fix: wrongly resolve to optimized doppelganger
([#&#8203;11290](https://togithub.com/vitejs/vite/issues/11290))
([34fec41](https://togithub.com/vitejs/vite/commit/34fec41)), closes
[#&#8203;11290](https://togithub.com/vitejs/vite/issues/11290)
- fix(env): test NODE_ENV override before expand
([#&#8203;11309](https://togithub.com/vitejs/vite/issues/11309))
([d0a9281](https://togithub.com/vitejs/vite/commit/d0a9281)), closes
[#&#8203;11309](https://togithub.com/vitejs/vite/issues/11309)
- fix(preview): Revert
[#&#8203;10564](https://togithub.com/vitejs/vite/issues/10564) - throw
Error on missing outDir
([#&#8203;11335](https://togithub.com/vitejs/vite/issues/11335))
([3aaa0ea](https://togithub.com/vitejs/vite/commit/3aaa0ea)), closes
[#&#8203;10564](https://togithub.com/vitejs/vite/issues/10564)
[#&#8203;11335](https://togithub.com/vitejs/vite/issues/11335)
[#&#8203;10564](https://togithub.com/vitejs/vite/issues/10564)
- docs: fix banner image in CHANGELOG.md
([#&#8203;11336](https://togithub.com/vitejs/vite/issues/11336))
([45b66f4](https://togithub.com/vitejs/vite/commit/45b66f4)), closes
[#&#8203;11336](https://togithub.com/vitejs/vite/issues/11336)
- chore: enable `@typescript-eslint/ban-ts-comment`
([#&#8203;11326](https://togithub.com/vitejs/vite/issues/11326))
([e58a4f0](https://togithub.com/vitejs/vite/commit/e58a4f0)), closes
[#&#8203;11326](https://togithub.com/vitejs/vite/issues/11326)
- chore: fix format
([#&#8203;11311](https://togithub.com/vitejs/vite/issues/11311))
([9c2b1c0](https://togithub.com/vitejs/vite/commit/9c2b1c0)), closes
[#&#8203;11311](https://togithub.com/vitejs/vite/issues/11311)
- chore: update changelog release notes for 4.0
([#&#8203;11285](https://togithub.com/vitejs/vite/issues/11285))
([83abd37](https://togithub.com/vitejs/vite/commit/83abd37)), closes
[#&#8203;11285](https://togithub.com/vitejs/vite/issues/11285)
- chore(deps): update all non-major dependencies
([#&#8203;11321](https://togithub.com/vitejs/vite/issues/11321))
([dcc0004](https://togithub.com/vitejs/vite/commit/dcc0004)), closes
[#&#8203;11321](https://togithub.com/vitejs/vite/issues/11321)
- chore(esbuild): add test for configuration overrides
([#&#8203;11267](https://togithub.com/vitejs/vite/issues/11267))
([f897b64](https://togithub.com/vitejs/vite/commit/f897b64)), closes
[#&#8203;11267](https://togithub.com/vitejs/vite/issues/11267)

###
[`v4.0.0`](https://togithub.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#&#8203;400-2022-12-09)

[Compare
Source](https://togithub.com/vitejs/vite/compare/v3.2.5...566d4c7bb51cf56550a5374ee46e1e1cbea1cf1f)

![Vite 4 Announcement Cover
Image](https://vitejs.dev/og-image-announcing-vite4.png)

Read the announcement blog post: [Announcing Vite
4](https://vitejs.dev/blog/announcing-vite4)

Quick links:

-   [Docs](https://vitejs.dev)
-   [Migration Guide](https://vitejs.dev/guide/migration)

Docs in other languages:

-   [简体中文](https://cn.vitejs.dev/)
-   [日本語](https://ja.vitejs.dev/)
-   [Español](https://es.vitejs.dev/)

##### Main Changes

This major is smaller in scope compared to Vite 3, with the main
objective of upgrading to Rollup 3. We've worked with the ecosystem to
ensure a smooth upgrade path for this new major.

##### Rollup 3

Vite is now using [Rollup
3](https://togithub.com/vitejs/vite/issues/9870), which allowed us to
simplify Vite's internal asset handling and has many improvements. See
the [Rollup 3 release notes
here](https://togithub.com/rollup/rollup/releases).

##### Framework Plugins out of the Vite core monorepo

[`@vitejs/plugin-vue`](https://togithub.com/vitejs/vite-plugin-vue) and
[`@vitejs/plugin-react`](https://togithub.com/vitejs/vite-plugin-react)
have been part of Vite core monorepo since the first versions of Vite.
This helped us to get a close feedback loop when making changes as we
were getting both Core and the plugins tested and released together.
With [vite-ecosystem-ci](https://togithub.com/vitejs/vite-ecosystem-ci)
we can get this feedback with these plugins developed on independent
repositories, so from Vite 4, [they have been moved out of the Vite core
monorepo](https://togithub.com/vitejs/vite/pull/11158). This is
meaningful for Vite's framework-agnostic story, and will allow us to
build independent teams to maintain each of the plugins. If you have
bugs to report or features to request, please create issues on the new
repositories moving forward:
[`vitejs/vite-plugin-vue`](https://togithub.com/vitejs/vite-plugin-vue)
and
[`vitejs/vite-plugin-react`](https://togithub.com/vitejs/vite-plugin-react).

##### New React plugin using SWC during development

[SWC](https://swc.rs/) is now a mature replacement for
[Babel](https://babeljs.io/), especially in the context of React
projects. SWC's React Fast Refresh implementation is a lot faster than
Babel, and for some projects, it is now a better alternative. From Vite
4, two plugins are available for React projects with different
tradeoffs. We believe that both approaches are worth supporting at this
point, and we'll continue to explore improvements to both plugins in the
future.

#####
[@&#8203;vitejs/plugin-react](https://togithub.com/vitejs/plugin-react)


[@&#8203;vitejs/plugin-react](https://togithub.com/vitejs/vite-plugin-react)
is a plugin that uses esbuild and Babel, achieving fast HMR with a small
package footprint and the flexibility of being able to use the babel
transform pipeline.

#####
[@&#8203;vitejs/plugin-react-swc](https://togithub.com/vitejs/plugin-react-swc)
(new)


[@&#8203;vitejs/plugin-react-swc](https://togithub.com/vitejs/vite-plugin-react-swc)
is a new plugin that uses esbuild during build, but replaces Babel with
SWC during development. For big projects that don't require non-standard
React extensions, cold start and Hot Module Replacement (HMR) can be
significantly faster.

##### Compatibility

The modern browser build now targets `safari14` by default for wider
ES2020 compatibility
([https://github.com/vitejs/vite/issues/9063](https://togithub.com/vitejs/vite/issues/9063)).
This means that modern builds can now use
[`BigInt`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/BigInt)
and that the [nullish coallessing
operator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Nullish_coalescing)
isn't transpiled anymore. If you need to support older browsers, you can
add
[`@vitejs/plugin-legacy`](https://togithub.com/vitejs/vite/tree/main/packages/plugin-legacy)
as usual.

##### Importing CSS as a string

In Vite 3, importing the default export of a `.css` file could introduce
a double loading of CSS.

```ts
import cssString from './global.css';
```

This double loading could occur since a `.css` file will be emitted and
it's likely that the CSS string will also be used by the application
code — for example, injected by the framework runtime. From Vite 4, the
`.css` default export [has been
deprecated](https://togithub.com/vitejs/vite/issues/11094). The
`?inline` query suffix modifier needs to be used in this case, as that
doesn't emit the imported `.css` styles.

```ts
import stuff from './global.css?inline'
```

##### Other features

- Support for patch-package when pre bundling dependencies
([#&#8203;10286](https://togithub.com/vitejs/vite/issues/10286))
- Cleaner build logs output
([#&#8203;10895](https://togithub.com/vitejs/vite/issues/10895)) and
switch to `kB` to align with browser dev tools
([#&#8203;10982](https://togithub.com/vitejs/vite/issues/10982))
- Improved error messages during SSR
([#&#8203;11156](https://togithub.com/vitejs/vite/issues/11156))

##### Features

- feat: add CLI keyboard shortcuts
([#&#8203;11228](https://togithub.com/vitejs/vite/issues/11228))
([87973f1](https://togithub.com/vitejs/vite/commit/87973f1)), closes
[#&#8203;11228](https://togithub.com/vitejs/vite/issues/11228)
- feat: export error message generator
([#&#8203;11155](https://togithub.com/vitejs/vite/issues/11155))
([493ba1e](https://togithub.com/vitejs/vite/commit/493ba1e)), closes
[#&#8203;11155](https://togithub.com/vitejs/vite/issues/11155)
- feat(node/plugins): esbuild options
([#&#8203;11049](https://togithub.com/vitejs/vite/issues/11049))
([735b98b](https://togithub.com/vitejs/vite/commit/735b98b)), closes
[#&#8203;11049](https://togithub.com/vitejs/vite/issues/11049)
- feat: improve the error message of `expand`
([#&#8203;11141](https://togithub.com/vitejs/vite/issues/11141))
([825c793](https://togithub.com/vitejs/vite/commit/825c793)), closes
[#&#8203;11141](https://togithub.com/vitejs/vite/issues/11141)
- feat: update [@&#8203;types/node](https://togithub.com/types/node) to
v18 ([#&#8203;11195](https://togithub.com/vitejs/vite/issues/11195))
([4ec9f53](https://togithub.com/vitejs/vite/commit/4ec9f53)), closes
[#&#8203;11195](https://togithub.com/vitejs/vite/issues/11195)
- feat(client)!: remove never implemented hot.decline
([#&#8203;11036](https://togithub.com/vitejs/vite/issues/11036))
([e257e3b](https://togithub.com/vitejs/vite/commit/e257e3b)), closes
[#&#8203;11036](https://togithub.com/vitejs/vite/issues/11036)
- feat!: support `safari14` by default for wider ES2020 compatibility
([#&#8203;9063](https://togithub.com/vitejs/vite/issues/9063))
([3cc65d7](https://togithub.com/vitejs/vite/commit/3cc65d7)), closes
[#&#8203;9063](https://togithub.com/vitejs/vite/issues/9063)
- feat!: support multiline values in env files
([#&#8203;10826](https://togithub.com/vitejs/vite/issues/10826))
([606e60d](https://togithub.com/vitejs/vite/commit/606e60d)), closes
[#&#8203;10826](https://togithub.com/vitejs/vite/issues/10826)
- feat(ssr)!: remove dedupe and mode support for CJS
([#&#8203;11101](https://togithub.com/vitejs/vite/issues/11101))
([3090564](https://togithub.com/vitejs/vite/commit/3090564)), closes
[#&#8203;11101](https://togithub.com/vitejs/vite/issues/11101)
- feat: align object interface for `transformIndexHtml` hook
([#&#8203;9669](https://togithub.com/vitejs/vite/issues/9669))
([1db52bf](https://togithub.com/vitejs/vite/commit/1db52bf)), closes
[#&#8203;9669](https://togithub.com/vitejs/vite/issues/9669)
- feat(build): cleaner logs output
([#&#8203;10895](https://togithub.com/vitejs/vite/issues/10895))
([7d24b5f](https://togithub.com/vitejs/vite/commit/7d24b5f)), closes
[#&#8203;10895](https://togithub.com/vitejs/vite/issues/10895)
- feat(css): deprecate css default export
([#&#8203;11094](https://togithub.com/vitejs/vite/issues/11094))
([01dee1b](https://togithub.com/vitejs/vite/commit/01dee1b)), closes
[#&#8203;11094](https://togithub.com/vitejs/vite/issues/11094)
- feat(optimizer): support patch-package
([#&#8203;10286](https://togithub.com/vitejs/vite/issues/10286))
([4fb7ad0](https://togithub.com/vitejs/vite/commit/4fb7ad0)), closes
[#&#8203;10286](https://togithub.com/vitejs/vite/issues/10286)
- feat(build): Use kB in build reporter
([#&#8203;10982](https://togithub.com/vitejs/vite/issues/10982))
([b57acfa](https://togithub.com/vitejs/vite/commit/b57acfa)), closes
[#&#8203;10982](https://togithub.com/vitejs/vite/issues/10982)
- feat(css): upgrade postcss-modules
([#&#8203;10987](https://togithub.com/vitejs/vite/issues/10987))
([892916d](https://togithub.com/vitejs/vite/commit/892916d)), closes
[#&#8203;10987](https://togithub.com/vitejs/vite/issues/10987)
- feat(hmr): invalidate message
([#&#8203;10946](https://togithub.com/vitejs/vite/issues/10946))
([0d73473](https://togithub.com/vitejs/vite/commit/0d73473)), closes
[#&#8203;10946](https://togithub.com/vitejs/vite/issues/10946)
- feat(client): expose hot.prune API
([#&#8203;11016](https://togithub.com/vitejs/vite/issues/11016))
([f40c18d](https://togithub.com/vitejs/vite/commit/f40c18d)), closes
[#&#8203;11016](https://togithub.com/vitejs/vite/issues/11016)
- feat(hmr): deduplicate paths and join them with commas
([#&#8203;10891](https://togithub.com/vitejs/vite/issues/10891))
([967299a](https://togithub.com/vitejs/vite/commit/967299a)), closes
[#&#8203;10891](https://togithub.com/vitejs/vite/issues/10891)
- feat: base without trailing slash
([#&#8203;10723](https://togithub.com/vitejs/vite/issues/10723))
([8f87282](https://togithub.com/vitejs/vite/commit/8f87282)), closes
[#&#8203;10723](https://togithub.com/vitejs/vite/issues/10723)
- feat: handle static assets in case-sensitive manner
([#&#8203;10475](https://togithub.com/vitejs/vite/issues/10475))
([c1368c3](https://togithub.com/vitejs/vite/commit/c1368c3)), closes
[#&#8203;10475](https://togithub.com/vitejs/vite/issues/10475)
- feat(cli): build --profile
([#&#8203;10719](https://togithub.com/vitejs/vite/issues/10719))
([9c808cd](https://togithub.com/vitejs/vite/commit/9c808cd)), closes
[#&#8203;10719](https://togithub.com/vitejs/vite/issues/10719)
- feat(env): support dotenv-expand to contains process env
([#&#8203;10370](https://togithub.com/vitejs/vite/issues/10370))
([d5fe92c](https://togithub.com/vitejs/vite/commit/d5fe92c)), closes
[#&#8203;10370](https://togithub.com/vitejs/vite/issues/10370)
- feat!: set esbuild default charset to utf8
([#&#8203;10753](https://togithub.com/vitejs/vite/issues/10753))
([4caf4b6](https://togithub.com/vitejs/vite/commit/4caf4b6)), closes
[#&#8203;10753](https://togithub.com/vitejs/vite/issues/10753)
- feat: rollup 3
([#&#8203;9870](https://togithub.com/vitejs/vite/issues/9870))
([beb7166](https://togithub.com/vitejs/vite/commit/beb7166)), closes
[#&#8203;9870](https://togithub.com/vitejs/vite/issues/9870)

##### Bug Fixes

- fix: add `\0` to virtual files id
([#&#8203;11261](https://togithub.com/vitejs/vite/issues/11261))
([02cdfa9](https://togithub.com/vitejs/vite/commit/02cdfa9)), closes
[#&#8203;11261](https://togithub.com/vitejs/vite/issues/11261)
- fix: skip shortcuts on non-tty stdin
([#&#8203;11263](https://togithub.com/vitejs/vite/issues/11263))
([9602686](https://togithub.com/vitejs/vite/commit/9602686)), closes
[#&#8203;11263](https://togithub.com/vitejs/vite/issues/11263)
- fix(ssr): skip rewriting stack trace if it's already rewritten (fixes
[#&#8203;11037](https://togithub.com/vitejs/vite/issues/11037))
([#&#8203;11070](https://togithub.com/vitejs/vite/issues/11070))
([feb8ce0](https://togithub.com/vitejs/vite/commit/feb8ce0)), closes
[#&#8203;11037](https://togithub.com/vitejs/vite/issues/11037)
[#&#8203;11070](https://togithub.com/vitejs/vite/issues/11070)
- refactor(optimizer): await depsOptimizer.scanProcessing
([#&#8203;11251](https://togithub.com/vitejs/vite/issues/11251))
([fa64c8e](https://togithub.com/vitejs/vite/commit/fa64c8e)), closes
[#&#8203;11251](https://togithub.com/vitejs/vite/issues/11251)
- fix: improve CLI shortcuts help display
([#&#8203;11247](https://togithub.com/vitejs/vite/issues/11247))
([bb235b2](https://togithub.com/vitejs/vite/commit/bb235b2)), closes
[#&#8203;11247](https://togithub.com/vitejs/vite/issues/11247)
- fix: less promises for scanning and await with allSettled
([#&#8203;11245](https://togithub.com/vitejs/vite/issues/11245))
([45b170e](https://togithub.com/vitejs/vite/commit/45b170e)), closes
[#&#8203;11245](https://togithub.com/vitejs/vite/issues/11245)
- fix(optimizer): escape entrypoints when running scanner
([#&#8203;11250](https://togithub.com/vitejs/vite/issues/11250))
([b61894e](https://togithub.com/vitejs/vite/commit/b61894e)), closes
[#&#8203;11250](https://togithub.com/vitejs/vite/issues/11250)
- fix: await scanner
([#&#8203;11242](https://togithub.com/vitejs/vite/issues/11242))
([52a6732](https://togithub.com/vitejs/vite/commit/52a6732)), closes
[#&#8203;11242](https://togithub.com/vitejs/vite/issues/11242)
- fix(css): fix css lang regex
([#&#8203;11237](https://togithub.com/vitejs/vite/issues/11237))
([a55d0b3](https://togithub.com/vitejs/vite/commit/a55d0b3)), closes
[#&#8203;11237](https://togithub.com/vitejs/vite/issues/11237)
- fix: don't print urls on restart with default port
([#&#8203;11230](https://togithub.com/vitejs/vite/issues/11230))
([5aaecb6](https://togithub.com/vitejs/vite/commit/5aaecb6)), closes
[#&#8203;11230](https://togithub.com/vitejs/vite/issues/11230)
- fix: serialize bundleWorkerEntry
([#&#8203;11218](https://togithub.com/vitejs/vite/issues/11218))
([306bed0](https://togithub.com/vitejs/vite/commit/306bed0)), closes
[#&#8203;11218](https://togithub.com/vitejs/vite/issues/11218)
- fix(config): resolve dynamic import as esm
([#&#8203;11220](https://togithub.com/vitejs/vite/issues/11220))
([f8c1ed0](https://togithub.com/vitejs/vite/commit/f8c1ed0)), closes
[#&#8203;11220](https://togithub.com/vitejs/vite/issues/11220)
- fix(env): prevent env expand on process.env
([#&#8203;11213](https://togithub.com/vitejs/vite/issues/11213))
([d4a1e2b](https://togithub.com/vitejs/vite/commit/d4a1e2b)), closes
[#&#8203;11213](https://togithub.com/vitejs/vite/issues/11213)
- fix: add type for function localsConvention value
([#&#8203;11152](https://togithub.com/vitejs/vite/issues/11152))
([c9274b4](https://togithub.com/vitejs/vite/commit/c9274b4)), closes
[#&#8203;11152](https://togithub.com/vitejs/vite/issues/11152)
- fix: cacheDir should be ignored from watch
([#&#8203;10242](https://togithub.com/vitejs/vite/issues/10242))
([75dbca2](https://togithub.com/vitejs/vite/commit/75dbca2)), closes
[#&#8203;10242](https://togithub.com/vitejs/vite/issues/10242)
- fix: don't check .yarn/patches for computing dependencies hash
([#&#8203;11168](https://togithub.com/vitejs/vite/issues/11168))
([65bcccf](https://togithub.com/vitejs/vite/commit/65bcccf)), closes
[#&#8203;11168](https://togithub.com/vitejs/vite/issues/11168)
- fix: formatError() outside rollup context
([#&#8203;11156](https://togithub.com/vitejs/vite/issues/11156))
([2aee2eb](https://togithub.com/vitejs/vite/commit/2aee2eb)), closes
[#&#8203;11156](https://togithub.com/vitejs/vite/issues/11156)
- fix: Revert "fix: missing js sourcemaps with rewritten imports broke
debugging ([#&#8203;7767](https://togithub.com/vitejs/vite/issues/7767))
([#&#8203;9476](https://togithub.com/vitejs/vite/issues/9476))"
([#&#8203;11](https://togithub.com/vitejs/vite/issues/11)
([fdc6f3a](https://togithub.com/vitejs/vite/commit/fdc6f3a)), closes
[#&#8203;7767](https://togithub.com/vitejs/vite/issues/7767)
[#&#8203;9476](https://togithub.com/vitejs/vite/issues/9476)
[#&#8203;11144](https://togithub.com/vitejs/vite/issues/11144)
- fix: Dev SSR dep optimization + respect optimizeDeps.include
([#&#8203;11123](https://togithub.com/vitejs/vite/issues/11123))
([515caa5](https://togithub.com/vitejs/vite/commit/515caa5)), closes
[#&#8203;11123](https://togithub.com/vitejs/vite/issues/11123)
- fix: export preprocessCSS in CJS
([#&#8203;11067](https://togithub.com/vitejs/vite/issues/11067))
([793255d](https://togithub.com/vitejs/vite/commit/793255d)), closes
[#&#8203;11067](https://togithub.com/vitejs/vite/issues/11067)
- fix: glob import parsing
([#&#8203;10949](https://togithub.com/vitejs/vite/issues/10949))
([#&#8203;11056](https://togithub.com/vitejs/vite/issues/11056))
([ac2cfd6](https://togithub.com/vitejs/vite/commit/ac2cfd6)), closes
[#&#8203;10949](https://togithub.com/vitejs/vite/issues/10949)
[#&#8203;11056](https://togithub.com/vitejs/vite/issues/11056)
- fix: import.meta.env and process.env undefined variable replacement
(fix [#&#8203;8663](https://togithub.com/vitejs/vite/issues/8663))
([#&#8203;10958](https://togithub.com/vitejs/vite/issues/10958))
([3e0cd3d](https://togithub.com/vitejs/vite/commit/3e0cd3d)), closes
[#&#8203;8663](https://togithub.com/vitejs/vite/issues/8663)
[#&#8203;10958](https://togithub.com/vitejs/vite/issues/10958)
- fix: missing js sourcemaps with rewritten imports broke debugging
([#&#8203;7767](https://togithub.com/vitejs/vite/issues/7767))
([#&#8203;9476](https://togithub.com/vitejs/vite/issues/9476))
([3fa96f6](https://togithub.com/vitejs/vite/commit/3fa96f6)), closes
[#&#8203;7767](https://togithub.com/vitejs/vite/issues/7767)
[#&#8203;9476](https://togithub.com/vitejs/vite/issues/9476)
- fix: preserve default export from externalized packages (fixes
[#&#8203;10258](https://togithub.com/vitejs/vite/issues/10258))
([#&#8203;10406](https://togithub.com/vitejs/vite/issues/10406))
([88b001b](https://togithub.com/vitejs/vite/commit/88b001b)), closes
[#&#8203;10258](https://togithub.com/vitejs/vite/issues/10258)
[#&#8203;10406](https://togithub.com/vitejs/vite/issues/10406)
- fix: reset global regex before match
([#&#8203;11132](https://togithub.com/vitejs/vite/issues/11132))
([db8df14](https://togithub.com/vitejs/vite/commit/db8df14)), closes
[#&#8203;11132](https://togithub.com/vitejs/vite/issues/11132)
- fix(css): handle environment with browser globals
([#&#8203;11079](https://togithub.com/vitejs/vite/issues/11079))
([e92d025](https://togithub.com/vitejs/vite/commit/e92d025)), closes
[#&#8203;11079](https://togithub.com/vitejs/vite/issues/11079)
- fix(deps): update all non-major dependencies
([#&#8203;11091](https://togithub.com/vitejs/vite/issues/11091))
([073a4bf](https://togithub.com/vitejs/vite/commit/073a4bf)), closes
[#&#8203;11091](https://togithub.com/vitejs/vite/issues/11091)
- fix(esbuild): handle inline sourcemap option
([#&#8203;11120](https://togithub.com/vitejs/vite/issues/11120))
([4c85c0a](https://togithub.com/vitejs/vite/commit/4c85c0a)), closes
[#&#8203;11120](https://togithub.com/vitejs/vite/issues/11120)
- fix(importGlob): don't warn when CSS default import is not used
([#&#8203;11121](https://togithub.com/vitejs/vite/issues/11121))
([97f8b4d](https://togithub.com/vitejs/vite/commit/97f8b4d)), closes
[#&#8203;11121](https://togithub.com/vitejs/vite/issues/11121)
- fix(importGlob): preserve line count for sourcemap
([#&#8203;11122](https://togithub.com/vitejs/vite/issues/11122))
([14980a1](https://togithub.com/vitejs/vite/commit/14980a1)), closes
[#&#8203;11122](https://togithub.com/vitejs/vite/issues/11122)
- fix(importGlob): warn on default import css
([#&#8203;11103](https://togithub.com/vitejs/vite/issues/11103))
([fc0d9e3](https://togithub.com/vitejs/vite/commit/fc0d9e3)), closes
[#&#8203;11103](https://togithub.com/vitejs/vite/issues/11103)
- fix(plugin-vue): support scss/sass/less... hmr on custom template
languages (fix
[#&#8203;10677](https://togithub.com/vitejs/vite/issues/10677))
([#&#8203;10844](https://togithub.com/vitejs/vite/issues/10844))
([d413848](https://togithub.com/vitejs/vite/commit/d413848)), closes
[#&#8203;10677](https://togithub.com/vitejs/vite/issues/10677)
[#&#8203;10844](https://togithub.com/vitejs/vite/issues/10844)
- fix(ssr): preserve require for external node
([#&#8203;11057](https://togithub.com/vitejs/vite/issues/11057))
([1ec0176](https://togithub.com/vitejs/vite/commit/1ec0176)), closes
[#&#8203;11057](https://togithub.com/vitejs/vite/issues/11057)
- fix(worker): disable build reporter plugin when bundling worker
([#&#8203;11058](https://togithub.com/vitejs/vite/issues/11058))
([7b72069](https://togithub.com/vitejs/vite/commit/7b72069)), closes
[#&#8203;11058](https://togithub.com/vitejs/vite/issues/11058)
- fix!: make `NODE_ENV` more predictable
([#&#8203;10996](https://togithub.com/vitejs/vite/issues/10996))
([8148af7](https://togithub.com/vitejs/vite/commit/8148af7)), closes
[#&#8203;10996](https://togithub.com/vitejs/vite/issues/10996)
- fix(config)!: support development build
([#&#8203;11045](https://togithub.com/vitejs/vite/issues/11045))
([8b3d656](https://togithub.com/vitejs/vite/commit/8b3d656)), closes
[#&#8203;11045](https://togithub.com/vitejs/vite/issues/11045)
- refactor: use function to eval worker and glob options
([#&#8203;10999](https://togithub.com/vitejs/vite/issues/10999))
([f4c1264](https://togithub.com/vitejs/vite/commit/f4c1264)), closes
[#&#8203;10999](https://togithub.com/vitejs/vite/issues/10999)
- refactor(client): simplify fetchUpdate code
([#&#8203;11004](https://togithub.com/vitejs/vite/issues/11004))
([f777b55](https://togithub.com/vitejs/vite/commit/f777b55)), closes
[#&#8203;11004](https://togithub.com/vitejs/vite/issues/11004)
- fix(html): transform relative path with long base in /index.html
([#&#8203;10990](https://togithub.com/vitejs/vite/issues/10990))
([752740c](https://togithub.com/vitejs/vite/commit/752740c)), closes
[#&#8203;10990](https://togithub.com/vitejs/vite/issues/10990)
- fix(mpa): support mpa fallback
([#&#8203;10985](https://togithub.com/vitejs/vite/issues/10985))
([61165f0](https://togithub.com/vitejs/vite/commit/61165f0)), closes
[#&#8203;10985](https://togithub.com/vitejs/vite/issues/10985)
- feat: align default chunk and asset file names with rollup
([#&#8203;10927](https://togithub.com/vitejs/vite/issues/10927))
([cc2adb3](https://togithub.com/vitejs/vite/commit/cc2adb3)), closes
[#&#8203;10927](https://togithub.com/vitejs/vite/issues/10927)
- fix: make `addWatchFile()` work (fix
[#&#8203;7024](https://togithub.com/vitejs/vite/issues/7024))
([#&#8203;9723](https://togithub.com/vitejs/vite/issues/9723))
([34db08b](https://togithub.com/vitejs/vite/commit/34db08b)), closes
[#&#8203;7024](https://togithub.com/vitejs/vite/issues/7024)
[#&#8203;9723](https://togithub.com/vitejs/vite/issues/9723)
- fix(config): exclude config.assetsInclude empty array
([#&#8203;10941](https://togithub.com/vitejs/vite/issues/10941))
([18c71dc](https://togithub.com/vitejs/vite/commit/18c71dc)), closes
[#&#8203;10941](https://togithub.com/vitejs/vite/issues/10941)
- fix(ssr): skip optional peer dep resolve
([#&#8203;10593](https://togithub.com/vitejs/vite/issues/10593))
([0a69985](https://togithub.com/vitejs/vite/commit/0a69985)), closes
[#&#8203;10593](https://togithub.com/vitejs/vite/issues/10593)
- perf: regexp perf issues, refactor regexp stylistic issues
([#&#8203;10905](https://togithub.com/vitejs/vite/issues/10905))
([fc007df](https://togithub.com/vitejs/vite/commit/fc007df)), closes
[#&#8203;10905](https://togithub.com/vitejs/vite/issues/10905)
- refactor: move CSS emitFile logic closer to rollup
([#&#8203;10909](https://togithub.com/vitejs/vite/issues/10909))
([92a206b](https://togithub.com/vitejs/vite/commit/92a206b)), closes
[#&#8203;10909](https://togithub.com/vitejs/vite/issues/10909)
- refactor: use rollup hashing when emitting assets
([#&#8203;10878](https://togithub.com/vitejs/vite/issues/10878))
([78c77be](https://togithub.com/vitejs/vite/commit/78c77be)), closes
[#&#8203;10878](https://togithub.com/vitejs/vite/issues/10878)
- fix: don't throw on malformed URLs
([#&#8203;10901](https://togithub.com/vitejs/vite/issues/10901))
([feb9b10](https://togithub.com/vitejs/vite/commit/feb9b10)), closes
[#&#8203;10901](https://togithub.com/vitejs/vite/issues/10901)
- fix: gracefully handle forbidden filesystem access
([#&#8203;10793](https://togithub.com/vitejs/vite/issues/10793))
([92637a2](https://togithub.com/vitejs/vite/commit/92637a2)), closes
[#&#8203;10793](https://togithub.com/vitejs/vite/issues/10793)
- fix(types): remove `null` from `CSSModulesOptions.localsConvention`
([#&#8203;10904](https://togithub.com/vitejs/vite/issues/10904))
([a9978dd](https://togithub.com/vitejs/vite/commit/a9978dd)), closes
[#&#8203;10904](https://togithub.com/vitejs/vite/issues/10904)
- refactor(types)!: remove facade type files
([#&#8203;10903](https://togithub.com/vitejs/vite/issues/10903))
([a309058](https://togithub.com/vitejs/vite/commit/a309058)), closes
[#&#8203;10903](https://togithub.com/vitejs/vite/issues/10903)
- fix: inconsistent handling of non-ASCII `base` in `resolveConfig` and
dev server
([#&#8203;10247](https://togithub.com/vitejs/vite/issues/10247))
([16e4123](https://togithub.com/vitejs/vite/commit/16e4123)), closes
[#&#8203;10247](https://togithub.com/vitejs/vite/issues/10247)
- fix: prevent cache on optional package resolve
([#&#8203;10812](https://togithub.com/vitejs/vite/issues/10812))
([c599a2e](https://togithub.com/vitejs/vite/commit/c599a2e)), closes
[#&#8203;10812](https://togithub.com/vitejs/vite/issues/10812)
- fix: relocated logger to respect config.
([#&#8203;10787](https://togithub.com/vitejs/vite/issues/10787))
([52e64eb](https://togithub.com/vitejs/vite/commit/52e64eb)), closes
[#&#8203;10787](https://togithub.com/vitejs/vite/issues/10787)
- fix: throw missing name error only when 'umd' or 'iife' are used
([#&#8203;9886](https://togithub.com/vitejs/vite/issues/9886))
([b8aa825](https://togithub.com/vitejs/vite/commit/b8aa825)), closes
[#&#8203;9886](https://togithub.com/vitejs/vite/issues/9886)
- fix(deps): update all non-major dependencies
([#&#8203;10804](https://togithub.com/vitejs/vite/issues/10804))
([f686afa](https://togithub.com/vitejs/vite/commit/f686afa)), closes
[#&#8203;10804](https://togithub.com/vitejs/vite/issues/10804)
- fix(ssr): improve missing file error
([#&#8203;10880](https://togithub.com/vitejs/vite/issues/10880))
([5451a34](https://togithub.com/vitejs/vite/commit/5451a34)), closes
[#&#8203;10880](https://togithub.com/vitejs/vite/issues/10880)

##### Previous Changelogs

#####
[4.0.0-beta.7](https://togithub.com/vitejs/vite/compare/v4.0.0-beta.6....v4.0.0-beta.7)
(2022-12-08)

See [4.0.0-beta.7
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-beta.0/packages/vite/CHANGELOG.md)

#####
[4.0.0-beta.6](https://togithub.com/vitejs/vite/compare/v4.0.0-beta.5....v4.0.0-beta.6)
(2022-12-08)

See [4.0.0-beta.6
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-beta.0/packages/vite/CHANGELOG.md)

#####
[4.0.0-beta.5](https://togithub.com/vitejs/vite/compare/v4.0.0-beta.4....v4.0.0-beta.5)
(2022-12-08)

See [4.0.0-beta.5
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-beta.0/packages/vite/CHANGELOG.md)

#####
[4.0.0-beta.4](https://togithub.com/vitejs/vite/compare/v4.0.0-beta.3....v4.0.0-beta.4)
(2022-12-07)

See [4.0.0-beta.4
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-beta.0/packages/vite/CHANGELOG.md)

#####
[4.0.0-beta.3](https://togithub.com/vitejs/vite/compare/v4.0.0-beta.2....v4.0.0-beta.3)
(2022-12-07)

See [4.0.0-beta.3
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-beta.0/packages/vite/CHANGELOG.md)

#####
[4.0.0-beta.2](https://togithub.com/vitejs/vite/compare/v4.0.0-beta.1....v4.0.0-beta.2)
(2022-12-07)

See [4.0.0-beta.2
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-beta.0/packages/vite/CHANGELOG.md)

#####
[4.0.0-beta.1](https://togithub.com/vitejs/vite/compare/v4.0.0-beta.0....v4.0.0-beta.1)
(2022-12-06)

See [4.0.0-beta.1
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-beta.0/packages/vite/CHANGELOG.md)

#####
[4.0.0-beta.0](https://togithub.com/vitejs/vite/compare/v4.0.0-alpha.6....v4.0.0-beta.0)
(2022-12-05)

See [4.0.0-beta.0
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-beta.0/packages/vite/CHANGELOG.md)

#####
[4.0.0-alpha.6](https://togithub.com/vitejs/vite/compare/v4.0.0-alpha.5....v4.0.0-alpha.6)
(2022-11-30)

See [4.0.0-alpha.6
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-alpha.6/packages/vite/CHANGELOG.md)

#####
[4.0.0-alpha.5](https://togithub.com/vitejs/vite/compare/v4.0.0-alpha.5....v4.0.0-alpha.5)
(2022-11-22)

See [4.0.0-alpha.5
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-alpha.5/packages/vite/CHANGELOG.md)

#####
[4.0.0-alpha.4](https://togithub.com/vitejs/vite/compare/v4.0.0-alpha.3....v4.0.0-alpha.4)
(2022-11-17)

See [4.0.0-alpha.4
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-alpha.4/packages/vite/CHANGELOG.md)

#####
[4.0.0-alpha.3](https://togithub.com/vitejs/vite/compare/v4.0.0-alpha.2....v4.0.0-alpha.3)
(2022-11-15)

See [4.0.0-alpha.3
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-alpha.3/packages/vite/CHANGELOG.md)

#####
[4.0.0-alpha.2](https://togithub.com/vitejs/vite/compare/v4.0.0-alpha.1....v4.0.0-alpha.2)
(2022-11-13)

See [4.0.0-alpha.2
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-alpha.2/packages/vite/CHANGELOG.md)

#####
[4.0.0-alpha.1](https://togithub.com/vitejs/vite/compare/v4.0.0-alpha.0....v4.0.0-alpha.1)
(2022-11-12)

See [4.0.0-alpha.1
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-alpha.1/packages/vite/CHANGELOG.md)

#####
[4.0.0-alpha.0](https://togithub.com/vitejs/vite/compare/v3.2.5....v4.0.0-alpha.0)
(2022-11-07)

See [4.0.0-alpha.0
changelog](https://togithub.com/vitejs/vite/blob/v4.0.0-alpha.0/packages/vite/CHANGELOG.md)

</details>

---

### Configuration

📅 **Schedule**: 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**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->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/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC43NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNzQuMiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-12-29 08:38:43 +01:00
.do
.github fix: allow publish-new-version action to run from branch (#2698) 2022-12-15 09:25:44 +01:00
.husky
coverage
docker
docs/api/oas
examples
frontend chore(deps): update dependency vite to v4 (#2773) 2022-12-29 08:38:43 +01:00
perf
scripts chore(deps): update dpage/pgadmin4 docker tag to v6.18 (#2761) 2022-12-28 09:13:38 +01:00
src Fix crashing search bars (#2765) 2022-12-28 12:35:27 +02:00
website fix(deps): update dependency docusaurus-plugin-openapi-docs to v1.5.0 (#2763) 2022-12-29 00:04:18 +00:00
.dockerignore
.editorconfig
.eslintignore
.eslintrc
.gitignore
.lycheeignore
.node-version chore(deps): update node.js to v14.21.2 (#2750) 2022-12-27 18:50:28 +00:00
.nvmrc
.prettierignore
app.json
CHANGELOG.md
CODE_OF_CONDUCT.md
CONTRIBUTING.md
docker-compose.yml fix: move docker-compose to this repo (#2666) 2022-12-12 20:40:18 +01:00
Dockerfile
LICENSE
package.json chore(deps): update dependency tsc-watch to v6 (#2771) 2022-12-28 16:27:48 +01:00
README.md Make build badge work correctly (#2710) 2022-12-19 11:23:07 +02:00
renovate.json
tsconfig.json
yarn.lock chore(deps): update dependency tsc-watch to v6 (#2771) 2022-12-28 16:27:48 +01:00

🚀 Unleash 4.16 brings powerful Constraints feature to OSS users. Read more →

The Unleash website

Build and Tests Coverage Status Docker Pulls Apache-2.0 license Join Unleash on Slack

Open Live Demo →

About Unleash

Unleash is an open source feature management solution. It improves the workflow of your development team and leads to quicker software delivery. Unleash increases efficiency and gives teams full control of how and when they enable new functionality for end users. Unleash lets teams ship code to production in smaller releases whenever they want.

Feature toggles make it easy to test how your code works with real production data without the fear that you'll accidentally break your users' experience. It also helps your team work on multiple features in parallel without each maintaining an separate feature branch.

Unleash is the largest open source solution for feature flagging on GitHub. There's 12 official client and server SDKs and 10+ community SDKs available; you can even make your own if you want to. You can use Unleash with any language and any framework.


Get started in 2 steps

1. Start Unleash

With git and docker installed, it's easy to get started:

Run this script:

git clone git@github.com:Unleash/unleash.git
cd unleash
docker compose up -d

Then point your browser to localhost:4242 and log in using:

  • username: admin
  • password: unleash4all

If you'd rather run the source code in this repo directly via Node.js, see the step-by-step instructions to get up and running in the contributing guide.

2. Connect your SDK

Find your preferred SDK in our list of official SDKs and import it into your project. Follow the setup guides for your specific SDK.

If you use the docker compose file from the previous step, here's the configuration details you'll need to get going:

  • For front-end SDKs, use:
    • URL: http://localhost:4242/api/frontend/
    • clientKey: default:development.unleash-insecure-frontend-api-token
  • For server-side SDKs, use:
    • Unleash API URL: http://localhost:4242/api/
    • API token: default:development.unleash-insecure-api-token

If you use a different setup, your configuration details will most likely also be different.

Check a feature toggle

Checking the state of a feature toggle in your code is easy! The syntax will vary depending on your language, but all you need is a simple function call to check whether a toggle is available. Here's how it might look in Java:

if (unleash.isEnabled("AwesomeFeature")) {
  // do new, flashy thing
} else {
  // do old, boring stuff
}

Run Unleash on a service?

If you don't want to run Unleash locally, we also provide easy deployment setups for Heroku and Digital Ocean:

Deploy to Heroku Deploy to DigitalOcean

Configure and run Unleash anywhere

The above sections show you how to get up and running quickly and easily. When you're ready to start configuring and customizing Unleash for your own environment, check out the documentation for getting started with self-managed deployments, Unleash configuration options, or running Unleash locally via docker.


Online demo

Try out the Unleash online demo.

The Unleash online demo


Community and help — sharing is caring

We know that learning a new tool can be hard and time-consuming. We have a growing community that loves to help out. Please don't hesitate to reach out for help.

Join Unleash on Slack

💬 Join Unleash on Slack if you want ask open questions about Unleash, feature toggling or discuss these topics in general.

💻 Create a GitHub issue if you have found a bug or have ideas on how to improve Unleash.

📚 Visit the documentation for more in-depth descriptions, how-to guides, and more.


Contribute to Unleash

Building Unleash is a collaborative effort, and we owe a lot of gratitude to many smart and talented individuals. Building it together with community ensures that we build a product that solves real problems for real people. We'd love to have your help too: Please feel free to open issues or provide pull requests.

Check out the CONTRIBUTING.md file for contribution guidelines and the Unleash developer guide for tips on environment setup, running the tests, and running Unleash from source.

Contributors

The Unleash contributors


Features our users love

Flexibility and adaptability

Security and performance

  • Privacy by design (GDPR and Schrems II). End-user data never leaves your application.
  • Audit logs
  • Enforce OWASP's secure headers via the strict HTTPS-only mode
  • Flexible hosting options: host it on premise or in the cloud (any cloud)
  • Scale the Unleash Proxy independently of the Unleash server to support any number of front-end clients without overloading your Unleash instance

Looking for more features?

If you're looking for one of the following features, please take a look at our Pro and Enterprise plans:


Architecture

Read more in the system overview section of the Unleash documentation.


Unleash SDKs

To connect your application to Unleash you'll need to use a client SDK for your programming language.

Official server-side SDKs:

Official front-end SDKs:

The front-end SDKs connects via the Unleash Proxy in order to ensure privacy, scalability and security.

Community SDKs:

If none of the official SDKs fit your need, there's also a number of community-developed SDKs where you might find an implementation for your preferred language (such as Elixir, Dart, Clojure, and more).


Users of Unleash

Unleash is trusted by thousands of companies all over the world.

Proud Open-Source users: (send us a message if you want to add your logo here)

The Unleash logo encircled by logos for Finn.no, nav (the Norwegian Labour and Welfare Administration), Budgets, Otovo, and Amedia. The encircling logos are all connected to the Unleash logo.


Migration guides

Unleash has evolved significantly over the past few years, and we know how hard it can be to keep software up to date. If you're using the current major version, upgrading shouldn't be an issue. If you're on a previous major version, check out the Unleash migration guide!


Want to know more about Unleash?

Videos and podcasts

Articles and more