swarm repositories / source
aboutsummaryrefslogtreecommitdiff
path: root/Cargo.toml
diff options
context:
space:
mode:
authormain <main@swarm.moe>2026-03-19 15:49:41 -0400
committermain <main@swarm.moe>2026-03-19 15:49:41 -0400
commitfa1bd32800b65aab31ea732dd240261b4047522c (patch)
tree2fd08af6f36b8beb3c7c941990becc1a0a091d62 /Cargo.toml
downloadadequate-rust-mcp-fa1bd32800b65aab31ea732dd240261b4047522c.zip
Release adequate-rust-mcp 1.0.0v1.0.0
Diffstat (limited to 'Cargo.toml')
-rw-r--r--Cargo.toml130
1 files changed, 130 insertions, 0 deletions
diff --git a/Cargo.toml b/Cargo.toml
new file mode 100644
index 0000000..5a9cf67
--- /dev/null
+++ b/Cargo.toml
@@ -0,0 +1,130 @@
+[workspace]
+members = [
+ "crates/adequate-rust-mcp",
+ "crates/ra-mcp-domain",
+ "crates/ra-mcp-engine",
+]
+resolver = "3"
+
+[workspace.package]
+categories = ["development-tools", "command-line-utilities"]
+description = "Crash-resilient rust-analyzer MCP with a durable host, disposable worker, and porcelain-first analysis tools."
+edition = "2024"
+keywords = ["mcp", "rust-analyzer", "lsp", "ai", "tooling"]
+license = "Apache-2.0"
+readme = "README.md"
+repository = "https://git.swarm.moe/adequate-rust-mcp.git"
+rust-version = "1.94"
+version = "1.0.0"
+
+[workspace.dependencies]
+assert_matches = "1.5.0"
+bytes = "1.10.1"
+futures = "0.3.31"
+libmcp = { git = "https://git.swarm.moe/libmcp.git", rev = "478b0bc47fade5864f4f397de7ea519beddab749" }
+lsp-types = "0.97.0"
+notify = "8.2.0"
+rmcp = { version = "0.16.0", features = ["server", "macros", "transport-io"] }
+schemars = "1.0.4"
+serde = { version = "1.0.219", features = ["derive"] }
+serde_json = "1.0.143"
+serial_test = "3.2.0"
+tempfile = "3.22.0"
+thiserror = "2.0.16"
+tokio = { version = "1.47.1", features = ["full"] }
+tokio-util = { version = "0.7.16", features = ["codec"] }
+tracing = "0.1.41"
+tracing-subscriber = { version = "0.3.20", features = ["env-filter"] }
+toml = "0.8.23"
+url = "2.5.7"
+uuid = { version = "1.18.1", features = ["v4", "serde"] }
+
+[workspace.lints.rust]
+elided_lifetimes_in_paths = "deny"
+missing_docs = "deny"
+unsafe_code = "deny"
+unused_crate_dependencies = "warn"
+unused_lifetimes = "deny"
+unused_qualifications = "deny"
+unused_results = "deny"
+
+[workspace.lints.clippy]
+# Strict baseline.
+all = { level = "deny", priority = -2 }
+pedantic = { level = "deny", priority = -1 }
+cargo = { level = "warn", priority = -3 }
+
+# Hard bans.
+dbg_macro = "deny"
+panic = "deny"
+todo = "deny"
+unimplemented = "deny"
+unwrap_used = "deny"
+
+# Carve-out: test fixtures rely on concise expect messages.
+expect_used = "allow"
+
+# Carve-out: dependency graph churn is external to this repository.
+multiple_crate_versions = "allow"
+
+# Carve-out: rustdoc policy is intentionally lightweight here.
+missing_errors_doc = "allow"
+missing_panics_doc = "allow"
+
+# Carve-out: threshold/style lints that create churn without correctness wins.
+items_after_statements = "allow"
+many_single_char_names = "allow"
+module_name_repetitions = "allow"
+similar_names = "allow"
+struct_field_names = "allow"
+too_many_arguments = "allow"
+too_many_lines = "allow"
+unnested_or_patterns = "allow"
+match_same_arms = "allow"
+
+# Carve-out: API-shape micro-optimizations are not worth readability cost.
+needless_pass_by_value = "allow"
+ref_option = "allow"
+trivially_copy_pass_by_ref = "allow"
+unused_async = "allow"
+
+# Carve-out: numeric ergonomics and formatting are intentionally pragmatic.
+cast_lossless = "allow"
+cast_possible_truncation = "allow"
+cast_possible_wrap = "allow"
+cast_precision_loss = "allow"
+cast_sign_loss = "allow"
+float_cmp = "allow"
+implicit_hasher = "allow"
+manual_let_else = "allow"
+map_unwrap_or = "allow"
+uninlined_format_args = "allow"
+
+# Carve-out: local scaffolding patterns preferred in this codebase.
+ignored_unit_patterns = "allow"
+must_use_candidate = "allow"
+no_effect_underscore_binding = "allow"
+redundant_closure_for_method_calls = "allow"
+return_self_not_must_use = "allow"
+used_underscore_binding = "allow"
+
+[workspace.metadata.adequate-rust-mcp]
+format_command = ["cargo", "fmt", "--all"]
+clippy_command = [
+ "cargo",
+ "clippy",
+ "--workspace",
+ "--all-targets",
+ "--all-features",
+ "--message-format=json",
+]
+fix_command = [
+ "cargo",
+ "clippy",
+ "--fix",
+ "--workspace",
+ "--all-targets",
+ "--all-features",
+ "--allow-dirty",
+ "--allow-staged",
+]