|
2 | 2 |
|
3 | 3 | This is a list of RELEASED changes for the NuMojo Package. |
4 | 4 |
|
5 | | -## dd/mm/yyyy (version) |
| 5 | +## dd/mm/yyyy (v0.3) |
6 | 6 |
|
7 | 7 | ### ⭐️ New |
8 | 8 |
|
| 9 | +- Add support for `magic` system and MAX 24.5 (PR #91 #109 by @shivasankarka). |
| 10 | +- Add some basic functions, e.g., `diagflat`, `tri`, `trace`, `T` (PR #91 by @shivasankarka). |
| 11 | +- Add a constructor which reads arrays from numpy arrays (PR #91 by @shivasankarka). |
| 12 | +- Add functions `solve` and `inv` for solving linear algebra `AX = Y` for `X`, finding inverse of a matrix, and conducting LU decomposition (PR #101 #104 #105 by @forFudan). |
| 13 | +- Add `itemset` method to fill a scalar into an `NDArray` (PR #102 by @forFudan). |
| 14 | +- Add `Idx` struct to represent the index of an `NDArray` (PR #118 by @shivasankarka). |
| 15 | +- Add NDArray initialization from numpy arrays (PR #118 by @shivasankarka). |
| 16 | +- Created a new `io` module with some basic functions, e.g., `format_float_scientific`, `loadtxt`, `savetxt` (PR #118 by @shivasankarka). |
| 17 | + |
9 | 18 | ### 🦋 Changed |
10 | 19 |
|
| 20 | +- Make some methods, e.g., `sort`, `flatten`, `inplace` (Issue #87 by @mmenendezg, PR #91 by @shivasankarka). |
| 21 | +- Modify initialization of NDArray (PR #97 by @MadAlex1997) |
| 22 | +- Added `Formattable` trait and fixed the `print` function (PR #108 by @shivasankarka) |
| 23 | +- Refine the `NDArray` initializers and array creation routines (Discussion #90, Issue #110). |
| 24 | + - Remove `random` argument from `NDArray` constructors. Make random initializer a standalone functions (Issue #96 by @MadAlex1997, PR #97 by @MadAlex1997, PR #98 by @shivasankarka). |
| 25 | + - Remove initializers from `String`. Make `fromstring` a standalone function (#113 by @forFudan). |
| 26 | + - Add several `array` overloads for initializing `NDArray` (PR #118 by @shivasankarka). |
| 27 | +- Modify the behavior of `__get__` and `__set__`. Passing in a sequence of `Int` or `Slice` returns an `NDArray`. Passing in an `Idx` returns a scalar. Allow users to set a multiple items in one `NDArray` with another `NDArray`, using `__set__` (PR #118 by @shivasankarka, Discussion #70). |
| 28 | + |
11 | 29 | ### ❌ Removed |
12 | 30 |
|
| 31 | +- Removed all instances of getters and setters with `List[Int]`, `VariadicList[Int]` (PR #118 by @shivasankarka). |
| 32 | + |
13 | 33 | ### 🛠️ Fixed |
| 34 | + |
| 35 | +- Fix the issues in parallelization (due to Max 24.5) for some linear algebra functions, e.g, `matmul`, `solve`, `inv`, etc (PR #115 #117 by @forFudan). |
| 36 | + |
| 37 | +### 📚 Documentary and testing |
| 38 | + |
| 39 | +- Add workflows with unit tests and linting (PR #95 by @sandstromviktor). |
| 40 | +- Add multi-lingual support (Chinese, Japanese) for the readme file (PR #99 #120 by @forFudan, PR #100 by @shivasankarka). |
| 41 | +- Update the test flow file to accommodate MAX 24.5 and the `magic` system (PR #116 by @forFudan). |
| 42 | + |
| 43 | +## 17/08/2024 (V0.2) |
| 44 | + |
| 45 | +### ⭐️ New |
| 46 | + |
| 47 | +Array operations: |
| 48 | + |
| 49 | +- Introduced `diagflat()` method for creating diagonal arrays |
| 50 | +- Implemented most basic array creation routines |
| 51 | +- Implemented initializer from string `numojo.NDArray("[[1,2,3],[4,5,6]]")` |
| 52 | +- Enhanced `NDArray` constructor methods |
| 53 | +- Added boolean masking for NDArrays |
| 54 | +- Introduced new mathematical methods: `floordiv`, `mod`, and more |
| 55 | +- `__getitem__` and `__setitem__` now fully compatible with NumPy behavior |
| 56 | + |
| 57 | +Others: |
| 58 | + |
| 59 | +- Introduced Rust-like data type aliases (e.g., `DType.float64` → `f64`) |
| 60 | +- Implemented function overloading for core mathematical operations (add, sub, etc.) |
| 61 | +- Added a new differentiation module |
| 62 | + |
| 63 | +### 🦋 Changed |
| 64 | + |
| 65 | +- Improved slicing functionality to match NumPy behavior |
| 66 | + |
| 67 | +### ❌ Removed |
| 68 | + |
| 69 | +- Removed `in_dtype` and `out_dtype` parameters for simplified type handling |
| 70 | + |
| 71 | +### 📚 Documentatory and testing |
| 72 | + |
| 73 | +Documentation updates: |
| 74 | + |
| 75 | +- Expanded and updated README |
| 76 | +- Improved docstrings for functions |
| 77 | +- Added style guide and examples |
| 78 | + |
| 79 | +Testing updates: |
| 80 | + |
| 81 | +- Introduced new test files that are compatible with `mojo test`. |
0 commit comments