sapling/eden/mononoke
Yan Soares Couto 715a04f253 Create ephemeral bubble from createremote command
Summary:
This starts adding very basic behaviour to the createremote command.

- Added a `uploadsnapshot` method to the python/rust api. This will be used by the `createremote` command. It will create a bubble, and upload a snapshot to it. For now it just creates a bubble. The request/response objects are still subject to change.
- Added basic code to `createremote` that calls `uploadsnapshot`. It gets the modified files, but for now does nothing with them. I believe I'll have to read their content on rust code, as they are not in the "hg filestore" I believe, as they're not commited.

Reviewed By: StanislavGlebik

Differential Revision: D29987594

fbshipit-source-id: d1e332bb6d1baf9e90efdd2173474e8f3ebcc0e7
2021-08-02 05:37:20 -07:00
..
admin Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
aliasverify third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
alpn third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
backfill_derived_data Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
benchmark_filestore third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
benchmarks Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
blobimport third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
blobimport_lib third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
blobrepo Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
blobrepo_utils third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
blobstore Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
blobstore_healer Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
blobstore_sync_queue Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
bonsai_git_mapping Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
bonsai_globalrev_mapping Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
bonsai_hg_mapping Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
bonsai_svnrev_mapping Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
bookmarks Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
bulkops third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
cache_warmup third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
changesets Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
cmdlib third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
cmds mononoke: use bookmark subscription in derived data tailer 2021-07-29 02:09:58 -07:00
commit_rewriting Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
common Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
derived_data Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
edenapi_server third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
edenapi_service Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
fastreplay third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
filenodes Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
filestore Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
git Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
gotham_ext Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
hgcli third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
hgproto third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
hook_tailer third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
hooks Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
lfs_import third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
lfs_import_lib third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
lfs_protocol third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
lfs_server Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
manifest Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
megarepo_api Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
mercurial Update to Rust 1.54.0 2021-07-30 08:42:15 -07:00
metaconfig mononoke: implement ensure_ancestors_of option for bookmarks 2021-07-27 12:47:22 -07:00
microwave Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
mononoke_api Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
mononoke_api_hg Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
mononoke_hg_sync_job third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
mononoke_types Update to Rust 1.54.0 2021-07-30 08:42:15 -07:00
mutable_counters third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
newfilenodes third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
observability third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
permission_checker Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
phases Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
pushrebase Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
pushrebase_mutation_mapping Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
quiet_stream third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
rate_limiting Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
reachabilityindex Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
regenerate_hg_filenodes third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
repo_attributes third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
repo_client Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
repo_factory third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
repo_import mononoke: implement ensure_ancestors_of option for bookmarks 2021-07-27 12:47:22 -07:00
revset Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
scs Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
scs_server mononoke: print latest error when reading megarepo configs 2021-07-27 02:13:09 -07:00
segmented_changelog Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
server third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
sshrelay third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
statistics_collector third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
streaming_clone third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
tests Create ephemeral bubble from createremote command 2021-08-02 05:37:20 -07:00
time_window_counter Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
tunables third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
unbundle_replay Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
upload_globalrevs third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -07:00
walker Make thrift-generated dyn async traits future compatible 2021-07-29 16:25:33 -07:00
Cargo.toml third-party/rust: remove patch from curl and curl-sys 2021-07-26 15:00:16 -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