Dear, As I can't create an account on the Trac system, to open a bug request with the patch, I am sending it through the mailing list.
The patch contain the upgraded code for working with mercurial 1.7 available in ubuntu natty. I do not know, if this is working with the last 1.8, as some more changes where introduced at Mercurial API level. I was able with-it to sync the CVS of snmp-info on sf.net to a local hg repository. Regards, Psy.
1 patch for repository http://darcs.arstecnica.it/tailor: Sun Jun 5 10:27:58 CEST 2011 [email protected] * Corrected_hg_API corrected to be working with hg version:1.7.5-1ubuntu1 New patches: [Corrected_hg_API [email protected]**20110605082758 Ignore-this: 712afd454265dc39e95335d068a5e5d3 corrected to be working with hg version:1.7.5-1ubuntu1 ] { hunk ./vcpx/repository/hg.py 361 except AttributeError: project = self.repository.projectref() debug = project.config.get(self.repository.name, 'debug', False) - self._ui = ui.ui(project.verbose, debug, not debug, False) + self._ui = ui.ui() return self._ui def _getRepo(self): hunk ./vcpx/repository/hg.py 426 notdirs = self._removeDirs(names) if notdirs: self.log.info('Adding %s...', ', '.join(notdirs)) - self._hg.add(notdirs) + for f in notdirs: + self._hgCommand('add', f) def _commit(self, date, author, patchname, changelog=None, names=[], tags = [], isinitialcommit = False): hunk ./vcpx/repository/hg.py 463 empty.write("\nEmpty original changeset by %s:\n" % author) empty.write(logmessage + "\n") empty.close() - self._hg.add(['.hgempty']) + self._hgCommand('add', '.hgempty') self._hgCommand('commit', **opts) def _postCommitCheck(self): hunk ./vcpx/repository/hg.py 592 self._getUI() if exists(join(self.repository.basedir, self.repository.METADIR)): + self.log.info('Repository in %r exist...', self.repository.basedir) create = 0 else: create = 1 hunk ./vcpx/repository/hg.py 631 ignore.write(sfrelname+'.journal') ignore.write('$\n') ignore.close() - self._hg.add(['.hgignore']) + self._hgCommand('add', '.hgignore') self._hgCommand('commit', '.hgignore', message = 'Tailor preparing to convert repo by adding .hgignore') hunk ./vcpx/repository/hg.py 657 self.repository.basedir, [subdir]) walk = self._getRepo().dirstate.walk - for path in walk(matcher, True, False): + for path in walk(matcher, [], True, False): yield path except ImportError: # hg < 1.1 } Context: [Better check against empty log messages in darcs target [email protected]**20110313150626 Ignore-this: 86762a7461d685a517df1eab8dff1115 ] [Removed pointless debug message [email protected]**20110313143713 Ignore-this: 1db3eb1346d1951d24349221e60a6e9 ] [`get_apparent_author()` was deprecated 1.13, dropped its usage [email protected]**20110313141754 Ignore-this: 192e4360c1798ed3a9ba59e289411597 ] [Small fix for dealing with missing API method on bzr > 2.3 [email protected]**20110126140705 Ignore-this: ced8a1b68d9c7c99a188c702f3cc93de ] [Removed pointless double check [email protected]**20110313102547 Ignore-this: 96e7e922d8f53c9d9b0d5ffd4805d6d3 ] [Skip empty logentries from restricted view svn repositories [email protected]**20110313102030 Ignore-this: 95de67aa439a76d32b3c00c2e264a6c5 ] [Better usage of join on pathname [email protected]**20101108172006 Ignore-this: 895c3b6d456c046c8ec1fbd27f827ff5 ] [One less hardwired "_darcs" [email protected]**20101108171846 Ignore-this: 95dd12c7898246b686326ba0e003474e ] [Added an example of metadir usage, from Gabriel's email [email protected]**20101108171808 Ignore-this: 7a979dcc97ad01fce5407d09e02542d2 ] [Add a metadir option to darcs target [email protected]**20090608145130 Ignore-this: 11101ec8c6f80ec72f695a455ca04751 ] [Assemble the complete changelog under darcs when PATCH_NAME_FORMAT is empty [email protected]**20101001134805 Ignore-this: 565161aab7b9ce7ff588c5942047f7e7 ] [Honor the empty PATCH_NAME_FORMAT [email protected]**20101001134620 Ignore-this: b11414bb0179357686dad41074bed218 ] [Don't fail with empty changelog. Dave Love <[email protected]>**20100903133642 Ignore-this: c1c62b1a2098d16b0405ddc7f406636a Observed with conversion from CVS with an "*** empty log message ***" change. ] [Honor a preexisting target bazaar branch [email protected]**20100622152803 Ignore-this: 5b2802acc64d742a4816037bd57e2ed3 ] [Prefer the author of the patch if given, falling back to the committer [email protected]**20100622152622 Ignore-this: 4520ca85cb501450ae29a6e83a51e2e7 ] [Compatibility with darcs>2.4 [email protected]**20100619130752 Ignore-this: 15c60cb3d58ba2057275104405f909e8 ] [Write tags to Bazaar repositories Stephen Compall <[email protected]>**20090902212014 Ignore-this: cc9bc4be87b01a1421c57e59f46e2504 ] [Rollback of [1657]: don't write to `pending.tentative`, neither on darcs v2 [email protected]**20090327104328 Ignore-this: 223bf624bc2ebaa1445fca32e49efed7 ] [Fix hg (in)compatibility of the week [email protected]**20090327102603 Ignore-this: cae675754f72b01e7d5d2d8902fee558 This allows Mercurial 1.1 to delete files. This patch was first found at https://bugzilla.redhat.com/show_bug.cgi?id=478841, the "reverted patch" by Dan Horak, 2009-01-07 12:32 EDT: hopefully this version works also for older Mercurial versions. Thanks to Chad Burrus for making me aware of the problem. ] [Don't fail removing a non existing entry, emit a warning instead [email protected]**20090317132420 Ignore-this: 39e1c7ed640c836b7cd1b2bc37883970 ] [Little fixes to git target [email protected]**20090312164849 Ignore-this: bfbd0af22dfd6888299824f5a0e26742 Thanks to Youness Alaoui (KaKaRoTo) ] [Remove darcs 2.1+ "Ignore-this: ..." noise from the changelog [email protected]**20090205134048 Ignore-this: e3f08f5e953bad67f210cee9c47bc2bb ] [Maintaining mercurial compatibility is a daily effort [email protected]**20090116151025 Ignore-this: 89aad018f1db91598ce238a01cc31bb4 ] [Fix git environment variables usage Bruce Guenter <[email protected]>**20090108102740 Ignore-this: e4044aaa2246e339036c3e86a0bafead ] [Fix #172, mercurial 1.1 compatibility [email protected]**20090107170956 Ignore-this: a7f933265c668dce93e071d8dbda3290 See also https://bugzilla.redhat.com/show_bug.cgi?id=477148 ] [darcs target, if darcs record fails, try a repair Henrik Hjelte <[email protected]>**20081205081027 Ignore-this: e7fab284af3c431d751e871bf8416b88 Solve a problem with the config.tailor attached to http://bugs.darcs.net/issue693 ] [git source remove try-except for a thing we can check for Henrik Hjelte <[email protected]>**20081205075458 Ignore-this: eae7c82b09c5c308b1acf42618496d33 The try-except clause seems (from the comment) to be there in case there is 'no tag dir', but we can detect this with os.path.exists and instead remove the try-except. ] [Write to `pending.tentative` when using darcs v2 [email protected]**20080914150523] [When importing, we may want to host changes in a multi-level subdirectory [email protected]**20080827093624 But to be able to do so, "svn mkdir" should have "--parent" option ] [fix rev['notes'] being empty stacktrace [email protected]**20080806150041 Fix "IndexError: list index out of range" because there was no 'notes' in the filelog ] [Support git target renames within already-renamed directories [email protected]**20080717213137] [Clear git target renaming error messages [email protected]**20080717213040] [Support git target renaming of empty directories in disjunct operation [email protected]**20080717212932] [tailor_git_target_disjunct_rename [email protected]**20080717212720 Add a case into the git target _renamePathname() method for disjunct directory operation. In this situation, the caller expects us to perform the move from the old name to the new name via git, after which it will replace the renamed file or directory with its true contents from the source commit. XXX Note: I am not 100% certain whether this works for directories that have been renamed and also have files added to them in the same commit. ] [The `FakeLogger` needs to implement debug() too [email protected]**20080717211053] [Substitute REPLACED with RENAMED when it is the case [email protected]**20080717210614 This is not enough and there are still problems with the REPLACED kind of entries: when it's a directory that gets replaced, tailor should go down the slipping route of adding REMOVEs for entries that were effectively deleted... ] [Split the entries one per line [email protected]**20080717205719] [Set `is_directory=True` when it is the case [email protected]**20080625144444] [Sync with same P4 depot_path with which got the change list [email protected]**20080625141744] [Clean up the code [email protected]**20080620130517 * normalize whitespace around `==` * factorized `fname[1:-1]` * clarified some comments * use `for:else:` (thx LotR!) ] [Removed useless condition [email protected]**20080620093150 Why does the monotone backend need to always commit everything instead of the exact changes? ] [Use `variable is None` and not `variable == None` [email protected]**20080620093002] [Handle monotone timestamps with microseconds [email protected]**20080620092712] [Fix Debian BTS 486604 [email protected]**20080617083124 Raise an error when using the same kind of VCS and same subdir. ] [Minor optimization [email protected]**20080611181416] [Rename the pending file on darcs record failures [email protected]**20080611181237] [Move common import stmt at top level [email protected]**20080611181112] [Be backward compatible with existing statefiles [email protected]**20080611172924 Using class attributes to initialize the default values is the right way of extending the `ChangesetEntry`, without the risk of triggering `AttributeError` on ''old'' instances loaded from a statefile built with a previous version of tailor. ] [Removed wrong tests for #64 [email protected]**20080610221331 The reason of the failure must be searched in the source backend, CVS in this case: it should infer the added directory. ] [Use the `.is_directory` slot introduced by `ChangesetEntry` [email protected]**20080610221003] [Move additional entry info after the name [email protected]**20080610220907] [Postpone the execution of `darcs --version` [email protected]**20080610212549] [[aegis] skip symlinks entries <[email protected]>**20080609063535 Aegis does not handle symlinks as source files. ] [[aegis] config file creation improved <[email protected]>**20080609063219 Adds a config file if at commit time it's not yet present in the target repository. ] [identify symlinks entries <[email protected]>**20080609062919 This changeset adds the ChangesetEntry.is_symlink flag (default to False). ] [[bzr] compatibility with python < 2.5 Walter Franzini <[email protected]>**20080609054041 The code in the bzr backend contained a usage of the yield statement forbidden before python 2.5 (inside the try part of a try:finally:). This change-set is a workaround. ] [[aegis] adapt the changeset even if the target repository is empty <[email protected]>**20080606133245 Adapt the changeset even if the target repository is empty since some thing has to be done: * remove directory * remove deletion of files not in the repository * adapt renames ] [print is_directory flag <[email protected]>**20080606132740] [Stderr is needed to recognize when darcs 2 is missing `pull --xml-output` [email protected]**20080610075658] [Put file deletion before parent directory deletion [email protected]**20080605000200] [Use rsync --delete when the target is darcs [email protected]**20080605000015 The darcs target backend now writes directly to the pending file to assemble new patches, and thus it assumes the source already applied all the changes, in particular removed deleted files. ] [Don't use single uppercase letter for variables [email protected]**20080604235634] [Loop over a copy of the list, since we are going to remove items [email protected]**20080604164502] [Always set the `.arch-ids` as an `EXTRA_METADIRS` under tla [email protected]**20080604121824] [Revise logged information [email protected]**20080604121556 Show the author and the timestamp of the upstream changeset, and strip the trailing waitspace from the changelog. ] [Show the actual exception, it may contain the error message from the backend [email protected]**20080604112748] [Don't perform the post-commit-check if using `look-for-adds=True` with darcs [email protected]**20080604111601] [Fix the usage of the debug option value [email protected]**20080604110017] [Recognize hg directory renames [email protected]**20080604103046] [Reduce hg verbosity [email protected]**20080604102915 Use --quiet when `debug=False`. ] [Handle "split-file" under hg [email protected]**20080604010156] [Workaround to what seems hg merge strangeness [email protected]**20080604002836 Trying to convert hg own history to darcs, tailor found several kinds of strange patches, that is changesets that brings in entries not shown in the patch log, or tagged as updates when the entry does not still exist, or deleted twice in different patches. This patch tries to fix the last two problems. My only workaround to the first, until I find a better way if any, is to use `looks-for-adds=True` on darcs. ] [Show the actual changeset that triggers the error [email protected]**20080604002240] [Add --ignore-times on darcs record [email protected]**20080604002206] [Fix #81: handle directories add/remove under hg [email protected]**20080603162422] [Removed useless import [email protected]**20080603162049] [Fix typo [email protected]**20080603154832] [Fix #66: Use `_hgCommand()` to copy/remove items [email protected]**20080602173305 `repo.copy(source, target)` errors out with a quite surprising "target does not exist" message. ] [Implement the `_postCommitCheck()` method for hg [email protected]**20080602163243] [Make post-commit-check True by default [email protected]**20080602163222] [Ignore stderr when fetching darcs XML output [email protected]**20080602153509] [Document the 'overwrite-tags' for git [email protected]**20080602144559 Also, emit a critical log indicating the possible source of the problem, mentioning the option. ] [TAG Version 0.9.35 [email protected]**20080602121233] Patch bundle hash: 179ab7b4325139db840151abc93c1eea2e084c1b
_______________________________________________ Tailor mailing list [email protected] http://lists.zooko.com/mailman/listinfo/tailor
