jets 1.9.27 → 1.9.28

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f782d51972045530bd5b8809bad83512a0135babb2fbd41b866884919b8f1951
4
- data.tar.gz: fd8d3c8b52261dfa486998499600d5ccc378e0f85b27992638b3d6f16f460ac7
3
+ metadata.gz: 56af9d1af06caefd6d27aee0d4f3bf53fb4b3365a3612bf6bb7b70c841e12ff5
4
+ data.tar.gz: 6d64131cf5a0e9606a7698c846d9eb6110558f8a869ed09e1b0fda4dc192ecbb
5
5
  SHA512:
6
- metadata.gz: e2e87778b4460a6791f9754eb37af56bc7161191f8caf627eda6fcfb73c7150d9aec1a97426633f4c40e73a25ff8fa38137f9e601a8d2222c579c403caa6a035
7
- data.tar.gz: 975f65f87aa922542371f7fcda07789266348e4dd5f110a932b7f27d0bcfdd332525ad2cb94761a29e00a6d4ac6326ec32cfd6874568c492681b261ae51116bf
6
+ metadata.gz: 253a2700d3e187c657fbf0c3fbfbdaac1a592dc2d9b851873f4bc33652ffbe23f5bfab3479ca44ffd45b65265532b2ba3dd22b24e2f98b17f7048aeaa7bd945c
7
+ data.tar.gz: 2267b30bdb7c481c4f91fa482dac924f5820b567ad8540942b54a2948288426f3bf23f83bf3714d20f8ffbeef8a231533f81293ed1c720b27c53b7c3f2ffd2f8
data/CHANGELOG.md CHANGED
@@ -3,6 +3,9 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  This project *loosely tries* to adhere to [Semantic Versioning](http://semver.org/).
5
5
 
6
+ ## [1.9.28]
7
+ - #302 improve jets call guesser, do a simple detection at the start
8
+
6
9
  ## [1.9.27]
7
10
  - sync stdout by default
8
11
 
@@ -1,6 +1,10 @@
1
1
  class Jets::Commands::Call
2
2
  class AutoloadGuesser < BaseGuesser
3
3
  def detect_class_name
4
+ # First guess the class name assuming simple
5
+ class_name = simple_detect_class_name
6
+ return class_name if class_name
7
+
4
8
  guess_classes.each do |class_name_guess|
5
9
  begin
6
10
  class_name_guess.constantize
@@ -20,6 +24,26 @@ class Jets::Commands::Call
20
24
  nil
21
25
  end
22
26
 
27
+ # Can guess name by looking at underscore and dashes.
28
+ #
29
+ # Example:
30
+ #
31
+ # @provided_function_name: first_module-lost_controller-index
32
+ # return: FirstModule::LostController
33
+ #
34
+ def simple_detect_class_name
35
+ parts = @provided_function_name.split('-')
36
+ namespace = parts[0..-3].join('/')
37
+ controller = parts[-2..-2] # dont include the action
38
+ class_name = [namespace, controller].reject {|s| s.empty?}.compact.join('/').camelize
39
+ begin
40
+ class_name.constantize
41
+ return class_name
42
+ rescue NameError
43
+ nil
44
+ end
45
+ end
46
+
23
47
  def method_name
24
48
  return @method_name if defined?(@method_name)
25
49
  return nil unless class_name
data/lib/jets/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Jets
2
- VERSION = "1.9.27"
2
+ VERSION = "1.9.28"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jets
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.27
4
+ version: 1.9.28
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tung Nguyen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-07-06 00:00:00.000000000 Z
11
+ date: 2019-07-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionmailer