|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to this project will be documented in this file. |
| 4 | + |
| 5 | +The format is inspired by Keep a Changelog. Versions follow Semantic Versioning. |
| 6 | + |
| 7 | +## [0.2.0] - 2025-11-16 |
| 8 | + |
| 9 | +### Added |
| 10 | +- Initial support for model code sharing API (model definition, execution, loading). Implements #196, related to #169. |
| 11 | +- Batch Normalization layer. Implements #193. |
| 12 | +- Forward hooks and simple tape recording for NN. Implements #190, related to #104. |
| 13 | +- Common traversal base for modules, with tests; Embedding implementation with dual value types; switched EEmbeddings to DualModule implementation. |
| 14 | +- Dropout (initial implementation) and phase support (training/eval) in execution context so modules can behave differently by phase. Related to #5. |
| 15 | +- `tril` op (initial version). |
| 16 | +- MaxPool op with DSL support; Conv2D DSL support. |
| 17 | +- Data API: initial version including MNIST data loader; JSON loading support (renamed loader classes from CSV to JSON) with tests. Implements #180, #181; related to #176, #179. |
| 18 | +- GGUF model loading implementation (initial import and working version). Implements #178, #182; related to #176, #177. |
| 19 | +- MatMul support in backends. |
| 20 | +- Nested data blocks support in DSL (data block returns a tensor); contexts for creating and collecting tensors (returning last or all created tensors). |
| 21 | +- JVM Ops using the Java Vector API (initial implementation) and SIMD Vector API acceleration. |
| 22 | +- JMH benchmarks (JVM module) and additional benchmarks. |
| 23 | +- Sample showing general tensor calculations (e.g., image color transformations). |
| 24 | + |
| 25 | +### Changed |
| 26 | +- NN DSL refactored to use `ExecutionContext`; added `ExecutionContext` parameter to `forward` functions. |
| 27 | +- Models and data APIs improved; unified tensor value creation in DSL; moved tensor creation context for safer vector/matrix/tensor creation. |
| 28 | +- Default CPU compute used for JS target. |
| 29 | +- JS and WASM Kotlin targets aligned for library packaging. |
| 30 | +- Gradle updated to 9.0.0; Android target namespaces fixed. |
| 31 | + |
| 32 | +### Fixed |
| 33 | +- Crash in schema validation task; added Kotlin compiler plugin configuration for expect/actual. |
| 34 | +- Activation not applied in Dense layer (fixed). |
| 35 | +- JVM target issues; fixed failing JVM tests; added regression tests; stabilized platform matching test (temporarily ignored) and additional general test fixes. |
| 36 | +- Miscellaneous build-signing validation added to avoid CI failures. |
| 37 | + |
| 38 | +### Performance |
| 39 | +- SIMD/Java Vector API acceleration for JVM backend operations. |
| 40 | + |
| 41 | +### Dependencies |
| 42 | +- com.vanniktech.maven.publish: 0.34.0 → 0.35.0. |
| 43 | +- io.ktor (android, cio, content-negotiation, core, darwin, js, logging): 3.3.1 → 3.3.2. |
| 44 | +- com.fasterxml.jackson.core:jackson-databind: 2.15.2 → 2.20.0 → 2.20.1. |
| 45 | + |
| 46 | +### Build & CI |
| 47 | +- GitHub Actions: use Java 22. |
| 48 | +- Bump actions/checkout from v4 to v5. |
| 49 | +- Add Gradle local caches to .gitignore. |
| 50 | +- Preparations for 0.2.0 release and ability to build local Maven version of the upcoming release. |
| 51 | + |
| 52 | +### Docs |
| 53 | +- Added hint/reference on normalization layer paper. Related to #192. |
| 54 | + |
| 55 | + |
| 56 | +## [0.1.0] - 2025-10-31 |
| 57 | +- Initial public release of SKaiNET 0.1.0. |
| 58 | + |
0 commit comments