digitalbazaar/pyld

Include JSON-LD specifications as `git` submodules

Opened this issue · 2 comments

Presently, README.rst asks to manually clone JSON-LD spec repositories from W3C repo. We could instead add them as submodules; that would simplify development.

My one concern here is that git submodules need to be updated if/when the upstream repo changes as they're pinned to specific commit SHAs. It may be all that's needed is a simple python script to run the commit commands needed to pull the latest repos locally.

@BigBlueHat Indeed, periodically one has to update the submodules. I would argue this is a good thing, similar to how one has to explicitly update Python dependencies of a project: it makes the project more reliable, and the builds more stable.

Updating dependencies, including the specs, should be a conscious decision and a human should be in the loop to fix possible issues.

Otherwise, a test run for a completely unrelated change can throw a bunch of errors clearly unrelated to the change, and it will take time to realize that one of the specs (and which one?) has been meanwhile updated.

Plus this guarantees that everyone who clones the repo has exactly the same versions of specs attached to it, this helps tests reproducibility and comparability of all setups.