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
|
- 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.
|
separate from the branch that names or anchors the worktree.
|
||||||
Do not open pull requests directly from the worktree branch.
|
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.
|
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.
|
- 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.
|
`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",
|
"serde_json",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "ariadne-bin"
|
||||||
|
version = "0.1.0"
|
||||||
|
dependencies = [
|
||||||
|
"ariadne",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "itoa"
|
name = "itoa"
|
||||||
version = "1.0.18"
|
version = "1.0.18"
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
[workspace]
|
[workspace]
|
||||||
members = [
|
members = [
|
||||||
"src/ariadne",
|
"src/ariadne/bin",
|
||||||
|
"src/ariadne/core",
|
||||||
"src/machoke",
|
"src/machoke",
|
||||||
]
|
]
|
||||||
resolver = "3"
|
resolver = "3"
|
||||||
|
|||||||
@@ -1,20 +1,6 @@
|
|||||||
load("@rules_rust//rust:defs.bzl", "rust_binary", "rust_library")
|
alias(
|
||||||
|
|
||||||
rust_library(
|
|
||||||
name = "ariadne_lib",
|
|
||||||
crate_name = "ariadne",
|
|
||||||
crate_root = "lib.rs",
|
|
||||||
srcs = [
|
|
||||||
"graph.rs",
|
|
||||||
"lib.rs",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
rust_binary(
|
|
||||||
name = "ariadne",
|
name = "ariadne",
|
||||||
crate_name = "ariadne_cli",
|
actual = "//src/ariadne/bin:ariadne",
|
||||||
srcs = ["main.rs"],
|
|
||||||
deps = [":ariadne_lib"],
|
|
||||||
)
|
)
|
||||||
|
|
||||||
sh_binary(
|
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]
|
[lib]
|
||||||
path = "lib.rs"
|
path = "lib.rs"
|
||||||
|
|
||||||
[[bin]]
|
|
||||||
name = "ariadne"
|
|
||||||
path = "main.rs"
|
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
serde = { version = "1.0", features = ["derive"] }
|
serde = { version = "1.0", features = ["derive"] }
|
||||||
serde_json = "1.0"
|
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 = {
|
_CRATE_EDITIONS = {
|
||||||
"src/ariadne": "2024",
|
"src/ariadne/bin": "2024",
|
||||||
|
"src/ariadne/core": "2024",
|
||||||
"src/machoke": "2024",
|
"src/machoke": "2024",
|
||||||
}
|
}
|
||||||
|
|
||||||
_NORMAL_DEPENDENCIES = {
|
_NORMAL_DEPENDENCIES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
_COMMON_CONDITION: {
|
_COMMON_CONDITION: {
|
||||||
"serde": Label("//third_party/crates/serde-1.0.229:serde"),
|
"serde": Label("//third_party/crates/serde-1.0.229:serde"),
|
||||||
"serde_json": Label("//third_party/crates/serde_json-1.0.151:serde_json"),
|
"serde_json": Label("//third_party/crates/serde_json-1.0.151:serde_json"),
|
||||||
@@ -326,7 +329,9 @@ _NORMAL_DEPENDENCIES = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_NORMAL_ALIASES = {
|
_NORMAL_ALIASES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
_COMMON_CONDITION: {
|
_COMMON_CONDITION: {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -335,70 +340,90 @@ _NORMAL_ALIASES = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_NORMAL_DEV_DEPENDENCIES = {
|
_NORMAL_DEV_DEPENDENCIES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
_NORMAL_DEV_ALIASES = {
|
_NORMAL_DEV_ALIASES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
_PROC_MACRO_DEPENDENCIES = {
|
_PROC_MACRO_DEPENDENCIES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
_PROC_MACRO_ALIASES = {
|
_PROC_MACRO_ALIASES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
_PROC_MACRO_DEV_DEPENDENCIES = {
|
_PROC_MACRO_DEV_DEPENDENCIES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
_PROC_MACRO_DEV_ALIASES = {
|
_PROC_MACRO_DEV_ALIASES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
_BUILD_DEPENDENCIES = {
|
_BUILD_DEPENDENCIES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
_BUILD_ALIASES = {
|
_BUILD_ALIASES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
_BUILD_PROC_MACRO_DEPENDENCIES = {
|
_BUILD_PROC_MACRO_DEPENDENCIES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
_BUILD_PROC_MACRO_ALIASES = {
|
_BUILD_PROC_MACRO_ALIASES = {
|
||||||
"src/ariadne": {
|
"src/ariadne/bin": {
|
||||||
|
},
|
||||||
|
"src/ariadne/core": {
|
||||||
},
|
},
|
||||||
"src/machoke": {
|
"src/machoke": {
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user