rom-rails 0.5.0 → 0.6.0.beta1
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
- data/.travis.yml +1 -1
- data/Gemfile +5 -1
- data/lib/rom/rails/model/form/class_interface.rb +3 -2
- data/lib/rom/rails/model/form.rb +2 -1
- data/lib/rom/rails/railtie.rb +16 -44
- data/lib/rom/rails/tasks/db.rake +1 -1
- data/lib/rom/rails/version.rb +1 -1
- data/lib/rom-rails.rb +6 -0
- data/rom-rails.gemspec +2 -1
- data/spec/dummy/app/commands/{tasks.rb → create_task.rb} +0 -0
- data/spec/dummy/app/commands/{users.rb → delete_user.rb} +0 -0
- data/spec/dummy/app/mappers/{tasks.rb → task_mapper.rb} +0 -0
- data/spec/dummy/app/mappers/{users.rb → user_mapper.rb} +0 -0
- data/spec/integration/form_with_injected_commands_spec.rb +1 -1
- data/spec/spec_helper.rb +2 -2
- metadata +29 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 41ac1f74ab5ab20ea7e11679f5d2f5ae7a716c65
|
4
|
+
data.tar.gz: e7bbdb7acc8c063724d2dc276f5ac5790c00c92f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 052691ccf1dd02f4c058699c1dc3ba05d405071caf8618d1305e29eb390088e5f631872ead19a438156c9c93133125e97690d8963ce8b75a9829eef628e01201
|
7
|
+
data.tar.gz: d384a93fce3155ef8f6bad2196add0658195eb53dd63c833c1e1494cea5a908b7a8de136805a9e5f00b3ecf9a418443d72d0a695a8efbb55e2dd54a8784ed01b
|
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
@@ -2,7 +2,7 @@ source 'https://rubygems.org'
|
|
2
2
|
|
3
3
|
gemspec
|
4
4
|
|
5
|
-
RAILS_VERSION = '4.2.
|
5
|
+
RAILS_VERSION = '4.2.4'
|
6
6
|
|
7
7
|
%w(railties actionview actionpack activerecord).each do |name|
|
8
8
|
gem name, RAILS_VERSION
|
@@ -19,6 +19,10 @@ group :test do
|
|
19
19
|
gem 'rack-test'
|
20
20
|
gem 'rom', github: 'rom-rb/rom', branch: 'master'
|
21
21
|
gem 'rom-sql', github: 'rom-rb/rom-sql', branch: 'master'
|
22
|
+
gem 'rom-support', github: 'rom-rb/rom-support', branch: 'master'
|
23
|
+
gem 'rom-mapper', github: 'rom-rb/rom-mapper', branch: 'master'
|
24
|
+
gem 'rom-model', github: 'rom-rb/rom-model', branch: 'master'
|
25
|
+
gem 'transproc', github: 'solnic/transproc', branch: 'master'
|
22
26
|
gem 'rspec-rails', '~> 3.1'
|
23
27
|
gem 'codeclimate-test-reporter', require: nil
|
24
28
|
gem 'database_cleaner'
|
@@ -425,7 +425,7 @@ module ROM
|
|
425
425
|
#
|
426
426
|
# @api private
|
427
427
|
def build_command(name, rel_name)
|
428
|
-
klass = Command.build_class(name, rel_name, adapter: adapter)
|
428
|
+
klass = ConfigurationDSL::Command.build_class(name, rel_name, adapter: adapter)
|
429
429
|
|
430
430
|
klass.result :one
|
431
431
|
klass.validator @validator
|
@@ -434,10 +434,11 @@ module ROM
|
|
434
434
|
gateway = rom.gateways[relation.gateway]
|
435
435
|
gateway.extend_command_class(klass, relation.dataset)
|
436
436
|
|
437
|
+
klass.send(:include, Command.relation_methods_mod(relation.class))
|
438
|
+
|
437
439
|
klass.build(relation)
|
438
440
|
end
|
439
441
|
|
440
|
-
|
441
442
|
# Silently update a constant, replacing any existing definition without
|
442
443
|
# warning
|
443
444
|
#
|
data/lib/rom/rails/model/form.rb
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'dry-equalizer'
|
1
2
|
require 'rom-model'
|
2
3
|
|
3
4
|
require 'rom/rails/model/form/class_interface'
|
@@ -46,7 +47,7 @@ module ROM
|
|
46
47
|
#
|
47
48
|
# @api public
|
48
49
|
class Form
|
49
|
-
include Equalizer
|
50
|
+
include Dry::Equalizer(:params, :model, :result)
|
50
51
|
|
51
52
|
extend ROM::ClassMacros
|
52
53
|
extend Form::ClassInterface
|
data/lib/rom/rails/railtie.rb
CHANGED
@@ -17,7 +17,6 @@ module ROM
|
|
17
17
|
# Make `ROM::Rails::Configuration` instance available to the user via
|
18
18
|
# `Rails.application.config` before other initializers run.
|
19
19
|
config.before_initialize do |_app|
|
20
|
-
ROM.use :auto_registration
|
21
20
|
config.rom = Configuration.new
|
22
21
|
end
|
23
22
|
|
@@ -41,7 +40,7 @@ module ROM
|
|
41
40
|
|
42
41
|
# Reload ROM-related application code on each request.
|
43
42
|
config.to_prepare do |_config|
|
44
|
-
Railtie.
|
43
|
+
ROM.env = Railtie.create_container
|
45
44
|
end
|
46
45
|
|
47
46
|
# Behaves like `Railtie#configure` if the given block does not take any
|
@@ -63,45 +62,26 @@ module ROM
|
|
63
62
|
end
|
64
63
|
end
|
65
64
|
|
66
|
-
|
67
|
-
|
68
|
-
raise(
|
69
|
-
MissingGatewayConfigError,
|
70
|
-
"seems like you didn't configure any gateways"
|
71
|
-
) unless gateways.any?
|
72
|
-
|
73
|
-
ROM.setup(gateways)
|
65
|
+
def create_configuration
|
66
|
+
ROM::Configuration.new(gateways)
|
74
67
|
end
|
75
68
|
|
76
69
|
# @api private
|
77
|
-
def
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
else
|
82
|
-
prepare_gateways
|
83
|
-
end
|
84
|
-
|
85
|
-
setup(gateways)
|
70
|
+
def create_container
|
71
|
+
configuration = create_configuration
|
72
|
+
configuration.auto_registration(root.join("app"), namespace: false)
|
73
|
+
ROM.container(configuration)
|
86
74
|
end
|
87
75
|
|
88
76
|
# @api private
|
89
|
-
def
|
90
|
-
|
91
|
-
load_components
|
92
|
-
ROM.finalize
|
93
|
-
end
|
77
|
+
def gateways
|
78
|
+
config.rom.gateways[:default] ||= infer_default_gateway if active_record?
|
94
79
|
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
ROM.gateways.each_key(&:disconnect)
|
100
|
-
end
|
80
|
+
raise(
|
81
|
+
MissingGatewayConfigError,
|
82
|
+
"seems like you didn't configure any gateways"
|
83
|
+
) unless config.rom.gateways.any?
|
101
84
|
|
102
|
-
# @api private
|
103
|
-
def prepare_gateways
|
104
|
-
config.rom.gateways[:default] ||= infer_default_gateway if active_record?
|
105
85
|
config.rom.gateways
|
106
86
|
end
|
107
87
|
|
@@ -119,15 +99,8 @@ module ROM
|
|
119
99
|
end
|
120
100
|
|
121
101
|
# @api private
|
122
|
-
def
|
123
|
-
|
124
|
-
end
|
125
|
-
|
126
|
-
# @api private
|
127
|
-
def load_files(type)
|
128
|
-
Dir[root.join("app/#{type}/**/*.rb")].each do |path|
|
129
|
-
require_dependency(path)
|
130
|
-
end
|
102
|
+
def disconnect
|
103
|
+
container.disconnect unless container.nil?
|
131
104
|
end
|
132
105
|
|
133
106
|
# @api private
|
@@ -135,8 +108,7 @@ module ROM
|
|
135
108
|
::Rails.root
|
136
109
|
end
|
137
110
|
|
138
|
-
|
139
|
-
def env
|
111
|
+
def container
|
140
112
|
ROM.env
|
141
113
|
end
|
142
114
|
|
data/lib/rom/rails/tasks/db.rake
CHANGED
data/lib/rom/rails/version.rb
CHANGED
data/lib/rom-rails.rb
CHANGED
data/rom-rails.gemspec
CHANGED
@@ -17,8 +17,9 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
18
18
|
spec.require_paths = ["lib"]
|
19
19
|
|
20
|
-
spec.add_runtime_dependency 'rom', '~> 0.
|
20
|
+
spec.add_runtime_dependency 'rom', '~> 1.0.0.beta1'
|
21
21
|
spec.add_runtime_dependency 'rom-model', '~> 0.1', '>= 0.1.1'
|
22
|
+
spec.add_runtime_dependency 'dry-equalizer', '~> 0.2'
|
22
23
|
spec.add_runtime_dependency 'addressable', '~> 2.3'
|
23
24
|
spec.add_runtime_dependency 'charlatan', '~> 0.1'
|
24
25
|
spec.add_runtime_dependency 'virtus', '~> 1.0', '>= 1.0.5'
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/spec/spec_helper.rb
CHANGED
@@ -24,14 +24,14 @@ RSpec.configure do |config|
|
|
24
24
|
config.order = "random"
|
25
25
|
|
26
26
|
config.before(:suite) do
|
27
|
-
conn =
|
27
|
+
conn = rom.gateways[:default].connection
|
28
28
|
|
29
29
|
DatabaseCleaner[:sequel, connection: conn].strategy = :transaction
|
30
30
|
DatabaseCleaner[:sequel, connection: conn].clean_with(:truncation)
|
31
31
|
end
|
32
32
|
|
33
33
|
config.around(:each) do |example|
|
34
|
-
conn =
|
34
|
+
conn = rom.gateways[:default].connection
|
35
35
|
|
36
36
|
DatabaseCleaner[:sequel, connection: conn].cleaning { example.run }
|
37
37
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rom-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.6.0.beta1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Piotr Solnica
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-11-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rom
|
@@ -16,20 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
20
|
-
- - ">="
|
21
|
-
- !ruby/object:Gem::Version
|
22
|
-
version: 0.9.0
|
19
|
+
version: 1.0.0.beta1
|
23
20
|
type: :runtime
|
24
21
|
prerelease: false
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
26
23
|
requirements:
|
27
24
|
- - "~>"
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
30
|
-
- - ">="
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: 0.9.0
|
26
|
+
version: 1.0.0.beta1
|
33
27
|
- !ruby/object:Gem::Dependency
|
34
28
|
name: rom-model
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -50,6 +44,20 @@ dependencies:
|
|
50
44
|
- - ">="
|
51
45
|
- !ruby/object:Gem::Version
|
52
46
|
version: 0.1.1
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: dry-equalizer
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - "~>"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0.2'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - "~>"
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '0.2'
|
53
61
|
- !ruby/object:Gem::Dependency
|
54
62
|
name: addressable
|
55
63
|
requirement: !ruby/object:Gem::Requirement
|
@@ -204,8 +212,8 @@ files:
|
|
204
212
|
- spec/dummy/.rspec
|
205
213
|
- spec/dummy/README.rdoc
|
206
214
|
- spec/dummy/Rakefile
|
207
|
-
- spec/dummy/app/commands/
|
208
|
-
- spec/dummy/app/commands/
|
215
|
+
- spec/dummy/app/commands/create_task.rb
|
216
|
+
- spec/dummy/app/commands/delete_user.rb
|
209
217
|
- spec/dummy/app/controllers/application_controller.rb
|
210
218
|
- spec/dummy/app/controllers/users_controller.rb
|
211
219
|
- spec/dummy/app/forms/new_user_form.rb
|
@@ -213,8 +221,8 @@ files:
|
|
213
221
|
- spec/dummy/app/forms/user_form.rb
|
214
222
|
- spec/dummy/app/helpers/application_helper.rb
|
215
223
|
- spec/dummy/app/mailers/.keep
|
216
|
-
- spec/dummy/app/mappers/
|
217
|
-
- spec/dummy/app/mappers/
|
224
|
+
- spec/dummy/app/mappers/task_mapper.rb
|
225
|
+
- spec/dummy/app/mappers/user_mapper.rb
|
218
226
|
- spec/dummy/app/models/.keep
|
219
227
|
- spec/dummy/app/models/user.rb
|
220
228
|
- spec/dummy/app/relations/dummy_relation.rb
|
@@ -289,9 +297,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
289
297
|
version: '0'
|
290
298
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
291
299
|
requirements:
|
292
|
-
- - "
|
300
|
+
- - ">"
|
293
301
|
- !ruby/object:Gem::Version
|
294
|
-
version:
|
302
|
+
version: 1.3.1
|
295
303
|
requirements: []
|
296
304
|
rubyforge_project:
|
297
305
|
rubygems_version: 2.4.5
|
@@ -302,8 +310,8 @@ test_files:
|
|
302
310
|
- spec/dummy/.rspec
|
303
311
|
- spec/dummy/README.rdoc
|
304
312
|
- spec/dummy/Rakefile
|
305
|
-
- spec/dummy/app/commands/
|
306
|
-
- spec/dummy/app/commands/
|
313
|
+
- spec/dummy/app/commands/create_task.rb
|
314
|
+
- spec/dummy/app/commands/delete_user.rb
|
307
315
|
- spec/dummy/app/controllers/application_controller.rb
|
308
316
|
- spec/dummy/app/controllers/users_controller.rb
|
309
317
|
- spec/dummy/app/forms/new_user_form.rb
|
@@ -311,8 +319,8 @@ test_files:
|
|
311
319
|
- spec/dummy/app/forms/user_form.rb
|
312
320
|
- spec/dummy/app/helpers/application_helper.rb
|
313
321
|
- spec/dummy/app/mailers/.keep
|
314
|
-
- spec/dummy/app/mappers/
|
315
|
-
- spec/dummy/app/mappers/
|
322
|
+
- spec/dummy/app/mappers/task_mapper.rb
|
323
|
+
- spec/dummy/app/mappers/user_mapper.rb
|
316
324
|
- spec/dummy/app/models/.keep
|
317
325
|
- spec/dummy/app/models/user.rb
|
318
326
|
- spec/dummy/app/relations/dummy_relation.rb
|
@@ -372,3 +380,4 @@ test_files:
|
|
372
380
|
- spec/lib/generators/relation_generator_spec.rb
|
373
381
|
- spec/spec_helper.rb
|
374
382
|
- spec/unit/form_spec.rb
|
383
|
+
has_rdoc:
|