diff --git a/.github/workflows/sdk.yml b/.github/workflows/sdk.yml index f677dab..d32eaef 100644 --- a/.github/workflows/sdk.yml +++ b/.github/workflows/sdk.yml @@ -45,4 +45,4 @@ jobs: python -m venv .env source .env/bin/activate maturin develop --release --features openssl/vendored - python test.py + python python/test.py diff --git a/sdk/.gitignore b/sdk/.gitignore index 366fea7..fc9f304 100644 --- a/sdk/.gitignore +++ b/sdk/.gitignore @@ -1,2 +1,4 @@ .env/ target/ +__pycache__/ +python/aleo/_aleolib.abi3.so diff --git a/sdk/Cargo.toml b/sdk/Cargo.toml index b9b447f..6c82a86 100644 --- a/sdk/Cargo.toml +++ b/sdk/Cargo.toml @@ -7,6 +7,7 @@ edition = "2021" license = "GPL-3.0-or-later" [lib] +name = "_aleolib" crate-type = ["cdylib"] [dependencies] diff --git a/sdk/install.sh b/sdk/install.sh index 9f37efe..8532aff 100755 --- a/sdk/install.sh +++ b/sdk/install.sh @@ -7,4 +7,4 @@ python3 -m venv .env source .env/bin/activate pip install maturin maturin develop -python test.py +python python/test.py diff --git a/sdk/pyproject.toml b/sdk/pyproject.toml index 1de9300..5c1f2d9 100644 --- a/sdk/pyproject.toml +++ b/sdk/pyproject.toml @@ -1,14 +1,28 @@ +[project] +name = "aleo" +description = "A Python SDK for zero-knowledge cryptography based on Aleo" +version = "0.2.0" +readme = "Readme.md" +license = {file = "LICENSE.md"} +authors = [ + {name = "Konstantin Pandl"}, + {name = "Mike Turner"}, + {name = "Roman Proskuryakov"}, +] +classifiers = [ # Optional + "Programming Language :: Python :: 3", +] + +[project.urls] +"Homepage" = "https://github.com/AleoHQ/python-sdk" + [build-system] requires = ["maturin>=1.0,<2.0"] build-backend = "maturin" [tool.maturin] -name = "aleo" -version = "0.2.0" -description = "A Python SDK for zero-knowledge cryptography based on Aleo" -repository = "https://github.com/AleoHQ/python-sdk/tree/master/sdk" -license = "GPL-3.0-or-later" -authors = ["Konstantin Pandl", "Mike Turner", "Roman Proskuryakov"] +python-source = "python" +module-name = "aleo._aleolib" [tool.pyright] reportMissingModuleSource = false # don't report missing aleo.so for CI purposes diff --git a/sdk/python/aleo/__init__.py b/sdk/python/aleo/__init__.py new file mode 100644 index 0000000..fded9fb --- /dev/null +++ b/sdk/python/aleo/__init__.py @@ -0,0 +1,6 @@ +from __future__ import annotations + +from ._aleolib import * + +__doc__ = _aleolib.__doc__ + diff --git a/sdk/aleo.pyi b/sdk/python/aleo/_aleolib.pyi similarity index 100% rename from sdk/aleo.pyi rename to sdk/python/aleo/_aleolib.pyi diff --git a/sdk/python/aleo/py.typed b/sdk/python/aleo/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/sdk/test.py b/sdk/python/test.py similarity index 100% rename from sdk/test.py rename to sdk/python/test.py diff --git a/sdk/src/lib.rs b/sdk/src/lib.rs index d708182..cc6f3cd 100644 --- a/sdk/src/lib.rs +++ b/sdk/src/lib.rs @@ -33,7 +33,7 @@ use programs::*; /// Python developers with zk (zero-knowledge) programming capabilities /// via the usage of Aleo's zkSnarks. #[pymodule] -#[pyo3(name = "aleo")] +#[pyo3(name = "_aleolib")] fn register_module(_py: Python, m: &PyModule) -> PyResult<()> { m.add_class::()?; m.add_class::
()?;