Commits

Author Commit Message Labels Comments Date
Sean Farley
init: fix default hg breakage by returning the right type Originally, I copied the logic for the file scheme which calls _peerlookup(path) but in mercurial/hg.py they have: try: return thing(path) except TypeError: return thing So, our http(s) scheme broke default Mercurial because I tried returning thing(path) instead of just thing. A test has been added to catch this.
Sean Farley
init: test for git http(s) paths Wraps the http(s) schemes to test for a .git at the end of the url.
Sean Farley
init: test for raw git ssh paths
Sean Farley
git_handler: test for a raw git ssh uri By testing the uri early, we can reuse logic later in the method to parse the git uri. We rely on the isgitsshuri heuristic to return True or False, and if True, prepend 'git+ssh://' to the uri. Arguably, this is fragile, and am open to better ideas, but can't think of anything else currently.
Sean Farley
gitrepo: use isgitsshuri in islocal
Sean Farley
util: add heuristic method to determine if a uri is git This add the ability to copy & paste from github's (and other git-style) urls. Due to how we need to handle this, we need to also ensure that paths that end with .git are stripped of their extension.
Sean Farley
init: sort imports and clean up pep warnings
Sean Farley
import_git_commit: skip hgsubstate logic if file was deleted Previously, there was an edge case for Git repositories that started as Mercurial repositories and had used subrepos where a deleted .hgsubstate would be ignored and therefore reintroduced. This patch fixes that behavior by checking for the deleted .hgsubstate file first. A test has been added to verify behavior.
DurhamG
gitimport: add save frequency config If the importer encountered an error half way through a large import, all the commits are saved, but the mapfile is not written, so the process starts over from the beginning when run again. This adds the option for a config value that will save the map file every X commits. I thought about just hard coding this to 100 or something, but doing it this way seems a little less invasive.
DurhamG
pull: consider remotes during discovery The default dulwich graph walker only walks from refs/heads. During the discovery phase of fetching this causes it to redownload commits that are only referenced by refs/remotes. In a normal hggit case, this seems to mean it redownloads the entire git repo on every hg pull. Added a --debug to a test to check the object count (it decreased from 21 to 10 as part of this patch).
Siddharth Agarwal
tests: use Mercurial 3.4.1 for all-version-tests
Augie Fackler
hggit: adapt pull wrapper function for recent hg We can just accept-and-forward kwargs, which should be nicely futureproof for a while.
anatoly techtonik
Add version info to hggit for "hg --version -v" getversion() also reports dulwich version
Siddharth Agarwal
test-gitignore.t: drop check for ignore.readpats ignore.readpats was added at some point before 2.8. Mercurial upstream has now dropped the ignore module completely, so drop this check.
Yuya Nishihara
gitdirstate: eliminate naked except clause in compatibility code Tested with Mercurial 2.8.2, 2.9.2, bd98d073a34f (stable) and 7d24a41200d3 (default).
Yuya Nishihara
ignore: evaluate ignore.readpats to see if ignore module really exists Otherwise ImportError wouldn't be raised thanks to demandimport. Perhaps tests passed at e5b10a710036 because we are likely to have ignore.pyc in our mercurial tree.
DurhamG
test: update test output with summary phase info Upstream Mercurial has added phase info to the summary output. Let's update the test to reflect that.
DurhamG
ignore: update ignore logic to match upstream Upstream mercurial has dropped the ignore module and replaced it with 'include:' patterns. Let's do the same in hggit. Ran tests against Mercurial latest (6ac860f700b5) and Mercurial 3.4.
Gregory Szorc
git_handler: properly handle paths when files converge filectx.renamed() returns a 2-tuple or None. memfilectx.__init__ expects the copied argument to be either None or a string. Before, we were passing a 2-tuple, leading to the memfilectx storing the wrong type. This eventually resulted in doing a key lookup against a manifest with a 2-tuple, which made manifest.c throw an error.
Sean Farley
git_handler: update for bookmark changes in mercurial 3.5
Sean Farley
tests: update tests for new git output, sigh
Augie Fackler
Added tag 0.8.1 for changeset e6489cf3fe8c
Augie Fackler
setup: mark version as 0.8.1
Tags
0.8.1
Siddharth Agarwal
init: mark hg-git as compatible with Mercurial 3.4 Note that one test still fails with 3.4 -- however, it is a bug in core Mercurial, only affects edge cases (broken symlinks) in the test, and is fixed in upstream stable.
Siddharth Agarwal
overlaychangectx: use overlayrevlog logic to determine parents The old logic was broken -- it didn't work at the boundary between hg and git commits. The logic in overlayrevlog.parents handles that correctly. This is the last fix required for Mercurial 3.4.
Siddharth Agarwal
overlay: adapt diff to work with lazymanifests
Jason R. Coombs
Closing branch - upstream didn't want it.
Siddharth Agarwal
test-bookmark-workflow: fix for Mercurial 3.4
Augie Fackler
pull: acquire wlock before lock to fix lock-checker warnings
Sean Farley
overlay: flake8 cleanup
  1. Prev
  2. Next