[Security] Bump esbuild, laravel-vite-plugin and vite
Bumps esbuild to 0.25.12 and updates ancestor dependencies esbuild, laravel-vite-plugin and vite. These dependencies need to be updated together.
Updates esbuild from 0.20.2 to 0.25.12 This update includes a security fix.
Vulnerabilities fixed
esbuild enables any website to send any requests to the development server and read the response
Summary
esbuild allows any websites to send any request to the development server and read the response due to default CORS settings.
Details
esbuild sets
Access-Control-Allow-Origin: *header to all requests, including the SSE connection, which allows any websites to send any request to the development server and read the response.https://github.com/evanw/esbuild/blob/df815ac27b84f8b34374c9182a93c94718f8a630/pkg/api/serve_other.go#L121
https://github.com/evanw/esbuild/blob/df815ac27b84f8b34374c9182a93c94718f8a630/pkg/api/serve_other.go#L363Attack scenario:
- The attacker serves a malicious web page (
http://malicious.example.com).- The user accesses the malicious web page.
- The attacker sends a
fetch('http://127.0.0.1:8000/main.js')request by JS in that malicious web page. This request is normally blocked by same-origin policy, but that's not the case for the reasons above.- The attacker gets the content of
http://127.0.0.1:8000/main.js.In this scenario, I assumed that the attacker knows the URL of the bundle output file name. But the attacker can also get that information by
... (truncated)
Patched versions: 0.25.0
Affected versions: <= 0.24.2
Release notes
Sourced from esbuild's releases.
v0.25.12
Fix a minification regression with CSS media queries (#4315)
The previous release introduced support for parsing media queries which unintentionally introduced a regression with the removal of duplicate media rules during minification. Specifically the grammar for
@media <media-type> and <media-condition-without-or> { ... }was missing an equality check for the<media-condition-without-or>part, so rules with different suffix clauses in this position would incorrectly compare equal and be deduplicated. This release fixes the regression.Update the list of known JavaScript globals (#4310)
This release updates esbuild's internal list of known JavaScript globals. These are globals that are known to not have side-effects when the property is accessed. For example, accessing the global
Arrayproperty is considered to be side-effect free but accessing the globalscrollYproperty can trigger a layout, which is a side-effect. This is used by esbuild's tree-shaking to safely remove unused code that is known to be side-effect free. This update adds the following global properties:From ES2017:
AtomicsSharedArrayBufferFrom ES2020:
BigInt64ArrayBigUint64ArrayFrom ES2021:
FinalizationRegistryWeakRefFrom ES2025:
Float16ArrayIteratorNote that this does not indicate that constructing any of these objects is side-effect free, just that accessing the identifier is side-effect free. For example, this now allows esbuild to tree-shake classes that extend from
Iterator:// This can now be tree-shaken by esbuild: class ExampleIterator extends Iterator {}Add support for the new
@view-transitionCSS rule (#4313)With this release, esbuild now has improved support for pretty-printing and minifying the new
@view-transitionrule (which esbuild was previously unaware of):/* Original code */ @view-transition { navigation: auto; types: check; } /* Old output */ @view-transition { navigation: auto; types: check; } /* New output */ @view-transition { navigation: auto; types: check;
... (truncated)
Changelog
Sourced from esbuild's changelog.
Changelog: 2024
This changelog documents all esbuild versions published in the year 2024 (versions 0.19.12 through 0.24.2).
0.24.2
Fix regression with
--defineandimport.meta(#4010, #4012, #4013)The previous change in version 0.24.1 to use a more expression-like parser for
definevalues to allow quoted property names introduced a regression that removed the ability to use--define:import.meta=.... Even thoughimportis normally a keyword that can't be used as an identifier, ES modules special-case theimport.metaexpression to behave like an identifier anyway. This change fixes the regression.This fix was contributed by
@sapphi-red.0.24.1
Allow
es2024as a target intsconfig.json(#4004)TypeScript recently added
es2024as a compilation target, so esbuild now supports this in thetargetfield oftsconfig.jsonfiles, such as in the following configuration file:{ "compilerOptions": { "target": "ES2024" } }As a reminder, the only thing that esbuild uses this field for is determining whether or not to use legacy TypeScript behavior for class fields. You can read more in the documentation.
This fix was contributed by
@billyjanitsch.Allow automatic semicolon insertion after
get/setThis change fixes a grammar bug in the parser that incorrectly treated the following code as a syntax error:
class Foo { get *x() {} set *y() {} }The above code will be considered valid starting with this release. This change to esbuild follows a similar change to TypeScript which will allow this syntax starting with TypeScript 5.7.
Allow quoted property names in
--defineand--pure(#4008)The
defineandpureAPI options now accept identifier expressions containing quoted property names. Previously all identifiers in the identifier expression had to be bare identifiers. This change now makes--defineand--pureconsistent with--global-name, which already supported quoted property names. For example, the following is now possible:
... (truncated)
Commits
-
208f539publish 0.25.12 to npm -
5f03afdupdate release notes -
6b2ee78minify: remove css rules containing empty:is() -
f361debadd some additional known static methods -
07aa646automatically mark "RegExp.escape()" calls as pure -
9039c46simplify some call expression checks -
188944dadd some additional known static methods -
d3c67f9fix #4310: addIteratorand other known globals -
4a51f0bfix: escape dev server breadcrumb hrefs properly (#4316) -
26b29edfix #4315:@mediadeduplication bug edge case - Additional commits viewable in compare view
Updates laravel-vite-plugin from 1.0.2 to 1.3.0
Release notes
Sourced from laravel-vite-plugin's releases.
v1.3.0
- Use rollup types from Vite by
@sapphi-redin laravel/vite-plugin#325v1.2.0
- [1.x] Fix Invalid URL issue with Vite 6.0.9 by
@batinmustuin laravel/vite-plugin#317- [1.x] Add default CORS origins by
@timacdonaldin laravel/vite-plugin#318v1.1.1
- [1.1] Fix dependency issue with Vite 5 by
@jessarcherin laravel/vite-plugin#313v1.1.0
- Upgrade to Vite 6 by
@timacdonaldin laravel/vite-plugin#310v1.0.6
- Replace dead link in Security Policy by
@Jubekiin laravel/vite-plugin#300- Look for certificates in valet linux config directory by
@jameshulsein laravel/vite-plugin#307v1.0.5
- TypeScript: define entrypoints using object by
@tylerlwsmithin laravel/vite-plugin#298v1.0.4
- Include base in hotFile without modifying server.origin replacement by
@danielztolnaiin laravel/vite-plugin#296v1.0.3
- Append base to hot file by
@timacdonaldin laravel/vite-plugin#290- Support Laravel Herd for windows by
@mozexin laravel/vite-plugin#293
Changelog
Sourced from laravel-vite-plugin's changelog.
v1.3.0 - 2025-06-03
- Use rollup types from Vite by
@sapphi-redin laravel/vite-plugin#325v1.2.0 - 2025-01-21
- [1.x] Fix Invalid URL issue with Vite 6.0.9 by
@batinmustuin laravel/vite-plugin#317- [1.x] Add default CORS origins by
@timacdonaldin laravel/vite-plugin#318v1.1.1 - 2024-12-03
- [1.1] Fix dependency issue with Vite 5 by
@jessarcherin laravel/vite-plugin#313v1.1.0 - 2024-12-02
- Upgrade to Vite 6 by
@timacdonaldin laravel/vite-plugin#310v1.0.6 - 2024-11-12
- Replace dead link in Security Policy by
@Jubekiin laravel/vite-plugin#300- Look for certificates in valet linux config directory by
@jameshulsein laravel/vite-plugin#307v1.0.5 - 2024-07-09
- TypeScript: define entrypoints using object by
@tylerlwsmithin laravel/vite-plugin#298v1.0.4 - 2024-05-17
- Include base in hotFile without modifying server.origin replacement by
@danielztolnaiin laravel/vite-plugin#296v1.0.3 - 2024-05-16
- Append base to hot file by
@timacdonaldin laravel/vite-plugin#290- Support Laravel Herd for windows by
@mozexin laravel/vite-plugin#293
Commits
-
9d835feversion -
aa697cdUse rollup types from Vite (#325) -
c0c82caComment on duplicated regex -
6dbbe25chore: Updateupdate-changelog.yml -
4e3e0b1Update CHANGELOG -
0201f3f1.2.0 -
b3a3abf[1.x] Add default CORS origins (#318) -
1501f5c[1.x] Fix Invalid URL issue with Vite 6.0.9 (#317) -
e57a940Update CHANGELOG -
b91e2051.1.1 - Additional commits viewable in compare view
Updates vite from 5.2.11 to 7.2.6
Release notes
Sourced from vite's releases.
create-vite@7.1.3
Please refer to CHANGELOG.md for details.
create-vite@7.1.2
Please refer to CHANGELOG.md for details.
create-vite@7.1.1
Please refer to CHANGELOG.md for details.
create-vite@7.1.0
Please refer to CHANGELOG.md for details.
create-vite@7.0.3
Please refer to CHANGELOG.md for details.
create-vite@7.0.2
Please refer to CHANGELOG.md for details.
create-vite@7.0.1
Please refer to CHANGELOG.md for details.
create-vite@7.0.0
Please refer to CHANGELOG.md for details.
create-vite@6.5.0
Please refer to CHANGELOG.md for details.
create-vite@6.4.1
Please refer to CHANGELOG.md for details.
create-vite@6.4.0
Please refer to CHANGELOG.md for details.
Changelog
Sourced from vite's changelog.
7.2.6 (2025-12-01)
7.2.5 (2025-12-01)
Bug Fixes
- config: handle shebang properly (#21158) (df5a30d)
- deps: update all non-major dependencies (#21146) (a3cd262)
- deps: update all non-major dependencies (#21175) (72e398a)
- fix
external: truemerging (#21164) (5ef557a)- shortcuts not rebound after server restart (#21166) (3765f7b)
Performance Improvements
Documentation
Miscellaneous Chores
7.2.4 (2025-11-20)
Bug Fixes
7.2.3 (2025-11-20)
Bug Fixes
- allow multiple
bindCLIShortcutscalls with shortcut merging (#21103) (5909efd)- deps: update all non-major dependencies (#21096) (6a34ac3)
- deps: update all non-major dependencies (#21128) (4f8171e)
Performance Improvements
Miscellaneous Chores
- deps: update dependency
@rollup/plugin-commonjsto v29 (#21099) (02ceaec)- deps: update rolldown-related dependencies (#21095) (39a0a15)
- deps: update rolldown-related dependencies (#21127) (5029720)
7.2.2 (2025-11-07)
Bug Fixes
7.2.1 (2025-11-06)
... (truncated)
Commits
-
bda5dbbrelease: v7.2.6 -
3aa7527release: v7.2.5 -
72e398afix(deps): update all non-major dependencies (#21175) -
3765f7bfix: shortcuts not rebound after server restart (#21166) -
5ef557afix: fixexternal: truemerging (#21164) -
74559c9chore(deps): update rolldown-related dependencies (#21174) -
df5a30dfix(config): handle shebang properly (#21158) -
a3cd262fix(deps): update all non-major dependencies (#21146) -
46d3077docs: clarify manifest.jsonimportsfield is JS chunks only (#21136) -
203a551perf(deps): replace debug with obug (#21137) - Additional commits viewable in compare view
Maintainer changes
This version was pushed to npm by [GitHub Actions](https://www.npmjs.com/~GitHub Actions), a new releaser for vite since your current version.