using: Allow looking up Symbol.dispose on a function#16150
Merged
nicolo-ribaudo merged 1 commit intobabel:mainfrom Dec 11, 2023
odinho:patch-1
Merged
using: Allow looking up Symbol.dispose on a function#16150nicolo-ribaudo merged 1 commit intobabel:mainfrom odinho:patch-1
using: Allow looking up Symbol.dispose on a function#16150nicolo-ribaudo merged 1 commit intobabel:mainfrom
odinho:patch-1
Conversation
Collaborator
|
Build successful! You can test your changes in the REPL here: https://babeljs.io/repl/build/55958/ |
Member
nicolo-ribaudo
left a comment
There was a problem hiding this comment.
Thank you! Yes, this is a bug in our implementation.
I left a minor comment just to make the code slightly smaller. Then, could you:
- run
make buildto re-generate thebabel-helpers/src/helpers-generated.tsfile - Add a test in
packages/babel-plugin-proposal-explicit-resource-management/test/fixtures(look for folders containingexec.jsthere, and create a new one similar to those)
Contributor
Author
|
@nicolo-ribaudo: Thank you for the very quick review! I've tried doing what you said ^_^ Added two tests sync/async with slight variations (one wrapped in a call, one just given to |
using: Allow looking up Symbol.dispose on a function
Vylpes
pushed a commit
to Vylpes/random-bunny
that referenced
this pull request
Jan 16, 2024
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [@babel/traverse](https://babel.dev/docs/en/next/babel-traverse) ([source](https://github.com/babel/babel)) | resolutions | patch | [`7.23.5` -> `7.23.7`](https://renovatebot.com/diffs/npm/@babel%2ftraverse/7.23.5/7.23.7) | --- ### Release Notes <details> <summary>babel/babel (@​babel/traverse)</summary> ### [`v7.23.7`](https://github.com/babel/babel/blob/HEAD/CHANGELOG.md#v7237-2023-12-29) [Compare Source](babel/babel@v7.23.6...v7.23.7) ##### 🐛 Bug Fix - `babel-traverse` - [#​16191](babel/babel#16191) fix: Crash when removing without `Program` ([@​liuxingbaoyu](https://github.com/liuxingbaoyu)) - `babel-helpers`, `babel-plugin-proposal-decorators` - [#​16180](babel/babel#16180) fix: Class decorator `ctx.kind` is wrong ([@​liuxingbaoyu](https://github.com/liuxingbaoyu)) - `babel-plugin-proposal-decorators` - [#​16170](babel/babel#16170) Fix decorator initProto usage in derived classes ([@​JLHwung](https://github.com/JLHwung)) - `babel-core` - [#​16167](babel/babel#16167) Avoid unpreventable `unhandledRejection` events ([@​nicolo-ribaudo](https://github.com/nicolo-ribaudo)) ##### 🏠 Internal - `babel-helper-create-class-features-plugin` - [#​16186](babel/babel#16186) chore: Update deps ([@​liuxingbaoyu](https://github.com/liuxingbaoyu)) - `babel-helper-create-class-features-plugin`, `babel-plugin-proposal-decorators` - [#​16177](babel/babel#16177) Merge decorators into class features ([@​JLHwung](https://github.com/JLHwung)) ### [`v7.23.6`](https://github.com/babel/babel/blob/HEAD/CHANGELOG.md#v7236-2023-12-11) [Compare Source](babel/babel@v7.23.5...v7.23.6) ##### 👓 Spec Compliance - `babel-generator`, `babel-parser`, `babel-types` - [#​16154](babel/babel#16154) Remove `TSPropertySignature.initializer` ([@​fisker](https://github.com/fisker)) - `babel-helpers`, `babel-plugin-proposal-decorators`, `babel-plugin-transform-class-properties`, `babel-plugin-transform-class-static-block`, `babel-plugin-transform-runtime`, `babel-preset-env`, `babel-runtime-corejs2`, `babel-runtime-corejs3`, `babel-runtime`, `babel-types` - [#​16139](babel/babel#16139) Apply `toPropertyKey` on decorator context name ([@​JLHwung](https://github.com/JLHwung)) ##### 🐛 Bug Fix - `babel-generator` - [#​16166](babel/babel#16166) fix: Correctly indenting when `retainLines` is enabled ([@​liuxingbaoyu](https://github.com/liuxingbaoyu)) - `babel-helpers`, `babel-plugin-proposal-explicit-resource-management` - [#​16150](babel/babel#16150) `using`: Allow looking up `Symbol.dispose` on a function ([@​odinho](https://github.com/odinho)) - `babel-plugin-proposal-decorators`, `babel-plugin-transform-class-properties` - [#​16161](babel/babel#16161) Ensure the `[[@​@​toPrimitive]]` call of a decorated class member key is invoked once ([@​JLHwung](https://github.com/JLHwung)) - [#​16148](babel/babel#16148) Support named evaluation for decorated anonymous class exp ([@​JLHwung](https://github.com/JLHwung)) - `babel-plugin-transform-for-of`, `babel-preset-env` - [#​16011](babel/babel#16011) fix: `for of` with `iterableIsArray` and shadowing variable ([@​liuxingbaoyu](https://github.com/liuxingbaoyu)) - `babel-helpers`, `babel-plugin-proposal-decorators`, `babel-runtime-corejs2`, `babel-runtime-corejs3`, `babel-runtime` - [#​16144](babel/babel#16144) Set function name for decorated private non-field elements ([@​JLHwung](https://github.com/JLHwung)) - `babel-plugin-transform-typescript` - [#​16137](babel/babel#16137) Fix references to enum values with merging ([@​nicolo-ribaudo](https://github.com/nicolo-ribaudo)) ##### 🔬 Output optimization - `babel-helper-create-class-features-plugin`, `babel-plugin-transform-class-properties` - [#​16159](babel/babel#16159) Reuse computed key memoiser ([@​JLHwung](https://github.com/JLHwung)) - `babel-helpers`, `babel-plugin-proposal-decorators` - [#​16160](babel/babel#16160) Optimize decorator helper size ([@​liuxingbaoyu](https://github.com/liuxingbaoyu)) </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 [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4wLjAiLCJ1cGRhdGVkSW5WZXIiOiIzNy4wLjAiLCJ0YXJnZXRCcmFuY2giOiJkZXZlbG9wIn0=--> Reviewed-on: https://gitea.vylpes.xyz/RabbitLabs/random-bunny/pulls/129 Co-authored-by: Renovate Bot <renovate@vylpes.com> Co-committed-by: Renovate Bot <renovate@vylpes.com>
kdy1
added a commit
to kdy1/swc
that referenced
this pull request
Jan 30, 2024
kdy1
added a commit
to swc-project/swc
that referenced
this pull request
Jan 30, 2024
**Related issue:** - Closes #8570 - babel/babel#16150
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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 works with browsers and it allows the nice pattern of returning a function that allows you to do something directly with what you used.
I'm just using this to do early 'unpause'-ing of undo functionality.
It doesn't seem so restrictive in the spec, as a function is also an object, but it has a different
typeofname.