iruby 0.8.0 → 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7e413c79b6abf037b0f2052ee0eed3c5176cdbcce91432330c02a6fabfd1bed2
4
- data.tar.gz: c3d551239522d942ef1356f831a48e50bdadc233d0ceb0b8ba3e95a48017902b
3
+ metadata.gz: 4f389a45d763afc30ae093cb65b479b727bde7f1a4ecf04246329f56099ec280
4
+ data.tar.gz: 16dc91aaba973d5b0e8cc4c2d9444266c9c8f479704a5394103a732f2f70ba01
5
5
  SHA512:
6
- metadata.gz: 3e3782105ba5ea49520760220fd88acab086c58600f73be2c74c822be08a7ec094e18e75084ea8bd676486d473f92ad37a40c72b9ebc64325fea1649c40edab3
7
- data.tar.gz: 2ed1524ee160602a494192bc3b8734c7f416aa3ae4beb24a3a541852bde3d565938a2ffb43916b4112c7f215cdef1509f1e5326a960b22d213575fa95c3229c6
6
+ metadata.gz: a2fcf2691c1f795abad87a5bfe174f17dd49980c11a6ffc1c3fc665e4345cf14caf3be273ff6123224864d261b9b6b730c9bd16907dcd535d2a168ce07f6763a
7
+ data.tar.gz: 523123ce6314e0f5e5e49dc0156dd00e6d3aac45b49af8780009df1977c7edd3306388ed2b3375a315ed5267da0c2311a6da21bbd0fffae58ef8fe19a8079ce6
@@ -3,10 +3,7 @@ name: CI
3
3
  on:
4
4
  push:
5
5
  pull_request:
6
- types:
7
- - opened
8
- - synchronize
9
- - reopened
6
+ workflow_dispatch:
10
7
 
11
8
  jobs:
12
9
  ubuntu:
@@ -19,11 +16,14 @@ jobs:
19
16
  os:
20
17
  - ubuntu-latest
21
18
  ruby:
19
+ - "3.4"
22
20
  - "3.3"
23
21
  - "3.2"
24
22
  - "3.1"
25
23
  - "3.0"
26
24
  - "2.7"
25
+ - "2.6"
26
+ - "2.5"
27
27
  - debug
28
28
 
29
29
  steps:
@@ -37,17 +37,41 @@ jobs:
37
37
 
38
38
  - run: rake build
39
39
 
40
- - name: Install ffi 1.6 for old Ruby
40
+ - name: Install ffi (if Ruby 2.7)
41
41
  if: |
42
42
  matrix.ruby == '2.7'
43
43
  run: |
44
44
  cat <<GEMFILE > Gemfile.irb
45
45
  source 'https://rubygems.org'
46
- gem 'ffi', '~> 1.6'
46
+ gem 'ffi'
47
47
  GEMFILE
48
48
  BUNDLE_GEMFILE=Gemfile.irb bundle install --jobs 4 --retry 3
49
49
 
50
- - run: gem install pkg/*.gem
50
+ - name: Install ffi 1.6.x (if Ruby 2.6)
51
+ if: |
52
+ matrix.ruby == '2.6'
53
+ run: |
54
+ cat <<GEMFILE > Gemfile.irb
55
+ source 'https://rubygems.org'
56
+ gem 'ffi', '~> 1.6.0'
57
+ GEMFILE
58
+ BUNDLE_GEMFILE=Gemfile.irb bundle install --jobs 4 --retry 3
59
+
60
+ - name: Install ffi 1.6.x and irb < 1.4.3 (if Ruby 2.5)
61
+ if: |
62
+ matrix.ruby == '2.5'
63
+ run: |
64
+ cat <<GEMFILE > Gemfile.irb
65
+ source 'https://rubygems.org'
66
+ gem 'ffi', '~> 1.6.0'
67
+ gem 'irb', '< 1.4.3'
68
+ GEMFILE
69
+ BUNDLE_GEMFILE=Gemfile.irb bundle install --jobs 4 --retry 3
70
+
71
+ - name: Install IRuby gem
72
+ run: |
73
+ gem install rubygems-requirements-system
74
+ gem install pkg/*.gem
51
75
 
52
76
  - run: ruby -r iruby -e "p IRuby::SessionAdapter.select_adapter_class"
53
77
  env:
@@ -112,7 +136,7 @@ jobs:
112
136
 
113
137
  - run: rake build
114
138
 
115
- - run: gem install pkg/*.gem
139
+ - run: gem install rubygems-requirements-system pkg/*.gem
116
140
 
117
141
  - run: ruby -r iruby -e "p IRuby::SessionAdapter.select_adapter_class"
118
142
  env:
data/CHANGES.md CHANGED
@@ -1,3 +1,21 @@
1
+ # 0.8.2 (2025-04-10)
2
+
3
+ * Update CI to refresh apt packages before installing IRuby gem by @kojix2 in https://github.com/SciRuby/iruby/pull/367
4
+ * Fix missing `OStream#closed?` method by @RobinDaugherty in https://github.com/SciRuby/iruby/pull/368
5
+ * Use rubygems-requirements-system to install system dependencies automatically by @kou in https://github.com/SciRuby/iruby/pull/369
6
+ * Various typo corrections by @kojix2 in https://github.com/SciRuby/iruby/pull/370
7
+ * Minor changes to README by @kojix2 in https://github.com/SciRuby/iruby/pull/371
8
+
9
+ # 0.8.1 (2025-02-16)
10
+
11
+ * Add support for jupyter widgets by @matt-do-it in https://github.com/SciRuby/iruby/pull/350
12
+ * Suppress "literal string will be frozen in the future" warning by @tikkss in https://github.com/SciRuby/iruby/pull/353
13
+ * Fix warnings in project by @simpl1g in https://github.com/SciRuby/iruby/pull/356
14
+ * restore support for IRB <= v1.13.0 by @sealocal in https://github.com/SciRuby/iruby/pull/358
15
+ * Restore ruby 2.6 and 2.5 in CI by @sealocal in https://github.com/SciRuby/iruby/pull/359
16
+ * Add Ruby 3.4 to CI by @kojix2 in https://github.com/SciRuby/iruby/pull/360
17
+ * Fix NoMethodError in backend by @edsinclair in https://github.com/SciRuby/iruby/pull/364
18
+
1
19
  # 0.8.0 (2024-07-28)
2
20
 
3
21
  * Hide output on assignment by @ankane in https://github.com/SciRuby/iruby/pull/312
data/Gemfile CHANGED
@@ -1,4 +1,7 @@
1
1
  source 'https://rubygems.org'
2
+
3
+ plugin 'rubygems-requirements-system'
4
+
2
5
  gemspec
3
6
 
4
7
  group :pry do
@@ -15,3 +18,8 @@ end
15
18
  group :test do
16
19
  gem 'cztop'
17
20
  end
21
+
22
+ # Tests are failing on Ruby 3.3 because warnings related to OpenStruct are being written to the standard error output.
23
+ # This is being captured by Open3.capture2e and then mistakenly parsed as JSON.
24
+ # This gem can be removed when json gem is updated
25
+ gem 'ostruct'
data/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
  [![Build Status](https://github.com/SciRuby/iruby/workflows/CI/badge.svg)](https://github.com/SciRuby/iruby/actions)
5
5
  [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/RubyData/binder/master?filepath=ruby-data.ipynb)
6
6
 
7
- IRuby is a Ruby kernel for [Jupyter project](http://try.jupyter.org/).
7
+ IRuby is a Ruby kernel for [Jupyter project](https://jupyter.org/).
8
8
 
9
9
  ## Try IRuby
10
10
 
@@ -20,54 +20,44 @@ The following URL launches JupyterLab directly on Binder.
20
20
 
21
21
  ### Requirements
22
22
 
23
- * [Jupyter](https://jupyter.org)
23
+ - [Jupyter](https://jupyter.org)
24
24
 
25
25
  The following requirements are automatically installed.
26
26
 
27
- * [ffi-rzmq](https://github.com/chuckremes/ffi-rzmq)
28
- * [libzmq](https://github.com/zeromq/libzmq)
27
+ - [ffi-rzmq](https://github.com/chuckremes/ffi-rzmq)
28
+ - [libzmq](https://github.com/zeromq/libzmq)
29
29
 
30
30
  The following dependencies are optional.
31
31
 
32
- * [Pry][Pry], if you want to use [Pry][Pry] instead of IRB for the code execution backend
32
+ - [Pry][Pry], if you want to use [Pry][Pry] instead of IRB for the code execution backend
33
33
 
34
34
  ### Installing Jupyter Notebook and/or JupyterLab
35
35
 
36
36
  See the official document to know how to install Jupyter Notebook and/or JupyterLab.
37
37
 
38
- * <https://jupyter.readthedocs.io/en/latest/install/notebook-classic.html>
39
- * <https://jupyter.readthedocs.io/en/latest/install.html>
38
+ - <https://jupyter.readthedocs.io/en/latest/install/notebook-classic.html>
39
+ - <https://jupyter.readthedocs.io/en/latest/install.html>
40
40
 
41
41
  ### Ubuntu
42
42
 
43
- #### Ubuntu 17+
43
+ #### Ubuntu 22.04+
44
44
 
45
45
  ```shell
46
46
  sudo apt install libtool libffi-dev ruby ruby-dev make
47
47
 
48
- gem install --user-install iruby
49
- iruby register --force
50
- ```
51
-
52
- #### Ubuntu 16
53
-
54
- The latest IRuby requires Ruby >= 2.4 while Ubuntu's official Ruby package is version 2.3.
55
- So you need to install Ruby >= 2.4 by yourself before preparing IRuby.
56
- We recommend to use rbenv.
57
-
58
- ```shell
59
- sudo apt install libtool libffi-dev ruby ruby-dev make
48
+ gem install --user-install rubygems-requirements-system
60
49
  gem install --user-install iruby
61
50
  iruby register --force
62
51
  ```
63
52
 
64
53
  ### Fedora
65
54
 
66
- #### Fedora 36
55
+ #### Fedora 40+
67
56
 
68
57
  ```shell
69
58
  sudo dnf install ruby ruby-dev make zeromq-devel
70
59
 
60
+ gem install --user-install rubygems-requirements-system
71
61
  gem install --user-install iruby
72
62
  iruby register --force
73
63
  ```
@@ -89,6 +79,7 @@ Install Jupyter.
89
79
  #### Homebrew
90
80
 
91
81
  ```shell
82
+ gem install rubygems-requirements-system
92
83
  gem install iruby
93
84
  iruby register --force
94
85
  ```
@@ -99,6 +90,7 @@ If you are using macports, run the following commands.
99
90
 
100
91
  ```shell
101
92
  port install libtool autoconf automake autogen
93
+ gem install rubygems-requirements-system
102
94
  gem install iruby
103
95
  iruby register --force
104
96
  ```
@@ -116,8 +108,8 @@ docker run --rm -it -p 8888:8888 rubydata/datascience-notebook
116
108
 
117
109
  You can use Java classes in your IRuby notebook.
118
110
 
119
- * JRuby version >= 9.0.4.0
120
- * iruby gem
111
+ - JRuby version >= 9.0.4.0
112
+ - iruby gem
121
113
 
122
114
  After installation, make sure that your `env` is set up to use jruby.
123
115
 
@@ -160,8 +152,8 @@ export IRUBY_SESSION_ADAPTER="cztop"
160
152
 
161
153
  There are two backends: PlainBackend and PryBackend.
162
154
 
163
- * PlainBackend is the default backend. It uses [IRB](https://github.com/ruby/irb).
164
- * PryBackend uses [Pry][Pry].
155
+ - PlainBackend is the default backend. It uses [IRB](https://github.com/ruby/irb).
156
+ - PryBackend uses [Pry][Pry].
165
157
 
166
158
  You can switch the backend to PryBackend by running the code below.
167
159
 
@@ -171,9 +163,9 @@ IRuby::Kernel.instance.switch_backend!(:pry)
171
163
 
172
164
  ## Notebooks
173
165
 
174
- Take a look at the [example notebook](http://nbviewer.ipython.org/urls/raw.github.com/SciRuby/sciruby-notebooks/master/getting_started.ipynb)
166
+ Take a look at the [example notebook](https://nbviewer.jupyter.org/urls/raw.github.com/SciRuby/sciruby-notebooks/master/getting_started.ipynb)
175
167
  and the [collection of notebooks](https://github.com/SciRuby/sciruby-notebooks/) which includes a Dockerfile to create a containerized installation of iruby
176
- and other scientific gems. You can find the prebuild image at [dockerhub](https://registry.hub.docker.com/u/minad/sciruby-notebooks/).
168
+ and other scientific gems.
177
169
 
178
170
  ## Contributing
179
171
 
data/iruby.gemspec CHANGED
@@ -15,7 +15,6 @@ Gem::Specification.new do |s|
15
15
  s.executables = %w[iruby]
16
16
  s.test_files = s.files.grep(%r{^test/})
17
17
  s.require_paths = %w[lib]
18
- s.extensions = %w[ext/Rakefile]
19
18
 
20
19
  s.required_ruby_version = '>= 2.3.0'
21
20
 
@@ -25,12 +24,21 @@ Gem::Specification.new do |s|
25
24
  s.add_dependency 'logger'
26
25
  s.add_dependency 'mime-types', '>= 3.3.1'
27
26
  s.add_dependency 'multi_json', '~> 1.11'
28
- s.add_dependency 'native-package-installer'
29
27
 
30
28
  s.add_development_dependency 'pycall', '>= 1.2.1'
31
29
  s.add_development_dependency 'rake'
32
30
  s.add_development_dependency 'test-unit'
33
31
  s.add_development_dependency 'test-unit-rr'
34
32
 
33
+ [
34
+ ['arch_linux', 'zeromq'],
35
+ ['debian', 'libzmq3-dev'],
36
+ ['freebsd', 'libzmq4'],
37
+ ['homebrew', 'zmq'],
38
+ ['macports', 'zmq'],
39
+ ].each do |platform, package|
40
+ s.requirements << "system: libzmq: #{platform}: #{package}"
41
+ end
42
+
35
43
  s.metadata['msys2_mingw_dependencies'] = 'zeromq'
36
44
  end
@@ -225,7 +225,7 @@ module IRuby
225
225
  end
226
226
 
227
227
  if ipython_dir
228
- File.join(ipython_dir, 'kerenels')
228
+ File.join(ipython_dir, 'kernels')
229
229
  else
230
230
  Jupyter.kernelspec_dir
231
231
  end
@@ -265,7 +265,7 @@ module IRuby
265
265
  opts.on(
266
266
  "--display-name=VALUE", String,
267
267
  "Specify the display name for the kernelspec. This is helpful when you have multiple IRuby kernels."
268
- ) {|v| kernel_display_name = v }
268
+ ) {|v| params.display_name = v }
269
269
 
270
270
  # TODO: --profile
271
271
  # TODO: --prefix
data/lib/iruby/backend.rb CHANGED
@@ -50,6 +50,7 @@ module IRuby
50
50
  @irb = IRB::Irb.new(@workspace)
51
51
  @eval_path = @irb.context.irb_path
52
52
  IRB.conf[:MAIN_CONTEXT] = @irb.context
53
+ @completor = IRB::RegexpCompletor.new if defined? IRB::RegexpCompletor # IRB::VERSION >= 1.8.2
53
54
  end
54
55
 
55
56
  def eval_binding
@@ -57,12 +58,23 @@ module IRuby
57
58
  end
58
59
 
59
60
  def eval(code, store_history)
60
- @irb.context.evaluate(@irb.build_statement(code), 0)
61
+ @irb.context.evaluate(parse_code(code), 0)
61
62
  @irb.context.last_value unless IRuby.silent_assignment && assignment_expression?(code)
62
63
  end
63
64
 
65
+ def parse_code(code)
66
+ return code if Gem::Version.new(IRB::VERSION) < Gem::Version.new('1.13.0')
67
+ return @irb.parse_input(code) if @irb.respond_to?(:parse_input)
68
+ return @irb.build_statement(code) if @irb.respond_to?(:build_statement)
69
+ end
70
+
64
71
  def complete(code)
65
- IRB::InputCompletor::CompletionProc.call(code)
72
+ if @completor
73
+ # preposing and postposing never used, so they are empty, pass only target as code
74
+ @completor.completion_candidates('', code, '', bind: @workspace.binding)
75
+ else
76
+ IRB::InputCompletor::CompletionProc.call(code)
77
+ end
66
78
  end
67
79
 
68
80
  private
data/lib/iruby/comm.rb CHANGED
@@ -13,17 +13,17 @@ module IRuby
13
13
  @target_name, @comm_id = target_name, comm_id
14
14
  end
15
15
 
16
- def open(**data)
17
- Kernel.instance.session.send(:publish, :comm_open, comm_id: @comm_id, data: data, target_name: @target_name)
16
+ def open(metadata = nil, **data)
17
+ Kernel.instance.session.send(:publish, :comm_open, metadata, comm_id: @comm_id, data: data, target_name: @target_name)
18
18
  Comm.comm[@comm_id] = self
19
19
  end
20
20
 
21
- def send(**data)
22
- Kernel.instance.session.send(:publish, :comm_msg, comm_id: @comm_id, data: data)
21
+ def send(metadata = nil, **data)
22
+ Kernel.instance.session.send(:publish, :comm_msg, metadata, comm_id: @comm_id, data: data)
23
23
  end
24
24
 
25
- def close(**data)
26
- Kernel.instance.session.send(:publish, :comm_close, comm_id: @comm_id, data: data)
25
+ def close(metadata = nil, **data)
26
+ Kernel.instance.session.send(:publish, :comm_close, metadata, comm_id: @comm_id, data: data)
27
27
  Comm.comm.delete(@comm_id)
28
28
  end
29
29
 
data/lib/iruby/display.rb CHANGED
@@ -7,7 +7,7 @@ module IRuby
7
7
  "text/markdown" => :to_markdown,
8
8
  "image/svg+xml" => :to_svg,
9
9
  "image/png" => :to_png,
10
- "appliation/pdf" => :to_pdf,
10
+ "application/pdf" => :to_pdf,
11
11
  "image/jpeg" => :to_jpeg,
12
12
  "text/latex" => [:to_latex, :to_tex],
13
13
  # NOTE: Do not include the entry of "application/json" because
@@ -113,14 +113,14 @@ module IRuby
113
113
  if FORCE_TEXT_TYPES.include?(mime)
114
114
  true
115
115
  else
116
- MIME::Type.new(mime).ascii?
116
+ MIME::Type.new("content-type" => mime).ascii?
117
117
  end
118
118
  end
119
119
 
120
120
  private def render_mimebundle(obj, exact_mime, fuzzy_mime)
121
121
  data = {}
122
122
  include_mime = [exact_mime].compact
123
- formats, metadata = obj.to_iruby_mimebundle(include: include_mime)
123
+ formats, _metadata = obj.to_iruby_mimebundle(include: include_mime)
124
124
  formats.each do |mime, value|
125
125
  if fuzzy_mime.nil? || mime.include?(fuzzy_mime)
126
126
  data[mime] = value
@@ -407,7 +407,6 @@ module IRuby
407
407
 
408
408
  type { Gruff::Base }
409
409
  format 'image' do |obj|
410
- image = obj.to_image
411
410
  format_magick_image.(obj.to_image)
412
411
  end
413
412
 
@@ -90,7 +90,7 @@ module IRuby
90
90
  rows2 = rows[-maxrows / 2 + 1..-1]
91
91
  end
92
92
 
93
- table = '<table>'
93
+ table = +'<table>'
94
94
 
95
95
  if header1 && options[:header] != false
96
96
  table << '<tr>' << header1.map {|k| "<th>#{cell k}</th>" }.join
data/lib/iruby/ostream.rb CHANGED
@@ -11,6 +11,10 @@ module IRuby
11
11
  @session = nil
12
12
  end
13
13
 
14
+ def closed?
15
+ @session.nil?
16
+ end
17
+
14
18
  def flush
15
19
  end
16
20
 
@@ -48,7 +52,7 @@ module IRuby
48
52
 
49
53
  # Called by irb
50
54
  def set_encoding(extern, intern)
51
- a = extern
55
+ extern
52
56
  end
53
57
 
54
58
  private
@@ -4,10 +4,10 @@ module IRuby
4
4
 
5
5
  private
6
6
 
7
- def serialize(idents, header, content)
7
+ def serialize(idents, header, metadata = nil, content)
8
8
  msg = [MultiJson.dump(header),
9
9
  MultiJson.dump(@last_recvd_msg ? @last_recvd_msg[:header] : {}),
10
- '{}',
10
+ MultiJson.dump(metadata || {}),
11
11
  MultiJson.dump(content || {})]
12
12
  frames = ([*idents].compact.map(&:to_s) << DELIM << sign(msg)) + msg
13
13
  IRuby.logger.debug "Sent #{frames.inspect}"
data/lib/iruby/session.rb CHANGED
@@ -70,7 +70,7 @@ module IRuby
70
70
  end
71
71
  end
72
72
 
73
- def send(socket_type, message_type, content)
73
+ def send(socket_type, message_type, metadata = nil, content)
74
74
  sock = check_socket_type(socket_type)
75
75
  idents = if socket_type == :reply && @last_recvd_msg
76
76
  @last_recvd_msg[:idents]
@@ -85,7 +85,7 @@ module IRuby
85
85
  session: @session_id,
86
86
  version: '5.0'
87
87
  }
88
- @adapter.send(sock, serialize(idents, header, content))
88
+ @adapter.send(sock, serialize(idents, header, metadata, content))
89
89
  end
90
90
 
91
91
  def recv(socket_type)
@@ -60,7 +60,7 @@ module IRuby
60
60
  end
61
61
  end
62
62
  if name == 'cztop'
63
- warn "WARNING: cztop was deprecated and will be removed; Use ffi-rzmq, instead."
63
+ warn "WARNING: cztop is deprecated and will be removed; Use ffi-rzmq instead."
64
64
  end
65
65
  return cls
66
66
  end
data/lib/iruby/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module IRuby
2
- VERSION = '0.8.0'
2
+ VERSION = '0.8.2'
3
3
  end
data/run-test.sh CHANGED
@@ -4,7 +4,7 @@ set -ex
4
4
 
5
5
  export PYTHON=python3
6
6
 
7
- ADAPTERS="cztop ffi-rzmq pyzmq"
7
+ ADAPTERS="cztop ffi-rzmq"
8
8
 
9
9
  for adapter in $ADAPTERS; do
10
10
  export IRUBY_TEST_SESSION_ADAPTER_NAME=$adapter
@@ -38,7 +38,7 @@ class IRubyTest::IntegrationTest < IRubyTest::TestBase
38
38
  end
39
39
 
40
40
  def test_interaction
41
- omit("This test too much unstable")
41
+ omit("This test is too unstable")
42
42
 
43
43
  write '"Hello, world!"'
44
44
  expect '"Hello, world!"'
@@ -83,7 +83,7 @@ module IRubyTest::ApplicationTests
83
83
 
84
84
  add_kernel_options("--log=#{log_file}", boot_file)
85
85
 
86
- out, status = Open3.capture2e(*iruby_command("console"), in: :close)
86
+ _out, status = Open3.capture2e(*iruby_command("console"), in: :close)
87
87
  assert status.success?
88
88
  assert_path_exist log_file
89
89
  assert_match(/\bINFO -- bootfile: !!! LOG MESSAGE FROM BOOT FILE !!!$/, File.read(log_file))
@@ -61,7 +61,7 @@ puts "Fake Jupyter"
61
61
  test("a new IRuby kernel `#{DEFAULT_KERNEL_NAME}` will be installed in JUPYTER_DATA_DIR") do
62
62
  assert_path_not_exist @kernel_json
63
63
 
64
- out, status = Open3.capture2e(*iruby_command("register"))
64
+ _out, status = Open3.capture2e(*iruby_command("register"))
65
65
  assert status.success?
66
66
  assert_path_exist @kernel_json
67
67
 
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.8.0
4
+ version: 0.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Mendler
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2024-07-28 00:00:00.000000000 Z
12
+ date: 2025-04-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: data_uri
@@ -95,20 +95,6 @@ dependencies:
95
95
  - - "~>"
96
96
  - !ruby/object:Gem::Version
97
97
  version: '1.11'
98
- - !ruby/object:Gem::Dependency
99
- name: native-package-installer
100
- requirement: !ruby/object:Gem::Requirement
101
- requirements:
102
- - - ">="
103
- - !ruby/object:Gem::Version
104
- version: '0'
105
- type: :runtime
106
- prerelease: false
107
- version_requirements: !ruby/object:Gem::Requirement
108
- requirements:
109
- - - ">="
110
- - !ruby/object:Gem::Version
111
- version: '0'
112
98
  - !ruby/object:Gem::Dependency
113
99
  name: pycall
114
100
  requirement: !ruby/object:Gem::Requirement
@@ -170,8 +156,7 @@ email:
170
156
  - mail@daniel-mendler.de
171
157
  executables:
172
158
  - iruby
173
- extensions:
174
- - ext/Rakefile
159
+ extensions: []
175
160
  extra_rdoc_files: []
176
161
  files:
177
162
  - ".github/workflows/ci.yml"
@@ -187,7 +172,6 @@ files:
187
172
  - docker/setup.sh
188
173
  - docker/test.sh
189
174
  - exe/iruby
190
- - ext/Rakefile
191
175
  - iruby.gemspec
192
176
  - lib/iruby.rb
193
177
  - lib/iruby/application.rb
@@ -281,8 +265,13 @@ required_rubygems_version: !ruby/object:Gem::Requirement
281
265
  - - ">="
282
266
  - !ruby/object:Gem::Version
283
267
  version: '0'
284
- requirements: []
285
- rubygems_version: 3.5.11
268
+ requirements:
269
+ - 'system: libzmq: arch_linux: zeromq'
270
+ - 'system: libzmq: debian: libzmq3-dev'
271
+ - 'system: libzmq: freebsd: libzmq4'
272
+ - 'system: libzmq: homebrew: zmq'
273
+ - 'system: libzmq: macports: zmq'
274
+ rubygems_version: 3.5.22
286
275
  signing_key:
287
276
  specification_version: 4
288
277
  summary: Ruby Kernel for Jupyter
data/ext/Rakefile DELETED
@@ -1,19 +0,0 @@
1
- task default: :all
2
-
3
- task all: [:ensure_zeromq]
4
-
5
- task :ensure_zeromq do
6
- begin
7
- require 'ffi-rzmq'
8
- rescue LoadError
9
- require 'native-package-installer'
10
- unless NativePackageInstaller.install(arch_linux: 'zeromq',
11
- debian: 'libzmq3-dev',
12
- freebsd: 'libzmq4',
13
- homebrew: 'zmq',
14
- macports: 'zmq',
15
- redhat: 'zeromq-devel')
16
- raise 'Failed to install ZeroMQ'
17
- end
18
- end
19
- end