Correct this in field and accessor decorators (#3761)
This release changes the value of this in initializers for class field and accessor decorators from the module-level this value to the appropriate this value for the decorated element (either the class or the instance). It was previously incorrect due to lack of test coverage. Here's an example of a decorator that doesn't work without this change:
const dec = () => function() { this.bar = true }
class Foo { @dec static foo }
console.log(Foo.bar) // Should be "true"
TypeScript recently added es2023 as a compilation target, so esbuild now supports this too. There is no difference between a target of es2022 and es2023 as far as esbuild is concerned since the 2023 edition of JavaScript doesn't introduce any new syntax features.
The previous release introduced a regression with the --keep-names setting and object literals with get/set accessor methods, in which case the generated code contained syntax errors. This release fixes the regression:
// Original code
x = { get y() {} }
// Output from version 0.21.0 (with --keep-names)
x = { get y: /* @PURE */ __name(function() {
}, "y") };
// Output from this version (with --keep-names)
x = { get y() {
} };
v0.21.0
This release doesn't contain any deliberately-breaking changes. However, it contains a very complex new feature and while all of esbuild's tests pass, I would not be surprised if an important edge case turns out to be broken. So I'm releasing this as a breaking change release to avoid causing any trouble. As usual, make sure to test your code when you upgrade.
Implement the JavaScript decorators proposal (#104)
With this release, esbuild now contains an implementation of the upcoming JavaScript decorators proposal. This is the same feature that shipped in TypeScript 5.0 and has been highly-requested on esbuild's issue tracker. You can read more about them in that blog post and in this other (now slightly outdated) extensive blog post here: https://2ality.com/2022/10/javascript-decorators.html. Here's a quick example:
const log = (fn, context) => function() {
console.log(`before ${context.name}`)
const it = fn.apply(this, arguments)
console.log(`after ${context.name}`)
return it
}
This is a prerelease version to test our ability to release.
Other than removing or updating dependencies, it contains no intended user-facing changes.
Bumps the dependencies group with 14 updates in the / directory:
20.10.6
20.12.11
1.85.0
1.89.0
2.3.8
2.3.9
2.22.0
2.26.1
5.0.0
5.1.1
0.19.11
0.21.2
43.0.0
43.0.1
10.3.10
10.3.15
10.2.0
10.4.0
2.0.1
2.0.2
3.1.1
3.2.5
16.2.0
16.3.0
5.3.3
5.4.5
3.10.0
3.11.0
Updates
@types/node
from 20.10.6 to 20.12.11Commits
Updates
@types/vscode
from 1.85.0 to 1.89.0Commits
Updates
@vscode/test-electron
from 2.3.8 to 2.3.9Changelog
Sourced from
@vscode/test-electron
's changelog.Commits
Updates
@vscode/vsce
from 2.22.0 to 2.26.1Release notes
Sourced from
@vscode/vsce
's releases.... (truncated)
Commits
9316842
Merge pull request #974 from microsoft/benibenj/modest-dragonfly093d33f
Merge pull request #973 from microsoft/benibenj/hon-guineafowlc1ced1d
:lipstick:dd558a9
Remove double checkingf6eb247
:lipstick:b1bde5a
Only sanitize on windows9e06c04
:lipstick:1188664
Commit message enclose in quotes97f8b80
:lipstick:434754f
Remove unused shell-quoteUpdates
chai
from 5.0.0 to 5.1.1Release notes
Sourced from chai's releases.
Commits
37263c0
fix: support some virtual contexts intoThrow
(#1609)91e58ed
Correct Mocha import instructions (#1611)61159d1
build(deps-dev): bump ip from 1.1.8 to 1.1.9 (#1608)8475d2a
Set up ESLint for JSDoc comments (#1605)936c0ca
5.1.02cf92f5
Fix publish script (#1602)1ba37b5
Set support in same members (#1583)f224339
Assert interface fix (#1601)d504573
Implementiterable
assertion (#1592)640d932
Convert comments in "legal comments" format to jsdoc (#1598)Updates
esbuild
from 0.19.11 to 0.21.2Release notes
Sourced from esbuild's releases.
... (truncated)
Changelog
Sourced from esbuild's changelog.
Commits
b24180e
publish 0.21.2 to npmf82e0ad
fix #3761:this
in field and accessor decorators46ea596
fix #3762: addes2023
as an alias fores2022
e876394
publish 0.21.1 to npm4abc387
adjust decorator source map locationse7a9256
fix #3756: regression with--keep-names
33cbbea
runmake update-compat-table
c6da2c3
publish 0.21.0 to npm4bc834c
initial implementation of the decorators proposal (#3754)07cdbe0
some small adjustments to runtime library codeUpdates
eslint-config-standard-with-typescript
from 43.0.0 to 43.0.1Release notes
Sourced from eslint-config-standard-with-typescript's releases.
Changelog
Sourced from eslint-config-standard-with-typescript's changelog.
Commits
a15c932
chore(release): 43.0.1 [skip ci]c7782be
Merge pull request #1394 from mightyiam/renovate/semantic-release-23.x5fb79c3
chore(deps): update dependency semantic-release to v23d3b4d11
Merge pull request #1400 from mightyiam/renovate/node-20.x7414eba
chore(deps): update dependency@types/node
to v20.11.58470a93
Merge pull request #1397 from mightyiam/repo-transfer932ffce
docs: update repository urls372e604
Merge pull request #1399 from mightyiam/project8d2f497
build: rm add-to-project workflowcd71373
Merge pull request #1393 from standard/renovate/node-20.xUpdates
glob
from 10.3.10 to 10.3.15Commits
921c4b9
10.3.1557f5551
engines: need 14.18, where 'node:path' shows up4da30cd
10.3.140e7f0cf
path-scurry@1.11.0d6a9d05
10.3.13435d1f7
fix: usenode:
-prefixed requires for builtins7732ea3
fix test-regen bugd5b6b5d
10.3.12e775a78
strip leading ./ from ignore patterns7e927b2
update changelogUpdates
mocha
from 10.2.0 to 10.4.0Release notes
Sourced from mocha's releases.
... (truncated)
Changelog
Sourced from mocha's changelog.
... (truncated)
Commits
ffd9557
Release v10.4.07ac67f3
build(deps): bump the github-actions group with 2 updates (#5125)7a2781c
chore: activate dependabot for workflows (#5123)97dcbb2
fix: harden error handling inlib/cli/run.js
(#5074)6f3f45e
fix: xunit integration test (#5122)a5b5652
docs: fix documentation concerning glob expansion on UNIX (#4869)efbb147
feat: add file path to xunit reporter (#4985)a2e600d
fix: closes #5115 (#5116)3735873
feat: include.cause
stacks in the error stack traces (#4829)b88978d
chore: bump ESLint ecmaVersion to 2020 (#5104)Maintainer changes
This version was pushed to npm by voxpelli, a new releaser for mocha since your current version.
Updates
pkgroll
from 2.0.1 to 2.0.2Release notes
Sourced from pkgroll's releases.
Commits
9049b3e
docs: resize text129e052
docs: add logoc09f162
chore: upgrade dependencies1a60389
chore: upgrade dev deps92077f1
style: lint fix (#50)b5dd748
docs: add badges743f26f
fix: supportcomposite
intsconfig.json
(#55)dcec5fe
test: create missing symlink directoryfca7722
chore: add todo to rename flagd9a1e39
chore: upgrade deps (major)Updates
prettier
from 3.1.1 to 3.2.5Release notes
Sourced from prettier's releases.
Changelog
Sourced from prettier's changelog.
... (truncated)
Commits
7142cf3
Release 3.2.58cbee2e
chore(deps): update glimmer to v0.88.1 (#15991)45baee0
chore(deps): update dependency magic-string to v0.30.6 (#16022)9fb32a1
Minor refactor to property print (#15924)08f1940
Update install script for husky v9 (#16000)6d0b1d2
Update yarn to v4.1.0 (#16021)c8ba8db
chore(deps): update dependency@angular/compiler
to v17.1.2 (#16018)e2250ec
chore(deps): update typescript-eslint to v6.20.0 (#16015)02865f6
chore(deps): update dependency npm-run-all2 to v6.1.2 (#16017)014ee5d
chore(deps): update dependency hermes-parser to v0.19.0 (#16014)Updates
prettier-eslint
from 16.2.0 to 16.3.0Release notes
Sourced from prettier-eslint's releases.
Changelog
Sourced from prettier-eslint's changelog.
Commits
39a7744
chore: release prettier-eslint (#951)8418438
feat: support handling.svelte
files (#950)Maintainer changes
This version was pushed to npm by jounqin, a new releaser for prettier-eslint since your current version.
Updates
typescript
from 5.3.3 to 5.4.5Release notes
Sourced from typescript's releases.
... (truncated)
Commits
27bcd4c
Update LKG9f33bf1
🤖 Pick PR #58098 (Fix constraints of nested homomorph...) into release-5.4 (#...71b2f84
Bump version to 5.4.5 and LKG892936f
🤖 Pick PR #58083 (Don't propagate partial union/inter...) into release-5.4 (#...38a7c05
release-5.4: Always set node-version for setup-node (#58117)b754fc3
🤖 Pick PR #57778 (fix type import check for default-i...) into release-5.4 (#...8eb3367
Bump version to 5.4.4 and LKGde9096b
🤖 Pick PR #57871 (Divide-and-conquer strategy for int...) into release-5.4 (#...06aae98
🤖 Pick PR #57973 (Compare package.json paths with cor...) into release-5.4 (#...6d8134e
🤖 Pick PR #57637 (Fixed a regression related to deter...) into release-5.4 (#...Updates
utility-types
from 3.10.0 to 3.11.0Release notes
Sourced from utility-types's releases.