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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0ccc3b487679f3aa817377e5c36183b3b3797eca
4
- data.tar.gz: 0ab9c6affe4e7ad552a9aff5d8269b80bf759d79
3
+ metadata.gz: c2adaa925c51a510eaff87ef243916fada3baac1
4
+ data.tar.gz: 6703dd08a4a43fbf1a150339a171edcd3dd13de5
5
5
  SHA512:
6
- metadata.gz: 0d978db8cb869d4f56f3529e5a1e9f18d5b12744f886f51d5dd170a30bf574e3c60fb45fede61ca810d4a94b9fb8f8646103193686b03528632ed53b63b57c8d
7
- data.tar.gz: ee0531966194636b10811310a55aa65aee4fbf2f048ba961332d16e6ee160ffef5175475f7775118de757226cb4a689ebe07d3b0f17f676c3f2244c84c2d4c02
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=CI
8
- addons:
9
- code_climate:
10
- repo_token: a3b92a7e935316eab6293228fa587784c95b9dd10ab61adb4fdb9ecb6ca330d8
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
@@ -10,6 +10,12 @@ Rake::TestTask.new do |t|
10
10
  t.verbose = true
11
11
  end
12
12
 
13
+ task :site do
14
+ Dir.chdir("docs") do
15
+ sh "jekyll s"
16
+ end
17
+ end
18
+
13
19
  task :count do
14
20
  files = `git ls-files -z`.split("\x0")
15
21
  shell_cmd = "wc -l "
data/appveyor.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  version: 1.0.{build}-{branch}
2
2
 
3
- cache:
3
+ cache:
4
4
  - vendor/bundle
5
5
 
6
6
  environment:
@@ -21,4 +21,4 @@ before_test:
21
21
  - bundle -v
22
22
 
23
23
  test_script:
24
- - bundle exec rake
24
+ - bundle exec rake
@@ -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 run `gsm` with commands other than `--help` or `--version`, `gsm` will load sources from current `gem sources -l` you set.
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
@@ -37,7 +37,7 @@
37
37
  </header>
38
38
  {{ content }}
39
39
  <footer>
40
- Copyright &copy; 2016, <a href="https://crispgm.com/">David Zhang</a>.
40
+ Copyright &copy; <a href="https://crispgm.com/">David Zhang</a>, 2017.
41
41
  </footer>
42
42
  </div>
43
43
  </body>
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: 48rem) {
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: "Helvetica Neue", Helvetica, Arial, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;
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: 1rem;
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
- border: .05rem solid #aaaaaa;
48
+ background-color: #ddd;
46
49
  border-radius: .2rem;
47
- padding-left: .2rem;
48
- padding-right: .2rem;
50
+ padding: .1rem .3rem .1rem .3rem;
51
+ font-size: .9rem;
49
52
  }
50
53
  #container {
51
54
  margin: 0 auto;
52
- max-width: 48rem;
55
+ max-width: 42rem;
53
56
  text-align: left;
54
57
  }
55
- @media (max-width: 48rem) {
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: 5rem;
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: 48rem) {
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: 2rem;
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: 48rem) {
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: .15rem solid #000;
137
+ border: 1px solid #000;
134
138
  border-radius: .5rem;
135
139
  }
136
140
  .install-item:hover {
137
- border: .15rem solid #06c;
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: 1rem;
159
- border-bottom: solid #aaa .1rem;
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 .1rem;
165
- padding-bottom: 1.6rem;
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
- puts "GSM Error: Illegal source `#{name}`."
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
- puts "GSM Error: Illegal source `#{name}`."
74
+ Gsm::Util.error("Illegal source `#{name}`.")
70
75
  end
71
76
  end
72
77
  else
73
- puts "GSM Error: Illegal name/url."
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
- puts "GSM Error: Source is in use. Please switch to other source in advance."
91
+ Gsm::Util.error("Source is in use. Please switch to other source in advance.")
87
92
  return
88
93
  elsif ret == nil
89
- puts "GSM Error: No source name with `#{name}`."
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
- puts "GSM Error: no default source for mirror."
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
- class Bundle
2
+ module Bundle
3
+ class << self
3
4
 
4
- RUBY_GEM_URL = "https://rubygems.org/".freeze
5
+ RUBY_GEM_URL = "https://rubygems.org/".freeze
5
6
 
6
- def self.mirror(dst_url, src_url = RUBY_GEM_URL)
7
- `bundle config mirror.#{src_url} #{dst_url}`
8
- end
7
+ def mirror(dst_url, src_url = RUBY_GEM_URL)
8
+ `bundle config mirror.#{src_url} #{dst_url}`
9
+ end
9
10
 
10
- def self.reset
11
- self.mirror(RUBY_GEM_URL)
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
@@ -1,4 +1,11 @@
1
1
  module Gsm
2
2
  module Util
3
+ class << self
4
+ require "colorize"
5
+
6
+ def error(msg)
7
+ puts "GSM Error: #{msg}".red
8
+ end
9
+ end
3
10
  end
4
- end
11
+ end
data/lib/gsm/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Gsm
2
- VERSION = "1.0.0.alpha5".freeze
2
+ VERSION = "1.0.0.beta1".freeze
3
3
  end
data/test/helper.rb CHANGED
@@ -1,5 +1,5 @@
1
- require "codeclimate-test-reporter"
2
- CodeClimate::TestReporter.start
1
+ require "simplecov"
2
+ SimpleCov.start
3
3
 
4
4
  require "minitest/autorun"
5
5
  require "shoulda-context"
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.alpha5
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: 2016-10-20 00:00:00.000000000 Z
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: '0'
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: '0'
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.5.1
141
+ rubygems_version: 2.6.11
128
142
  signing_key:
129
143
  specification_version: 4
130
144
  summary: GSM Sources Manager