geldata / geldata/gel-python

Schema vs. reflected Python divergence

Open
#650 0 comments 0 reactions 1 assignee Assigned to @elprans View on GitHub
Dominant language
Python
Stars
415
Forks
50
PR merge metrics
No merged PRs in 30d

Description

1. We want to introspect a record the schema version into the generated `models/__init__.py` as `__gel_schema_version__` attribute. This way it's possible to build tooling that detects they diverge -- @elprans this is on you.
2. Some users might build ad-hoc validation to simply compare `.gel` files update timestamps vs. generated `.py` files
3. We want to make best effort at supporting outdated reflected schema at *runtime*
* We splat properties by default -- when a new property is added it'll start being returned. We can just skip unpacking/setting properties that aren't part of the reflected type.
4. For cardinality/type changes -- we error out at runtime.
4. For properties and links that are part of the expected `return_type` but aren't part of the type descriptor we do nothing

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.