spacetelescope / jwql

The James Webb Space Telescope Quicklook Application
BSD 3-Clause "New" or "Revised" License
64 stars 42 forks source link

Add Dependencies for Servers in `pyproject.toml` #1568

Closed mfixstsci closed 1 month ago

mfixstsci commented 1 month ago

Looks like conda has a firefox package but pip does not.... I see selenium-firefox but I don't know if that is the same thing.

bhilbert4 commented 1 month ago

Hmmm. I don't remember where I installed firefox from on the servers before. Does the 3.9 env say where firefox came from?

mfixstsci commented 1 month ago

Hmmm. I don't remember where I installed firefox from on the servers before. Does the 3.9 env say where firefox came from?

From what I see in the 3.9 environment there is a dependency on selenium==4.13.0 under the pip portion of the file. Does that ring a bell?

bhilbert4 commented 1 month ago

Yeah, that sounds right. What about firefox though?

mfixstsci commented 1 month ago

Yeah, that sounds right. What about firefox though?

Okay cool -- I just did a conda list on the 3.9 env and it looks like it is coming from conda-forge which is not any help to us in the future if we are using pip/pyproject.toml. I wonder if selenium-firefox in pip is similar. Do any of the monitors import firefox directly?

bhilbert4 commented 1 month ago

No, I don't think any of them import firefox. I think it's only used behind the scenes for png generation. Probably imported by Bokeh.

zacharyburnett commented 1 month ago

@mfixstsci here's a sample of what the consolidated frozen environment file looks like, combining conda and pip dependencies. You can install the entire environment (including all the pip dependencies) with conda env create --file <path_or_url>.

The filename output by this most recent run of build.yml was jwql_conda_py3.11_0.0.0.post1.dev0+7b90155.yml; as far as I can tell, this version string is so mangled (0.0.0.post1.dev0+7b90155 with jwql 0.1.dev1+g7b90155) because this workflow was run on a commit within the fork, which does not have tags synced with the main repo. Additionally, in between releases you will see the .devX as well. To reiterate, on a release this version number will be the same as the git tag without all the extra fluff, because the workflow is run on the same commit as that tagged release (literally triggered by the release as an event).

# jwql_conda_py3.11_0.0.0.post1.dev0+7b90155.yml
channels:
  - conda-forge
dependencies:
  - _libgcc_mutex=0.1
  - _openmp_mutex=4.5
  - archspec=0.2.3
  - boltons=24.0.0
  - brotli-python=1.1.0
  - bzip2=1.0.8
  - c-ares=1.28.1
  - ca-certificates=2024.2.2
  - certifi=2024.2.2
  - cffi=1.16.0
  - charset-normalizer=3.3.2
  - colorama=0.4.6
  - conda=24.5.0
  - conda-libmamba-solver=24.1.0
  - conda-package-handling=2.2.0
  - conda-package-streaming=0.9.0
  - distro=1.9.0
  - firefox=125.0.3
  - fmt=10.2.1
  - frozendict=2.4.4
  - icu=73.2
  - idna=3.7
  - jsonpatch=1.33
  - jsonpointer=2.4
  - keyutils=1.6.1
  - krb5=1.21.2
  - ld_impl_linux-64=2.40
  - libarchive=3.7.2
  - libcurl=8.7.1
  - libedit=3.1.20191231
  - libev=4.33
  - libexpat=2.6.2
  - libffi=3.4.2
  - libgcc-ng=13.2.0
  - libgomp=13.2.0
  - libiconv=1.17
  - libmamba=1.5.8
  - libmambapy=1.5.8
  - libnghttp2=1.58.0
  - libnsl=2.0.1
  - libsolv=0.7.29
  - libsqlite=3.45.3
  - libssh2=1.11.0
  - libstdcxx-ng=13.2.0
  - libuuid=2.38.1
  - libxcrypt=4.4.36
  - libxml2=2.12.7
  - libzlib=1.2.13
  - lz4-c=1.9.4
  - lzo=2.10
  - menuinst=2.0.2
  - ncurses=6.5
  - openssl=3.3.0
  - packaging=24.0
  - pip=24.0
  - platformdirs=4.2.1
  - pluggy=1.5.0
  - pybind11-abi=4
  - pycosat=0.6.6
  - pycparser=2.22
  - pysocks=1.7.1
  - python=3.11.9
  - python_abi=3.11
  - readline=8.2
  - reproc=14.2.4.post0
  - reproc-cpp=14.2.4.post0
  - requests=2.31.0
  - ruamel.yaml=0.18.6
  - ruamel.yaml.clib=0.2.8
  - setuptools=69.5.1
  - tk=8.6.13
  - tqdm=4.66.4
  - truststore=0.8.0
  - urllib3=2.2.1
  - wheel=0.43.0
  - xz=5.2.6
  - yaml-cpp=0.8.0
  - zstandard=0.22.0
  - zstd=1.5.5
  - pip:
      - alabaster==0.7.16
      - amqp==5.2.0
      - asdf==3.2.0
      - asdf-astropy==0.6.1
      - asdf-coordinates-schemas==0.3.0
      - asdf-standard==1.1.1
      - asdf-transform-schemas==0.5.0
      - asdf-wcs-schemas==0.4.0
      - asgiref==3.8.1
      - astropy==6.1.0
      - astropy-iers-data==0.2024.5.13.0.30.12
      - astroquery==0.4.7
      - attrs==23.2.0
      - babel==2.15.0
      - backports-tarfile==1.1.1
      - bayesicfitting==3.2.1
      - beautifulsoup4==4.12.3
      - billiard==4.2.0
      - bokeh==3.4.1
      - celery==5.4.0
      - click==8.1.7
      - click-didyoumean==0.3.1
      - click-plugins==1.1.1
      - click-repl==0.3.0
      - contourpy==1.2.1
      - crds==11.17.22
      - cryptography==42.0.7
      - cycler==0.12.1
      - django==5.0.6
      - docutils==0.21.2
      - drizzle==1.15.1
      - et-xmlfile==1.1.0
      - filelock==3.14.0
      - fonttools==4.51.0
      - future==1.0.0
      - greenlet==3.0.3
      - gunicorn==22.0.0
      - gwcs==0.21.0
      - h11==0.14.0
      - healpy==1.16.6
      - html5lib==1.1
      - imageio==2.34.1
      - imagesize==1.4.1
      - importlib-metadata==7.1.0
      - inflection==0.5.1
      - jaraco-classes==3.4.0
      - jaraco-context==5.3.0
      - jaraco-functools==4.0.1
      - jeepney==0.8.0
      - jinja2==3.1.4
      - jmespath==1.0.1
      - jsonschema==4.22.0
      - jsonschema-specifications==2023.12.1
      - jwql==0.1.dev1+g7b90155
      - jwst==1.14.0
      - jwst-backgrounds==1.2.0
      - jwst-reffiles==0.0.0
      - keyring==25.2.1
      - kiwisolver==1.4.5
      - kombu==5.3.7
      - lazy-loader==0.4
      - lxml==5.2.2
      - markupsafe==2.1.5
      - matplotlib==3.8.4
      - more-itertools==10.2.0
      - networkx==3.3
      - numpy==1.26.4
      - numpydoc==1.7.0
      - opencv-python-headless==4.9.0.80
      - openpyxl==3.1.2
      - outcome==1.3.0.post0
      - pandas==2.2.2
      - parsley==1.3
      - photutils==1.12.0
      - pillow==10.3.0
      - poppy==1.1.1
      - prompt-toolkit==3.0.43
      - psutil==5.9.8
      - psycopg2-binary==2.9.9
      - pyerfa==2.0.1.4
      - pygments==2.18.0
      - pyparsing==3.1.2
      - pysiaf==0.22.0
      - python-dateutil==2.9.0.post0
      - pytz==2024.1
      - pyvo==1.5.1
      - pyyaml==6.0.1
      - redis==5.0.4
      - referencing==0.35.1
      - rpds-py==0.18.1
      - scikit-image==0.23.2
      - scipy==1.13.0
      - secretstorage==3.3.3
      - selenium==4.20.0
      - semantic-version==2.10.0
      - six==1.16.0
      - sniffio==1.3.1
      - snowballstemmer==2.2.0
      - sortedcontainers==2.4.0
      - soupsieve==2.5
      - spherical-geometry==1.3.1
      - sphinx==7.3.7
      - sphinxcontrib-applehelp==1.0.8
      - sphinxcontrib-devhelp==1.0.6
      - sphinxcontrib-htmlhelp==2.0.5
      - sphinxcontrib-jsmath==1.0.1
      - sphinxcontrib-qthelp==1.0.7
      - sphinxcontrib-serializinghtml==1.1.10
      - sqlalchemy==2.0.30
      - sqlparse==0.5.0
      - stcal==1.7.0
      - stdatamodels==1.10.1
      - stpipe==0.5.2
      - stsci-image==2.3.7
      - stsci-imagestats==1.6.3
      - stsci-stimage==0.2.8
      - synphot==1.4.0
      - tabulate==0.9.0
      - tifffile==2024.5.10
      - tornado==6.4
      - trio==0.25.0
      - trio-websocket==0.11.1
      - tweakwcs==0.8.7
      - typing-extensions==4.11.0
      - tzdata==2024.1
      - vine==5.1.0
      - wcwidth==0.2.13
      - webencodings==0.5.1
      - wiimatch==0.3.2
      - wsproto==1.2.0
      - wtforms==3.1.2
      - xyzservices==2024.4.0
      - zipp==3.18.1