Make sess dependencies optional with an arf-backed transport
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 12/100
- Issue-Typ
- Refactoring
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- r, rust, typescript
- Bereich
- developer-experience, devtools
Rechercherichtung
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.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
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
- Vorherrschende Sprache
- TypeScript
- Sterne
- 1.2k
- Forks
- 151
- Ø Merge
- 1 T. 7 Std.
- Gemergte PRs (30 T.)
- 75
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus REditorSupport/vscode-R
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
REditorSupport/vscode-R#1846 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
(feat) Additional Arrow supportEvtl. vergeben @Fred-Wu hat das heute übernommen. Offenenhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
REditorSupport/vscode-R#1785 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Explore a standalone, dependency-free R package for the Data Viewer backendEvtl. vergeben @eitsupi hat das vor 2 Tagen übernommen. Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
REditorSupport/vscode-R#1860 · 2 Kommentare · 1 Reaktion · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
REditorSupport/vscode-R#1851 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 48/100
REditorSupport/vscode-R#1850 · 4 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in REditorSupport/vscode-R
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
stellar/stellar-dev-skill#151 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:arcade game ready-for-agent
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
fderuiter/deruiter.dev#2281 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
scope: data grid type: bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 2 Tagen
-
fix(frontend): correct VITE_IS_DEVELPOMENT typo in shared/app.ts and align dev environment flagsOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
vicharanashala/ajrasakha#1439 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Add: TV5Monde AsieOffenapproved check:passed streams:add
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag