guard 2.7.2 → 2.7.3
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/lib/guard.rb.orig +213 -0
- data/lib/guard/cli.rb +7 -0
- data/lib/guard/cli.rb.orig +218 -0
- data/lib/guard/commander.rb.orig +103 -0
- data/lib/guard/commands/all.rb.orig +36 -0
- data/lib/guard/commands/reload.rb.orig +34 -0
- data/lib/guard/commands/scope.rb.orig +36 -0
- data/lib/guard/deprecated_methods.rb.orig +71 -0
- data/lib/guard/deprecator.rb.orig +206 -0
- data/lib/guard/guard.rb.orig +42 -0
- data/lib/guard/guardfile.rb.orig +43 -0
- data/lib/guard/guardfile/evaluator.rb +5 -2
- data/lib/guard/guardfile/evaluator.rb.orig +275 -0
- data/lib/guard/notifiers/base.rb.orig +221 -0
- data/lib/guard/plugin_util.rb.orig +186 -0
- data/lib/guard/runner.rb.orig +210 -0
- data/lib/guard/setuper.rb.orig +395 -0
- data/lib/guard/ui.rb.orig +278 -0
- data/lib/guard/version.rb +1 -1
- metadata +18 -2
@@ -0,0 +1,103 @@
|
|
1
|
+
module Guard
|
2
|
+
# Commands supported by guard
|
3
|
+
module Commander
|
4
|
+
# Start Guard by evaluating the `Guardfile`, initializing declared Guard
|
5
|
+
# plugins and starting the available file change listener.
|
6
|
+
# Main method for Guard that is called from the CLI when Guard starts.
|
7
|
+
#
|
8
|
+
# - Setup Guard internals
|
9
|
+
# - Evaluate the `Guardfile`
|
10
|
+
# - Configure Notifiers
|
11
|
+
# - Initialize the declared Guard plugins
|
12
|
+
# - Start the available file change listener
|
13
|
+
#
|
14
|
+
# @option options [Boolean] clear if auto clear the UI should be done
|
15
|
+
# @option options [Boolean] notify if system notifications should be shown
|
16
|
+
# @option options [Boolean] debug if debug output should be shown
|
17
|
+
# @option options [Array<String>] group the list of groups to start
|
18
|
+
# @option options [String] watchdir the director to watch
|
19
|
+
# @option options [String] guardfile the path to the Guardfile
|
20
|
+
# @see CLI#start
|
21
|
+
#
|
22
|
+
def start(options = {})
|
23
|
+
setup(options)
|
24
|
+
::Guard::UI.debug "Guard starts all plugins"
|
25
|
+
runner.run(:start)
|
26
|
+
listener.start
|
27
|
+
<<<<<<< HEAD
|
28
|
+
|
29
|
+
watched = ::Guard.watchdirs.join("', '")
|
30
|
+
::Guard::UI.info "Guard is now watching at '#{ watched }'"
|
31
|
+
=======
|
32
|
+
::Guard::UI.info "Guard is now watching at '#{ ::Guard.watchdirs.join "', '" }'"
|
33
|
+
>>>>>>> origin/api_safe_refactoring
|
34
|
+
|
35
|
+
_interactor_loop
|
36
|
+
end
|
37
|
+
|
38
|
+
# TODO: refactor (left to avoid breaking too many specs)
|
39
|
+
def stop
|
40
|
+
listener.stop
|
41
|
+
interactor.background
|
42
|
+
::Guard::UI.debug "Guard stops all plugins"
|
43
|
+
runner.run(:stop)
|
44
|
+
::Guard::Notifier.turn_off
|
45
|
+
::Guard::UI.info "Bye bye...", reset: true
|
46
|
+
end
|
47
|
+
|
48
|
+
# Reload Guardfile and all Guard plugins currently enabled.
|
49
|
+
# If no scope is given, then the Guardfile will be re-evaluated,
|
50
|
+
# which results in a stop/start, which makes the reload obsolete.
|
51
|
+
#
|
52
|
+
# @param [Hash] scopes hash with a Guard plugin or a group scope
|
53
|
+
#
|
54
|
+
def reload(scopes = {})
|
55
|
+
::Guard::UI.clear(force: true)
|
56
|
+
::Guard::UI.action_with_scopes("Reload", scopes)
|
57
|
+
|
58
|
+
if scopes.empty?
|
59
|
+
evaluator.reevaluate_guardfile
|
60
|
+
else
|
61
|
+
runner.run(:reload, scopes)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
# Trigger `run_all` on all Guard plugins currently enabled.
|
66
|
+
#
|
67
|
+
# @param [Hash] scopes hash with a Guard plugin or a group scope
|
68
|
+
#
|
69
|
+
def run_all(scopes = {})
|
70
|
+
::Guard::UI.clear(force: true)
|
71
|
+
::Guard::UI.action_with_scopes("Run", scopes)
|
72
|
+
runner.run(:run_all, scopes)
|
73
|
+
end
|
74
|
+
|
75
|
+
# Pause Guard listening to file changes.
|
76
|
+
#
|
77
|
+
def pause(expected = nil)
|
78
|
+
paused = listener.paused?
|
79
|
+
states = { paused: true, unpaused: false, toggle: !paused }
|
80
|
+
pause = states[expected || :toggle]
|
81
|
+
fail ArgumentError, "invalid mode: #{expected.inspect}" if pause.nil?
|
82
|
+
return if pause == paused
|
83
|
+
|
84
|
+
listener.send(pause ? :pause : :unpause)
|
85
|
+
UI.info "File modification listening is now #{pause.to_s.upcase}"
|
86
|
+
end
|
87
|
+
|
88
|
+
def show
|
89
|
+
::Guard::DslDescriber.new(::Guard.options).show
|
90
|
+
end
|
91
|
+
|
92
|
+
private
|
93
|
+
|
94
|
+
# TODO: remove (left to avoid breaking too many specs)
|
95
|
+
def _interactor_loop
|
96
|
+
while interactor.foreground != :exit
|
97
|
+
_process_queue while pending_changes?
|
98
|
+
end
|
99
|
+
rescue Interrupt
|
100
|
+
stop
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# required for async_queue_add
|
2
|
+
require "pry"
|
3
|
+
require "guard"
|
4
|
+
|
5
|
+
module Guard
|
6
|
+
module Commands
|
7
|
+
class All
|
8
|
+
def self.import
|
9
|
+
Pry::Commands.create_command "all" do
|
10
|
+
group "Guard"
|
11
|
+
description "Run all plugins."
|
12
|
+
|
13
|
+
banner <<-BANNER
|
14
|
+
Usage: all <scope>
|
15
|
+
|
16
|
+
Run the Guard plugin `run_all` action.
|
17
|
+
|
18
|
+
You may want to specify an optional scope to the action,
|
19
|
+
either the name of a Guard plugin or a plugin group.
|
20
|
+
BANNER
|
21
|
+
|
22
|
+
def process(*entries)
|
23
|
+
scopes, unknown = ::Guard::Interactor.convert_scope(entries)
|
24
|
+
|
25
|
+
unless unknown.empty?
|
26
|
+
output.puts "Unknown scopes: #{ unknown.join(", ") }"
|
27
|
+
return
|
28
|
+
end
|
29
|
+
|
30
|
+
::Guard.async_queue_add([:guard_run_all, scopes])
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require "pry"
|
2
|
+
|
3
|
+
module Guard
|
4
|
+
module Commands
|
5
|
+
class Reload
|
6
|
+
def self.import
|
7
|
+
Pry::Commands.create_command "reload" do
|
8
|
+
group "Guard"
|
9
|
+
description "Reload all plugins."
|
10
|
+
|
11
|
+
banner <<-BANNER
|
12
|
+
Usage: reload <scope>
|
13
|
+
|
14
|
+
Run the Guard plugin `reload` action.
|
15
|
+
|
16
|
+
You may want to specify an optional scope to the action,
|
17
|
+
either the name of a Guard plugin or a plugin group.
|
18
|
+
BANNER
|
19
|
+
|
20
|
+
def process(*entries)
|
21
|
+
scopes, unknown = ::Guard::Interactor.convert_scope(entries)
|
22
|
+
|
23
|
+
unless unknown.empty?
|
24
|
+
output.puts "Unknown scopes: #{ unknown.join(", ") }"
|
25
|
+
return
|
26
|
+
end
|
27
|
+
|
28
|
+
::Guard.async_queue_add([:guard_reload, scopes])
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require "pry"
|
2
|
+
|
3
|
+
module Guard
|
4
|
+
module Commands
|
5
|
+
class Scope
|
6
|
+
def self.import
|
7
|
+
Pry::Commands.create_command "scope" do
|
8
|
+
group "Guard"
|
9
|
+
description "Scope Guard actions to groups and plugins."
|
10
|
+
|
11
|
+
banner <<-BANNER
|
12
|
+
Usage: scope <scope>
|
13
|
+
|
14
|
+
Set the global Guard scope.
|
15
|
+
BANNER
|
16
|
+
|
17
|
+
def process(*entries)
|
18
|
+
scope, unknown = ::Guard::Interactor.convert_scope(entries)
|
19
|
+
|
20
|
+
unless unknown.empty?
|
21
|
+
output.puts "Unknown scopes: #{unknown.join(",") }"
|
22
|
+
return
|
23
|
+
end
|
24
|
+
|
25
|
+
if scope[:plugins].empty? && scope[:groups].empty?
|
26
|
+
output.puts "Usage: scope <scope>"
|
27
|
+
return
|
28
|
+
end
|
29
|
+
|
30
|
+
::Guard.setup_scope(scope)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
module Guard
|
2
|
+
module DeprecatedMethods
|
3
|
+
# @deprecated Use `Guard.plugins(filter)` instead.
|
4
|
+
#
|
5
|
+
# @see https://github.com/guard/guard/wiki/Upgrading-to-Guard-2.0 How to
|
6
|
+
# upgrade for Guard 2.0
|
7
|
+
#
|
8
|
+
def guards(filter = nil)
|
9
|
+
::Guard::UI.deprecation(::Guard::Deprecator::GUARDS_DEPRECATION)
|
10
|
+
plugins(filter)
|
11
|
+
end
|
12
|
+
|
13
|
+
# @deprecated Use `Guard.add_plugin(name, options = {})` instead.
|
14
|
+
#
|
15
|
+
# @see https://github.com/guard/guard/wiki/Upgrading-to-Guard-2.0 How to
|
16
|
+
# upgrade for Guard 2.0
|
17
|
+
#
|
18
|
+
def add_guard(*args)
|
19
|
+
::Guard::UI.deprecation(::Guard::Deprecator::ADD_GUARD_DEPRECATION)
|
20
|
+
add_plugin(*args)
|
21
|
+
end
|
22
|
+
|
23
|
+
# @deprecated Use
|
24
|
+
# `Guard::PluginUtil.new(name).plugin_class(fail_gracefully:
|
25
|
+
# fail_gracefully)` instead.
|
26
|
+
#
|
27
|
+
# @see https://github.com/guard/guard/wiki/Upgrading-to-Guard-2.0 How to
|
28
|
+
# upgrade for Guard 2.0
|
29
|
+
#
|
30
|
+
def get_guard_class(name, fail_gracefully = false)
|
31
|
+
UI.deprecation(Deprecator::GET_GUARD_CLASS_DEPRECATION)
|
32
|
+
PluginUtil.new(name).plugin_class(fail_gracefully: fail_gracefully)
|
33
|
+
end
|
34
|
+
|
35
|
+
# @deprecated Use `Guard::PluginUtil.new(name).plugin_location` instead.
|
36
|
+
#
|
37
|
+
# @see https://github.com/guard/guard/wiki/Upgrading-to-Guard-2.0 How to
|
38
|
+
# upgrade for Guard 2.0
|
39
|
+
#
|
40
|
+
def locate_guard(name)
|
41
|
+
UI.deprecation(Deprecator::LOCATE_GUARD_DEPRECATION)
|
42
|
+
PluginUtil.new(name).plugin_location
|
43
|
+
end
|
44
|
+
|
45
|
+
# @deprecated Use `Guard::PluginUtil.plugin_names` instead.
|
46
|
+
#
|
47
|
+
# @see https://github.com/guard/guard/wiki/Upgrading-to-Guard-2.0 How to
|
48
|
+
# upgrade for Guard 2.0
|
49
|
+
#
|
50
|
+
def guard_gem_names
|
51
|
+
UI.deprecation(Deprecator::GUARD_GEM_NAMES_DEPRECATION)
|
52
|
+
PluginUtil.plugin_names
|
53
|
+
end
|
54
|
+
|
55
|
+
def running
|
56
|
+
UI.deprecation(Deprecator::GUARD_RUNNING_DEPRECATION)
|
57
|
+
nil
|
58
|
+
end
|
59
|
+
|
60
|
+
def lock
|
61
|
+
UI.deprecation(Deprecator::GUARD_LOCK_DEPRECATION)
|
62
|
+
end
|
63
|
+
|
64
|
+
def evaluator
|
65
|
+
UI.deprecation(Deprecator::GUARD_EVALUATOR_DEPRECATION)
|
66
|
+
# TODO: this will be changed to the following when scope is reworked
|
67
|
+
# ::Guard.session.evaluator
|
68
|
+
::Guard.instance_variable_get(:@evaluator)
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -0,0 +1,206 @@
|
|
1
|
+
require "guard/ui"
|
2
|
+
|
3
|
+
module Guard
|
4
|
+
class Deprecator
|
5
|
+
UPGRADE_WIKI = "https://github.com/guard/guard/wiki"\
|
6
|
+
"/Upgrade-guide-for-existing-guards-to-Guard-v1.1"
|
7
|
+
|
8
|
+
MORE_INFO_ON_UPGRADING_TO_GUARD_1_1 = <<-EOS.gsub(/^\s*/, "")
|
9
|
+
For more information on how to update existing Guard plugins, please head
|
10
|
+
over to:
|
11
|
+
#{UPGRADE_WIKI}
|
12
|
+
EOS
|
13
|
+
|
14
|
+
MORE_INFO_ON_UPGRADING_TO_GUARD_2 = <<-EOS.gsub(/^\s*/, "")
|
15
|
+
For more information on how to upgrade for Guard 2.0, please head over
|
16
|
+
to: https://github.com/guard/guard/wiki/Upgrading-to-Guard-2.0%s
|
17
|
+
EOS
|
18
|
+
|
19
|
+
ADD_GUARD_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
20
|
+
Starting with Guard 2.0 'Guard.add_guard(name, options = {})' is
|
21
|
+
deprecated.
|
22
|
+
|
23
|
+
Please use 'Guard.add_plugin(name, options = {})' instead.
|
24
|
+
|
25
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#deprecated-methods"}
|
26
|
+
EOS
|
27
|
+
|
28
|
+
GUARDS_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
29
|
+
Starting with Guard 2.0 'Guard.guards(filter)' is deprecated.
|
30
|
+
|
31
|
+
Please use 'Guard.plugins(filter)' instead.
|
32
|
+
|
33
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#deprecated-methods"}
|
34
|
+
EOS
|
35
|
+
|
36
|
+
# Deprecator message for the `Guard.get_guard_class` method
|
37
|
+
GET_GUARD_CLASS_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
38
|
+
Starting with Guard 2.0 'Guard.get_guard_class(name, fail_gracefully =
|
39
|
+
false)' is deprecated and is now always on.
|
40
|
+
|
41
|
+
Please use 'Guard::PluginUtil.new(name).plugin_class(fail_gracefully:
|
42
|
+
fail_gracefully)' instead.
|
43
|
+
|
44
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#deprecated-methods"}
|
45
|
+
EOS
|
46
|
+
|
47
|
+
# Deprecator message for the `Guard.locate_guard` method
|
48
|
+
LOCATE_GUARD_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
49
|
+
Starting with Guard 2.0 'Guard.locate_guard(name)' is deprecated.
|
50
|
+
|
51
|
+
Please use 'Guard::PluginUtil.new(name).plugin_location' instead.
|
52
|
+
|
53
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#deprecated-methods"}
|
54
|
+
EOS
|
55
|
+
|
56
|
+
# Deprecator message for the `Guard.guard_gem_names` method
|
57
|
+
GUARD_GEM_NAMES_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
58
|
+
Starting with Guard 2.0 'Guard.guard_gem_names' is deprecated.
|
59
|
+
|
60
|
+
Please use 'Guard::PluginUtil.plugin_names' instead.
|
61
|
+
|
62
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#deprecated-methods"}
|
63
|
+
EOS
|
64
|
+
|
65
|
+
# Deprecator message for the `Guard::Dsl.evaluate_guardfile` method
|
66
|
+
EVALUATE_GUARDFILE_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
67
|
+
Starting with Guard 2.0 'Guard::Dsl.evaluate_guardfile(options)' is
|
68
|
+
deprecated.
|
69
|
+
|
70
|
+
Please use 'Guard::Guardfile::Evaluator.new(options).evaluate_guardfile'
|
71
|
+
instead.
|
72
|
+
|
73
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#deprecated-methods-1"}
|
74
|
+
EOS
|
75
|
+
|
76
|
+
# Deprecator message for the `Guardfile.create_guardfile` method
|
77
|
+
CREATE_GUARDFILE_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
78
|
+
Starting with Guard 2.0 'Guard::Guardfile.create_guardfile(options)' is
|
79
|
+
deprecated.
|
80
|
+
|
81
|
+
Please use 'Guard::Guardfile::Generator.new(options).create_guardfile'
|
82
|
+
instead.
|
83
|
+
|
84
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#deprecated-methods-2"}
|
85
|
+
EOS
|
86
|
+
|
87
|
+
# Deprecator message for the `Guardfile.initialize_template` method
|
88
|
+
INITIALIZE_TEMPLATE_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
89
|
+
Starting with Guard 2.0
|
90
|
+
'Guard::Guardfile.initialize_template(plugin_name)' is deprecated.
|
91
|
+
|
92
|
+
Please use
|
93
|
+
'Guard::Guardfile::Generator.new.initialize_template(plugin_name)'
|
94
|
+
instead.
|
95
|
+
|
96
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#deprecated-methods-2"}
|
97
|
+
EOS
|
98
|
+
|
99
|
+
# Deprecator message for the `Guardfile.initialize_all_templates` method
|
100
|
+
INITIALIZE_ALL_TEMPLATES_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
101
|
+
Starting with Guard 2.0 'Guard::Guardfile.initialize_all_templates' is
|
102
|
+
deprecated.
|
103
|
+
|
104
|
+
Please use 'Guard::Guardfile::Generator.new.initialize_all_templates'
|
105
|
+
instead.
|
106
|
+
|
107
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#deprecated-methods-2"}
|
108
|
+
EOS
|
109
|
+
|
110
|
+
# Deprecator message for when a Guard plugin inherits from Guard::Guard
|
111
|
+
GUARD_GUARD_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
112
|
+
Starting with Guard 2.0, Guard::%s should inherit from Guard::Plugin
|
113
|
+
instead of Guard::Guard.
|
114
|
+
|
115
|
+
Please note that the constructor signature has changed from
|
116
|
+
Guard::Guard#initialize(watchers = [], options = {}) to
|
117
|
+
Guard::Plugin#initialize(options = {}).
|
118
|
+
|
119
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_2 % "#changes-in-guardguard"}
|
120
|
+
EOS
|
121
|
+
|
122
|
+
<<<<<<< HEAD
|
123
|
+
GUARD_RUNNING_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
124
|
+
Starting with Guard 2.7.1 it was discovered that Guard.running was never
|
125
|
+
initialized or used internally.
|
126
|
+
EOS
|
127
|
+
|
128
|
+
GUARD_LOCK_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
129
|
+
Starting with Guard 2.7.1 it was discovered that this accessor was never
|
130
|
+
initialized or used internally.
|
131
|
+
EOS
|
132
|
+
|
133
|
+
GUARD_EVALUATOR_DEPRECATION = <<-EOS.gsub(/^\s*/, "")
|
134
|
+
Starting with Guard 2.7.1 ::Guard.session.evaluator should be used
|
135
|
+
instead.
|
136
|
+
EOS
|
137
|
+
=======
|
138
|
+
# Deprecator message for the `watch_all_modifications` start option
|
139
|
+
WATCH_ALL_MODIFICATIONS_DEPRECATION = <<-EOS.gsub(/^\s*/, '')
|
140
|
+
Starting with Guard 1.1 the 'watch_all_modifications' option is removed
|
141
|
+
and is now always on.
|
142
|
+
EOS
|
143
|
+
|
144
|
+
# Deprecator message for the `no_vendor` start option
|
145
|
+
NO_VENDOR_DEPRECATION = <<-EOS.gsub(/^\s*/, '')
|
146
|
+
Starting with Guard 1.1 the 'no_vendor' option is removed because the
|
147
|
+
monitoring gems are now part of a new gem called Listen.
|
148
|
+
(https://github.com/guard/listen)
|
149
|
+
|
150
|
+
You can specify a custom version of any monitoring gem directly in your
|
151
|
+
Gemfile if you want to overwrite Listen's default monitoring gems.
|
152
|
+
EOS
|
153
|
+
|
154
|
+
# Deprecator message for the `run_on_change` method
|
155
|
+
RUN_ON_CHANGE_DEPRECATION = <<-EOS.gsub(/^\s*/, '')
|
156
|
+
Starting with Guard 1.1 the use of the 'run_on_change' method in the '%s' guard is deprecated.
|
157
|
+
|
158
|
+
Please consider replacing that method-call with 'run_on_changes' if the type of change
|
159
|
+
is not important for your usecase or using either 'run_on_modifications' or 'run_on_additions'
|
160
|
+
based on the type of the changes you want to handle.
|
161
|
+
|
162
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_1_1}
|
163
|
+
EOS
|
164
|
+
|
165
|
+
# Deprecator message for the `run_on_deletion` method
|
166
|
+
RUN_ON_DELETION_DEPRECATION = <<-EOS.gsub(/^\s*/, '')
|
167
|
+
Starting with Guard 1.1 the use of the 'run_on_deletion' method in the '%s' guard is deprecated.
|
168
|
+
|
169
|
+
Please consider replacing that method-call with 'run_on_removals' for future proofing your code.
|
170
|
+
|
171
|
+
#{MORE_INFO_ON_UPGRADING_TO_GUARD_1_1}
|
172
|
+
EOS
|
173
|
+
|
174
|
+
# Deprecator message for the `interactor` method
|
175
|
+
DSL_METHOD_INTERACTOR_DEPRECATION = <<-EOS.gsub(/^\s*/, '')
|
176
|
+
Starting with Guard 1.4 the use of the 'interactor' Guardfile DSL method is only used to
|
177
|
+
disable or pass options to the Pry interactor. All other usages are deprecated.
|
178
|
+
EOS
|
179
|
+
|
180
|
+
# Deprecator message for the `ignore_paths` method
|
181
|
+
DSL_METHOD_IGNORE_PATHS_DEPRECATION = <<-EOS.gsub(/^\s*/, '')
|
182
|
+
Starting with Guard 1.1 the use of the 'ignore_paths' Guardfile DSL method is deprecated.
|
183
|
+
|
184
|
+
Please replace that method with the better 'ignore' or/and 'filter' methods.
|
185
|
+
Documentation on the README: https://github.com/guard/guard#ignore
|
186
|
+
EOS
|
187
|
+
|
188
|
+
# Displays a warning for each deprecated options used when starting Guard.
|
189
|
+
#
|
190
|
+
def self.deprecated_options_warning(options)
|
191
|
+
::Guard::UI.deprecation(WATCH_ALL_MODIFICATIONS_DEPRECATION) if options.watch_all_modifications
|
192
|
+
::Guard::UI.deprecation(NO_VENDOR_DEPRECATION) if options.no_vendor
|
193
|
+
end
|
194
|
+
|
195
|
+
# Displays a warning for each deprecated method used is any registered Guard plugin.
|
196
|
+
#
|
197
|
+
def self.deprecated_plugin_methods_warning
|
198
|
+
::Guard.plugins.each do |plugin|
|
199
|
+
::Guard::UI.deprecation(RUN_ON_CHANGE_DEPRECATION % plugin.class.name) if plugin.respond_to?(:run_on_change)
|
200
|
+
::Guard::UI.deprecation(RUN_ON_DELETION_DEPRECATION % plugin.class.name) if plugin.respond_to?(:run_on_deletion)
|
201
|
+
end
|
202
|
+
end
|
203
|
+
|
204
|
+
>>>>>>> parent of a5162d2... Remove deprecated methods and options. Fixes #425.
|
205
|
+
end
|
206
|
+
end
|