diff --git a/WHEELS.md b/WHEELS.md new file mode 100644 index 0000000..e51d936 --- /dev/null +++ b/WHEELS.md @@ -0,0 +1,35 @@ +# Wheel Update Reference + +Two wheels are hosted on Nextcloud and installed via `pip install -r requirements.txt`: + +| Wheel | Type | Source | +|---|---|---| +| `heeps-X.Y.Z-py3-none-any.whl` | pure Python | this repo | +| `pyproper3-X.Y.Z-cpABC-cpABC-linux_x86_64.whl` | C extensions (platform-specific) | SourceForge zip | + +--- + +## Update the HEEPS wheel + +```bash +# 1. Bump version in heeps/__init__.py and pyproject.toml +# 2. Rebuild +python -m build --wheel --outdir ~/wheels/ /home/gorban/github/HEEPS +# 3. Upload ~/wheels/heeps-X.Y.Z-py3-none-any.whl to Nextcloud +# 4. Update the heeps line in requirements.txt with the new share URL +``` + +## Update the PyPROPER wheel + +```bash +# 1. Download new zip from https://sourceforge.net/projects/proper-library/files/ +# 2. Extract and build +unzip proper_vX.Y.Z_python.zip -d /tmp/proper_build +cd /tmp/proper_build/proper_vX.Y.Z_python +python -m build --wheel --outdir ~/wheels/ +# 3. Upload ~/wheels/pyproper3-X.Y.Z-*.whl to Nextcloud +# 4. Update the pyproper line in requirements.txt with the new share URL +``` + +> **Note:** The PyPROPER wheel is tied to a specific Python version and Linux architecture +> (e.g. `cp312-cp312-linux_x86_64`). Rebuild on each target platform if needed. diff --git a/heeps/__init__.py b/heeps/__init__.py index 84a3b2f..c41f1fd 100644 --- a/heeps/__init__.py +++ b/heeps/__init__.py @@ -1,6 +1,6 @@ from __future__ import (absolute_import) -__version__ = "1.0.0" +__version__ = "1.1.0" from . import config from . import wavefront diff --git a/heeps/util/__init__.py b/heeps/util/__init__.py new file mode 100644 index 0000000..c396168 --- /dev/null +++ b/heeps/util/__init__.py @@ -0,0 +1 @@ +from __future__ import absolute_import diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..fc8a358 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,30 @@ +[build-system] +requires = ["setuptools>=61", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "heeps" +version = "1.1.0" +description = "High-contrast End-to-End Performance Simulator for the ELT" +requires-python = ">=3.12" +dependencies = [ + "numpy", + "astropy", + "scipy", + "matplotlib", + "pandas", + "ipywidgets", + "requests", + "beautifulsoup4", + "packaging", + "scikit-image", + "ipython", + "vip_hci", +] + +[tool.setuptools.packages.find] +where = ["."] +include = ["heeps*"] + +[tool.setuptools.package-data] +"heeps" = ["**/*"] diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..41fe396 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +# requirements.txt +https://dox.uliege.be/s/4p94sAmtQbSELSG/download/heeps-1.1.0-py3-none-any.whl # heeps wheel +https://dox.uliege.be/s/HJK44BRNex62iaf/download/pyproper3-3.3.3-cp312-cp312-linux_x86_64.whl # pyproper wheel \ No newline at end of file