Releases: open-spaced-repetition/r-fsrs
Releases · open-spaced-repetition/r-fsrs
v0.3.0: Parameter Optimizer
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's New
Breaking Changes
- Low-level functions (
fsrs_initial_state,fsrs_next_state,fsrs_next_interval) now accept an optionalparamsargument. Existing code continues to work (defaults to NULL).
New Features
fsrs_repeat()- Get all 4 rating outcomes (Again/Hard/Good/Easy) in a single callfsrs_from_sm2()- Convert SM-2 ease factor & interval to FSRS state (for Anki migration)fsrs_memory_state()- Compute memory state from a sequence of reviewsfsrs_retrievability_vec()- Vectorized retrievability for large datasetsScheduler$preview_card()- Preview outcomes without modifying the cardCard$clone_card()- Deep copy a cardfsrs_simulate()- Convenience function to simulate learning
Bug Fixes
- Scheduler now actually uses custom parameters (was silently ignoring them!)
- State transitions now correctly match py-fsrs/rs-fsrs behavior
Full Changelog
v0.1.0
Initial release featuring:
- Core FSRS-6 algorithm via Rust bindings (fsrs-rs)
- py-fsrs style API: Card, Scheduler, Rating, State, ReviewLog
- JSON serialization support
- Custom parameters and desired retention
- Interval fuzzing option
- Full documentation and vignettes