metaobjects 0.19.6__tar.gz → 0.19.8__tar.gz
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.
- {metaobjects-0.19.6 → metaobjects-0.19.8}/PKG-INFO +1 -1
- {metaobjects-0.19.6 → metaobjects-0.19.8}/pyproject.toml +1 -1
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/type_map.py +8 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/core_types.py +9 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/validation_passes.py +33 -26
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/field/field_constants.py +5 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/field.json +9 -3
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/prompt.json +2 -1
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_validation_conformance.py +19 -3
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_template_toolcall.py +2 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/.gitignore +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/LICENSE +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/README.md +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/hatch_build.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/agent_context/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/agent_context/scaffold.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/apidocs/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/apidocs/api_model.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/apidocs/builder.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/apidocs/naming.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/apidocs/paths.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/apidocs/renderer.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/attr_class_map.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/cli.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/KNOWN_GAPS.md +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/config.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/extract_delegate_emitter.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/extract_schema_emitter.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/format.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/fr010_field_mapping.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generator_registry.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/entity_model.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/extractor_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/filter_allowlist_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/fr019_shared_enum.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/m2m_codegen.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/output_parser_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/output_prompt_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/payload_vo_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/render_helper_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/router_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/template_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/tph_plan.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/trace_helper_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/instance_artifacts.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/output_format_spec_emitter.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/overwrite_policy.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/runner.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/runtime/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/runtime/filter_parser.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/template_codegen/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/template_codegen/output_pattern.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/template_codegen/template_data.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/template_codegen/template_spec.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/datatype.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/documentation/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/documentation/doc_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/documentation/doc_provider.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/documentation/doc_schema.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/errors.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/merge.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/meta_data_loader.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/registered_validation.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/sources/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/sources/directory_source.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/sources/file_source.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/sources/meta_data_source.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/sources/uri_source.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/validate_discriminator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/validate_field_readonly.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/validate_source_escapes.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/validate_source_parameter_ref.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/validate_source_physical_names.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/attr/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/attr/attr_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/attr/meta_attr.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/field/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/field/meta_field.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/identity/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/identity/identity_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/identity/meta_identity.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/index/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/index/index_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/index/meta_index.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/meta_object.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/meta_object_aware.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/object_class_registry.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/object_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/object_extract.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/value_object.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/relationship/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/relationship/derive_m2m_fields.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/relationship/meta_relationship.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/relationship/relationship_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/validator/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/validator/validator_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/meta_data.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/meta_root.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/db/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/db/db_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/db/db_provider.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/origin/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/origin/meta_origin.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/origin/origin_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/source/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/source/meta_source.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/source/source_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/layout/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/layout/layout_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/layout/meta_layout.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/ui/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/ui/ui_provider.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/view/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/view/meta_view.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/view/view_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/provider_extends.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/template/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/template/meta_template.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/template/prompt_provider.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/template/template_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/naming_refs.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/parser.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/parser_yaml.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/provider.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/py.typed +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/registry.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/registry_manifest.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/email_document.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/escapers.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/KNOWN_GAPS.md +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/coerce.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/extract.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/extract_map.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/json_forgiving_reader.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/locate.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/normalize.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/strip.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/types.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/extract/xml_forgiving_reader.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/filesystem_provider.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/prompt/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/prompt/output_format_renderer.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/prompt/output_format_spec.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/prompt/prompt_field.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/prompt/prompt_overrides.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/prompt/prompt_style.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/renderer.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/render/verify.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/runtime/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/runtime/llm_recorder.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/runtime/n2m_resolver.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/runtime/object_manager.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/runtime/tph.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/serializer_json.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/shared/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/shared/base_types.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/shared/separators.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/shared/structural.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/source/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/source/error_source.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/source/json_path.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/source/semantic_diff.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/source/yaml_positions.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/attr.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/db.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/documentation.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/identity.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/index.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/layout.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/object.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/origin.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/relationship.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/source.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/template.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/ui-web.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/ui.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/validator.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/spec_metamodel/view.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/super_resolve.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/validation_types.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/yaml_desugar.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/extends/expected/BaseEntity.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/extends/expected/Program.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/extends/meta.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/nested-array/expected/AuthorBrief.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/nested-array/expected/PostBrief.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/nested-array/meta.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/scalars/expected/Metric.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/scalars/expected/Report.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/scalars/meta.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/vanilla/expected/Subscriber.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/golden/vanilla/meta.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_abstract_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_api_docs_builder.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_api_docs_paths.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_cli.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_cli_providers.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_cli_registry.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_cli_staleness_nudge.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_cli_verify_strict.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_cli_verify_subverbs.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_constants_config.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_entity_model.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_enum_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_extends_abstract_field_inheritance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_extractor_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_filter_allowlist_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_format.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_fr010_nested_object_prompt.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_fr010_output_codegen.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_fr019_shared_provided_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_generator_extension_seams.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_golden.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_inherit_without_restate_gate.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_inheritance_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_instance_artifacts.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_m2m_codegen.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_origin_nullability.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_output_parser_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_overwrite_policy.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_payload_vo_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_projection_compile.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_render_helper_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_render_helper_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_reverse_finders.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_router_autoset.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_router_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_runner.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_template_data.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_template_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_template_output_pattern.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_template_scope_helpers.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_template_scope_walk.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_template_spec.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_tph_codegen.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_trace_helper_generator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_type_map.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/codegen/test_write_through.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/capabilities.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/conformance-expected-failures.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/conformance_adapter.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/corpus.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/expected_failures.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/fixture_discovery.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/navigator.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_api_docs_cross_port_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_extract_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_extract_object_verdict.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_fr010_loader_attrs.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_fr011_attrs.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_generator_registry_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_object_model_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_provider_composition_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_registry_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_runner_hardfail.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_spec_metamodel_embed.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_strict_attr_load.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_template_codegen_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_template_generator_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/test_yaml_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/conformance/yaml-conformance-expected-failures.json +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/api_contract_assertions.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/api_contract_jsonb_server.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/api_contract_m2m_server.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/api_contract_server.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/generated_jsonb_app.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/generated_m2m_app.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/generated_router_app.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/generated_tph_app.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/meta_ai_trace.yaml +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/normalization.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/postgres_container.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/query_runner.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/scenarios.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_api_contract.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_api_contract_generated.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_api_contract_jsonb.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_api_contract_m2m.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_api_contract_m2m_generated.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_api_contract_tph_generated.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_generated_router_uuid_pk.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_llm_call_trace.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_normalization.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_query_scenarios.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/integration/test_runtime_return_types.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/open_closed_proof_test.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/test_coerce.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/test_extract.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/test_extract_map.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/test_json_forgiving_reader.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/test_locate.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/test_model.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/test_normalize.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/test_strip.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/extract/test_xml_forgiving_reader.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/prompt/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/prompt/test_output_format_renderer.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/test_email_document.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/test_filesystem_provider.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/test_output_format_renderer_nested.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/test_output_prompt_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/test_render_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/test_render_max_chars.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/test_verify.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/render/test_verify_conformance.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/source/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/source/test_fr5c_merge_attribution.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/source/test_fr5d_reference_resolution.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/source/test_fr5e_database_source_shape.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/source/test_json_path.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/source/test_semantic_diff.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/source/test_source_on_node.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/source/test_yaml_positions.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/test_api_docs_accuracy.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/__init__.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_agent_context_staleness.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_capabilities.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_common_attrs.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_core_types.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_effective_package.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_errors.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_field_enum.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_field_map_validation.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_field_uuid_dbcolumntype.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_fr016_source_name_and_kind_aliases.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_index_lookup.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_llm_recorder.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_loader.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_loader_bom.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_loader_class.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_merge.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_meta_attr.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_meta_data.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_meta_source.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_module_shortcuts.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_n2m_resolver.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_n2m_resolver_inherited.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_object_manager_autoset_stamping.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_object_manager_uuid_coercion.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_object_manager_write_through.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_one_primary_source.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_parser.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_parser_yaml.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_provider.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_provider_extension.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_registry.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_registry_completeness.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_registry_extend.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_registry_sealed.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_relationship_referential_actions.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_resolution_key.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_runtime_resolution_key_binding.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_serializer.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_shared_constants.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_smoke.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_source_escapes.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_sources.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_strict_child_placement.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_super_resolve.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_template_wrong_subtype_attrs.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_validation_attr_schema.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_validation_filter_values.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_validation_origin_195.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_validation_origin_paths.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_validation_sort_field.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_validation_warnings.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_write_coercion_arrays.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/tests/unit/test_yaml_desugar.py +0 -0
- {metaobjects-0.19.6 → metaobjects-0.19.8}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: metaobjects
|
|
3
|
-
Version: 0.19.
|
|
3
|
+
Version: 0.19.8
|
|
4
4
|
Summary: Cross-language metadata standard: declare typed entities once, generate idiomatic drift-checked code across languages — Python port.
|
|
5
5
|
Project-URL: Homepage, https://metaobjects.dev
|
|
6
6
|
Project-URL: Repository, https://github.com/metaobjectsdev/metaobjects
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "metaobjects"
|
|
3
|
-
version = "0.19.
|
|
3
|
+
version = "0.19.8"
|
|
4
4
|
description = "Cross-language metadata standard: declare typed entities once, generate idiomatic drift-checked code across languages — Python port."
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
requires-python = ">=3.11"
|
|
@@ -116,6 +116,14 @@ def py_type_for(field: MetaField) -> PyType:
|
|
|
116
116
|
# z.unknown() (#97) — since jsonb can hold any JSON value. (Other ports whose
|
|
117
117
|
# drivers return jsonb as raw text correctly keep their string type.)
|
|
118
118
|
base = PyType("Any", ("from typing import Any",))
|
|
119
|
+
elif (
|
|
120
|
+
field.sub_type in (fc.FIELD_SUBTYPE_URI, fc.FIELD_SUBTYPE_INET)
|
|
121
|
+
and field.attrs().get(fc.FIELD_ATTR_LENIENT) is True
|
|
122
|
+
):
|
|
123
|
+
# #234 — @lenient opts a field.uri / field.inet out of strict well-formedness:
|
|
124
|
+
# bind a plain ``str`` (not Pydantic AnyUrl / IPvAnyAddress, whose construction
|
|
125
|
+
# IS the validator) so a not-strictly-valid value round-trips unchanged.
|
|
126
|
+
base = PyType("str")
|
|
119
127
|
else:
|
|
120
128
|
base = _SCALAR.get(field.sub_type, PyType("str"))
|
|
121
129
|
if field_is_array(field):
|
|
@@ -391,6 +391,15 @@ for _def in core_provider._defs: # noqa: SLF001 (provider build-time enrichment
|
|
|
391
391
|
)
|
|
392
392
|
break
|
|
393
393
|
|
|
394
|
+
# #234 — field.uri / field.inet carry the @lenient attr (opt out of strict URI / IP-literal
|
|
395
|
+
# well-formedness; codegen binds a plain string, and field.inet a text column) IN ADDITION to the
|
|
396
|
+
# common field attrs. Mirrors the @stringFormat enrichment above (and TS/Java/C#).
|
|
397
|
+
for _def in core_provider._defs: # noqa: SLF001 (provider build-time enrichment)
|
|
398
|
+
if _def.type == TYPE_FIELD and _def.sub_type in (fc.FIELD_SUBTYPE_URI, fc.FIELD_SUBTYPE_INET):
|
|
399
|
+
_def.attrs.append(
|
|
400
|
+
AttrSchema(name=fc.FIELD_ATTR_LENIENT, value_type=ATTR_SUBTYPE_BOOLEAN, required=False)
|
|
401
|
+
)
|
|
402
|
+
|
|
394
403
|
# field.map carries the @valueType attr (scalar value subtype) IN ADDITION to the
|
|
395
404
|
# common field attrs (@objectRef is already common). The bulk loop registered
|
|
396
405
|
# field.map with the common attrs; append @valueType to that definition (mirrors
|
|
@@ -124,21 +124,23 @@ from ..meta.core.index.index_constants import INDEX_ATTR_FIELDS, INDEX_SUBTYPE_L
|
|
|
124
124
|
from ..source import resolved_source
|
|
125
125
|
from ..naming_refs import did_you_mean_hint, resolve_object_ref
|
|
126
126
|
|
|
127
|
-
# A subtype-specific template attr is valid ONLY on the subtype it is registered
|
|
127
|
+
# A subtype-specific template attr is valid ONLY on the subtype(s) it is registered
|
|
128
128
|
# for. The metamodel registers these per-subtype (see the core_types template block),
|
|
129
129
|
# but the lenient loader does not reject a misplaced one — _validate_templates does.
|
|
130
130
|
# Mirrors the per-subtype TEMPLATE_ATTRS_MAP split across the other ports.
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
tc.
|
|
135
|
-
tc.
|
|
136
|
-
tc.
|
|
137
|
-
tc.
|
|
138
|
-
tc.
|
|
139
|
-
tc.
|
|
140
|
-
tc.
|
|
141
|
-
tc.
|
|
131
|
+
# #237: @maxTokens is registered on BOTH prompt AND toolcall (a vendor-agnostic token
|
|
132
|
+
# budget), so the value is a SET of allowed subtypes, not a single one.
|
|
133
|
+
_TEMPLATE_SUBTYPE_ONLY_ATTRS: dict[str, frozenset[str]] = {
|
|
134
|
+
tc.TEMPLATE_ATTR_MAX_TOKENS: frozenset({tc.TEMPLATE_SUBTYPE_PROMPT, tc.TEMPLATE_SUBTYPE_TOOLCALL}),
|
|
135
|
+
tc.TEMPLATE_ATTR_REQUIRED_SLOTS: frozenset({tc.TEMPLATE_SUBTYPE_PROMPT}),
|
|
136
|
+
tc.TEMPLATE_ATTR_MODEL: frozenset({tc.TEMPLATE_SUBTYPE_PROMPT}),
|
|
137
|
+
tc.TEMPLATE_ATTR_RESPONSE_REF: frozenset({tc.TEMPLATE_SUBTYPE_PROMPT}),
|
|
138
|
+
tc.TEMPLATE_ATTR_PROMPT_STYLE: frozenset({tc.TEMPLATE_SUBTYPE_OUTPUT}),
|
|
139
|
+
tc.TEMPLATE_ATTR_KIND: frozenset({tc.TEMPLATE_SUBTYPE_OUTPUT}),
|
|
140
|
+
tc.TEMPLATE_ATTR_SUBJECT_REF: frozenset({tc.TEMPLATE_SUBTYPE_OUTPUT}),
|
|
141
|
+
tc.TEMPLATE_ATTR_HTML_BODY_REF: frozenset({tc.TEMPLATE_SUBTYPE_OUTPUT}),
|
|
142
|
+
tc.TEMPLATE_ATTR_TEXT_BODY_REF: frozenset({tc.TEMPLATE_SUBTYPE_OUTPUT}),
|
|
143
|
+
tc.TEMPLATE_ATTR_TOOL_NAME: frozenset({tc.TEMPLATE_SUBTYPE_TOOLCALL}),
|
|
142
144
|
}
|
|
143
145
|
|
|
144
146
|
# ---------------------------------------------------------------------------
|
|
@@ -437,18 +439,22 @@ def _validate_attr_schema(
|
|
|
437
439
|
|
|
438
440
|
# --- Check 1: required attrs must be present (uses node.attrs() = effective,
|
|
439
441
|
# so an inherited attr from the super chain satisfies the requirement) ---
|
|
440
|
-
|
|
441
|
-
for
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
442
|
+
# #236: an ABSTRACT node is a template, not instantiated — it may omit a required
|
|
443
|
+
# attr for concrete subtypes / `extends` to supply. Enforcement stays at the
|
|
444
|
+
# concrete level (a concrete's resolving attrs() must satisfy it). ADR-0039.
|
|
445
|
+
if not node.is_abstract:
|
|
446
|
+
present_attrs = node.attrs()
|
|
447
|
+
for schema in schemas:
|
|
448
|
+
if not schema.required:
|
|
449
|
+
continue
|
|
450
|
+
if schema.name not in present_attrs:
|
|
451
|
+
errors.append(
|
|
452
|
+
MetaError(
|
|
453
|
+
f"{_node_label(node)} is missing required attribute '@{schema.name}'",
|
|
454
|
+
ErrorCode.ERR_MISSING_REQUIRED_ATTR,
|
|
455
|
+
envelope=node.source,
|
|
456
|
+
)
|
|
450
457
|
)
|
|
451
|
-
)
|
|
452
458
|
|
|
453
459
|
# --- Checks 2 + 3: own attrs only (inherited attrs were already checked on
|
|
454
460
|
# the node that declared them; re-checking would double-report) ---
|
|
@@ -3002,13 +3008,14 @@ def _validate_templates(root: MetaData, errors: list[MetaError]) -> None:
|
|
|
3002
3008
|
# e.g. @maxTokens (prompt-only) on a template.output, or @promptStyle
|
|
3003
3009
|
# (output-only) on a template.prompt. ADR-0039: resolving — a subtype-only
|
|
3004
3010
|
# attr may be inherited via extends, so read the effective value.
|
|
3005
|
-
for attr_name,
|
|
3006
|
-
if tpl.get_meta_attr(attr_name) is not None and tpl.sub_type
|
|
3011
|
+
for attr_name, allowed_subs in _TEMPLATE_SUBTYPE_ONLY_ATTRS.items():
|
|
3012
|
+
if tpl.get_meta_attr(attr_name) is not None and tpl.sub_type not in allowed_subs:
|
|
3013
|
+
valid_on = " / ".join(f"template.{s}" for s in sorted(allowed_subs))
|
|
3007
3014
|
errors.append(MetaError(
|
|
3008
3015
|
code=ErrorCode.ERR_INVALID_TEMPLATE,
|
|
3009
3016
|
message=(
|
|
3010
3017
|
f'template.{tpl.sub_type} "{tpl.name}" carries @{attr_name}, '
|
|
3011
|
-
f"which is only valid on
|
|
3018
|
+
f"which is only valid on {valid_on}"
|
|
3012
3019
|
),
|
|
3013
3020
|
envelope=tpl.source,
|
|
3014
3021
|
))
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/field/field_constants.py
RENAMED
|
@@ -132,6 +132,11 @@ STRING_FORMAT_EMAIL = "email"
|
|
|
132
132
|
STRING_FORMAT_HOSTNAME = "hostname"
|
|
133
133
|
STRING_FORMAT_VALUES = (STRING_FORMAT_EMAIL, STRING_FORMAT_HOSTNAME)
|
|
134
134
|
|
|
135
|
+
# #234: opt a field.uri / field.inet OUT of strict well-formedness enforcement (optional boolean;
|
|
136
|
+
# default strict). When true, codegen binds a plain string (no URL/IP validator, no native type;
|
|
137
|
+
# field.inet uses a text column). Only on field.uri / field.inet. Mirrors TS FIELD_ATTR_LENIENT.
|
|
138
|
+
FIELD_ATTR_LENIENT = "lenient"
|
|
139
|
+
|
|
135
140
|
# @autoSet allowed values (cross-port).
|
|
136
141
|
AUTO_SET_ON_CREATE = "onCreate"
|
|
137
142
|
AUTO_SET_ON_UPDATE = "onUpdate"
|
|
@@ -167,15 +167,21 @@
|
|
|
167
167
|
"dataType": "string",
|
|
168
168
|
"extendsBase": true,
|
|
169
169
|
"description": "A URI/URL string (ADR-0036/0037 — a concept with a native type + behavior, so a subtype not a @stringFormat). Binds to TS string (TS has no native URI type, same as field.uuid); other ports bind to their native URI type (Java java.net.URI, C# System.Uri, Python urllib.parse, Kotlin java.net.URI) and parse scheme/authority/path. DB column is text (Postgres has no uri type). Codegen emits a URL/URI validator (TS Zod z.string().url()). v1 ships WITHOUT @kind — the native type subsumes url/urn; @kind is reserved for a later url|urn value-constraint.",
|
|
170
|
-
"whenToUse": "A field holds a URL or URI. Use it for a typed URI column + URL validation instead of a plain string."
|
|
170
|
+
"whenToUse": "A field holds a URL or URI. Use it for a typed URI column + URL validation instead of a plain string.",
|
|
171
|
+
"children": [
|
|
172
|
+
{ "type": "attr", "subType": "boolean", "name": "lenient", "min": 0, "max": 1, "description": "#234: opt this field out of strict well-formedness enforcement. When true, codegen binds a plain string (no URL/IP validator, no native URI/InetAddress type; field.inet uses a text column, not the native inet type) so a not-strictly-valid value round-trips unchanged. Default (absent/false) is strict: an absolute-scheme URI / an IPv4-or-IPv6 literal." }
|
|
173
|
+
]
|
|
171
174
|
},
|
|
172
175
|
{
|
|
173
176
|
"type": "field",
|
|
174
177
|
"subType": "inet",
|
|
175
178
|
"dataType": "string",
|
|
176
179
|
"extendsBase": true,
|
|
177
|
-
"description": "An IP-address string (IPv4 or IPv6) (ADR-0036/0037 — a concept with a native type + behavior, so a subtype not a @stringFormat). Binds to TS string (TS has no native IP type, same as field.uuid); other ports bind to their native IP type (Java java.net.InetAddress, C# System.Net.IPAddress, Python ipaddress, Kotlin java.net.InetAddress). DB column is the Postgres-native inet type. Codegen emits an
|
|
178
|
-
"whenToUse": "A field holds an IPv4 or IPv6 address. Use it for a native Postgres inet column + IP validation instead of a plain string."
|
|
180
|
+
"description": "An IP-address string (IPv4 or IPv6) (ADR-0036/0037 — a concept with a native type + behavior, so a subtype not a @stringFormat). Binds to TS string (TS has no native IP type, same as field.uuid); other ports bind to their native IP type (Java java.net.InetAddress, C# System.Net.IPAddress, Python ipaddress, Kotlin java.net.InetAddress). DB column is the Postgres-native inet type. Codegen emits an IPv4-or-IPv6 literal validator (a Zod regex union in TS — z.string().ip() was removed in Zod 4 — native IP-type parsing in the other ports); add @lenient to bind a plain string with no validator. v1 ships WITHOUT @kind — the native type subsumes ipv4/ipv6; @kind is reserved for a later ipv4|ipv6 value-constraint.",
|
|
181
|
+
"whenToUse": "A field holds an IPv4 or IPv6 address. Use it for a native Postgres inet column + IP validation instead of a plain string.",
|
|
182
|
+
"children": [
|
|
183
|
+
{ "type": "attr", "subType": "boolean", "name": "lenient", "min": 0, "max": 1, "description": "#234: opt this field out of strict well-formedness enforcement. When true, codegen binds a plain string (no URL/IP validator, no native URI/InetAddress type; field.inet uses a text column, not the native inet type) so a not-strictly-valid value round-trips unchanged. Default (absent/false) is strict: an absolute-scheme URI / an IPv4-or-IPv6 literal." }
|
|
184
|
+
]
|
|
179
185
|
}
|
|
180
186
|
]
|
|
181
187
|
}
|
|
@@ -69,7 +69,8 @@
|
|
|
69
69
|
{ "type": "attr", "subType": "string", "name": "toolName", "min": 1, "max": 1, "description": "Wire tool name surfaced to the LLM (vendor-specific format)." },
|
|
70
70
|
{ "type": "attr", "subType": "string", "name": "payloadRef", "min": 1, "max": 1, "description": "Output value-object the tool produces (resolved against the metamodel)." },
|
|
71
71
|
{ "type": "attr", "subType": "string", "name": "owner", "min": 0, "max": 1, "description": "Governance: the owner of this toolcall." },
|
|
72
|
-
{ "type": "attr", "subType": "string", "name": "since", "min": 0, "max": 1, "description": "Governance: the version this toolcall was introduced in." }
|
|
72
|
+
{ "type": "attr", "subType": "string", "name": "since", "min": 0, "max": 1, "description": "Governance: the version this toolcall was introduced in." },
|
|
73
|
+
{ "type": "attr", "subType": "int", "name": "maxTokens", "min": 0, "max": 1, "description": "Per-call token budget for the tool-call's structured response (LLM-specific). Vendor-agnostic config; peer of @maxTokens on template.prompt (#237)." }
|
|
73
74
|
]
|
|
74
75
|
}
|
|
75
76
|
]
|
|
@@ -15,7 +15,10 @@ model, so asserting against the read model would no longer exercise Pin 1 at all
|
|
|
15
15
|
"""
|
|
16
16
|
from __future__ import annotations
|
|
17
17
|
|
|
18
|
+
import importlib.util
|
|
18
19
|
import json
|
|
20
|
+
import sys
|
|
21
|
+
import tempfile
|
|
19
22
|
from pathlib import Path
|
|
20
23
|
|
|
21
24
|
import pytest
|
|
@@ -52,9 +55,22 @@ def _build_generated_model() -> type[BaseModel]:
|
|
|
52
55
|
artifact), not the plain ``Account`` read model: FR-036 Pin 1 lives on the wire
|
|
53
56
|
tier only."""
|
|
54
57
|
source = render_entity_model(_load_account_entity())
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
+
# Import the generated source as a REAL module rather than exec'ing it into a
|
|
59
|
+
# bare dict: under ``from __future__ import annotations`` Pydantic resolves
|
|
60
|
+
# type annotations lazily via the class's module globals, so a non-builtin
|
|
61
|
+
# import (e.g. ``AnyUrl``/``IPvAnyAddress`` for field.uri/field.inet) only
|
|
62
|
+
# resolves when ``__name__`` and the module's imports are in scope. A bare
|
|
63
|
+
# exec namespace has no ``__name__`` (forward refs fall back to builtins and
|
|
64
|
+
# fail — #234); a proper module import mirrors the TS runner's temp-module.
|
|
65
|
+
tmp_dir = tempfile.mkdtemp()
|
|
66
|
+
mod_path = Path(tmp_dir) / "generated_account.py"
|
|
67
|
+
mod_path.write_text(source)
|
|
68
|
+
spec = importlib.util.spec_from_file_location("generated_account", mod_path)
|
|
69
|
+
assert spec and spec.loader
|
|
70
|
+
module = importlib.util.module_from_spec(spec)
|
|
71
|
+
sys.modules["generated_account"] = module
|
|
72
|
+
spec.loader.exec_module(module)
|
|
73
|
+
model = module.AccountCreate
|
|
58
74
|
assert isinstance(model, type) and issubclass(model, BaseModel)
|
|
59
75
|
return model
|
|
60
76
|
|
|
@@ -51,6 +51,7 @@ def test_template_toolcall_attr_schema_does_not_inherit_generic_attrs() -> None:
|
|
|
51
51
|
tc.TEMPLATE_ATTR_PAYLOAD_REF,
|
|
52
52
|
tc.TEMPLATE_ATTR_OWNER,
|
|
53
53
|
tc.TEMPLATE_ATTR_SINCE,
|
|
54
|
+
tc.TEMPLATE_ATTR_MAX_TOKENS, # #237 — vendor-agnostic per-call token budget
|
|
54
55
|
}
|
|
55
56
|
assert tc.TEMPLATE_ATTR_TEXT_REF not in attrs, "toolcall must NOT carry @textRef"
|
|
56
57
|
assert tc.TEMPLATE_ATTR_FORMAT not in attrs, "toolcall must NOT carry @format"
|
|
@@ -59,6 +60,7 @@ def test_template_toolcall_attr_schema_does_not_inherit_generic_attrs() -> None:
|
|
|
59
60
|
assert attrs[tc.TEMPLATE_ATTR_PAYLOAD_REF].required is True
|
|
60
61
|
assert attrs[tc.TEMPLATE_ATTR_OWNER].required is False
|
|
61
62
|
assert attrs[tc.TEMPLATE_ATTR_SINCE].required is False
|
|
63
|
+
assert attrs[tc.TEMPLATE_ATTR_MAX_TOKENS].required is False
|
|
62
64
|
|
|
63
65
|
|
|
64
66
|
# ---------------------------------------------------------------------------
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/extract_delegate_emitter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/entity_model.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/extractor_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/fr019_shared_enum.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/payload_vo_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/router_generator.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/generators/template_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/output_format_spec_emitter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/template_codegen/__init__.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/template_codegen/output_pattern.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/template_codegen/template_data.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/codegen/template_codegen/template_spec.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/sources/directory_source.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/sources/meta_data_source.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/validate_source_parameter_ref.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/loader/validate_source_physical_names.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/identity/identity_constants.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/identity/meta_identity.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/index/index_constants.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/meta_object_aware.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/object_class_registry.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/object_constants.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/object/object_extract.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/relationship/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/core/validator/validator_constants.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/db/db_constants.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/db/db_provider.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/origin/__init__.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/origin/meta_origin.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/source/__init__.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/persistence/source/meta_source.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/layout/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/layout/meta_layout.py
RENAMED
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/ui/ui_provider.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/view/__init__.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/view/meta_view.py
RENAMED
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/presentation/view/view_constants.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{metaobjects-0.19.6 → metaobjects-0.19.8}/src/metaobjects/meta/template/template_constants.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|