iruby 0.2.7 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/ubuntu.yml +62 -0
  3. data/CHANGES +62 -0
  4. data/Gemfile +3 -1
  5. data/LICENSE +1 -1
  6. data/README.md +148 -27
  7. data/Rakefile +36 -10
  8. data/ci/Dockerfile.base.erb +41 -0
  9. data/ci/Dockerfile.main.erb +7 -0
  10. data/ci/requirements.txt +1 -0
  11. data/docker/setup.sh +15 -0
  12. data/docker/test.sh +7 -0
  13. data/iruby.gemspec +14 -18
  14. data/lib/iruby.rb +19 -3
  15. data/lib/iruby/backend.rb +22 -2
  16. data/lib/iruby/command.rb +76 -13
  17. data/lib/iruby/display.rb +69 -39
  18. data/lib/iruby/formatter.rb +5 -4
  19. data/lib/iruby/input.rb +41 -0
  20. data/lib/iruby/input/README.ipynb +502 -0
  21. data/lib/iruby/input/README.md +299 -0
  22. data/lib/iruby/input/autoload.rb +25 -0
  23. data/lib/iruby/input/builder.rb +67 -0
  24. data/lib/iruby/input/button.rb +47 -0
  25. data/lib/iruby/input/cancel.rb +32 -0
  26. data/lib/iruby/input/checkbox.rb +74 -0
  27. data/lib/iruby/input/date.rb +37 -0
  28. data/lib/iruby/input/field.rb +31 -0
  29. data/lib/iruby/input/file.rb +57 -0
  30. data/lib/iruby/input/form.rb +77 -0
  31. data/lib/iruby/input/label.rb +27 -0
  32. data/lib/iruby/input/multiple.rb +76 -0
  33. data/lib/iruby/input/popup.rb +41 -0
  34. data/lib/iruby/input/radio.rb +59 -0
  35. data/lib/iruby/input/select.rb +59 -0
  36. data/lib/iruby/input/textarea.rb +23 -0
  37. data/lib/iruby/input/widget.rb +34 -0
  38. data/lib/iruby/jupyter.rb +77 -0
  39. data/lib/iruby/kernel.rb +67 -22
  40. data/lib/iruby/ostream.rb +24 -8
  41. data/lib/iruby/session.rb +85 -67
  42. data/lib/iruby/session/cztop.rb +70 -0
  43. data/lib/iruby/session/ffi_rzmq.rb +87 -0
  44. data/lib/iruby/session/mixin.rb +47 -0
  45. data/lib/iruby/session_adapter.rb +66 -0
  46. data/lib/iruby/session_adapter/cztop_adapter.rb +45 -0
  47. data/lib/iruby/session_adapter/ffirzmq_adapter.rb +55 -0
  48. data/lib/iruby/session_adapter/pyzmq_adapter.rb +77 -0
  49. data/lib/iruby/utils.rb +5 -2
  50. data/lib/iruby/version.rb +1 -1
  51. data/run-test.sh +12 -0
  52. data/tasks/ci.rake +65 -0
  53. data/test/helper.rb +90 -0
  54. data/test/integration_test.rb +22 -11
  55. data/test/iruby/backend_test.rb +37 -0
  56. data/test/iruby/command_test.rb +207 -0
  57. data/test/iruby/jupyter_test.rb +27 -0
  58. data/test/iruby/mime_test.rb +32 -0
  59. data/test/iruby/multi_logger_test.rb +1 -2
  60. data/test/iruby/session_adapter/cztop_adapter_test.rb +20 -0
  61. data/test/iruby/session_adapter/ffirzmq_adapter_test.rb +20 -0
  62. data/test/iruby/session_adapter/session_adapter_test_base.rb +27 -0
  63. data/test/iruby/session_adapter_test.rb +91 -0
  64. data/test/iruby/session_test.rb +47 -0
  65. data/test/run-test.rb +18 -0
  66. metadata +130 -46
  67. data/.travis.yml +0 -16
  68. data/CONTRIBUTORS +0 -19
  69. data/test/test_helper.rb +0 -5
@@ -0,0 +1,27 @@
1
+ require 'iruby/jupyter'
2
+
3
+ module IRubyTest
4
+ class JupyterDefaultKernelSpecDirectoryTest < TestBase
5
+ def setup
6
+ @kernel_spec = IRuby::Jupyter.kernelspec_dir
7
+ end
8
+
9
+ def test_default_windows
10
+ windows_only
11
+ appdata = IRuby::Jupyter.send :windows_user_appdata
12
+ assert_equal(File.join(appdata, 'jupyter/kernels'), @kernel_spec)
13
+ end
14
+
15
+ def test_default_apple
16
+ apple_only
17
+ assert_equal(File.expand_path('~/Library/Jupyter/kernels'), @kernel_spec)
18
+ end
19
+
20
+ def test_default_unix
21
+ unix_only
22
+ with_env('XDG_DATA_HOME' => nil) do
23
+ assert_equal(File.expand_path('~/.local/share/jupyter/kernels'), @kernel_spec)
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,32 @@
1
+ class IRubyTest::MimeTest < IRubyTest::TestBase
2
+ sub_test_case("IRuby::Display") do
3
+ def test_display_with_mime_type
4
+ html = "<b>Bold Text</b>"
5
+
6
+ obj = Object.new
7
+ obj.define_singleton_method(:to_s) { html }
8
+
9
+ res = IRuby::Display.display(obj, mime: "text/html")
10
+ assert_equal({ plain: obj.inspect, html: html },
11
+ { plain: res["text/plain"], html: res["text/html"] })
12
+ end
13
+ end
14
+
15
+ sub_test_case("Rendering a file") do
16
+ def setup
17
+ @html = "<b>Bold Text</b>"
18
+ Dir.mktmpdir do |tmpdir|
19
+ @file = File.join(tmpdir, "test.html")
20
+ File.write(@file, @html)
21
+ yield
22
+ end
23
+ end
24
+
25
+ def test_display
26
+ File.open(@file, "rb") do |f|
27
+ res = IRuby::Display.display(f)
28
+ assert_equal(@html, res["text/html"])
29
+ end
30
+ end
31
+ end
32
+ end
@@ -1,8 +1,7 @@
1
1
  require 'stringio'
2
- require 'test_helper'
3
2
  require 'iruby/logger'
4
3
 
5
- class MultiLoggerTest < IRubyTest
4
+ class IRubyTest::MultiLoggerTest < IRubyTest::TestBase
6
5
  def test_multilogger
7
6
  out, err = StringIO.new, StringIO.new
8
7
  logger = IRuby::MultiLogger.new(Logger.new(out), Logger.new(err))
@@ -0,0 +1,20 @@
1
+ require_relative 'session_adapter_test_base'
2
+ require 'iruby'
3
+
4
+ module IRubyTest
5
+ if ENV['IRUBY_TEST_SESSION_ADAPTER_NAME'] == 'cztop'
6
+ class CztopAdapterTest < SessionAdapterTestBase
7
+ def adapter_class
8
+ IRuby::SessionAdapter::CztopAdapter
9
+ end
10
+
11
+ def test_send
12
+ assert(adapter_class.available?)
13
+ end
14
+
15
+ def test_recv
16
+ omit
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,20 @@
1
+ require_relative 'session_adapter_test_base'
2
+ require 'iruby'
3
+
4
+ module IRubyTest
5
+ if ENV['IRUBY_TEST_SESSION_ADAPTER_NAME'] == 'ffi-rzmq'
6
+ class FfirzmqAdapterTest < SessionAdapterTestBase
7
+ def adapter_class
8
+ IRuby::SessionAdapter::FfirzmqAdapter
9
+ end
10
+
11
+ def test_send
12
+ assert(adapter_class.available?)
13
+ end
14
+
15
+ def test_recv
16
+ omit
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,27 @@
1
+ module IRubyTest
2
+ class SessionAdapterTestBase < TestBase
3
+ # https://jupyter-client.readthedocs.io/en/stable/kernels.html#connection-files
4
+ def make_connection_config
5
+ {
6
+ "control_port" => 50160,
7
+ "shell_port" => 57503,
8
+ "transport" => "tcp",
9
+ "signature_scheme" => "hmac-sha256",
10
+ "stdin_port" => 52597,
11
+ "hb_port" => 42540,
12
+ "ip" => "127.0.0.1",
13
+ "iopub_port" => 40885,
14
+ "key" => "a0436f6c-1916-498b-8eb9-e81ab9368e84"
15
+ }
16
+ end
17
+
18
+ def setup
19
+ @config = make_connection_config
20
+ @session_adapter = adapter_class.new(@config)
21
+
22
+ unless adapter_class.available?
23
+ omit("#{@session_adapter.name} is unavailable")
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,91 @@
1
+ module IRubyTest
2
+ class SessionAdapterTest < TestBase
3
+ def test_available_p_return_false_when_load_error
4
+ subclass = Class.new(IRuby::SessionAdapter::BaseAdapter)
5
+ class << subclass
6
+ def load_requirements
7
+ raise LoadError
8
+ end
9
+ end
10
+ refute subclass.available?
11
+ end
12
+
13
+ def test_select_adapter_class_with_cztop
14
+ assert_rr do
15
+ stub(IRuby::SessionAdapter::CztopAdapter).available? { true }
16
+ stub(IRuby::SessionAdapter::FfirzmqAdapter).available? { false }
17
+ stub(IRuby::SessionAdapter::PyzmqAdapter).available? { false }
18
+
19
+ cls = IRuby::SessionAdapter.select_adapter_class
20
+ assert_equal IRuby::SessionAdapter::CztopAdapter, cls
21
+ end
22
+ end
23
+
24
+ def test_select_adapter_class_with_ffirzmq
25
+ assert_rr do
26
+ stub(IRuby::SessionAdapter::FfirzmqAdapter).available? { true }
27
+ stub(IRuby::SessionAdapter::CztopAdapter).available? { false }
28
+ stub(IRuby::SessionAdapter::PyzmqAdapter).available? { false }
29
+
30
+ cls = IRuby::SessionAdapter.select_adapter_class
31
+ assert_equal IRuby::SessionAdapter::FfirzmqAdapter, cls
32
+ end
33
+ end
34
+
35
+ def test_select_adapter_class_with_pyzmq
36
+ omit("pyzmq adapter is disabled")
37
+ assert_rr do
38
+ stub(IRuby::SessionAdapter::PyzmqAdapter).available? { true }
39
+ stub(IRuby::SessionAdapter::FfirzmqAdapter).available? { false }
40
+ stub(IRuby::SessionAdapter::CztopAdapter).available? { false }
41
+
42
+ cls = IRuby::SessionAdapter.select_adapter_class
43
+ assert_equal IRuby::SessionAdapter::PyzmqAdapter, cls
44
+ end
45
+ end
46
+
47
+ def test_select_adapter_class_with_env
48
+ with_env('IRUBY_SESSION_ADAPTER' => 'cztop') do
49
+ assert_rr do
50
+ stub(IRuby::SessionAdapter::CztopAdapter).available? { true }
51
+ assert_equal IRuby::SessionAdapter::CztopAdapter, IRuby::SessionAdapter.select_adapter_class
52
+ end
53
+
54
+ assert_rr do
55
+ stub(IRuby::SessionAdapter::CztopAdapter).available? { false }
56
+ assert_raises IRuby::SessionAdapterNotFound do
57
+ IRuby::SessionAdapter.select_adapter_class
58
+ end
59
+ end
60
+ end
61
+
62
+ with_env('IRUBY_SESSION_ADAPTER' => 'ffi-rzmq') do
63
+ assert_rr do
64
+ stub(IRuby::SessionAdapter::FfirzmqAdapter).available? { true }
65
+ assert_equal IRuby::SessionAdapter::FfirzmqAdapter, IRuby::SessionAdapter.select_adapter_class
66
+ end
67
+
68
+ assert_rr do
69
+ stub(IRuby::SessionAdapter::FfirzmqAdapter).available? { false }
70
+ assert_raises IRuby::SessionAdapterNotFound do
71
+ IRuby::SessionAdapter.select_adapter_class
72
+ end
73
+ end
74
+ end
75
+
76
+ with_env('IRUBY_SESSION_ADAPTER' => 'pyzmq') do
77
+ # pyzmq adapter is disabled
78
+ #
79
+ # IRuby::SessionAdapter::PyzmqAdapter.stub :available?, true do
80
+ # assert_equal IRuby::SessionAdapter::PyzmqAdapter, IRuby::SessionAdapter.select_adapter_class
81
+ # end
82
+ #
83
+ # IRuby::SessionAdapter::PyzmqAdapter.stub :available?, false do
84
+ # assert_raises IRuby::SessionAdapterNotFound do
85
+ # IRuby::SessionAdapter.select_adapter_class
86
+ # end
87
+ # end
88
+ end
89
+ end
90
+ end
91
+ end
@@ -0,0 +1,47 @@
1
+ module IRubyTest
2
+ class SessionAdapterSelectionTest < TestBase
3
+ def setup
4
+ # https://jupyter-client.readthedocs.io/en/stable/kernels.html#connection-files
5
+ @session_config = {
6
+ "control_port" => 0,
7
+ "shell_port" => 0,
8
+ "transport" => "tcp",
9
+ "signature_scheme" => "hmac-sha256",
10
+ "stdin_port" => 0,
11
+ "hb_port" => 0,
12
+ "ip" => "127.0.0.1",
13
+ "iopub_port" => 0,
14
+ "key" => "a0436f6c-1916-498b-8eb9-e81ab9368e84"
15
+ }
16
+ end
17
+
18
+ def test_new_with_session_adapter
19
+ adapter_name = ENV['IRUBY_TEST_SESSION_ADAPTER_NAME']
20
+ adapter_class = case adapter_name
21
+ when 'cztop'
22
+ IRuby::SessionAdapter::CztopAdapter
23
+ when 'ffi-rzmq'
24
+ IRuby::SessionAdapter::FfirzmqAdapter
25
+ when 'pyzmq'
26
+ omit("pyzmq adapter is disabled")
27
+ # IRuby::SessionAdapter::PyzmqAdapter
28
+ else
29
+ flunk "Unknown session adapter: #{adapter_name.inspect}"
30
+ end
31
+
32
+ session = IRuby::Session.new(@session_config, adapter_name)
33
+ assert_kind_of(adapter_class, session.adapter)
34
+ end
35
+
36
+ def test_without_any_session_adapter
37
+ assert_rr do
38
+ stub(IRuby::SessionAdapter::CztopAdapter).available? { false }
39
+ stub(IRuby::SessionAdapter::FfirzmqAdapter).available? { false }
40
+ stub(IRuby::SessionAdapter::PyzmqAdapter).available? { false }
41
+ assert_raises IRuby::SessionAdapterNotFound do
42
+ IRuby::Session.new(@session_config)
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
data/test/run-test.rb ADDED
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ $VERBOSE = true
4
+
5
+ require "pathname"
6
+
7
+ base_dir = Pathname.new(__dir__).parent.expand_path
8
+
9
+ lib_dir = base_dir + "lib"
10
+ test_dir = base_dir + "test"
11
+
12
+ $LOAD_PATH.unshift(lib_dir.to_s)
13
+
14
+ require_relative "helper"
15
+
16
+ ENV["TEST_UNIT_MAX_DIFF_TARGET_STRING_SIZE"] ||= "10000"
17
+
18
+ exit Test::Unit::AutoRunner.run(true, test_dir)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Mendler
@@ -9,64 +9,64 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-07-02 00:00:00.000000000 Z
12
+ date: 2021-03-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: rake
15
+ name: bond
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
18
  - - "~>"
19
19
  - !ruby/object:Gem::Version
20
- version: '10.4'
21
- type: :development
20
+ version: '0.5'
21
+ type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - "~>"
26
26
  - !ruby/object:Gem::Version
27
- version: '10.4'
27
+ version: '0.5'
28
28
  - !ruby/object:Gem::Dependency
29
- name: minitest
29
+ name: data_uri
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - "~>"
33
33
  - !ruby/object:Gem::Version
34
- version: '5.6'
35
- type: :development
34
+ version: '0.1'
35
+ type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - "~>"
40
40
  - !ruby/object:Gem::Version
41
- version: '5.6'
41
+ version: '0.1'
42
42
  - !ruby/object:Gem::Dependency
43
- name: bond
43
+ name: ffi-rzmq
44
44
  requirement: !ruby/object:Gem::Requirement
45
45
  requirements:
46
- - - "~>"
46
+ - - ">="
47
47
  - !ruby/object:Gem::Version
48
- version: '0.5'
48
+ version: '0'
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
- - - "~>"
53
+ - - ">="
54
54
  - !ruby/object:Gem::Version
55
- version: '0.5'
55
+ version: '0'
56
56
  - !ruby/object:Gem::Dependency
57
- name: rbczmq
57
+ name: mime-types
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - "~>"
60
+ - - ">="
61
61
  - !ruby/object:Gem::Version
62
- version: '1.7'
62
+ version: 3.3.1
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - "~>"
67
+ - - ">="
68
68
  - !ruby/object:Gem::Version
69
- version: '1.7'
69
+ version: 3.3.1
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: multi_json
72
72
  requirement: !ruby/object:Gem::Requirement
@@ -82,21 +82,62 @@ dependencies:
82
82
  - !ruby/object:Gem::Version
83
83
  version: '1.11'
84
84
  - !ruby/object:Gem::Dependency
85
- name: mimemagic
85
+ name: pycall
86
86
  requirement: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - "~>"
88
+ - - ">="
89
89
  - !ruby/object:Gem::Version
90
- version: '0.3'
91
- type: :runtime
90
+ version: 1.2.1
91
+ type: :development
92
92
  prerelease: false
93
93
  version_requirements: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - "~>"
95
+ - - ">="
96
+ - !ruby/object:Gem::Version
97
+ version: 1.2.1
98
+ - !ruby/object:Gem::Dependency
99
+ name: rake
100
+ requirement: !ruby/object:Gem::Requirement
101
+ requirements:
102
+ - - ">="
103
+ - !ruby/object:Gem::Version
104
+ version: '0'
105
+ type: :development
106
+ prerelease: false
107
+ version_requirements: !ruby/object:Gem::Requirement
108
+ requirements:
109
+ - - ">="
110
+ - !ruby/object:Gem::Version
111
+ version: '0'
112
+ - !ruby/object:Gem::Dependency
113
+ name: test-unit
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - ">="
117
+ - !ruby/object:Gem::Version
118
+ version: '0'
119
+ type: :development
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: test-unit-rr
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
96
138
  - !ruby/object:Gem::Version
97
- version: '0.3'
98
- description: A Ruby kernel for Jupyter/IPython frontends (e.g. notebook). Try it at
99
- try.jupyter.org.
139
+ version: '0'
140
+ description: A Ruby kernel for Jupyter environment. Try it at try.jupyter.org.
100
141
  email:
101
142
  - mail@daniel-mendler.de
102
143
  executables:
@@ -104,15 +145,19 @@ executables:
104
145
  extensions: []
105
146
  extra_rdoc_files: []
106
147
  files:
148
+ - ".github/workflows/ubuntu.yml"
107
149
  - ".gitignore"
108
- - ".travis.yml"
109
150
  - CHANGES
110
- - CONTRIBUTORS
111
151
  - Gemfile
112
152
  - LICENSE
113
153
  - README.md
114
154
  - Rakefile
115
155
  - bin/iruby
156
+ - ci/Dockerfile.base.erb
157
+ - ci/Dockerfile.main.erb
158
+ - ci/requirements.txt
159
+ - docker/setup.sh
160
+ - docker/test.sh
116
161
  - iruby.gemspec
117
162
  - lib/iruby.rb
118
163
  - lib/iruby/assets/kernel.css
@@ -124,31 +169,62 @@ files:
124
169
  - lib/iruby/command.rb
125
170
  - lib/iruby/display.rb
126
171
  - lib/iruby/formatter.rb
172
+ - lib/iruby/input.rb
173
+ - lib/iruby/input/README.ipynb
174
+ - lib/iruby/input/README.md
175
+ - lib/iruby/input/autoload.rb
176
+ - lib/iruby/input/builder.rb
177
+ - lib/iruby/input/button.rb
178
+ - lib/iruby/input/cancel.rb
179
+ - lib/iruby/input/checkbox.rb
180
+ - lib/iruby/input/date.rb
181
+ - lib/iruby/input/field.rb
182
+ - lib/iruby/input/file.rb
183
+ - lib/iruby/input/form.rb
184
+ - lib/iruby/input/label.rb
185
+ - lib/iruby/input/multiple.rb
186
+ - lib/iruby/input/popup.rb
187
+ - lib/iruby/input/radio.rb
188
+ - lib/iruby/input/select.rb
189
+ - lib/iruby/input/textarea.rb
190
+ - lib/iruby/input/widget.rb
191
+ - lib/iruby/jupyter.rb
127
192
  - lib/iruby/kernel.rb
128
193
  - lib/iruby/logger.rb
129
194
  - lib/iruby/ostream.rb
130
195
  - lib/iruby/session.rb
196
+ - lib/iruby/session/cztop.rb
197
+ - lib/iruby/session/ffi_rzmq.rb
198
+ - lib/iruby/session/mixin.rb
199
+ - lib/iruby/session_adapter.rb
200
+ - lib/iruby/session_adapter/cztop_adapter.rb
201
+ - lib/iruby/session_adapter/ffirzmq_adapter.rb
202
+ - lib/iruby/session_adapter/pyzmq_adapter.rb
131
203
  - lib/iruby/utils.rb
132
204
  - lib/iruby/version.rb
133
205
  - logo/logo-32x32.png
134
206
  - logo/logo-64x64.png
135
207
  - logo/ruby.svg
208
+ - run-test.sh
209
+ - tasks/ci.rake
210
+ - test/helper.rb
136
211
  - test/integration_test.rb
212
+ - test/iruby/backend_test.rb
213
+ - test/iruby/command_test.rb
214
+ - test/iruby/jupyter_test.rb
215
+ - test/iruby/mime_test.rb
137
216
  - test/iruby/multi_logger_test.rb
138
- - test/test_helper.rb
217
+ - test/iruby/session_adapter/cztop_adapter_test.rb
218
+ - test/iruby/session_adapter/ffirzmq_adapter_test.rb
219
+ - test/iruby/session_adapter/session_adapter_test_base.rb
220
+ - test/iruby/session_adapter_test.rb
221
+ - test/iruby/session_test.rb
222
+ - test/run-test.rb
139
223
  homepage: https://github.com/SciRuby/iruby
140
224
  licenses:
141
225
  - MIT
142
226
  metadata: {}
143
- post_install_message: |+
144
- Consider installing the optional dependencies to get additional functionality:
145
- * pry
146
- * pry-doc
147
- * awesome_print
148
- * gnuplot
149
- * rubyvis
150
- * nyaplot
151
-
227
+ post_install_message:
152
228
  rdoc_options: []
153
229
  require_paths:
154
230
  - lib
@@ -156,20 +232,28 @@ required_ruby_version: !ruby/object:Gem::Requirement
156
232
  requirements:
157
233
  - - ">="
158
234
  - !ruby/object:Gem::Version
159
- version: 2.1.0
235
+ version: 2.3.0
160
236
  required_rubygems_version: !ruby/object:Gem::Requirement
161
237
  requirements:
162
238
  - - ">="
163
239
  - !ruby/object:Gem::Version
164
240
  version: '0'
165
241
  requirements: []
166
- rubyforge_project:
167
- rubygems_version: 2.2.2
242
+ rubygems_version: 3.2.3
168
243
  signing_key:
169
244
  specification_version: 4
170
- summary: Ruby Kernel for Jupyter/IPython
245
+ summary: Ruby Kernel for Jupyter
171
246
  test_files:
247
+ - test/helper.rb
172
248
  - test/integration_test.rb
249
+ - test/iruby/backend_test.rb
250
+ - test/iruby/command_test.rb
251
+ - test/iruby/jupyter_test.rb
252
+ - test/iruby/mime_test.rb
173
253
  - test/iruby/multi_logger_test.rb
174
- - test/test_helper.rb
175
- has_rdoc:
254
+ - test/iruby/session_adapter/cztop_adapter_test.rb
255
+ - test/iruby/session_adapter/ffirzmq_adapter_test.rb
256
+ - test/iruby/session_adapter/session_adapter_test_base.rb
257
+ - test/iruby/session_adapter_test.rb
258
+ - test/iruby/session_test.rb
259
+ - test/run-test.rb