Summary: There were bunch of warnings when compiling locally with debug_assertions
Differential Revision: D29594303
fbshipit-source-id: 7d257ff3d2450bfe8a089246b18511eb091ca361
Summary:
We had an issue in native checkout when update needed to remove a symlink and then create a directory with same files instead of symlink.
This used to fail, because update has a plan to write to new files, but the files has already 'existed' as part of a symlink, so unknown files check were failing.
This code makes sure that when listing untracked files we do not go inside symlinks, and treat audit errors from VFS as if file did not exist
Reviewed By: DurhamG
Differential Revision: D29567562
fbshipit-source-id: 1b6751cc00c3c628e2cab8c081540dba200209fa
Summary:
Add new client side API for upload trees.
Before uploading them, check what is already present on the server, similar as we check for filenodes.
I also added --force flag for the `hg cloud upload` command. It should be useful in general and useful for testing.
Reviewed By: markbt
Differential Revision: D29586388
fbshipit-source-id: 73c549f1a0d4328a64a133ab508fb4d253a4c33d
Summary:
upload filenodes (client side)
On the client side I implemented file upload and filenodes upload in the same API repo.edenapi.uploadfiles
This is because we should use the tokens from the file upload part to feed then into filenodes upload request.
Reviewed By: markbt
Differential Revision: D29549091
fbshipit-source-id: 436de187c8dce9a603c0c0a182e88b582a2d8001
Summary:
subprocess.run doesn't capture the output of a command by default, thus the
buckversion is populated with a CompletedProcess, which cannot fit in the
environment.
Differential Revision: D29576149
fbshipit-source-id: 9d0e13477ac2ffc479e093ea7231eb552c31a5ec
Summary: update bundle to use byteorder::BigEndian in preparation for Bytes upgrade. New versions of Bytes no longer reexport it.
Differential Revision: D29561928
fbshipit-source-id: ce44d9c27f9786a4bcec8f7166763c95828847e8
Summary: Use the class added on previous diff on redacted config as well
Reviewed By: mitrandir77
Differential Revision: D29521423
fbshipit-source-id: 70f5a1cbce80a0068a0f438b7d217bfffb6a1592
Summary:
I've seen periodic reloading of stuff in at least 3 places in mononoke (2 of which I added, skiplists and redaction config, and also on segmented changelog, there might be more).
This stack extracts that logic to a common place, so we don't need to reinvent that logic all the time, and it's easier to do it the next time.
Reviewed By: mitrandir77
Differential Revision: D29520651
fbshipit-source-id: 59820c03f168cb25e2c6345e36746121451f34e2
Summary: We don't need it anymore, and we recently had a sev that was caused by globalrev sql syncer. Let's remove it
Reviewed By: mitrandir77
Differential Revision: D29557246
fbshipit-source-id: c7d0232203b098dff3d750d34093877240d961c4
Summary: needed to set up tw health check
Reviewed By: StanislavGlebik
Differential Revision: D29580808
fbshipit-source-id: 6a3833d652979915fd44dc6d89511192397d8b96
Summary: There is no point to keep an empty buffer around.
Reviewed By: DurhamG
Differential Revision: D29565105
fbshipit-source-id: 1b8ea5e0158d89e119b01b1bbedd25dc280b44f3
Summary: The keepfiles arg for the purge method is unused. Delete it and save a repo recrawl.
Reviewed By: DurhamG
Differential Revision: D29567714
fbshipit-source-id: 47d6b1d13aab3b740685528bffda4e2f77c97b2a
Summary:
If heads exist in the repo, there is no need to pull them.
Practically we configured selectivepull to include master and stable.
While the master head is excluded by the pull fast path, the stable bookmark
previously triggers the heavyweight pull. This diff makes it that we can
skip the heavyweight pull and avoid other issues like devel-warn importing
empty changegroup.
Reviewed By: DurhamG
Differential Revision: D29525476
fbshipit-source-id: 9d1ff28d1194cac22ae66e669a5bd9dbe3f750c4
Summary:
The recent treemanifest refactors broke this. The behavior seems
different on Mac vs others, so let's just make the output optional with (?).
Reviewed By: singhsrb
Differential Revision: D29565879
fbshipit-source-id: 35457a6d38b02b802cc0f98d31dcab38711ff1fe
Summary:
Reenables dynamicconfig loading with eden backingstore. Previously it
broke edenfs-windows-release, but we believe the
opensource/fbcode_builder/manifests/eden tweak has fixed it.
Reviewed By: xavierd
Differential Revision: D29561192
fbshipit-source-id: 775dd21d177f3baa09b0192e7d3f7231008c3766
Summary: The `repo` weakref might be invalid after `__del__`. Check before using it.
Reviewed By: DurhamG, singhsrb
Differential Revision: D29565718
fbshipit-source-id: 54c86414cd80db0d10a3966ed4e677b31ddcd906
Summary:
cpython-ext is not part of hg business APIs. It does not need to be consistent
with lower-case class name (and hg codebase is okay with non-lowercase class names,
just that most classes there are lower-case).
This resolves a rustc warning about the struct name.
Reviewed By: kulshrax
Differential Revision: D29526579
fbshipit-source-id: a4bc8e788d55c65aae9eaa87e2c684c2fded7ae2
Summary: There are a lot of places in user visible text such as command line help where EdenFS is mentioned as eden/Eden/edenfs/EdenFS. This will make it consistent to 'EdenFS' in most cases. In the places where it is referring to the process/daemon, 'edenfs' will be used.
Reviewed By: chadaustin
Differential Revision: D29419151
fbshipit-source-id: 7b8296f0a0c84fdcb566ff811f7fcedbe7079189
Summary:
I got frustrated with the fact that half of the functions in
megarepo_api required the source name to be wrapped into newtype and
other half didn't. This refactor unifes it everywhere except the thrift
datastructure itself - not sure if we can afffect thrift codegen in this way.
Reviewed By: StanislavGlebik
Differential Revision: D29515474
fbshipit-source-id: 2d55a03cf396b174b0228c3fcc627b2296600400
Summary:
The merge commit in case of change_target_sync_config won't be representing any
consistent state of the target so we don't want to write the remapping state
file there.
Reviewed By: StanislavGlebik
Differential Revision: D29515476
fbshipit-source-id: b0703be1127af6582785510fde51ff8501fb4f17
Summary:
in case of change_target_sync_config we'll be creating move commits only for subset
of sources to let's change the function singature to so it's possible to
specify such subset.
Reviewed By: StanislavGlebik
Differential Revision: D29515475
fbshipit-source-id: 31002ec56dad872948bcbc79b0ed5fdb794e1f10
Summary:
The `change_target_config` methods responsibilities have a huge intersection
with `add_target_config`: the change method needs to know how to merge-in new
sources into the target and the whole "create move commits, then create merge
commits" flow can be reused.
Reviewed By: StanislavGlebik
Differential Revision: D29515301
fbshipit-source-id: c15f95875cbcbf5aad00e5047f6a8ffb55c4da31
Summary:
With segmented changelog, this `if head not in repo` check goes and queries
the server to know if this exists. That's slow:
https://fb.workplace.com/groups/corehg/permalink/880425025886062/
This should hopefully fix it.
Reviewed By: quark-zju
Differential Revision: D29550877
fbshipit-source-id: f874fea3f42e1bde0acd4146bcfede4854b585f1