gemver 0.0.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 +7 -0
- data/bin/gemver +4 -0
- data/lib/gemver/translator.rb +14 -0
- data/lib/gemver.rb +48 -0
- metadata +47 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: cf678a80127cb38a64b5b6fff63712b3a3768c07
|
4
|
+
data.tar.gz: 0c5d64e0e39eff1b8c89a744a8dff94d4994357b
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 5c96c72c797e40de10b7e01c7537d590c2da0158c33fdf425350cfc83c57ff6754e87468ea79ef56ecbdb886746ce24bd057e157c40bec0ce4183b6fe6c8d237
|
7
|
+
data.tar.gz: 94591199805192bec5ea59fdd1194a7de8766e484ca3eac67355fd38428f8645f69ad5fbdf0d7f27cfff0fd1abb2e98310d509af0d0d1b94e159121ce18a4eff
|
data/bin/gemver
ADDED
data/lib/gemver.rb
ADDED
@@ -0,0 +1,48 @@
|
|
1
|
+
class Gemver
|
2
|
+
UNKNOWN_VERSION = 'unknown'
|
3
|
+
def self.run(gemname)
|
4
|
+
if gemname.nil?
|
5
|
+
puts "ERR: Please specify gem name!"
|
6
|
+
puts "`gemver rails` for an example"
|
7
|
+
return
|
8
|
+
end
|
9
|
+
|
10
|
+
begin
|
11
|
+
response = Net::HTTP.get_response(URI("https://rubygems.org/api/v1/versions/#{gemname}/latest1.json"))
|
12
|
+
unless response.is_a?(Net::HTTPSuccess)
|
13
|
+
puts response.header&.message
|
14
|
+
return
|
15
|
+
end
|
16
|
+
|
17
|
+
body = JSON.parse(response.body)
|
18
|
+
version = body['version']
|
19
|
+
# puts response.body
|
20
|
+
# puts version
|
21
|
+
if version == UNKNOWN_VERSION
|
22
|
+
raise 'Your gem name return an unknown version number. Please verify that the gem exists!'
|
23
|
+
return
|
24
|
+
end
|
25
|
+
puts "Latest version of #{gemname} is #{version}"
|
26
|
+
|
27
|
+
self.write_gem_file("gem '#{gemname}', '~> #{version}'")
|
28
|
+
rescue => e
|
29
|
+
puts e
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.write_gem_file(text)
|
34
|
+
begin
|
35
|
+
file = File.open("Gemfile", "a+")
|
36
|
+
file.write("\n" + text)
|
37
|
+
puts "Write successfully"
|
38
|
+
rescue IOError => e
|
39
|
+
puts e
|
40
|
+
ensure
|
41
|
+
file.close unless file.nil?
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
require 'gemver/translator'
|
47
|
+
require 'net/http'
|
48
|
+
require 'json'
|
metadata
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: gemver
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.2
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Eugene
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2018-02-02 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description: Simple gem to add gem version without going to Gemfile
|
14
|
+
email: cuongnm265@gmail.com
|
15
|
+
executables:
|
16
|
+
- gemver
|
17
|
+
extensions: []
|
18
|
+
extra_rdoc_files: []
|
19
|
+
files:
|
20
|
+
- bin/gemver
|
21
|
+
- lib/gemver.rb
|
22
|
+
- lib/gemver/translator.rb
|
23
|
+
homepage: http://rubygems.org/gems/gemver
|
24
|
+
licenses:
|
25
|
+
- MIT
|
26
|
+
metadata: {}
|
27
|
+
post_install_message:
|
28
|
+
rdoc_options: []
|
29
|
+
require_paths:
|
30
|
+
- lib
|
31
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: '0'
|
36
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
requirements: []
|
42
|
+
rubyforge_project:
|
43
|
+
rubygems_version: 2.6.14
|
44
|
+
signing_key:
|
45
|
+
specification_version: 4
|
46
|
+
summary: Gemver!
|
47
|
+
test_files: []
|