ruby / ruby/error_highlight

JRuby support

オープン
#72 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
Ruby
スター
155
フォーク
37
平均マージ
4日 2時間
マージ済み PR(30日)
1

説明

This gem is unusable on anything but CRuby mostly because it uses the following CRuby-specific features:

lib/error_highlight/base.rb  (4 usages found)
    59           RubyVM::AbstractSyntaxTree.of(loc, keep_script_lines: true)
    70     when RubyVM::AbstractSyntaxTree::Node, Prism::Node
    93     node_id = RubyVM::AbstractSyntaxTree.node_id_for_backtrace_location(location)

We could fix this for JRuby in one of two ways:

  • Switch to the Prism gem where possible. I'm not sure if it can help us get a specific AST node from a backtrace element without reparsing, though. cc @kddnewton
  • Use JRuby-specific methods to access similar internal code structures.

It would be nice if JRuby users could benefit from the features of this gem.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

lib/error_highlight/base.rb に記載されている4つの CRuby 固有の使用箇所から始め、特に RubyVM::AbstractSyntaxTree の呼び出しと Prism::Node の分岐を調査します。Prism が必要なバックトレースの AST 情報を提供できるか、または JRuby 固有のメソッドが必要かを調べ、その後、gem の例外ハイライト機能が JRuby で動作することを確認します。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
ruby
領域
devtools
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。