avromatic 4.1.0 → 4.1.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
2
  SHA256:
3
- metadata.gz: edd31aa475804bf20a1f5b4ddbe90e8c98460617daeaf2e1641316c08cce505b
4
- data.tar.gz: b20ae31b2aeff034f9fa99e2a90d4bb78dfe894967ab8e0267b1df6ee954a15d
3
+ metadata.gz: 7bec6621c5d35e04596185542eaa4d96d00ef67f86f24b26378c68b22ecb3b3c
4
+ data.tar.gz: 1468ebd3138c5dc63a5d18d86dab5757df5c67109867628d1161b01ef70db1f3
5
5
  SHA512:
6
- metadata.gz: 6e4d441e7645b52840725041d361f699266a9e5dd974e8cd588c8f4750ba21eb4efd016b9c6c20e034a98ed79b673f9aa12a5f0b3a56312a57b344659b93606d
7
- data.tar.gz: 5b8ba9cc0049f80a31f88399ca504796997038b969d728be5867d6fd5bc6868786e4ae9dffc0de8a7c1db99e129f9398e4f867794dbd449d54f74c69650735bb
6
+ metadata.gz: da43c835a7f56011c1ed194bba7a02e5f98a190f65a8ce025b67f8a23d9a43093e2e64f83cdaf520d847c37ecf66cfd6ed276aee7f195a9f3f2b0c248967f5bf
7
+ data.tar.gz: 920048102d5947af69eca3d4e4c357adf9eefaebbd83e8d70190d29a6fb8d30c65072c97fda65613d9ebed32e127f98d9f4952e1e91e081963e61a480a002af3
data/.github/CODEOWNERS CHANGED
@@ -1 +1 @@
1
- * @jturkel @kphelps @tjwp
1
+ * @jturkel @tjwp @salsify/infrastructure-services
data/CHANGELOG.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # avromatic changelog
2
2
 
3
+ ## 4.1.1
4
+ - Fix eager loading of nested models when using the Zeitwerk classloader with Rails.
5
+
3
6
  ## 4.1.0
4
7
  - Add support for specifying a subject for the avro schema when building an Avromatic model
5
8
 
data/README.md CHANGED
@@ -286,7 +286,7 @@ correct order:
286
286
  Avromatic.configure do |config|
287
287
  config.eager_load_models = [
288
288
  # reference any extended models that should be defined first
289
- MyNestedModel
289
+ 'MyNestedModel'
290
290
  ]
291
291
  end
292
292
  ```
data/avromatic.gemspec CHANGED
@@ -45,7 +45,7 @@ Gem::Specification.new do |spec|
45
45
  spec.add_development_dependency 'rake', '~> 13.0'
46
46
  spec.add_development_dependency 'rspec', '~> 3.8'
47
47
  spec.add_development_dependency 'rspec_junit_formatter'
48
- spec.add_development_dependency 'salsify_rubocop', '~> 1.1.0'
48
+ spec.add_development_dependency 'salsify_rubocop', '~> 1.27.1'
49
49
  spec.add_development_dependency 'simplecov'
50
50
  spec.add_development_dependency 'webmock'
51
51
  # For AvroSchemaRegistry::FakeServer
@@ -60,11 +60,11 @@ module Avromatic
60
60
  Avromatic::Model::Types::EnumType.new(schema.symbols)
61
61
  when :array
62
62
  value_type = create(schema: schema.items, nested_models: nested_models,
63
- use_custom_types: use_custom_types)
63
+ use_custom_types: use_custom_types)
64
64
  Avromatic::Model::Types::ArrayType.new(value_type: value_type)
65
65
  when :map
66
66
  value_type = create(schema: schema.values, nested_models: nested_models,
67
- use_custom_types: use_custom_types)
67
+ use_custom_types: use_custom_types)
68
68
  Avromatic::Model::Types::MapType.new(
69
69
  key_type: Avromatic::Model::Types::StringType.new,
70
70
  value_type: value_type
@@ -7,19 +7,8 @@ module Avromatic
7
7
  config.logger = Rails.logger
8
8
  end
9
9
 
10
- # Rails calls the to_prepare hook once during boot-up, after running
11
- # initializers. After the to_prepare call during boot-up, no code will
12
- # we reloaded, so we need to retain the contents of the nested_models
13
- # registry.
14
- #
15
- # For subsequent calls to to_prepare (in development), the nested_models
16
- # registry is cleared and repopulated by explicitly referencing the
17
- # eager_loaded_models.
18
- first_prepare = true
19
-
20
10
  Rails.configuration.to_prepare do
21
- Avromatic.prepare!(skip_clear: first_prepare)
22
- first_prepare = false
11
+ Avromatic.prepare!
23
12
  end
24
13
  end
25
14
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Avromatic
4
- VERSION = '4.1.0'
4
+ VERSION = '4.1.1'
5
5
  end
data/lib/avromatic.rb CHANGED
@@ -29,7 +29,6 @@ module Avromatic
29
29
 
30
30
  def self.configure
31
31
  yield self
32
- eager_load_models!
33
32
  end
34
33
 
35
34
  def self.build_schema_registry
@@ -66,18 +65,16 @@ module Avromatic
66
65
 
67
66
  # This method is called as a Rails to_prepare hook after the application
68
67
  # first initializes during boot-up and prior to each code reloading.
69
- # For the first call during boot-up we do not want to clear the nested_models.
70
- def self.prepare!(skip_clear: false)
71
- unless skip_clear
72
- nested_models.clear
73
- if schema_store
74
- if schema_store.respond_to?(:clear_schemas)
75
- schema_store.clear_schemas
76
- elsif schema_store.respond_to?(:clear)
77
- schema_store.clear
78
- end
68
+ def self.prepare!
69
+ nested_models.clear
70
+ if schema_store
71
+ if schema_store.respond_to?(:clear_schemas)
72
+ schema_store.clear_schemas
73
+ elsif schema_store.respond_to?(:clear)
74
+ schema_store.clear
79
75
  end
80
76
  end
77
+
81
78
  eager_load_models!
82
79
  end
83
80
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avromatic
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.0
4
+ version: 4.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Salsify Engineering
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-02-07 00:00:00.000000000 Z
11
+ date: 2022-09-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -216,14 +216,14 @@ dependencies:
216
216
  requirements:
217
217
  - - "~>"
218
218
  - !ruby/object:Gem::Version
219
- version: 1.1.0
219
+ version: 1.27.1
220
220
  type: :development
221
221
  prerelease: false
222
222
  version_requirements: !ruby/object:Gem::Requirement
223
223
  requirements:
224
224
  - - "~>"
225
225
  - !ruby/object:Gem::Version
226
- version: 1.1.0
226
+ version: 1.27.1
227
227
  - !ruby/object:Gem::Dependency
228
228
  name: simplecov
229
229
  requirement: !ruby/object:Gem::Requirement
@@ -364,7 +364,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
364
364
  - !ruby/object:Gem::Version
365
365
  version: '0'
366
366
  requirements: []
367
- rubygems_version: 3.2.22
367
+ rubygems_version: 3.3.7
368
368
  signing_key:
369
369
  specification_version: 4
370
370
  summary: Generate Ruby models from Avro schemas