Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correctly print parens around in in for heads #16630

Merged
merged 1 commit into from
Jul 11, 2024

Conversation

nicolo-ribaudo
Copy link
Member

Q                       A
Fixed Issues? Fixes #16628
Patch: Bug Fix? y
Major: Breaking Change?
Minor: New Feature?
Tests Added Pass? Yes
Documentation PR Link
Any Dependency Changes?
License MIT

I really wanted to use using, but we would need an assumption to avoid the try/catch when we know it's not necessary.

@nicolo-ribaudo nicolo-ribaudo added PR: Bug Fix 🐛 A type of pull request used for our changelog categories pkg: generator labels Jul 11, 2024
@babel-bot
Copy link
Collaborator

Build successful! You can test your changes in the REPL here: https://babeljs.io/repl/build/57311

inForStatementInit: boolean = false;
enterForStatementInit(val: boolean) {
const old = this.inForStatementInit;
if (old === val) return () => {};
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe return undefined and then use exit?.() on the caller?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't it better to use consistent types, rather than having polymorphic functions? It's trivial for an engine to optimise an empty function call.

@kungfooman
Copy link

Interesting PR! I wanted to test it, but link from @babel-bot fails with:

Could not load Babel build #57311: Error sending request to CircleCI: undefined

@nicolo-ribaudo
Copy link
Member Author

CircleCI has been working weirdly in the past few days, thanks for noticing the problem -- I'll see if it something that we need to fix :)

@nicolo-ribaudo nicolo-ribaudo merged commit 71282ad into babel:main Jul 11, 2024
51 checks passed
@nicolo-ribaudo nicolo-ribaudo deleted the for-in-parens branch July 11, 2024 14:21
@liuxingbaoyu
Copy link
Member

It seems that the CircleCI API no longer allows cross-domain.
I will take a look at it.

brandonb927 pushed a commit to brandonb927/brandonb-sites that referenced this pull request Jul 23, 2024
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@babel/preset-env](https://babel.dev/docs/en/next/babel-preset-env) ([source](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env)) | dependencies | patch | [`7.24.7` -> `7.24.8`](https://renovatebot.com/diffs/npm/@babel/preset-env/7.24.7/7.24.8) |

---

### Release Notes

<details>
<summary>babel/babel (@&#8203;babel/preset-env)</summary>

### [`v7.24.8`](https://github.com/babel/babel/blob/HEAD/CHANGELOG.md#v7248-2024-07-11)

[Compare Source](babel/babel@v7.24.7...v7.24.8)

##### 👓 Spec Compliance

-   `babel-parser`
    -   [#&#8203;16567](babel/babel#16567) Do not use strict mode in TS `declare` ([@&#8203;liuxingbaoyu](https://github.com/liuxingbaoyu))

##### 🐛 Bug Fix

-   `babel-generator`
    -   [#&#8203;16630](babel/babel#16630) Correctly print parens around `in` in `for` heads ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))
    -   [#&#8203;16626](babel/babel#16626) Fix printing of comments in `await using` ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))
    -   [#&#8203;16591](babel/babel#16591) fix typescript code generation for yield expression inside type expre… ([@&#8203;SreeXD](https://github.com/SreeXD))
-   `babel-parser`
    -   [#&#8203;16613](babel/babel#16613) Disallow destructuring assignment in `using` declarations ([@&#8203;H0onnn](https://github.com/H0onnn))
    -   [#&#8203;16490](babel/babel#16490) fix: do not add `.value: undefined` to regexp literals ([@&#8203;liuxingbaoyu](https://github.com/liuxingbaoyu))
-   `babel-types`
    -   [#&#8203;16615](babel/babel#16615) Remove boolean props from `ObjectTypeInternalSlot` visitor keys ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))
-   `babel-plugin-transform-typescript`
    -   [#&#8203;16566](babel/babel#16566) fix: Correctly handle `export import x =` ([@&#8203;liuxingbaoyu](https://github.com/liuxingbaoyu))

##### 💅 Polish

-   `babel-generator`
    -   [#&#8203;16625](babel/babel#16625) Avoid unnecessary parens around `async` in `for await` ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))
-   `babel-traverse`
    -   [#&#8203;16619](babel/babel#16619) Avoid checking `Scope.globals` multiple times ([@&#8203;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:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNCIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Reviewed-on: https://git.brandonb.ca/brandon/personal-sites/pulls/3
Co-authored-by: Renovate Bot <[email protected]>
Co-committed-by: Renovate Bot <[email protected]>
brandonb927 pushed a commit to brandonb927/brandonb-sites that referenced this pull request Jul 23, 2024
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@babel/core](https://babel.dev/docs/en/next/babel-core) ([source](https://github.com/babel/babel/tree/HEAD/packages/babel-core)) | dependencies | patch | [`7.24.7` -> `7.24.9`](https://renovatebot.com/diffs/npm/@babel/core/7.24.7/7.24.9) |

---

### Release Notes

<details>
<summary>babel/babel (@&#8203;babel/core)</summary>

### [`v7.24.9`](https://github.com/babel/babel/blob/HEAD/CHANGELOG.md#v7249-2024-07-15)

[Compare Source](babel/babel@v7.24.8...v7.24.9)

##### 🐛 Bug Fix

-   `babel-core`, `babel-standalone`
    -   [#&#8203;16639](babel/babel#16639) Avoid `require()` call in `@babel/standalone` bundle ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))
-   `babel-types`
    -   [#&#8203;16638](babel/babel#16638) fix: provide legacy typings for TS < 4.1 ([@&#8203;JLHwung](https://github.com/JLHwung))

##### 💅 Polish

-   `babel-generator`, `babel-plugin-transform-optional-chaining`
    -   [#&#8203;16617](babel/babel#16617) Avoid extra parens in TS `as`/`satisfies` ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))

##### 🏠 Internal

-   `babel-helper-module-transforms`
    -   [#&#8203;16629](babel/babel#16629) Lazy top-level initializations for module transforms ([@&#8203;guybedford](https://github.com/guybedford))

### [`v7.24.8`](https://github.com/babel/babel/blob/HEAD/CHANGELOG.md#v7248-2024-07-11)

[Compare Source](babel/babel@v7.24.7...v7.24.8)

##### 👓 Spec Compliance

-   `babel-parser`
    -   [#&#8203;16567](babel/babel#16567) Do not use strict mode in TS `declare` ([@&#8203;liuxingbaoyu](https://github.com/liuxingbaoyu))

##### 🐛 Bug Fix

-   `babel-generator`
    -   [#&#8203;16630](babel/babel#16630) Correctly print parens around `in` in `for` heads ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))
    -   [#&#8203;16626](babel/babel#16626) Fix printing of comments in `await using` ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))
    -   [#&#8203;16591](babel/babel#16591) fix typescript code generation for yield expression inside type expre… ([@&#8203;SreeXD](https://github.com/SreeXD))
-   `babel-parser`
    -   [#&#8203;16613](babel/babel#16613) Disallow destructuring assignment in `using` declarations ([@&#8203;H0onnn](https://github.com/H0onnn))
    -   [#&#8203;16490](babel/babel#16490) fix: do not add `.value: undefined` to regexp literals ([@&#8203;liuxingbaoyu](https://github.com/liuxingbaoyu))
-   `babel-types`
    -   [#&#8203;16615](babel/babel#16615) Remove boolean props from `ObjectTypeInternalSlot` visitor keys ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))
-   `babel-plugin-transform-typescript`
    -   [#&#8203;16566](babel/babel#16566) fix: Correctly handle `export import x =` ([@&#8203;liuxingbaoyu](https://github.com/liuxingbaoyu))

##### 💅 Polish

-   `babel-generator`
    -   [#&#8203;16625](babel/babel#16625) Avoid unnecessary parens around `async` in `for await` ([@&#8203;nicolo-ribaudo](https://github.com/nicolo-ribaudo))
-   `babel-traverse`
    -   [#&#8203;16619](babel/babel#16619) Avoid checking `Scope.globals` multiple times ([@&#8203;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:eyJjcmVhdGVkSW5WZXIiOiIzNy40NDAuNCIsInVwZGF0ZWRJblZlciI6IjM3LjQ0MC40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Reviewed-on: https://git.brandonb.ca/brandon/personal-sites/pulls/2
Reviewed-by: brandon <brandon [email protected]>
Co-authored-by: Renovate Bot <[email protected]>
Co-committed-by: Renovate Bot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pkg: generator PR: Bug Fix 🐛 A type of pull request used for our changelog categories
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Missing parenthesis in initializer of for loop
5 participants