refactor(ariadne): split core and binary crates
This commit is contained in:
@@ -99,7 +99,8 @@
|
||||
- When creating a pull request from a worktree-specific development branch, create a dedicated pull-request branch
|
||||
separate from the branch that names or anchors the worktree.
|
||||
Do not open pull requests directly from the worktree branch.
|
||||
- Ariadne uses a flat Rust source layout under `src/ariadne/`.
|
||||
- Ariadne separates Rust library code and binary entry-point code under `src/ariadne/core/` and
|
||||
`src/ariadne/bin/`.
|
||||
Do not add a Cargo-default nested `src/ariadne/src/` source directory.
|
||||
- Use `bazel build` for non-test targets when no Bazel test target is part of the validation set.
|
||||
`bazel test` exits non-zero when it finds no test targets.
|
||||
|
||||
7
Cargo.lock
generated
7
Cargo.lock
generated
@@ -10,6 +10,13 @@ dependencies = [
|
||||
"serde_json",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ariadne-bin"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"ariadne",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "itoa"
|
||||
version = "1.0.18"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[workspace]
|
||||
members = [
|
||||
"src/ariadne",
|
||||
"src/ariadne/bin",
|
||||
"src/ariadne/core",
|
||||
"src/machoke",
|
||||
]
|
||||
resolver = "3"
|
||||
|
||||
@@ -1,20 +1,6 @@
|
||||
load("@rules_rust//rust:defs.bzl", "rust_binary", "rust_library")
|
||||
|
||||
rust_library(
|
||||
name = "ariadne_lib",
|
||||
crate_name = "ariadne",
|
||||
crate_root = "lib.rs",
|
||||
srcs = [
|
||||
"graph.rs",
|
||||
"lib.rs",
|
||||
],
|
||||
)
|
||||
|
||||
rust_binary(
|
||||
alias(
|
||||
name = "ariadne",
|
||||
crate_name = "ariadne_cli",
|
||||
srcs = ["main.rs"],
|
||||
deps = [":ariadne_lib"],
|
||||
actual = "//src/ariadne/bin:ariadne",
|
||||
)
|
||||
|
||||
sh_binary(
|
||||
|
||||
9
src/ariadne/bin/BUILD
Normal file
9
src/ariadne/bin/BUILD
Normal file
@@ -0,0 +1,9 @@
|
||||
load("@rules_rust//rust:defs.bzl", "rust_binary")
|
||||
|
||||
rust_binary(
|
||||
name = "ariadne",
|
||||
crate_name = "ariadne_cli",
|
||||
visibility = ["//src/ariadne:__pkg__"],
|
||||
srcs = ["main.rs"],
|
||||
deps = ["//src/ariadne/core:ariadne_lib"],
|
||||
)
|
||||
11
src/ariadne/bin/Cargo.toml
Normal file
11
src/ariadne/bin/Cargo.toml
Normal file
@@ -0,0 +1,11 @@
|
||||
[package]
|
||||
name = "ariadne-bin"
|
||||
version = "0.1.0"
|
||||
edition = "2024"
|
||||
|
||||
[[bin]]
|
||||
name = "ariadne"
|
||||
path = "main.rs"
|
||||
|
||||
[dependencies]
|
||||
ariadne = { path = "../core" }
|
||||
16
src/ariadne/core/BUILD
Normal file
16
src/ariadne/core/BUILD
Normal file
@@ -0,0 +1,16 @@
|
||||
load("@rules_rust//rust:defs.bzl", "rust_library")
|
||||
|
||||
rust_library(
|
||||
name = "ariadne_lib",
|
||||
crate_name = "ariadne",
|
||||
crate_root = "lib.rs",
|
||||
visibility = ["//src/ariadne:__subpackages__"],
|
||||
srcs = [
|
||||
"graph.rs",
|
||||
"lib.rs",
|
||||
],
|
||||
deps = [
|
||||
"//third_party/crates:serde",
|
||||
"//third_party/crates:serde_json",
|
||||
],
|
||||
)
|
||||
@@ -6,10 +6,6 @@ edition = "2024"
|
||||
[lib]
|
||||
path = "lib.rs"
|
||||
|
||||
[[bin]]
|
||||
name = "ariadne"
|
||||
path = "main.rs"
|
||||
|
||||
[dependencies]
|
||||
serde = { version = "1.0", features = ["derive"] }
|
||||
serde_json = "1.0"
|
||||
51
third_party/crates/crates.bzl
vendored
51
third_party/crates/crates.bzl
vendored
@@ -310,12 +310,15 @@ def aliases(
|
||||
###############################################################################
|
||||
|
||||
_CRATE_EDITIONS = {
|
||||
"src/ariadne": "2024",
|
||||
"src/ariadne/bin": "2024",
|
||||
"src/ariadne/core": "2024",
|
||||
"src/machoke": "2024",
|
||||
}
|
||||
|
||||
_NORMAL_DEPENDENCIES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
_COMMON_CONDITION: {
|
||||
"serde": Label("//third_party/crates/serde-1.0.229:serde"),
|
||||
"serde_json": Label("//third_party/crates/serde_json-1.0.151:serde_json"),
|
||||
@@ -326,7 +329,9 @@ _NORMAL_DEPENDENCIES = {
|
||||
}
|
||||
|
||||
_NORMAL_ALIASES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
_COMMON_CONDITION: {
|
||||
},
|
||||
},
|
||||
@@ -335,70 +340,90 @@ _NORMAL_ALIASES = {
|
||||
}
|
||||
|
||||
_NORMAL_DEV_DEPENDENCIES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
}
|
||||
|
||||
_NORMAL_DEV_ALIASES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
}
|
||||
|
||||
_PROC_MACRO_DEPENDENCIES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
}
|
||||
|
||||
_PROC_MACRO_ALIASES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
}
|
||||
|
||||
_PROC_MACRO_DEV_DEPENDENCIES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
}
|
||||
|
||||
_PROC_MACRO_DEV_ALIASES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
}
|
||||
|
||||
_BUILD_DEPENDENCIES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
}
|
||||
|
||||
_BUILD_ALIASES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
}
|
||||
|
||||
_BUILD_PROC_MACRO_DEPENDENCIES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
}
|
||||
|
||||
_BUILD_PROC_MACRO_ALIASES = {
|
||||
"src/ariadne": {
|
||||
"src/ariadne/bin": {
|
||||
},
|
||||
"src/ariadne/core": {
|
||||
},
|
||||
"src/machoke": {
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user