Csharp friendly errors #163
Closed
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 also introduces a new marshaler for GitError along with a distinction between exceptions (errors) in libgit2 vs. exceptions in libgit2sharp. It also makes the error names a bit more C# friendly:
GitErrorCode.NotFound
vs.GitErrorCode.GIT_ENOTFOUND
I added a new exception type (see LibGit2SharpException and LibGit2Exception) so that you know whether an error is actually coming from libgit2 or if it is something LibGit2Sharp is checking. This should also make it easier to move towards LibGit2Sharp doing less work and deferring as much as we can to libgit2. I have tried to introduce this change in a way that does not break the public API.