DM-18900: Raise RuntimeError if replacing specs/partials #41
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It seems that silently overwriting specifications or partials is leading to hard-to-debug issues. This makes SpecificationSet raise a RuntimeError exception if specifications or partials are being ingested
that replace previously-ingested specifications or partials of the same name.
This also consolidates the act few setting the internals _specs and _partials dicts to the getitem method. Regular code shouldn't be touching _specs or _partials.
Adjust tests to deal with new behavior
I'm not sure this should be merged yet because there may be cases where replacement is useful (such as in an update method). Let's figure out how to make replacement possible when useful, but not when a YAML package is being ingested.