Uh oh!
There was an error while loading. Please reload this page.
repl: improve tab completion on computed properties - #58775
Conversation
There was a problem hiding this comment.
Note: I'm removing this comment since I think that it is inaccurate (and as a consequence misleading), since various type of lines pass through here, like for example { a: true }
I think/hope that the code structure makes it clear enough what this else if block is for (I also have half a mind to do some refactoring to also make things clearer later on 🤔)
b502583 to
fdfdac0Compareimprove the tab completion capabilities around computed properties by replacing the use of brittle and error prone Regex checks with more robust AST based analysis
fdfdac0 to
1398800CompareCodecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@## main #58775 +/- ##
==========================================
- Coverage 90.13% 90.09% -0.04%
==========================================
Files 640 640 Lines 188294 188399 +105 Branches 36923 36945 +22 ==========================================
+ Hits 169712 169747 +35 - Misses 11304 11354 +50 - Partials 7278 7298 +20
🚀 New features to boost your workflow:
|
nodejs-github-bot
commented
Jun 21, 2025
Uh oh!
There was an error while loading. Please reload this page.
nodejs-github-bot
commented
Jun 26, 2025
Landed in 8ba66c5 |
improve the tab completion capabilities around computed properties by replacing the use of brittle and error prone Regex checks with more robust AST based analysis PR-URL: #58775 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
aduh95
commented
Jul 21, 2025
This doesn't land cleanly on v22.x-staging, we'd need a backport PR if we want it on v22.x |
A number of recent changes to the REPL tab completion logic have introduced the ability for completion to cause side effects, specifically, calling arbitrary functions or variable assignments/updates. This was first introduced in 0722023 and the problem exacerbated in 8ba66c5. Our team noticed this because our tests started failing when attempting to update to Node.js 20.19.5. Some recent commits, such as 1093f38 or 6945337, have messages or PR descriptions that imply the intention to avoid side effects, which I can can generally be agreed upon is in line with the expectations that a user has of autocomplete functionality. However, some of the tests introduced in those commts specifically verify that side effects *can* happen under specific circunmstances. I am assuming here that this is unintentional, and the corresponding tests have been removed/replaced in this commit. Fixes: nodejs#59731Fixes: nodejs#58903 Refs: nodejs#58709 Refs: nodejs#58775 Refs: nodejs#57909 Refs: nodejs#58891
A number of recent changes to the REPL tab completion logic have introduced the ability for completion to cause side effects, specifically, calling arbitrary functions or variable assignments/updates. This was first introduced in 0722023 and the problem exacerbated in 8ba66c5. Our team noticed this because our tests started failing when attempting to update to Node.js 20.19.5. Some recent commits, such as 1093f38 or 6945337, have messages or PR descriptions that imply the intention to avoid side effects, which I can can generally be agreed upon is in line with the expectations that a user has of autocomplete functionality. However, some of the tests introduced in those commts specifically verify that side effects *can* happen under specific circunmstances. I am assuming here that this is unintentional, and the corresponding tests have been removed/replaced in this commit. Fixes: #59731Fixes: #58903 Refs: #58709 Refs: #58775 Refs: #57909 Refs: #58891 PR-URL: #59774 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Dario Piotrowicz <dario.piotrowicz@gmail.com>
A number of recent changes to the REPL tab completion logic have introduced the ability for completion to cause side effects, specifically, calling arbitrary functions or variable assignments/updates. This was first introduced in 0722023 and the problem exacerbated in 8ba66c5. Our team noticed this because our tests started failing when attempting to update to Node.js 20.19.5. Some recent commits, such as 1093f38 or 6945337, have messages or PR descriptions that imply the intention to avoid side effects, which I can can generally be agreed upon is in line with the expectations that a user has of autocomplete functionality. However, some of the tests introduced in those commts specifically verify that side effects *can* happen under specific circunmstances. I am assuming here that this is unintentional, and the corresponding tests have been removed/replaced in this commit. Fixes: #59731Fixes: #58903 Refs: #58709 Refs: #58775 Refs: #57909 Refs: #58891 PR-URL: #59774 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Dario Piotrowicz <dario.piotrowicz@gmail.com>
improve the tab completion capabilities around computed properties by replacing the use of brittle and error prone Regex checks with more robust AST based analysis
Followup from #58709