learningequality / learningequality/le-utils
Upgrade jsonschema dependency and schema versions
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 7
- Forks
- 36
- PR merge metrics
- No merged PRs in 30d
Description
Overview
Currently, le-utils does not directly require jsonschema directly, but does provide code to use schemas in the Kolibri ecosystem. The current JSON schemas are limited to Draft-07 because the latest version of jsonschema to support Python 3.6 only supports up to that draft. The le-utils project must continue to support Python 3.6 until it is deprecated in Kolibri. Once that happens, we can upgrade jsonschema (used in tests) and update the existing schemas to user a newer schema version, 2019 or 2020.
Prerequisite
le-utilsdrops support for Python 3.6
Description and outcomes
- Update the
jsonschemaversion to the latest release that aligns withle-utilspython version requirements - Update all JSON schemas to reference a newer schema version
- Ensure the updated schemas still validate
- Replace any UUID regexes with
"format": "uuid"(added in 2019-09)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
After Python 3.6 support is dropped, locate the jsonschema dependency declaration and the existing JSON schemas, then inspect the tests that validate them. Update the dependency and schema references together, replace the specified UUID regexes, and run the schema validation tests to confirm the updated schemas still validate.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100