| 1 |
# Changelog |
| 2 |
|
| 3 |
All notable changes to audiofiles will be documented in this file. |
| 4 |
|
| 5 |
Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). Versioning follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html). |
| 6 |
|
| 7 |
## [Unreleased] |
| 8 |
|
| 9 |
### Added |
| 10 |
- Forge: resample overshoot handling. Conforming to an integer target now detects true-peak overshoot (>1.0); by default the signal is left untouched and a warning is shown that it will clip. A new Settings > Forge toggle, "Auto-trim resample overshoot", opts in to the gentlest reversible fix (a single linear gain to full scale), reported when applied. 32-bit float targets are unaffected (lossless passthrough). |
| 11 |
|
| 12 |
### Fixed |
| 13 |
- Store: importing identical bytes under a different file extension no longer leaves an unreachable orphan blob on disk; the import reuses the canonical content-addressed blob, restoring "import twice is a no-op". |
| 14 |
|
| 15 |
## [0.4.1] - 2026-05-31 |
| 16 |
|
| 17 |
### Added |
| 18 |
- Device profile fields: category and notes |
| 19 |
- Edit history affordance and review-sort in browser |
| 20 |
- Undo for sample edits |
| 21 |
- About modal (Cmd+I) with version and credits |
| 22 |
- Updater opt-out preference |
| 23 |
|
| 24 |
### Changed |
| 25 |
- License-activation contact email points to info@makenot.work |
| 26 |
- Documentation: 2024 edition, plugin path references, theme phrasing |
| 27 |
|
| 28 |
### Fixed |
| 29 |
- Export overwrite protection |
| 30 |
- Database initialization recovery |
| 31 |
- SyncKit client 0.4.0: pass sentinel key in token exchange |
| 32 |
|
| 33 |
## [0.4.0] - 2026-04-16 |
| 34 |
|
| 35 |
### Added |
| 36 |
- Trial mode: use the app without a license key with a 30-day countdown |
| 37 |
- Trial button on activation screen with days remaining indicator |
| 38 |
- Trial status display in Settings > License section |
| 39 |
- Trial state persisted to `~/.config/audiofiles/trial.json` |
| 40 |
|
| 41 |
## [0.3.6] - 2026-04-16 |
| 42 |
|
| 43 |
### Changed |
| 44 |
- Monorepo path dependency restructure (MNW shared libs) |
| 45 |
- Audit Run 14: test coverage, refactoring, cleanup |
| 46 |
- Added CONTRIBUTING.md with project coding patterns |
| 47 |
|
| 48 |
## [0.3.5] - 2026-04-13 |
| 49 |
|
| 50 |
### Added |
| 51 |
- SSE push notifications for real-time sync events |
| 52 |
- Background cleanup worker for orphaned sample removal |
| 53 |
- macOS metadata filtering during import |
| 54 |
- Collapsible filter panel in browser UI |
| 55 |
- Cleanup progress screen |
| 56 |
|
| 57 |
### Changed |
| 58 |
- Extracted theme loading to shared `theme-common` crate |
| 59 |
- Preview decode cancellation for faster navigation |
| 60 |
- Increased undo stack depth |
| 61 |
|
| 62 |
### Fixed |
| 63 |
- File list scroll-follow when selecting samples |
| 64 |
- Collection breadcrumb navigation |
| 65 |
- Collection export paths |
| 66 |
- Null-safe VFS handling and drag-drop |
| 67 |
|
| 68 |
### Security |
| 69 |
- Disabled `eval()` and module imports in Rhai plugin engine |
| 70 |
- Blob validation on sync upload/download |
| 71 |
- OAuth state parameter verification |
| 72 |
|
| 73 |
## [0.3.0] - 2026-03-28 |
| 74 |
|
| 75 |
First beta-ready release. |
| 76 |
|
| 77 |
### Added |
| 78 |
- Cloud sync via SyncKit SDK (sample metadata, tags, VFS mappings) |
| 79 |
- OTA updates via custom reqwest-based checker |
| 80 |
- ML-based sample classification (two-layer system, 94.4% accuracy on drums) |
| 81 |
- VP-tree similarity search across sample library |
| 82 |
- Content-addressed blob store (SHA-256) |
| 83 |
- Virtual filesystem for sample organization |
| 84 |
- Device-aware export with 14 bundled sampler profiles |
| 85 |
- Rhai plugin system for custom device profiles |
| 86 |
- Drag-to-DAW export (macOS and Windows) |
| 87 |
- Waveform visualization |
| 88 |
- Collections for organizing samples |
| 89 |
- Audio analysis: spectral features, BPM, key detection, MFCC extraction |
| 90 |
- Bundled color themes (see `crates/audiofiles-browser/themes/`) |
| 91 |
- macOS, Windows, and Linux builds |
| 92 |
|
| 93 |
### Fixed |
| 94 |
- All issues identified in audit runs 1–12 |
| 95 |
- Concurrency and type safety patterns (Rust patterns audit) |
| 96 |
|
| 97 |
### Security |
| 98 |
- Full observability instrumentation (115 traced functions) |
| 99 |
- 17 justified FFI unsafe blocks for platform drag-and-drop (macOS objc2 + Windows COM) |
| 100 |
|