foobara 0.0.78 → 0.0.80

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 (49) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +11 -0
  3. data/projects/builtin_types/src/attributes/supported_validators/required/type_declaration_extension/extend_attributes_type_declaration/desugarizers/alphabetize_required.rb +38 -0
  4. data/projects/command/src/command_pattern_implementation/concerns/reflection.rb +63 -35
  5. data/projects/command/src/transformed_command.rb +12 -11
  6. data/projects/command_connectors/src/command_connector.rb +9 -2
  7. data/projects/command_connectors/src/command_registry/exposed_command.rb +3 -3
  8. data/projects/command_connectors/src/command_registry/exposed_domain.rb +2 -2
  9. data/projects/command_connectors/src/command_registry/exposed_organization.rb +2 -2
  10. data/projects/common/src/error.rb +2 -2
  11. data/projects/common/src/possible_error.rb +1 -1
  12. data/projects/detached_entity/lib/foobara/detached_entity.rb +4 -1
  13. data/projects/detached_entity/src/concerns/associations.rb +60 -20
  14. data/projects/detached_entity/src/concerns/reflection.rb +3 -3
  15. data/projects/detached_entity/src/concerns/types.rb +7 -1
  16. data/projects/detached_entity/src/detached_entity_type.rb +2 -2
  17. data/projects/detached_entity/src/sensitive_type_removers/detached_entity.rb +8 -0
  18. data/projects/domain/src/domain_module_extension.rb +5 -1
  19. data/projects/domain/src/is_manifestable.rb +1 -1
  20. data/projects/domain/src/organization_module_extension.rb +1 -1
  21. data/projects/entity/lib/foobara/entity.rb +4 -1
  22. data/projects/entity/src/sensitive_type_removers/entity.rb +8 -0
  23. data/projects/model/lib/foobara/model.rb +9 -2
  24. data/projects/model/src/concerns/reflection.rb +8 -2
  25. data/projects/model/src/sensitive_type_removers/extended_model.rb +10 -0
  26. data/projects/model/src/sensitive_type_removers/model.rb +19 -0
  27. data/projects/type_declarations/lib/foobara/type_declarations.rb +10 -2
  28. data/projects/type_declarations/src/attributes.rb +1 -0
  29. data/projects/type_declarations/src/desugarizer.rb +1 -1
  30. data/projects/type_declarations/src/handlers/extend_array_type_declaration/type_set_to_array_desugarizer.rb +9 -1
  31. data/projects/type_declarations/src/handlers/extend_registered_type_declaration/to_type_transformer.rb +7 -3
  32. data/projects/type_declarations/src/sensitive_type_remover.rb +17 -0
  33. data/projects/type_declarations/src/sensitive_type_removers/array.rb +21 -0
  34. data/projects/type_declarations/src/sensitive_type_removers/attributes.rb +43 -0
  35. data/projects/type_declarations/src/type_declaration_handler.rb +1 -1
  36. data/projects/type_declarations/src/type_declaration_handler_registry.rb +1 -1
  37. data/projects/type_declarations/src/type_declaration_validator.rb +1 -1
  38. data/projects/type_declarations/src/type_declarations.rb +21 -0
  39. data/projects/types/src/extensions/error.rb +3 -3
  40. data/projects/types/src/type/concerns/reflection.rb +29 -8
  41. data/projects/types/src/type.rb +40 -9
  42. data/projects/value/src/caster.rb +1 -1
  43. data/projects/value/src/processor/casting.rb +1 -1
  44. data/projects/value/src/processor/pipeline.rb +1 -1
  45. data/projects/value/src/processor/selection.rb +1 -1
  46. data/projects/value/src/processor.rb +3 -3
  47. data/projects/value/src/transformer.rb +1 -1
  48. data/projects/value/src/validator.rb +1 -1
  49. metadata +11 -3
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: foobara
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.78
4
+ version: 0.0.80
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miles Georgi
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-03-17 00:00:00.000000000 Z
10
+ date: 2025-03-19 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: bigdecimal
@@ -82,6 +82,7 @@ files:
82
82
  - projects/builtin_types/src/attributes/supported_transformers/defaults/type_declaration_extension/extend_attributes_type_declaration/type_declaration_validators/hash_with_symbolic_keys.rb
83
83
  - projects/builtin_types/src/attributes/supported_transformers/defaults/type_declaration_extension/extend_attributes_type_declaration/type_declaration_validators/valid_attribute_names.rb
84
84
  - projects/builtin_types/src/attributes/supported_validators/required.rb
85
+ - projects/builtin_types/src/attributes/supported_validators/required/type_declaration_extension/extend_attributes_type_declaration/desugarizers/alphabetize_required.rb
85
86
  - projects/builtin_types/src/attributes/supported_validators/required/type_declaration_extension/extend_attributes_type_declaration/desugarizers/move_required_from_element_types_to_root.rb
86
87
  - projects/builtin_types/src/attributes/supported_validators/required/type_declaration_extension/extend_attributes_type_declaration/type_declaration_validators/array_of_symbols.rb
87
88
  - projects/builtin_types/src/attributes/supported_validators/required/type_declaration_extension/extend_attributes_type_declaration/type_declaration_validators/array_with_valid_attribute_names.rb
@@ -224,6 +225,7 @@ files:
224
225
  - projects/detached_entity/src/extensions/type_declarations/handlers/extend_detached_entity_type_declaration/validate_primary_key_is_symbol.rb
225
226
  - projects/detached_entity/src/extensions/type_declarations/handlers/extend_detached_entity_type_declaration/validate_primary_key_present.rb
226
227
  - projects/detached_entity/src/extensions/type_declarations/handlers/extend_detached_entity_type_declaration/validate_primary_key_references_attribute.rb
228
+ - projects/detached_entity/src/sensitive_type_removers/detached_entity.rb
227
229
  - projects/domain/lib/foobara/domain.rb
228
230
  - projects/domain/src/domain.rb
229
231
  - projects/domain/src/domain_module_extension.rb
@@ -263,6 +265,7 @@ files:
263
265
  - projects/entity/src/extensions/type_declarations/handlers/extend_entity_type_declaration/validate_primary_key_references_attribute.rb
264
266
  - projects/entity/src/new_prepend.rb
265
267
  - projects/entity/src/not_found_error.rb
268
+ - projects/entity/src/sensitive_type_removers/entity.rb
266
269
  - projects/enumerated/lib/foobara/enumerated.rb
267
270
  - projects/enumerated/src/accessors.rb
268
271
  - projects/enumerated/src/enumerated.rb
@@ -310,6 +313,8 @@ files:
310
313
  - projects/model/src/extensions/type_declarations/handlers/extend_registered_model_type_declaration/to_type_transformer.rb
311
314
  - projects/model/src/extensions/type_declarations/handlers/registered_type_declaration/model_class_desugarizer.rb
312
315
  - projects/model/src/model.rb
316
+ - projects/model/src/sensitive_type_removers/extended_model.rb
317
+ - projects/model/src/sensitive_type_removers/model.rb
313
318
  - projects/model_attribute_helpers/lib/foobara/model_attribute_helpers.rb
314
319
  - projects/model_attribute_helpers/src/attribute_helper_aliases.rb
315
320
  - projects/model_attribute_helpers/src/attribute_helpers.rb
@@ -381,6 +386,9 @@ files:
381
386
  - projects/type_declarations/src/handlers/registered_type_declaration/to_type_transformer.rb
382
387
  - projects/type_declarations/src/handlers/registered_type_declaration/type_desugarizer.rb
383
388
  - projects/type_declarations/src/processor.rb
389
+ - projects/type_declarations/src/sensitive_type_remover.rb
390
+ - projects/type_declarations/src/sensitive_type_removers/array.rb
391
+ - projects/type_declarations/src/sensitive_type_removers/attributes.rb
384
392
  - projects/type_declarations/src/to_type_transformer.rb
385
393
  - projects/type_declarations/src/transformer.rb
386
394
  - projects/type_declarations/src/type_builder.rb
@@ -460,7 +468,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
460
468
  - !ruby/object:Gem::Version
461
469
  version: '0'
462
470
  requirements: []
463
- rubygems_version: 3.6.5
471
+ rubygems_version: 3.6.6
464
472
  specification_version: 4
465
473
  summary: A command-centric and discoverable software framework with a focus on domain
466
474
  concepts and abstracting away integration code