Skip to content

refactor(linux): conventional Cargo manifests and module files - #3533

Merged
datlechin merged 4 commits into
linuxfrom
refactor/linux-cargo-and-modules
Oct 18, 2026
Merged

datlechin merged 4 commits into
linuxfrom
refactor/linux-cargo-and-modules

Conversation

@datlechin

Copy link
Copy Markdown
Member

Why

The Linux workspace wrote Cargo defaults out by hand, gave every member its own path to each internal crate, named the driver libs drivers_<x> apart from their packages, and used two module layouts.

Change

  • Driver libs take their package names (tablepro_driver_<x>). [lib], [[bin]] and [[test]] keys that restate defaults are gone; publish.workspace = true; resolver = "3".
  • Internal crates and rustix are declared once in [workspace.dependencies]. Dev-dependencies that repeat a normal one are dropped. Cargo.lock is unchanged.
  • One module layout: the seven foo.rs plus foo/ modules become foo/mod.rs, held by clippy::self_named_module_files. ui/export_dialog.rs moves to ui/export/dialog.rs, and three *_tests.rs files become tests submodules.
  • meson_options.txt is now meson.options; rustfmt drops the default use_small_heuristics.

Verified

In ubuntu:26.04: fmt check, clippy with and without default features, meson compile and dist, all 7 meson test suites under xvfb, cargo shear, the docs check.

@datlechin
datlechin merged commit 3c8164d into linux Oct 18, 2026
9 of 10 checks passed
@datlechin
datlechin deleted the refactor/linux-cargo-and-modules branch October 18, 2026 17:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant