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

fix(compiler): avoid errors with extremely long instruction chains #45574

Closed
wants to merge 1 commit into from

Conversation

crisbeto
Copy link
Member

@crisbeto crisbeto commented Apr 9, 2022

Our logic for generating code from an AST uses recursion which limits the number of expressions we can nest before we reach the call stack limit. These changes add a limit in order to avoid errors in some cases where the chains become extremely long.

Fixes #45564.

@crisbeto crisbeto marked this pull request as ready for review April 9, 2022 14:59
@pullapprove pullapprove bot requested a review from alxhub April 9, 2022 14:59
@crisbeto crisbeto added action: review The PR is still awaiting reviews from at least one requested reviewer target: patch This PR is targeted for the next patch release area: compiler Issues related to `ngc`, Angular's template compiler labels Apr 9, 2022
@ngbot ngbot bot added this to the Backlog milestone Apr 9, 2022
Our logic for generating code from an AST uses recursion which limits the number of expressions we can nest before we reach the call stack limit. These changes add a limit in order to avoid errors in some cases where the chains become extremely long.

Fixes angular#45564.
@crisbeto crisbeto added action: merge The PR is ready for merge by the caretaker action: presubmit The PR is in need of a google3 presubmit merge: caretaker note Alert the caretaker performing the merge to check the PR for an out of normal action needed or note and removed action: review The PR is still awaiting reviews from at least one requested reviewer labels Apr 13, 2022
@crisbeto
Copy link
Member Author

Merge assistance: I'm away the next few days so I can't run my own presubmit. Feel free to either run one so this change doesn't clog up the PR queue or I'll run it when I get back.

@jessicajaniuk
Copy link
Contributor

Presubmit

@jessicajaniuk jessicajaniuk removed action: presubmit The PR is in need of a google3 presubmit merge: caretaker note Alert the caretaker performing the merge to check the PR for an out of normal action needed or note labels Apr 13, 2022
@jessicajaniuk
Copy link
Contributor

This PR was merged into the repository by commit 598b759.

jessicajaniuk pushed a commit that referenced this pull request Apr 13, 2022
…45574)

Our logic for generating code from an AST uses recursion which limits the number of expressions we can nest before we reach the call stack limit. These changes add a limit in order to avoid errors in some cases where the chains become extremely long.

Fixes #45564.

PR Close #45574
crapStone pushed a commit to Calciumdibromid/CaBr2 that referenced this pull request Apr 19, 2022
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@angular/animations](https://github.com/angular/angular) | dependencies | patch | [`13.3.2` -> `13.3.3`](https://renovatebot.com/diffs/npm/@angular%2fanimations/13.3.2/13.3.3) |
| [@angular/common](https://github.com/angular/angular) | dependencies | patch | [`13.3.2` -> `13.3.3`](https://renovatebot.com/diffs/npm/@angular%2fcommon/13.3.2/13.3.3) |
| [@angular/compiler](https://github.com/angular/angular) | dependencies | patch | [`13.3.2` -> `13.3.3`](https://renovatebot.com/diffs/npm/@angular%2fcompiler/13.3.2/13.3.3) |
| [@angular/compiler-cli](https://github.com/angular/angular) | devDependencies | patch | [`13.3.2` -> `13.3.3`](https://renovatebot.com/diffs/npm/@angular%2fcompiler-cli/13.3.2/13.3.3) |
| [@angular/core](https://github.com/angular/angular) | dependencies | patch | [`13.3.2` -> `13.3.3`](https://renovatebot.com/diffs/npm/@angular%2fcore/13.3.2/13.3.3) |
| [@angular/forms](https://github.com/angular/angular) | dependencies | patch | [`13.3.2` -> `13.3.3`](https://renovatebot.com/diffs/npm/@angular%2fforms/13.3.2/13.3.3) |
| [@angular/platform-browser](https://github.com/angular/angular) | dependencies | patch | [`13.3.2` -> `13.3.3`](https://renovatebot.com/diffs/npm/@angular%2fplatform-browser/13.3.2/13.3.3) |
| [@angular/platform-browser-dynamic](https://github.com/angular/angular) | dependencies | patch | [`13.3.2` -> `13.3.3`](https://renovatebot.com/diffs/npm/@angular%2fplatform-browser-dynamic/13.3.2/13.3.3) |

---

### Release Notes

<details>
<summary>angular/angular</summary>

### [`v13.3.3`](https://github.com/angular/angular/blob/HEAD/CHANGELOG.md#&#8203;1333-2022-04-13)

[Compare Source](angular/angular@13.3.2...13.3.3)

##### compiler

| Commit | Type | Description |
| -- | -- | -- |
| [e50fd9ee87](angular/angular@e50fd9e) | fix | avoid errors with extremely long instruction chains ([#&#8203;45574](angular/angular#45574)) |

#### Special Thanks

4javier, Andrew Kushnir, Cédric Exbrayat, Dylan Hunn, George Kalpakas, Hossein Mousavi, Jason Hendee, Joe Martin (Crowdstaffing), Kristiyan Kostadinov, Michael-Doner, Michal Materowski and Virginia Dooley

<!-- CHANGELOG SPLIT MARKER -->

</details>

---

### Configuration

📅 **Schedule**: 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 these updates again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox.

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).

Co-authored-by: cabr2-bot <cabr2.help@gmail.com>
Reviewed-on: https://codeberg.org/Calciumdibromid/CaBr2/pulls/1304
Reviewed-by: Epsilon_02 <epsilon_02@noreply.codeberg.org>
Co-authored-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org>
Co-committed-by: Calciumdibromid Bot <cabr2_bot@noreply.codeberg.org>
@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators May 14, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
action: merge The PR is ready for merge by the caretaker area: compiler Issues related to `ngc`, Angular's template compiler target: patch This PR is targeted for the next patch release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Maximum call stack size exceeded with large SVG
3 participants