arnaucube
arnaucube/poulpyPublic Self-hosted repository
poulpy/CHANGELOG.md
CHANGELOG.mdRaw
 1# CHANGELOG
 2
 3## [0.3.0] - 2025-10-23
 4
 5- Fixed builds on MACOS
 6
 7### Breaking changes
 8    - The changes to `poulpy-core` required to break some of the existing API. For example the API `prepare_alloc` has been removed and the trait `Prepare<...>` has been broken down for each different ciphertext type (e.g. GLWEPrepare). To achieve the same functionality, the user must allocated the prepared ciphertext, and then call prepare on it.
 9
10### `poulpy-hal`
11    - Added cross-base2k normalization
12
13### `poulpy-core`
14    - Added functionality-based traits, which removes the need to import the low-levels traits of `poulpy-hal` and makes backend agnostic code much cleaner. For example instead of having to import each individual traits required for the encryption of a GLWE, only the trait `GLWEEncryptSk` is needed.
15
16### `poulpy-schemes`
17    - Added basic framework for binary decicion circuit (BDD) arithmetic along with some operations.
18
19## [0.2.0] - 2025-09-15
20
21### Breaking changes
22    - Updated the trait `FillUniform` to take `log_bound`.
23
24### `poulpy-hal`
25    - Added pure Rust reference code for `vec_znx` and `fft64` backend.
26    - Added cross-backend generic test suite along with macros.
27    - Added benchmark generic test suite.
28
29### `poulpy-backend`
30    - Added `FFTRef` backend, which provides an implementation relying on the reference code of `poulpy-hal`.
31    - Added `FFTAvx` backend, which provides a pure Rust AVX/FMA accelerated implementation of `FFTRef` backend.
32    - Added cross-backend tests between `FFTRef` and `FFTAvx`.
33    - Added cross-backend tests between `FFTRef` and `FFT64Spqlios`.
34
35### `poulpy-core`
36    - Removed unsafe blocks.
37    - Added tests suite for `FFTRef` and `FFTAvx` backends.
38
39### Other
40- Fixed a few minor bugs.
41
42## [0.1.0] - 2025-08-25
43- Initial release.