Skip to content

Commit 2b72ef4

Browse files
authored
[release] Merge pre-0.7 into main for the release of v0.7.0 (#251)
As title.
2 parents f0dea37 + d933007 commit 2b72ef4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+6047
-4583
lines changed

.github/workflows/run_tests.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,3 +53,4 @@ jobs:
5353
run: |
5454
magic install
5555
magic run mojo test tests -I .
56+
magic run mojo test tests/core/test_matrix.mojo -I . -D F_CONTIGUOUS

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
# magic environments
1414
.magic
1515
magic.lock
16+
pixi.lock
1617

1718
# pixi environments
1819
.pixi

README.MD

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -162,11 +162,11 @@ from numojo.prelude import *
162162
163163
fn main() raises:
164164
# Create a complexscalar 5 + 5j
165-
var complexscalar = ComplexSIMD[cf32](re=5, im=5)
165+
var complexscalar = ComplexSIMD[f32](re=5, im=5)
166166
# Create complex array filled with (5 + 5j)
167-
var A = nm.full[cf32](Shape(1000, 1000), fill_value=complexscalar)
167+
var A = nm.full[f32](Shape(1000, 1000), fill_value=complexscalar)
168168
# Create complex array filled with (1 + 1j)
169-
var B = nm.ones[cf32](Shape(1000, 1000))
169+
var B = nm.ones[f32](Shape(1000, 1000))
170170
171171
# Print array
172172
print(A)
@@ -187,29 +187,31 @@ fn main() raises:
187187

188188
There are three approach to install and use the Numojo package.
189189

190-
### Use magic CLI
190+
### Add `numojo` in `pixi.toml`
191191

192-
You can use the following command in the terminal to install `numojo`.
192+
You can add the package `numojo` of a specific version in the dependencies section of your toml file.
193193

194-
```console
195-
magic add numojo
194+
```toml
195+
[dependencies]
196+
numojo = "=0.7.0"
196197
```
197198

198-
### Add in toml file
199+
Then, you can run `pixi install` to install the package.
199200

200-
You can add `numojo` in the dependencies section of your toml file.
201+
The following table shows the version of `numojo` and the corresponding version of `mojo` that is required.
201202

202-
```toml
203-
[dependencies]
204-
numojo = "=0.6"
205-
```
203+
| `numojo` | `mojo` |
204+
| -------- | ------ |
205+
| v0.7.0 | ==25.3 |
206+
| v0.6.1 | ==25.2 |
207+
| v0.6.0 | ==25.2 |
206208

207209
### Build package
208210

209211
This approach involves building a standalone package file `mojopkg`.
210212

211213
1. Clone the repository.
212-
2. Build the package using `magic run package`.
214+
2. Build the package using `pixi run package`.
213215
3. Move the `numojo.mojopkg` into the directory containing the your code.
214216

215217
### Include NuMojo's path for compiler and LSP

docs/changelog.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,41 @@
22

33
This is a list of RELEASED changes for the NuMojo Package.
44

5+
## 01/06/2025 (v0.7.0)
6+
7+
### ⭐️ New
8+
9+
- Implement the `take_along_axis()` method. This method allows you to take elements from an array along a specified axis, using the indices provided in another array ([PR #226](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/226)).
10+
- Add support for column-major memory layout for the `Matrix` type and for all matrix routines ([PR #232](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/232), [PR #233](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/233), [PR #234](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/234)).
11+
- Add eigenvalue decomposition for symmetric matrices ([PR #238](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/238)).
12+
13+
### 🦋 Changed
14+
15+
- Update the syntax to accommodate to Mojo 25.3 ([PR #245](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/245)).
16+
- Migrate Magic to Pixi ([PR #250](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/250)).
17+
- Improve the getter methods for `ComplexNDArray` ([PR #229](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/229)).
18+
- Re-write the `argmax()` and `argmin()` methods to return indices along given axis ([PR #230](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/230)).
19+
- Replaced IO backend with NumPy ([PR #250](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/250)).
20+
21+
### ❌ Removed
22+
23+
- Remove the `numojo.CDType` (Complex Data Type) ([PR #231](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/231)). We will use the standard `CDType` from Mojo instead.
24+
- Temporarily remove type coercion (`TypeCoercion`) until a better solution is available ([PR #242](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/242)). For now, please use implicit casting to convert arrays to targeted data types.
25+
- Remove redundant `self: Self` ([PR #246](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/246)).
26+
27+
### 🛠️ Fixed
28+
29+
- Fixed broken links in zhs and zht readme files ([Issue #239](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/issues/239), [PR #240](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/240)).
30+
- Fix error in division of an array and a scalar ([PR #244](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/244)).
31+
32+
### 📚 Documentatory and testing
33+
34+
## 08/03/2025 (v0.6.1)
35+
36+
### 🛠️ Fixed
37+
38+
Fix the bug that numojo crashes on "mojopkg" ([PR #227](https://github.com/Mojo-Numerics-and-Algorithms-group/NuMojo/pull/227)).
39+
540
## 28/02/2025 (v0.6)
641

742
### ⭐️ New

docs/readme_zhs.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ NuMojo 也可为其他需要高速数值计算、多维数组运算等功能的
3838

3939
## 目标及路线图
4040

41-
有关本项目详细的路线图,请参阅 [roadmap.md](../roadmap.md) 文件(英文)。
41+
有关本项目详细的路线图,请参阅 [roadmap.md](./roadmap.md) 文件(英文)。
4242

4343
我们的核心目标,是使用 Mojo 实现一个快速、全面的数值计算库。以下是部分长期目标:
4444

@@ -83,7 +83,7 @@ fn main() raises:
8383
var A_item = A.item(291, 141)
8484
```
8585

86-
请在 [此文档](../features.md) 中查询所有可用的函数。
86+
请在 [此文档](./features.md) 中查询所有可用的函数。
8787

8888
## 安装方法
8989

docs/readme_zht.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ NuMojo 也可為其他需要高速數值計算、多維數組運算等功能的
3838

3939
## 目标及路线图
4040

41-
有關本項目詳細的路線圖,請參閱 [roadmap.md](../roadmap.md) 文件(英文)。
41+
有關本項目詳細的路線圖,請參閱 [roadmap.md](./roadmap.md) 文件(英文)。
4242

4343
我們的核心目標,是使用 Mojo 實現一個快速、全面的數值計算庫。以下是部分長期目標:
4444

@@ -82,7 +82,7 @@ fn main() raises:
8282
var A_item = A.at(291, 141)
8383
```
8484

85-
請在 [此文檔](../features.md) 中查詢所有可用的函數。
85+
請在 [此文檔](./features.md) 中查詢所有可用的函數。
8686

8787
## 安裝方法
8888

docs/style.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@
141141
"raisesDoc": "",
142142
"returnType": null,
143143
"returnsDoc": "",
144-
"signature": "func(self: Self)",
144+
"signature": "func(self)",
145145
"summary": "Function docstring like previosly shown."
146146
}
147147
]
@@ -215,4 +215,4 @@
215215
]
216216
},
217217
"version": "24.6.0"
218-
}
218+
}

mojoproject.toml

Lines changed: 0 additions & 56 deletions
This file was deleted.

numojo/__init__.mojo

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ NuMojo is a library for numerical computing in Mojo 🔥
33
similar to NumPy, SciPy in Python.
44
"""
55

6-
alias __version__ = "V0.5"
6+
alias __version__ = "V0.7.0"
77

88
# ===----------------------------------------------------------------------=== #
99
# Import core types
@@ -13,7 +13,6 @@ from numojo.core.ndarray import NDArray
1313
from numojo.core.ndshape import NDArrayShape, Shape
1414
from numojo.core.ndstrides import NDArrayStrides, Strides
1515
from numojo.core.item import Item, item
16-
from numojo.core.complex.complex_dtype import CDType
1716
from numojo.core.complex.complex_simd import ComplexSIMD, ComplexScalar
1817
from numojo.core.complex.complex_ndarray import ComplexNDArray
1918
from numojo.core.matrix import Matrix
@@ -30,17 +29,6 @@ from numojo.core.datatypes import (
3029
f16,
3130
f32,
3231
f64,
33-
ci8,
34-
ci16,
35-
ci32,
36-
ci64,
37-
cu8,
38-
cu16,
39-
cu32,
40-
cu64,
41-
cf16,
42-
cf32,
43-
cf64,
4432
)
4533

4634
# ===----------------------------------------------------------------------=== #

numojo/core/__init__.mojo

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ from .ndshape import NDArrayShape
77
from .ndstrides import NDArrayStrides
88

99
from .complex import (
10-
CDType,
1110
ComplexSIMD,
1211
ComplexScalar,
1312
ComplexNDArray,
@@ -25,17 +24,6 @@ from .datatypes import (
2524
f16,
2625
f32,
2726
f64,
28-
ci8,
29-
ci16,
30-
ci32,
31-
ci64,
32-
cu8,
33-
cu16,
34-
cu32,
35-
cu64,
36-
cf16,
37-
cf32,
38-
cf64,
3927
)
4028

4129
# from .utility import

0 commit comments

Comments
 (0)