##// END OF EJS Templates
copy: to find copy source, walk parent of revision we're marking copies in...
copy: to find copy source, walk parent of revision we're marking copies in As shown in the previous patch, `hg cp --after --at-rev . src dst` fails if `src` is not in `.`. It seems obvious that you should always walk the *parent* of the revision you're marking copies in, but that's not how it was done for the working copy, and I didn't think to change it when marking copies in a non-working-copy commit. This patch fixes that by walking the parent commit instead, but only if we're marking copies for a non-working-copy commit. We need to leave the working-copy code unchanged because it depends on the weird behavior of `workingctx.walk()`. With these changes, there's very little overlap between the working-copy version and the non-working-copy version of `walkpats()`, but I've refrained from cleaning that up on the stable branch. Differential Revision: https://phab.mercurial-scm.org/D8494

File last commit:

r45090:d31d1c06 default
r45314:02bf61bb default
Show More
Cargo.toml
40 lines | 777 B | application/toml | TOMLLexer
[package]
name = "hg-core"
version = "0.1.0"
authors = ["Georges Racinet <gracinet@anybox.fr>"]
description = "Mercurial pure Rust core library, with no assumption on Python bindings (FFI)"
edition = "2018"
build = "build.rs"
[lib]
name = "hg"
[dependencies]
byteorder = "1.3.4"
hex = "0.4.2"
lazy_static = "1.4.0"
libc = { version = "0.2.66", optional = true }
memchr = "2.3.3"
rand = "0.7.3"
rand_pcg = "0.2.1"
rand_distr = "0.2.2"
rayon = "1.3.0"
regex = "1.3.6"
twox-hash = "1.5.0"
same-file = "1.0.6"
crossbeam = "0.7.3"
micro-timer = "0.2.1"
log = "0.4.8"
[dev-dependencies]
clap = "*"
memmap = "0.7.0"
pretty_assertions = "0.6.1"
tempfile = "3.1.0"
[build-dependencies]
cc = { version = "1.0.48", optional = true }
[features]
default = []
with-re2 = ["cc", "libc"]