SciRuby / SciRuby/iruby

Allow repl launched from code to be handled from within notebook?

Open
#39 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Ruby
Stars
924
Forks
35
PR merge metrics
No merged PRs in 30d

Description

The use case is the following: I have a long data massaging loop like

entries.each do 
  begin
    ... a lot of stuff that can go wrong
  rescue => e
   binding.pry
  end

if an error occur, I end up inside a pry session and I can properly inspect the data, error and eventually re-run the computation.

If I do this from within a notebook though the new pry session is launched in the underlying terminal, somewhat conflicting with the notebook logs.

It would be awesome to have the ability to launch a sub-repl from the notebook and interact with it.
Would this be possible, or it maybe already is, or does what I'm saying not even make sense?

Anyway, thanks for your work on iRuby, it's awesome.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how IRuby handles binding.pry or a repl launched from notebook code and where that session is sent, especially the underlying terminal. Determine whether an interactive sub-repl can be hosted in the notebook, and define done as a working notebook-launched session that does not conflict with notebook logs.

Written by the indexing model from the issue text.

Assessment

Tech stack
jupyter-notebook, ruby
Domain
developer-experience, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.