sapling/eden/fs
David Tolnay 4a1a0d6284 Remove _types suffix from name of types crate
Summary:
The Rust Thrift implementation presently compiles to 4 crates:

```lang=mermaid
flowchart TD;
    foo --> foo-clients;
    foo --> foo-types;
    foo --> foo-services;
    foo-clients --> foo-types;
    foo-services --> foo-types;
```

Sadly, the one with the best name is the most useless. That top-level foo crate just contains the following:

```
pub use ::foo_types as types;
pub use ::foo_clients as client;
pub use ::foo_services as server;

pub use ::foo_types::consts;
pub use ::foo_types::errors;
pub use ::foo_types::services;
pub use ::foo_clients::mock;

pub use self::consts::*;
pub use self::errors::*;
pub use self::types::*;
```

Furthermore, it is extremely uncommon for anything to want to be both a client and a server of the *same* Thrift interface. It arises occasionally for proxies, but otherwise you are either implementing the server for a particular service, or accessing it as a client, not both.

I am interested in eliminating the useless crate, and renaming the types subcrate to the nice name.

```lang=mermaid
flowchart TD;
    foo-clients --> foo;
    foo-services --> foo;
```

### Implementation plan

1. This diff
2. Migrate everything that uses `:foo-rust` and needs a client to `:foo-rust-clients`, and everything that needs a server to `:foo-rust-services` -- after this point, everything still depending on `:foo-rust` only uses types
3. In the macros, atomically delete `:foo-rust` and rename `:foo-rust-types` into its place (this will be a small diff)

Reviewed By: zertosh, shayne-fletcher

Differential Revision: D53302058

fbshipit-source-id: 8d28c90f3a13e71e0cedd3ce3c1cb6fe40cffe27
2024-02-01 10:26:41 -08:00
..
benchmarks Update autocargo component on FBS:master 2023-11-29 18:35:29 -08:00
cli report APFS purgeable space as user-fixable 2024-01-30 11:35:38 -08:00
cli_rs add trees-mobile as a subset of the trees profile 2024-01-30 13:25:12 -08:00
config Remove _types suffix from name of types crate 2024-02-01 10:26:41 -08:00
digest Re-sync with internal repository 2023-10-11 22:09:00 -07:00
docs Rename HgImporter remaining artifacts for improved clarity 2024-01-17 15:49:04 -08:00
facebook eden/fs/facebook 2024-02-01 08:59:52 -08:00
fuse Remove extra semi colon from dyno/cpp/server/parsing/util.h (#794) 2023-12-21 09:14:38 -08:00
fuzz/facebook Re-sync with internal repository 2023-10-11 22:09:00 -07:00
inodes Remove _types suffix from name of types crate 2024-02-01 10:26:41 -08:00
journal Re-sync with internal repository 2023-10-11 22:09:00 -07:00
lmdb LMDBInodeCatalog + LMDBFileContentStore 2023-11-13 12:47:14 -08:00
model eden (7547650190731062666) 2023-11-08 17:55:00 -08:00
monitor Remove explicit key 2023-12-04 10:03:02 -08:00
nfs tests: remove last remnant of QueuedImmediateExecutor 2023-11-30 13:41:03 -08:00
notifications eden (7547650190731062666) 2023-11-08 17:55:00 -08:00
privhelper clarify NFS mount options on macOS 2024-01-16 09:59:34 -08:00
prjfs Factor PrjFS on-disk state functions out of WindowsFsck 2023-10-27 14:53:17 -07:00
py Add annotations to eden/fs/py/eden/thrift/windows_thrift.py 2023-12-13 10:36:39 -08:00
rocksdb Re-sync with internal repository 2023-10-11 22:09:00 -07:00
scripts Move rpmbisect from scripts/mshroyer to eden/fs/scripts/facebook 2023-10-25 17:01:11 -07:00
service Remove _types suffix from name of types crate 2024-02-01 10:26:41 -08:00
sqlite Remove extra semi colon from eden/fs/inodes/FileInode.cpp 2023-12-08 17:29:10 -08:00
store Deprecate StringKeyedUnorderedMap for eden 2024-01-31 11:38:58 -08:00
takeover Remove explicit key 2023-12-04 10:03:02 -08:00
telemetry Removed support to differntiate fetch_miss sources 2024-01-17 13:24:03 -08:00
testharness Remove last uses of HgImporter 2024-01-17 13:24:03 -08:00
third-party Re-sync with internal repository 2023-10-11 22:09:00 -07:00
utils migrate from FOLLY_FALLTHROUGH to [[fallthrough]] (assorted) 2024-01-29 08:06:49 -08:00
.committemplate committemplate: set reviewers for eden and mononoke 2023-10-18 20:55:42 -07:00
Cargo.toml Eliminate deps from clients to servers and vice versa 2024-02-01 07:14:06 -08:00
CMakeLists.txt LMDBInodeCatalog + LMDBFileContentStore 2023-11-13 12:47:14 -08:00
TARGETS Re-sync with internal repository 2023-10-11 22:09:00 -07:00