Make sess dependencies optional with an arf-backed transport
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 12/100
- Loại issue
- Tái cấu trúc
- Độ rõ ràng
- Cần làm rõ
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- r, rust, typescript
- Lĩnh vực
- developer-experience, devtools
Hướng nghiên cứu
This is an architecture proposal with no comments and no agreed scope, so it is not a starting point for a first contribution. Before any code, read the linked eitsupi/arf#112, #1739, #1829 and #1856 to see which transport boundaries are already decided. Done would be a maintainer-agreed design that separates the sess transport layer from its runtime functionality, with the dependency list for the arf-backed path settled.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Motivation
vscode-R relies on the bundled sess package for session integration, including workspace inspection, viewers, and editor communication.
Although sess is now a pure R package, it still requires third-party dependencies such as processx, later, jsonlite, and rstudioapi.
These complicate installation, particularly in isolated environments managed by renv, pixi, etc.
PR #1856 improves installation isolation but does not eliminate these dependencies.
Meanwhile, arf already provides an IPC server implemented in Rust, potentially making much of sess's R-based communication infrastructure unnecessary.
Goal
Enable vscode-R session integration through arf without requiring third-party R packages.
This does not necessarily mean eliminating sess itself. Its pure-R runtime functionality could remain available while delegating communication to arf.
Ordinary R consoles and other frontends should continue using the existing sess transport.
Proposed direction
- Separate transport from runtime functionality. Reuse sess's existing workspace, viewer, and runtime integration logic across different transports.
- Use arf's IPC server. Extend its generic capabilities where necessary, particularly for structured R queries and event notifications, without introducing vscode-R-specific APIs.
- Make dependencies optional. Remove
processx,later, andjsonliterequirements from the arf-backed path, and makerstudioapiintegration optional. Existing uses outside the transport layer will also need attention. - Integrate incrementally. Start with ordinary arf terminals and subsequently consider R Interactive, reusing existing abstractions where appropriate.
Scope
This is a long-term architectural direction, not a proposal to replace sess entirely or remove support for other R frontends.
The goal is to reduce installation requirements without duplicating session functionality or compromising compatibility.
Related
- eitsupi/arf#112: Generic IPC server and earlier integration discussions
- #1739: Runtime and transport lifecycle separation
- #1829: Keeping sess a pure R package
- #1856: Managed sess installation
- Ngôn ngữ chính
- TypeScript
- Star
- 1.2k
- Fork
- 147
- Merge trung bình
- 1 ngày 8 giờ
- Pull request đã merge (30 ngày)
- 72
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của REditorSupport/vscode-R
-
[Bug]: `view` button sends explicit `.GlobalEnv` lookup to terminal instead of `View()` onlyĐang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
REditorSupport/vscode-R#1846 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
(feat) Additional Arrow supportCó thể đã có người làm @Fred-Wu đã nhận 11 ngày trước. Đang mởenhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
REditorSupport/vscode-R#1785 · 2 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
REditorSupport/vscode-R#1860 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
REditorSupport/vscode-R#1851 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 48/100
REditorSupport/vscode-R#1850 · 4 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của REditorSupport/vscode-R
Issue tương tự
-
area:deploy task
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
wilanis/wilanis-js#1017 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation v2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
modelcontextprotocol/servers#5133 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
budget bug feature frontend good-issue medium needs-review OSCI'26 payments
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
SatyamPandey-07/WorkSphere#5990 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
lugassawan/swe-workbench#799 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug good first issue javascript
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
yukikotani231/sqlsift#326 ·
Maintainer thường phản hồi trong vòng 1 ngày