sapling/eden/mononoke
Mateusz Kwapich 85f31f3f85 move reusable functions to common
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
2021-07-06 08:32:48 -07:00
..
admin Add command to add RedactionKeyList to RedactionConfigBlobstore on mononoke_admin 2021-06-30 08:57:30 -07:00
aliasverify third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
alpn third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
backfill_derived_data third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
benchmark_filestore third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
benchmarks third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
blobimport third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
blobimport_lib third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
blobrepo mononoke/blobstore: new is_present semantics via enum 2021-07-05 09:17:29 -07:00
blobrepo_utils third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
blobstore mononoke/blobstore: single lookup for is_present multiplex 2021-07-05 11:13:18 -07:00
blobstore_healer third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
blobstore_sync_queue third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
bonsai_git_mapping third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
bonsai_globalrev_mapping third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
bonsai_hg_mapping third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
bonsai_svnrev_mapping third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
bookmarks third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
bulkops third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
cache_warmup third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
changesets third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
cmdlib Create class to load redaction config from configerator 2021-06-30 08:57:30 -07:00
cmds mononoke/blobstore: new is_present semantics via enum 2021-07-05 09:17:29 -07:00
commit_rewriting third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
common third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
derived_data unodes: fix find_unode_renames for files copied multiple times 2021-06-30 12:06:46 -07:00
edenapi_server Add redaction config to common config, don't use it yet 2021-06-30 08:57:30 -07:00
edenapi_service mononoke: Implement loadshedding checks 2021-07-05 10:18:52 -07:00
fastreplay Add redaction config to common config, don't use it yet 2021-06-30 08:57:30 -07:00
filenodes third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
filestore mononoke/blobstore: new is_present semantics via enum 2021-07-05 09:17:29 -07:00
git third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
gotham_ext mononoke: Use new rate limiting crate 2021-07-05 10:18:51 -07:00
hgcli third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
hgproto third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
hook_tailer Add redaction config to common config, don't use it yet 2021-06-30 08:57:30 -07:00
hooks third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
lfs_import third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
lfs_import_lib third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
lfs_protocol third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
lfs_server mononoke: lfs: Use new load shedding config 2021-07-05 10:18:51 -07:00
manifest third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
megarepo_api move reusable functions to common 2021-07-06 08:32:48 -07:00
mercurial add 'upload/filenodes' request 2021-06-29 19:28:45 -07:00
metaconfig Sync changes from D29360425 to fbcode 2021-06-30 08:57:30 -07:00
microwave Add redaction config to common config, don't use it yet 2021-06-30 08:57:30 -07:00
mononoke_api mononoke: make mononoke_api stderr output less spammy 2021-06-30 00:52:10 -07:00
mononoke_api_hg mononoke/blobstore: new is_present semantics via enum 2021-07-05 09:17:29 -07:00
mononoke_hg_sync_job mononoke: fix GetGlobalrev sql query 2021-06-30 03:57:02 -07:00
mononoke_types third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
mutable_counters third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
newfilenodes third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
observability third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
permission_checker third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
phases third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
pushrebase third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
pushrebase_mutation_mapping third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
quiet_stream third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
rate_limiting mononoke: Use new rate limiting crate 2021-07-05 10:18:51 -07:00
reachabilityindex third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
regenerate_hg_filenodes third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
repo_attributes third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
repo_client mononoke: Use new rate limiting crate 2021-07-05 10:18:51 -07:00
repo_factory Initialise redaction config using configerator 2021-06-30 12:19:13 -07:00
repo_import third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
revset third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
scs third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
scs_server Add redaction config to common config, don't use it yet 2021-06-30 08:57:30 -07:00
segmented_changelog third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
server mononoke: Implement loadshedding checks 2021-07-05 10:18:52 -07:00
sshrelay third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
statistics_collector third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
streaming_clone third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
tests mononoke: Use new rate limiting crate 2021-07-05 10:18:51 -07:00
time_window_counter rust: ratelim: Update to new futures 2021-07-05 07:09:53 -07:00
tunables mononoke/blobstore: single lookup for is_present multiplex 2021-07-05 11:13:18 -07:00
unbundle_replay Add redaction config to common config, don't use it yet 2021-06-30 08:57:30 -07:00
upload_globalrevs third-party: patch os_info to properly support Centos Stream 2021-06-25 21:07:33 -07:00
walker Add redaction config to common config, don't use it yet 2021-06-30 08:57:30 -07:00
Cargo.toml mononoke: Use new rate limiting crate 2021-07-05 10:18:51 -07:00
README.md mononoke: add README.md and the missing pieces for supporting cargo (#13) 2020-02-13 00:12:36 -08:00

Mononoke

Mononoke is a next-generation server for the Mercurial source control system, meant to scale up to accepting thousands of commits every hour across millions of files. It is primarily written in the Rust programming language.

Caveat Emptor

Mononoke is still in early stages of development. We are making it available now because we plan to start making references to it from our other open source projects.

The version that we provide on GitHub does not build yet.

This is because the code is exported verbatim from an internal repository at Facebook, and not all of the scaffolding from our internal repository can be easily extracted. The key areas where we need to shore things up are:

  • Full support for a standard cargo build.
  • Open source replacements for Facebook-internal services (blob store, logging etc).

The current goal is to get Mononoke working on Linux. Other Unix-like OSes may be supported in the future