lutaml-store 0.2.0 → 0.2.1

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.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop_todo.yml +11 -175
  3. data/README.adoc +233 -1124
  4. data/lib/lutaml/store/adapter/base.rb +4 -0
  5. data/lib/lutaml/store/adapter/memory.rb +8 -0
  6. data/lib/lutaml/store/cache_store.rb +9 -6
  7. data/lib/lutaml/store/format.rb +19 -0
  8. data/lib/lutaml/store/http_cache.rb +3 -13
  9. data/lib/lutaml/store/model_registration.rb +5 -2
  10. data/lib/lutaml/store/model_registry.rb +22 -20
  11. data/lib/lutaml/store/package_store.rb +2 -18
  12. data/lib/lutaml/store/package_transport/base.rb +48 -0
  13. data/lib/lutaml/store/package_transport/directory_transport.rb +196 -0
  14. data/lib/lutaml/store/package_transport/zip_transport.rb +178 -0
  15. data/lib/lutaml/store/package_transport.rb +11 -438
  16. data/lib/lutaml/store/version.rb +1 -1
  17. metadata +12 -77
  18. data/.github/workflows/main.yml +0 -27
  19. data/.gitignore +0 -12
  20. data/CORRECTED_HTTP_CACHE_IMPLEMENTATION.md +0 -209
  21. data/CORRECTED_HTTP_CACHE_PLAN.md +0 -164
  22. data/Gemfile +0 -15
  23. data/Gemfile.lock +0 -227
  24. data/TODO.impl/0-lutaml-store-self-quality.md +0 -112
  25. data/TODO.impl/1-lutaml-hal-migration.md +0 -96
  26. data/TODO.impl/2-glossarist-migration.md +0 -359
  27. data/TODO.impl/3-lutaml-jsonschema-migration.md +0 -273
  28. data/bin/console +0 -11
  29. data/bin/setup +0 -8
  30. data/demo/Gemfile +0 -15
  31. data/demo/Gemfile.lock +0 -61
  32. data/demo/README.adoc +0 -301
  33. data/demo/data/vcards/co/contact_10_thompson.data +0 -1
  34. data/demo/data/vcards/co/contact_10_thompson.meta +0 -1
  35. data/demo/data/vcards/co/contact_1_doe.data +0 -1
  36. data/demo/data/vcards/co/contact_1_doe.meta +0 -1
  37. data/demo/data/vcards/co/contact_2_smith.data +0 -1
  38. data/demo/data/vcards/co/contact_2_smith.meta +0 -1
  39. data/demo/data/vcards/co/contact_3_johnson.data +0 -1
  40. data/demo/data/vcards/co/contact_3_johnson.meta +0 -1
  41. data/demo/data/vcards/co/contact_4_garcia.data +0 -1
  42. data/demo/data/vcards/co/contact_4_garcia.meta +0 -1
  43. data/demo/data/vcards/co/contact_5_wilson.data +0 -1
  44. data/demo/data/vcards/co/contact_5_wilson.meta +0 -1
  45. data/demo/data/vcards/co/contact_6_brown.data +0 -1
  46. data/demo/data/vcards/co/contact_6_brown.meta +0 -1
  47. data/demo/data/vcards/co/contact_7_davis.data +0 -1
  48. data/demo/data/vcards/co/contact_7_davis.meta +0 -1
  49. data/demo/data/vcards/co/contact_8_anderson.data +0 -1
  50. data/demo/data/vcards/co/contact_8_anderson.meta +0 -1
  51. data/demo/data/vcards/co/contact_9_taylor.data +0 -1
  52. data/demo/data/vcards/co/contact_9_taylor.meta +0 -1
  53. data/demo/data/vcards.db +0 -0
  54. data/demo/pottery_class_demo.rb +0 -164
  55. data/demo/vcard_models.rb +0 -140
  56. data/demo/vcard_store_demo.rb +0 -526
  57. data/lutaml-store.gemspec +0 -36
  58. data/plan.adoc +0 -606
  59. data/spec/lutaml/store/adapter_interface_spec.rb +0 -89
  60. data/spec/lutaml/store/anti_pattern_guard_spec.rb +0 -35
  61. data/spec/lutaml/store/anti_pattern_spec.rb +0 -78
  62. data/spec/lutaml/store/autoload_spec.rb +0 -34
  63. data/spec/lutaml/store/cache_store_spec.rb +0 -271
  64. data/spec/lutaml/store/compression_spec.rb +0 -78
  65. data/spec/lutaml/store/config_enhanced_spec.rb +0 -158
  66. data/spec/lutaml/store/corrected_http_cache_integration_spec.rb +0 -336
  67. data/spec/lutaml/store/custom_serializer_spec.rb +0 -108
  68. data/spec/lutaml/store/database_store_spec.rb +0 -279
  69. data/spec/lutaml/store/file_io_spec.rb +0 -220
  70. data/spec/lutaml/store/format/yamls_spec.rb +0 -80
  71. data/spec/lutaml/store/format_round_trip_spec.rb +0 -110
  72. data/spec/lutaml/store/format_spec.rb +0 -70
  73. data/spec/lutaml/store/http_cache_entry_spec.rb +0 -203
  74. data/spec/lutaml/store/http_cache_hal_integration_spec.rb +0 -404
  75. data/spec/lutaml/store/http_cache_spec.rb +0 -422
  76. data/spec/lutaml/store/http_header_processor_spec.rb +0 -290
  77. data/spec/lutaml/store/import_spec.rb +0 -90
  78. data/spec/lutaml/store/integrity_spec.rb +0 -157
  79. data/spec/lutaml/store/key_collision_serializer_spec.rb +0 -98
  80. data/spec/lutaml/store/load_save_spec.rb +0 -107
  81. data/spec/lutaml/store/lutaml_model_integration_spec.rb +0 -291
  82. data/spec/lutaml/store/model_serializer_spec.rb +0 -140
  83. data/spec/lutaml/store/package_definition_spec.rb +0 -89
  84. data/spec/lutaml/store/package_store_spec.rb +0 -153
  85. data/spec/lutaml/store/package_transport/directory_transport_spec.rb +0 -139
  86. data/spec/lutaml/store/package_transport/zip_transport_spec.rb +0 -85
  87. data/spec/lutaml/store/store_spec.rb +0 -182
  88. data/spec/lutaml/store_spec.rb +0 -21
  89. data/spec/spec_helper.rb +0 -16
  90. data/spec/support/simple_test_model.rb +0 -15
  91. data/spec/support/yamls_test_model.rb +0 -35
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9a51b678ada3133e9dec69b021b81f2f306f96839da6f6d3c6095542b4f1c518
4
- data.tar.gz: 8157f4106efe708cc4b868ffa174004729e3e22a8a94ec519add41407d0c11a6
3
+ metadata.gz: 1c26211ca36caae48ef419c2feb670e6d35ddfb958b97b27eb04173c16eaa804
4
+ data.tar.gz: '06953ee0ec088797069476ccd0a2595aaae24b71fc295b3882ac628464b53da0'
5
5
  SHA512:
6
- metadata.gz: 639dcd3e75e7ec3c40128cf28c036aff3e003ab9db3460266260587c386aea5495bbe244376caef15b5555f541ff3715ce738b2ec93e501d622fafa290016881
7
- data.tar.gz: 6942bb83e1ab2edb1c0a10afcdd7014baceb3c02319fc82714d54234e0a012105a3046adb76c09f12d9e861b9ea53b108bcfdb874836db81e8a08461d0237083
6
+ metadata.gz: ac429b0436457ac91e52d18290c407598529d041294911c652a33fda075b4f24373965aea422568e85bcfa68e978a64fb4dc45b642fb9034555869a597ccb161
7
+ data.tar.gz: fefac8e5929d619716a9cf890601928fb52738b3ecb5d6a861a90d7d28db7902624108a8d2054a230ea4810291001690455777e0cbcebaa912fd9c8f67f11591
data/.rubocop_todo.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2026-06-03 01:47:04 UTC using RuboCop version 1.86.2.
3
+ # on 2026-06-05 04:23:39 UTC using RuboCop version 1.87.0.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
@@ -11,114 +11,38 @@ Gemspec/RequiredRubyVersion:
11
11
  Exclude:
12
12
  - 'lutaml-store.gemspec'
13
13
 
14
- # Offense count: 15
15
- # This cop supports safe autocorrection (--autocorrect).
16
- # Configuration parameters: EnforcedStyle, IndentationWidth.
17
- # SupportedStyles: with_first_argument, with_fixed_indentation
18
- Layout/ArgumentAlignment:
19
- Exclude:
20
- - 'lib/lutaml/store/attribute_updater.rb'
21
- - 'lib/lutaml/store/http_cache.rb'
22
- - 'lib/lutaml/store/model_registry.rb'
23
- - 'spec/lutaml/store/package_store_spec.rb'
24
- - 'spec/lutaml/store/package_transport/directory_transport_spec.rb'
25
- - 'spec/lutaml/store/package_transport/zip_transport_spec.rb'
26
-
27
- # Offense count: 8
28
- # This cop supports safe autocorrection (--autocorrect).
29
- Layout/EmptyLineAfterGuardClause:
30
- Exclude:
31
- - 'lib/lutaml/store/package_transport.rb'
32
-
33
- # Offense count: 1
34
- # This cop supports safe autocorrection (--autocorrect).
35
- Layout/EmptyLines:
36
- Exclude:
37
- - 'lib/lutaml/store/package_store.rb'
38
-
39
- # Offense count: 3
40
- # This cop supports safe autocorrection (--autocorrect).
41
- # Configuration parameters: AllowForAlignment, AllowBeforeTrailingComments, ForceEqualSignAlignment.
42
- Layout/ExtraSpacing:
43
- Exclude:
44
- - 'lib/lutaml/store/package_store.rb'
45
- - 'lib/lutaml/store/package_transport.rb'
46
-
47
- # Offense count: 3
48
- # This cop supports safe autocorrection (--autocorrect).
49
- # Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
50
- # SupportedHashRocketStyles: key, separator, table
51
- # SupportedColonStyles: key, separator, table
52
- # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
53
- Layout/HashAlignment:
54
- Exclude:
55
- - 'spec/lutaml/store/package_transport/directory_transport_spec.rb'
56
- - 'spec/lutaml/store/package_transport/zip_transport_spec.rb'
57
-
58
- # Offense count: 13
59
- # This cop supports safe autocorrection (--autocorrect).
60
- # Configuration parameters: EnforcedStyle, IndentationWidth.
61
- # SupportedStyles: aligned, indented, indented_relative_to_receiver
62
- Layout/MultilineMethodCallIndentation:
63
- Exclude:
64
- - 'lib/lutaml/store/package_store.rb'
65
- - 'lib/lutaml/store/package_transport.rb'
66
-
67
- # Offense count: 3
68
- # This cop supports safe autocorrection (--autocorrect).
69
- # Configuration parameters: EnforcedStyleInsidePipes.
70
- # SupportedStylesInsidePipes: space, no_space
71
- Layout/SpaceAroundBlockParameters:
72
- Exclude:
73
- - 'lib/lutaml/store/package_store.rb'
74
- - 'lib/lutaml/store/package_transport.rb'
75
-
76
- # Offense count: 5
77
- # This cop supports safe autocorrection (--autocorrect).
78
- # Configuration parameters: AllowInHeredoc.
79
- Layout/TrailingWhitespace:
80
- Exclude:
81
- - 'lib/lutaml/store/attribute_updater.rb'
82
- - 'lib/lutaml/store/http_cache.rb'
83
- - 'lib/lutaml/store/model_registry.rb'
84
-
85
- # Offense count: 1
86
- Lint/IneffectiveAccessModifier:
87
- Exclude:
88
- - 'lib/lutaml/store/package_store.rb'
89
-
90
- # Offense count: 30
14
+ # Offense count: 29
91
15
  # Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes.
92
16
  Metrics/AbcSize:
93
17
  Max: 112
94
18
 
95
- # Offense count: 56
19
+ # Offense count: 50
96
20
  # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
97
21
  # AllowedMethods: refine
98
22
  Metrics/BlockLength:
99
- Max: 315
23
+ Max: 387
100
24
 
101
- # Offense count: 17
25
+ # Offense count: 16
102
26
  # Configuration parameters: CountComments, CountAsOne.
103
27
  Metrics/ClassLength:
104
28
  Max: 379
105
29
 
106
- # Offense count: 10
30
+ # Offense count: 9
107
31
  # Configuration parameters: AllowedMethods, AllowedPatterns.
108
32
  Metrics/CyclomaticComplexity:
109
33
  Max: 11
110
34
 
111
- # Offense count: 82
35
+ # Offense count: 80
112
36
  # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
113
37
  Metrics/MethodLength:
114
38
  Max: 84
115
39
 
116
- # Offense count: 4
40
+ # Offense count: 5
117
41
  # Configuration parameters: CountKeywordArgs, MaxOptionalParameters.
118
42
  Metrics/ParameterLists:
119
43
  Max: 8
120
44
 
121
- # Offense count: 6
45
+ # Offense count: 5
122
46
  # Configuration parameters: AllowedMethods, AllowedPatterns.
123
47
  Metrics/PerceivedComplexity:
124
48
  Max: 11
@@ -128,14 +52,13 @@ Naming/AccessorMethodName:
128
52
  Exclude:
129
53
  - 'lib/lutaml/store/adapter/sqlite.rb'
130
54
 
131
- # Offense count: 12
55
+ # Offense count: 3
132
56
  # Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
133
57
  # AllowedNames: as, at, by, cc, db, id, if, in, io, ip, of, on, os, pp, to
134
58
  Naming/MethodParameterName:
135
59
  Exclude:
136
60
  - 'demo/vcard_models.rb'
137
61
  - 'demo/vcard_store_demo.rb'
138
- - 'lib/lutaml/store/package_transport.rb'
139
62
 
140
63
  # Offense count: 1
141
64
  # Configuration parameters: NamePrefix, ForbiddenPrefixes, AllowedMethods, MethodDefinitionMacros, UseSorbetSigs.
@@ -161,94 +84,7 @@ Security/MarshalLoad:
161
84
  Exclude:
162
85
  - 'lib/lutaml/store/format/marshal_format.rb'
163
86
 
164
- # Offense count: 2
165
- # This cop supports safe autocorrection (--autocorrect).
166
- # Configuration parameters: EnforcedStyle.
167
- # SupportedStyles: separated, grouped
168
- Style/AccessorGrouping:
169
- Exclude:
170
- - 'lib/lutaml/store/package_store.rb'
171
-
172
- # Offense count: 2
173
- # This cop supports safe autocorrection (--autocorrect).
174
- # Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, AllowedMethods, AllowedPatterns, AllowBracesOnProceduralOneLiners, BracesRequiredMethods.
175
- # SupportedStyles: line_count_based, semantic, braces_for_chaining, always_braces
176
- # ProceduralMethods: benchmark, bm, bmbm, create, each_with_object, measure, new, realtime, tap, with_object
177
- # FunctionalMethods: let, let!, subject, watch
178
- # AllowedMethods: lambda, proc, it
179
- Style/BlockDelimiters:
180
- Exclude:
181
- - 'spec/lutaml/store/package_definition_spec.rb'
182
- - 'spec/lutaml/store/package_transport/directory_transport_spec.rb'
183
-
184
- # Offense count: 34
87
+ # Offense count: 35
185
88
  # Configuration parameters: AllowedConstants.
186
89
  Style/Documentation:
187
90
  Enabled: false
188
-
189
- # Offense count: 2
190
- # This cop supports unsafe autocorrection (--autocorrect-all).
191
- # Configuration parameters: AllowedReceivers.
192
- # AllowedReceivers: Thread.current
193
- Style/HashEachMethods:
194
- Exclude:
195
- - 'lib/lutaml/store/cache_store.rb'
196
- - 'lib/lutaml/store/database_store.rb'
197
-
198
- # Offense count: 1
199
- # This cop supports safe autocorrection (--autocorrect).
200
- Style/KeywordParametersOrder:
201
- Exclude:
202
- - 'lib/lutaml/store/package_definition.rb'
203
-
204
- # Offense count: 5
205
- # This cop supports safe autocorrection (--autocorrect).
206
- Style/MultilineIfModifier:
207
- Exclude:
208
- - 'lib/lutaml/store/attribute_updater.rb'
209
- - 'lib/lutaml/store/http_cache.rb'
210
- - 'lib/lutaml/store/model_registry.rb'
211
-
212
- # Offense count: 2
213
- # This cop supports unsafe autocorrection (--autocorrect-all).
214
- # Configuration parameters: SafeForConstants.
215
- Style/RedundantFetchBlock:
216
- Exclude:
217
- - 'spec/lutaml/store/cache_store_spec.rb'
218
-
219
- # Offense count: 1
220
- # This cop supports safe autocorrection (--autocorrect).
221
- Style/RedundantRegexpEscape:
222
- Exclude:
223
- - 'lib/lutaml/store/package_transport.rb'
224
-
225
- # Offense count: 1
226
- # This cop supports safe autocorrection (--autocorrect).
227
- # Configuration parameters: EnforcedStyleForMultiline.
228
- # SupportedStylesForMultiline: comma, consistent_comma, diff_comma, no_comma
229
- Style/TrailingCommaInArrayLiteral:
230
- Exclude:
231
- - 'spec/lutaml/store/format/yamls_spec.rb'
232
-
233
- # Offense count: 1
234
- # This cop supports safe autocorrection (--autocorrect).
235
- # Configuration parameters: EnforcedStyleForMultiline.
236
- # SupportedStylesForMultiline: comma, consistent_comma, diff_comma, no_comma
237
- Style/TrailingCommaInHashLiteral:
238
- Exclude:
239
- - 'lib/lutaml/store/package_store.rb'
240
-
241
- # Offense count: 3
242
- # This cop supports safe autocorrection (--autocorrect).
243
- # Configuration parameters: ExactNameMatch, AllowPredicates, AllowDSLWriters, IgnoreClassMethods, AllowedMethods.
244
- # AllowedMethods: to_ary, to_a, to_c, to_enum, to_h, to_hash, to_i, to_int, to_io, to_open, to_path, to_proc, to_r, to_regexp, to_str, to_s, to_sym
245
- Style/TrivialAccessors:
246
- Exclude:
247
- - 'lib/lutaml/store/package_store.rb'
248
-
249
- # Offense count: 5
250
- # This cop supports safe autocorrection (--autocorrect).
251
- # Configuration parameters: AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, AllowRBSInlineAnnotation, AllowCopDirectives, AllowedPatterns, SplitStrings.
252
- # URISchemes: http, https
253
- Layout/LineLength:
254
- Max: 148