refactor(ariadne): split core and binary crates

This commit is contained in:
2026-09-05 21:57:13 -04:00
parent 1a2012a528
commit e1db78a169
12 changed files with 87 additions and 35 deletions

View File

@@ -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
View File

@@ -10,6 +10,13 @@ dependencies = [
"serde_json",
]
[[package]]
name = "ariadne-bin"
version = "0.1.0"
dependencies = [
"ariadne",
]
[[package]]
name = "itoa"
version = "1.0.18"

View File

@@ -1,6 +1,7 @@
[workspace]
members = [
"src/ariadne",
"src/ariadne/bin",
"src/ariadne/core",
"src/machoke",
]
resolver = "3"

View File

@@ -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
View 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"],
)

View 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
View 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",
],
)

View File

@@ -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"

View File

@@ -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": {
},