sapling/eden/mononoke
Simon Farnsworth b92075d5e8 Use mutable renames in the commit diff method
Summary: If you give us paths of interest, and ask us to follow mutable rename information, let's do it.

Reviewed By: yancouto

Differential Revision: D34302823

fbshipit-source-id: 647fa2d798436f7a0beb1741570cb280aae2814b
2022-02-25 04:19:24 -08:00
..
admin rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
aliasverify rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
alpn restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
backfill_derived_data rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
benchmark_filestore rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
benchmarks bonsai_git_mapping: make builder interface consistent 2022-02-15 09:21:21 -08:00
blobimport rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
blobimport_lib Support logging commit cloud commits uploaded via edenapi to scribe 2022-02-21 10:22:27 -08:00
blobrepo Support logging commit cloud commits uploaded via edenapi to scribe 2022-02-21 10:22:27 -08:00
blobrepo_utils restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
blobstore Update clap to 3.1.2 2022-02-23 12:08:59 -08:00
blobstore_healer rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
blobstore_sync_queue restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
bonsai_git_mapping bonsai_git_mapping: make builder interface consistent 2022-02-15 09:21:21 -08:00
bonsai_globalrev_mapping bonsai_globalrev_mapping: store repo id and make interface consistent 2022-02-15 06:46:16 -08:00
bonsai_hg_mapping bonsai_hg_mapping: store repo id and make interface consistent 2022-02-14 00:49:20 -08:00
bonsai_svnrev_mapping bonsai_svnrev_mapping: store repo_id and make interface consistent 2022-02-15 06:46:16 -08:00
bookmarks Extract scribe log logic from create_changeset 2022-02-21 10:22:26 -08:00
bulkops restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
cache_warmup restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
changesets restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
cmdlib Fix build failure due to clap deprecations 2022-02-24 09:30:12 -08:00
cmds Update SQLBlob GC to use latest version of CLI Framework ( clap ) 2022-02-23 06:22:53 -08:00
commit_rewriting rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
common Update clap to 3.1.2 2022-02-23 12:08:59 -08:00
derived_data Update clap to 3.1.2 2022-02-23 12:08:59 -08:00
edenapi_service Copy file to another bubble using as little memory as possible. 2022-02-17 11:05:38 -08:00
filenodes Auto-derive quickcheck::Arbitrary for FilenodeInfo 2022-02-16 17:03:18 -08:00
filestore Add filestore copy method 2022-02-17 11:05:38 -08:00
git restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
gotham_ext restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
hgproto restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
hook_tailer restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
hooks Daily common/rust/cargo_from_buck/bin/autocargo 2022-02-22 01:23:00 -08:00
lfs_import rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
lfs_import_lib restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
lfs_protocol restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
lfs_server mononoke: lfs: Remove legacy object popularity configuration 2022-02-16 05:04:46 -08:00
manifest restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
megarepo_api Update clap to 3.1.2 2022-02-23 12:08:59 -08:00
mercurial Auto-derive quickcheck::Arbitrary for all remaining amenable types under fbcode/eden 2022-02-16 17:03:18 -08:00
metaconfig remove wireproto logging used in traffic replay 2022-02-23 07:23:02 -08:00
microwave restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
mononoke_api Use mutable renames in the commit diff method 2022-02-25 04:19:24 -08:00
mononoke_api_hg Support logging commit cloud commits uploaded via edenapi to scribe 2022-02-21 10:22:27 -08:00
mononoke_hg_sync_job changeset_fetcher: switch to ArcChangesetFetcher type 2022-02-17 03:18:15 -08:00
mononoke_types Auto-derive quickcheck::Arbitrary for all remaining amenable types under fbcode/eden 2022-02-16 17:03:18 -08:00
mutable_counters restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
mutable_renames restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
newfilenodes restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
observability restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
permission_checker restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
phases changeset_fetcher: switch to ArcChangesetFetcher type 2022-02-17 03:18:15 -08:00
pushrebase blobrepo: use bonsai hg mapping method only 2022-02-14 00:49:20 -08:00
pushrebase_mutation_mapping mononoke: set rewritedates: false to fix flakiness in save_mapping_pushrebase_hook test 2022-02-23 09:22:44 -08:00
quiet_stream restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
rate_limiting restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
reachabilityindex changeset_fetcher: switch to ArcChangesetFetcher type 2022-02-17 03:18:15 -08:00
regenerate_hg_filenodes blobrepo: use bonsai hg mapping method only 2022-02-14 00:49:20 -08:00
repo_attributes repo_cross_repo: add a new attribute to encapsulate cross repo state 2022-02-17 08:50:08 -08:00
repo_client Daily common/rust/cargo_from_buck/bin/autocargo 2022-02-24 01:42:53 -08:00
repo_factory repo_cross_repo: add a new attribute to encapsulate cross repo state 2022-02-17 08:50:08 -08:00
repo_import repo_import: switch to using a facet container instead of BlobRepo 2022-02-17 08:50:08 -08:00
revset changeset_fetcher: switch to ArcChangesetFetcher type 2022-02-17 03:18:15 -08:00
scs scs_server: implement commit_path_last_changed 2022-02-18 07:06:21 -08:00
scs_server Use mutable renames in the commit diff method 2022-02-25 04:19:24 -08:00
segmented_changelog changeset_fetcher: switch to ArcChangesetFetcher type 2022-02-17 03:18:15 -08:00
server Update clap to 3.1.2 2022-02-23 12:08:59 -08:00
sshrelay restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
statistics_collector rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
streaming_clone restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
tests remove wireproto logging used in traffic replay 2022-02-23 07:23:02 -08:00
time_window_counter restore getdeps build (#109) 2022-02-11 01:42:04 -08:00
tools Update clap to 3.1.2 2022-02-23 12:08:59 -08:00
tunables verify_integrity: remove Mononoke tunable related to Rust client rollout 2022-02-21 08:23:03 -08:00
unbundle_replay bookmarks_movement: convert to using repo attributes 2022-02-17 08:50:07 -08:00
upload_globalrevs rename clap to clap-old in most of mononoke 2022-02-16 05:26:16 -08:00
walker blobrepo: use bonsai hg mapping method only 2022-02-14 00:49:20 -08:00
Cargo.toml Update clap to 3.1.2 2022-02-23 12:08:59 -08: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: