Skip to content

Conversation

@swo
Copy link
Contributor

@swo swo commented Mar 26, 2025

Content of the change

  • Everything is a JSON object! At the cost of R0: {fix: 1.5}, you get so much simplicity and modularity:
    • a top-level version
    • each parameter stands on its own
    • each syntax around varying bundles of parameters and conditioned parameters
  • Use https://json-schema.org/ to write the griddler schema
    • Use pytest to check that I wrote the schema correctly

To do

  • Describe a v0.3 syntax
  • Get feedback
  • Allow for versioning
  • Consider using https://json-schema.org/
  • Add runtime validation (for things that the schema validation can't check for)
  • Implement & test
  • Update README and other docs

@swo swo mentioned this pull request Mar 26, 2025
@swo
Copy link
Contributor Author

swo commented Mar 26, 2025

@bbbruce Thanks for having a look! I'm hoping to make this clearer (the nested grids were not clear) while keeping the good ergonomics.

@bbbruce
Copy link
Contributor

bbbruce commented Mar 27, 2025

Yes @swo I don't think I made an overall comment that this really looks like a move in a great direction to me!

swo added 2 commits March 27, 2025 09:40
* Schema: in progress

* more tests

* schema: vary one short

* schema validation passes

* use validator object

* fixup: "required" not "requiredProperties"

* add version metadata

* Simplify schema (#57)

* Remove v0.2

* update to use outer version

* update mkdocs

* schema with all objects

* update schema and tests
@swo swo mentioned this pull request Mar 28, 2025
@swo swo marked this pull request as ready for review March 28, 2025 20:31
@swo swo linked an issue Mar 28, 2025 that may be closed by this pull request
@swo swo linked an issue Mar 31, 2025 that may be closed by this pull request
@swo swo changed the title v0.3 syntax JSON schema syntax Mar 31, 2025
@swo swo merged commit 26f3e1b into main Mar 31, 2025
3 checks passed
@swo swo deleted the swo_v0.3 branch March 31, 2025 16:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

3 participants