[Bug]: vscode-R 3.0.1: code from other project files silently executed in R session via sess
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 12/100
- Issue 类型
- 缺陷
- 描述清晰度
- 需要澄清
- 活跃度
- 活跃
- 技术栈
- r, typescript
调研方向
Start by checking whether the foreign code comes from the session watcher: toggle the r.sessionWatcher setting and see if the stray assignments stop, then inspect the sess.workspace task callback registered via sess::.runtime_add_task_callback. The issue does not name a file in the extension to change, and the cause is unconfirmed. Done would mean a reproducible trigger is identified and the extension no longer executes code absent from the console or history. Expect the work to involve the R session interaction and the workspace viewer, which needs domain knowledge.
由索引模型根据 Issue 内容生成。
描述
Area
Session watcher or workspace viewer
Bug description
With vscode-R 3.0.1 and its sess session connection, code I did not send is executed in my live R session. Objects defined in other files of the same project silently appear in the global environment, or overwrite objects I just created. On other occasions the whole workspace has been wiped.
The executed code never appears in the console or the R history. The same workflow in R run from Terminal.app, outside VS Code, stays clean.
I run code line by line from a single R script in a single VS Code window. Restarting R, restarting VS Code, rebooting, and using brand-new scripts did not help.
- An object overwritten between two consecutive commands. I fit lm1 and called emmeans() on it immediately. In between, lm1 was replaced by a different model:
> lm1 <- lmer(speakerstance ~ stance + (1 | ResponseId), data = dtl, REML = F)
> stance <- emmeans(lm1, specs = "stance")
Error in emmeans(lm1, specs = "stance") :
No variable named stance in the reference grid
> summary(lm1)
Formula: compelling ~ reasonable + (1 | ResponseId) + (1 | scen)
Data: dtl
Subset: !is.na(reasonable)
The replacement matches a line in an older version of analysis.R in the same project folder, per VS Code's local file history:
lm1 <- lmer(compelling ~ reasonable + (1 | ResponseId) + (1 | scen), data = dtl, REML = F, subset = !is.na(reasonable))
- Objects appearing that I never created. In a fresh session, difficulty and full (both lmerModLmerTest) appeared in the workspace without my running any code that defines them.
- The foreign code was not sent through the terminal. It appears in neither the console nor the R history (savehistory()).
- The foreign model was fit in the live session, not loaded from a file.
> find("lm1")
[1] ".GlobalEnv"
> environment(formula(lm1))
<environment: R_GlobalEnv>
-
No other startup code or hooks could explain it.
• ~/.Rprofile only defines and attaches two ggplot theme functions.
• There is no project .Rprofile, no .RData, and no Rprofile.site.
• The only task callbacks are "1" (from cli::.onLoad) and "sess.workspace" (from sess::.runtime_add_task_callback).
• No MCP or agent packages are loaded. -
It does not reproduce outside VS Code. The same script, packages and data, run line by line in R from Terminal.app, showed only the objects I created. ls() was clean, and emmeans() on lm1 worked as expected.
Steps to reproduce
start an R terminal with sess connected, run a script line by line, and foreign objects eventually appear.
Expected behavior
That the objects I declared remain the ones that I declared.
Environment
| Component | Version |
|---|---|
| R | 4.5.3 (aarch64-apple-darwin20) |
| vscode-R | 3.0.1 (with sess) |
| VS Code | 1.142.0 (Universal) |
| macOS | Tahoe 26.6.2 |
Relevant R package versions
Relevant VS Code settings
"[r]": {
"editor.defaultFormatter": "REditorSupport.r",
},
"r.plot.useHttpgd": true,
"r.workspaceViewer.removeHiddenItems": true,
"r.sessionWatcher": true,
Logs and additional context
No response
- 主要语言
- TypeScript
- 星标
- 1.2k
- 派生
- 151
- 平均合并
- 1 天 8 小时
- 30 天内合并 PR
- 76
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
REditorSupport/vscode-R 的其他 Issue
-
[Bug]: indentation clash (formatter vs lintr)可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭bug
难度 1/5 1 小时以内 新手友好度 92/100
REditorSupport/vscode-R#1883 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 68/100
REditorSupport/vscode-R#1846 · 2 条评论 ·
维护者通常 1 天内回复
-
(feat) Additional Arrow support可能已有人在做 @Fred-Wu 于 5 天前认领。 未关闭enhancement
难度 2/5 1-3 小时 新手友好度 72/100
REditorSupport/vscode-R#1785 · 2 条评论 ·
维护者通常 1 天内回复
-
Explore a standalone, dependency-free R package for the Data Viewer backend可能已有人在做 @eitsupi 于 7 天前认领。 未关闭
难度 5/5 一周以上 新手友好度 35/100
REditorSupport/vscode-R#1860 · 10 条评论 · 1 个 reaction · 已指派 1 人 ·
维护者通常 1 天内回复
-
难度 5/5 一周以上 新手友好度 12/100
REditorSupport/vscode-R#1859 ·
维护者通常 1 天内回复
查看 REditorSupport/vscode-R 的全部 Issue
相似的 Issue
-
area: app type: bug
难度 2/5 1-3 小时 新手友好度 78/100
ExpidetGames/code-reviewer#585 ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 83/100
module-federation/core#5205 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 73/100
LanternOps/breeze#9392 · 1 条评论 ·
维护者通常 1 天内回复
-
engine-rs P3 review-deferral wasm
难度 2/5 1-3 小时 新手友好度 77/100
maniator/verticopolis#1154 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复