sapling/eden/mononoke
Pierre Chevalier 512037a028 Migrate from clap 3 to clap 4
Summary:
See the list of breaking changes upstream:
https://github.com/clap-rs/clap/blob/master/CHANGELOG.md#400---2022-09-28

Reviewed By: markbt

Differential Revision: D44704538

fbshipit-source-id: a651f3c37a5f0de852ac26332131c0d70d697811
2023-04-12 09:15:41 -07:00
..
acl_regions (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
admin (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
aliasverify Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
backfill_derived_data (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
benchmark_filestore (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
benchmarks tests_utils: extract random repo generation from simulated repo benchmark 2023-04-12 01:48:40 -07:00
blobimport (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
blobimport_lib (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
blobrepo tests_utils: extract random repo generation from simulated repo benchmark 2023-04-12 01:48:40 -07:00
blobrepo_utils (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
blobstore Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
blobstore_healer Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
blobstore_sync_queue (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
bonsai_git_mapping Rename prepushrebase to in_critical_section and do it in the critical section 2023-02-14 10:08:48 -08:00
bonsai_globalrev_mapping (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
bonsai_hg_mapping (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
bonsai_svnrev_mapping (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
bookmarks Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
bulkops (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
cache_warmup (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
cats bump version to 0.1.2 2022-10-20 12:08:11 -07:00
changesets (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
cmdlib Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
cmds Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
commit_rewriting Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
commit_traversal/slice_repository (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
common Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
derived_data Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
edenapi_service log duration for origin request 2023-04-12 05:56:04 -07:00
features (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
filenodes (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
filestore Log the blobstore key while healing ContentMetadataV2 2023-04-11 05:28:18 -07:00
git Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
gotham_ext context: reset the scuba sequence counter for loops and edenapi requests 2023-04-05 15:20:52 -07:00
hgproto Fix clippy lints (1/N) 2023-03-10 09:41:25 -08:00
hook_tailer (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
hooks (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
land_service Rename BookmarkName to BookmarkKey 2023-02-22 08:53:04 -08:00
lfs_import_lib ContentMetadataV2: Everything, Everywhere, All At Once 2023-04-11 05:10:37 -07:00
lfs_protocol update to rust 1.64.0 2022-09-27 15:18:58 -07:00
lfs_server Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
manifest (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
megarepo_api Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
mercurial (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
metaconfig Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
microwave Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
mononoke_api mononoke_api: when diffing, filter out missing copy sources 2023-04-12 05:28:09 -07:00
mononoke_api_hg ContentMetadataV2: Everything, Everywhere, All At Once 2023-04-11 05:10:37 -07:00
mononoke_configs (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
mononoke_hg_sync_job (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
mononoke_repos Worker per repo 2023-01-23 07:52:47 -08:00
mononoke_types ContentMetadataV2: Everything, Everywhere, All At Once 2023-04-11 05:10:37 -07:00
mutable_counters Log mutable counters to ODS 2022-12-09 09:24:56 -08:00
mutable_renames (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
newfilenodes (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
observability update regex to 1.6.0 2022-10-31 21:28:04 -07:00
permission_checker (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
phases (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
pushrebase (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
pushrebase_mutation_mapping repo_factory: construct sql more consistently 2023-04-12 01:48:40 -07:00
quiet_stream (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
rate_limiting bump version to 0.1.2 2022-10-20 12:08:11 -07:00
reachabilityindex (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
regenerate_hg_filenodes (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
repo_attributes commit_graph_compat: clean up enable_writing_to_new_commit_graph and enable_reading_from_new_commit_graph 2023-04-05 03:20:07 -07:00
repo_authorization (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
repo_client (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
repo_factory repo_factory: construct sql more consistently 2023-04-12 01:48:40 -07:00
repo_import Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
revset (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
scs Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
scs_server Remove useless into_iter() calls 2023-03-24 13:41:24 -07:00
segmented_changelog repo_factory: construct sql more consistently 2023-04-12 01:48:40 -07:00
server Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
sharding_lib_ext move encode/decode repo_name used in cmdlib/sharding to lightweight sharding_lib 2023-02-24 05:54:46 -08:00
sshrelay third-party/rust: add experimental feature to zstd 2023-02-23 09:28:19 -08:00
statistics_collector (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
streaming_clone Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
tests tests_utils: extract random repo generation from simulated repo benchmark 2023-04-12 01:48:40 -07:00
time_window_counter bump version to 0.1.2 2022-10-20 12:08:11 -07:00
tools Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
tunables Enable double writing of ContentMetadata 2023-04-11 05:10:37 -07:00
upload_globalrevs (reland) rust/third-party: update to futures 0.3.28 2023-04-04 10:14:43 -07:00
walker Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
wireproto_handler backsyncer: remove connections from TargetRepoDbs 2023-04-12 01:48:40 -07:00
Cargo.toml Migrate from clap 3 to clap 4 2023-04-12 09:15:41 -07:00
README.md mononoke: README.md update 2022-02-21 02:23:21 -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 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 is omitting some functions.

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:

  • Support for running thrift based apis.
  • Production metadata SQL support (e.g. something like a MySQL backend). We provide sqlite in OSS for now.
  • Production blobstore storage backends (e.g. something like S3). We provide SQL (on sqlite) and File System backends currently in OSS.

Linux is Mononoke's primary target plaform with OSS CI also running on MacOS. Other Unix-like OSes may be supported in the future.

Subsystem Docs

Most of our documentation is in internal systems, however a few subsystems have in-repo markdown docs available: