Summary:
We probably won't be able to maintain the static http interface. Therefore
remove it. This also solves the headache of dealing with named branches and
tags.
Reviewed By: singhsrb
Differential Revision: D13934436
fbshipit-source-id: 246d695b4d08142d0f4363e143b459ac4952d599
Summary: Remove "hg branch" invocation to make the test future-proof.
Differential Revision: D13934440
fbshipit-source-id: cb410abc86d6e23c952ba5562b7918e2dc281ac3
Summary: Remove "hg branch" invocation to make the test future-proof.
Differential Revision: D13934437
fbshipit-source-id: a82497e7dfc589b363bf140fef8b8ab727ff461a
Summary: Remove "hg branch" invocation to make the test future-proof.
Differential Revision: D13934443
fbshipit-source-id: 3629e7bb27257c7cca7b7aab319d2cd1be99155a
Summary: Remove "hg branch" invocation to make the test future-proof.
Differential Revision: D13934433
fbshipit-source-id: 3184f8355de7409579cbee4d3c8bfd56ce762cc3
Summary: Branches will be disabled. Remove usage of them.
Differential Revision: D13909731
fbshipit-source-id: 5d1ea6c54393d9e6c8c8bdb7a1a21a38fc5ce873
Summary: Branches will be disabled. Use bookmarks instead.
Differential Revision: D13909729
fbshipit-source-id: 849fa9614aa92f0b7a709c2e36214b6211988d68
Summary:
If the history portion of a loose file was corrupt, users would often
get errors like "ValueError: substring not found" when trying to split on the
null separators. Let's catch that and handle it where appropriate. For cache
stores, we move it out of the way and return a KeyError, so the union store will
move on to try to fetch it from the server again. For local stores, we return a
ValueError and surface it to the user since their local data may be corrupt.
Reviewed By: quark-zju
Differential Revision: D13976499
fbshipit-source-id: 39e63f19fc752ca0179fbc5b0908a28d46de3a3a
Summary:
simplecache can be configured with memcache backend
this will potentially save us a lot of disk space and allow us to have a shared cache between hg hosts.
getting rid of the caches on disks will save 966GB of disk space per machine.
P60876105
Reviewed By: quark-zju
Differential Revision: D13950137
fbshipit-source-id: 015e971f1bfed334edb4fe2381c2c6336b84b161
Summary:
reuse the connection for other requests
I made it global
Reviewed By: quark-zju
Differential Revision: D13964705
fbshipit-source-id: ed759e36f15b91a838dc2c20b58384ae54ad5d48
Summary:
simplecache extension support both memcache and local disk as a cache store.
we are going to use memcache on hg servers
getting rid of the caches on disks will save 966GB of disk space per machine.
P60876105
this will also allow hg machines to share the same cached data
Reviewed By: DurhamG
Differential Revision: D13927163
fbshipit-source-id: 3155c61da4a82dd7a790a8ccf8dbc701fe3957e1
Summary:
`hg status` should show slashes in filepaths standard for the diff format. Now it shows windows' backslash.
More details:
https://fb.workplace.com/groups/scm/permalink/1933867456662865/
Reviewed By: quark-zju
Differential Revision: D13944478
fbshipit-source-id: d34d2c6bc0b9966e1806e36668c21e8abfc83a02
Summary:
It looks like D13924759 accidentally replace `prog.value` with `prog` in one
location, which is causing crashes of the form:
TypeError: unsupported operand type(s) for +=: 'nullbar' and 'int'
Reviewed By: quark-zju
Differential Revision: D13984835
fbshipit-source-id: cbf1a52d8048b623beac6048224767f0abb7f5c0
Summary:
On linux, ask /proc/self/mountinfo for the block device information, and then
ask udev for the filesystem type. It works for block devices, and is what
util-linux tools like findmnt, lsblk do.
This detects ntfs-3g mounts of block devices as `fuse.ntfs`.
Reviewed By: DurhamG
Differential Revision: D13982877
fbshipit-source-id: eacea6a949b54d9a6483f2c55c437718eb89c243
Summary:
The constant is not exposed in linux/magic.h, perhaps because fuse is an
optional feature. It's unlikely to be changed. Define it so fuse fstype
can be detected.
Reviewed By: DurhamG
Differential Revision: D13969640
fbshipit-source-id: 5084bdacf193261a187a74546a82995f2dd2d7c6
Summary: `lib/argparse` fails to build with cargo. Removing the crate from the workspace to unblock building with cargo.
Reviewed By: quark-zju
Differential Revision: D13969332
fbshipit-source-id: 0299f74e6aa81632ce64005d91fa2c30a32f5b96
Summary:
Change the test to test extras instead of branches so it could still work
once `hg branches` gets removed.
Reviewed By: phillco
Differential Revision: D13934439
fbshipit-source-id: 60860936f60e177e12547345cbbd7591b1161a6f
Summary:
Change the test to test extras instead of branches so it could still work
once `hg branches` gets removed.
Reviewed By: phillco
Differential Revision: D13934445
fbshipit-source-id: e15c5b652481fcf95df851cdda8998764a98660c
Summary:
Not sure why it's unstable. But the fetch stat gets printed sometimes. Add it
as an optional line.
Reviewed By: phillco
Differential Revision: D13934444
fbshipit-source-id: 3c39737fe95b1572ffcf672a7d8d431218202402
Summary:
The test was about warning of "heads". We allow multiple heads and have already
disabled some checkheads code paths (ex. D8148016). With commit cloud multiple
heads are a norm and not something that should be warned.
Reviewed By: phillco, singhsrb
Differential Revision: D13934438
fbshipit-source-id: e2e4971e05c5e0ca3ed4a5160c16d90f4f847e5f
Summary:
The test was testing "fast-forward" merge, like:
b
|
a (working copy, run "hg merge b && hg ci -m merge")
It's a no-op without branches. But if "a" and "b" have different branches, the
merge would do something and create a merge commit.
Without named branches, fast-forward merge would always be a no-op. Therefore
remove the test.
Reviewed By: phillco, singhsrb
Differential Revision: D13910539
fbshipit-source-id: 9f5a7817a3ff012d429810da3d54ab2174371bd0
Summary:
This is breaking the tests. It has existed for years, so not sure why
the recent reformatting broke it now.
Reviewed By: quark-zju
Differential Revision: D13976462
fbshipit-source-id: 08f3a9f08ec54449b4554017ea9806f3ee51afcb
Summary:
Those are treated differently in eden or git vs ripgrep's ignore crate.
Tracking issue: https://github.com/BurntSushi/ripgrep/issues/1183
Change the gitignore rule to ignore `{}` patterns to solve the issue.
Reviewed By: sfilipco
Differential Revision: D13924426
fbshipit-source-id: 910bfff159509f2840ddcd4b4351577629228257
Summary: We don't really need to check misses here as neither of request fucnctions return misses after fetching from the server. They raise exception if there are any misses.
Differential Revision: D13908252
fbshipit-source-id: 80b6e4fb79b419b5e6d3b343b3bd46d3f8dc7d3c
Summary: Implemented logic for fetching data from the scmmemcache and the server in pack files format. By default `prefetch` will still use loose files, unless the `remotefilelog.fetchpacks` config flag will be set to true.
Differential Revision: D13905733
fbshipit-source-id: cc559f5bc600067199a91efe6cf44b1bde6bf69b
Summary: New get/set protocols for pack files. Also removed hitcount from `receive` method, because it is not used.
Differential Revision: D13924759
fbshipit-source-id: 1382b6f2bc865a19125f3ccd17a779cd16f08b50
Summary: To add the data fetched from the server to the scmmemcache, we need to know pasths to the packfiles created.
Differential Revision: D13905734
fbshipit-source-id: 7c470b560e32e63e7df4f960be92bc9b6da9de3d
Summary: Moved fetching loose files from the server to the separate function
Reviewed By: DurhamG
Differential Revision: D13855807
fbshipit-source-id: 39821644abcdc7375ba1b9ef9519fd2083eb0a71
Summary: Move scmmemcache set/get commands protocol to the cache wrapper to isolate it from the main logic
Reviewed By: DurhamG
Differential Revision: D13855809
fbshipit-source-id: 95b70f7f9d10d97beff107f9f6e5e4f5a8a307c1
Summary: List of missed files is converted to a set many times. So changing the type to a set.
Differential Revision: D13924760
fbshipit-source-id: 65fe52ff6113724d8f7f7a8d5b3c1501f245eedc
Summary: Move scmmemcache receive logic to the cache wrapper to isolate it from the main prefetch logic
Reviewed By: DurhamG
Differential Revision: D13855808
fbshipit-source-id: d0da84857797e3e155507fcf284b39a146677e54
Summary:
On windows we use zip files to load the mercurial packages, but this
was failing because the edenscm module did not have an __init__.py file. Let's
include that in the build.
Reviewed By: singhsrb
Differential Revision: D13974190
fbshipit-source-id: 90e2cc5256fa08281202e11292e3ddf4cc000c01
Summary:
In some cases we are mounting ntfs in a linux host using ntfs.3g and we
want to prevent it from writing symlinks that can't be read from Windows.
Some background, ntfs.3g supports symlinks, but it produces IntxLNK which cause
problems when mounted into a real Windows machine. We don't support symlinks on
Windows anyway, so we want to just disable this. Unfortunately it's difficult to
detect if we're on a ntfs.3g fuse mount, so instead we're just going to have the
machine set up the repo with this extension enabled.
Differential Revision: D13964546
fbshipit-source-id: 7545538e51be4c986a50161165d7cc2e64280555
Summary: Ensure that Hyper uses HTTP/2, since we'd like to support connection reuse and multiplexing.
Reviewed By: DurhamG
Differential Revision: D13925320
fbshipit-source-id: 0f39e66fe35a0dc95966d16772d1ab8988067c11
Summary: In Rust it is typically more idiomatic to have a static method on a struct to produce a builder, since this means the builder doesn't need to be explicitly imported to construct a new instance of the struct.
Reviewed By: DurhamG
Differential Revision: D13925323
fbshipit-source-id: c06d5d42ba941dbbb2c619f9470e79fa23f35f68
Summary: Rename Mononoke API to Eden API, per war room discussion.
Reviewed By: quark-zju
Differential Revision: D13908195
fbshipit-source-id: 94a2fe93f8a89d0c5e9b6a24939cc4760cfaade0