-
Notifications
You must be signed in to change notification settings - Fork 10
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
Statically bundle dandi/schema json #155
base: master
Are you sure you want to change the base?
Conversation
@danlamanna - the release workflow for this project generates the schema and pushes to the repo during an automated github action (https://github.com/dandi/dandi-schema/blob/master/.github/workflows/release.yml#L76) and then builds the package for distribution via pypi and uploads there. will this change then pick the latest release from the schema repo? |
It doesn't, I just made this to get feedback on the approach. If it looks good then I can adjust the
|
the approach looks reasonable. i would add a github action test that checks that a package built from this repo with the submodule enabled can be installed and run, and can be used to access all acceptable versions of the schema. |
f754432
to
a64e806
Compare
Codecov ReportBase: 96.67% // Head: 96.67% // No change to project coverage 👍
Additional details and impacted files@@ Coverage Diff @@
## master #155 +/- ##
=======================================
Coverage 96.67% 96.67%
=======================================
Files 18 18
Lines 1654 1654
=======================================
Hits 1599 1599
Misses 55 55
Flags with carried forward coverage won't be shown. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
I attempted to update the release action in a64e806, but I don't have a way of testing it. I'm also unfamiliar with
I'm not sure I follow. The nice thing about this approach is that the package is always used with the submodule enabled, so the existing tests using tox already build such a package. |
@danlamanna You can get the to-be-released version via |
@danlamanna Wait, no, that returns the bump level, not the actual version. I'll get back to you. |
FWIW, I agree that it is a good approach. The only usecase I see this would disallow for is validation against a "future" (to the used older dandi-schema package version) version of schema. So it would mean to need to update |
@danlamanna Unfortunately, auto does not expose the new version that it's releasing, so you'll have to take the version bump level from |
37d745e
to
44587d6
Compare
44587d6
to
e20aadd
Compare
I think this latest revision makes sense, but I'm skeptical it will work whenever the next release is cut since I don't have a proper sandbox for testing it. |
Transpired by looking at never finalized #155 as a much less intrusive and simpler approach to avoid repetative requests for the same schema files.
Transpired by looking at never finalized #155 as a much less intrusive and simpler approach to avoid repetative requests for the same schema files.
This is a minimal PR to show an example of what was discussed in #153.
The git submodule approach seemed to be the simplest way to ensure the schema files were present in every environment: development, testing, and packaging. It should be easy to programatically "bump" this when new versions of
dandi/schema
are released as well.