Skip to content

feat(quickcache): make quick_cache features optional - #180

Open
beanow-at-crabnebula wants to merge 2 commits into
06chaynes:mainfrom
beanow-at-crabnebula:feat/quickcache-optional-features
Open

beanow-at-crabnebula wants to merge 2 commits into
06chaynes:mainfrom
beanow-at-crabnebula:feat/quickcache-optional-features

Conversation

@beanow-at-crabnebula

@beanow-at-crabnebula beanow-at-crabnebula commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Forward parking_lot and custom-hasher through crate features. Keep both enabled by default to preserve existing behavior. Documenting the opt-out in the README and changelog.

Why

The smaller size is one of quick_cache's benefits. The optional quick_cache features can't be disabled through this crate right now. A minimal Tauri updater size test measured 8,912 bytes saved with both features off. Exact saving depends on the application and build settings.

Testing

Existing CI checks seem to have very deliberate feature selection.
Best to confirm if this matches the pattern you had in mind for it.

Assisted-by: gpt-6.1-sol

Forward parking_lot and custom-hasher through crate features.
Keep both enabled by default to preserve existing behavior.
Document the opt-out in the README, API docs, mdbook, and changelog.
Test default and opt-out configurations in CI.

### Why

Downstream users cannot disable quick_cache defaults through this crate.
Small, infrequently used caches may prefer standard library primitives.
A Tauri updater size study measured 8,912 bytes saved with both features off.
The saving depends on the application and build settings.

### Testing

Formatting and strict Clippy pass.
All nine crate tests pass with defaults and all 16 valid feature combinations.
All seven doctests pass with defaults and with QuickCache features disabled.
Rust 1.89 checks pass with defaults and with QuickCache features disabled.
Nightly docs and doctests pass with the CI feature selection.
The Oranda 0.6.5 site build passes.
Dependency trees confirm both features are default-on and can be disabled.

Assisted-by: gpt-6.1-sol
Remove the duplicate feature section from the mdbook.
Place README and API feature documentation after the examples.
Select the enabled QuickCache features explicitly in CI.

### Why

Keep the documentation focused and follow the existing README layout.
The crate workflows use explicit feature selections for tests and Clippy.
Retain coverage with both QuickCache features enabled and disabled.

### Testing

Formatting, nine crate tests, and strict Clippy pass with the revised CI features.
Seven doctests pass with both QuickCache features disabled.
The nightly documentation build passes.

Assisted-by: gpt-6.1-sol
@beanow-at-crabnebula beanow-at-crabnebula changed the title feat(quickcache): make quick_cache features optional feat(quickcache): make quick_cache features optional Oct 29, 2026
@beanow-at-crabnebula
beanow-at-crabnebula marked this pull request as ready for review October 29, 2026 13:12
@codecov

codecov Bot commented Oct 29, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.45%. Comparing base (b1c3fb4) to head (70fdf21).
⚠️ Report is 56 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #180      +/-   ##
==========================================
+ Coverage   85.87%   90.45%   +4.58%     
==========================================
  Files          19       19              
  Lines        7502    11795    +4293     
==========================================
+ Hits         6442    10669    +4227     
- Misses       1060     1126      +66     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

This branch has not been deployed

No deployments
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