Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dandischema #1975

Closed
jwodder opened this issue Jul 11, 2024 · 9 comments · Fixed by #1976
Closed

Update dandischema #1975

jwodder opened this issue Jul 11, 2024 · 9 comments · Fixed by #1976
Labels
released This issue/pull request has been released.

Comments

@jwodder
Copy link
Member

jwodder commented Jul 11, 2024

dandischema 0.10.2 was released yesterday, and it increased the schema version to 0.6.8. As a result, uploads from clients using the new version are failing because "Server requires schema version 0.6.7". Please update the version of dandischema used by the server.

@jwodder
Copy link
Member Author

jwodder commented Jul 11, 2024

Ping @dandi/archive-maintainers

@jjnesbitt
Copy link
Member

Working on it now

@jjnesbitt
Copy link
Member

It seems that the GUI doesn't yet work with the new discriminated union feature in 0.6.8, and we'll need to do some investigation/work to get that fixed. My recommendation in the short term is to pin the dandi cli to use 0.6.7, until we can get the API and client working with that change.

@satra
Copy link
Member

satra commented Jul 12, 2024

@jjnesbitt and @mvandenburgh - could we add a basic programmatic test added for the gui? it seems like we keep running into this concern with schema changes, so that we can evaluate this before we merge such changes in the future?

@mvandenburgh
Copy link
Member

@jjnesbitt and @mvandenburgh - could we add a basic programmatic test added for the gui? it seems like we keep running into this concern with schema changes, so that we can evaluate this before we merge such changes in the future?

We actually have a test like that already, it failing was what alerted us to this issue - https://github.com/dandi/dandi-archive/actions/runs/9897632400/job/27343595576?pr=1976. The breakage happened because the CLI upgraded its version of dandischema before we realized it breaks the GUI.

I think going forward, we should develop a more structured approach to schema upgrades so that things are more coordinated between the CLI and API/GUI release. @waxlamp I recall we've discussed this before, but never got anything concrete worked out.

@mvandenburgh
Copy link
Member

Oh, I see now the CLI doesn't pin it's version of dandischema, so it wasn't an explicit action that caused this. Still, I think we need to put together some sort of schema upgrade "runbook" here

@jjnesbitt
Copy link
Member

I think the core reason for this situation is that dandi/dandi-schema#245 was merged before any testing or verification against the API or GUI was done. I agree with Mike that we should have a well structured playbook for doing schema upgrades.

@candleindark
Copy link
Member

One possibly suspect is the inclusion of the $schema key, even though running check-jsonschema --check-metaschema asset.json context.json dandiset.json published-asset.json published-dandiset.json doesn't produce any error. Our schema include some customization for backward compatibility, and the GUI may be pickier.

@dandibot
Copy link
Member

🚀 Issue was released in v0.3.88 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
released This issue/pull request has been released.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants