iruby-dependencies 2.0.7 → 2.1.0
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 +4 -4
- data/README.md +22 -0
- data/iruby-dependencies.gemspec +5 -3
- data/lib/iruby/dependencies.rb +9 -10
- data/lib/iruby/dependencies/version.rb +1 -1
- metadata +15 -15
- data/lib/iruby/dependencies/unload.rb +0 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b76ab22b037f610fc159aac6166d675e654f9fc
|
4
|
+
data.tar.gz: f3a1bb3b000f5e7dc8ed7f9cbbf2de3fe4243e2f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 20a85f396522977a3f7889a62a531839f11ff052fa7d699054d8a1eca67b4c47f8f7ef84adb638afd5f01175f92c0dd80a4e166ddda818acfecccb5c5db704e4
|
7
|
+
data.tar.gz: 63063d28dd6f671dd9fd1d144b738e0cb480ddda8d64fcb1ad25e4d5fb59904e7dd4365326f6c8217987151aaca611c394109c40c1fa5dc7baaac714e18a0fe1
|
data/README.md
CHANGED
@@ -23,6 +23,28 @@ $ gem install iruby-dependencies
|
|
23
23
|
|
24
24
|
You'll have to restart any IRuby kernels already running.
|
25
25
|
|
26
|
+
## Configuration
|
27
|
+
|
28
|
+
`IRuby::Dependencies` reads in configuration from Bundler (see `bundle config`). The following configuration parameters are available:
|
29
|
+
|
30
|
+
| Key | Description |
|
31
|
+
| ------ | ----------- |
|
32
|
+
| `dependencies.require` | A colon-separated list of gems to require before running a dependency block. This can be used to load plugins automatically |
|
33
|
+
| `dependencies.mypki` | Use MyPKI to pull from a PKI-enabled gem server |
|
34
|
+
| `dependencies.config` | The URL to pull a remote iruby-dependencies config as JSON.|
|
35
|
+
|
36
|
+
Remote configurations are generally used to install gem dependencies. For example:
|
37
|
+
|
38
|
+
```json
|
39
|
+
{
|
40
|
+
'gsl': [
|
41
|
+
["exec", "yum install gsl"]
|
42
|
+
]
|
43
|
+
}
|
44
|
+
```
|
45
|
+
|
46
|
+
This configuration will install the `gsl` yum package if the user uses `IRuby::Dependencies` to install the `gsl` gem.
|
47
|
+
|
26
48
|
## Usage
|
27
49
|
|
28
50
|
`IRuby::Dependencies` uses the [Bundler Gemfile syntax](http://bundler.io/v1.5/gemfile.html) with some additional methods:
|
data/iruby-dependencies.gemspec
CHANGED
@@ -8,6 +8,7 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.version = IRuby::Dependencies::VERSION
|
9
9
|
spec.authors = ["Kyle King"]
|
10
10
|
spec.email = ["kylejking@gmail.com"]
|
11
|
+
spec.license = "MIT"
|
11
12
|
|
12
13
|
spec.summary = %q{IRuby::Dependencies is a module for injecting Ruby dependencies into Jupyter Notebooks}
|
13
14
|
spec.homepage = "https://github.com/jupyter-gallery/iruby-dependencies"
|
@@ -17,8 +18,9 @@ Gem::Specification.new do |spec|
|
|
17
18
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
18
19
|
spec.require_paths = ["lib"]
|
19
20
|
|
20
|
-
spec.add_dependency "iruby"
|
21
|
-
spec.add_dependency "multi_json"
|
22
|
-
spec.add_dependency "bundler", "~> 1.
|
21
|
+
spec.add_dependency "iruby", "~> 0.3"
|
22
|
+
spec.add_dependency "multi_json", "~> 1.13"
|
23
|
+
spec.add_dependency "bundler", "~> 1.16"
|
24
|
+
|
23
25
|
spec.add_development_dependency "rake", "~> 10.0"
|
24
26
|
end
|
data/lib/iruby/dependencies.rb
CHANGED
@@ -1,9 +1,4 @@
|
|
1
1
|
require 'bundler'
|
2
|
-
require 'iruby/dependencies/dsl'
|
3
|
-
require 'iruby/dependencies/config'
|
4
|
-
require 'iruby/dependencies/unload'
|
5
|
-
require 'iruby/dependencies/shared_helpers'
|
6
|
-
require 'iruby/dependencies/version'
|
7
2
|
|
8
3
|
# require 'mypki' if requested so it is an active gem
|
9
4
|
if Bundler.settings['dependencies.mypki']
|
@@ -11,21 +6,25 @@ if Bundler.settings['dependencies.mypki']
|
|
11
6
|
require 'erector'
|
12
7
|
end
|
13
8
|
|
9
|
+
if gems = Bundler.settings['dependencies.require']
|
10
|
+
gems.split(':').each {|gem| require gem}
|
11
|
+
end
|
12
|
+
|
13
|
+
require 'iruby/dependencies/dsl'
|
14
|
+
require 'iruby/dependencies/config'
|
15
|
+
require 'iruby/dependencies/shared_helpers'
|
16
|
+
require 'iruby/dependencies/version'
|
17
|
+
|
14
18
|
module IRuby
|
15
19
|
module Dependencies
|
16
20
|
ACTIVE_GEMS = {}
|
17
21
|
|
18
|
-
# activate default gems
|
19
|
-
%w[bigdecimal io-console json psych rdoc].each {|g| gem g}
|
20
|
-
|
21
22
|
# this code is taken from bundler/inline with small changes
|
22
23
|
def self.dependencies verbose: false, &gemfile
|
23
24
|
if ACTIVE_GEMS.empty?
|
24
25
|
ACTIVE_GEMS.merge! Gem.loaded_specs.map{|n,s| [n,s.version.to_s]}.to_h
|
25
26
|
end
|
26
27
|
|
27
|
-
Bundler.unload!
|
28
|
-
|
29
28
|
Bundler.ui = verbose ? Bundler::UI::Shell.new : nil
|
30
29
|
MyPKI.init if Bundler.settings['dependencies.mypki']
|
31
30
|
|
metadata
CHANGED
@@ -1,57 +1,57 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: iruby-dependencies
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0
|
4
|
+
version: 2.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kyle King
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-01-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: iruby
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
19
|
+
version: '0.3'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '0'
|
26
|
+
version: '0.3'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: multi_json
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '1.13'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '1.13'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: bundler
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 1.
|
47
|
+
version: '1.16'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1.
|
54
|
+
version: '1.16'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rake
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -85,10 +85,10 @@ files:
|
|
85
85
|
- lib/iruby/dependencies/config.rb
|
86
86
|
- lib/iruby/dependencies/dsl.rb
|
87
87
|
- lib/iruby/dependencies/shared_helpers.rb
|
88
|
-
- lib/iruby/dependencies/unload.rb
|
89
88
|
- lib/iruby/dependencies/version.rb
|
90
89
|
homepage: https://github.com/jupyter-gallery/iruby-dependencies
|
91
|
-
licenses:
|
90
|
+
licenses:
|
91
|
+
- MIT
|
92
92
|
metadata: {}
|
93
93
|
post_install_message:
|
94
94
|
rdoc_options: []
|
@@ -106,7 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
106
106
|
version: '0'
|
107
107
|
requirements: []
|
108
108
|
rubyforge_project:
|
109
|
-
rubygems_version: 2.6.
|
109
|
+
rubygems_version: 2.6.14
|
110
110
|
signing_key:
|
111
111
|
specification_version: 4
|
112
112
|
summary: IRuby::Dependencies is a module for injecting Ruby dependencies into Jupyter
|
@@ -1,17 +0,0 @@
|
|
1
|
-
# a minor modification of the code from the
|
2
|
-
# bundler-unload gem
|
3
|
-
module Bundler
|
4
|
-
ORIGINAL_SPECS = []
|
5
|
-
|
6
|
-
class << self
|
7
|
-
def unload!
|
8
|
-
if ORIGINAL_SPECS.empty?
|
9
|
-
ORIGINAL_SPECS.concat Gem::Specification._all
|
10
|
-
end
|
11
|
-
|
12
|
-
@load = @definition = nil
|
13
|
-
ENV.replace ORIGINAL_ENV
|
14
|
-
Gem::Specification.all = ORIGINAL_SPECS
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|