guard 2.0.0.pre.3 → 2.0.0.pre.4
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 +4 -4
- data/README.md +40 -42
- data/lib/guard.rb +1 -1
- data/lib/guard/interactor.rb +2 -1
- data/lib/guard/setuper.rb +14 -14
- data/lib/guard/version.rb +1 -1
- metadata +18 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8025e7f0ec625bbce9aca160a9ffd51d71f26c56
|
4
|
+
data.tar.gz: fdcd36acb0a257c89429d602a01a73114afb243c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4d050af1881b99fccfb8d8e9195dddd2c8c189feeb4f7008141414db6789fcfa8c712161981fcfa8f9d2b4ddef183e36faf63cf4f415eac67a67860c4f5c2277
|
7
|
+
data.tar.gz: 60ab1d3b0b0469cf29dad122a7c4be3f1d94549f8be86e475b9d43d44ef77ab98c6d18834c1a96172b26c52119bbf396abba0dc2ffbfea7ee29b8d99deb0915a
|
data/README.md
CHANGED
@@ -54,10 +54,9 @@ $ bundle
|
|
54
54
|
Generate an empty `Guardfile` with:
|
55
55
|
|
56
56
|
```bash
|
57
|
-
$ guard init
|
57
|
+
$ bundle exec guard init
|
58
58
|
```
|
59
59
|
|
60
|
-
|
61
60
|
Run Guard through Bundler with:
|
62
61
|
|
63
62
|
```bash
|
@@ -97,14 +96,14 @@ Guard is run from the command line. Please open your terminal and go to your pro
|
|
97
96
|
You can always get help on the available tasks with the `help` task:
|
98
97
|
|
99
98
|
```bash
|
100
|
-
$ guard help
|
99
|
+
$ bundle exec guard help
|
101
100
|
```
|
102
101
|
|
103
102
|
Requesting more detailed help on a specific task is simple: just append the task name to the help task.
|
104
103
|
For example, to get help for the `start` task, simply run:
|
105
104
|
|
106
105
|
```bash
|
107
|
-
$ guard help start
|
106
|
+
$ bundle exec guard help start
|
108
107
|
```
|
109
108
|
|
110
109
|
### Init
|
@@ -113,28 +112,28 @@ You can generate a Guardfile and have all installed plugins be automatically add
|
|
113
112
|
it by running the `init` task without any option:
|
114
113
|
|
115
114
|
```bash
|
116
|
-
$ guard init
|
115
|
+
$ bundle exec guard init
|
117
116
|
```
|
118
117
|
|
119
118
|
You can also specify the name of an installed plugin to only get that plugin template
|
120
119
|
in the generated Guardfile:
|
121
120
|
|
122
121
|
```bash
|
123
|
-
$ guard init <guard-name>
|
122
|
+
$ bundle exec guard init <guard-name>
|
124
123
|
```
|
125
124
|
|
126
125
|
You can also specify the names of multiple plugins to only get those plugin templates
|
127
126
|
in the generated Guardfile:
|
128
127
|
|
129
128
|
```bash
|
130
|
-
$ guard init <guard1-name> <guard2-name>
|
129
|
+
$ bundle exec guard init <guard1-name> <guard2-name>
|
131
130
|
```
|
132
131
|
|
133
132
|
You can also define your own templates in `~/.guard/templates/` which can be appended in the same way to your existing
|
134
133
|
`Guardfile`:
|
135
134
|
|
136
135
|
```bash
|
137
|
-
$ guard init <template-name>
|
136
|
+
$ bundle exec guard init <template-name>
|
138
137
|
```
|
139
138
|
|
140
139
|
**Note**: If you already have a `Guardfile` in the current directory, the `init` task can be used
|
@@ -146,8 +145,8 @@ You can generate an empty `Guardfile` by running the `init` task with the bare
|
|
146
145
|
option:
|
147
146
|
|
148
147
|
```bash
|
149
|
-
$ guard init --bare
|
150
|
-
$ guard init -b # shortcut
|
148
|
+
$ bundle exec guard init --bare
|
149
|
+
$ bundle exec guard init -b # shortcut
|
151
150
|
```
|
152
151
|
|
153
152
|
### Start
|
@@ -155,7 +154,7 @@ $ guard init -b # shortcut
|
|
155
154
|
Just launch Guard inside your Ruby or Rails project with:
|
156
155
|
|
157
156
|
```bash
|
158
|
-
$ guard
|
157
|
+
$ bundle exec guard
|
159
158
|
```
|
160
159
|
|
161
160
|
Guard will look for a `Guardfile` in your current directory. If it does not find one, it will look in your `$HOME`
|
@@ -166,8 +165,8 @@ directory for a `.Guardfile`.
|
|
166
165
|
The shell can be cleared after each change:
|
167
166
|
|
168
167
|
```bash
|
169
|
-
$ guard --clear
|
170
|
-
$ guard -c # shortcut
|
168
|
+
$ bundle exec guard --clear
|
169
|
+
$ bundle exec guard -c # shortcut
|
171
170
|
```
|
172
171
|
|
173
172
|
You can add the following snippet to your `~/.guardrc` to have the clear option always be enabled:
|
@@ -181,8 +180,8 @@ Guard.options.clear = true
|
|
181
180
|
System notifications can be disabled:
|
182
181
|
|
183
182
|
```bash
|
184
|
-
$ guard --notify false
|
185
|
-
$ guard -n f # shortcut
|
183
|
+
$ bundle exec guard --notify false
|
184
|
+
$ bundle exec guard -n f # shortcut
|
186
185
|
```
|
187
186
|
|
188
187
|
Notifications can also be disabled globally by setting a `GUARD_NOTIFY` environment variable to `false`.
|
@@ -192,8 +191,8 @@ Notifications can also be disabled globally by setting a `GUARD_NOTIFY` environm
|
|
192
191
|
Scope Guard to certain plugin groups on start:
|
193
192
|
|
194
193
|
```bash
|
195
|
-
$ guard --group group_name another_group_name
|
196
|
-
$ guard -g group_name another_group_name # shortcut
|
194
|
+
$ bundle exec guard --group group_name another_group_name
|
195
|
+
$ bundle exec guard -g group_name another_group_name # shortcut
|
197
196
|
```
|
198
197
|
|
199
198
|
See the Guardfile DSL below for creating groups.
|
@@ -203,8 +202,8 @@ See the Guardfile DSL below for creating groups.
|
|
203
202
|
Scope Guard to certain plugins on start:
|
204
203
|
|
205
204
|
```bash
|
206
|
-
$ guard --plugins plugin_name another_plugin_name
|
207
|
-
$ guard -P plugin_name another_plugin_name # shortcut
|
205
|
+
$ bundle exec guard --plugins plugin_name another_plugin_name
|
206
|
+
$ bundle exec guard -P plugin_name another_plugin_name # shortcut
|
208
207
|
```
|
209
208
|
|
210
209
|
#### `-d`/`--debug` option
|
@@ -213,8 +212,8 @@ Guard can display debug information which can be very usefull for plugins
|
|
213
212
|
developers with:
|
214
213
|
|
215
214
|
```bash
|
216
|
-
$ guard --debug
|
217
|
-
$ guard -d # shortcut
|
215
|
+
$ bundle exec guard --debug
|
216
|
+
$ bundle exec guard -d # shortcut
|
218
217
|
```
|
219
218
|
|
220
219
|
#### `-w`/`--watchdir` option
|
@@ -222,9 +221,9 @@ $ guard -d # shortcut
|
|
222
221
|
Guard can watch any number of directories instead of only the current directory:
|
223
222
|
|
224
223
|
```bash
|
225
|
-
$ guard --watchdir ~/your/fancy/project
|
226
|
-
$ guard -w ~/your/fancy/project ~/your/fancier/project2 #multiple directories
|
227
|
-
$ guard -w ~/your/fancy/project # shortcut
|
224
|
+
$ bundle exec guard --watchdir ~/your/fancy/project
|
225
|
+
$ bundle exec guard -w ~/your/fancy/project ~/your/fancier/project2 #multiple directories
|
226
|
+
$ bundle exec guard -w ~/your/fancy/project # shortcut
|
228
227
|
```
|
229
228
|
|
230
229
|
#### `-G`/`--guardfile` option
|
@@ -232,8 +231,8 @@ $ guard -w ~/your/fancy/project # shortcut
|
|
232
231
|
Guard can use a `Guardfile` not located in the current directory:
|
233
232
|
|
234
233
|
```bash
|
235
|
-
$ guard --guardfile ~/.your_global_guardfile
|
236
|
-
$ guard -G ~/.your_global_guardfile # shortcut
|
234
|
+
$ bundle exec guard --guardfile ~/.your_global_guardfile
|
235
|
+
$ bundle exec guard -G ~/.your_global_guardfile # shortcut
|
237
236
|
```
|
238
237
|
|
239
238
|
#### `-i`/`--no-interactions` option
|
@@ -241,8 +240,8 @@ $ guard -G ~/.your_global_guardfile # shortcut
|
|
241
240
|
Turn off completely any Guard terminal interactions with:
|
242
241
|
|
243
242
|
```bash
|
244
|
-
$ guard start -i
|
245
|
-
$ guard start --no-interactions
|
243
|
+
$ bundle exec guard start -i
|
244
|
+
$ bundle exec guard start --no-interactions
|
246
245
|
```
|
247
246
|
|
248
247
|
#### `-B`/`--no-bundler-warning` option
|
@@ -250,8 +249,8 @@ $ guard start --no-interactions
|
|
250
249
|
Skip Bundler warning when a Gemfile exists in the project directory but Guard is not run with Bundler.
|
251
250
|
|
252
251
|
```bash
|
253
|
-
$ guard start -B
|
254
|
-
$ guard start --no-bundler-warning
|
252
|
+
$ bundle exec guard start -B
|
253
|
+
$ bundle exec guard start --no-bundler-warning
|
255
254
|
```
|
256
255
|
|
257
256
|
#### `-l`/`--latency` option
|
@@ -259,8 +258,8 @@ $ guard start --no-bundler-warning
|
|
259
258
|
Overwrite Listen's default latency, useful when your hard-drive / system is slow.
|
260
259
|
|
261
260
|
```bash
|
262
|
-
$ guard start -l 1.5
|
263
|
-
$ guard start --latency 1.5
|
261
|
+
$ bundle exec guard start -l 1.5
|
262
|
+
$ bundle exec guard start --latency 1.5
|
264
263
|
```
|
265
264
|
|
266
265
|
#### `-p`/`--force-polling` option
|
@@ -268,8 +267,8 @@ $ guard start --latency 1.5
|
|
268
267
|
Force Listen polling listener usage.
|
269
268
|
|
270
269
|
```bash
|
271
|
-
$ guard start -p
|
272
|
-
$ guard start --force-polling
|
270
|
+
$ bundle exec guard start -p
|
271
|
+
$ bundle exec guard start --force-polling
|
273
272
|
```
|
274
273
|
|
275
274
|
### List
|
@@ -277,7 +276,7 @@ $ guard start --force-polling
|
|
277
276
|
You can list the available plugins with the `list` task:
|
278
277
|
|
279
278
|
```bash
|
280
|
-
$ guard list
|
279
|
+
$ bundle exec guard list
|
281
280
|
+----------+--------------+
|
282
281
|
| Plugin | In Guardfile |
|
283
282
|
+----------+--------------+
|
@@ -296,7 +295,7 @@ $ guard list
|
|
296
295
|
You can show the structure of the groups and their plugins with the `show` task:
|
297
296
|
|
298
297
|
```bash
|
299
|
-
$ guard show
|
298
|
+
$ bundle exec guard show
|
300
299
|
+---------+--------+-----------------+----------------------------+
|
301
300
|
| Group | Plugin | Option | Value |
|
302
301
|
+---------+--------+-----------------+----------------------------+
|
@@ -320,7 +319,7 @@ read more about these files in the [shared configuration section](https://github
|
|
320
319
|
You can show the notifiers, their availablity and options with the `notifier` task:
|
321
320
|
|
322
321
|
```bash
|
323
|
-
$ guard notifiers
|
322
|
+
$ bundle exec guard notifiers
|
324
323
|
+-------------------+-----------+------+------------------------+-------------------+
|
325
324
|
| Name | Available | Used | Option | Value |
|
326
325
|
+-------------------+-----------+------+------------------------+-------------------+
|
@@ -444,7 +443,7 @@ detected before sending it to the plugin for processing:
|
|
444
443
|
|
445
444
|
```ruby
|
446
445
|
guard :rspec do
|
447
|
-
watch(%r{^lib/(.+)\.rb$})
|
446
|
+
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
|
448
447
|
end
|
449
448
|
```
|
450
449
|
|
@@ -482,7 +481,7 @@ end
|
|
482
481
|
Groups to be run can be specified with the Guard DSL option `--group` (or `-g`):
|
483
482
|
|
484
483
|
```bash
|
485
|
-
$ guard -g specs
|
484
|
+
$ bundle exec guard -g specs
|
486
485
|
```
|
487
486
|
|
488
487
|
Guard plugins that don't belong to a group are considered global and are always run.
|
@@ -697,7 +696,6 @@ Pull requests are very welcome! Please try to follow these simple rules if appli
|
|
697
696
|
* Make sure your patches are well tested. All specs must pass on [Travis CI](https://travis-ci.org/guard/guard).
|
698
697
|
* Update the [Yard](http://yardoc.org/) documentation.
|
699
698
|
* Update the [README](https://github.com/guard/guard/blob/master/README.md).
|
700
|
-
* Update the [CHANGELOG](https://github.com/guard/guard/blob/master/CHANGELOG.md) for noteworthy changes (don't forget to run `bundle exec pimpmychangelog` and watch the magic happen)!
|
701
699
|
* Please **do not change** the version number.
|
702
700
|
|
703
701
|
For questions please join us in our [Google group](http://groups.google.com/group/guard-dev) or on
|
@@ -720,9 +718,9 @@ Please try to follow these simple rules:
|
|
720
718
|
#### Core Team
|
721
719
|
|
722
720
|
* [Michael Kessler](https://github.com/netzpirat) ([@netzpirat](http://twitter.com/netzpirat), [mksoft.ch](https://mksoft.ch))
|
723
|
-
* [Rémy Coutable](https://github.com/rymai) ([@rymai](http://twitter.com/rymai), [
|
721
|
+
* [Rémy Coutable](https://github.com/rymai) ([@rymai](http://twitter.com/rymai), [rym.ai](http://rym.ai))
|
724
722
|
* [Thibaud Guillaume-Gentil](https://github.com/thibaudgg) ([@thibaudgg](http://twitter.com/thibaudgg), [thibaud.me](http://thibaud.me/))
|
725
723
|
|
726
724
|
#### Contributors
|
727
725
|
|
728
|
-
[https://github.com/guard/guard/contributors](https://github.com/guard/guard/contributors)
|
726
|
+
[https://github.com/guard/guard/graphs/contributors](https://github.com/guard/guard/graphs/contributors)
|
data/lib/guard.rb
CHANGED
data/lib/guard/interactor.rb
CHANGED
@@ -126,7 +126,7 @@ module Guard
|
|
126
126
|
|
127
127
|
_store_terminal_settings if _stty_exists?
|
128
128
|
|
129
|
-
|
129
|
+
unless @thread
|
130
130
|
::Guard::UI.debug 'Start interactor'
|
131
131
|
|
132
132
|
@thread = Thread.new do
|
@@ -145,6 +145,7 @@ module Guard
|
|
145
145
|
::Guard::UI.reset_line
|
146
146
|
::Guard::UI.debug 'Stop interactor'
|
147
147
|
@thread.kill
|
148
|
+
@thread = nil
|
148
149
|
end
|
149
150
|
|
150
151
|
_restore_terminal_settings if _stty_exists?
|
data/lib/guard/setuper.rb
CHANGED
@@ -64,21 +64,28 @@ module Guard
|
|
64
64
|
setup_scope(groups: options.group, plugins: options.plugin)
|
65
65
|
|
66
66
|
_setup_notifier
|
67
|
-
_setup_interactor
|
68
67
|
|
69
68
|
self
|
70
69
|
end
|
71
70
|
|
71
|
+
# Lazy initializer for Guard's options hash
|
72
|
+
#
|
73
|
+
def options
|
74
|
+
@options ||= ::Guard::Options.new(@opts || {}, DEFAULT_OPTIONS)
|
75
|
+
end
|
76
|
+
|
72
77
|
# Lazy initializer for Guardfile evaluator
|
73
78
|
#
|
74
79
|
def evaluator
|
75
80
|
@evaluator ||= ::Guard::Guardfile::Evaluator.new(@opts || {})
|
76
81
|
end
|
77
82
|
|
78
|
-
# Lazy initializer
|
83
|
+
# Lazy initializer the interactor unless the user has specified not to.
|
79
84
|
#
|
80
|
-
def
|
81
|
-
|
85
|
+
def interactor
|
86
|
+
return if options.no_interactions || !::Guard::Interactor.enabled
|
87
|
+
|
88
|
+
@interactor ||= ::Guard::Interactor.new
|
82
89
|
end
|
83
90
|
|
84
91
|
# Clear Guard's options hash
|
@@ -141,8 +148,9 @@ module Guard
|
|
141
148
|
private
|
142
149
|
|
143
150
|
def _reset_lazy_accessors
|
144
|
-
@options
|
145
|
-
@evaluator
|
151
|
+
@options = nil
|
152
|
+
@evaluator = nil
|
153
|
+
@interactor = nil
|
146
154
|
end
|
147
155
|
|
148
156
|
# Sets up various debug behaviors:
|
@@ -230,14 +238,6 @@ module Guard
|
|
230
238
|
end
|
231
239
|
end
|
232
240
|
|
233
|
-
# Initializes the interactor unless the user has specified not to.
|
234
|
-
#
|
235
|
-
def _setup_interactor
|
236
|
-
unless options.no_interactions || !::Guard::Interactor.enabled
|
237
|
-
@interactor = ::Guard::Interactor.new
|
238
|
-
end
|
239
|
-
end
|
240
|
-
|
241
241
|
# Adds a command logger in debug mode. This wraps common command
|
242
242
|
# execution functions and logs the executed command before execution.
|
243
243
|
#
|
data/lib/guard/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: guard
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0.pre.
|
4
|
+
version: 2.0.0.pre.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thibaud Guillaume-Gentil
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-09-
|
11
|
+
date: 2013-09-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -16,56 +16,56 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.18.1
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
26
|
+
version: 0.18.1
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: listen
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ~>
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 2.0.0.
|
33
|
+
version: 2.0.0.pre.1
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ~>
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 2.0.0.
|
40
|
+
version: 2.0.0.pre.1
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: pry
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - '>='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.9.
|
47
|
+
version: 0.9.12
|
48
48
|
type: :runtime
|
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.9.
|
54
|
+
version: 0.9.12
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: lumberjack
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ~>
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 1.0
|
61
|
+
version: '1.0'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ~>
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 1.0
|
68
|
+
version: '1.0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: formatador
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -98,16 +98,16 @@ dependencies:
|
|
98
98
|
name: rspec
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - ~>
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 2.14
|
103
|
+
version: '2.14'
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - ~>
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: 2.14
|
110
|
+
version: '2.14'
|
111
111
|
description: Guard is a command line tool to easily handle events on file system modifications.
|
112
112
|
email:
|
113
113
|
- thibaud@thibaud.me
|