pyglove 0.4.5.dev202412110809__tar.gz → 0.4.5.dev202412130809__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.dev202412110809 → pyglove-0.4.5.dev202412130809}/PKG-INFO +5 -2
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/README.md +4 -1
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/label.py +1 -1
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/label_test.py +6 -6
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/progress_bar_test.py +2 -2
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/tab.py +80 -1
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/tab_test.py +34 -1
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove.egg-info/PKG-INFO +5 -2
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/LICENSE +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/detouring/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/detouring/class_detour.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/detouring/class_detour_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/base_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/categorical.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/categorical_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/custom.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/custom_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/deduping.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/deduping_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/dna_generator.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/dna_generator_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/numerical.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/numerical_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/random.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/random_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/space.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/space_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/sweeping.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/sweeping_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/categorical.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/categorical_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/custom.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/custom_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/derived.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/derived_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/dynamic_evaluation.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/dynamic_evaluation_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/evolvable.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/evolvable_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/iter.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/iter_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/numerical.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/numerical_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/object_template.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/object_template_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/io/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/io/file_system.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/io/file_system_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/io/sequence.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/io/sequence_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/logging.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/logging_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/codegen.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/codegen_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/common_traits.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/common_traits_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/docstr_utils.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/docstr_utils_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/error_utils.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/error_utils_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/formatting.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/formatting_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/hierarchical.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/hierarchical_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/json_conversion.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/json_conversion_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/missing.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/missing_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/thread_local.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/thread_local_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/timing.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/timing_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/value_location.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/value_location_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/patching/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/patching/object_factory.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/patching/object_factory_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/patching/pattern_based.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/patching/pattern_based_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/patching/rule_based.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/patching/rule_based_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/base_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/boilerplate.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/boilerplate_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/class_wrapper.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/class_wrapper_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/compounding.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/compounding_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/dict.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/dict_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/diff.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/diff_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/flags.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/flags_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/functor.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/functor_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/inferred.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/inferred_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/list.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/list_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/object.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/object_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/origin.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/origin_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/pure_symbolic.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/ref.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/ref_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/symbolize.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/symbolize_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/backend.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/backend_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/early_stopping.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/local_backend.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/protocols.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/protocols_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/sample.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/sample_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/annotated.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/annotated_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/annotation_conversion.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/annotation_conversion_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/callable_ext.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/callable_ext_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/callable_signature.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/callable_signature_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/class_schema.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/class_schema_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/custom_typing.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/inspect.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/inspect_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/key_specs.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/key_specs_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/pytype_support.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/type_conversion.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/type_conversion_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/typed_missing.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/typed_missing_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/value_specs.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/value_specs_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/base_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/base_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/progress_bar.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/tooltip.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/controls/tooltip_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/tree_view.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/tree_view_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/early_stopping/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/early_stopping/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/early_stopping/base_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/early_stopping/step_wise.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/early_stopping/step_wise_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/base_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/hill_climb.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/hill_climb_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/mutators.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/mutators_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/neat.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/neat_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/nsga2.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/nsga2_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/recombinators.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/recombinators_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/regularized_evolution.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/regularized_evolution_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/selectors.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/selectors_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/where.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/where_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/mutfun/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/mutfun/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/mutfun/base_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/mutfun/basic_ops.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/mutfun/basic_ops_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/__init__.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/base.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/base_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/maths.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/maths_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/randoms.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/randoms_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/step_wise.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/step_wise_test.py +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove.egg-info/SOURCES.txt +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove.egg-info/dependency_links.txt +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove.egg-info/requires.txt +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove.egg-info/top_level.txt +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/setup.cfg +0 -0
- {pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/setup.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pyglove
|
3
|
-
Version: 0.4.5.
|
3
|
+
Version: 0.4.5.dev202412130809
|
4
4
|
Summary: PyGlove: A library for manipulating Python objects.
|
5
5
|
Home-page: https://github.com/google/pyglove
|
6
6
|
Author: PyGlove Authors
|
@@ -72,7 +72,7 @@ It's commonly used in:
|
|
72
72
|
PyGlove has been [published](https://proceedings.neurips.cc/paper/2020/file/012a91467f210472fab4e11359bbfef6-Paper.pdf)
|
73
73
|
at NeurIPS 2020. It is widely used within [Alphabet](https://abc.xyz/), including Google Research, Google Cloud, Youtube and Waymo.
|
74
74
|
|
75
|
-
PyGlove is developed by Daiyi Peng and colleagues
|
75
|
+
PyGlove is developed by Daiyi Peng and colleagues at [Google Brain](https://research.google/teams/brain/).
|
76
76
|
|
77
77
|
|
78
78
|
## Hello PyGlove
|
@@ -145,6 +145,9 @@ pip install pyglove --pre
|
|
145
145
|
* [Interactive SVG: Components for Direct Manipulation](https://github.com/google/pyglove/blob/main/docs/notebooks/python/interactive_svg.ipynb)
|
146
146
|
* [Where is the Duck: Developing Context-aware Component](https://github.com/google/pyglove/blob/main/docs/notebooks/python/where_is_the_duck.ipynb)
|
147
147
|
|
148
|
+
* Interactive Programming
|
149
|
+
* [Viewing PyGlove objects in HTML](https://colab.research.google.com/github/google/pyglove/blob/main/docs/notebooks/gui/html_view.ipynb)
|
150
|
+
|
148
151
|
## Citing PyGlove
|
149
152
|
|
150
153
|
```
|
@@ -47,7 +47,7 @@ It's commonly used in:
|
|
47
47
|
PyGlove has been [published](https://proceedings.neurips.cc/paper/2020/file/012a91467f210472fab4e11359bbfef6-Paper.pdf)
|
48
48
|
at NeurIPS 2020. It is widely used within [Alphabet](https://abc.xyz/), including Google Research, Google Cloud, Youtube and Waymo.
|
49
49
|
|
50
|
-
PyGlove is developed by Daiyi Peng and colleagues
|
50
|
+
PyGlove is developed by Daiyi Peng and colleagues at [Google Brain](https://research.google/teams/brain/).
|
51
51
|
|
52
52
|
|
53
53
|
## Hello PyGlove
|
@@ -120,6 +120,9 @@ pip install pyglove --pre
|
|
120
120
|
* [Interactive SVG: Components for Direct Manipulation](https://github.com/google/pyglove/blob/main/docs/notebooks/python/interactive_svg.ipynb)
|
121
121
|
* [Where is the Duck: Developing Context-aware Component](https://github.com/google/pyglove/blob/main/docs/notebooks/python/where_is_the_duck.ipynb)
|
122
122
|
|
123
|
+
* Interactive Programming
|
124
|
+
* [Viewing PyGlove objects in HTML](https://colab.research.google.com/github/google/pyglove/blob/main/docs/notebooks/gui/html_view.ipynb)
|
125
|
+
|
123
126
|
## Citing PyGlove
|
124
127
|
|
125
128
|
```
|
@@ -34,7 +34,7 @@ class LabelTest(TestCase):
|
|
34
34
|
label = label_lib.Label('foo')
|
35
35
|
self.assertIsNone(label.tooltip)
|
36
36
|
self.assertIsNone(label.link)
|
37
|
-
self.assert_html_content(label, '<
|
37
|
+
self.assert_html_content(label, '<span class="label">foo</span>')
|
38
38
|
with self.assertRaisesRegex(ValueError, 'Non-interactive .*'):
|
39
39
|
label.update('bar')
|
40
40
|
|
@@ -54,7 +54,7 @@ class LabelTest(TestCase):
|
|
54
54
|
self.assert_html_content(
|
55
55
|
label,
|
56
56
|
(
|
57
|
-
'<div class="label-container"><
|
57
|
+
'<div class="label-container"><span class="label">foo</span>'
|
58
58
|
'<span class="tooltip">bar</span></div>'
|
59
59
|
)
|
60
60
|
)
|
@@ -130,7 +130,7 @@ class LabelTest(TestCase):
|
|
130
130
|
|
131
131
|
def test_badge(self):
|
132
132
|
badge = label_lib.Badge('foo')
|
133
|
-
self.assert_html_content(badge, '<
|
133
|
+
self.assert_html_content(badge, '<span class="label badge">foo</span>')
|
134
134
|
|
135
135
|
|
136
136
|
class LabelGroupTest(TestCase):
|
@@ -140,9 +140,9 @@ class LabelGroupTest(TestCase):
|
|
140
140
|
self.assert_html_content(
|
141
141
|
group,
|
142
142
|
(
|
143
|
-
'<div class="label-group"><
|
144
|
-
'<
|
145
|
-
'<
|
143
|
+
'<div class="label-group"><span class="label group-name">baz</span>'
|
144
|
+
'<span class="label group-value">foo</span>'
|
145
|
+
'<span class="label group-value">bar</span></div>'
|
146
146
|
)
|
147
147
|
)
|
148
148
|
|
@@ -42,8 +42,8 @@ class ProgressBarTest(unittest.TestCase):
|
|
42
42
|
f'<div class="sub-progress foo" id="{bar["foo"].element_id()}">'
|
43
43
|
'</div><div class="sub-progress bar" '
|
44
44
|
f'id="{bar["bar"].element_id()}"></div></div>'
|
45
|
-
'<div class="label-container"><
|
46
|
-
f' id="{bar._progress_label.element_id()}">n/a</
|
45
|
+
'<div class="label-container"><span class="label progress-label"'
|
46
|
+
f' id="{bar._progress_label.element_id()}">n/a</span><span class='
|
47
47
|
f'"tooltip" id="{bar._progress_label.tooltip.element_id()}">'
|
48
48
|
'Not started</span></div></div>'
|
49
49
|
)
|
@@ -13,7 +13,7 @@
|
|
13
13
|
# limitations under the License.
|
14
14
|
"""Tab control."""
|
15
15
|
|
16
|
-
from typing import Annotated, List, Literal, Union
|
16
|
+
from typing import Annotated, List, Literal, Optional, Union
|
17
17
|
|
18
18
|
from pyglove.core.symbolic import flags as pg_flags
|
19
19
|
from pyglove.core.symbolic import object as pg_object
|
@@ -44,6 +44,11 @@ class Tab(pg_object.Object):
|
|
44
44
|
'The CSS classes of the tab.'
|
45
45
|
] = []
|
46
46
|
|
47
|
+
name: Annotated[
|
48
|
+
Optional[str],
|
49
|
+
'An optional name that can be used to identify a tab under a tab control'
|
50
|
+
] = None
|
51
|
+
|
47
52
|
|
48
53
|
@pg_object.use_init_args(
|
49
54
|
['tabs', 'selected', 'tab_position', 'id', 'css_classes', 'styles']
|
@@ -87,10 +92,84 @@ class TabControl(HtmlControl):
|
|
87
92
|
position='beforeend',
|
88
93
|
)
|
89
94
|
|
95
|
+
def insert(self, index_or_name: Union[int, str], tab: Tab) -> None:
|
96
|
+
"""Inserts a tab before a tab identified by index or name."""
|
97
|
+
index = self.indexof(index_or_name)
|
98
|
+
if index == -1:
|
99
|
+
raise ValueError(f'Tab not found: {index_or_name!r}')
|
100
|
+
with pg_flags.notify_on_change(False):
|
101
|
+
self.tabs.insert(index, tab)
|
102
|
+
|
103
|
+
self._insert_adjacent_html(
|
104
|
+
f"""
|
105
|
+
const elem = document.querySelectorAll('#{self.element_id()}-button-group > .tab-button')[{index}];
|
106
|
+
""",
|
107
|
+
self._tab_button(tab, len(self.tabs) - 1),
|
108
|
+
position='beforebegin',
|
109
|
+
)
|
110
|
+
self._insert_adjacent_html(
|
111
|
+
f"""
|
112
|
+
const elem = document.querySelectorAll('#{self.element_id()}-content-group > .tab-content')[{index}];
|
113
|
+
""",
|
114
|
+
self._tab_content(tab, len(self.tabs) - 1),
|
115
|
+
position='beforebegin',
|
116
|
+
)
|
117
|
+
|
118
|
+
def indexof(self, index_or_name: Union[int, str]) -> int:
|
119
|
+
if isinstance(index_or_name, int):
|
120
|
+
index = index_or_name
|
121
|
+
if index >= len(self.tabs):
|
122
|
+
return len(self.tabs) - 1
|
123
|
+
elif index < -len(self.tabs):
|
124
|
+
return -1
|
125
|
+
elif index < 0:
|
126
|
+
index = index + len(self.tabs)
|
127
|
+
return index
|
128
|
+
else:
|
129
|
+
name = index_or_name
|
130
|
+
assert isinstance(name, str), name
|
131
|
+
for i, tab in enumerate(self.tabs):
|
132
|
+
if tab.name == name:
|
133
|
+
return i
|
134
|
+
return -1
|
135
|
+
|
90
136
|
def extend(self, tabs: List[Tab]) -> None:
|
91
137
|
for tab in tabs:
|
92
138
|
self.append(tab)
|
93
139
|
|
140
|
+
def select(
|
141
|
+
self,
|
142
|
+
index_or_name: Union[int, str, List[str]]) -> Union[int, str]:
|
143
|
+
"""Selects a tab identified by an index or name.
|
144
|
+
|
145
|
+
Args:
|
146
|
+
index_or_name: The index or name of the tab to select. If a list of names
|
147
|
+
is provided, the first name in the list that is found will be selected.
|
148
|
+
|
149
|
+
Returns:
|
150
|
+
The index (if the index was provided) or name of the selected tab.
|
151
|
+
"""
|
152
|
+
selected_name = index_or_name if isinstance(index_or_name, str) else None
|
153
|
+
index = -1
|
154
|
+
if isinstance(index_or_name, list):
|
155
|
+
for name in index_or_name:
|
156
|
+
index = self.indexof(name)
|
157
|
+
if index != -1:
|
158
|
+
selected_name = name
|
159
|
+
break
|
160
|
+
else:
|
161
|
+
index = self.indexof(index_or_name)
|
162
|
+
if index == -1:
|
163
|
+
raise ValueError(f'Tab not found: {index_or_name!r}')
|
164
|
+
self._sync_members(selected=index)
|
165
|
+
self._run_javascript(
|
166
|
+
f"""
|
167
|
+
const tabButtons = document.querySelectorAll('#{self.element_id()}-button-group > .tab-button');
|
168
|
+
tabButtons[{index}].click();
|
169
|
+
"""
|
170
|
+
)
|
171
|
+
return selected_name or index
|
172
|
+
|
94
173
|
def _to_html(self, **kwargs):
|
95
174
|
return Html.element(
|
96
175
|
'table',
|
@@ -36,7 +36,7 @@ class TabControlTest(unittest.TestCase):
|
|
36
36
|
elem_id = tab.element_id()
|
37
37
|
self.assert_html_content(
|
38
38
|
tab,
|
39
|
-
f"""<table class="tab-control"><tr><td><div class="tab-button-group top" id="{elem_id}-button-group"><button class="tab-button selected foo" onclick="openTab(event, '{elem_id}', '{elem_id}-0')"><
|
39
|
+
f"""<table class="tab-control"><tr><td><div class="tab-button-group top" id="{elem_id}-button-group"><button class="tab-button selected foo" onclick="openTab(event, '{elem_id}', '{elem_id}-0')"><span class="label">foo</span></button><button class="tab-button" onclick="openTab(event, '{elem_id}', '{elem_id}-1')"><span class="label">bar</span></button></div></td></tr><tr><td><div class="tab-content-group top" id="{elem_id}-content-group"><div class="tab-content selected foo" id="{elem_id}-0"><h1>foo</h1></div><div class="tab-content" id="{elem_id}-1"><h1>bar</h1></div></div></td></tr></table>"""
|
40
40
|
)
|
41
41
|
with tab.track_scripts() as scripts:
|
42
42
|
tab.extend([
|
@@ -48,6 +48,39 @@ class TabControlTest(unittest.TestCase):
|
|
48
48
|
tab_lib.Tab('qux', base.Html('<h1>qux</h1>')),
|
49
49
|
])
|
50
50
|
self.assertEqual(len(scripts), 6)
|
51
|
+
with tab.track_scripts() as scripts:
|
52
|
+
tab.insert(0, tab_lib.Tab('x', 'foo', name='x'))
|
53
|
+
self.assertEqual(len(scripts), 2)
|
54
|
+
self.assertEqual(len(tab.tabs), 5)
|
55
|
+
self.assertEqual(tab.indexof(-1), 4)
|
56
|
+
self.assertEqual(tab.indexof(3), 3)
|
57
|
+
self.assertEqual(tab.indexof(10), 4)
|
58
|
+
self.assertEqual(tab.indexof(-10), -1)
|
59
|
+
self.assertEqual(tab.indexof('x'), 0)
|
60
|
+
self.assertEqual(tab.indexof('y'), -1)
|
61
|
+
self.assertEqual(tab.select(0), 0)
|
62
|
+
self.assertEqual(tab.select('x'), 'x')
|
63
|
+
self.assertEqual(tab.select(['y', 'x']), 'x')
|
64
|
+
|
65
|
+
with self.assertRaisesRegex(ValueError, 'Tab not found'):
|
66
|
+
tab.select('y')
|
67
|
+
with self.assertRaisesRegex(ValueError, 'Tab not found'):
|
68
|
+
tab.insert('y', tab_lib.Tab('z', 'bar'))
|
69
|
+
|
70
|
+
with tab.track_scripts() as scripts:
|
71
|
+
tab.insert('x', tab_lib.Tab('y', 'bar'))
|
72
|
+
self.assertEqual(len(scripts), 2)
|
73
|
+
self.assertEqual(len(tab.tabs), 6)
|
74
|
+
|
75
|
+
with tab.track_scripts() as scripts:
|
76
|
+
tab.select(3)
|
77
|
+
self.assertEqual(len(scripts), 1)
|
78
|
+
self.assertEqual(tab.selected, 3)
|
79
|
+
|
80
|
+
with tab.track_scripts() as scripts:
|
81
|
+
tab.select('x')
|
82
|
+
self.assertEqual(len(scripts), 1)
|
83
|
+
self.assertEqual(tab.selected, 1)
|
51
84
|
|
52
85
|
|
53
86
|
if __name__ == '__main__':
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pyglove
|
3
|
-
Version: 0.4.5.
|
3
|
+
Version: 0.4.5.dev202412130809
|
4
4
|
Summary: PyGlove: A library for manipulating Python objects.
|
5
5
|
Home-page: https://github.com/google/pyglove
|
6
6
|
Author: PyGlove Authors
|
@@ -72,7 +72,7 @@ It's commonly used in:
|
|
72
72
|
PyGlove has been [published](https://proceedings.neurips.cc/paper/2020/file/012a91467f210472fab4e11359bbfef6-Paper.pdf)
|
73
73
|
at NeurIPS 2020. It is widely used within [Alphabet](https://abc.xyz/), including Google Research, Google Cloud, Youtube and Waymo.
|
74
74
|
|
75
|
-
PyGlove is developed by Daiyi Peng and colleagues
|
75
|
+
PyGlove is developed by Daiyi Peng and colleagues at [Google Brain](https://research.google/teams/brain/).
|
76
76
|
|
77
77
|
|
78
78
|
## Hello PyGlove
|
@@ -145,6 +145,9 @@ pip install pyglove --pre
|
|
145
145
|
* [Interactive SVG: Components for Direct Manipulation](https://github.com/google/pyglove/blob/main/docs/notebooks/python/interactive_svg.ipynb)
|
146
146
|
* [Where is the Duck: Developing Context-aware Component](https://github.com/google/pyglove/blob/main/docs/notebooks/python/where_is_the_duck.ipynb)
|
147
147
|
|
148
|
+
* Interactive Programming
|
149
|
+
* [Viewing PyGlove objects in HTML](https://colab.research.google.com/github/google/pyglove/blob/main/docs/notebooks/gui/html_view.ipynb)
|
150
|
+
|
148
151
|
## Citing PyGlove
|
149
152
|
|
150
153
|
```
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/detouring/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/categorical.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/custom_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/deduping.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/deduping_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/dna_generator.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/numerical.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/numerical_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/random_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/space_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/sweeping.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/geno/sweeping_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/categorical.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/custom.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/custom_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/derived.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/derived_test.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/evolvable.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/evolvable_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/iter_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/numerical.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/hyper/numerical_test.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/io/file_system.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/io/file_system_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/io/sequence_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/logging_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/codegen.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
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/missing.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/object_utils/timing.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/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.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/patching/rule_based.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/base.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/boilerplate.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/compounding.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/dict.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/dict_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/diff.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/diff_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/flags.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/flags_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/functor.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/inferred.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/list.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/list_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/object.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/object_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/origin.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/origin_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/ref.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/ref_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/symbolic/symbolize.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/backend.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/backend_test.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/local_backend.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/protocols.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/sample.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/tuning/sample_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/annotated.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/callable_ext.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/class_schema.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/custom_typing.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/inspect.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/inspect_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/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.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/typed_missing.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/typing/value_specs.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/base.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/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
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/core/views/html/tree_view.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/early_stopping/base.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/__init__.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/base.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/hill_climb.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/mutators.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/neat.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/neat_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/nsga2.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/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.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/selectors.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/where.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/evolution/where_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/mutfun/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/mutfun/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/mutfun/basic_ops.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/mutfun/basic_ops_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/__init__.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/base_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/maths.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/maths_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/randoms.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/randoms_test.py
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove/ext/scalars/step_wise.py
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove.egg-info/SOURCES.txt
RENAMED
File without changes
|
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove.egg-info/requires.txt
RENAMED
File without changes
|
{pyglove-0.4.5.dev202412110809 → pyglove-0.4.5.dev202412130809}/pyglove.egg-info/top_level.txt
RENAMED
File without changes
|
File without changes
|
File without changes
|