pyvider
2025-10-14
Type annotation improvements throughout CLI modules, simplified license format, added Python 3
84 files · 6,705+ · 1,896-
Type Annotation Fixes
58 files changed
provide_command.pyUpdated provide_command.py (+43/-45 lines)settings.local.jsonUpdated settings.local.json (+26/-2 lines).gitignoreAdded .gitignore (+2 lines).venv_darwin_arm64Added .venv_darwin_arm64 (+1 lines)FOUNDATION_INTEGRATION_PLAN.mdAdded FOUNDATION_INTEGRATION_PLAN.md (+890 lines)FUTURE_PHASES.mdUpdated FUTURE_PHASES.md (+2/-2 lines)VERSIONUpdated VERSION (+1/-1 lines)coverage.jsonAdded coverage.json (+1 lines)pyproject.tomlUpdated pyproject.toml (+2/-3 lines)__main__.pyUpdated __main__.py (+7/-2 lines)components_commands.pyUpdated components_commands.py (+2/-1 lines)config_commands.pyUpdated config_commands.py (+2/-1 lines)context.pyUpdated context.py (+5/-5 lines)install_command.pyUpdated install_command.py (+1/-1 lines)launch_context_command.pyUpdated launch_context_command.py (+3/-3 lines)main.pyUpdated main.py (+3/-1 lines)utils.pyUpdated utils.py (+104/-33 lines)config.pyUpdated config.py (+2/-2 lines)encryption.pyUpdated encryption.py (+351/-65 lines)launch_context.pyUpdated launch_context.py (+7/-6 lines)__init__.pyUpdated __init__.py (+1/-7 lines)base.pyUpdated base.py (+2/-8 lines)function.pyUpdated function.py (+3/-3 lines)resource.pyUpdated resource.py (+3/-1 lines)schema.pyUpdated schema.py (+3/-3 lines)validation.pyUpdated validation.py (+7/-4 lines)components.pyUpdated components.py (+1/-1 lines)discovery.pyUpdated discovery.py (+2/-3 lines)__init__.pyAdded __init__.py (+69 lines)metrics.pyAdded metrics.py (+147 lines)apply_resource_change.pyAdded apply_resource_change.py (+23 lines)call_function.pyAdded call_function.py (+23 lines)close_ephemeral_resource.pyAdded close_ephemeral_resource.py (+25 lines)configure_provider.pyAdded configure_provider.py (+23 lines)get_functions.pyAdded get_functions.py (+23 lines)get_metadata.pyAdded get_metadata.py (+23 lines)get_provider_schema.pyAdded get_provider_schema.py (+23 lines)import_resource_state.pyAdded import_resource_state.py (+26 lines)move_resource_state.pyAdded move_resource_state.py (+26 lines)open_ephemeral_resource.pyUpdated open_ephemeral_resource.py (+26/-1 lines)plan_resource_change.pyAdded plan_resource_change.py (+24 lines)read_data_source.pyAdded read_data_source.py (+27 lines)read_resource.pyAdded read_resource.py (+22 lines)renew_ephemeral_resource.pyUpdated renew_ephemeral_resource.py (+26/-1 lines)stop_provider.pyUpdated stop_provider.py (+23/-1 lines)upgrade_resource_state.pyAdded upgrade_resource_state.py (+25 lines)utils.pyUpdated utils.py (+2/-2 lines)validate_data_resource_config.pyAdded validate_data_resource_config.py (+26 lines)validate_ephemeral_resource_config.pyAdded validate_ephemeral_resource_config.py (+25 lines)validate_provider_config.pyAdded validate_provider_config.py (+24 lines)validate_resource_config.pyAdded validate_resource_config.py (+27 lines)__init__.pyUpdated __init__.py (+32/-32 lines)tfplugin6_pb2_grpc.pyRemoved content from tfplugin6_pb2_grpc.py (-932 lines)tfplugin6_pb2.pyiUpdated tfplugin6_pb2.pyi (+1/-1 lines)utils.pyUpdated utils.py (+0/-0 lines)lifecycle.pyUpdated lifecycle.py (+2/-2 lines)protocol.pyUpdated protocol.py (+7/-4 lines)uv.lockUpdated uv.lock (+2233/-602 lines)
- Added
from typing import Anyand changed**kwargsto**kwargs: Anyin CLI command handlers (components,config,climain group) specify behavioral1 file
provide_command.py
- Added
# noqa: C901to complex functions (install_command,launch_context_cmd) instantiate internal1 file
provide_command.py
- Added
LaunchMethodtype annotation to_show_method_specific_help()parameter specify internal1 file
provide_command.py
- Removed unused
setup_loggingimport fromprovide_command.pydeprecate internal1 file
provide_command.py
License and Classifiers
85 files changed
settings.local.jsonChanges to settings.local.json.gitignoreChanges to .gitignore.venv_darwin_arm64Changes to .venv_darwin_arm64FOUNDATION_INTEGRATION_PLAN.mdChanges to FOUNDATION_INTEGRATION_PLAN.mdFUTURE_PHASES.mdChanges to FUTURE_PHASES.mdVERSIONChanges to VERSIONcoverage.jsonChanges to coverage.jsonpyproject.tomlChanges to pyproject.toml_version.pyChanges to _version.py__main__.pyChanges to __main__.pycomponents_commands.pyChanges to components_commands.pyconfig_commands.pyChanges to config_commands.pycontext.pyChanges to context.pyinstall_command.pyChanges to install_command.pylaunch_context_command.pyChanges to launch_context_command.pymain.pyChanges to main.pyprovide_command.pyChanges to provide_command.pyutils.pyChanges to utils.pyconfig.pyChanges to config.pyencryption.pyChanges to encryption.pylaunch_context.pyChanges to launch_context.py__init__.pyChanges to __init__.pybase.pyChanges to base.pyfunction.pyChanges to function.pyresource.pyChanges to resource.pyschema.pyChanges to schema.pyvalidation.pyChanges to validation.pycomponents.pyChanges to components.pydiscovery.pyChanges to discovery.py__init__.pyChanges to __init__.pymetrics.pyChanges to metrics.pyapply_resource_change.pyChanges to apply_resource_change.pycall_function.pyChanges to call_function.pyclose_ephemeral_resource.pyChanges to close_ephemeral_resource.pyconfigure_provider.pyChanges to configure_provider.pyget_functions.pyChanges to get_functions.pyget_metadata.pyChanges to get_metadata.pyget_provider_schema.pyChanges to get_provider_schema.pyimport_resource_state.pyChanges to import_resource_state.pymove_resource_state.pyChanges to move_resource_state.pyopen_ephemeral_resource.pyChanges to open_ephemeral_resource.pyplan_resource_change.pyChanges to plan_resource_change.pyread_data_source.pyChanges to read_data_source.pyread_resource.pyChanges to read_resource.pyrenew_ephemeral_resource.pyChanges to renew_ephemeral_resource.pystop_provider.pyChanges to stop_provider.pyupgrade_resource_state.pyChanges to upgrade_resource_state.pyutils.pyChanges to utils.pyvalidate_data_resource_config.pyChanges to validate_data_resource_config.pyvalidate_ephemeral_resource_config.pyChanges to validate_ephemeral_resource_config.pyvalidate_provider_config.pyChanges to validate_provider_config.pyvalidate_resource_config.pyChanges to validate_resource_config.py__init__.pyChanges to __init__.pytfplugin6_pb2_grpc.pyChanges to tfplugin6_pb2_grpc.pytfplugin6_pb2.pyiChanges to tfplugin6_pb2.pyiutils.pyChanges to utils.pylifecycle.pyChanges to lifecycle.pyprotocol.pyChanges to protocol.pytest_decorators.pyChanges to test_decorators.pytest_cli_entrypoints.pyChanges to test_cli_entrypoints.pytest_cli_utils.pyChanges to test_cli_utils.pytest_install_utils.pyChanges to test_install_utils.pytest_attrs_factory.pyChanges to test_attrs_factory.pytest_availability.pyChanges to test_availability.pytest_base_context.pyChanges to test_base_context.pytest_encryption_unit.pyChanges to test_encryption_unit.pytest_launch_context.pyChanges to test_launch_context.pytest_launch_context_extra.pyChanges to test_launch_context_extra.pytest_context_package.pyChanges to test_context_package.pytest_utils.pyChanges to test_utils.pytest_exceptions_hierarchy.pyChanges to test_exceptions_hierarchy.pytest_private_state_encryption.pyChanges to test_private_state_encryption.pymock_type.pyChanges to mock_type.py__init__.pyChanges to __init__.pytest_handler_metrics.pyChanges to test_handler_metrics.pytest_metrics.pyChanges to test_metrics.pytest_service.pyChanges to test_service.pytest_exceptions.pyChanges to test_exceptions.pytest_lifecycle.pyChanges to test_lifecycle.pytest_resource_context.pyChanges to test_resource_context.pytest_resource_protocol.pyChanges to test_resource_protocol.pytest_exceptions.pyChanges to test_exceptions.pytest_handler.pyChanges to test_handler.pytest_version.pyChanges to test_version.pyuv.lockChanges to uv.lock
- Simplified license from
{ text = "Apache-2.0" }to string"Apache-2.0"decouple internal85 files
settings.local.json.gitignore.venv_darwin_arm64FOUNDATION_INTEGRATION_PLAN.mdFUTURE_PHASES.mdVERSIONcoverage.jsonpyproject.toml_version.py__main__.pycomponents_commands.pyconfig_commands.pycontext.pyinstall_command.pylaunch_context_command.pymain.pyprovide_command.pyutils.pyconfig.pyencryption.pylaunch_context.py__init__.pybase.pyfunction.pyresource.pyschema.pyvalidation.pycomponents.pydiscovery.py__init__.pymetrics.pyapply_resource_change.pycall_function.pyclose_ephemeral_resource.pyconfigure_provider.pyget_functions.pyget_metadata.pyget_provider_schema.pyimport_resource_state.pymove_resource_state.pyopen_ephemeral_resource.pyplan_resource_change.pyread_data_source.pyread_resource.pyrenew_ephemeral_resource.pystop_provider.pyupgrade_resource_state.pyutils.pyvalidate_data_resource_config.pyvalidate_ephemeral_resource_config.pyvalidate_provider_config.pyvalidate_resource_config.py__init__.pytfplugin6_pb2_grpc.pytfplugin6_pb2.pyiutils.pylifecycle.pyprotocol.pytest_decorators.pytest_cli_entrypoints.pytest_cli_utils.pytest_install_utils.pytest_attrs_factory.pytest_availability.pytest_base_context.pytest_encryption_unit.pytest_launch_context.pytest_launch_context_extra.pytest_context_package.pytest_utils.pytest_exceptions_hierarchy.pytest_private_state_encryption.pymock_type.py__init__.pytest_handler_metrics.pytest_metrics.pytest_service.pytest_exceptions.pytest_lifecycle.pytest_resource_context.pytest_resource_protocol.pytest_exceptions.pytest_handler.pytest_version.pyuv.lock
- Removed
"License :: OSI Approved :: Apache Software License"classifier decouple internal85 files
settings.local.json.gitignore.venv_darwin_arm64FOUNDATION_INTEGRATION_PLAN.mdFUTURE_PHASES.mdVERSIONcoverage.jsonpyproject.toml_version.py__main__.pycomponents_commands.pyconfig_commands.pycontext.pyinstall_command.pylaunch_context_command.pymain.pyprovide_command.pyutils.pyconfig.pyencryption.pylaunch_context.py__init__.pybase.pyfunction.pyresource.pyschema.pyvalidation.pycomponents.pydiscovery.py__init__.pymetrics.pyapply_resource_change.pycall_function.pyclose_ephemeral_resource.pyconfigure_provider.pyget_functions.pyget_metadata.pyget_provider_schema.pyimport_resource_state.pymove_resource_state.pyopen_ephemeral_resource.pyplan_resource_change.pyread_data_source.pyread_resource.pyrenew_ephemeral_resource.pystop_provider.pyupgrade_resource_state.pyutils.pyvalidate_data_resource_config.pyvalidate_ephemeral_resource_config.pyvalidate_provider_config.pyvalidate_resource_config.py__init__.pytfplugin6_pb2_grpc.pytfplugin6_pb2.pyiutils.pylifecycle.pyprotocol.pytest_decorators.pytest_cli_entrypoints.pytest_cli_utils.pytest_install_utils.pytest_attrs_factory.pytest_availability.pytest_base_context.pytest_encryption_unit.pytest_launch_context.pytest_launch_context_extra.pytest_context_package.pytest_utils.pytest_exceptions_hierarchy.pytest_private_state_encryption.pymock_type.py__init__.pytest_handler_metrics.pytest_metrics.pytest_service.pytest_exceptions.pytest_lifecycle.pytest_resource_context.pytest_resource_protocol.pytest_exceptions.pytest_handler.pytest_version.pyuv.lock
- Added
"Programming Language :: Python :: 3.11"and"Programming Language :: Python :: 3.12"classifiers instantiate internal85 files
settings.local.json.gitignore.venv_darwin_arm64FOUNDATION_INTEGRATION_PLAN.mdFUTURE_PHASES.mdVERSIONcoverage.jsonpyproject.toml_version.py__main__.pycomponents_commands.pyconfig_commands.pycontext.pyinstall_command.pylaunch_context_command.pymain.pyprovide_command.pyutils.pyconfig.pyencryption.pylaunch_context.py__init__.pybase.pyfunction.pyresource.pyschema.pyvalidation.pycomponents.pydiscovery.py__init__.pymetrics.pyapply_resource_change.pycall_function.pyclose_ephemeral_resource.pyconfigure_provider.pyget_functions.pyget_metadata.pyget_provider_schema.pyimport_resource_state.pymove_resource_state.pyopen_ephemeral_resource.pyplan_resource_change.pyread_data_source.pyread_resource.pyrenew_ephemeral_resource.pystop_provider.pyupgrade_resource_state.pyutils.pyvalidate_data_resource_config.pyvalidate_ephemeral_resource_config.pyvalidate_provider_config.pyvalidate_resource_config.py__init__.pytfplugin6_pb2_grpc.pytfplugin6_pb2.pyiutils.pylifecycle.pyprotocol.pytest_decorators.pytest_cli_entrypoints.pytest_cli_utils.pytest_install_utils.pytest_attrs_factory.pytest_availability.pytest_base_context.pytest_encryption_unit.pytest_launch_context.pytest_launch_context_extra.pytest_context_package.pytest_utils.pytest_exceptions_hierarchy.pytest_private_state_encryption.pymock_type.py__init__.pytest_handler_metrics.pytest_metrics.pytest_service.pytest_exceptions.pytest_lifecycle.pytest_resource_context.pytest_resource_protocol.pytest_exceptions.pytest_handler.pytest_version.pyuv.lock
Minor Fixes
26 files changed
test_handler.pyAdded test_handler.py (+95 lines)test_version.pyAdded test_version.py (+36 lines)test_decorators.pyAdded test_decorators.py (+99 lines)test_cli_entrypoints.pyAdded test_cli_entrypoints.py (+64 lines)test_cli_utils.pyAdded test_cli_utils.py (+191 lines)test_install_utils.pyAdded test_install_utils.py (+187 lines)test_attrs_factory.pyAdded test_attrs_factory.py (+89 lines)test_availability.pyAdded test_availability.py (+84 lines)test_base_context.pyAdded test_base_context.py (+65 lines)test_encryption_unit.pyUpdated test_encryption_unit.py (+130/-109 lines)test_launch_context.pyAdded test_launch_context.py (+163 lines)test_launch_context_extra.pyAdded test_launch_context_extra.py (+86 lines)test_context_package.pyAdded test_context_package.py (+14 lines)test_utils.pyAdded test_utils.py (+65 lines)test_exceptions_hierarchy.pyUpdated test_exceptions_hierarchy.py (+14/-1 lines)test_private_state_encryption.pyUpdated test_private_state_encryption.py (+4/-4 lines)mock_type.pyRemoved content from mock_type.py (-1 lines)__init__.pyAdded __init__.py (+1 lines)test_handler_metrics.pyAdded test_handler_metrics.py (+194 lines)test_metrics.pyAdded test_metrics.py (+357 lines)test_service.pyAdded test_service.py (+108 lines)test_exceptions.pyAdded test_exceptions.py (+34 lines)test_lifecycle.pyAdded test_lifecycle.py (+37 lines)test_resource_context.pyAdded test_resource_context.py (+40 lines)test_resource_protocol.pyAdded test_resource_protocol.py (+34 lines)test_exceptions.pyAdded test_exceptions.py (+54 lines)
Hypothesis Artifacts
85 files changed
settings.local.jsonChanges to settings.local.json.gitignoreChanges to .gitignore.venv_darwin_arm64Changes to .venv_darwin_arm64FOUNDATION_INTEGRATION_PLAN.mdChanges to FOUNDATION_INTEGRATION_PLAN.mdFUTURE_PHASES.mdChanges to FUTURE_PHASES.mdVERSIONChanges to VERSIONcoverage.jsonChanges to coverage.jsonpyproject.tomlChanges to pyproject.toml_version.pyChanges to _version.py__main__.pyChanges to __main__.pycomponents_commands.pyChanges to components_commands.pyconfig_commands.pyChanges to config_commands.pycontext.pyChanges to context.pyinstall_command.pyChanges to install_command.pylaunch_context_command.pyChanges to launch_context_command.pymain.pyChanges to main.pyprovide_command.pyChanges to provide_command.pyutils.pyChanges to utils.pyconfig.pyChanges to config.pyencryption.pyChanges to encryption.pylaunch_context.pyChanges to launch_context.py__init__.pyChanges to __init__.pybase.pyChanges to base.pyfunction.pyChanges to function.pyresource.pyChanges to resource.pyschema.pyChanges to schema.pyvalidation.pyChanges to validation.pycomponents.pyChanges to components.pydiscovery.pyChanges to discovery.py__init__.pyChanges to __init__.pymetrics.pyChanges to metrics.pyapply_resource_change.pyChanges to apply_resource_change.pycall_function.pyChanges to call_function.pyclose_ephemeral_resource.pyChanges to close_ephemeral_resource.pyconfigure_provider.pyChanges to configure_provider.pyget_functions.pyChanges to get_functions.pyget_metadata.pyChanges to get_metadata.pyget_provider_schema.pyChanges to get_provider_schema.pyimport_resource_state.pyChanges to import_resource_state.pymove_resource_state.pyChanges to move_resource_state.pyopen_ephemeral_resource.pyChanges to open_ephemeral_resource.pyplan_resource_change.pyChanges to plan_resource_change.pyread_data_source.pyChanges to read_data_source.pyread_resource.pyChanges to read_resource.pyrenew_ephemeral_resource.pyChanges to renew_ephemeral_resource.pystop_provider.pyChanges to stop_provider.pyupgrade_resource_state.pyChanges to upgrade_resource_state.pyutils.pyChanges to utils.pyvalidate_data_resource_config.pyChanges to validate_data_resource_config.pyvalidate_ephemeral_resource_config.pyChanges to validate_ephemeral_resource_config.pyvalidate_provider_config.pyChanges to validate_provider_config.pyvalidate_resource_config.pyChanges to validate_resource_config.py__init__.pyChanges to __init__.pytfplugin6_pb2_grpc.pyChanges to tfplugin6_pb2_grpc.pytfplugin6_pb2.pyiChanges to tfplugin6_pb2.pyiutils.pyChanges to utils.pylifecycle.pyChanges to lifecycle.pyprotocol.pyChanges to protocol.pytest_decorators.pyChanges to test_decorators.pytest_cli_entrypoints.pyChanges to test_cli_entrypoints.pytest_cli_utils.pyChanges to test_cli_utils.pytest_install_utils.pyChanges to test_install_utils.pytest_attrs_factory.pyChanges to test_attrs_factory.pytest_availability.pyChanges to test_availability.pytest_base_context.pyChanges to test_base_context.pytest_encryption_unit.pyChanges to test_encryption_unit.pytest_launch_context.pyChanges to test_launch_context.pytest_launch_context_extra.pyChanges to test_launch_context_extra.pytest_context_package.pyChanges to test_context_package.pytest_utils.pyChanges to test_utils.pytest_exceptions_hierarchy.pyChanges to test_exceptions_hierarchy.pytest_private_state_encryption.pyChanges to test_private_state_encryption.pymock_type.pyChanges to mock_type.py__init__.pyChanges to __init__.pytest_handler_metrics.pyChanges to test_handler_metrics.pytest_metrics.pyChanges to test_metrics.pytest_service.pyChanges to test_service.pytest_exceptions.pyChanges to test_exceptions.pytest_lifecycle.pyChanges to test_lifecycle.pytest_resource_context.pyChanges to test_resource_context.pytest_resource_protocol.pyChanges to test_resource_protocol.pytest_exceptions.pyChanges to test_exceptions.pytest_handler.pyChanges to test_handler.pytest_version.pyChanges to test_version.pyuv.lockChanges to uv.lock