Mercurial > hg-stable
view tests/test-convert-authormap.t @ 44180:58c74a517a00 stable
rust-dirstatemap: cache non normal and other parent set
Performance of `hg update` was significantly worse since the introduction of
the Rust `dirstatemap`. This regression was noticed by Valentin Gatien-Baron
when working on a large repository, as it goes unnoticed for smaller
repositories like Mercurial itself.
This fix introduces the same getter/setter mechanism at `hg-core` level as
for `set/get_dirs`.
While this technique is, as previously discussed, quite suboptimal, it fixes an
important enough problem. Refactoring `hg-core` to use the typestate
pattern could be a good approach to improving code quality in a future patch.
This is a graft of stable of 83b2b829c94e
Differential Revision: https://phab.mercurial-scm.org/D8110
author | Raphaël Gomès <rgomes@octobus.net> |
---|---|
date | Thu, 30 Jan 2020 14:57:02 +0100 |
parents | 4441705b7111 |
children |
line wrap: on
line source
$ cat >> $HGRCPATH <<EOF > [extensions] > convert= > EOF Prepare orig repo $ hg init orig $ cd orig $ echo foo > foo $ HGUSER='user name' hg ci -qAm 'foo' $ cd .. Explicit --authors $ cat > authormap.txt <<EOF > user name = Long User Name > > # comment > this line is ignored > EOF $ hg convert --authors authormap.txt orig new initializing destination new repository ignoring bad line in author map file authormap.txt: this line is ignored scanning source... sorting... converting... 0 foo writing author map file $TESTTMP/new/.hg/authormap $ cat new/.hg/authormap user name=Long User Name $ hg -Rnew log changeset: 0:d89716e88087 tag: tip user: Long User Name date: Thu Jan 01 00:00:00 1970 +0000 summary: foo $ rm -rf new Implicit .hg/authormap $ hg init new $ mv authormap.txt new/.hg/authormap $ hg convert orig new ignoring bad line in author map file $TESTTMP/new/.hg/authormap: this line is ignored scanning source... sorting... converting... 0 foo $ hg -Rnew log changeset: 0:d89716e88087 tag: tip user: Long User Name date: Thu Jan 01 00:00:00 1970 +0000 summary: foo