require_patch 0.1.0 → 0.2.0

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: 582522067da856ebb4a7eedbebeb712b8a04920d
4
- data.tar.gz: 33ddfcd5a714ca49fb913cf8f0b85da0be3ae681
3
+ metadata.gz: 416d9932de697193eea187491bc6bb86390d3612
4
+ data.tar.gz: a849a6f7b57f9b3c4371534321a6074fb3530eb8
5
5
  SHA512:
6
- metadata.gz: 4e23b61440f64e71321a43e511e91d2f384fef18c8313024b444bda8c1f6169cdcfbc365bc774661af5c11e857644407838960c304b39e6312fa8dd41f555ae4
7
- data.tar.gz: 49a4d4460b7d32c2da8b3de7df6b7431d622101ae2f06b725b69c392ef4d44c74952ecf39271eb9263fecef70d391efe25de8c3dcc74835759359825c680174b
6
+ metadata.gz: 00f03e6db23afd0ea8ca1e215ac072035158751bcbaa7210195e4ca763a9f0026639a45e332219988290dcdb5a4a11fc7e1645f15d4094b704a40d2af698c27a
7
+ data.tar.gz: 99087c92ac21d6efc727c1e488605d5a73d6feb13b8a996cfc7f7afe10c33463e3d31b7ebfbbee0a5f9176b16569c449f6a6423ea5316f2a2b7e595e5f62db07
data/README.md CHANGED
@@ -23,6 +23,7 @@ Or install it yourself as:
23
23
  plugins/awesome_plugin/lib/awesome_plugin/issue_patch.rb
24
24
  plugins/awesome_plugin/lib/awesome_plugin/users_controller_patch.rb
25
25
  plugins/awesome_plugin/lib/awesome_plugin/issues_helper_patch.rb
26
+ plugins/awesome_plugin/lib/awesome_plugin/form/builder_patch.rb
26
27
 
27
28
  # plugins/awesome_plugin/init.rb
28
29
  Rails.config.to_prepare do
@@ -31,9 +32,16 @@ Or install it yourself as:
31
32
  # or require_patch 'awesome_plugin', 'form/builder', skip_require_dependency: true
32
33
  end
33
34
 
35
+ ## Options
36
+
37
+ skip_require_dependency - block require_dependency resource (default: false)
38
+ dir - directory for patches (default: nil)
39
+ prefix - for patch-file (default: nil)
40
+ postfix - for patch-file (default: 'patch')
41
+
34
42
  ## Contributing
35
43
 
36
- 1. Fork it ( http://github.com/<my-github-username>/require_patch/fork )
44
+ 1. Fork it ( http://github.com/shipiev/require_patch/fork )
37
45
  2. Create your feature branch (`git checkout -b my-new-feature`)
38
46
  3. Commit your changes (`git commit -am 'Add some feature'`)
39
47
  4. Push to the branch (`git push origin my-new-feature`)
data/lib/require_patch.rb CHANGED
@@ -4,15 +4,25 @@ module RequirePatch
4
4
  # It include patches to plugin
5
5
  # @param plugin_name [String] the plugin name
6
6
  # @param resources [Array] names of resources which will need patching
7
+ # @param options [Hash] optional options
7
8
  # @example
8
9
  # Rails.config.to_prepare do
9
10
  # require_patch 'awesome_plugin', ['user', 'issue', 'user_controller', 'issue_helper']
10
11
  # end
11
12
  def require_patch(plugin_name, resources, options = {})
13
+ default_options = {
14
+ dir: nil,
15
+ prefix: nil,
16
+ postfix: 'patch'
17
+ }
18
+
19
+ options = default_options.merge options
20
+
12
21
  resources.to_a.each do |resource|
13
22
  require_dependency resource unless options[:skip_require_dependency]
14
23
 
15
- resource_patch = [plugin_name, [resource, 'patch'].join('_')].join('/')
24
+ patch_name = [options[:prefix], resource, options[:postfix]].select(&:present?).join('_')
25
+ resource_patch = [plugin_name, options[:dir], patch_name].select(&:present?).join('/')
16
26
  resource_constant, resource_patch_constant = [resource, resource_patch].map(&:camelize).map(&:constantize)
17
27
 
18
28
  resource_constant.send(:include, resource_patch_constant) unless resource_constant.included_modules.include? resource_patch_constant
@@ -1,3 +1,3 @@
1
1
  module RequirePatch
2
- VERSION = '0.1.0'
2
+ VERSION = '0.2.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: require_patch
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roman Shipiev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-02 00:00:00.000000000 Z
11
+ date: 2015-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -59,7 +59,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
59
59
  version: '0'
60
60
  requirements: []
61
61
  rubyforge_project:
62
- rubygems_version: 2.0.2
62
+ rubygems_version: 2.4.8
63
63
  signing_key:
64
64
  specification_version: 4
65
65
  summary: The gem adds a command "require_patch" that includes plugin patches