missile_emitter 0.3.17 → 0.3.20

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
  SHA256:
3
- metadata.gz: '09f1b2c72945a8304531759d552b5c3efb9c988ce6468acefd896012b6122bea'
4
- data.tar.gz: 1bff41956032c30ec90dd05f0aa3fed0f3a82deead94fa3e71f36166b0abaedb
3
+ metadata.gz: 48818cb77b414e6c99ae67e2ca0b6ba3e8dd1b3e3d099622d1eb44627902bd24
4
+ data.tar.gz: 933645f58566bd6e34ac29e218a418c7e2584500d23fd1ac58b35029abf2fc28
5
5
  SHA512:
6
- metadata.gz: c5db328b35cd81e444845841e204ddca067e78f5c89f9dc8279699d59cb59e2b6487c52aea1fa104454205e489e63c6cb7cece93a650cb2321ea972674898406
7
- data.tar.gz: 7b5a4f24e42d9881accece9686f4ab02d397c8a4fae0c73c9cb8aed3633d91ed58a081d01578fd872c1972a053bbf75ab1e5efd8303432eb28d0dfdf8e656b0e
6
+ metadata.gz: e116cecd2295c9e8fd07a1a181247937ec6b6d6391c5ad74be138e94529af9afced1c1c79940506f560c2eb57d631d52812e59ad54575aa577f23b2861f10e22
7
+ data.tar.gz: 7b8acc6720e77a526de73ee606f73a9fb2b67640a138c97429cbdc67ff9b313322ab0a91aa79c0f171919becd7e570b0a918f5f6e71f574e109ae331a7d3e616
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source "https://rubygems.org"
1
+ source 'https://gems.ruby-china.com'
2
2
 
3
3
  # Specify your gem's dependencies in missile_emitter.gemspec
4
4
  gemspec
data/Gemfile.lock CHANGED
@@ -1,56 +1,53 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- missile_emitter (0.3.17)
4
+ missile_emitter (0.3.19)
5
5
  activesupport
6
6
 
7
7
  GEM
8
- remote: https://rubygems.org/
8
+ remote: https://gems.ruby-china.com/
9
9
  specs:
10
- activesupport (6.0.2.1)
10
+ activesupport (7.0.3.1)
11
11
  concurrent-ruby (~> 1.0, >= 1.0.2)
12
- i18n (>= 0.7, < 2)
13
- minitest (~> 5.1)
14
- tzinfo (~> 1.1)
15
- zeitwerk (~> 2.2)
16
- coderay (1.1.2)
17
- concurrent-ruby (1.1.5)
18
- diff-lcs (1.3)
19
- i18n (1.8.2)
12
+ i18n (>= 1.6, < 2)
13
+ minitest (>= 5.1)
14
+ tzinfo (~> 2.0)
15
+ coderay (1.1.3)
16
+ concurrent-ruby (1.1.10)
17
+ diff-lcs (1.5.0)
18
+ i18n (1.12.0)
20
19
  concurrent-ruby (~> 1.0)
21
- method_source (0.9.2)
22
- minitest (5.14.0)
23
- pry (0.12.2)
24
- coderay (~> 1.1.0)
25
- method_source (~> 0.9.0)
26
- rake (10.5.0)
27
- rspec (3.9.0)
28
- rspec-core (~> 3.9.0)
29
- rspec-expectations (~> 3.9.0)
30
- rspec-mocks (~> 3.9.0)
31
- rspec-core (3.9.1)
32
- rspec-support (~> 3.9.1)
33
- rspec-expectations (3.9.0)
20
+ method_source (1.0.0)
21
+ minitest (5.16.3)
22
+ pry (0.14.1)
23
+ coderay (~> 1.1)
24
+ method_source (~> 1.0)
25
+ rake (13.0.6)
26
+ rspec (3.11.0)
27
+ rspec-core (~> 3.11.0)
28
+ rspec-expectations (~> 3.11.0)
29
+ rspec-mocks (~> 3.11.0)
30
+ rspec-core (3.11.0)
31
+ rspec-support (~> 3.11.0)
32
+ rspec-expectations (3.11.0)
34
33
  diff-lcs (>= 1.2.0, < 2.0)
35
- rspec-support (~> 3.9.0)
36
- rspec-mocks (3.9.1)
34
+ rspec-support (~> 3.11.0)
35
+ rspec-mocks (3.11.1)
37
36
  diff-lcs (>= 1.2.0, < 2.0)
38
- rspec-support (~> 3.9.0)
39
- rspec-support (3.9.2)
40
- thread_safe (0.3.6)
41
- tzinfo (1.2.6)
42
- thread_safe (~> 0.1)
43
- zeitwerk (2.2.2)
37
+ rspec-support (~> 3.11.0)
38
+ rspec-support (3.11.0)
39
+ tzinfo (2.0.5)
40
+ concurrent-ruby (~> 1.0)
44
41
 
45
42
  PLATFORMS
46
- ruby
43
+ x86_64-darwin-21
47
44
 
48
45
  DEPENDENCIES
49
46
  bundler (~> 2.0)
50
47
  missile_emitter!
51
48
  pry
52
- rake (~> 10.0)
49
+ rake (~> 13.0)
53
50
  rspec (~> 3.0)
54
51
 
55
52
  BUNDLED WITH
56
- 2.1.4
53
+ 2.3.17
@@ -29,12 +29,12 @@ module MissileEmitter
29
29
  end
30
30
  end
31
31
 
32
- # 获取所有配置项名称:Klass.option_names ---> [:logo, copyright, ...]
32
+ # 获取所有配置项名称:Configurable.option_names_for(Klass) ---> [:logo, copyright, ...]
33
33
  define_singleton_method :option_names_for do |klass|
34
34
  mapping.fetch klass, []
35
35
  end
36
36
 
37
- # 获取所有配置:Klass.options ---> {logo: '', copyright: '', ...}
37
+ # 获取所有配置:Configurable.options_for(Klass) ---> {logo: '', copyright: '', ...}
38
38
  define_singleton_method :options_for do |klass|
39
39
  option_names_for(klass).each_with_object({}) do |key, result|
40
40
  result[key] = klass.send key
@@ -1,3 +1,5 @@
1
+ require 'rubygems'
2
+
1
3
  module MissileEmitter
2
4
  module Searchable
3
5
 
@@ -9,14 +11,20 @@ module MissileEmitter
9
11
  (conditions[klass] ||= {}.with_indifferent_access)[key] = block
10
12
  end
11
13
 
14
+ has_underline_method = Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('2.7.0')
15
+
12
16
  define_method :search do |hash|
13
17
  hash.reduce all do |relation, (key, value)|
14
18
  next relation if value.blank? # ignore empty value
15
19
 
16
20
  if filter = conditions.fetch(self, {})[key]
21
+ # Inside the scope block, You can get value through calling the _ method
17
22
  relation.extending do
18
- # Just for fun :) With Ruby >= 2.7 you can use _1 instead of _.
23
+ # Just for fun :)
19
24
  define_method(:_) { value }
25
+ # With ruby >= 2.7 you can use _1 instead of _
26
+ # Polyfill for the earlier version
27
+ alias_method :_1, :_ unless has_underline_method
20
28
  end.instance_exec(value, &filter)
21
29
  elsif column_names.include?(key.to_s)
22
30
  relation.where key => value
@@ -1,3 +1,3 @@
1
1
  module MissileEmitter
2
- VERSION = "0.3.17"
2
+ VERSION = "0.3.20"
3
3
  end
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
29
29
  spec.require_paths = ["lib"]
30
30
 
31
31
  spec.add_development_dependency "bundler", "~> 2.0"
32
- spec.add_development_dependency "rake", "~> 10.0"
32
+ spec.add_development_dependency "rake", "~> 13.0"
33
33
  spec.add_development_dependency "rspec", "~> 3.0"
34
34
  spec.add_development_dependency "pry"
35
35
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: missile_emitter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.17
4
+ version: 0.3.20
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jerry Chen
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-01-20 00:00:00.000000000 Z
11
+ date: 2022-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '13.0'
34
34
  type: :development
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: '10.0'
40
+ version: '13.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -114,7 +114,7 @@ metadata:
114
114
  homepage_uri: https://github.com/coding-class-club/missile_emitter
115
115
  source_code_uri: https://github.com/coding-class-club/missile_emitter
116
116
  changelog_uri: https://github.com/coding-class-club/missile_emitter/blob/master/CHANGELOG.md
117
- post_install_message:
117
+ post_install_message:
118
118
  rdoc_options: []
119
119
  require_paths:
120
120
  - lib
@@ -129,8 +129,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
129
129
  - !ruby/object:Gem::Version
130
130
  version: '0'
131
131
  requirements: []
132
- rubygems_version: 3.0.3
133
- signing_key:
132
+ rubygems_version: 3.3.7
133
+ signing_key:
134
134
  specification_version: 4
135
135
  summary: Ruby元编程辅助工具
136
136
  test_files: []