denyhosts/clamav/libclamav_rust/.cargo/vendor/rustfft/CHANGELOG.md

5.7 KiB

[6.1]

Released 7th Novemeber 2022

Added

  • Implemented a code path for Neon-optimized FFTs on AArch64 (Thanks to Henrik Enquist!) (#84 and #78)

Changed

  • Improved performance of power-of-3 FFTs when not using SIMD-accelerated code paths (#80)
  • Reduced memory usage for some FFT sizes (#81)

[6.0.1]

Released 10 May 2021

Fixed

  • Fixed a compile-time divide by zero error on nightly Rust in stdarch\crates\core_arch\src\macros.rs (#75)
  • Increased the minimum version of strength_reduce to 0.2.3

[6.0.0]

Released 16 April 2021

Breaking Changes

  • Increased the version of the num-complex dependency to 0.4.
    • This is a breaking change because we have a public dependency on num-complex.
    • See the num-complex changelog for a list of breaking changes in num-complex 0.4
    • As a high-level summary, most users will not need to do anything to upgrade to RustFFT 6.0: num-complex 0.4 re-exports a newer version of rand, and that's num-complex's only documented breaking change.

[5.1.1]

Released 10 May 2021

Fixed

  • Fixed a compile-time divide by zero error on nightly Rust in stdarch\crates\core_arch\src\macros.rs (Backported from v6.0.1)
  • Increased the minimum version of strength_reduce to 0.2.3 (Backported from v6.0.1)

[5.1.0]

Released 16 April 2021

Added

  • Implemented a code path for SSE-optimized FFTs (Thanks to Henrik Enquist!) (#60)
    • Plan a FFT using the FftPlanner (or the new FftPlannerSse) on a machine that supports SSE4.1 (but not AVX) and you'll see a 2-3x performance improvement over the default scalar code.

Fixed

  • Fixed underflow when planning an AVX FFT of size zero (#56)
  • Fixed the FFT planner not being Send, due to internal use of Rc<> (#55)
  • Fixed typo in documentation (#54)
  • Slightly improved numerical precision of Rader's Algorithm and Bluestein's Algorithm (#66, #68)
  • Minor optimizations to Rader's Algorithm and Bluestein's Algorithm (#59)
  • Minor optimizations to MixedRadix setup time (#57)
  • Optimized performance of Radix4 (#65)

[5.0.1]

Released 8 January 2021

Fixed

  • Fixed the FFT planner not choosing an obviously faster plan in some rare cases (#46)
  • Documentation fixes and clarificarions (#47, #48, #51)

[5.0.0]

Released 4 January 2021

Breaking Changes

Added

  • Added support for the Avx instruction set. Plan a FFT with the FftPlanner on a machine that supports AVX, and you'll get a 5x-10x speedup in FFT performance.

Changed

  • Even though the main focus of this release is on AVX, most users should see moderate performance improvements due to a new internal architecture that reduces the amount of internal copies required when computing a FFT.

[4.1.0]

Released 24 December 2020

Added

  • Added a blanket impl of FftNum to any type that implements the required traits (#7)
  • Added butterflies for many prime sizes, up to 31, and optimized the size-3, size-5, and size-7 buitterflies (#10)
  • Added an implementation of Bluestein's Algorithm (#6)

Changed

  • Improved the performance of GoodThomasAlgorithm re-indexing (#20)

[4.0.0]

Released 8 October 2020

This release moved the home repository of RustFFT from https://github.com/awelkie/RustFFT to https://github.com/ejmahler/RustFFT

Breaking Changes

  • Increased the version of the num-complex dependency to 0.3. This is a breaking change because we have a public dependency on num-complex. See the num-complex changelog for a list of breaking changes in num-complex 0.3.
  • Increased the minimum required Rust version from 1.26 to 1.31. This was required by the upgrade to num-complex 0.3.

[3.0.1]

Released 27 December 2019

Fixed

  • Fixed warnings regarding "dyn trait", and warnings regarding inclusive ranges
  • Several documentation improvements

[3.0.0]

Released 4 January 2019

Changed

  • Reduced the setup time and memory usage of GoodThomasAlgorithm
  • Reduced the setup time and memory usage of RadersAlgorithm

Breaking Changes

  • Documented the minimum rustsc version. Before, none was specified. now, it's 1.26. Further increases to minimum version will be a breaking change.
  • Increased the version of the num-complex dependency to 0.2. This is a breaking change because we have a public dependency on num-complex. See the num-complex changelog for a list of breaking changes in num-complex 0.2

[2.1.0]

Released 30 July 2018

Added

  • Added a specialized implementation of Good Thomas Algorithm for when both inner FFTs are butterflies

Changed

  • Documentation typo fixes
  • Increased minimum version of num_traits and num_complex. Notably, Complex is now guaranteed to be repr(C)
  • Significantly improved the performance of the Radix4 algorithm
  • Reduced memory usage of prime-sized FFTs
  • Incorporated the Good-Thomas Double Butterfly algorithm into the planner, improving performance for most composite and prime FFTs

[2.0.0]

Released 22 May 2017

Added

  • Added implementation of Good Thomas algorithm.
  • Added implementation of Raders algorithm.
  • Added implementation of Radix algorithm for power-of-two lengths.
  • Added FFTPlanner to choose the fastest algorithm for a given size.

Changed

  • Changed API to take the "signal" as mutable and use it for scratch space.

[1.0.1]

Released 15 January 2016

Changed

  • Relicensed to dual MIT/Apache-2.0.

[1.0.0]

Released 4 October 2015

Added

  • Added initial implementation of Cooley-Tukey.