SatelliteShorelines / CoastSeg

An interactive toolbox for downloading satellite imagery, applying image segmentation models, mapping shoreline positions and more. The mapping extension for CoastSat and Zoo.
https://satelliteshorelines.github.io/CoastSeg/
GNU General Public License v3.0
46 stars 9 forks source link

Installing Tensorflow on MacOS downgrade CoastSeg to 1.140 #242

Closed FlorisCalkoen closed 4 months ago

FlorisCalkoen commented 5 months ago

Ping #openjournals/joss-reviews#6683

I'm not sure if it breaks things downstream, but I thought it's worth sharing. Installing tensorflow on mac (following CoastSeg and Apple guidelines) will downgrade CoastSeg to 1.140.

Click to see install command and result ```bash ❯ mamba install tensorflow Looking for: ['tensorflow'] conda-forge/osx-arm64 Using cache conda-forge/noarch Using cache Pinned packages: - python 3.10.* Transaction Prefix: /Users/calkoen/mambaforge/envs/coastseg Updating specs: - tensorflow - ca-certificates - certifi - openssl Package Version Build Channel Size ────────────────────────────────────────────────────────────────────────────────────── Install: ────────────────────────────────────────────────────────────────────────────────────── + wrapt 1.14.1 py310h8e9501a_1 conda-forge 49kB + flatbuffers 23.5.26 h13dd4ca_1 conda-forge 1MB + ml_dtypes 0.2.0 py310h5924a0a_2 conda-forge 669kB + gettext-tools 0.22.5 h8fbad5d_2 conda-forge Cached + libasprintf 0.22.5 h8fbad5d_2 conda-forge Cached + libgettextpo 0.22.5 h8fbad5d_2 conda-forge Cached + tensorboard-data-server 0.7.0 py310hdd3b5e7_1 conda-forge 3MB + libclang 15.0.7 default_he012953_5 conda-forge 134kB + libasprintf-devel 0.22.5 h8fbad5d_2 conda-forge Cached + libgettextpo-devel 0.22.5 h8fbad5d_2 conda-forge Cached + gettext 0.22.5 h8fbad5d_2 conda-forge Cached + keras 2.15.0 pyhd8ed1ab_0 conda-forge 900kB + absl-py 2.1.0 pyhd8ed1ab_0 conda-forge 107kB + astunparse 1.6.3 pyhd8ed1ab_0 conda-forge 16kB + gast 0.5.4 pyhd8ed1ab_0 conda-forge 24kB + google-pasta 0.2.0 pyh8c360ce_0 conda-forge 43kB + opt_einsum 3.3.0 pyhc1e730c_2 conda-forge 58kB + termcolor 2.4.0 pyhd8ed1ab_0 conda-forge 13kB + python-flatbuffers 24.3.25 pyh59ac667_0 conda-forge 34kB + markdown 3.6 pyhd8ed1ab_0 conda-forge Cached + werkzeug 3.0.3 pyhd8ed1ab_0 conda-forge 243kB + blinker 1.8.1 pyhd8ed1ab_0 conda-forge 15kB + pyjwt 2.8.0 pyhd8ed1ab_1 conda-forge Cached + oauthlib 3.2.2 pyhd8ed1ab_0 conda-forge Cached + requests-oauthlib 2.0.0 pyhd8ed1ab_0 conda-forge Cached + google-auth-oauthlib 1.2.0 pyhd8ed1ab_0 conda-forge Cached + tensorboard 2.15.2 pyhd8ed1ab_0 conda-forge 5MB + tensorflow-base 2.15.0 cpu_py310hb663c03_2 conda-forge 134MB + tensorflow-estimator 2.15.0 cpu_py310h0d828bf_2 conda-forge 549kB + tensorflow 2.15.0 cpu_py310hed9d77c_2 conda-forge 39kB Change: ────────────────────────────────────────────────────────────────────────────────────── - libre2-11 2023.09.01 h7b2c953_2 conda-forge Cached + libre2-11 2023.09.01 h741fcf5_1 conda-forge Cached - libtiff 4.6.0 h07db509_3 conda-forge Cached + libtiff 4.6.0 ha8a6c65_2 conda-forge Cached - blosc 1.21.5 h9c252e8_1 conda-forge Cached + blosc 1.21.5 hc338f07_0 conda-forge Cached - re2 2023.09.01 h4cba328_2 conda-forge Cached + re2 2023.09.01 h4cba328_1 conda-forge Cached - imagecodecs 2024.1.1 py310h8137ee9_6 conda-forge Cached + imagecodecs 2024.1.1 py310h7dbe831_2 conda-forge 2MB - geotiff 1.7.1 h6e650f3_16 conda-forge Cached + geotiff 1.7.1 h7bcba05_15 conda-forge Cached - libspatialite 5.1.0 h77c30ab_5 conda-forge Cached + libspatialite 5.1.0 h69abc6b_4 conda-forge Cached - pyproj 3.6.1 py310h42c19a3_6 conda-forge Cached + pyproj 3.6.1 py310h486faf3_5 conda-forge 466kB - qt-main 5.15.8 hf679f28_21 conda-forge Cached + qt-main 5.15.8 h6bf1bb6_19 conda-forge 51MB Downgrade: ────────────────────────────────────────────────────────────────────────────────────── - libabseil 20240116.2 cxx17_hebf3989_0 conda-forge Cached + libabseil 20230802.1 cxx17_h13dd4ca_0 conda-forge Cached - c-blosc2 2.14.4 ha57e6be_1 conda-forge Cached + c-blosc2 2.14.3 ha57e6be_0 conda-forge 240kB - cfitsio 4.4.0 h808cd33_1 conda-forge Cached + cfitsio 4.3.1 h808cd33_0 conda-forge Cached - libdeflate 1.20 h93a5062_0 conda-forge Cached + libdeflate 1.19 hb547adb_0 conda-forge Cached - pcre2 10.43 h26f9a81_0 conda-forge Cached + pcre2 10.42 h26f9a81_0 conda-forge Cached - libclang13 18.1.5 default_h174537c_0 conda-forge Cached + libclang13 15.0.7 default_h83d0a53_5 conda-forge 6MB - mysql-common 8.3.0 hd1853d3_4 conda-forge Cached + mysql-common 8.0.33 hf9e6398_6 conda-forge 752kB - snappy 1.2.0 hd04f947_1 conda-forge Cached + snappy 1.1.10 hd04f947_1 conda-forge 34kB - tiledb 2.22.0 hf0716ca_3 conda-forge Cached + tiledb 2.18.2 hcd9d348_1 conda-forge 5MB - libprotobuf 4.25.3 hbfab5d5_0 conda-forge Cached + libprotobuf 4.24.4 h810fc01_0 conda-forge Cached - mysql-libs 8.3.0 hf036fc4_4 conda-forge Cached + mysql-libs 8.0.33 he3dca8b_6 conda-forge 2MB - protobuf 4.25.3 py310h1e88e72_0 conda-forge Cached + protobuf 4.24.4 py310hc08086b_0 conda-forge 307kB - proj 9.4.0 h52fb9d0_1 conda-forge Cached + proj 9.3.1 h93d94ba_0 conda-forge Cached - libgrpc 1.62.2 h9c18a4f_0 conda-forge Cached + libgrpc 1.59.3 h9560976_0 conda-forge Cached - libglib 2.80.0 hfc324ee_6 conda-forge Cached + libglib 2.78.4 h1635a5e_0 conda-forge Cached - libgoogle-cloud 2.23.0 hbebe991_1 conda-forge Cached + libgoogle-cloud 2.17.0 hcb82f7c_1 conda-forge 807kB - grpcio 1.62.2 py310hf7687f1_0 conda-forge Cached + grpcio 1.59.3 py310hf7687f1_0 conda-forge 918kB - glib-tools 2.80.0 hb9a4d99_6 conda-forge Cached + glib-tools 2.78.4 h1059232_0 conda-forge 97kB - poppler 24.04.0 h42742f0_0 conda-forge Cached + poppler 23.12.0 hcdd998b_0 conda-forge 1MB - libgoogle-cloud-storage 2.23.0 h8a76758_1 conda-forge Cached + libgoogle-cloud-storage 2.17.0 h8a76758_1 conda-forge 513kB - glib 2.80.0 hfc324ee_6 conda-forge Cached + glib 2.78.4 h1059232_0 conda-forge 487kB - libgdal 3.8.5 h2f7ae65_2 conda-forge Cached + libgdal 3.8.1 h8e72e65_4 conda-forge 9MB - gstreamer 1.24.3 h430e707_0 conda-forge Cached + gstreamer 1.22.9 h551c6ff_0 conda-forge 1MB - gdal 3.8.5 py310h7e77ef1_2 conda-forge Cached + gdal 3.8.1 py310h8d8343e_4 conda-forge 1MB - gst-plugins-base 1.24.3 h8a8f8c8_0 conda-forge Cached + gst-plugins-base 1.22.9 h09b4b5e_0 conda-forge 2MB - fiona 1.9.6 py310ha8a040d_0 conda-forge Cached + fiona 1.9.5 py310h2be8462_2 conda-forge 840kB - coastseg 1.2.4 pyhd8ed1ab_0 conda-forge Cached + coastseg 1.1.40 pyhd8ed1ab_0 conda-forge 17MB Summary: Install: 30 packages Change: 9 packages Downgrade: 27 packages Total download: 250MB ────────────────────────────────────────────────────────────────────────────────────── Confirm changes: [Y/n] ```
2320sharon commented 5 months ago

Hi @FlorisCalkoen

Thank you for raising this issue. We constantly wrestle with the Tensorflow compatibility issues on Windows. An overwhelming majority of our users use Windows, therefore we have decided to only (for now) support Windows (and Linux, where Tensorflow issues are minimal). We plan on providing Mac support when we can, and in the meantime we are reliant on the community of experimental Mac users. None of the developers have access to a Mac computer.

For now, I'll raise an issue for future support for Mac if the wider community wants to help us build it out and support it.

dbuscombe-usgs commented 4 months ago

Mac was never supported, and JOSS even noted that ahead of review