Refactor metadata loading #308
Merged
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.
Add a new interface to
metadata,load_metadatawhich deals with the need to rummage through problem statements in search for problem names in the legacy format.Add two new methods to
statement_utilto find statements and extract problem names. I intend to use these to replace our code scanning for statements instatement_util.py(used byproblem2*),verifyproblem.py, andtemplate.pyto unify that code. I opted to keep that for a separate PR to keep the size of each PR reasonable.This PR also adds an
apt-get updatestep to our CI scripts, as CI had broken when ubuntu released newer packages than the docker image we ran on knew about.