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 7 giờ
- Pull request đã merge (30 ngày)
- 75
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 13 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
-
Explore a standalone, dependency-free R package for the Data Viewer backendCó thể đã có người làm @eitsupi đã nhận hôm nay. Đang mở
Độ 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 · 2 bình luận · 1 người được giao ·
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ự
-
Contrib indemnité de départ à la retraite : faire le pont avec le simulateur sur la page génériqueĐang mởP1
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
SocialGouv/code-du-travail-numerique#7561 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
kubernetes-sigs/headlamp#7950 ·
Maintainer thường phản hồi trong vòng 3 ngày
-
README for cliCó thể đã có người làm @Janvi-kapoor đã nhận hôm nay. Đang mởOSCI'26
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
GauravKarakoti/SecureFlow#1308 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
vitest-dev/vitest#11577 ·
Maintainer thường phản hồi trong vòng 1 ngày