Repository: aya-rs/aya (language: rust)

Issue:
cyclic dependency breaks cargo smart-release
`aya-ebpf-macros` dev-depends on `aya-ebpf`

https://github.com/aya-rs/aya/blob/0e70838b0f896ec73a4c7a51cab29625e7c87f9a/aya-ebpf-macros/Cargo.toml#L20-L21

`aya-ebpf` depends on `aya-ebpf-macros` since it re-exports those macros.

https://github.com/aya-rs/aya/blob/0e70838b0f896ec73a4c7a51cab29625e7c87f9a/ebpf/aya-ebpf/Cargo.toml#L11-L13

This gets us into trouble since we can't `cargo publish` aya-ebpf since `aya-ebpf-macros` hasn't yet been published.

The "fix" is to remove the dev-dependency, `cargo publish` with `--allow-dirty`. Then resume releasing.


Discussion / hints:

Fix patch:
diff --git a/aya-ebpf-macros/Cargo.toml b/aya-ebpf-macros/Cargo.toml
index 3990ffc58..88817a24c 100644
--- a/aya-ebpf-macros/Cargo.toml
+++ b/aya-ebpf-macros/Cargo.toml
@@ -18,4 +18,4 @@ quote = { workspace = true }
 syn = { workspace = true, default-features = true, features = ["full"] }
 
 [dev-dependencies]
-aya-ebpf = { path = "../ebpf/aya-ebpf", version = "^0.1.1", default-features = false }
+aya-ebpf = { path = "../ebpf/aya-ebpf", default-features = false }


Test patch: