sciruby 0.2.1 → 0.2.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 +4 -4
- data/CHANGES +5 -0
- data/Gemfile +5 -31
- data/README.rdoc +7 -1
- data/gems.yml +63 -0
- data/lib/sciruby.rb +2 -0
- data/lib/sciruby/autoload.rb +13 -0
- data/lib/sciruby/gems.rb +46 -18
- data/lib/sciruby/version.rb +4 -1
- data/sciruby.gemspec +2 -2
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 75215706909588ef2802c12bdf6d118cb479bb77
|
4
|
+
data.tar.gz: c3d841e10f387587b3381430c32447c5cb00b554
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 76d7cf295cffcdbf903dbab0eed19d9aa2a191d47bfa480229c3b1dac635a8b0b6818fd92405c86d2293c6342426123266241e1d67ecd20c3da10285c52d17ca
|
7
|
+
data.tar.gz: f83e95db9dd84128c767d8fe5cb8954acfff6d2ff5bd220c300a157869c2c408394bd875c5fa6f59630ceadf13e8c010e4ab103d99ee5108c0cbe8ece5eff7cc
|
data/CHANGES
CHANGED
data/Gemfile
CHANGED
@@ -1,34 +1,8 @@
|
|
1
|
-
|
1
|
+
$: << File.join(File.dirname(__FILE__), 'lib')
|
2
|
+
require 'sciruby'
|
2
3
|
|
3
4
|
source 'https://rubygems.org'
|
4
5
|
|
5
|
-
|
6
|
-
gem
|
7
|
-
|
8
|
-
gem 'rubyvis'
|
9
|
-
gem 'nyaplot'
|
10
|
-
gem 'plotrb'
|
11
|
-
gem 'gnuplot'
|
12
|
-
|
13
|
-
gem 'iruby'
|
14
|
-
gem 'pry'
|
15
|
-
gem 'awesome_print'
|
16
|
-
|
17
|
-
gem 'daru'
|
18
|
-
|
19
|
-
gem 'integration'
|
20
|
-
gem 'minimization'
|
21
|
-
gem 'distribution'
|
22
|
-
|
23
|
-
gem 'statsample'
|
24
|
-
gem 'statsample-glm'
|
25
|
-
gem 'statsample-bivariate-extension'
|
26
|
-
#gem 'statsample-timeseries' # currently not working because of activesupport dependency
|
27
|
-
gem 'extendmatrix'
|
28
|
-
|
29
|
-
gem 'publisci'
|
30
|
-
|
31
|
-
gem 'ai4r'
|
32
|
-
|
33
|
-
# from the bioruby project
|
34
|
-
gem 'bio'
|
6
|
+
SciRuby.gems.all.each do |name, options|
|
7
|
+
gem name, *options[:version], require: options[:require].first
|
8
|
+
end
|
data/README.rdoc
CHANGED
@@ -2,7 +2,6 @@
|
|
2
2
|
|
3
3
|
Tools for Scientific Computing in Ruby
|
4
4
|
|
5
|
-
* {Installation}[https://github.com/SciRuby/sciruby/wiki/Installation]
|
6
5
|
* {Website}[http://sciruby.com]
|
7
6
|
* {Google+}[https://plus.google.com/109304769076178160953/posts]
|
8
7
|
* {NMatrix}[http://github.com/SciRuby/nmatrix]
|
@@ -13,6 +12,13 @@ Ruby has for some time had no equivalent to the beautifully constructed numpy, s
|
|
13
12
|
|
14
13
|
We are not the first with this idea, but we are trying to bring it to life.
|
15
14
|
|
15
|
+
== Installation
|
16
|
+
|
17
|
+
gem install sciruby
|
18
|
+
gem install sciruby-full
|
19
|
+
|
20
|
+
See also the {guide in the wiki}[https://github.com/SciRuby/sciruby/wiki/Installation].
|
21
|
+
|
16
22
|
== License
|
17
23
|
|
18
24
|
Copyright (c) 2010 onward, The Ruby Science Foundation.
|
data/gems.yml
ADDED
@@ -0,0 +1,63 @@
|
|
1
|
+
# Specify all gems which are installed by the `sciruby-full` gem or recommended by the `sciruby` gem.
|
2
|
+
|
3
|
+
nmatrix:
|
4
|
+
description: 'Numerical matrix library'
|
5
|
+
module: [NMatrix, NVector]
|
6
|
+
gsl-nmatrix:
|
7
|
+
description: 'Bindings for the GNU scientific library'
|
8
|
+
require: gsl
|
9
|
+
module: GSL
|
10
|
+
|
11
|
+
rubyvis:
|
12
|
+
description: 'Plotting library'
|
13
|
+
nyaplot:
|
14
|
+
description: 'Plotting library'
|
15
|
+
plotrb:
|
16
|
+
description: 'Plotting library'
|
17
|
+
gnuplot:
|
18
|
+
description: 'Plotting library'
|
19
|
+
|
20
|
+
iruby:
|
21
|
+
module: IRuby
|
22
|
+
description: 'Ruby kernel for Jupyter'
|
23
|
+
pry:
|
24
|
+
module: Pry
|
25
|
+
description: 'Ruby repl'
|
26
|
+
awesome_print:
|
27
|
+
module: ~
|
28
|
+
description: 'Pretty object printing'
|
29
|
+
|
30
|
+
daru:
|
31
|
+
description: 'Dataframe library'
|
32
|
+
|
33
|
+
integration:
|
34
|
+
description: 'Numerical integration'
|
35
|
+
minimization:
|
36
|
+
description: 'Numerical minimization'
|
37
|
+
distribution:
|
38
|
+
description: 'Statistical distributions'
|
39
|
+
|
40
|
+
statsample:
|
41
|
+
descriptions: 'Statistics'
|
42
|
+
statsample-glm:
|
43
|
+
descriptions: 'Statistics'
|
44
|
+
module: ~
|
45
|
+
statsample-bivariate-extension:
|
46
|
+
descriptions: 'Statistics'
|
47
|
+
module: ~
|
48
|
+
#statsample-timeseries: # currently not working because of activesupport dependency
|
49
|
+
# descriptions: 'Statistics'
|
50
|
+
# module: ~
|
51
|
+
extendmatrix:
|
52
|
+
description: 'Helper methods for Matrix'
|
53
|
+
module: ~
|
54
|
+
|
55
|
+
publisci:
|
56
|
+
description: 'Publishing toolkit'
|
57
|
+
module: PubliSci
|
58
|
+
|
59
|
+
ai4r:
|
60
|
+
description: 'Artificial intelligence'
|
61
|
+
|
62
|
+
bio:
|
63
|
+
description: 'Bioinformatics suite'
|
data/lib/sciruby.rb
CHANGED
@@ -0,0 +1,13 @@
|
|
1
|
+
class Module
|
2
|
+
alias :const_missing_without_sciruby :const_missing
|
3
|
+
|
4
|
+
def const_missing(name)
|
5
|
+
paths = SciRuby.gems.autoload_modules.delete(name)
|
6
|
+
if paths
|
7
|
+
paths.each {|path| require path }
|
8
|
+
const_get(name)
|
9
|
+
else
|
10
|
+
const_missing_without_sciruby(name)
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
data/lib/sciruby/gems.rb
CHANGED
@@ -1,27 +1,55 @@
|
|
1
1
|
module SciRuby
|
2
|
-
|
2
|
+
# @api public
|
3
|
+
class Gems
|
4
|
+
# Return map of all known SciRuby gems
|
5
|
+
attr_reader :all
|
3
6
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
+
# Modules which can be autoloaded
|
8
|
+
attr_reader :autoload_modules
|
9
|
+
|
10
|
+
# Return map of all installed SciRuby gems
|
11
|
+
def installed
|
12
|
+
@installed ||=
|
13
|
+
begin
|
14
|
+
require 'rubygems'
|
15
|
+
Hash[all.map {|name, options| installed_gem(name, options) }.compact]
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
# Return list of all known SciRuby modules
|
20
|
+
def all_modules
|
21
|
+
@all_modules ||= all.map { |name, options| options[:module] }.flatten
|
22
|
+
end
|
23
|
+
|
24
|
+
# Return list of all installed SciRuby modules
|
25
|
+
def installed_modules
|
26
|
+
@installed_modules ||= installed.map { |name, options| options[:module] }.flatten
|
27
|
+
end
|
7
28
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
Hash[
|
29
|
+
# Initialize gem list
|
30
|
+
def initialize(file)
|
31
|
+
@all, @autoload_modules = {}, {}
|
32
|
+
YAML.load_file(file).each do |name, options|
|
33
|
+
options = Hash[options.map {|k,v| [k.to_sym, v] }]
|
34
|
+
options[:require] = [*(options[:require] || name)]
|
35
|
+
options[:module] = name.capitalize unless options.include?(:module)
|
36
|
+
options[:module] = [*options[:module]].map(&:to_sym)
|
37
|
+
options[:module].each {|mod| @autoload_modules[mod] = options[:require] }
|
38
|
+
@all[name] = options
|
13
39
|
end
|
14
|
-
|
40
|
+
end
|
15
41
|
|
16
|
-
|
17
|
-
installed_gems.each {|gem,_| require gem }
|
18
|
-
end
|
42
|
+
private
|
19
43
|
|
20
|
-
|
44
|
+
def installed_gem(name, options)
|
45
|
+
[name, options.merge(gem_version: Gem::Specification.find_by_name(name).version.to_s)]
|
46
|
+
rescue Exception
|
47
|
+
nil
|
48
|
+
end
|
49
|
+
end
|
21
50
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
nil
|
51
|
+
@gems = Gems.new(File.expand_path(File.join(__FILE__, '..', '..', '..', 'gems.yml')))
|
52
|
+
class << self
|
53
|
+
attr_reader :gems
|
26
54
|
end
|
27
55
|
end
|
data/lib/sciruby/version.rb
CHANGED
data/sciruby.gemspec
CHANGED
@@ -24,12 +24,12 @@ Gem::Specification.new do |s|
|
|
24
24
|
s.files.reject! {|f| f =~ /\Alib/ }
|
25
25
|
|
26
26
|
s.add_runtime_dependency 'sciruby', "= #{SciRuby::VERSION}"
|
27
|
-
SciRuby.
|
27
|
+
SciRuby.gems.all.each {|name, options| s.add_runtime_dependency name, *options[:version] }
|
28
28
|
else
|
29
29
|
s.files.delete 'sciruby-full.gemspec'
|
30
30
|
|
31
31
|
m = "Please consider installing 'sciruby-full' or the following gems:\n"
|
32
|
-
SciRuby.
|
32
|
+
SciRuby.gems.all.each {|name, options| m << " * #{name}\n" }
|
33
33
|
s.post_install_message = m << "\n"
|
34
34
|
end
|
35
35
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sciruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- SciRuby Development Team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-06-
|
11
|
+
date: 2015-06-09 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Scientific gems for Ruby
|
14
14
|
email:
|
@@ -23,7 +23,9 @@ files:
|
|
23
23
|
- Gemfile
|
24
24
|
- LICENSE.txt
|
25
25
|
- README.rdoc
|
26
|
+
- gems.yml
|
26
27
|
- lib/sciruby.rb
|
28
|
+
- lib/sciruby/autoload.rb
|
27
29
|
- lib/sciruby/gems.rb
|
28
30
|
- lib/sciruby/version.rb
|
29
31
|
- sciruby.gemspec
|