Make sess dependencies optional with an arf-backed transport
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 12/100
- issue の種類
- リファクタリング
- 明瞭さ
- 説明が足りない
- 活発さ
- 活発
- 技術スタック
- r, rust, typescript
調査の方向性
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.
索引モデルが issue の本文から書いたものです。
説明
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
- 主要言語
- TypeScript
- スター
- 1.2k
- フォーク
- 147
- 平均マージ
- 1日 7時間
- マージ済み PR(30日)
- 75
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
REditorSupport/vscode-R のほかの issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
REditorSupport/vscode-R#1846 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
(feat) Additional Arrow support対応中かも @Fred-Wu が 13 日前に担当しました。 オープン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 が今日担当しました。 オープン
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
REditorSupport/vscode-R#1860 · コメント 2 件 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
REditorSupport/vscode-R#1851 ·
メンテナーはふだん 1 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 48/100
REditorSupport/vscode-R#1850 · コメント 4 件 ·
メンテナーはふだん 1 日以内に返信
REditorSupport/vscode-R の issue をすべて見る
似ている issue
-
documentation good first issue hacktoberfest help wanted
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
libredb/libredb-studio#1756 ·
メンテナーはふだん 1 日以内に返信
-
state:triage-needed
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
メンテナーはふだん 1 日以内に返信
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
難易度 1/5 1時間未満 初心者へのやさしさ 72/100
lingdojo/kana-dojo#32365 · コメント 1 件 · リアクション 5 件 ·
メンテナーはふだん 1 日以内に返信
-
friction
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
kentcdodds/kody#3706 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
copperheadhq/copperhead#378 ·
メンテナーはふだん 1 日以内に返信