sapling/eden/mononoke
Alex Hornby b3353518ea mononoke: walker: simplify PathTrackingRoute evolution
Summary: Remove some duplication in the walker path sampling logic by moving PathTrackingRoute evolution up to the struct itself

Reviewed By: krallin

Differential Revision: D20996285

fbshipit-source-id: 165639a3a1608c0b48dc6a7d5ae261613bc90995
2020-04-24 08:04:01 -07:00
..
apiserver memcache: don't panic if Memcache fails to initialize 2020-04-02 10:07:23 -07:00
benchmark remove unneeded 'static lifetimes 2020-04-22 02:49:01 -07:00
blobimport_lib/src mononoke: blobimport: Print bookmark names as strings in blobimport 2020-04-21 07:08:50 -07:00
blobrepo Bump tokio to 0.2.13 2020-04-15 12:18:00 -07:00
blobrepo_utils Clean out unused deps from our TARGETS files 2020-04-14 03:38:11 -07:00
blobstore mononoke: remove boilerplate with auto_impl 2020-04-24 04:09:30 -07:00
blobstore_sync_queue Clean out unused deps from our TARGETS files 2020-04-14 03:38:11 -07:00
bonsai_git_mapping Bump tokio to 0.2.13 2020-04-15 12:18:00 -07:00
bonsai_globalrev_mapping Bump tokio to 0.2.13 2020-04-15 12:18:00 -07:00
bonsai_hg_mapping third-party/rust: Turn off async-trait/support_old_nightly 2020-04-02 17:01:24 -07:00
bookmarks mononoke: add deleted manifest to the warm bookmarks cache 2020-04-21 04:32:56 -07:00
cache_warmup/src mononoke/cache_warmup: conditionally use microwave for faster warmup 2020-03-05 11:57:43 -08:00
changesets mononoke: add a test backfill derived data 2020-04-07 08:44:25 -07:00
cmdlib mononoke: Add get_config_path helper to cmdlib 2020-04-23 07:43:37 -07:00
cmds mononoke: add dry-run mode for backfilling fsnodes 2020-04-24 04:05:53 -07:00
commit_rewriting mononoke: [RFC] migrate bits of validation code to Small/Large newtypes 2020-04-20 11:30:05 -07:00
common mononoke/sql_construct: provide more context when failing to create connections 2020-04-16 09:46:14 -07:00
config_structs mononoke/configerator structs: add shipit and autocargo configs for all configerator structs 2020-04-24 04:33:53 -07:00
derived_data mononoke: add dry-run mode for backfilling fsnodes 2020-04-24 04:05:53 -07:00
edenapi_server/src mononoke: fail with non-zero exit code in serve_forever if failure happened 2020-04-17 14:57:56 -07:00
fastreplay/src mononoke/permission_checker: introduce MembershipChecker and its first usage in hooks 2020-04-23 03:44:09 -07:00
filenodes third-party/rust: Turn off async-trait/support_old_nightly 2020-04-02 17:01:24 -07:00
filestore Clean out unused deps from our TARGETS files 2020-04-14 03:38:11 -07:00
git third-party/rust: Turn off async-trait/support_old_nightly 2020-04-02 17:01:24 -07:00
gotham_ext/src gotham_ext: add into_handler_response method to HttpError 2020-04-23 13:58:04 -07:00
hgcli rust-shed: add hostname crate to the shed 2020-03-20 08:56:12 -07:00
hgproto mononoke/repo_client: use wireproto encoding for directories 2020-04-07 04:36:06 -07:00
hook_tailer mononoke/permission_checker: introduce MembershipChecker and its first usage in hooks 2020-04-23 03:44:09 -07:00
hooks mononoke/permission_checker: introduce MembershipChecker and its first usage in hooks 2020-04-23 03:44:09 -07:00
lfs_import_lib/src mononoke: update internals to Bytes 0.5 2020-02-27 08:08:28 -08:00
lfs_protocol lfs_protocol: move LFS MIME type into protocol crate 2020-04-23 13:58:04 -07:00
lfs_server/src lfs_protocol: move LFS MIME type into protocol crate 2020-04-23 13:58:04 -07:00
manifest mononoke: add dry-run mode for backfilling fsnodes 2020-04-24 04:05:53 -07:00
megarepolib Clean out unused deps from our TARGETS files 2020-04-14 03:38:11 -07:00
mercurial mononoke: remove unused impls 2020-04-24 05:27:10 -07:00
metaconfig mutationstore: a store for commit mutation information 2020-04-23 08:58:09 -07:00
microwave mononoke: add repo name in BlobRepo 2020-03-10 08:32:33 -07:00
mononoke_api/src scs_server: add commit_history to return the history of commits 2020-04-23 07:14:49 -07:00
mononoke_types mononoke_types: add Sha256 stubs 2020-04-08 11:58:08 -07:00
mutable_counters admin: add a subcommand to manipulate mutable_counters 2020-04-16 03:19:44 -07:00
newfilenodes Bump tokio to 0.2.13 2020-04-15 12:18:00 -07:00
permission_checker mononoke/permission_checker: introduce MembershipChecker and its first usage in hooks 2020-04-23 03:44:09 -07:00
phases Clean out unused deps from our TARGETS files 2020-04-14 03:38:11 -07:00
pushrebase Bump tokio to 0.2.13 2020-04-15 12:18:00 -07:00
reachabilityindex third-party/rust: Turn off async-trait/support_old_nightly 2020-04-02 17:01:24 -07:00
repo_client mononoke: fix how infinitepush is detected 2020-04-22 05:13:36 -07:00
revset Clean out unused deps from our TARGETS files 2020-04-14 03:38:11 -07:00
scs_server/src scs_server: add commit_history to return the history of commits 2020-04-23 07:14:49 -07:00
segmented_changelog/src segmented_changelog: add Dag struct and location_to_name functionality 2020-03-27 13:48:52 -07:00
server mutationstore: add logging and perf counters 2020-04-23 08:58:09 -07:00
sshrelay Clean out unused deps from our TARGETS files 2020-04-14 03:38:11 -07:00
tests mononoke: walker: add fsnodes derivation to test blobimport 2020-04-24 04:29:52 -07:00
unbundle_replay mononoke/permission_checker: introduce MembershipChecker and its first usage in hooks 2020-04-23 03:44:09 -07:00
walker/src mononoke: walker: simplify PathTrackingRoute evolution 2020-04-24 08:04:01 -07:00
Cargo.toml mutationstore: a store for commit mutation information 2020-04-23 08:58:09 -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