rasti-app 7.0.1 → 8.0.1

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
- SHA1:
3
- metadata.gz: 142dc067d4a36842117ab120c8c562ff25b4cae8
4
- data.tar.gz: 1eac819553b800ba8fba24061e071d828c76b45e
2
+ SHA256:
3
+ metadata.gz: c42c07b7fa78222a470a0333706bbbebd3d34d5bad6f192d5279820469f0895d
4
+ data.tar.gz: dd85a56fa4fc1fd531131ab82fa1213ede2c868605f361004bf01dfc0b8220f6
5
5
  SHA512:
6
- metadata.gz: 432d5d28ac9496a0c02d9e68c99331879b0eb4ef97d7d3d2c56fa71ff3757d8209927ba98f4bfbabdfe5dbe066e02430c70dfdc14966bf619f7cd942853a4cd2
7
- data.tar.gz: ceaa848dd8eb180e6fa0c75f27244bce1f96b10086a162571ddabdfc3cdc85017cf9b2094e5e78ce4f4609db9f12932e2c2ecae3cf53a3011121d6dac157b265
6
+ metadata.gz: ec32ec4361ee507ada6a7ce36ee4cf7ec0edb7d161d0718e6950fb7f7a9041a5afc7d29a8c094d203d5ff8d4c37f251d89cb459b620764845cd8375f3cc9f0ef
7
+ data.tar.gz: d1429899556f7041b617380a8870d62d3bfce8e5d0e567e1ae001c6f2663e3d30472cef1413382e7de9984364611ba5b09f6f12f9198f7bbd9ba6a926ce1adb2
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-2.4.0
1
+ ruby-2.5.7
data/.travis.yml CHANGED
@@ -1,14 +1,15 @@
1
1
  language: ruby
2
2
 
3
3
  rvm:
4
- - 1.9.3
5
4
  - 2.0
6
5
  - 2.1
7
6
  - 2.2
8
- - 2.3.0
9
- - 2.4.0
10
- - jruby-1.7.25
11
- - jruby-9.1.7.0
7
+ - 2.3
8
+ - 2.4
9
+ - 2.5
10
+ - 2.6
11
+ - 2.7
12
+ - jruby-9.2.9.0
12
13
  - ruby-head
13
14
  - jruby-head
14
15
 
@@ -16,7 +17,4 @@ matrix:
16
17
  fast_finish: true
17
18
  allow_failures:
18
19
  - rvm: ruby-head
19
- - rvm: jruby-head
20
-
21
- before_install:
22
- - gem install bundler
20
+ - rvm: jruby-head
data/lib/rasti/app.rb CHANGED
@@ -22,7 +22,7 @@ module Rasti
22
22
  def_delegators :facade, :interactions,
23
23
  :synchronic_interactions,
24
24
  :asynchronic_interactions,
25
- :permissions,
25
+ :permissions,
26
26
  :valid_permission?
27
27
 
28
28
  attr_reader :facade
@@ -64,22 +64,18 @@ module Rasti
64
64
  form = self.class.facade.build_form name, params
65
65
  authorize! permission, form
66
66
  result = self.class.facade.call name, environment, session, form
67
- after_call name, form.attributes, result
67
+ after_call name, form.to_h, result
68
68
 
69
69
  result
70
70
  end
71
71
 
72
72
  def enqueue(name, permission, params={})
73
- options = {
74
- queue: params.delete(:queue),
75
- job_id: params.delete(:job_id),
76
- job_wrapper: params.delete(:job_wrapper)
77
- }
78
-
79
- form = self.class.facade.build_form name, params
73
+ options, attributes = Utils.split_hash params, [:queue, :job_id, :job_wrapper]
74
+
75
+ form = self.class.facade.build_form name, attributes
80
76
  authorize! permission, form
81
77
  result = self.class.facade.enqueue name, session, form, options
82
- after_call name, form.attributes, result
78
+ after_call name, form.to_h, result
83
79
 
84
80
  result
85
81
  end
@@ -13,13 +13,15 @@ module Rasti
13
13
  end
14
14
 
15
15
  def enqueue(interaction, params)
16
- job.send :async, Job, queue: params.delete(:queue) || Asynchronic.default_queue,
17
- alias: params.delete(:alias) || interaction,
18
- dependency: params.delete(:dependency),
19
- dependencies: params.delete(:dependencies),
16
+ options, attributes = Utils.split_hash params, [:queue, :alias, :dependency, :dependencies]
17
+
18
+ job.send :async, Job, queue: options[:queue] || Asynchronic.default_queue,
19
+ alias: options[:alias] || interaction,
20
+ dependency: options[:dependency],
21
+ dependencies: options[:dependencies],
20
22
  interaction: interaction,
21
23
  session: session,
22
- params: params
24
+ params: attributes
23
25
  end
24
26
 
25
27
  def result_of(reference)
@@ -35,7 +35,7 @@ module Rasti
35
35
  end
36
36
 
37
37
  def form_attributes
38
- interaction.const_defined?(:Form) ? interaction.const_get(:Form).attributes : {}
38
+ interaction.const_defined?(:Form) ? interaction.const_get(:Form).attributes : []
39
39
  end
40
40
 
41
41
  end
@@ -92,7 +92,7 @@ module Rasti
92
92
  alias: interaction,
93
93
  interaction: interaction,
94
94
  session: session,
95
- params: form.attributes
95
+ params: form.to_h
96
96
  end
97
97
 
98
98
  def synchronic_interactions
@@ -125,4 +125,4 @@ module Rasti
125
125
 
126
126
  end
127
127
  end
128
- end
128
+ end
@@ -9,6 +9,7 @@ module Rasti
9
9
 
10
10
  define_method name do
11
11
  cache[name] ||= begin
12
+ raise "Undefined settings for service: #{name}" unless settings.key? name
12
13
  adapter_class = Consty.get(settings[name][:adapter], self.class.services[name])
13
14
  self.class.services[name].new adapter_class.new(environment, settings[name][:options])
14
15
  end
@@ -3,18 +3,18 @@ module Rasti
3
3
  class Settings
4
4
  class << self
5
5
 
6
- def load(environment)
7
- load_file File.join(Dir.pwd, "#{environment}.yml")
6
+ def load(environment, options={})
7
+ load_file File.join(Dir.pwd, "#{environment}.yml"), options
8
8
  end
9
9
 
10
- def load_file(filename)
11
- Hash::Accessible.new(evaluate(File.read(filename))).deep_freeze
10
+ def load_file(filename, options={})
11
+ Hash::Accessible.new(evaluate(File.read(filename), options)).deep_freeze
12
12
  end
13
13
 
14
14
  private
15
15
 
16
- def evaluate(yml)
17
- YAML.load ERB.new(yml).result
16
+ def evaluate(yml, options={})
17
+ YAML.load ERB.new(yml).result_with_hash(options)
18
18
  end
19
19
 
20
20
  end
@@ -21,6 +21,10 @@ module Rasti
21
21
  namespace.empty? ? nil : Object.const_get(namespace)
22
22
  end
23
23
 
24
+ def split_hash(hash, keys)
25
+ [hash.slice(*keys), hash.slice(*(hash.keys - keys))]
26
+ end
27
+
24
28
  end
25
29
  end
26
30
  end
@@ -1,5 +1,5 @@
1
1
  module Rasti
2
2
  class App
3
- VERSION = '7.0.1'
3
+ VERSION = '8.0.1'
4
4
  end
5
5
  end
data/rasti-app.gemspec CHANGED
@@ -19,13 +19,12 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ['lib']
20
20
 
21
21
  spec.add_runtime_dependency 'inflecto', '~> 0.0'
22
- spec.add_runtime_dependency 'asynchronic', '~> 3.0', '>= 3.0.1'
22
+ spec.add_runtime_dependency 'asynchronic', '~> 3.0', '>= 3.0.3'
23
23
  spec.add_runtime_dependency 'multi_require', '~> 1.0'
24
24
  spec.add_runtime_dependency 'hash_ext', '~> 0.5'
25
25
  spec.add_runtime_dependency 'consty', '~> 1.0'
26
- spec.add_runtime_dependency 'rasti-form', '~> 3.0'
26
+ spec.add_runtime_dependency 'rasti-form', '~> 4.0'
27
27
 
28
- spec.add_development_dependency 'bundler', '~> 1.12'
29
28
  spec.add_development_dependency 'rake', '~> 11.0'
30
29
  spec.add_development_dependency 'minitest', '~> 5.0'
31
30
  spec.add_development_dependency 'minitest-colorin', '~> 0.1'
@@ -33,10 +32,4 @@ Gem::Specification.new do |spec|
33
32
  spec.add_development_dependency 'simplecov', '~> 0.12'
34
33
  spec.add_development_dependency 'coveralls', '~> 0.8'
35
34
  spec.add_development_dependency 'pry-nav', '~> 0.2'
36
-
37
- if RUBY_VERSION < '2'
38
- spec.add_development_dependency 'term-ansicolor', '~> 1.3.0'
39
- spec.add_development_dependency 'tins', '~> 1.6.0'
40
- spec.add_development_dependency 'json', '~> 1.8'
41
- end
42
35
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rasti-app
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.1
4
+ version: 8.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gabriel Naiman
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-04 00:00:00.000000000 Z
11
+ date: 2021-03-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: inflecto
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: '3.0'
34
34
  - - ">="
35
35
  - !ruby/object:Gem::Version
36
- version: 3.0.1
36
+ version: 3.0.3
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '3.0'
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
- version: 3.0.1
46
+ version: 3.0.3
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: multi_require
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -92,28 +92,14 @@ dependencies:
92
92
  requirements:
93
93
  - - "~>"
94
94
  - !ruby/object:Gem::Version
95
- version: '3.0'
95
+ version: '4.0'
96
96
  type: :runtime
97
97
  prerelease: false
98
98
  version_requirements: !ruby/object:Gem::Requirement
99
99
  requirements:
100
100
  - - "~>"
101
101
  - !ruby/object:Gem::Version
102
- version: '3.0'
103
- - !ruby/object:Gem::Dependency
104
- name: bundler
105
- requirement: !ruby/object:Gem::Requirement
106
- requirements:
107
- - - "~>"
108
- - !ruby/object:Gem::Version
109
- version: '1.12'
110
- type: :development
111
- prerelease: false
112
- version_requirements: !ruby/object:Gem::Requirement
113
- requirements:
114
- - - "~>"
115
- - !ruby/object:Gem::Version
116
- version: '1.12'
102
+ version: '4.0'
117
103
  - !ruby/object:Gem::Dependency
118
104
  name: rake
119
105
  requirement: !ruby/object:Gem::Requirement
@@ -267,8 +253,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
267
253
  - !ruby/object:Gem::Version
268
254
  version: '0'
269
255
  requirements: []
270
- rubyforge_project:
271
- rubygems_version: 2.6.8
256
+ rubygems_version: 3.0.6
272
257
  signing_key:
273
258
  specification_version: 4
274
259
  summary: ''