On checkout, refresh locally installed optional components regardless of whether -o is passed in. #172
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.
(note this CL is on top of the 'docstatus' branch aka pull request #171, I hope I did that right)
Implementation detail: this involves checking external’s status. But since Sourcetree.status() and therefore
_External.status() is already called at the very start of checkout_externals, allow it to be efficiently called twice:
Change _External.status() to skip doing work if it was run before.
Make it optional to print out the external names as it does its work.
Also:
sourcetree.py: no longer assumes status() is called before checkout() - checks self._stat and calls status() if needed.
checkout.py: move enormous message into its own helper function
User interface changes?: Yes - checkout now refreshes any local optional components regardless of -o flag.
Fixes: Github issue #155
Testing:
test removed:
unit tests:
system tests:
manual testing: ran with specific component and with no components as arguments.