sapling/eden/mononoke
Lukas Piatkowski 00fe313eff mononoke/unbundle: get rid of futures 0.1
Summary: Also added a TryShared future to futures_ext. The problem with regular Shared is that if you want to share anyhow::Result the Error part of it is not cloneable. This TryShared will work nicely when returning anyhow::Result, which most of our code does.

Reviewed By: aslpavel

Differential Revision: D25223317

fbshipit-source-id: cf21141701884317a87dc726478dcd7a5a820c73
2020-12-07 20:41:26 -08:00
..
benchmark mononoke: move expected_item_size_byte into CachelibSettings 2020-12-02 00:47:22 -08:00
blobimport_lib mononoke/unbundle: get rid of futures 0.1 2020-12-07 20:41:26 -08:00
blobrepo mononoke/unbundle: get rid of futures 0.1 2020-12-07 20:41:26 -08:00
blobrepo_utils convert to new type futures 2020-12-01 03:03:45 -08:00
blobstore Adding connection pool for darkstorm 2020-12-03 17:10:42 -08:00
blobstore_sync_queue mononoke/blobstore: pass CoreContext via borrowed instead of owned value 2020-11-27 03:31:07 -08:00
bonsai_git_mapping mononoke/blobstore: pass CoreContext via borrowed instead of owned value 2020-11-27 03:31:07 -08:00
bonsai_globalrev_mapping mononoke/bonsai_globalrev_mapping: set perf counters 2020-12-07 08:23:19 -08:00
bonsai_hg_mapping rust-shed/futures_01_ext: rename futures_ext to futures_01_ext 2020-11-05 06:07:16 -08:00
bookmarks mononoke/bonsai_globalrev_mapping: set perf counters 2020-12-07 08:23:19 -08:00
bulkops convert BlobRepo::get_bonsai_bookmark to new type futures 2020-11-27 11:11:18 -08:00
cache_warmup scuba: turn ScubaSampleBuilderExt into a wrapper struct 2020-11-30 21:26:24 -08:00
changesets rust-shed/futures_01_ext: rename futures_ext to futures_01_ext 2020-11-05 06:07:16 -08:00
cmdlib eden/mononoke: allow turning on the bonsai / globalrev cache 2020-12-07 08:23:19 -08:00
cmds mononoke/bonsai_globalrev_mapping: set perf counters 2020-12-07 08:23:19 -08:00
commit_rewriting mononoke: remove the need to pass in cachelib settings twice 2020-12-02 07:27:23 -08:00
common mononoke/bonsai_globalrev_mapping: add caching 2020-12-07 08:23:19 -08:00
derived_data mononoke: do not use batched in derived_data_tailer 2020-12-07 02:51:45 -08:00
edenapi_server mononoke: remove the need to pass in cachelib settings twice 2020-12-02 07:27:23 -08:00
fastreplay mononoke: remove the need to pass in cachelib settings twice 2020-12-02 07:27:23 -08:00
filenodes rust-shed/futures_01_ext: rename futures_ext to futures_01_ext 2020-11-05 06:07:16 -08:00
filestore mononoke/blobstore: pass CoreContext via borrowed instead of owned value 2020-11-27 03:31:07 -08:00
git mononoke: move expected_item_size_byte into CachelibSettings 2020-12-02 00:47:22 -08:00
gotham_ext scuba: turn ScubaSampleBuilderExt into a wrapper struct 2020-11-30 21:26:24 -08:00
hgcli scuba: turn ScubaSampleBuilderExt into a wrapper struct 2020-11-30 21:26:24 -08:00
hgproto unit test for dechunker raw bundle2 saving 2020-11-19 06:41:06 -08:00
hook_tailer mononoke: remove the need to pass in cachelib settings twice 2020-12-02 07:27:23 -08:00
hooks scuba: turn ScubaSampleBuilderExt into a wrapper struct 2020-11-30 21:26:24 -08:00
lfs_import_lib mononoke/blobstore: pass CoreContext via borrowed instead of owned value 2020-11-27 03:31:07 -08:00
lfs_protocol mononoke: try to compress values if they above cachelib limit 2020-06-20 01:05:54 -07:00
lfs_server mononoke/lfs_server: account for size in object popularity 2020-12-03 06:17:06 -08:00
load_limiter Regenerate all Cargo.tomls after upgrade to futures 0.3.5 2020-07-06 20:49:43 -07:00
manifest mononoke/blobstore: pass CoreContext via borrowed instead of owned value 2020-11-27 03:31:07 -08:00
mercurial mononoke: UploadHgFileEntry: allow calling it without a path 2020-12-03 06:19:31 -08:00
metaconfig hooks: allow two types of bypasses for the same hook 2020-11-17 06:02:30 -08:00
microwave mononoke: remove the need to pass in cachelib settings twice 2020-12-02 07:27:23 -08:00
mononoke_api mononoke/bonsai_globalrev_mapping: set perf counters 2020-12-07 08:23:19 -08:00
mononoke_hg_sync_job mononoke/bonsai_globalrev_mapping: set perf counters 2020-12-07 08:23:19 -08:00
mononoke_types mononoke/bonsai_globalrev_mapping: add caching 2020-12-07 08:23:19 -08:00
mutable_counters rust-shed/futures_01_ext: rename futures_ext to futures_01_ext 2020-11-05 06:07:16 -08:00
newfilenodes rust-shed/futures_01_ext: rename futures_ext to futures_01_ext 2020-11-05 06:07:16 -08:00
observability observability: add dynamic level drain 2020-12-04 14:30:29 -08:00
permission_checker bypassing hooks for members of scm 2020-10-29 10:14:25 -07:00
phases convert to new type futures 2020-12-02 15:40:12 -08:00
pushrebase convert save_bonsai_changesets to new type futures 2020-11-30 12:00:22 -08:00
reachabilityindex convert to new type futures 2020-12-02 15:40:12 -08:00
regenerate_hg_filenodes mononoke: show cachelib cache_size in --help usage 2020-12-02 07:27:23 -08:00
repo_client mononoke/unbundle: get rid of futures 0.1 2020-12-07 20:41:26 -08:00
repo_import mononoke/bonsai_globalrev_mapping: set perf counters 2020-12-07 08:23:19 -08:00
revset convert to new type futures 2020-12-02 15:40:12 -08:00
scs_server mononoke: show cachelib cache_size in --help usage 2020-12-02 07:27:23 -08:00
segmented_changelog convert to new type futures 2020-12-02 15:40:12 -08:00
server mononoke: remove the need to pass in cachelib settings twice 2020-12-02 07:27:23 -08:00
sshrelay add support for HTTP preamble 2020-11-16 09:12:05 -08:00
tests mononoke: remove --cachelib-only-blobstore from walker test cmdlines 2020-12-04 03:07:05 -08:00
time_window_counter mononoke/lfs_server: popularity: add ODS counters, timeouts and tests 2020-07-15 03:39:23 -07:00
tunables mononoke/repo_client: do not re-upload commits we already have for infinitepush 2020-11-20 06:30:12 -08:00
unbundle_replay mononoke/bonsai_globalrev_mapping: set perf counters 2020-12-07 08:23:19 -08:00
walker mononoke: no need to collect walker iterators 2020-12-04 03:07:05 -08:00
Cargo.toml mononoke/bonsai_globalrev_mapping: add caching 2020-12-07 08:23:19 -08: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