From 696df0c06526f237f480a36f791468f9dc7d3b66 Mon Sep 17 00:00:00 2001 From: Ben Kearns <35475+bkearns@users.noreply.github.com> Date: Thu, 27 Aug 2026 22:05:04 -0700 Subject: [PATCH] fix(ctl): drop unused tabled derive features --- Cargo.lock | 36 ------------------- ferrosa-ctl/Cargo.toml | 2 +- .../test_ferrosa_ctl_dependency_features.py | 26 ++++++++++++++ 3 files changed, 27 insertions(+), 37 deletions(-) create mode 100644 tests/ci/test_ferrosa_ctl_dependency_features.py diff --git a/Cargo.lock b/Cargo.lock index 914d1bfe8..5298e2489 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5013,28 +5013,6 @@ dependencies = [ "toml_edit 0.25.11+spec-1.1.0", ] -[[package]] -name = "proc-macro-error-attr2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" -dependencies = [ - "proc-macro2", - "quote", -] - -[[package]] -name = "proc-macro-error2" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" -dependencies = [ - "proc-macro-error-attr2", - "proc-macro2", - "quote", - "syn 2.0.117", -] - [[package]] name = "proc-macro2" version = "1.0.106" @@ -6733,23 +6711,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e39a2ee1fbcd360805a771e1b300f78cc88fec7b8d3e2f71cd37bbf23e725c7d" dependencies = [ "papergrid", - "tabled_derive", "testing_table", ] -[[package]] -name = "tabled_derive" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea5d1b13ca6cff1f9231ffd62f15eefd72543dab5e468735f1a456728a02846" -dependencies = [ - "heck", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.117", -] - [[package]] name = "tagptr" version = "0.2.0" diff --git a/ferrosa-ctl/Cargo.toml b/ferrosa-ctl/Cargo.toml index 625a4b385..714c3265e 100644 --- a/ferrosa-ctl/Cargo.toml +++ b/ferrosa-ctl/Cargo.toml @@ -25,7 +25,7 @@ tokio = { version = "1", features = ["full"] } # so cold restarts can't re-download and re-detect them. object_store = { version = "0.11", features = ["aws"] } futures = "0.3" -tabled = "0.20" +tabled = { version = "0.20", default-features = false, features = ["std"] } reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"] } serde = { version = "1", features = ["derive"] } serde_json = "1" diff --git a/tests/ci/test_ferrosa_ctl_dependency_features.py b/tests/ci/test_ferrosa_ctl_dependency_features.py new file mode 100644 index 000000000..0975aa4f1 --- /dev/null +++ b/tests/ci/test_ferrosa_ctl_dependency_features.py @@ -0,0 +1,26 @@ +import subprocess +import unittest +from pathlib import Path + + +ROOT = Path(__file__).resolve().parents[2] + + +class FerrosaCtlDependencyFeaturesTest(unittest.TestCase): + def test_tabled_runtime_api_does_not_pull_derive_proc_macros(self) -> None: + result = subprocess.run( + ["cargo", "tree", "-p", "ferrosa-ctl", "-e", "features"], + cwd=ROOT, + check=False, + capture_output=True, + text=True, + ) + + self.assertEqual(result.returncode, 0, result.stderr) + forbidden = ["tabled_derive", "proc-macro-error2"] + resolved = [name for name in forbidden if name in result.stdout] + self.assertEqual([], resolved, "unexpected tabled derive dependencies") + + +if __name__ == "__main__": + unittest.main()