rails_ops 1.1.20 → 1.1.21

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
2
  SHA256:
3
- metadata.gz: d65a63f28c458711e43e8059f0464af8548434b176ceeec24029bfcd062fe8dd
4
- data.tar.gz: 94df1eee33cd5bfb6ee073284f3dc13eb2a8715d7db8cd832f4c4230427ca140
3
+ metadata.gz: acc6d1b2eff65cad3a4d84cdd9945abf564ca261c7f488bdf6c98ddf7c616dbb
4
+ data.tar.gz: 48831116f0b9a0430a081ed850920b0200d0333e82f9d2bd8429f5286d9fcb29
5
5
  SHA512:
6
- metadata.gz: 4c2731d7474ab992b44ddf9b4c5c3d5930528f99d4b48c17af5e314e4900e90c7c3b6ecd2b8374248c06305da3b0e23087de12091c74ab18d98fc83df3484386
7
- data.tar.gz: 242a67362fe2163f7c9a6645615db3b247d0d20c62ac6c6553820df4a68b70bd5ec29bd3dcbd45a30dc50ae013cb19d4c04cb95478b476b63a5327f6a60c6e1b
6
+ metadata.gz: dcdf9bff36dc400cd846cee0cd50b8d991104f437e42d78dfd170af13ec2cf45923a14bcfbf75e063a122cb73a9601f51ea9ee04d5c80e51903e74c6fa4dd907
7
+ data.tar.gz: 4dd2ea06610bb5db48c53a504937caa060c51ad425408cc65ca26582d87b74c831af69fea0a29c1dcd18ab5ca701a5463f08a7783ba078f0f8891a0aa0fc12dc
data/.travis.yml CHANGED
@@ -1,6 +1,10 @@
1
1
  language: ruby
2
2
  rvm:
3
3
  - 2.3.0
4
+ - 2.5.1
5
+ - 2.6.2
6
+ - 2.7.1
7
+ - 3.0.0
4
8
  script:
5
9
  - bundle install
6
10
  - bundle exec rake test
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.1.21 (2021-06-23)
4
+
5
+ * Fix using model operations in conjunction with Single Table Inheritance (STI)
6
+
3
7
  ## 1.1.20 (2021-02-18)
4
8
 
5
9
  * Fix warnings with Ruby 2.7
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.20
1
+ 1.1.21
@@ -2,7 +2,7 @@ require 'cancan'
2
2
 
3
3
  module RailsOps::AuthorizationBackend
4
4
  class CanCanCan < Abstract
5
- EXCEPTION_CLASS = 'CanCan::AccessDenied'
5
+ EXCEPTION_CLASS = 'CanCan::AccessDenied'.freeze
6
6
 
7
7
  def initialize
8
8
  unless defined?(CanCanCan)
@@ -13,7 +13,6 @@ module RailsOps::Mixins::Model::Nesting
13
13
  end
14
14
  end
15
15
 
16
-
17
16
  module ClassMethods
18
17
  def nest_model_op(attribute, klass, lookup_via_id_on_update: true, allow_id: false, &params_block)
19
18
  # ---------------------------------------------------------------
@@ -5,12 +5,21 @@ module RailsOps
5
5
 
6
6
  included do
7
7
  class_attribute :virtual_model_name
8
+ class_attribute :virtual_sti_name
8
9
  end
9
10
 
10
11
  module ClassMethods
11
12
  def model_name
12
13
  virtual_model_name || super
13
14
  end
15
+
16
+ def sti_name
17
+ virtual_sti_name || super
18
+ end
19
+
20
+ def find_sti_class(_type_name)
21
+ self
22
+ end
14
23
  end
15
24
  end
16
25
  end
@@ -69,6 +69,11 @@ class RailsOps::Operation::Model < RailsOps::Operation
69
69
  _model_class.virtual_model_name = ActiveModel::Name.new(_model_class, nil, name.to_s)
70
70
  end
71
71
 
72
+ # Set virtual STI name if given.
73
+ if model_class && model_class.name
74
+ _model_class.virtual_sti_name = model_class.name
75
+ end
76
+
72
77
  # ---------------------------------------------------------------
73
78
  # We just use the given model class without any adaptions
74
79
  # ---------------------------------------------------------------
data/rails_ops.gemspec CHANGED
@@ -1,33 +1,43 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: rails_ops 1.1.20 ruby lib
2
+ # stub: rails_ops 1.1.21 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "rails_ops".freeze
6
- s.version = "1.1.20"
6
+ s.version = "1.1.21"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib".freeze]
10
10
  s.authors = ["Sitrox".freeze]
11
- s.date = "2021-02-18"
11
+ s.date = "2021-06-23"
12
12
  s.files = [".gitignore".freeze, ".releaser_config".freeze, ".rubocop.yml".freeze, ".travis.yml".freeze, "CHANGELOG.md".freeze, "Gemfile".freeze, "LICENSE".freeze, "README.md".freeze, "Rakefile".freeze, "VERSION".freeze, "lib/rails_ops.rb".freeze, "lib/rails_ops/authorization_backend/abstract.rb".freeze, "lib/rails_ops/authorization_backend/can_can_can.rb".freeze, "lib/rails_ops/configuration.rb".freeze, "lib/rails_ops/context.rb".freeze, "lib/rails_ops/controller_mixin.rb".freeze, "lib/rails_ops/exceptions.rb".freeze, "lib/rails_ops/hooked_job.rb".freeze, "lib/rails_ops/hookup.rb".freeze, "lib/rails_ops/hookup/dsl.rb".freeze, "lib/rails_ops/hookup/dsl_validator.rb".freeze, "lib/rails_ops/hookup/hook.rb".freeze, "lib/rails_ops/log_subscriber.rb".freeze, "lib/rails_ops/mixins.rb".freeze, "lib/rails_ops/mixins/authorization.rb".freeze, "lib/rails_ops/mixins/log_settings.rb".freeze, "lib/rails_ops/mixins/model.rb".freeze, "lib/rails_ops/mixins/model/authorization.rb".freeze, "lib/rails_ops/mixins/model/nesting.rb".freeze, "lib/rails_ops/mixins/param_authorization.rb".freeze, "lib/rails_ops/mixins/policies.rb".freeze, "lib/rails_ops/mixins/require_context.rb".freeze, "lib/rails_ops/mixins/routes.rb".freeze, "lib/rails_ops/mixins/schema_validation.rb".freeze, "lib/rails_ops/mixins/sub_ops.rb".freeze, "lib/rails_ops/model_casting.rb".freeze, "lib/rails_ops/model_mixins.rb".freeze, "lib/rails_ops/model_mixins/ar_extension.rb".freeze, "lib/rails_ops/model_mixins/parent_op.rb".freeze, "lib/rails_ops/model_mixins/virtual_attributes.rb".freeze, "lib/rails_ops/model_mixins/virtual_attributes/virtual_column_wrapper.rb".freeze, "lib/rails_ops/model_mixins/virtual_has_one.rb".freeze, "lib/rails_ops/model_mixins/virtual_model_name.rb".freeze, "lib/rails_ops/operation.rb".freeze, "lib/rails_ops/operation/model.rb".freeze, "lib/rails_ops/operation/model/create.rb".freeze, "lib/rails_ops/operation/model/destroy.rb".freeze, "lib/rails_ops/operation/model/load.rb".freeze, "lib/rails_ops/operation/model/update.rb".freeze, "lib/rails_ops/patches/active_type_patch.rb".freeze, "lib/rails_ops/profiler.rb".freeze, "lib/rails_ops/profiler/node.rb".freeze, "lib/rails_ops/railtie.rb".freeze, "lib/rails_ops/scoped_env.rb".freeze, "lib/rails_ops/virtual_model.rb".freeze, "rails_ops.gemspec".freeze, "test/db/models.rb".freeze, "test/db/schema.rb".freeze, "test/dummy/Rakefile".freeze, "test/dummy/app/assets/config/manifest.js".freeze, "test/dummy/app/assets/images/.keep".freeze, "test/dummy/app/assets/javascripts/application.js".freeze, "test/dummy/app/assets/javascripts/cable.js".freeze, "test/dummy/app/assets/javascripts/channels/.keep".freeze, "test/dummy/app/assets/stylesheets/application.css".freeze, "test/dummy/app/channels/application_cable/channel.rb".freeze, "test/dummy/app/channels/application_cable/connection.rb".freeze, "test/dummy/app/controllers/application_controller.rb".freeze, "test/dummy/app/controllers/concerns/.keep".freeze, "test/dummy/app/helpers/application_helper.rb".freeze, "test/dummy/app/jobs/application_job.rb".freeze, "test/dummy/app/mailers/application_mailer.rb".freeze, "test/dummy/app/models/application_record.rb".freeze, "test/dummy/app/models/concerns/.keep".freeze, "test/dummy/app/models/group.rb".freeze, "test/dummy/app/views/layouts/application.html.erb".freeze, "test/dummy/app/views/layouts/mailer.html.erb".freeze, "test/dummy/app/views/layouts/mailer.text.erb".freeze, "test/dummy/bin/bundle".freeze, "test/dummy/bin/rails".freeze, "test/dummy/bin/rake".freeze, "test/dummy/bin/setup".freeze, "test/dummy/bin/update".freeze, "test/dummy/bin/yarn".freeze, "test/dummy/config.ru".freeze, "test/dummy/config/application.rb".freeze, "test/dummy/config/boot.rb".freeze, "test/dummy/config/cable.yml".freeze, "test/dummy/config/database.yml".freeze, "test/dummy/config/environment.rb".freeze, "test/dummy/config/environments/development.rb".freeze, "test/dummy/config/environments/production.rb".freeze, "test/dummy/config/environments/test.rb".freeze, "test/dummy/config/initializers/application_controller_renderer.rb".freeze, "test/dummy/config/initializers/assets.rb".freeze, "test/dummy/config/initializers/backtrace_silencers.rb".freeze, "test/dummy/config/initializers/cookies_serializer.rb".freeze, "test/dummy/config/initializers/filter_parameter_logging.rb".freeze, "test/dummy/config/initializers/inflections.rb".freeze, "test/dummy/config/initializers/mime_types.rb".freeze, "test/dummy/config/initializers/rails_ops.rb".freeze, "test/dummy/config/initializers/wrap_parameters.rb".freeze, "test/dummy/config/locales/en.yml".freeze, "test/dummy/config/puma.rb".freeze, "test/dummy/config/routes.rb".freeze, "test/dummy/config/secrets.yml".freeze, "test/dummy/config/spring.rb".freeze, "test/dummy/db/schema.rb".freeze, "test/dummy/lib/assets/.keep".freeze, "test/dummy/log/.keep".freeze, "test/dummy/package.json".freeze, "test/dummy/public/404.html".freeze, "test/dummy/public/422.html".freeze, "test/dummy/public/500.html".freeze, "test/dummy/public/apple-touch-icon-precomposed.png".freeze, "test/dummy/public/apple-touch-icon.png".freeze, "test/dummy/public/favicon.ico".freeze, "test/dummy/tmp/.keep".freeze, "test/test_helper.rb".freeze, "test/unit/rails_ops/mixins/model/nesting.rb".freeze, "test/unit/rails_ops/mixins/policies_test.rb".freeze, "test/unit/rails_ops/operation/model/create_test.rb".freeze, "test/unit/rails_ops/operation/model/load_test.rb".freeze, "test/unit/rails_ops/operation/model/update_test.rb".freeze, "test/unit/rails_ops/operation/model_test.rb".freeze, "test/unit/rails_ops/operation_test.rb".freeze]
13
- s.rubygems_version = "3.1.4".freeze
13
+ s.rubygems_version = "3.0.3".freeze
14
14
  s.summary = "An operations service layer for rails projects.".freeze
15
15
  s.test_files = ["test/db/models.rb".freeze, "test/db/schema.rb".freeze, "test/dummy/Rakefile".freeze, "test/dummy/app/assets/config/manifest.js".freeze, "test/dummy/app/assets/images/.keep".freeze, "test/dummy/app/assets/javascripts/application.js".freeze, "test/dummy/app/assets/javascripts/cable.js".freeze, "test/dummy/app/assets/javascripts/channels/.keep".freeze, "test/dummy/app/assets/stylesheets/application.css".freeze, "test/dummy/app/channels/application_cable/channel.rb".freeze, "test/dummy/app/channels/application_cable/connection.rb".freeze, "test/dummy/app/controllers/application_controller.rb".freeze, "test/dummy/app/controllers/concerns/.keep".freeze, "test/dummy/app/helpers/application_helper.rb".freeze, "test/dummy/app/jobs/application_job.rb".freeze, "test/dummy/app/mailers/application_mailer.rb".freeze, "test/dummy/app/models/application_record.rb".freeze, "test/dummy/app/models/concerns/.keep".freeze, "test/dummy/app/models/group.rb".freeze, "test/dummy/app/views/layouts/application.html.erb".freeze, "test/dummy/app/views/layouts/mailer.html.erb".freeze, "test/dummy/app/views/layouts/mailer.text.erb".freeze, "test/dummy/bin/bundle".freeze, "test/dummy/bin/rails".freeze, "test/dummy/bin/rake".freeze, "test/dummy/bin/setup".freeze, "test/dummy/bin/update".freeze, "test/dummy/bin/yarn".freeze, "test/dummy/config.ru".freeze, "test/dummy/config/application.rb".freeze, "test/dummy/config/boot.rb".freeze, "test/dummy/config/cable.yml".freeze, "test/dummy/config/database.yml".freeze, "test/dummy/config/environment.rb".freeze, "test/dummy/config/environments/development.rb".freeze, "test/dummy/config/environments/production.rb".freeze, "test/dummy/config/environments/test.rb".freeze, "test/dummy/config/initializers/application_controller_renderer.rb".freeze, "test/dummy/config/initializers/assets.rb".freeze, "test/dummy/config/initializers/backtrace_silencers.rb".freeze, "test/dummy/config/initializers/cookies_serializer.rb".freeze, "test/dummy/config/initializers/filter_parameter_logging.rb".freeze, "test/dummy/config/initializers/inflections.rb".freeze, "test/dummy/config/initializers/mime_types.rb".freeze, "test/dummy/config/initializers/rails_ops.rb".freeze, "test/dummy/config/initializers/wrap_parameters.rb".freeze, "test/dummy/config/locales/en.yml".freeze, "test/dummy/config/puma.rb".freeze, "test/dummy/config/routes.rb".freeze, "test/dummy/config/secrets.yml".freeze, "test/dummy/config/spring.rb".freeze, "test/dummy/db/schema.rb".freeze, "test/dummy/lib/assets/.keep".freeze, "test/dummy/log/.keep".freeze, "test/dummy/package.json".freeze, "test/dummy/public/404.html".freeze, "test/dummy/public/422.html".freeze, "test/dummy/public/500.html".freeze, "test/dummy/public/apple-touch-icon-precomposed.png".freeze, "test/dummy/public/apple-touch-icon.png".freeze, "test/dummy/public/favicon.ico".freeze, "test/dummy/tmp/.keep".freeze, "test/test_helper.rb".freeze, "test/unit/rails_ops/mixins/model/nesting.rb".freeze, "test/unit/rails_ops/mixins/policies_test.rb".freeze, "test/unit/rails_ops/operation/model/create_test.rb".freeze, "test/unit/rails_ops/operation/model/load_test.rb".freeze, "test/unit/rails_ops/operation/model/update_test.rb".freeze, "test/unit/rails_ops/operation/model_test.rb".freeze, "test/unit/rails_ops/operation_test.rb".freeze]
16
16
 
17
17
  if s.respond_to? :specification_version then
18
18
  s.specification_version = 4
19
- end
20
19
 
21
- if s.respond_to? :add_runtime_dependency then
22
- s.add_development_dependency(%q<bundler>.freeze, [">= 0"])
23
- s.add_development_dependency(%q<rake>.freeze, [">= 0"])
24
- s.add_development_dependency(%q<sqlite3>.freeze, [">= 0"])
25
- s.add_development_dependency(%q<rubocop>.freeze, ["= 0.47.1"])
26
- s.add_runtime_dependency(%q<active_type>.freeze, [">= 1.3.0"])
27
- s.add_runtime_dependency(%q<minitest>.freeze, [">= 0"])
28
- s.add_runtime_dependency(%q<rails>.freeze, [">= 0"])
29
- s.add_runtime_dependency(%q<request_store>.freeze, [">= 0"])
30
- s.add_runtime_dependency(%q<schemacop>.freeze, [">= 2.4.2", "<= 3.1"])
20
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
21
+ s.add_development_dependency(%q<bundler>.freeze, [">= 0"])
22
+ s.add_development_dependency(%q<rake>.freeze, [">= 0"])
23
+ s.add_development_dependency(%q<sqlite3>.freeze, [">= 0"])
24
+ s.add_development_dependency(%q<rubocop>.freeze, ["= 0.47.1"])
25
+ s.add_runtime_dependency(%q<active_type>.freeze, [">= 1.3.0"])
26
+ s.add_runtime_dependency(%q<minitest>.freeze, [">= 0"])
27
+ s.add_runtime_dependency(%q<rails>.freeze, [">= 0"])
28
+ s.add_runtime_dependency(%q<request_store>.freeze, [">= 0"])
29
+ s.add_runtime_dependency(%q<schemacop>.freeze, [">= 2.4.2", "<= 3.1"])
30
+ else
31
+ s.add_dependency(%q<bundler>.freeze, [">= 0"])
32
+ s.add_dependency(%q<rake>.freeze, [">= 0"])
33
+ s.add_dependency(%q<sqlite3>.freeze, [">= 0"])
34
+ s.add_dependency(%q<rubocop>.freeze, ["= 0.47.1"])
35
+ s.add_dependency(%q<active_type>.freeze, [">= 1.3.0"])
36
+ s.add_dependency(%q<minitest>.freeze, [">= 0"])
37
+ s.add_dependency(%q<rails>.freeze, [">= 0"])
38
+ s.add_dependency(%q<request_store>.freeze, [">= 0"])
39
+ s.add_dependency(%q<schemacop>.freeze, [">= 2.4.2", "<= 3.1"])
40
+ end
31
41
  else
32
42
  s.add_dependency(%q<bundler>.freeze, [">= 0"])
33
43
  s.add_dependency(%q<rake>.freeze, [">= 0"])
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_ops
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.20
4
+ version: 1.1.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sitrox
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-18 00:00:00.000000000 Z
11
+ date: 2021-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -142,8 +142,8 @@ dependencies:
142
142
  - - "<="
143
143
  - !ruby/object:Gem::Version
144
144
  version: '3.1'
145
- description:
146
- email:
145
+ description:
146
+ email:
147
147
  executables: []
148
148
  extensions: []
149
149
  extra_rdoc_files: []
@@ -274,10 +274,10 @@ files:
274
274
  - test/unit/rails_ops/operation/model/update_test.rb
275
275
  - test/unit/rails_ops/operation/model_test.rb
276
276
  - test/unit/rails_ops/operation_test.rb
277
- homepage:
277
+ homepage:
278
278
  licenses: []
279
279
  metadata: {}
280
- post_install_message:
280
+ post_install_message:
281
281
  rdoc_options: []
282
282
  require_paths:
283
283
  - lib
@@ -292,8 +292,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
292
292
  - !ruby/object:Gem::Version
293
293
  version: '0'
294
294
  requirements: []
295
- rubygems_version: 3.1.4
296
- signing_key:
295
+ rubygems_version: 3.0.3
296
+ signing_key:
297
297
  specification_version: 4
298
298
  summary: An operations service layer for rails projects.
299
299
  test_files: