Skip to content

release/v0.4.0#119

Merged
smu160 merged 14 commits into
mainfrom
release/v0.4.0
Jun 7, 2026
Merged

release/v0.4.0#119
smu160 merged 14 commits into
mainfrom
release/v0.4.0

Conversation

@smu160

@smu160 smu160 commented Jun 4, 2026

Copy link
Copy Markdown
Owner

No description provided.

smu160 added 11 commits May 24, 2026 16:50
PlannerMode::Tune was a no-op stub and with_mode ignored its mode
argument. Remove the whole surface; PlannerDit{32,64}::new is now the
sole constructor.
Spell precision as the Rust float type and name the algorithm
explicitly: fft_64_dit{,_with_planner,_with_planner_and_opts} ->
fft_f64_dit* and the f32 mirror. Reserves the namespace for a future
decimation-in-frequency (_dif) family.
…terleaved

The interleaved (complex-nums) API gains the explicit _dit algorithm
token to match the split-array API and reserve a parallel _dif slot.
Rename the existing full-control functions to *_with_planner_and_opts and
add bare and *_with_planner convenience tiers for r2c/c2r, f32 and f64.
The convenience tiers compute Options for the inner N/2 FFT internally, so
callers no longer have to know to pass guess_options(n/2). Adds tier-
agreement tests proving the wrappers are bit-identical to the full form.
…c types

Direction gains Debug/PartialEq/Eq/Hash; Options gains PartialEq/Eq;
the planners derive Clone and get a terse manual Debug (a derived Debug
would dump multi-megabyte twiddle vecs). Per the Rust API Guidelines
C-COMMON-TRAITS / C-DEBUG. All additions are non-breaking.
The crate's docs and README describe "inverse"/"IFFT" everywhere, but the
enum variant was named Reverse. Align the type with its own documentation.
The discriminant (= -1) is unchanged.
@smu160 smu160 requested a review from Shnatsel June 4, 2026 22:12

@Shnatsel Shnatsel left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

I also made another pass over the README to make sure we're not over-promising performance.

I think our headline README benchmarks are single-threaded, it would be better to switch the README to multi-threaded benchmarks and report single-thread numbers in a more detailed file about benchmarks.

@codecov

codecov Bot commented Jun 7, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 97.84483% with 5 lines in your changes missing coverage. Please review.
✅ Project coverage is 98.66%. Comparing base (ec285bb) to head (cd7bf9f).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
src/planner.rs 54.54% 5 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #119      +/-   ##
==========================================
- Coverage   98.76%   98.66%   -0.11%     
==========================================
  Files          10       10              
  Lines        2844     2996     +152     
==========================================
+ Hits         2809     2956     +147     
- Misses         35       40       +5     

☔ 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.

@smu160 smu160 merged commit 8b1b003 into main Jun 7, 2026
19 checks passed
@smu160 smu160 deleted the release/v0.4.0 branch June 7, 2026 21:12
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.

2 participants