ejeschke / ginga

The Ginga astronomical FITS file viewer
BSD 3-Clause "New" or "Revised" License
121 stars 77 forks source link

Bump installation requirements for certain packages #1059

Closed ejeschke closed 1 year ago

ejeschke commented 1 year ago
ejeschke commented 1 year ago

@pllim, a simple PR to bump version requirements to package dependencies. Any idea why the CI can't find astropy >= 5.0 ?

ejeschke commented 1 year ago

Need to bump the version of conda in the CI?

pllim commented 1 year ago

See https://github.com/naojsoft/ginga/pull/10 for a potential fix to "older_deps" job. Not sure about conda but I also don't understand your changes in "extras_require". What is the intention there?

pllim commented 1 year ago

I cannot find documentation of $CONDA in GitHub Actions. I think you added that? Do you remember where that came from?

pllim commented 1 year ago

Why is conda trying to install itself? 🤪

ResolvePackageNotFound: 
  - conda==23.5.2
ejeschke commented 1 year ago

I cannot find documentation of $CONDA in GitHub Actions. I think you added that? Do you remember where that came from?

I didn't add that. Sad to day, perhaps, but I've not had much hand in setting up the CI for this. Pretty sure you did most of that. But could it have been added by Github on one of their transitions?

ejeschke commented 1 year ago

Is it trying to install a new conda because the versions of some of the packages cannot be found in whatever default conda is available?

pllim commented 1 year ago

Oh wait, it was Tim: https://github.com/ejeschke/ginga/pull/872#issuecomment-673783381

pllim commented 1 year ago

Okay, I think I figured it out. If you merge https://github.com/naojsoft/ginga/pull/10 , this PR should be green.

ejeschke commented 1 year ago

I also don't understand your changes in "extras_require". What is the intention there?

So qtpy is already required, so move it out of the extras_require. Then, Ginga currently supports pyqt5/6 and pyside2/6, both of which are wrappers for qt and made usable by qtpy. So if one wants to install ginga with pyside6, you should be able to do:

$ pip install ginga[pyside6]

Finally, the web versions of ginga work with several backend renderers, including pycairo, pil, opencv and aggdraw. Of these, pycairo gives the full set of capabilities for graphics overlays, plus it is a well supported package and is in conda and pypi. aggdraw is an older package whose original author(s) have moved on and it doesn't doesn't support certain things like dashed lines. Ginga will keep supporting it for now, but I expect to remove support for it eventually. pillow is a required package and is usable for web widgets, but cairo is the better renderer and the web widget will use it if it is available.

ejeschke commented 1 year ago

Thanks for the help, @pllim!