pyglove 0.4.5.dev202501160808__tar.gz → 0.4.5.dev202501180807__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.
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/PKG-INFO +1 -1
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/derived_test.py +1 -1
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/object.py +3 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/object_test.py +26 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/class_schema.py +41 -10
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/class_schema_test.py +1 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove.egg-info/PKG-INFO +1 -1
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/LICENSE +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/README.md +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/errors.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/errors_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/execution.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/execution_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/function_generation.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/function_generation_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/parsing.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/parsing_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/permissions.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/permissions_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/detouring/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/detouring/class_detour.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/detouring/class_detour_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/base_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/categorical.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/categorical_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/custom.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/custom_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/deduping.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/deduping_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/dna_generator.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/dna_generator_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/numerical.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/numerical_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/random.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/random_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/space.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/space_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/sweeping.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/sweeping_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/categorical.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/categorical_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/custom.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/custom_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/derived.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/dynamic_evaluation.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/dynamic_evaluation_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/evolvable.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/evolvable_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/iter.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/iter_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/numerical.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/numerical_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/object_template.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/object_template_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/io/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/io/file_system.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/io/file_system_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/io/sequence.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/io/sequence_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/logging.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/logging_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/patching/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/patching/object_factory.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/patching/object_factory_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/patching/pattern_based.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/patching/pattern_based_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/patching/rule_based.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/patching/rule_based_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/base_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/boilerplate.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/boilerplate_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/class_wrapper.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/class_wrapper_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/compounding.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/compounding_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/contextual_object.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/contextual_object_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/dict.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/dict_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/diff.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/diff_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/flags.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/flags_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/functor.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/functor_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/inferred.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/inferred_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/list.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/list_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/origin.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/origin_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/pure_symbolic.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/ref.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/ref_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/symbolize.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/symbolize_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/backend.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/backend_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/early_stopping.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/local_backend.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/protocols.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/protocols_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/sample.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/sample_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/annotated.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/annotated_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/annotation_conversion.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/annotation_conversion_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/callable_ext.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/callable_ext_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/callable_signature.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/callable_signature_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/custom_typing.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/inspect.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/inspect_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/key_specs.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/key_specs_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/pytype_support.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/type_conversion.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/type_conversion_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/typed_missing.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/typed_missing_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/value_specs.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/value_specs_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/common_traits.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/common_traits_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/contextual.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/contextual_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/docstr_utils.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/docstr_utils_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/error_utils.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/error_utils_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/formatting.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/formatting_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/hierarchical.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/hierarchical_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/json_conversion.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/json_conversion_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/missing.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/missing_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/text_color.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/text_color_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/thread_local.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/thread_local_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/timing.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/timing_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/value_location.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/value_location_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/base_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/base_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/label.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/label_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/progress_bar.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/progress_bar_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/tab.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/tab_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/tooltip.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/controls/tooltip_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/tree_view.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/tree_view_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/early_stopping/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/early_stopping/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/early_stopping/base_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/early_stopping/step_wise.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/early_stopping/step_wise_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/base_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/hill_climb.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/hill_climb_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/mutators.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/mutators_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/neat.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/neat_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/nsga2.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/nsga2_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/recombinators.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/recombinators_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/regularized_evolution.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/regularized_evolution_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/selectors.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/selectors_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/where.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/where_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/mutfun/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/mutfun/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/mutfun/base_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/mutfun/basic_ops.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/mutfun/basic_ops_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/__init__.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/base.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/base_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/maths.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/maths_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/randoms.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/randoms_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/step_wise.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/step_wise_test.py +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove.egg-info/SOURCES.txt +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove.egg-info/dependency_links.txt +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove.egg-info/requires.txt +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove.egg-info/top_level.txt +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/setup.cfg +0 -0
- {pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/setup.py +0 -0
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/derived_test.py
RENAMED
@@ -120,7 +120,7 @@ class ValueReferenceTest(unittest.TestCase):
|
|
120
120
|
sd.y = ValueReference(['x'])
|
121
121
|
# TODO(daiyip): Enable this test once static analysis is done
|
122
122
|
# on derived values.
|
123
|
-
# with self.
|
123
|
+
# with self.assertRaisesRegex(
|
124
124
|
# TypeError, ''):
|
125
125
|
# sd.z = ValueReference(['x'])
|
126
126
|
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/object.py
RENAMED
@@ -96,6 +96,7 @@ class ObjectMeta(abc.ABCMeta):
|
|
96
96
|
base_schema_list=[cls.__schema__] if extend else [],
|
97
97
|
allow_nonconst_keys=True,
|
98
98
|
metadata=metadata,
|
99
|
+
for_cls=cls,
|
99
100
|
)
|
100
101
|
cls.apply_schema(schema)
|
101
102
|
|
@@ -193,6 +194,7 @@ class ObjectMeta(abc.ABCMeta):
|
|
193
194
|
field.value.freeze(attr_value, apply_before_use=False)
|
194
195
|
else:
|
195
196
|
field.value.set_default(attr_value)
|
197
|
+
field.set_origin(cls)
|
196
198
|
|
197
199
|
|
198
200
|
# Use ObjectMeta as meta class to inherit schema and type_name property.
|
@@ -344,6 +346,7 @@ class Object(base.Symbolic, metaclass=ObjectMeta):
|
|
344
346
|
base_schema_list=base_schema_list,
|
345
347
|
allow_nonconst_keys=True,
|
346
348
|
metadata={},
|
349
|
+
for_cls=user_cls,
|
347
350
|
)
|
348
351
|
|
349
352
|
# Freeze callable symbolic attributes if they are provided as methods.
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/object_test.py
RENAMED
@@ -1914,6 +1914,32 @@ class InheritanceTest(unittest.TestCase):
|
|
1914
1914
|
self.assertEqual(d.x, 'foo')
|
1915
1915
|
self.assertEqual(d.foo(), 'B')
|
1916
1916
|
|
1917
|
+
def test_multi_inheritance2(self):
|
1918
|
+
|
1919
|
+
class A(Object):
|
1920
|
+
x: typing.Callable[[], Any]
|
1921
|
+
|
1922
|
+
class B(A):
|
1923
|
+
def x(self):
|
1924
|
+
return 1
|
1925
|
+
|
1926
|
+
class C(A):
|
1927
|
+
pass
|
1928
|
+
|
1929
|
+
class D(C, B):
|
1930
|
+
pass
|
1931
|
+
|
1932
|
+
self.assertIs(D.__schema__['x'].default_value, B.x)
|
1933
|
+
|
1934
|
+
class E(A):
|
1935
|
+
def x(self):
|
1936
|
+
return 2
|
1937
|
+
|
1938
|
+
class F(E, B):
|
1939
|
+
pass
|
1940
|
+
|
1941
|
+
self.assertIs(F.__schema__['x'].default_value, E.x)
|
1942
|
+
|
1917
1943
|
|
1918
1944
|
class InitSignatureTest(unittest.TestCase):
|
1919
1945
|
"""Tests for `pg.Object.__init__` signature."""
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/class_schema.py
RENAMED
@@ -593,7 +593,9 @@ class Field(utils.Formattable, utils.JSONConvertible):
|
|
593
593
|
key_spec: Union[KeySpec, str],
|
594
594
|
value_spec: ValueSpec,
|
595
595
|
description: Optional[str] = None,
|
596
|
-
metadata: Optional[Dict[str, Any]] = None
|
596
|
+
metadata: Optional[Dict[str, Any]] = None,
|
597
|
+
origin: Optional[Type[Any]] = None,
|
598
|
+
) -> None:
|
597
599
|
"""Constructor.
|
598
600
|
|
599
601
|
Args:
|
@@ -602,6 +604,7 @@ class Field(utils.Formattable, utils.JSONConvertible):
|
|
602
604
|
value_spec: Value specification of the field.
|
603
605
|
description: Description of the field.
|
604
606
|
metadata: A dict of objects as metadata for the field.
|
607
|
+
origin: The class that this field originates from.
|
605
608
|
|
606
609
|
Raises:
|
607
610
|
ValueError: metadata is not a dict.
|
@@ -612,6 +615,7 @@ class Field(utils.Formattable, utils.JSONConvertible):
|
|
612
615
|
self._key = key_spec
|
613
616
|
self._value = value_spec
|
614
617
|
self._description = description
|
618
|
+
self._origin = origin
|
615
619
|
|
616
620
|
if metadata and not isinstance(metadata, dict):
|
617
621
|
raise ValueError('metadata must be a dict.')
|
@@ -667,6 +671,15 @@ class Field(utils.Formattable, utils.JSONConvertible):
|
|
667
671
|
"""
|
668
672
|
return self._metadata
|
669
673
|
|
674
|
+
@property
|
675
|
+
def origin(self) -> Optional[Type[Any]]:
|
676
|
+
"""The class that this field originates from."""
|
677
|
+
return self._origin
|
678
|
+
|
679
|
+
def set_origin(self, origin: Type[Any]) -> None:
|
680
|
+
"""Sets the origin (source class) of this field."""
|
681
|
+
self._origin = origin
|
682
|
+
|
670
683
|
def extend(self, base_field: 'Field') -> 'Field':
|
671
684
|
"""Extend current field based on a base field."""
|
672
685
|
self.key.extend(base_field.key)
|
@@ -745,6 +758,7 @@ class Field(utils.Formattable, utils.JSONConvertible):
|
|
745
758
|
('value', self._value, None),
|
746
759
|
('description', self._description, None),
|
747
760
|
('metadata', self._metadata, {}),
|
761
|
+
('origin', self._origin, None),
|
748
762
|
],
|
749
763
|
label=self.__class__.__name__,
|
750
764
|
compact=compact,
|
@@ -869,7 +883,9 @@ class Schema(utils.Formattable, utils.JSONConvertible):
|
|
869
883
|
description: Optional[str] = None,
|
870
884
|
*,
|
871
885
|
allow_nonconst_keys: bool = False,
|
872
|
-
metadata: Optional[Dict[str, Any]] = None
|
886
|
+
metadata: Optional[Dict[str, Any]] = None,
|
887
|
+
for_cls: Optional[Type[Any]] = None,
|
888
|
+
):
|
873
889
|
"""Constructor.
|
874
890
|
|
875
891
|
Args:
|
@@ -882,6 +898,7 @@ class Schema(utils.Formattable, utils.JSONConvertible):
|
|
882
898
|
description: Optional str as the description for the schema.
|
883
899
|
allow_nonconst_keys: Whether immediate fields can use non-const keys.
|
884
900
|
metadata: Optional dict of user objects as schema-level metadata.
|
901
|
+
for_cls: Optional class that this schema applies to.
|
885
902
|
|
886
903
|
Raises:
|
887
904
|
TypeError: Argument `fields` is not a list.
|
@@ -903,6 +920,11 @@ class Schema(utils.Formattable, utils.JSONConvertible):
|
|
903
920
|
self._description = description
|
904
921
|
self._metadata = metadata or {}
|
905
922
|
|
923
|
+
if for_cls is not None:
|
924
|
+
for f in fields:
|
925
|
+
if f.origin is None:
|
926
|
+
f.set_origin(for_cls)
|
927
|
+
|
906
928
|
self._dynamic_field = None
|
907
929
|
for f in fields:
|
908
930
|
if not f.key.is_const:
|
@@ -938,21 +960,27 @@ class Schema(utils.Formattable, utils.JSONConvertible):
|
|
938
960
|
Returns:
|
939
961
|
The merged schema.
|
940
962
|
"""
|
941
|
-
|
942
|
-
fields = []
|
963
|
+
fields = {}
|
943
964
|
kw_field = None
|
944
965
|
for schema in schema_list:
|
945
966
|
for key, field in schema.fields.items():
|
946
|
-
if key.is_const
|
947
|
-
fields
|
948
|
-
|
949
|
-
|
967
|
+
if key.is_const:
|
968
|
+
if key not in fields or (
|
969
|
+
field.origin is not None
|
970
|
+
and fields[key].origin is not None
|
971
|
+
and issubclass(field.origin, fields[key].origin)
|
972
|
+
):
|
973
|
+
fields[key] = field
|
974
|
+
elif kw_field is None:
|
950
975
|
kw_field = field
|
951
976
|
|
952
977
|
if kw_field is not None:
|
953
|
-
fields.
|
978
|
+
fields[kw_field.key] = kw_field
|
954
979
|
return Schema(
|
955
|
-
fields,
|
980
|
+
list(fields.values()),
|
981
|
+
name=name,
|
982
|
+
description=description,
|
983
|
+
allow_nonconst_keys=True
|
956
984
|
)
|
957
985
|
|
958
986
|
def extend(self, base: 'Schema') -> 'Schema':
|
@@ -1415,6 +1443,7 @@ def create_schema(
|
|
1415
1443
|
allow_nonconst_keys: bool = False,
|
1416
1444
|
metadata: Optional[Dict[str, Any]] = None,
|
1417
1445
|
description: Optional[str] = None,
|
1446
|
+
for_cls: Optional[Type[Any]] = None,
|
1418
1447
|
parent_module: Optional[types.ModuleType] = None
|
1419
1448
|
) -> Schema:
|
1420
1449
|
"""Creates ``Schema`` from a list of ``Field``s or equivalences.
|
@@ -1456,6 +1485,7 @@ def create_schema(
|
|
1456
1485
|
allow_nonconst_keys: Whether to allow non const keys in schema.
|
1457
1486
|
metadata: Optional dict of user objects as schema-level metadata.
|
1458
1487
|
description: Optional description of the schema.
|
1488
|
+
for_cls: (Optional) the class that this schema applies to.
|
1459
1489
|
parent_module: (Optional) parent module for defining this schema, which will
|
1460
1490
|
be used for forward reference lookup.
|
1461
1491
|
|
@@ -1479,6 +1509,7 @@ def create_schema(
|
|
1479
1509
|
allow_nonconst_keys=allow_nonconst_keys,
|
1480
1510
|
metadata=metadata,
|
1481
1511
|
description=description,
|
1512
|
+
for_cls=for_cls,
|
1482
1513
|
)
|
1483
1514
|
|
1484
1515
|
|
@@ -107,6 +107,7 @@ class FieldTest(unittest.TestCase):
|
|
107
107
|
self.assertEqual(f.description, 'a field')
|
108
108
|
self.assertIsInstance(f.metadata, dict)
|
109
109
|
self.assertEqual(len(f.metadata), 0)
|
110
|
+
self.assertIsNone(f.origin)
|
110
111
|
|
111
112
|
# Cover the self comparison in __eq__.
|
112
113
|
self.assertEqual(f, f)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/errors.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/errors_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/execution.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/parsing.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/parsing_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/coding/permissions.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/detouring/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/categorical.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/custom_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/deduping.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/deduping_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/dna_generator.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/numerical.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/numerical_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/random_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/space_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/sweeping.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/geno/sweeping_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/categorical.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/custom.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/custom_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/derived.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/evolvable.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/evolvable_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/iter_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/numerical.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/hyper/numerical_test.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/io/file_system.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/io/file_system_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/io/sequence_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/logging_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/patching/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/patching/rule_based.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/base.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/boilerplate.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/compounding.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/dict.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/dict_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/diff.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/diff_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/flags.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/flags_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/functor.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/inferred.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/list.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/list_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/origin.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/origin_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/ref.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/ref_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/symbolic/symbolize.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/backend.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/backend_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/local_backend.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/protocols.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/sample.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/tuning/sample_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/annotated.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/callable_ext.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/custom_typing.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/inspect.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/inspect_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/key_specs.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/typed_missing.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/typing/value_specs.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/common_traits.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/contextual.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/docstr_utils.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/error_utils.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/formatting.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/hierarchical.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/missing.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/missing_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/text_color.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/thread_local.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/timing.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/timing_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/utils/value_location.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/base.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/base_test.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
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/core/views/html/tree_view.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/early_stopping/base.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/base.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/hill_climb.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/mutators.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/neat.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/neat_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/nsga2.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/nsga2_test.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/selectors.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/where.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/evolution/where_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/mutfun/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/mutfun/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/mutfun/basic_ops.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/mutfun/basic_ops_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/maths.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/maths_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/randoms.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/randoms_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove/ext/scalars/step_wise.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove.egg-info/SOURCES.txt
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove.egg-info/requires.txt
RENAMED
File without changes
|
{pyglove-0.4.5.dev202501160808 → pyglove-0.4.5.dev202501180807}/pyglove.egg-info/top_level.txt
RENAMED
File without changes
|
File without changes
|
File without changes
|