shaf 1.4.0 → 1.4.1
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
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/lib/shaf/command/base.rb +2 -2
- data/lib/shaf/extensions/controller_hooks.rb +4 -6
- data/lib/shaf/registrable_factory.rb +2 -2
- data/lib/shaf/responder/hal.rb +2 -0
- data/lib/shaf/router.rb +1 -1
- data/lib/shaf/utils.rb +1 -1
- data/lib/shaf/version.rb +1 -1
- metadata +31 -3
- metadata.gz.sig +1 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2b68c64b495d1413c70562c4deb0796113c93c4e3c4e269899d31a93baaa7574
|
4
|
+
data.tar.gz: ee75b02c4006994eb0f1ea1da93114687d0a5ee5dd64d1dcf62d5dc647210301
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0f84860a9c7442d473378ecbd2ca61325bf71f848af65f1e742e01888a37ecb52e0c8bca9e8938eb9b70d5d167501616ce46096cdcba1f87e31299aa47184100
|
7
|
+
data.tar.gz: 7ed67fe1fe15cc5300b658eb3e0cfb3c79325829eb2969308a0f31ef06d26bcb5365b8600f716c1e75b85c2fcabdee4b7e17f5b16c999c8fdf6d0d9cfbc1f597
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/lib/shaf/command/base.rb
CHANGED
@@ -3,11 +3,11 @@ require 'sinatra/base'
|
|
3
3
|
module Shaf
|
4
4
|
module ControllerHooks
|
5
5
|
def before_action(method_name = nil, **options, &block)
|
6
|
-
__action_hook(:before, method_name, block, options)
|
6
|
+
__action_hook(:before, method_name, block, **options)
|
7
7
|
end
|
8
8
|
|
9
9
|
def after_action(method_name = nil, **options, &block)
|
10
|
-
__action_hook(:after, method_name, block, options)
|
10
|
+
__action_hook(:after, method_name, block, **options)
|
11
11
|
end
|
12
12
|
|
13
13
|
private
|
@@ -15,7 +15,7 @@ module Shaf
|
|
15
15
|
def __action_hook(hook, method_name, block, **options)
|
16
16
|
only = Array(options[:only]) if options.key? :only
|
17
17
|
except = Array(options[:except]) if options.key? :except
|
18
|
-
|
18
|
+
__validate_symbols(hook: hook, only: only, except: except)
|
19
19
|
|
20
20
|
path_helpers.each do |helper|
|
21
21
|
next if only && !only.include?(helper)
|
@@ -43,7 +43,7 @@ module Shaf
|
|
43
43
|
Regexp.new("#{str}/?")
|
44
44
|
end
|
45
45
|
|
46
|
-
def
|
46
|
+
def __validate_symbols(hook:, only: [], except: [])
|
47
47
|
s = "\n\n\"%s\" given as :%s keyword arg to %s hook. Must be a symbol!\n"
|
48
48
|
Array(only).each do |value|
|
49
49
|
next if value.is_a? Symbol
|
@@ -56,6 +56,4 @@ module Shaf
|
|
56
56
|
end
|
57
57
|
end
|
58
58
|
end
|
59
|
-
|
60
|
-
Sinatra.register ControllerHooks
|
61
59
|
end
|
@@ -39,12 +39,12 @@ module Shaf
|
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
|
-
def create(*params)
|
42
|
+
def create(*params, **options)
|
43
43
|
clazz = lookup(*params)
|
44
44
|
raise NotFoundError.new(%Q(Command '#{ARGV}' is not supported)) unless clazz
|
45
45
|
|
46
46
|
args = init_args(clazz, params)
|
47
|
-
clazz.new(*args)
|
47
|
+
clazz.new(*args, **options)
|
48
48
|
end
|
49
49
|
|
50
50
|
private
|
data/lib/shaf/responder/hal.rb
CHANGED
data/lib/shaf/router.rb
CHANGED
data/lib/shaf/utils.rb
CHANGED
@@ -4,7 +4,6 @@ require 'erb'
|
|
4
4
|
require 'forwardable'
|
5
5
|
require 'yaml'
|
6
6
|
require 'shaf/version'
|
7
|
-
require 'sinatra/base'
|
8
7
|
|
9
8
|
module Shaf
|
10
9
|
module Utils
|
@@ -45,6 +44,7 @@ module Shaf
|
|
45
44
|
end
|
46
45
|
|
47
46
|
def environment
|
47
|
+
require 'sinatra/base'
|
48
48
|
Sinatra::Application.settings.environment
|
49
49
|
end
|
50
50
|
|
data/lib/shaf/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shaf
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sammy Henningsson
|
@@ -30,7 +30,7 @@ cert_chain:
|
|
30
30
|
ZMhjYR7sRczGJx+GxGU2EaR0bjRsPVlC4ywtFxoOfRG3WaJcpWGEoAoMJX6Z0bRv
|
31
31
|
M40=
|
32
32
|
-----END CERTIFICATE-----
|
33
|
-
date: 2019-
|
33
|
+
date: 2019-12-22 00:00:00.000000000 Z
|
34
34
|
dependencies:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
36
|
name: minitest
|
@@ -150,6 +150,34 @@ dependencies:
|
|
150
150
|
- - "~>"
|
151
151
|
- !ruby/object:Gem::Version
|
152
152
|
version: '0.17'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: git
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '1.5'
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - "~>"
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '1.5'
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: bundler
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - "~>"
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '2.1'
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '2.1'
|
153
181
|
description: A framework for building hypermedia driven APIs with sinatra and sequel.
|
154
182
|
email: sammy.henningsson@gmail.com
|
155
183
|
executables:
|
@@ -321,7 +349,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
321
349
|
- !ruby/object:Gem::Version
|
322
350
|
version: '0'
|
323
351
|
requirements: []
|
324
|
-
rubygems_version: 3.0.
|
352
|
+
rubygems_version: 3.0.3
|
325
353
|
signing_key:
|
326
354
|
specification_version: 4
|
327
355
|
summary: Sinatra Hypermedia Api Framework
|
metadata.gz.sig
CHANGED
@@ -1,2 +1 @@
|
|
1
|
-
|
2
|
-
�s�R.���%�y��W�7�)��[����㶃�>D����/e|�D@��S�\�,S}��[�9\��
|
1
|
+
ra��TNݚ�Fѫ����T$�>+"�>..��S�J�d�tJ0/�Ȝ&N�gޡ"���&T&���.�ph�b���?Y�W;.)����Ns`ҟ�б�43�6��������P��J��8�{��`��e9?��e�GkFk9��S����(��D��1J��l"-��G*�����]\���s4���L�����x����w�~�P5�G��Q����S��`q�x��=C���ln�j�%�R3ߑ[a
|