Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update python versions and dependencies #1841

Draft
wants to merge 117 commits into
base: develop
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 93 commits
Commits
Show all changes
117 commits
Select commit Hold shift + click to select a range
5b080c7
try python 3.12.x fpr mac conda build
eberrigan Jun 28, 2024
40c2802
try python 3.11.x for mac conda build
eberrigan Jun 28, 2024
62bf16d
trying 3.10.x for mac conda build
eberrigan Jun 28, 2024
b4e5cf7
try python 3.11.x with scipy >=1.11.1
eberrigan Jun 29, 2024
0442139
update windows dependencies python 3.9, pyside 6, scipy and numpy
eberrigan Jul 1, 2024
2b01b75
try python 3.10, and at least pyside6 6.2,
eberrigan Jul 2, 2024
61476a5
try python >=3.11.0,<3.13.0 for mac with pyside 6
eberrigan Jul 8, 2024
1aa027f
python 3.10 for mac conda package
eberrigan Jul 11, 2024
1d8a480
python 3.10 for mac dev environment
eberrigan Jul 11, 2024
79bd483
python 3.10 pyside 6 for windows dev environment
eberrigan Jul 11, 2024
aa43912
pip install tensorflow first
eberrigan Jul 11, 2024
b69731c
python 3.10 pyside 6 windows/linux conda package
eberrigan Jul 11, 2024
6319b39
use pyside6 in conda build for mac and python 3.10
eberrigan Jul 11, 2024
7431a98
use pyside6 in mac environment file and python 3.10
eberrigan Jul 11, 2024
37d3ad2
test pyside 6 and python 3.10 conda packages using build_manual
eberrigan Jul 11, 2024
623c220
checking to see if qtpy is still necessary with pyside 6
eberrigan Jul 11, 2024
bdddd80
qtpy not pulled in mac dev environment
eberrigan Jul 11, 2024
33dc70a
remove scikit-video dependency since it is not maintained
eberrigan Jul 12, 2024
1d8fb66
comment out `VideoWriterSkvideo` for now
eberrigan Jul 12, 2024
81b353e
add `imageio` to dev envs
eberrigan Jul 12, 2024
3c78181
constrain numpy <2.0 and add new tensorflow package to windows/linux …
eberrigan Jul 18, 2024
85cac3d
remove scikit-video, add new tensforflow package to environment_no_cuda
eberrigan Jul 18, 2024
c94c27b
remove scikit-video from pypi requirements
eberrigan Jul 18, 2024
2360b54
import imageio in videowriter module
eberrigan Jul 18, 2024
8db9102
add imageio, constrain pyside6 in windows conda build
eberrigan Jul 18, 2024
7aa1640
add imageio, constrain pyside6 in mac conda build
eberrigan Jul 18, 2024
46009c5
add imageio-ffmpeg, constrain pyside6 and use new tensorflow package …
eberrigan Jul 18, 2024
20e329a
remove imgaug and add imageio to pypi requirements
eberrigan Jul 18, 2024
b9b141b
change `can_use_skvideo` to `can_use_ffmpeg`
eberrigan Jul 18, 2024
fd12f90
add imageio-ffmpeg to windows conda build
eberrigan Jul 18, 2024
a555471
add imageio-ffmpeg to mac conda build
eberrigan Jul 18, 2024
54daa10
add imageio and imageio-ffmpeg to pypi requirements
eberrigan Jul 18, 2024
7599a06
remove trailing space
eberrigan Jul 18, 2024
3f97824
remove pyside 6 constraint in windows dev env
eberrigan Jul 18, 2024
4335754
add sleap-deps channels
eberrigan Jul 18, 2024
72c2483
add new tensorflow package to mac conda build
eberrigan Jul 18, 2024
cae05da
add new tensorflow package to mac environment, imageio-ffmpeg and pys…
eberrigan Jul 18, 2024
e002b2c
update environment_no_cuda to test using ci
eberrigan Jul 18, 2024
9ef6623
turn qtpy back on in windows env
eberrigan Jul 18, 2024
53f2eda
constrain pyside6 in environments to test using ci
eberrigan Jul 19, 2024
8752759
update actions to use python 3.10
eberrigan Jul 19, 2024
b210e61
environment does build locally without upper pyside constraint
eberrigan Jul 19, 2024
4eb2774
remove tensorflow from requirements
eberrigan Jul 19, 2024
903e601
black
eberrigan Jul 19, 2024
5943d0d
python-version needs quotes
eberrigan Jul 19, 2024
02ac22d
add pyside constraint to windows
eberrigan Jul 19, 2024
f13c81b
Remove constraints on PySide6
roomrys Jul 26, 2024
3494e13
pyside 6 >=6.5.0 without QtCharts
eberrigan Jul 31, 2024
b596a37
change pyside6 >=6.5.0 for windows conda package
eberrigan Jul 31, 2024
bcb2127
change pyside6 >=6.5.0 for windows mac package
eberrigan Jul 31, 2024
de2e0b9
change pyside6 >=6.5.0 for windows dev environment
eberrigan Jul 31, 2024
dfe9cd7
change pyside6 >=6.5.0 for mac dev environment
eberrigan Jul 31, 2024
c92ec24
remove QtCharts imports in `monitor` and `training_monitor`
eberrigan Jul 31, 2024
8829836
remove constraint on opencv
eberrigan Jul 31, 2024
8061a06
remove constraint on opencv
eberrigan Jul 31, 2024
fd41a73
remove h5py constraint
eberrigan Jul 31, 2024
1423f31
scikit-image 0.20.0 not working for macs
eberrigan Jul 31, 2024
f67d9aa
try scikit-image <=0.20.0 for mac
eberrigan Jul 31, 2024
c5ecd85
tensorflow from sleap-deps channel not being found
eberrigan Jul 31, 2024
69a16cf
try scikit-image <0.20.0 for mac env
eberrigan Jul 31, 2024
8d6141f
add condarc paths to build manual workflow
eberrigan Jul 31, 2024
8b9629f
add sleap-deps/label/dev to environment file channels just in case
eberrigan Jul 31, 2024
822ace3
remove tensorflow dependency that is now in mac tensorflow conda package
eberrigan Aug 1, 2024
3d3322b
try removing cattrs and jsonpickle constraints
eberrigan Aug 1, 2024
017ec1f
try removing importlib-metadata, cattrs, jsonpickle, networkx constra…
eberrigan Aug 1, 2024
30e8fa5
try scitkit-image >=0.21.0 for python compatibility
eberrigan Aug 1, 2024
f4bc279
remove cattrs and jsonpickle constraints from environment_no_cuda
eberrigan Aug 1, 2024
e6c46d7
remove cattrs and json pickle and networkx constraints from mac sleap…
eberrigan Aug 1, 2024
cfad8de
remove attrs, cattrs. h5py, jsonpickle, opencv, importlib-metadata, t…
eberrigan Aug 1, 2024
ad556ce
add matplotlib qt backend
eberrigan Aug 1, 2024
514972c
try linux build fix for libegl error
eberrigan Aug 1, 2024
0ca5a73
do we require pip?
eberrigan Aug 1, 2024
40f9b34
try libopencv fix for linux in environment for CI
eberrigan Aug 1, 2024
3545ac8
include pip check
eberrigan Aug 1, 2024
a2b1273
try headless libopencv from conda-forge channel in CI env
eberrigan Aug 1, 2024
a974206
try removing opencv
eberrigan Aug 1, 2024
544b9ec
try any channel libopencv *=headless*
eberrigan Aug 1, 2024
9ec64e8
libopencv *=headless* break windows env
eberrigan Aug 1, 2024
48d12de
replace qt5agg backend for matplotplib with updated qtagg
eberrigan Aug 1, 2024
355e252
add matplotlib functions to mplcanvas class
eberrigan Aug 1, 2024
51b13ba
start replacing qtcharts with mpl
eberrigan Aug 1, 2024
9af7619
add linux libraries to runner environment when os is linux
eberrigan Aug 2, 2024
b42ad2b
Merge remote-tracking branch 'origin/elizabeth/update-python-and-depe…
eberrigan Aug 2, 2024
314b9f5
init series
eberrigan Aug 2, 2024
0e8861a
change variable names
eberrigan Aug 2, 2024
096b84b
remove `VideoWriter` changes
eberrigan Aug 2, 2024
5649a30
remove `export_clip` changes
eberrigan Aug 2, 2024
63e0106
remove `training_monitor` changes
eberrigan Aug 2, 2024
e6a2d57
remove monitor changes
eberrigan Aug 3, 2024
a20af98
remove mpl changes
eberrigan Aug 3, 2024
53880c7
remove QtCharts imports
eberrigan Aug 3, 2024
ffa0982
remove skvideo import
eberrigan Aug 3, 2024
3587731
Attrs version needs to match cattrs
roomrys Aug 14, 2024
1746c7a
Pin jsonpickle to preserve backwards compatibility
Aug 15, 2024
c97f828
Merge branch 'develop' of https://github.com/talmolab/sleap into eliz…
roomrys Aug 16, 2024
0fe5a7d
Update attrs to match cattrs version
roomrys Aug 16, 2024
27ab36d
Try matching pypi dependencies to environment ymls
Aug 16, 2024
bb76653
Merge branch 'develop' into elizabeth/update-python-and-dependencies
roomrys Aug 16, 2024
254767c
Try new tensorflow build for mac
Aug 17, 2024
616238e
Fix ubuntu CI import error by adding OpenGL libraries (#1909)
eberrigan Aug 24, 2024
6564159
Merge branch 'develop' of https://github.com/talmolab/sleap into eliz…
roomrys Aug 26, 2024
12546d9
Update tensorflow version in mac meta.yml
roomrys Aug 27, 2024
41a5597
Trigger github action workflows for conda builds when changes made to…
eberrigan Aug 30, 2024
d38bf2d
Test wheel on macos python 3.10 using build_ci (#1923)
eberrigan Aug 30, 2024
a9b1dfb
Merge branch 'develop' into elizabeth/update-python-and-dependencies
roomrys Aug 31, 2024
cef0208
Install ffmpeg on macos and Ubuntu runners when testing PyPI wheel (#…
eberrigan Sep 3, 2024
b023ffe
Remove commented out code
Sep 5, 2024
b096ffa
Remove duplicate packages
Sep 5, 2024
7c2230b
Match meta dependencies to environment yml dependencies
Sep 5, 2024
d25c7d5
Remove commented out code
Sep 5, 2024
13444f0
Add comment for why certain pins
Sep 5, 2024
a585d80
Merge branch 'develop' of https://github.com/talmolab/sleap into eliz…
Sep 10, 2024
e2e5b5c
Pin numpy<2.0
Sep 11, 2024
17ca960
Merge branch 'develop' into elizabeth/update-python-and-dependencies
roomrys Sep 11, 2024
7b77402
Pin jsonpickle <=1.5.0 in win/linux meta.yaml
Sep 11, 2024
a3e1bb2
Also pin jsonpick<=1.5.0 in the run section for win/linux
Sep 11, 2024
902d062
Use sleap-deps main channel
roomrys Sep 12, 2024
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
1 change: 1 addition & 0 deletions .conda/condarc.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
channels:
- sleap-deps/label/dev
- conda-forge
- nvidia
- https://conda.anaconda.org/sleap/label/dev
Expand Down
88 changes: 61 additions & 27 deletions .conda/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,10 @@ build:

requirements:
host:
- conda-forge::python ==3.7.12 # Run into _MAX_WINDOWS_WORKERS not found if <
- numpy >=1.19.5,<1.23.0 # Linux likes anaconda, windows likes conda-forge
# - conda-forge::python ==3.7.12 # Run into _MAX_WINDOWS_WORKERS not found if <
- conda-forge::python >=3.10.0,<3.11.0
# - numpy >=1.19.5,<1.23.0 # Linux likes anaconda, windows likes conda-forge
- numpy >=1.16.5,<2.0 # SciPy 1.7 requires numpy >=1.16.5
- conda-forge::cudatoolkit ==11.3.1
- conda-forge::cudnn=8.2.1
- nvidia::cuda-nvcc=11.3
Expand All @@ -30,69 +32,101 @@ requirements:

# Only the packages above are required to build, but listing them all ensures no
# unnecessary pypi packages are installed via the build script (bld.bat, build.sh)
- conda-forge::attrs ==21.4.0
- conda-forge::cattrs ==1.1.1
- conda-forge::h5py ==3.7.0
# - conda-forge::attrs ==21.4.0
- conda-forge::attrs
# - conda-forge::cattrs ==1.1.1
- conda-forge::cattrs
# - conda-forge::h5py ==3.7.0
- conda-forge::h5py
- conda-forge::imageio
- conda-forge::imageio-ffmpeg
- conda-forge::jsmin
- conda-forge::jsonpickle ==1.2
# - conda-forge::jsonpickle ==1.2
- conda-forge::jsonpickle
- conda-forge::networkx
- conda-forge::opencv <4.9.0
# - conda-forge::opencv <4.9.0
- conda-forge::opencv
- conda-forge::pandas
- conda-forge::pillow >=8.3.2
- conda-forge::psutil
- conda-forge::pykalman
- conda-forge::pyside2 >=5.12,<5.14
# - conda-forge::pyside2 >=5.12,<5.14 # To ensure works correctly with QtPy.
- conda-forge::pyside6 >=6.5.0 # >=6.2 is compatible with Python 3.10, conda package exists for >=6.4, 6.4 conda package uses problematic QtCharts https://github.com/roomrys/envexp/pull/3
- conda-forge::python-rapidjson
- conda-forge::pyyaml
- conda-forge::pyzmq
- conda-forge::qtpy >=2.0.1
- conda-forge::rich
- conda-forge::scipy >=1.4.1,<=1.9.0
# - conda-forge::scipy >=1.4.1,<=1.9.0
- conda-forge::scipy >=1.7.0 # Python 3.10 requires scipy >=1.7
- conda-forge::scikit-image
- conda-forge::scikit-learn ==1.0
- conda-forge::scikit-video
# - conda-forge::scikit-learn ==1.0
- conda-forge::scikit-learn >=1.0.0 # Python 3.10 requires scikit-learn >=1.0
# - conda-forge::scikit-video
- conda-forge::seaborn
# - sleap/label/dev::tensorflow ==2.7.0 # TODO: Switch to main label when updated
- sleap-deps/label/dev::tensorflow ==2.9.2a0 # TODO: Switch to main label when updated
- conda-forge::qudida
- conda-forge::albumentations
- conda-forge::ndx-pose
- conda-forge::importlib-metadata ==4.11.4
# - conda-forge::importlib-metadata ==4.11.4
- conda-forge::importlib-metadata
run:
- conda-forge::python ==3.7.12 # Run into _MAX_WINDOWS_WORKERS not found if <
- conda-forge::attrs ==21.4.0
- conda-forge::cattrs ==1.1.1
# - conda-forge::python ==3.7.12 # Run into _MAX_WINDOWS_WORKERS not found if <
- conda-forge::python >=3.10.0,<3.11.0
# - numpy >=1.19.5,<1.23.0 # Linux likes anaconda, windows likes conda-forge
- numpy >=1.16.5,<2.0 # SciPy 1.7 requires numpy >=1.16.5
# - conda-forge::attrs ==21.4.0
- conda-forge::attrs
# - conda-forge::cattrs ==1.1.1
- conda-forge::cattrs
- conda-forge::cudatoolkit ==11.3.1
- conda-forge::cudnn=8.2.1
- nvidia::cuda-nvcc=11.3
- conda-forge::h5py ==3.7.0
# - conda-forge::h5py ==3.7.0
- conda-forge::h5py
- conda-forge::imageio
- conda-forge::imageio-ffmpeg
- conda-forge::jsmin
- conda-forge::jsonpickle ==1.2
# - conda-forge::jsonpickle ==1.2
- conda-forge::jsonpickle
- conda-forge::networkx
- numpy >=1.19.5,<1.23.0 # Linux likes anaconda, windows likes conda-forge
- conda-forge::opencv <4.9.0
# - conda-forge::opencv <4.9.0
- conda-forge::opencv
- conda-forge::pandas
- conda-forge::pillow >=8.3.2
- conda-forge::psutil
- conda-forge::pykalman
- conda-forge::pyside2 >=5.12,<5.14 # To ensure works correctly with QtPy.
# - conda-forge::pyside2 >=5.12,<5.14 # To ensure works correctly with QtPy.
- conda-forge::pyside6 >=6.5.0 # >=6.2 is compatible with Python 3.10, conda package exists for >=6.4, 6.4 conda package uses problematic QtCharts https://github.com/roomrys/envexp/pull/3
- conda-forge::python-rapidjson
- conda-forge::pyyaml
- conda-forge::pyzmq
- conda-forge::qtpy >=2.0.1
- conda-forge::rich
- conda-forge::scipy >=1.4.1,<=1.9.0
# - conda-forge::scipy >=1.4.1,<=1.9.0
- conda-forge::scipy >=1.7.0 # Python 3.10 requires scipy >=1.7
- conda-forge::scikit-image
- conda-forge::scikit-learn ==1.0
- conda-forge::scikit-video
# - conda-forge::scikit-learn ==1.0
- conda-forge::scikit-learn >=1.0.0 # Python 3.10 requires scikit-learn >=1.0
# - conda-forge::scikit-video
- conda-forge::seaborn
- sleap/label/dev::tensorflow ==2.7.0 # TODO: Switch to main label when updated
- conda-forge::tensorflow-hub <0.14.0 # Causes pynwb conflicts on linux GH-1446
# - sleap/label/dev::tensorflow ==2.7.0 # TODO: Switch to main label when updated
- sleap-deps/label/dev::tensorflow ==2.9.2a0 # TODO: Switch to main label when updated
# - conda-forge::tensorflow-hub <0.14.0 # Causes pynwb conflicts on linux GH-1446
- conda-forge::tensorflow-hub
- conda-forge::qudida
- conda-forge::albumentations
- conda-forge::ndx-pose
- conda-forge::importlib-metadata ==4.11.4
# - conda-forge::importlib-metadata ==4.11.4
- conda-forge::importlib-metadata

# This no longer works so we have moved it to the build workflow
# https://github.com/talmolab/sleap/pull/1744
# test:
# imports:
# - sleap
# - sleap
test:
requires:
- pip
- libopencv *=headless* # [linux] https://github.com/conda-forge/opencv-feedstock/issues/401#issuecomment-2028099423
1 change: 1 addition & 0 deletions .conda_mac/condarc.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# https://github.com/github/roadmap/issues/528

channels:
- sleap-deps/label/dev
- conda-forge
- anaconda
60 changes: 40 additions & 20 deletions .conda_mac/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,68 +23,88 @@ source:

requirements:
host:
- conda-forge::python >=3.9.0, <3.10.0
- anaconda::numpy >=1.19.5,<1.23.0
- conda-forge::python >=3.10.0,<3.11.0
# - anaconda::numpy >=1.19.5,<1.23.0
- conda-forge::numpy >=1.16.5 # Scipy 1.7.0 requires numpy >=1.16.5
- conda-forge::setuptools
- conda-forge::packaging
- conda-forge::pip

# Only the packages above are required to build, but listing them all ensures no
# unnecessary pypi packages are installed via the build script (bld.bat, build.sh)
- conda-forge::attrs >=21.2.0
- conda-forge::cattrs ==1.1.1
# - conda-forge::cattrs ==1.1.1
- conda-forge::cattrs
- conda-forge::h5py
- conda-forge::imageio
- conda-forge::imageio-ffmpeg
- conda-forge::jsmin
- conda-forge::jsonpickle ==1.2
- conda-forge::keras <2.10.0,>=2.9.0rc0 # Required by tensorflow-macos
- conda-forge::networkx <3.3
# - conda-forge::jsonpickle ==1.2
- conda-forge::jsonpickle
# - conda-forge::keras <2.10.0,>=2.9.0rc0 # Required by tensorflow-macos in sleap-deps now
# - conda-forge::networkx <3.3
- conda-forge::networkx
- conda-forge::opencv
- conda-forge::pandas
- conda-forge::pillow
- conda-forge::psutil
- conda-forge::pykalman
- conda-forge::pyside2 >=5.12
# - conda-forge::pyside2 >=5.12 # To ensure application works correctly with QtPy.
- conda-forge::pyside6 >=6.5.0 # >=6.2 is compatible with Python 3.10, conda package exists for >=6.4, 6.4 conda package uses problematic QtCharts https://github.com/roomrys/envexp/pull/3
- conda-forge::python-rapidjson
- conda-forge::pyyaml
- conda-forge::pyzmq
- conda-forge::qtpy >=2.0.1
- conda-forge::rich
- conda-forge::scipy >=1.4.1,<=1.9.0
# - conda-forge::scipy >=1.4.1,<=1.9.0
- conda-forge::scipy >=1.7.0 # Python 3.10 needs scipy >= 1.7
- conda-forge::scikit-image
- conda-forge::scikit-learn ==1.0
- conda-forge::scikit-video
# - conda-forge::scikit-learn ==1.0
- conda-forge::scikit-learn >=1.0.0 # Python 3.10 needs scikit-learn >= 1.0
# - conda-forge::scikit-video
- conda-forge::seaborn
- sleap-deps/label/dev::tensorflow ==2.9.2a0 # TODO: Switch to main label when updated
- conda-forge::qudida
- conda-forge::albumentations
- conda-forge::ndx-pose

run:
- conda-forge::python >=3.9.0, <3.10.0
- conda-forge::python >=3.10.0,<3.11.0
- conda-forge::attrs >=21.2.0
- conda-forge::cattrs ==1.1.1
# - conda-forge::cattrs ==1.1.1
- conda-forge::cattrs
- conda-forge::h5py
- conda-forge::imageio
- conda-forge::imageio-ffmpeg
- conda-forge::jsmin
- conda-forge::jsonpickle ==1.2
- conda-forge::keras <2.10.0,>=2.9.0rc0 # Required by tensorflow-macos
- conda-forge::networkx <3.3
- anaconda::numpy >=1.19.5,<1.23.0
# - conda-forge::jsonpickle ==1.2
- conda-forge::jsonpickle
# - conda-forge::keras <2.10.0,>=2.9.0rc0 # Required by tensorflow-macos in sleap-deps now
# - conda-forge::networkx <3.3
- conda-forge::networkx
# - anaconda::numpy >=1.19.5,<1.23.0
- conda-forge::numpy >=1.16.5 # Scipy 1.7.0 requires numpy >=1.16.5
- conda-forge::opencv
- conda-forge::pandas
- conda-forge::pillow
- conda-forge::psutil
- conda-forge::pykalman
- conda-forge::pyside2 >=5.12
# - conda-forge::pyside2 >=5.12
- conda-forge::pyside6 >=6.5.0 # >=6.2 is compatible with Python 3.10, conda package exists for >=6.4, 6.4 conda package uses problematic QtCharts https://github.com/roomrys/envexp/pull/3
- conda-forge::python-rapidjson
- conda-forge::pyyaml
- conda-forge::pyzmq
- conda-forge::qtpy >=2.0.1
- conda-forge::rich
- conda-forge::scipy >=1.4.1,<=1.9.0
# - conda-forge::scipy >=1.4.1,<=1.9.0
- conda-forge::scipy >=1.7.0 # Python 3.10 is compatible with scipy >=1.7.0
- conda-forge::scikit-image
- conda-forge::scikit-learn ==1.0
- conda-forge::scikit-video
# - conda-forge::scikit-learn ==1.0
- conda-forge::scikit-learn >=1.0.0 # Python 3.10 is compatible with scikit-learn >=1.0.0
# - conda-forge::scikit-video
- conda-forge::seaborn
# - conda-forge::tensorflow-hub # pulls in tensorflow cpu from conda-forge
- sleap-deps/label/dev::tensorflow ==2.9.2a0 # TODO: Switch to main label when updated
- conda-forge::qudida
- conda-forge::albumentations
- conda-forge::ndx-pose
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ jobs:
include:
# Use this condarc as default
- condarc: .conda/condarc.yaml
- pyver: "3.7"
- pyver: "3.10"
# Use special condarc if macos
- os: "macos-14"
condarc: .conda_mac/condarc.yaml
pyver: "3.9"
pyver: "3.10"
steps:
# Setup
- name: Checkout
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/build_ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
# Use this condarc as default
- condarc: .conda/condarc.yaml
- wheel_name: sleap-wheel-linux
- pyver: "3.7"
- pyver: "3.10"
steps:
# Setup
- name: Checkout
Expand Down Expand Up @@ -83,7 +83,7 @@ jobs:
pip install '$wheel_path'[dev]
- test_args: pytest --durations=-1 tests/
- condarc: .conda/condarc.yaml
- pyver: "3.7"
- pyver: "3.10"
# Use special condarc if macos
- os: "macos-14"
condarc: .conda_mac/condarc.yaml
Expand All @@ -93,6 +93,7 @@ jobs:
# Otherwise core dumped in github actions
test_args: |
sudo apt install xvfb libxkbcommon-x11-0 libxcb-icccm4 libxcb-image0 libxcb-keysyms1 libxcb-randr0 libxcb-render-util0 libxcb-xinerama0 libxcb-xfixes0
sudo apt-get install libglapi-mesa libegl-mesa0 libegl1 libopengl0 libgl1-mesa-glx
sudo Xvfb :1 -screen 0 1024x768x24 </dev/null &
export DISPLAY=":1"
pytest tests -k 'not exclude_from_linux_pip_test'
Expand Down
51 changes: 45 additions & 6 deletions .github/workflows/build_manual.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,14 @@ on:
push:
paths:
- '.conda/meta.yaml'
- '.conda/condarc.yaml'
- '.conda_mac/meta.yaml'
- '.conda_mac/condarc.yaml'
- '.github/workflows/build_manual.yml'
branches:
# - develop
- fakebranch
# - fakebranch
- elizabeth/update-python-and-dependencies

jobs:
build:
Expand All @@ -25,11 +28,11 @@ jobs:
include:
# Use this condarc as default
- condarc: .conda/condarc.yaml
- pyver: "3.7"
- pyver: "3.10"
# Use special condarc if macos
- os: "macos-14"
condarc: .conda_mac/condarc.yaml
pyver: "3.9"
pyver: "3.10"
steps:
# Setup
- name: Checkout
Expand Down Expand Up @@ -92,9 +95,45 @@ jobs:
conda build .conda_mac --output-folder build
echo "BUILD_PATH=$(pwd)/build" >> "$GITHUB_ENV"

# Test built conda package (Ubuntu and Windows)
- name: Test built conda package (Ubuntu and Windows)
if: matrix.os != 'macos-14'
# Test built conda package (Ubuntu)
- name: Test built conda package (Ubuntu)
if: matrix.os == 'ubuntu-22.04'
shell: bash -l {0}
run: |
echo "Current build path: $BUILD_PATH"
conda deactivate

echo "Python executable before activating environment:"
which python
echo "Python version before activating environment:"
python --version
echo "Conda info before activating environment:"
conda info

echo "Creating and testing conda environment with sleap package..."
sudo apt-get update
sudo apt-get install libglapi-mesa libegl-mesa0 libegl1 libopengl0 libgl1-mesa-glx
conda create -y -n sleap_test -c file://$BUILD_PATH -c sleap/label/dev -c conda-forge -c nvidia -c anaconda sleap
conda activate sleap_test

echo "Python executable after activating sleap_test environment:"
which python
echo "Python version after activating sleap_test environment:"
python --version
echo "Conda info after activating sleap_test environment:"
conda info
echo "List of installed conda packages in the sleap_test environment:"
conda list
echo "List of installed pip packages in the sleap_test environment:"
pip list

echo "Testing sleap package installation..."
sleap_version=$(python -c "import sleap; print(sleap.__version__)")
echo "Test completed using sleap version: $sleap_version"

# Test built conda package (Windows)
- name: Test built conda package (Windows)
if: matrix.os == 'windows-2022'
shell: bash -l {0}
run: |
echo "Current build path: $BUILD_PATH"
Expand Down
Loading
Loading