pyvider
2025-04-13
Continued the conversion system refactoring: replaced individual converter classes with a...
21 files · 1,368+ · 1,355-
Wire Format Conversion Module
5 files changed
wire.pyAdded `src/pyvider/core/conversion/wire.py` (366 lines) providing a unified wire-format serializa...json.pyDeleted `core/conversion/converters/json.py` and `core/conversion/converters/terraform.py` (combi...terraform.pyDeleted `core/conversion/converters/json.py` and `core/conversion/converters/terraform.py` (combi...base.pySignificantly reworked `core/conversion/base.py` to support the new architectureregistry.pyExpanded `core/conversion/registry.py` from simple converter lookup to a full marshal/unmarshal s...
- Added
src/pyvider/core/conversion/wire.py(366 lines) providing a unified wire-format serialization layer that replaces the separate JSON and Terraform converters decouple errata1 file
wire.py
- Deleted
core/conversion/converters/json.pyandcore/conversion/converters/terraform.py(combined ~850 lines removed) baseline internal2 files
json.pyterraform.py
- Significantly reworked
core/conversion/base.pyto support the new architecture instantiate internal1 file
base.py
- Expanded
core/conversion/registry.pyfrom simple converter lookup to a full marshal/unmarshal system (~230+ lines added) instantiate internal1 file
registry.py
Protocol Dynamic Value Conversion
2 files changed
dynamic_value.pyAdded `src/pyvider/protocols/tfprotov6/conversion/dynamic_value.py` (204 lines) for converting be...converter.pyRemoved the `tfprotov6/adapters/converter.py` adapter (204 lines) in favor of direct conversion
- Added
src/pyvider/protocols/tfprotov6/conversion/dynamic_value.py(204 lines) for converting between Python values and Terraform DynamicValue protobuf messages baseline internal1 file
dynamic_value.py
- Removed the
tfprotov6/adapters/converter.pyadapter (204 lines) in favor of direct conversion interface internal1 file
converter.py
Handler Overhaul
2 files changed
get_provider_schema.pyMassively reworked `get_provider_schema.py` handler (~500+ lines of changes) to use the new conve...call_function.pyUpdated `call_function.py` handler with new conversion imports
- Massively reworked
get_provider_schema.pyhandler (~500+ lines of changes) to use the new conversion system for schema encoding interface internal1 file
get_provider_schema.py
- Updated all resource lifecycle handlers (apply, plan, read, validate) to use the new marshal/unmarshal API
interface
behavioral
1 file
handler.py
- Updated
call_function.pyhandler with new conversion imports instantiate internal1 file
call_function.py
- Iterative fixes to conversion context (
@definedecorator toggling), registry forward references, and import paths throughout the day remediate internal1 file
handler.py
Conversion API Cleanup
1 file changed
__init__.pyUpdated `pyvider/conversion/__init__.py` to re-export from core conversion with simplified names
- Renamed encode/decode to marshal/unmarshal across the codebase
decouple
internal
14 files
__init__.py__init__.pybase.pycontext.py__init__.pyjson.pyterraform.pyformat.pyregistry.pyschema.pytypes.pywire.py__init__.pydynamic_value.py
- Updated
pyvider/conversion/__init__.pyto re-export from core conversion with simplified names interface internal1 file
__init__.py
- Removed disabled env_variables data resource
decouple
internal
14 files
__init__.py__init__.pybase.pycontext.py__init__.pyjson.pyterraform.pyformat.pyregistry.pyschema.pytypes.pywire.py__init__.pydynamic_value.py