latest_ruby 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/.gitignore +4 -0
- data/CHANGELOG.md +6 -0
- data/Gemfile +2 -0
- data/LICENCE +19 -0
- data/README.md +88 -0
- data/Rakefile +15 -0
- data/VERSION +1 -0
- data/latest_ruby.gemspec +20 -0
- data/lib/latest_ruby.rb +56 -0
- data/lib/latest_ruby/retrievers/jruby_retriever.rb +13 -0
- data/lib/latest_ruby/retrievers/macruby_retriever.rb +11 -0
- data/lib/latest_ruby/retrievers/maglev_retriever.rb +11 -0
- data/lib/latest_ruby/retrievers/mri_retriever.rb +13 -0
- data/lib/latest_ruby/retrievers/rubinius_retriever.rb +19 -0
- data/lib/latest_ruby/rubies/jruby.rb +26 -0
- data/lib/latest_ruby/rubies/macruby.rb +25 -0
- data/lib/latest_ruby/rubies/maglev.rb +25 -0
- data/lib/latest_ruby/rubies/mri.rb +26 -0
- data/lib/latest_ruby/rubies/rubinius.rb +25 -0
- data/lib/latest_ruby/ruby.rb +15 -0
- data/lib/latest_ruby/ruby_version.rb +26 -0
- data/spec/helper.rb +6 -0
- data/spec/latest_ruby_spec.rb +7 -0
- metadata +123 -0
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ZDA2MGExOTViMTA2YTU0MGEyMzBjYTRmZDRkYjVhZTZjZmQ5MDNkOA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
ZGFkMDM1N2U5MGFjNDRjZWNmMDlkYzliZGYzMzQ0MjJlYzcyNzJmOA==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
YmQzMTE0YzBjZTA4M2I5YTIxNWQ0YjE1YmE2NjM5NWNmZTNiZDBmZWMzYmYy
|
10
|
+
YmE4OWI2Njk1MDVjNjU2MDM2YTMzZmYyNzUyNmUxZDM4NTc5ZjA0MDU2NmJh
|
11
|
+
NTYwYjViNWQxMTU0MmRmMmZkNjg3MDVmOTBlOTRiMDBjN2VhYWQ=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
MWQ4ZGJlYjkxN2E3NDZiMWRkMDUyNTQ1MjJiM2I0MjVmMzliOWZmMDI2MWNl
|
14
|
+
OTc3YTViZmI0NGVhODQ3NzE0ZTE0YzJjNDJjMWUyNGE5ZDdhYjUwZDZhMjg0
|
15
|
+
NTJkOGM3NTVhZGEzMTJlMjBiNjdlNmE5OTU4YTRhMzE2NmI4M2I=
|
data/.gitignore
ADDED
data/CHANGELOG.md
ADDED
data/Gemfile
ADDED
data/LICENCE
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
Copyright (C) 2013 Kyrylo Silin
|
2
|
+
|
3
|
+
This software is provided 'as-is', without any express or implied
|
4
|
+
warranty. In no event will the authors be held liable for any damages
|
5
|
+
arising from the use of this software.
|
6
|
+
|
7
|
+
Permission is granted to anyone to use this software for any purpose,
|
8
|
+
including commercial applications, and to alter it and redistribute it
|
9
|
+
freely, subject to the following restrictions:
|
10
|
+
|
11
|
+
1. The origin of this software must not be misrepresented; you must not
|
12
|
+
claim that you wrote the original software. If you use this software
|
13
|
+
in a product, an acknowledgment in the product documentation would be
|
14
|
+
appreciated but is not required.
|
15
|
+
|
16
|
+
2. Altered source versions must be plainly marked as such, and must not be
|
17
|
+
misrepresented as being the original software.
|
18
|
+
|
19
|
+
3. This notice may not be removed or altered from any source distribution.
|
data/README.md
ADDED
@@ -0,0 +1,88 @@
|
|
1
|
+
Latest Ruby
|
2
|
+
===========
|
3
|
+
|
4
|
+
* Repository: [https://github.com/kyrylo/latest_ruby][repo]
|
5
|
+
|
6
|
+
Description
|
7
|
+
-----------
|
8
|
+
|
9
|
+
The purpose of this library is to answer a simple but capacious question: “What
|
10
|
+
is the latest version of Ruby now?”. It can also be asked for the latest
|
11
|
+
versions of Rubinius, JRuby, MagLev, MacRuby.
|
12
|
+
|
13
|
+
Installation
|
14
|
+
------------
|
15
|
+
|
16
|
+
gem install latest_ruby
|
17
|
+
|
18
|
+
Synopsis
|
19
|
+
--------
|
20
|
+
|
21
|
+
I find this library useful for the [`pry-doc` Pry plugin][prydoc]. Namely, for
|
22
|
+
automation of generation the latest documentation for Rubies.
|
23
|
+
|
24
|
+
### Usage
|
25
|
+
|
26
|
+
Let's find out the latest versions of Rubies.
|
27
|
+
|
28
|
+
```ruby
|
29
|
+
# MRI 2.0
|
30
|
+
Latest.ruby.version.to_s #=> "2.0.0-p0"
|
31
|
+
# The same.
|
32
|
+
Latest.ruby20.version.to_s
|
33
|
+
|
34
|
+
# MRI 1.9
|
35
|
+
Latest.ruby19.version.to_s #=> "1.9.3-p392"
|
36
|
+
|
37
|
+
# MRI 1.8
|
38
|
+
Latest.ruby18.version.to_s #=> "1.8.7-p371"
|
39
|
+
|
40
|
+
# JRuby.
|
41
|
+
Latest.jruby.version.to_s #=> "1.7.3"
|
42
|
+
|
43
|
+
# Rubinius.
|
44
|
+
Latest.rubinius.version.to_s #=> "1.2.4"
|
45
|
+
# The same.
|
46
|
+
Latest.rbx.version.to_s
|
47
|
+
|
48
|
+
# MagLev
|
49
|
+
Latest.maglev.version.to_s #=> "1.0.0"
|
50
|
+
|
51
|
+
# MacRuby
|
52
|
+
Latest.macruby.version.to_s #=> "0.12"
|
53
|
+
```
|
54
|
+
|
55
|
+
Latest Ruby also provides one useful (well, it's useful for me, at least) way to
|
56
|
+
retrieve a download link for a Ruby.
|
57
|
+
|
58
|
+
```ruby
|
59
|
+
Latest.ruby.link #=> "http://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.gz"
|
60
|
+
# The same.
|
61
|
+
Latest.ruby.link('.tar.gz') #=> "http://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.gz"
|
62
|
+
|
63
|
+
Latest.ruby.link('.tar.bz2') #=> "http://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.bz2"
|
64
|
+
Latest.ruby.link('.zip') #=> "http://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.zip"
|
65
|
+
```
|
66
|
+
|
67
|
+
Limitations
|
68
|
+
-----------
|
69
|
+
|
70
|
+
### OS support
|
71
|
+
|
72
|
+
Latest Ruby is a cross-platform library.
|
73
|
+
|
74
|
+
### Rubies
|
75
|
+
|
76
|
+
* Ruby 1.9.3 and higher
|
77
|
+
|
78
|
+
Please, ping me, if you need support for other Ruby implementations. Or, if you
|
79
|
+
prefer, send a pull request. Currently, the library is unbelievably simple.
|
80
|
+
Ideas and suggestions are welcome (just file issues).
|
81
|
+
|
82
|
+
Licence
|
83
|
+
-------
|
84
|
+
|
85
|
+
The project uses Zlib licence. See LICENCE file for more information.
|
86
|
+
|
87
|
+
[repo]: https://github.com/kyrylo/latest_ruby
|
88
|
+
[prydoc]: https://github.com/pry/pry-doc
|
data/Rakefile
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
def quiet
|
2
|
+
ENV['VERBOSE'] ? '' : '-q'
|
3
|
+
end
|
4
|
+
|
5
|
+
def test_files
|
6
|
+
paths = FileList['spec/**/*_spec.rb']
|
7
|
+
paths.shuffle!.join(' ')
|
8
|
+
end
|
9
|
+
|
10
|
+
desc "Run tests"
|
11
|
+
task :test do
|
12
|
+
exec "bacon -Ispec #{ quiet } #{ test_files }"
|
13
|
+
end
|
14
|
+
|
15
|
+
task :default => :test
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.0.1
|
data/latest_ruby.gemspec
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Gem::Specification.new do |s|
|
2
|
+
s.name = 'latest_ruby'
|
3
|
+
s.version = File.read('VERSION')
|
4
|
+
s.date = Time.now.strftime('%Y-%m-%d')
|
5
|
+
s.summary = 'Answers the question of what the latest Ruby version is'
|
6
|
+
s.description = 'Knows about MRI, Rubinius, JRuby, MagLev and MacRuby.'
|
7
|
+
s.author = 'Kyrylo Silin'
|
8
|
+
s.email = 'kyrylosilin@gmail.com'
|
9
|
+
s.homepage = 'https://github.com/kyrylo/latest_ruby'
|
10
|
+
s.licenses = 'zlib'
|
11
|
+
|
12
|
+
s.require_path = 'lib'
|
13
|
+
s.files = `git ls-files`.split("\n")
|
14
|
+
|
15
|
+
s.add_runtime_dependency 'versionomy'
|
16
|
+
|
17
|
+
s.add_development_dependency 'bacon'
|
18
|
+
s.add_development_dependency 'rake'
|
19
|
+
s.add_development_dependency 'pry'
|
20
|
+
end
|
data/lib/latest_ruby.rb
ADDED
@@ -0,0 +1,56 @@
|
|
1
|
+
require_relative 'latest_ruby/ruby'
|
2
|
+
require_relative 'latest_ruby/ruby_version'
|
3
|
+
require_relative 'latest_ruby/rubies/mri'
|
4
|
+
require_relative 'latest_ruby/rubies/jruby'
|
5
|
+
require_relative 'latest_ruby/rubies/rubinius'
|
6
|
+
require_relative 'latest_ruby/rubies/maglev'
|
7
|
+
require_relative 'latest_ruby/rubies/macruby'
|
8
|
+
require_relative 'latest_ruby/retrievers/mri_retriever'
|
9
|
+
require_relative 'latest_ruby/retrievers/jruby_retriever'
|
10
|
+
require_relative 'latest_ruby/retrievers/rubinius_retriever'
|
11
|
+
require_relative 'latest_ruby/retrievers/maglev_retriever'
|
12
|
+
require_relative 'latest_ruby/retrievers/macruby_retriever'
|
13
|
+
|
14
|
+
module Latest
|
15
|
+
|
16
|
+
# The VERSION file must be in the root directory of the library.
|
17
|
+
VERSION_FILE = File.expand_path('../../VERSION', __FILE__)
|
18
|
+
|
19
|
+
VERSION = File.exist?(VERSION_FILE) ?
|
20
|
+
File.read(VERSION_FILE).chomp : '(could not find VERSION file)'
|
21
|
+
|
22
|
+
class << self
|
23
|
+
def ruby20
|
24
|
+
Ruby.new(MRI.new('2.0', MRIRetriever.new))
|
25
|
+
end
|
26
|
+
|
27
|
+
# The latest Ruby version by default.
|
28
|
+
alias_method :ruby, :ruby20
|
29
|
+
|
30
|
+
def ruby19
|
31
|
+
Ruby.new(MRI.new('1.9', MRIRetriever.new))
|
32
|
+
end
|
33
|
+
|
34
|
+
def ruby18
|
35
|
+
Ruby.new(MRI.new('1.8', MRIRetriever.new))
|
36
|
+
end
|
37
|
+
|
38
|
+
def jruby
|
39
|
+
Ruby.new(JRuby.new(JRubyRetriever.new))
|
40
|
+
end
|
41
|
+
|
42
|
+
def rubinius
|
43
|
+
Ruby.new(Rubinius.new(RubiniusRetriever.new))
|
44
|
+
end
|
45
|
+
alias_method :rbx, :rubinius
|
46
|
+
|
47
|
+
def maglev
|
48
|
+
Ruby.new(MagLev.new(MagLevRetriever.new))
|
49
|
+
end
|
50
|
+
|
51
|
+
def macruby
|
52
|
+
Ruby.new(MacRuby.new(MacRubyRetriever.new))
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
require 'net/http'
|
2
|
+
|
3
|
+
module Latest
|
4
|
+
class MRIRetriever
|
5
|
+
|
6
|
+
def retrieve(mri)
|
7
|
+
page = Net::HTTP.get(URI(mri.source + mri.short_ver + '/'))
|
8
|
+
page.scan(/(#{ Regexp.escape(mri.short_ver) }\.\d-[a-z0-9]+)\.zip/x).
|
9
|
+
uniq.flatten.map { |v| RubyVersion.new(v) }.max
|
10
|
+
end
|
11
|
+
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'net/http'
|
2
|
+
require 'rexml/document'
|
3
|
+
|
4
|
+
module Latest
|
5
|
+
class RubiniusRetriever
|
6
|
+
|
7
|
+
include REXML
|
8
|
+
|
9
|
+
def retrieve(rbx)
|
10
|
+
page = Net::HTTP.get(URI(rbx.source))
|
11
|
+
xml = Document.new(page)
|
12
|
+
all_versions = XPath.match(xml, '//Contents//Key').map(&:text)
|
13
|
+
candidates = all_versions.find_all { |v| v =~ /\Arubinius-/ }
|
14
|
+
stables = candidates.flat_map { |v| v.scan(/-(\d\.\d\.\d)\.tar/) }.flatten
|
15
|
+
stables.map { |v| RubyVersion.new(v) }.max
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module Latest
|
2
|
+
class JRuby
|
3
|
+
|
4
|
+
SOURCE = 'http://jruby.org.s3.amazonaws.com/downloads/'
|
5
|
+
WEB_SOURCE = 'http://jruby.org/download'
|
6
|
+
AVAILABLE_EXTS = ['.tar.gz', '.zip']
|
7
|
+
|
8
|
+
attr_reader :source, :web_source
|
9
|
+
|
10
|
+
def initialize(retriever)
|
11
|
+
@retriever = retriever
|
12
|
+
@source = WEB_SOURCE
|
13
|
+
end
|
14
|
+
|
15
|
+
def version
|
16
|
+
@version ||= @retriever.retrieve(self)
|
17
|
+
end
|
18
|
+
|
19
|
+
def link(ext = '.tar.gz')
|
20
|
+
if AVAILABLE_EXTS.include?(ext)
|
21
|
+
SOURCE + '/' + version.to_s + '/jruby-bin-' + version.to_s + ext
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Latest
|
2
|
+
class MacRuby
|
3
|
+
|
4
|
+
SOURCE = 'http://macruby.jp/files/'
|
5
|
+
AVAILABLE_EXTS = ['.zip']
|
6
|
+
|
7
|
+
attr_reader :source
|
8
|
+
|
9
|
+
def initialize(retriever)
|
10
|
+
@retriever = retriever
|
11
|
+
@source = SOURCE
|
12
|
+
end
|
13
|
+
|
14
|
+
def version
|
15
|
+
@version ||= @retriever.retrieve(self)
|
16
|
+
end
|
17
|
+
|
18
|
+
def link(ext = '.zip')
|
19
|
+
if AVAILABLE_EXTS.include?(ext)
|
20
|
+
source + 'MacRuby ' + version.to_s + ext
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Latest
|
2
|
+
class MagLev
|
3
|
+
|
4
|
+
SOURCE = 'http://glass-downloads.gemstone.com/maglev/'
|
5
|
+
AVAILABLE_EXTS = ['.tar.gz']
|
6
|
+
|
7
|
+
attr_reader :source
|
8
|
+
|
9
|
+
def initialize(retriever)
|
10
|
+
@retriever = retriever
|
11
|
+
@source = SOURCE
|
12
|
+
end
|
13
|
+
|
14
|
+
def version
|
15
|
+
@version ||= @retriever.retrieve(self)
|
16
|
+
end
|
17
|
+
|
18
|
+
def link(ext = '.tar.gz')
|
19
|
+
if AVAILABLE_EXTS.include?(ext)
|
20
|
+
source + 'MagLev-' + version.to_s + ext
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
module Latest
|
2
|
+
class MRI
|
3
|
+
|
4
|
+
SOURCE = 'http://ftp.ruby-lang.org/pub/ruby/'
|
5
|
+
AVAILABLE_EXTS = ['.tar.gz', '.zip', '.tar.bz2']
|
6
|
+
|
7
|
+
attr_reader :short_ver, :source
|
8
|
+
|
9
|
+
def initialize(short_ver, retriever)
|
10
|
+
@short_ver = short_ver
|
11
|
+
@retriever = retriever
|
12
|
+
@source = SOURCE
|
13
|
+
end
|
14
|
+
|
15
|
+
def version
|
16
|
+
@version ||= @retriever.retrieve(self)
|
17
|
+
end
|
18
|
+
|
19
|
+
def link(ext = '.tar.gz')
|
20
|
+
if AVAILABLE_EXTS.include?(ext)
|
21
|
+
source + short_ver + '/ruby-' + version.to_s + ext
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module Latest
|
2
|
+
class Rubinius
|
3
|
+
|
4
|
+
SOURCE = 'http://asset.rubini.us/'
|
5
|
+
AVAILABLE_EXTS = ['.tar.gz']
|
6
|
+
|
7
|
+
attr_reader :source
|
8
|
+
|
9
|
+
def initialize(retriever)
|
10
|
+
@retriever = retriever
|
11
|
+
@source = SOURCE
|
12
|
+
end
|
13
|
+
|
14
|
+
def version
|
15
|
+
@version ||= @retriever.retrieve(self)
|
16
|
+
end
|
17
|
+
|
18
|
+
def link(ext = '.tar.gz')
|
19
|
+
if AVAILABLE_EXTS.include?(ext)
|
20
|
+
source + 'rubinius-' + version.to_s + ext
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require 'forwardable'
|
2
|
+
require 'versionomy'
|
3
|
+
|
4
|
+
module Latest
|
5
|
+
class RubyVersion
|
6
|
+
|
7
|
+
extend Forwardable
|
8
|
+
|
9
|
+
def initialize(version)
|
10
|
+
@version = get_version(version)
|
11
|
+
end
|
12
|
+
|
13
|
+
def <=>(other)
|
14
|
+
@version <=> other.instance_variable_get(:@version)
|
15
|
+
end
|
16
|
+
|
17
|
+
def_delegators :@version, :to_s
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
def get_version(ver)
|
22
|
+
Versionomy.parse(ver)
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
data/spec/helper.rb
ADDED
metadata
ADDED
@@ -0,0 +1,123 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: latest_ruby
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Kyrylo Silin
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2013-04-16 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: versionomy
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ! '>='
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ! '>='
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: bacon
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ! '>='
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ! '>='
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rake
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ! '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: pry
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ! '>='
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
description: Knows about MRI, Rubinius, JRuby, MagLev and MacRuby.
|
70
|
+
email: kyrylosilin@gmail.com
|
71
|
+
executables: []
|
72
|
+
extensions: []
|
73
|
+
extra_rdoc_files: []
|
74
|
+
files:
|
75
|
+
- .gitignore
|
76
|
+
- CHANGELOG.md
|
77
|
+
- Gemfile
|
78
|
+
- LICENCE
|
79
|
+
- README.md
|
80
|
+
- Rakefile
|
81
|
+
- VERSION
|
82
|
+
- latest_ruby.gemspec
|
83
|
+
- lib/latest_ruby.rb
|
84
|
+
- lib/latest_ruby/retrievers/jruby_retriever.rb
|
85
|
+
- lib/latest_ruby/retrievers/macruby_retriever.rb
|
86
|
+
- lib/latest_ruby/retrievers/maglev_retriever.rb
|
87
|
+
- lib/latest_ruby/retrievers/mri_retriever.rb
|
88
|
+
- lib/latest_ruby/retrievers/rubinius_retriever.rb
|
89
|
+
- lib/latest_ruby/rubies/jruby.rb
|
90
|
+
- lib/latest_ruby/rubies/macruby.rb
|
91
|
+
- lib/latest_ruby/rubies/maglev.rb
|
92
|
+
- lib/latest_ruby/rubies/mri.rb
|
93
|
+
- lib/latest_ruby/rubies/rubinius.rb
|
94
|
+
- lib/latest_ruby/ruby.rb
|
95
|
+
- lib/latest_ruby/ruby_version.rb
|
96
|
+
- spec/helper.rb
|
97
|
+
- spec/latest_ruby_spec.rb
|
98
|
+
homepage: https://github.com/kyrylo/latest_ruby
|
99
|
+
licenses:
|
100
|
+
- zlib
|
101
|
+
metadata: {}
|
102
|
+
post_install_message:
|
103
|
+
rdoc_options: []
|
104
|
+
require_paths:
|
105
|
+
- lib
|
106
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ! '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
112
|
+
requirements:
|
113
|
+
- - ! '>='
|
114
|
+
- !ruby/object:Gem::Version
|
115
|
+
version: '0'
|
116
|
+
requirements: []
|
117
|
+
rubyforge_project:
|
118
|
+
rubygems_version: 2.0.3
|
119
|
+
signing_key:
|
120
|
+
specification_version: 4
|
121
|
+
summary: Answers the question of what the latest Ruby version is
|
122
|
+
test_files: []
|
123
|
+
has_rdoc:
|