Commit Graph

16 Commits

Author SHA1 Message Date
Dirkjan Ochtman
cffa7e94e0 Test for open branches in the pull result. 2009-05-29 13:41:28 +02:00
Dan Villiom Podlaski Christiansen
ce861ee5d6 Mention what failed when given a non-numeric revision to clone/pull.
Replace test_branch_tip_update_to_branch_anchor with test_branch_pull_anchor
2009-05-20 21:15:47 +02:00
Augie Fackler
94a7ecbe68 Reorganize to have a more conventional module structure.
This means that hgsubversion now uses absolute imports instead of
relative ones, which makes the tests more reliable.
2009-05-13 21:39:39 -05:00
Dan Villiom Podlaski Christiansen
8646f77975 alternate approach for supporting svn schemes for repository paths
We now intercept the operations in the local repo class, and handle
the relevant operation ourselves. This frees us from wrapping all
relevant commands and replicating their functionality.

The implementation is incomplete; only one test has been modified to
use the standard Mercurial API with the changed URLs. Once changed,
those tests will likely reveal bugs or missing features in the new
wrappers. Also, new wrappers will be needed for handling conversion
flags such as -A/--authormap.
2009-05-07 20:50:53 +02:00
Patrick Mezard
b4010e516b hg_delta_editor: detect new branches issued from non-branch directories
This fix solves the following case: let's /dumb/layout/project be an existing
project. To normalize the trunk/branches/tags layout, people may do:

$ mkdir /project
$ mv /dumb/layout/project /project/project
# Oups, should have been trunk!
$ mv /project/project /project/trunk

trunk creation was ignore because:
- update_branch_map() sees it come from a non-branch copy source and ignores it
  (case #3).
- since it is not in self.branches, add_directory() ignores the non-existing path.
Then trunk is left uninitialized.

To solve this, we allow update_branch_map() to detect branches copied from
non-canonical locations.
2009-05-03 21:42:42 -05:00
Martijn Pieters
cdb6cab023 Implement parseurl support (#revision in repository urls)
Note: Normally when using parseurl, hg clone will treat the revision after # as
if it was passed in as --rev, treats that rev as a head and won't clone beyond
that. This wasn't implemented here, hence all the TODO's in the comments.

All we do is use the checkout parameter where appropriate to update the wc to
the selected revision.
2009-04-27 09:39:39 -05:00
Martijn Pieters
9967e4b505 clone: prefer tip of default to overall tip when updating 2009-04-24 20:36:38 -05:00
Augie Fackler
9aa46bc305 Fix and test for directory deletes during branch creation. 2009-04-07 17:38:13 -05:00
Augie Fackler
23ef2a31d9 Be more explicit about which branch I'm checking. 2009-03-02 23:54:14 -06:00
Augie Fackler
c356268aac Import cleanup thanks to pyflakes. 2008-12-24 11:17:50 -06:00
Augie Fackler
c6cb3f3922 fetch: Refactor extra creation to be shared by real and diff replay.
Add convert-compatible meta information to extra.
2008-12-23 11:10:32 -06:00
Augie Fackler
2377a3ba9f Improve branch closing in the case of a single-rev replacement of one branch
with another. Includes a test case.
2008-12-20 19:04:59 -06:00
Augie Fackler
245956d4eb hg_delta_editor: fix bad parent revision calculation in the case of a branch
recycling a name.

Also implemented marking branches as closed in both replay and stupid paths.
2008-12-10 14:29:05 -06:00
Patrick Mezard
4962def957 hg_delta_editor: fix parent revision detection on branch copy
Project items copyfrom revisions are irrelevant to parent revision detection,
only the project one or those of its ancestors matter. Items copyfrom is
useful when retrieving items content.

Former code resulted in incorrect converted graph for pyglet repository,
especially on the following revision:

------------------------------------------------------------------------
r274 | r1chardj0n3s | 2006-12-21 02:02:14 +0100 (Jeu, 21 Dec 2006) | 2 lines
Changed paths:
   A /branches/richard-glx-version (from /trunk:269)
   M /branches/richard-glx-version/pyglet/window/xlib/__init__.py
   R /branches/richard-glx-version/tests/test.py (from /trunk/tests/test.py:270)
   R /branches/richard-glx-version/tools/info.py (from /trunk/tools/info.py:272)
   R /branches/richard-glx-version/website/get_involved.php (from /trunk/website/get_involved.php:273)

Branching to horribly mangle GLX
2008-12-10 11:03:22 -06:00
Patrick Mezard
f378fe3193 hg_delta_editor: do not assume branches are copied from trunk by default
Here is what happen in jquery repository:
- kelvin-dev branch is created in r1617 with an empty directory for the
  datePicker plugin
- commits are done
- datePicker plugin is merged in trunk

Before the fix, the converter assumed the initial empty commit had for parent
some other commit of trunk, therefore adding all its files, which was wrong.
And we ended with 'alignDemo.html' in converted trunk@5946 while it was not in
the source revision.
2008-11-29 11:25:01 -06:00
Patrick Mezard
05423736da Add a disabled test for unrelated branches
The fix is not obvious but preserving the test helps fixing other stuff.
2008-11-29 11:25:01 -06:00