Skip to main content

Validate Godot save-game fixtures and catch compatibility drift before release.

Project description

Godot Save Schema Guard

Validate Godot save-game fixtures against explicit schemas and catch incompatible save format changes before release.

The first release focuses on JSON saves because they are deterministic to validate outside the engine. It is meant to be a release gate: do not break player saves.

Install

python -m pip install -e .

When published:

python -m pip install godot-save-schema-guard

Quick Start

godot-save-guard validate saves\fixtures --schema schemas\save.schema.json
godot-save-guard validate examples\fixtures --schema examples\schema\save.schema.json --format markdown --output SAVE_COMPATIBILITY.md
godot-save-guard migrate saves\v1 --output-dir migrated\v2 --command "godot --headless --script tools/migrate_save.gd --input {input} --output {output}"

What It Checks

  • Invalid JSON fixtures.
  • Missing top-level version.
  • Missing required schema properties.
  • Numeric type drift such as "100" where a number is expected.
  • Type mismatches.
  • Unexpected properties when additionalProperties is false.
  • Migration command failures.

Documentation

Development

python -m pip install -e .
python -m unittest discover -s tests -v
godot-save-guard validate examples\fixtures --schema examples\schema\save.schema.json --fail-on none

Fixtures are generic and intentionally small so the repository is safe to publish.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

godot_save_schema_guard-0.1.0.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

godot_save_schema_guard-0.1.0-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file godot_save_schema_guard-0.1.0.tar.gz.

File metadata

  • Download URL: godot_save_schema_guard-0.1.0.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for godot_save_schema_guard-0.1.0.tar.gz
Algorithm Hash digest
SHA256 62673e7f417cc595cc17559a8afbacf292de20de697c40e5d7e170f9a6723439
MD5 ce85e15dd68053f31cbfe3649ef457b5
BLAKE2b-256 b50298f4e52580f8415a9b7d785d6add22b54eb0c69fbbf527ab0c5fbaf5ab76

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_save_schema_guard-0.1.0.tar.gz:

Publisher: publish-save-schema-guard.yml on NonniGB/godot-production-toolkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file godot_save_schema_guard-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for godot_save_schema_guard-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8ead92a2e1ec2ed2c1e6f010a52ecaa52761069bd3a19289acfcc99d561e8019
MD5 4c8b1fc695cc9eacab5d7f9cd2625cdd
BLAKE2b-256 b0d74636c39cb154a5ee3182cdcb47bb38da8b0ca3e4b747f6ed22e5b07cdeef

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_save_schema_guard-0.1.0-py3-none-any.whl:

Publisher: publish-save-schema-guard.yml on NonniGB/godot-production-toolkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page