-
-
Notifications
You must be signed in to change notification settings - Fork 104
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Resolver for Mercurial repositories #458
Resolver for Mercurial repositories #458
Conversation
Of course, the tests fail. One probably needs ci to set up mercurial (the tests work locally for me). Any help would be appreciated |
85b0002
to
0dadf51
Compare
0dadf51
to
8b4fd1a
Compare
I've added a commit to install mercurial on circle and travis. Seems the Github action runner already has it installed. Specs are still broken, but not because hg is missing. |
Thanks a lot. For some reason hg does not seem to create parent directories on clone (it does in my system). There are still three failing tests but according to the error messages something in wrong with the mercurial installation in these cases. |
Finally all tests pass ;) I fixed some problems with the setup scripts so they work now
They also revealed some problems with running shell commands on Windows, which are fixed now. |
1098f40
to
3266b2b
Compare
One other question: the method What should I do in such cases? Submit a new bug report? A new separate PR that removes the method? Discuss such issues here first? The point is that I do not know what the purpose of this method is/was. So just removing it might be "the wrong thing" ... |
…exist Exceptions should only be used on real errors, not on expected fails.
It's probably just a leftover from a previous refactoring. Since it clearly doesn't work, it should be removed. You could just add a commit here, or post a separate PR. |
We should also be sure to add a section to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is requiring a merge, but besides that it looks awesome. Thanks a lot @f-fr !
so is there something I should/could do? |
Yes, please merge the master branch, resolving conflicts. |
This is a (first) implementation of a resolver for Mercurial repositories. It is basically a copy of the git resolver with git commands replaced by corresponding hg commands.
It also adds some tests for the hg resolver, which are also a copy of the specs for the git resolver. Because hg knows bookmarks (roughly corresponds to git branches) and named branches (not known to git), tests running on branches are duplicated, once for bookmarks and once for named branches.
Note that the specs take some time to run. The reason is that the test suite runs a lot of hg commands and hg is written in Python. Each command has a certain startup time (of the Python interpreter), which is negligible on the command line but very notable when running a bunch of commands in a test suite.
There is way around this: making use of the hg command server feature. But this requires more modifications to the code. So for the sake of ease of reviewing the changes, I'll put the command server stuff in a separate pull request.
I would be happy to hear your comment ;)