Skip to content

Commit 88cae62

Browse files
committed
v0.0.25 Updated CI, pre-release version to check pushing to pypi
1 parent 877baaa commit 88cae62

File tree

9 files changed

+79
-13
lines changed

9 files changed

+79
-13
lines changed

.github/workflows/CI.yml

Lines changed: 58 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# This file is autogenerated by maturin v1.8.2
22
# To update, run
33
#
4-
# maturin generate-ci -m ./greyjack/Cargo.toml github --platform manylinux
4+
# maturin generate-ci --platform all --manifest-path ./greyjack/Cargo.toml github
55
#
66
name: CI
77

@@ -44,6 +44,55 @@ jobs:
4444
name: wheels-linux-${{ matrix.platform.target }}
4545
path: dist
4646

47+
windows:
48+
runs-on: ${{ matrix.platform.runner }}
49+
strategy:
50+
matrix:
51+
platform:
52+
- runner: windows-latest
53+
target: x64
54+
steps:
55+
- uses: actions/checkout@v4
56+
- uses: actions/setup-python@v5
57+
with:
58+
python-version: 3.x
59+
architecture: ${{ matrix.platform.target }}
60+
- name: Build wheels
61+
uses: PyO3/maturin-action@v1
62+
with:
63+
target: ${{ matrix.platform.target }}
64+
args: --release --out dist --find-interpreter --manifest-path ./greyjack/Cargo.toml
65+
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
66+
- name: Upload wheels
67+
uses: actions/upload-artifact@v4
68+
with:
69+
name: wheels-windows-${{ matrix.platform.target }}
70+
path: dist
71+
72+
macos:
73+
runs-on: ${{ matrix.platform.runner }}
74+
strategy:
75+
matrix:
76+
platform:
77+
- runner: macos-13
78+
target: x86_64
79+
steps:
80+
- uses: actions/checkout@v4
81+
- uses: actions/setup-python@v5
82+
with:
83+
python-version: 3.x
84+
- name: Build wheels
85+
uses: PyO3/maturin-action@v1
86+
with:
87+
target: ${{ matrix.platform.target }}
88+
args: --release --out dist --find-interpreter --manifest-path ./greyjack/Cargo.toml
89+
sccache: ${{ !startsWith(github.ref, 'refs/tags/') }}
90+
- name: Upload wheels
91+
uses: actions/upload-artifact@v4
92+
with:
93+
name: wheels-macos-${{ matrix.platform.target }}
94+
path: dist
95+
4796
sdist:
4897
runs-on: ubuntu-latest
4998
steps:
@@ -63,7 +112,7 @@ jobs:
63112
name: Release
64113
runs-on: ubuntu-latest
65114
if: ${{ startsWith(github.ref, 'refs/tags/') || github.event_name == 'workflow_dispatch' }}
66-
needs: [linux, sdist]
115+
needs: [linux, windows, macos, sdist]
67116
permissions:
68117
# Use to sign the release artifacts
69118
id-token: write
@@ -84,4 +133,10 @@ jobs:
84133
MATURIN_PYPI_TOKEN: ${{ secrets.PYPI_API_TOKEN }}
85134
with:
86135
command: upload
87-
args: --non-interactive --skip-existing wheels-*/*
136+
args: --non-interactive --skip-existing wheels-*/*
137+
- name: Upload to GitHub Release
138+
uses: softprops/action-gh-release@v1
139+
with:
140+
files: |
141+
wasm-wheels/*.whl
142+
prerelease: ${{ contains(github.ref, 'alpha') || contains(github.ref, 'beta') }}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ There are 2 editions of GreyJack Solver:
1616

1717
# Key Features of GreyJack Solver (Rust version)
1818

19-
- **Unmatched Comfort, Expressiveness, Flexibility and speed of developing** Designed to express alomost any optimization problem with maximum comfortability and clarity.
19+
- **Unmatched Comfort, Expressiveness, Flexibility and speed of developing** Designed to express almost any optimization problem with maximum comfortability and clarity.
2020
- **Universality** Supports a wide range of constraint problems, including continuous, integer, and mixed-integer challenges. Additionally, thanks to Polars, you can optimize virtually any process that can be represented as table data.
2121
- **Python's Comfort Meets Rust's Speed** All computationally intensive parts of the solver are implemented in Rust and seamlessly integrated into Python, offering fast development cycles with production-ready performance for ~95% real-world tasks.
2222
- **Clarity and Simplicity** GreyJack provides a clear and straightforward approach to designing, implementing, and improving effective solutions for nearly any constraint problem and scenario.

greyjack/Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

greyjack/Cargo.toml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "greyjack"
3-
version = "0.0.24"
3+
version = "0.1.0"
44
edition = "2021"
55

66
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
@@ -22,8 +22,8 @@ polars = { version = "0.46.0", features = ["lazy", "ndarray", "serde", "abs"] }
2222
# if you build lib from source code
2323
# uncomment to gain max performance (increases calculation speed about 5-10%,
2424
# but also increases build time ~20x times)
25-
[profile.release]
26-
lto = true
27-
codegen-units = 1
28-
debug = true
29-
opt-level = 3
25+
#[profile.release]
26+
#lto = true
27+
#codegen-units = 1
28+
#debug = true
29+
#opt-level = 3

greyjack/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ There are 2 editions of GreyJack Solver:
1616

1717
# Key Features of GreyJack Solver (Rust version)
1818

19-
- **Unmatched Comfort, Expressiveness, Flexibility and speed of developing** Designed to express alomost any optimization problem with maximum comfortability and clarity.
19+
- **Unmatched Comfort, Expressiveness, Flexibility and speed of developing** Designed to express almost any optimization problem with maximum comfortability and clarity.
2020
- **Universality** Supports a wide range of constraint problems, including continuous, integer, and mixed-integer challenges. Additionally, thanks to Polars, you can optimize virtually any process that can be represented as table data.
2121
- **Python's Comfort Meets Rust's Speed** All computationally intensive parts of the solver are implemented in Rust and seamlessly integrated into Python, offering fast development cycles with production-ready performance for ~95% real-world tasks.
2222
- **Clarity and Simplicity** GreyJack provides a clear and straightforward approach to designing, implementing, and improving effective solutions for nearly any constraint problem and scenario.

greyjack/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ features = ["pyo3/extension-module"]
77

88
[project]
99
name = "greyjack"
10-
version = "0.0.24"
10+
version = "0.1.0"
1111
requires-python = ">=3.9"
1212
dependencies = [
1313
"dill",

greyjack/tests/__init__.py

Whitespace-only changes.

greyjack/tests/unit/__init__.py

Whitespace-only changes.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
2+
3+
from greyjack.score_calculation.scores.SimpleScore import SimpleScore
4+
5+
6+
def test_sum_simple_scores():
7+
8+
score_1 = SimpleScore(0)
9+
score_2 = SimpleScore(1)
10+
score_3 = score_1 + score_2
11+
assert score_3 == SimpleScore(1)

0 commit comments

Comments
 (0)