This PR performs a comprehensive audit of dependencies across the Rust backend, NPM packages, and Tauri configuration to remove unused dependencies, eliminate duplicate crate compilation, and optimize CI/CD build performance.
Key Changes
Unused Dependencies Removed:
Removed tauri-plugin-opener = "2" from Cargo.toml, src-tauri/src/lib.rs, and capabilities/default.json.
Removed unused @tauri-apps/plugin-dialog from package.json.
Crate Feature Slimming & Scoping:
Slimmed tokio features to ["process", "io-util", "sync", "time", "rt-multi-thread"], removing async network and socket crates (socket2, etc.).
Scoped image crate to Windows targets with features = ["tiff"], eliminating ~35 image decoding crates from Linux and macOS builds.
Windows SDK Unification:
Upgraded windows to 0.61 in Cargo.toml to unify with Tauri 2 internals and eliminate duplicate compilation of windows 0.58 and syn v2.
Updated handle types in windows.rs for windows 0.61 compatibility (PRINTER_HANDLE, Option<HWND>, Option<HDC>).
Build Optimization:
Added [profile.release] with panic = "abort", codegen-units = 1, lto = "thin", and strip = true.
Version Bump:
Bumped point version from 0.1.3 to 0.1.4 in package.json, Cargo.toml, and tauri.conf.json.
Updated package.json name to iccery.
Verification
All 28 Rust unit tests passed.
cargo tree --duplicates verified zero duplicate windows crates.
### Description
Closes #38.
This PR performs a comprehensive audit of dependencies across the Rust backend, NPM packages, and Tauri configuration to remove unused dependencies, eliminate duplicate crate compilation, and optimize CI/CD build performance.
### Key Changes
1. **Unused Dependencies Removed**:
- Removed `tauri-plugin-opener = "2"` from `Cargo.toml`, `src-tauri/src/lib.rs`, and `capabilities/default.json`.
- Removed unused `@tauri-apps/plugin-dialog` from `package.json`.
2. **Crate Feature Slimming & Scoping**:
- Slimmed `tokio` features to `["process", "io-util", "sync", "time", "rt-multi-thread"]`, removing async network and socket crates (`socket2`, etc.).
- Scoped `image` crate to Windows targets with `features = ["tiff"]`, eliminating ~35 image decoding crates from Linux and macOS builds.
3. **Windows SDK Unification**:
- Upgraded `windows` to `0.61` in `Cargo.toml` to unify with Tauri 2 internals and eliminate duplicate compilation of `windows 0.58` and `syn v2`.
- Removed unused `Win32_Storage_FileSystem` feature flag.
- Updated handle types in `windows.rs` for `windows 0.61` compatibility (`PRINTER_HANDLE`, `Option<HWND>`, `Option<HDC>`).
4. **Build Optimization**:
- Added `[profile.release]` with `panic = "abort"`, `codegen-units = 1`, `lto = "thin"`, and `strip = true`.
5. **Version Bump**:
- Bumped point version from `0.1.3` to `0.1.4` in `package.json`, `Cargo.toml`, and `tauri.conf.json`.
- Updated `package.json` name to `iccery`.
### Verification
- All 28 Rust unit tests passed.
- `cargo tree --duplicates` verified zero duplicate `windows` crates.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Description
Closes #38.
This PR performs a comprehensive audit of dependencies across the Rust backend, NPM packages, and Tauri configuration to remove unused dependencies, eliminate duplicate crate compilation, and optimize CI/CD build performance.
Key Changes
tauri-plugin-opener = "2"fromCargo.toml,src-tauri/src/lib.rs, andcapabilities/default.json.@tauri-apps/plugin-dialogfrompackage.json.tokiofeatures to["process", "io-util", "sync", "time", "rt-multi-thread"], removing async network and socket crates (socket2, etc.).imagecrate to Windows targets withfeatures = ["tiff"], eliminating ~35 image decoding crates from Linux and macOS builds.windowsto0.61inCargo.tomlto unify with Tauri 2 internals and eliminate duplicate compilation ofwindows 0.58andsyn v2.Win32_Storage_FileSystemfeature flag.windows.rsforwindows 0.61compatibility (PRINTER_HANDLE,Option<HWND>,Option<HDC>).[profile.release]withpanic = "abort",codegen-units = 1,lto = "thin", andstrip = true.0.1.3to0.1.4inpackage.json,Cargo.toml, andtauri.conf.json.package.jsonname toiccery.Verification
cargo tree --duplicatesverified zero duplicatewindowscrates.