rasti-app 7.0.0 → 8.0.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
- SHA1:
3
- metadata.gz: 1f5e7d237705fb022c18bf1b05f5ffb4d340973c
4
- data.tar.gz: f7f735f1a1993da764987479181cf3c3bea52763
2
+ SHA256:
3
+ metadata.gz: 7972c3bb037aef600f00035632bb6c08743a019dd6f37d38d5803e5ab7e70c44
4
+ data.tar.gz: 22b0c8e2eb9e7dc2adcea7e24116608fb09e7a05f7dc9272e1804994c8e2c375
5
5
  SHA512:
6
- metadata.gz: ddc1634232efaf679ed4f7e9feb87320d09d5d696dd7f41b6f6ba4cda3ce2271650bcbd487cb754c2d8ff4a99ca0cd3bba004d99239e92e04c47fc4d4dc15bfb
7
- data.tar.gz: b50499f3b04aec69f0aed9044dea0885aadca7650e4195166689be0776d9cd13a2e6f91a8bcbc2a76eb3cafbd729aa220e688169aaabb334344dbc962a171b2b
6
+ metadata.gz: 33c5bce4648dc13e03a9645538991a0779e8c87cd799e8c219fb0440987b1b26bf6cbb4a70a29f29321fec13e79ebba73c08ddb23b05a5ea3144aca0f600d8bf
7
+ data.tar.gz: 6c751407cdf3730478f74bc790966d4f8aabc1a11ef41fa5f398bc95b8222176c8fdf8f75929a19deae090ba5e09c6730c0be67587d130553b718d1d821d801b
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.0'
3
+ VERSION = '8.0.0'
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'
22
+ spec.add_runtime_dependency 'asynchronic', '~> 3.0', '>= 3.0.2'
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.0
4
+ version: 8.0.0
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-06-24 00:00:00.000000000 Z
11
+ date: 2021-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: inflecto
@@ -31,6 +31,9 @@ dependencies:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '3.0'
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 3.0.2
34
37
  type: :runtime
35
38
  prerelease: false
36
39
  version_requirements: !ruby/object:Gem::Requirement
@@ -38,6 +41,9 @@ dependencies:
38
41
  - - "~>"
39
42
  - !ruby/object:Gem::Version
40
43
  version: '3.0'
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 3.0.2
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: multi_require
43
49
  requirement: !ruby/object:Gem::Requirement
@@ -86,28 +92,14 @@ dependencies:
86
92
  requirements:
87
93
  - - "~>"
88
94
  - !ruby/object:Gem::Version
89
- version: '3.0'
95
+ version: '4.0'
90
96
  type: :runtime
91
97
  prerelease: false
92
98
  version_requirements: !ruby/object:Gem::Requirement
93
99
  requirements:
94
100
  - - "~>"
95
101
  - !ruby/object:Gem::Version
96
- version: '3.0'
97
- - !ruby/object:Gem::Dependency
98
- name: bundler
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '1.12'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '1.12'
102
+ version: '4.0'
111
103
  - !ruby/object:Gem::Dependency
112
104
  name: rake
113
105
  requirement: !ruby/object:Gem::Requirement
@@ -261,8 +253,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
261
253
  - !ruby/object:Gem::Version
262
254
  version: '0'
263
255
  requirements: []
264
- rubyforge_project:
265
- rubygems_version: 2.6.8
256
+ rubygems_version: 3.0.6
266
257
  signing_key:
267
258
  specification_version: 4
268
259
  summary: ''