gem-local 0.1.3 → 0.1.4

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: a6929870d4a726e783406ce179a666cb89e17022
4
- data.tar.gz: 74de361c70467ea9e200918c1256598c418197e2
3
+ metadata.gz: 749ba5593040a0a6d9691df1d726376738440a42
4
+ data.tar.gz: 0fff9cc2a331ae5ea362eb3014c91485c4f3aff6
5
5
  SHA512:
6
- metadata.gz: 70cc81c6831fb21a3c292e614e924dc86f7ef9e62a32966a0e65ec214c5e7b66f3688caa21c614fc49b9c57b75c1b21416b800194cf7e4f9d4d41b79eb9f3fa4
7
- data.tar.gz: 5ac285eaad739c7f8422ab7e34ffd09d960a6c75cc45b261ec70f2c5a8eda1543f4ab83c27cb12ac74e7662b7fb0a92e7c9754e21f91b5a3cb521ecfbba3c3eb
6
+ metadata.gz: dba1ffed3d5c94612b8c47635845ad225d65e7d25315b9318b751697e96d581e2dd9a5cafcbfc69d26fb00db59d23eaed5584be97543d3b73ede0b26e6c6bdc7
7
+ data.tar.gz: 983a1b2454d4310c5ece9a009dfe168350e747b79fe1eb55861034d6de4fd68339065d74a2c1d7056ed2efc942c00c96998ee9c4be66dc7e51f9fa454f646076
data/README.md CHANGED
@@ -15,31 +15,49 @@ gem install gem-local
15
15
  Usage
16
16
  -----
17
17
 
18
- Inside a project with a `Gemfile` where you want to be able to toggle local bundler gem loadpaths, run:
18
+ ### Initialization
19
+
20
+ If using git, inside a project with a `Gemfile` where you want to be able to toggle local bundler gem loadpaths, run:
19
21
 
20
22
  ```sh
21
23
  gem local install
22
24
  ```
23
25
 
26
+ This ensures that the local `.bundle/config` and `.gemlocal` files don't get committed.
27
+
28
+ ### Adding local repos
29
+
24
30
  Define the dependencies of this project that you have local copies of, and their locations:
25
31
 
26
32
  ```sh
27
33
  gem local add my-dependency ~/code/ruby/gems/my-dependency
28
34
  ```
29
35
 
36
+ This lets `git local` know about this dependency.
37
+
38
+ ### Using local repos
39
+
30
40
  When you want to use your local copy, run
31
41
 
32
42
  ```sh
33
43
  gem local use my-dependency
34
44
  ```
35
45
 
46
+ It updates the **local** bundler config (not *global*, as bundler does by default, which many tutorials run with) to refer to the path you supplied it.
47
+
48
+ ### Ignoring local repos
49
+
36
50
  When you want to use the remote version again, run
37
51
 
38
52
  ```sh
39
53
  gem local ignore my-dependency
40
54
  ```
41
55
 
42
- These commands (and their aliases--see the docs) work for multiple registered gems at once, as well as all registered gems if you don't specify any.
56
+ This will remove it from your bundler config and update your `.gitlocal` accordingly to know it's been disabled.
57
+
58
+ ### Multiple gems at once
59
+
60
+ The `use` and `ignore` commands (and their aliases--see the `help`) work for multiple registered gems at once, as well as all registered gems if you don't specify any.
43
61
 
44
62
  ```sh
45
63
  gem local status
@@ -56,14 +74,14 @@ gem local ignore bar fizz
56
74
  # on: buzz @ /Users/rubyist/code/oss/buzz
57
75
  # off: metasyntactic @ /Users/rubyist/code/oss/variable
58
76
 
59
- gem local use
77
+ gem local enable
60
78
  # on: foo @ /Users/rubyist/code/oss/foo
61
79
  # on: bar @ /Users/rubyist/code/oss/bar
62
80
  # on: fizz @ /Users/rubyist/code/oss/fizz
63
81
  # on: buzz @ /Users/rubyist/code/oss/buzz
64
82
  # on: metasyntactic @ /Users/rubyist/code/oss/variable
65
83
 
66
- gem local ignore
84
+ gem local disable
67
85
  # off: foo @ /Users/rubyist/code/oss/foo
68
86
  # off: bar @ /Users/rubyist/code/oss/bar
69
87
  # off: fizz @ /Users/rubyist/code/oss/fizz
@@ -71,7 +89,9 @@ gem local ignore
71
89
  # off: metasyntactic @ /Users/rubyist/code/oss/variable
72
90
  ```
73
91
 
74
- If invocations of `bundle config local...` cause your `.gemlocal` file to get out of sync with bundler's settings, run
92
+ ### Rebuilding the local gem db
93
+
94
+ If invocations of `bundle config --local local...` cause your `.gemlocal` file to get out of sync with bundler's settings in `.bundle/config`, run
75
95
 
76
96
  ```sh
77
97
  gem local rebuild
@@ -79,12 +99,16 @@ gem local rebuild
79
99
 
80
100
  to update your file against bundler's configuration.
81
101
 
102
+ ### Other commands
103
+
82
104
  For other commands and usage, see
83
105
 
84
106
  ```sh
85
107
  gem local help
86
108
  ```
87
109
 
110
+ ### Detailed help
111
+
88
112
  For details on a command, for example `install`, run
89
113
 
90
114
  ```sh
data/gem-local.gemspec CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "gem-local"
7
- spec.version = "0.1.3"
7
+ spec.version = "0.1.4"
8
8
  spec.authors = ["Chris Keele"]
9
9
  spec.email = ["dev@chriskeele.com"]
10
10
 
@@ -71,7 +71,7 @@ help [cmd] | Displays help information.
71
71
  if name and location and args.empty?
72
72
  setting = Setting.new(location)
73
73
  if bundler_add name, setting
74
- update_config(name, :status, setting.status)
74
+ update_config(name, location: setting.location, status: setting.status)
75
75
  end
76
76
  else
77
77
  arity_error __method__
@@ -111,7 +111,7 @@ help [cmd] | Displays help information.
111
111
  names.each do |name|
112
112
  if setting = config[name]
113
113
  if bundler_add name, setting
114
- update_config(name, :status, "on")
114
+ update_config(name, status: "on")
115
115
  else
116
116
  raise "Could not activate gem, make sure `bundle config local.#{name}` #{setting.location} succeeds"
117
117
  end
@@ -131,7 +131,7 @@ help [cmd] | Displays help information.
131
131
  names.each do |name|
132
132
  if setting = config[name]
133
133
  if bundler_remove name, setting
134
- update_config(name, :status, "off")
134
+ update_config(name, status: "off")
135
135
  else
136
136
  raise "Could not deactivate gem, make sure `bundle config --delete local.#{name}` succeeds"
137
137
  end
@@ -166,7 +166,7 @@ help [cmd] | Displays help information.
166
166
  if args.empty?
167
167
  File.open(find_file('.gitignore'), "a+") do |file|
168
168
  %w[.bundle .gemlocal].each do |ignorable|
169
- unless file.lines.any?{ |line| line.include? ignorable }
169
+ unless file.each_line.any?{ |line| line.include? ignorable }
170
170
  file.puts ignorable
171
171
  end
172
172
  end
@@ -355,9 +355,11 @@ private
355
355
  end
356
356
  end
357
357
 
358
- def update_config(name, field, value)
359
- new_setting = config[name]
360
- new_setting.send(:"#{field}=", value)
358
+ def update_config(name, properties = {})
359
+ new_setting = config[name] || Setting.new(nil)
360
+ properties.each do |field, value|
361
+ new_setting.send(:"#{field}=", value)
362
+ end
361
363
  config[name] = new_setting
362
364
  write_config config
363
365
  puts show_setting_for(name, new_setting)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gem-local
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Keele