Update dependency esbuild to v0.18.17 #251
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.18.15
->0.18.17
Release Notes
evanw/esbuild (esbuild)
v0.18.17
Compare Source
Support
An+B
syntax and:nth-*()
pseudo-classes in CSSThis adds support for the
:nth-child()
,:nth-last-child()
,:nth-of-type()
, and:nth-last-of-type()
pseudo-classes to esbuild, which has the following consequences:An+B
syntax is now parsed, so parse errors are now reportedAn+B
values inside these pseudo-classes are now pretty-printed (e.g. a leading+
will be stripped because it's not in the AST)An+B
values are reduced to equivalent but shorter forms (e.g.2n+0
=>2n
,2n+1
=>odd
)of
clause are now detected (e.g. in:nth-child(2n of :local(.foo))
the namefoo
is now renamed)Adjust CSS nesting parser for IE7 hacks (#3272)
This fixes a regression with esbuild's treatment of IE7 hacks in CSS. CSS nesting allows selectors to be used where declarations are expected. There's an IE7 hack where prefixing a declaration with a
*
causes that declaration to only be applied in IE7 due to a bug in IE7's CSS parser. However, it's valid for nested CSS selectors to start with*
. So esbuild was incorrectly parsing these declarations and anything following it up until the next{
as a selector for a nested CSS rule. This release changes esbuild's parser to terminate the parsing of selectors for nested CSS rules when a;
is encountered to fix this edge case:Note that the syntax for CSS nesting is about to change again, so esbuild's CSS parser may still not be completely accurate with how browsers do and/or will interpret CSS nesting syntax. Expect additional updates to esbuild's CSS parser in the future to deal with upcoming CSS specification changes.
Adjust esbuild's warning about undefined imports for TypeScript
import
equals declarations (#3271)In JavaScript, accessing a missing property on an import namespace object is supposed to result in a value of
undefined
at run-time instead of an error at compile-time. This is something that esbuild warns you about by default because doing this can indicate a bug with your code. For example:If you bundle
app.js
with esbuild you will get this:However, there is TypeScript-only syntax for
import
equals declarations that can represent either a type import (which esbuild should ignore) or a value import (which esbuild should respect). Since esbuild doesn't have a type system, it tries to only respectimport
equals declarations that are actually used as values. Previously esbuild always generated this warning for unused imports referenced withinimport
equals declarations even when the reference could be a type instead of a value. Starting with this release, esbuild will now only warn in this case if the import is actually used. Here is an example of some code that no longer causes an incorrect warning:v0.18.16
Compare Source
Fix a regression with whitespace inside
:is()
(#3265)The change to parse the contents of
:is()
in version 0.18.14 introduced a regression that incorrectly flagged the contents as a syntax error if the contents started with a whitespace token (for examplediv:is( .foo ) {}
). This regression has been fixed.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.
This PR has been generated by Mend Renovate. View repository job log here.