Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 8 additions & 6 deletions .github/workflows/linux_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,19 +63,21 @@ jobs:

pages:
needs: vulnerability_test
runs-on: ubuntu-latest
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.11"
python-version: "3.12"
- name: Install sphinx and themes
run: |
python -m pip install --upgrade pip
pip install sphinx recommonmark sphinx_rtd_theme nbsphinx
# Install package so autodoc can import modules (openseespy mocked in conf.py)
pip install numpy scipy pandas matplotlib
# Use python3.12
export PIP_DEFAULT_TIMEOUT=100
pip install --upgrade pip
pip install sphinx recommonmark sphinx_rtd_theme nbsphinx
pip install -r requirements-py312-linux.txt
pip install -e .
- name: Make html pages
run: |
Expand All @@ -84,7 +86,7 @@ jobs:

- name: Deploy to GitHub Pages
if: success()
uses: crazy-max/ghaction-github-pages@v4
uses: crazy-max/ghaction-github-pages@v5
with:
target_branch: gh-pages
build_dir: docsrc/_build/html/
Expand Down
43 changes: 20 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,29 +130,26 @@ To deactivate later: `deactivate`
<img src="imgs/virtual-env.gif" alt="Virtual environment setup">

### 3. Install Dependencies

Select the requirements file matching your OS and Python version (3.11, 3.12, and 3.13 are supported):

**Windows:**
```bash
pip install -r requirements-py311-win64.txt # Python 3.11
pip install -r requirements-py312-win64.txt # Python 3.12
pip install -r requirements-py313-win64.txt # Python 3.13
```

**Linux:**
```bash
pip install -r requirements-py311-linux.txt # Python 3.11
pip install -r requirements-py312-linux.txt # Python 3.12
pip install -r requirements-py313-linux.txt # Python 3.13
```

**macOS (Apple Silicon):**
```bash
pip install -r requirements-py311-macos_arm64.txt # Python 3.11
pip install -r requirements-py312-macos_arm64.txt # Python 3.12
pip install -r requirements-py313-macos_arm64.txt # Python 3.13
```
Install the appropriate requirements file based on your operating system and Python version.
In case you are using version Python 3.12.

**For Windows Users:**
```bash
pip install -r requirements-py312-win64.txt --timeout=100
```
**For Linux Users:**
```bash
pip install -r requirements-py312-linux.txt --timeout=100
```
**For macOS (Apple Silicon) Users: **
```bash
pip install -r requirements-py312-macos_arm64.txt --timeout=100
```

**Note:** to check your current python version, run the following command
```bash
python --version
```

To check your Python version: `python --version`

Expand Down
28 changes: 15 additions & 13 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -37,19 +37,21 @@ classifiers = [

requires-python = ">=3.11, <3.14"
dependencies = [
"seaborn >= 0.13.0",
"ipykernel >= 4.8.0",
"ipython >= 6.2.0",
"jupyter_client >= 5.0.0",
"notebook >= 5.0.0",
"pyproj >= 3.7.2",
"scipy >= 1.15.3",
"matplotlib >= 3.10.1",
"numpy >= 2.2.6",
"numba >= 0.61.2",
"pandas >= 2.2.3",
"statsmodels >= 0.14.4",
"pydantic >= 2.10.6 ",
"seaborn>=0.13.0",
"ipykernel>=4.8.0",
"ipython>=6.2.0",
"jupyter_client>=7.0",
"notebook>=7.0",
"pyproj~=3.7.2",
"numpy~=2.4.0",
"scipy~=1.17",
"pandas~=2.2",
"h5py>=3.13",
"matplotlib~=3.10",
"numba~=0.67",
"pandas~=2.2.3",
"statsmodels~=0.14",
"pydantic~=2.10",
]


Expand Down
43 changes: 24 additions & 19 deletions requirements-py311-linux.txt
Original file line number Diff line number Diff line change
@@ -1,21 +1,26 @@
# vmtk requirements
# From OQ wheels
#
https://wheelhouse.openquake.org/unified/gdal-3.13.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/fiona-1.10.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/h5py-3.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/llvmlite-0.49.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/matplotlib-3.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/numba-0.67.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/numpy-2.4.6-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
https://wheelhouse.openquake.org/unified/pandas-2.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/pyproj-3.7.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/scipy-1.17.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
https://wheelhouse.openquake.org/unified/setproctitle-1.3.7-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
https://wheelhouse.openquake.org/unified/shapely-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/statsmodels-0.14.6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
#
https://wheelhouse.openquake.org/v3/linux/py311/fiona-1.10.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/gdal-3.10.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/h5py-3.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/llvmlite-0.44.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/matplotlib-3.10.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/numba-0.61.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/numpy-2.2.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/pandas-2.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/pyproj-3.7.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/scipy-1.15.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/shapely-2.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py311/statsmodels-0.14.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/click-8.5.0-py3-none-any.whl
https://wheelhouse.openquake.org/unified/pydantic-2.13.5-py3-none-any.whl
https://wheelhouse.openquake.org/unified/patsy-1.0.3-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/packaging-26.3-py3-none-any.whl
https://wheelhouse.openquake.org/unified/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/pytz-2026.5-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/tzdata-2026.5-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/six-1.17.0-py2.py3-none-any.whl
#
#
openseespy==3.7.0.4
openseespylinux==3.7.0.4
https://wheelhouse.openquake.org/v3/py/click-8.1.7-py3-none-any.whl
https://wheelhouse.openquake.org/v3/py/pydantic-2.10.6-py3-none-any.whl
https://wheelhouse.openquake.org/unified/openseespy-3.7.0.4-py3-none-any.whl
https://wheelhouse.openquake.org/unified/openseespylinux-3.7.0.4-py3-none-any.whl
40 changes: 24 additions & 16 deletions requirements-py311-macos_arm64.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,24 @@
https://wheelhouse.openquake.org/v3/macos/arm64/py311/fiona-1.10.1-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/gdal-3.10.3-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/h5py-3.13.0-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/llvmlite-0.44.0-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/matplotlib-3.10.1-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/numba-0.61.2-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/numpy-2.2.6-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/pandas-2.2.3-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/pyproj-3.7.2-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/scipy-1.15.3-cp311-cp311-macosx_12_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/shapely-2.1.0-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/v3/macos/arm64/py311/statsmodels-0.14.4-cp311-cp311-macosx_11_0_arm64.whl
#pp
openseespymac==3.8.0.0
https://wheelhouse.openquake.org/v3/py/click-8.1.7-py3-none-any.whl
https://wheelhouse.openquake.org/v3/py/pydantic-2.10.6-py3-none-any.whl
#
https://wheelhouse.openquake.org/unified/fiona-1.10.1-cp311-cp311-macosx_14_0_arm64.whl
https://wheelhouse.openquake.org/unified/gdal-3.13.1-cp311-cp311-macosx_14_0_arm64.whl
https://wheelhouse.openquake.org/unified/h5py-3.13.0-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/unified/llvmlite-0.49.0-cp311-cp311-macosx_12_0_arm64.whl
https://wheelhouse.openquake.org/unified/matplotlib-3.10.1-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/unified/numba-0.67.0-cp311-cp311-macosx_12_0_arm64.whl
https://wheelhouse.openquake.org/unified/numpy-2.4.6-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/unified/pandas-2.2.3-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/unified/pyproj-3.7.2-cp311-cp311-macosx_14_0_arm64.whl
https://wheelhouse.openquake.org/unified/scipy-1.17.1-cp311-cp311-macosx_14_0_arm64.whl
https://wheelhouse.openquake.org/unified/shapely-2.1.0-cp311-cp311-macosx_11_0_arm64.whl
https://wheelhouse.openquake.org/unified/statsmodels-0.14.6-cp311-cp311-macosx_11_0_arm64.whl
#
https://wheelhouse.openquake.org/unified/click-8.5.0-py3-none-any.whl
https://wheelhouse.openquake.org/unified/pydantic-2.13.5-py3-none-any.whl
https://wheelhouse.openquake.org/unified/patsy-1.0.3-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/packaging-26.3-py3-none-any.whl
https://wheelhouse.openquake.org/unified/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/pytz-2026.5-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/tzdata-2026.5-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/six-1.17.0-py2.py3-none-any.whl
#
https://wheelhouse.openquake.org/unified/openseespymac-3.8.0.0-py3-none-macosx_13_0_arm64.whl
42 changes: 23 additions & 19 deletions requirements-py311-win64.txt
Original file line number Diff line number Diff line change
@@ -1,21 +1,25 @@
# vmtk requirements
# From OQ wheels

https://wheelhouse.openquake.org/v3/windows/py311/fiona-1.10.1-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/gdal-3.10.2-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/h5py-3.13.0-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/llvmlite-0.44.0-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/matplotlib-3.10.1-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/numba-0.61.2-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/numpy-2.2.6-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/pandas-2.2.3-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/pyproj-3.7.2-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/scipy-1.15.3-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/v3/windows/py311/shapely-2.1.0-cp311-cp311-win_amd64.whl
#
https://wheelhouse.openquake.org/unified/fiona-1.10.1-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/gdal-3.11.4-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/h5py-3.13.0-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/llvmlite-0.49.0-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/matplotlib-3.10.1-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/numba-0.67.0-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/numpy-2.4.6-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/pandas-2.2.3-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/pyproj-3.7.2-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/scipy-1.17.1-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/shapely-2.1.0-cp311-cp311-win_amd64.whl
https://wheelhouse.openquake.org/unified/statsmodels-0.14.6-cp311-cp311-win_amd64.whl
#
https://wheelhouse.openquake.org/unified/click-8.5.0-py3-none-any.whl
https://wheelhouse.openquake.org/unified/pydantic-2.13.5-py3-none-any.whl
https://wheelhouse.openquake.org/unified/patsy-1.0.3-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/packaging-26.3-py3-none-any.whl
https://wheelhouse.openquake.org/unified/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/pytz-2026.5-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/tzdata-2026.5-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/six-1.17.0-py2.py3-none-any.whl
#
#
openseespy==3.6.0.3
openseespywin==3.6.0.3
https://wheelhouse.openquake.org/v3/py/click-8.1.7-py3-none-any.whl
https://wheelhouse.openquake.org/v3/py/pydantic-2.10.6-py3-none-any.whl
https://wheelhouse.openquake.org/unified/openseespy-3.6.0.3-py3-none-any.whl
https://wheelhouse.openquake.org/unified/openseespywin-3.6.0.3-py3-none-any.whl
40 changes: 22 additions & 18 deletions requirements-py312-linux.txt
Original file line number Diff line number Diff line change
@@ -1,21 +1,25 @@
# vmtk requirements
# From OQ wheels
#
https://wheelhouse.openquake.org/v3/linux/py312/fiona-1.10.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/gdal-3.10.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/h5py-3.13.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/llvmlite-0.44.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/matplotlib-3.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/numba-0.61.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/numpy-2.2.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/pandas-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/pyproj-3.7.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/scipy-1.15.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/shapely-2.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/v3/linux/py312/statsmodels-0.14.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/fiona-1.10.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/gdal-3.13.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/h5py-3.13.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/llvmlite-0.49.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/matplotlib-3.10.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/numba-0.67.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/numpy-2.4.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
https://wheelhouse.openquake.org/unified/pandas-2.2.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/pyproj-3.7.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
https://wheelhouse.openquake.org/unified/scipy-1.17.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
https://wheelhouse.openquake.org/unified/shapely-2.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
https://wheelhouse.openquake.org/unified/statsmodels-0.14.6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
#
https://wheelhouse.openquake.org/unified/click-8.5.0-py3-none-any.whl
https://wheelhouse.openquake.org/unified/pydantic-2.13.5-py3-none-any.whl
https://wheelhouse.openquake.org/unified/patsy-1.0.3-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/packaging-26.3-py3-none-any.whl
https://wheelhouse.openquake.org/unified/python_dateutil-2.9.0.post0-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/pytz-2026.5-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/tzdata-2026.5-py2.py3-none-any.whl
https://wheelhouse.openquake.org/unified/six-1.17.0-py2.py3-none-any.whl
#
openseespy==3.7.0.4
openseespylinux==3.7.0.4
https://wheelhouse.openquake.org/v3/py/click-8.1.7-py3-none-any.whl
https://wheelhouse.openquake.org/v3/py/pydantic-2.10.6-py3-none-any.whl
https://wheelhouse.openquake.org/unified/openseespy-3.7.0.4-py3-none-any.whl
https://wheelhouse.openquake.org/unified/openseespylinux-3.7.0.4-py3-none-any.whl
Loading
Loading