gsm-sources-manager 1.0.0.alpha5 → 1.0.0.beta1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +7 -4
- data/README.md +0 -1
- data/Rakefile +6 -0
- data/appveyor.yml +2 -2
- data/docs/_data/changelog.yml +12 -0
- data/docs/_data/index.yml +13 -1
- data/docs/_layouts/default.html +1 -1
- data/docs/css/style.css +22 -18
- data/exe/gsm +11 -6
- data/gsm.gemspec +2 -1
- data/lib/gsm/bundle.rb +10 -8
- data/lib/gsm/util.rb +8 -1
- data/lib/gsm/version.rb +1 -1
- data/test/helper.rb +2 -2
- metadata +21 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c2adaa925c51a510eaff87ef243916fada3baac1
|
4
|
+
data.tar.gz: 6703dd08a4a43fbf1a150339a171edcd3dd13de5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 76417ea20245f97400d0edd9cc68bf03119e35f64aa70df9cbd342754ea996caec41dc311e0ea146e9f2639a6c44405db9c9fc7749db12babab5152e974cc7ee
|
7
|
+
data.tar.gz: c9d29df8cebbb6db0994d295893ad48a03600fb1463372e3354a4ee26b375a7e42b6c02c0e66e92c923ae51b456dd4ce4326e98795929461f8f42adc2a97407d
|
data/.travis.yml
CHANGED
@@ -4,7 +4,10 @@ rvm:
|
|
4
4
|
- 2.3.1
|
5
5
|
- 2.2.5
|
6
6
|
env:
|
7
|
-
- GSM_TEST_MODE
|
8
|
-
|
9
|
-
|
10
|
-
|
7
|
+
- GSM_TEST_MODE: CI
|
8
|
+
- CODECLIMATE_REPO_TOKEN: a3b92a7e935316eab6293228fa587784c95b9dd10ab61adb4fdb9ecb6ca330d8
|
9
|
+
after_sucess:
|
10
|
+
- bundle exec codeclimate-test-reporter
|
11
|
+
notifications:
|
12
|
+
email: false
|
13
|
+
slack: navyblue-team:ioO5diAGc5WUQVDKc5BH1UbE
|
data/README.md
CHANGED
@@ -6,7 +6,6 @@
|
|
6
6
|
[![Code Climate](https://codeclimate.com/github/crispgm/gsm/badges/gpa.svg)](https://codeclimate.com/github/crispgm/gsm)
|
7
7
|
[![Test Coverage](https://codeclimate.com/github/crispgm/gsm/badges/coverage.svg)](https://codeclimate.com/github/crispgm/gsm/coverage)
|
8
8
|
[![Join the chat at https://gitter.im/crispgm/gsm](https://badges.gitter.im/crispgm/gsm.svg)](https://gitter.im/crispgm/gsm?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
9
|
-
[![BADGINATOR](https://badginator.herokuapp.com/crispgm/gsm.svg)](https://github.com/defunctzombie/badginator)
|
10
9
|
|
11
10
|
GSM is a simple sources manager for RubyGems. GSM means GSM Sources Manager as a recursive acronym or simply Gem Sources Manager.
|
12
11
|
|
data/Rakefile
CHANGED
data/appveyor.yml
CHANGED
data/docs/_data/changelog.yml
CHANGED
@@ -1,3 +1,15 @@
|
|
1
|
+
- version: "1.0.0.beta1"
|
2
|
+
changes:
|
3
|
+
- text: "Polish docs"
|
4
|
+
issue: 12
|
5
|
+
- text: "Use colored error message"
|
6
|
+
issue: 13
|
7
|
+
- text: "Bugfix: illegal name/url cause exception"
|
8
|
+
issue: 13
|
9
|
+
- version: "1.0.0.alpha5"
|
10
|
+
changes:
|
11
|
+
- text: "Bugfix: unintended path to `sources.yml`"
|
12
|
+
issue: 8
|
1
13
|
- version: "1.0.0.alpha4"
|
2
14
|
changes:
|
3
15
|
- text: "Ruby 2.2.5 support"
|
data/docs/_data/index.yml
CHANGED
@@ -16,7 +16,9 @@ install: |
|
|
16
16
|
guide: |
|
17
17
|
## Getting Started
|
18
18
|
|
19
|
-
Once you have installed and
|
19
|
+
Once you have installed and bootstrapped `gsm` with commands other than `--help` or `--version`, `gsm` will load sources from local `gem sources -l`.
|
20
|
+
|
21
|
+
HINT: The sources will be named after gemstones, e.g. _Amethyst_.
|
20
22
|
|
21
23
|
## Commands
|
22
24
|
|
@@ -26,6 +28,8 @@ guide: |
|
|
26
28
|
|
27
29
|
```
|
28
30
|
$ gsm list
|
31
|
+
|
32
|
+
Amethyst: https://gems.ruby-china.org/
|
29
33
|
```
|
30
34
|
|
31
35
|
### Use
|
@@ -34,6 +38,14 @@ guide: |
|
|
34
38
|
|
35
39
|
```
|
36
40
|
$ gsm use Amethyst
|
41
|
+
|
42
|
+
GSM: Source `Amethyst` has been applied.
|
43
|
+
```
|
44
|
+
|
45
|
+
```
|
46
|
+
$ gsm list
|
47
|
+
|
48
|
+
Amethyst: https://rubygems.org/ (*)
|
37
49
|
```
|
38
50
|
|
39
51
|
### Add
|
data/docs/_layouts/default.html
CHANGED
data/docs/css/style.css
CHANGED
@@ -5,14 +5,14 @@ html {
|
|
5
5
|
width: 100%;
|
6
6
|
font-size: 16px;
|
7
7
|
}
|
8
|
-
@media (max-width:
|
8
|
+
@media (max-width: 42rem) {
|
9
9
|
html {
|
10
10
|
font-size: 12px;
|
11
11
|
}
|
12
12
|
}
|
13
13
|
body {
|
14
14
|
margin: 0;
|
15
|
-
font-family: "
|
15
|
+
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;
|
16
16
|
font-size: 1rem;
|
17
17
|
-webkit-font-smoothing: antialiased;
|
18
18
|
color: #333;
|
@@ -36,23 +36,26 @@ pre.highlight {
|
|
36
36
|
border: .05rem solid #aaaaaa;
|
37
37
|
border-radius: .2rem;
|
38
38
|
font-family: Menlo, Monaco, "Source Code Pro", Consolas, Courier;
|
39
|
-
font-size:
|
39
|
+
font-size: .9rem;
|
40
|
+
padding: .4rem .8rem .4rem .8rem;
|
41
|
+
color: #aaa;
|
42
|
+
background-color: #222;
|
40
43
|
}
|
41
44
|
code.hljs {
|
42
45
|
padding: .8rem;
|
43
46
|
}
|
44
47
|
code.highlighter-rouge {
|
45
|
-
|
48
|
+
background-color: #ddd;
|
46
49
|
border-radius: .2rem;
|
47
|
-
padding
|
48
|
-
|
50
|
+
padding: .1rem .3rem .1rem .3rem;
|
51
|
+
font-size: .9rem;
|
49
52
|
}
|
50
53
|
#container {
|
51
54
|
margin: 0 auto;
|
52
|
-
max-width:
|
55
|
+
max-width: 42rem;
|
53
56
|
text-align: left;
|
54
57
|
}
|
55
|
-
@media (max-width:
|
58
|
+
@media (max-width: 42rem) {
|
56
59
|
#container {
|
57
60
|
padding-left: .5rem;
|
58
61
|
padding-right: .5rem;
|
@@ -61,7 +64,7 @@ code.highlighter-rouge {
|
|
61
64
|
#topbar {
|
62
65
|
height: 3rem;
|
63
66
|
padding-top: 1rem;
|
64
|
-
margin-bottom:
|
67
|
+
margin-bottom: 6rem;
|
65
68
|
}
|
66
69
|
.title {
|
67
70
|
font-weight: bold;
|
@@ -73,7 +76,7 @@ code.highlighter-rouge {
|
|
73
76
|
.menu-item {
|
74
77
|
padding-left: 1rem;
|
75
78
|
}
|
76
|
-
@media (max-width:
|
79
|
+
@media (max-width: 42rem) {
|
77
80
|
.title {
|
78
81
|
margin-top: 2rem;
|
79
82
|
text-align: center;
|
@@ -99,7 +102,8 @@ code.highlighter-rouge {
|
|
99
102
|
}
|
100
103
|
#intro-text {
|
101
104
|
margin-top: 6rem;
|
102
|
-
font-size:
|
105
|
+
font-size: 1.8rem;
|
106
|
+
line-height: 1.4;
|
103
107
|
}
|
104
108
|
#intro-desc {
|
105
109
|
text-align: left;
|
@@ -115,7 +119,7 @@ code.highlighter-rouge {
|
|
115
119
|
#intro-version {
|
116
120
|
margin-top: 1rem;
|
117
121
|
}
|
118
|
-
@media (max-width:
|
122
|
+
@media (max-width: 42rem) {
|
119
123
|
#intro-text {
|
120
124
|
margin-top: 3rem;
|
121
125
|
font-size: 1.1rem;
|
@@ -130,11 +134,11 @@ code.highlighter-rouge {
|
|
130
134
|
line-height: 2.5rem;
|
131
135
|
color: #000;
|
132
136
|
background-color: #fff;
|
133
|
-
border:
|
137
|
+
border: 1px solid #000;
|
134
138
|
border-radius: .5rem;
|
135
139
|
}
|
136
140
|
.install-item:hover {
|
137
|
-
border:
|
141
|
+
border: 1px solid #06c;
|
138
142
|
}
|
139
143
|
.install-gsm {
|
140
144
|
margin-right: .5rem;
|
@@ -155,14 +159,14 @@ code.highlighter-rouge {
|
|
155
159
|
#social {
|
156
160
|
text-align: center;
|
157
161
|
margin-top: 1rem;
|
158
|
-
padding-bottom:
|
159
|
-
border-bottom: solid #aaa
|
162
|
+
padding-bottom: 3rem;
|
163
|
+
border-bottom: solid #aaa 1px;
|
160
164
|
}
|
161
165
|
.content {
|
162
166
|
padding-top: 3rem;
|
163
167
|
font-size: 1rem;
|
164
|
-
border-bottom: solid #aaa
|
165
|
-
padding-bottom:
|
168
|
+
border-bottom: solid #aaa 1px;
|
169
|
+
padding-bottom: 3rem;
|
166
170
|
}
|
167
171
|
.content-title {
|
168
172
|
text-align: center;
|
data/exe/gsm
CHANGED
@@ -47,7 +47,7 @@ Mercenary.program(:gsm) do |p|
|
|
47
47
|
if use
|
48
48
|
puts "GSM: Source `#{use}` has been applied."
|
49
49
|
else
|
50
|
-
|
50
|
+
Gsm::Util.error("Illegal source `#{name}`.")
|
51
51
|
end
|
52
52
|
end
|
53
53
|
end
|
@@ -63,14 +63,19 @@ Mercenary.program(:gsm) do |p|
|
|
63
63
|
url = args[1]
|
64
64
|
is_use = opts["use"]
|
65
65
|
|
66
|
+
if args.size < 2
|
67
|
+
Gsm::Util.error("Illegal name/url.")
|
68
|
+
return
|
69
|
+
end
|
70
|
+
|
66
71
|
if gem.add(name, url)
|
67
72
|
if is_use
|
68
73
|
if !gem.use(name)
|
69
|
-
|
74
|
+
Gsm::Util.error("Illegal source `#{name}`.")
|
70
75
|
end
|
71
76
|
end
|
72
77
|
else
|
73
|
-
|
78
|
+
Gsm::Util.error("Illegal name/url.")
|
74
79
|
end
|
75
80
|
end
|
76
81
|
end
|
@@ -83,10 +88,10 @@ Mercenary.program(:gsm) do |p|
|
|
83
88
|
name = args[0]
|
84
89
|
ret = gem.del(name)
|
85
90
|
if ret == false
|
86
|
-
|
91
|
+
Gsm::Util.error("Source is in use. Please switch to other source in advance.")
|
87
92
|
return
|
88
93
|
elsif ret == nil
|
89
|
-
|
94
|
+
Gsm::Util.error("No source name with `#{name}`.")
|
90
95
|
return
|
91
96
|
end
|
92
97
|
end
|
@@ -116,7 +121,7 @@ Mercenary.program(:gsm) do |p|
|
|
116
121
|
if args.size == 0
|
117
122
|
name = gem.get
|
118
123
|
if name.empty?
|
119
|
-
|
124
|
+
Gsm::Util.error("no default source for mirror.")
|
120
125
|
return
|
121
126
|
end
|
122
127
|
else
|
data/gsm.gemspec
CHANGED
@@ -23,7 +23,8 @@ Gem::Specification.new do |spec|
|
|
23
23
|
|
24
24
|
spec.add_development_dependency "minitest"
|
25
25
|
spec.add_development_dependency "shoulda-context"
|
26
|
-
spec.add_development_dependency "codeclimate-test-reporter"
|
26
|
+
spec.add_development_dependency "codeclimate-test-reporter", "~> 1.0.0"
|
27
27
|
|
28
28
|
spec.add_dependency "mercenary", "~> 0.3.6"
|
29
|
+
spec.add_dependency "colorize"
|
29
30
|
end
|
data/lib/gsm/bundle.rb
CHANGED
@@ -1,14 +1,16 @@
|
|
1
1
|
module Gsm
|
2
|
-
|
2
|
+
module Bundle
|
3
|
+
class << self
|
3
4
|
|
4
|
-
|
5
|
+
RUBY_GEM_URL = "https://rubygems.org/".freeze
|
5
6
|
|
6
|
-
|
7
|
-
|
8
|
-
|
7
|
+
def mirror(dst_url, src_url = RUBY_GEM_URL)
|
8
|
+
`bundle config mirror.#{src_url} #{dst_url}`
|
9
|
+
end
|
9
10
|
|
10
|
-
|
11
|
-
|
11
|
+
def reset
|
12
|
+
self.mirror(RUBY_GEM_URL)
|
13
|
+
end
|
12
14
|
end
|
13
15
|
end
|
14
|
-
end
|
16
|
+
end
|
data/lib/gsm/util.rb
CHANGED
data/lib/gsm/version.rb
CHANGED
data/test/helper.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gsm-sources-manager
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.beta1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Zhang
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-06-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: minitest
|
@@ -42,16 +42,16 @@ dependencies:
|
|
42
42
|
name: codeclimate-test-reporter
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
47
|
+
version: 1.0.0
|
48
48
|
type: :development
|
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:
|
54
|
+
version: 1.0.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: mercenary
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -66,6 +66,20 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: 0.3.6
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: colorize
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
69
83
|
description: GSM is a simple sources manager for RubyGems.
|
70
84
|
email:
|
71
85
|
- crispgm@gmail.com
|
@@ -124,7 +138,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
124
138
|
version: 1.3.1
|
125
139
|
requirements: []
|
126
140
|
rubyforge_project:
|
127
|
-
rubygems_version: 2.
|
141
|
+
rubygems_version: 2.6.11
|
128
142
|
signing_key:
|
129
143
|
specification_version: 4
|
130
144
|
summary: GSM Sources Manager
|