Separate types for rFFT and FFT plans (and issues with ScaledPlans)
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- julia
- Domain
- backend-api-design
Research direction
Start by reviewing the merged PR 58 and the existing Plan and ScaledPlan types, then read the linked FFTW issue 182 about the missing region subfield. Clarify the proposed abstract plan types and the region behavior with maintainers, including compatibility implications for libraries relying on AbstractFFTs. Done means an agreed design and implementation scope, rather than an isolated patch.
Written by the indexing model from the issue text.
Description
Since PR https://github.com/JuliaMath/AbstractFFTs.jl/pull/58 is now merged, I would suggest talking about how to extend this to Plans as well.
One way of doing that would be to implement different (abstract) types for a FFT, rFFT and r2r. This of course would have some implications for the libraries relying on AbstractFFTs. That's why I did not directly proceed with a PR, but would want to discuss this first.
Something reasonable could be to have an AbstractFFTPlan, AbstractrFFTPlan, AbstractR2RPlan that are all subtypes of the current Plan type, so that it is not a completely breaking change. (Ideally Plan should be renamed to AbstractPlan, but this would break a lot, I guess)
Aside from this, there is also https://github.com/JuliaMath/FFTW.jl/issues/182 , so that ScaledPlans miss the region subfield, which could be mitigated by a function like
region(p::Plan) = p.region
region(p::ScaledPlan) = region(p.p)
- Dominant language
- Julia
- Stars
- 135
- Forks
- 40
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from JuliaMath/AbstractFFTs.jl
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
JuliaMath/AbstractFFTs.jl#159 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
JuliaMath/AbstractFFTs.jl#147 ·
-
Difficulty 5/5 Over a week Newbie friendliness 20/100
JuliaMath/AbstractFFTs.jl#135 ·
-
Difficulty 5/5 Over a week Newbie friendliness 28/100
JuliaMath/AbstractFFTs.jl#125 · 2 reactions ·
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
JuliaMath/AbstractFFTs.jl#122 · 3 comments ·
All issues in JuliaMath/AbstractFFTs.jl
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
JuliaGenAI/HuggingFaceDatasets.jl#96 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
JuliaData/DBFTables.jl#50 ·
-
_fit_phylo_binomial_xlv: default start calls undefined logit (UndefVarError without beta_init)Possibly taken A pull request linked to this issue is open or already merged. Opencode-review
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
JuliaNLSolvers/Optim.jl#1296 ·