feat(git): async git interface for get_repository_root
#637
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.
This adds a callback argument to
git.utils.get_repository_root
, which allows the function to be called asynchronously.Callers are also adjusted so that it respects the
async_git_status
option.Also, I've been wondering, is it really necessary to have synchronous support at all? As long as the asynchronous version is implemented correctly, I can't imagine a user that would prefer to use the synchronous version.
Once the async paths are battle-tested and its rough edges polished, what do you think about dropping non-async support in the next major version? I feel that it would simplify the codebase.