Closed Patronics closed 4 years ago
Thanks @Patronics for reporting. We've actually bumped panoptes-utils
(and POCS
) up to python 3.8 recently and I'm guessing that is the problem.
However, yes, we are working on an install script that should set up everything for you, unfortunately it's been a bit slower in coming than my original prediction. However, we have had people testing it recently so it would be great if you would test that method.
I need to merge https://github.com/panoptes/POCS/pull/978, which will fix one part of the script, then it should be good to test. Should be available after this holiday weekend.
Hi @Patronics , just as an update, I will be merging https://github.com/panoptes/POCS/pull/980 today and after that it would probably be a good time to test the install script.
I tried to install the latest version from git (in the development branch) using setup.py with python 3.8, but seem to be hitting a versioning conflict, where something in panoptes-utils requires pillow versions < 7, but pillow versions >=7.1.0 is required by 'bokeh', so the installation fails. How can I resolve this "pillow fight"?
panoptes@panoptes-desktop:/var/panoptes/panoptes-utils$ sudo python3.8 setup.py install
running install
running bdist_egg
running egg_info
writing src/panoptes_utils.egg-info/PKG-INFO
writing dependency_links to src/panoptes_utils.egg-info/dependency_links.txt
writing entry points to src/panoptes_utils.egg-info/entry_points.txt
writing requirements to src/panoptes_utils.egg-info/requires.txt
writing top-level names to src/panoptes_utils.egg-info/top_level.txt
writing manifest file 'src/panoptes_utils.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
creating build/bdist.linux-x86_64/egg
creating build/bdist.linux-x86_64/egg/panoptes
creating build/bdist.linux-x86_64/egg/panoptes/utils
copying build/lib/panoptes/utils/theskyx.py -> build/bdist.linux-x86_64/egg/panoptes/utils
creating build/bdist.linux-x86_64/egg/panoptes/utils/data
copying build/lib/panoptes/utils/data/metadata.py -> build/bdist.linux-x86_64/egg/panoptes/utils/data
copying build/lib/panoptes/utils/data/__init__.py -> build/bdist.linux-x86_64/egg/panoptes/utils/data
copying build/lib/panoptes/utils/horizon.py -> build/bdist.linux-x86_64/egg/panoptes/utils
creating build/bdist.linux-x86_64/egg/panoptes/utils/config
copying build/lib/panoptes/utils/config/cli.py -> build/bdist.linux-x86_64/egg/panoptes/utils/config
copying build/lib/panoptes/utils/config/__init__.py -> build/bdist.linux-x86_64/egg/panoptes/utils/config
copying build/lib/panoptes/utils/config/helpers.py -> build/bdist.linux-x86_64/egg/panoptes/utils/config
copying build/lib/panoptes/utils/config/server.py -> build/bdist.linux-x86_64/egg/panoptes/utils/config
copying build/lib/panoptes/utils/config/client.py -> build/bdist.linux-x86_64/egg/panoptes/utils/config
creating build/bdist.linux-x86_64/egg/panoptes/utils/social
copying build/lib/panoptes/utils/social/__init__.py -> build/bdist.linux-x86_64/egg/panoptes/utils/social
copying build/lib/panoptes/utils/social/twitter.py -> build/bdist.linux-x86_64/egg/panoptes/utils/social
copying build/lib/panoptes/utils/social/slack.py -> build/bdist.linux-x86_64/egg/panoptes/utils/social
creating build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers
copying build/lib/panoptes/utils/serial_handlers/protocol_buffers.py -> build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers
copying build/lib/panoptes/utils/serial_handlers/protocol_arduinosimulator.py -> build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers
copying build/lib/panoptes/utils/serial_handlers/__init__.py -> build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers
copying build/lib/panoptes/utils/serial_handlers/protocol_no_op.py -> build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers
copying build/lib/panoptes/utils/serial_handlers/protocol_hooked.py -> build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers
copying build/lib/panoptes/utils/serializers.py -> build/bdist.linux-x86_64/egg/panoptes/utils
creating build/bdist.linux-x86_64/egg/panoptes/utils/images
copying build/lib/panoptes/utils/images/fits.py -> build/bdist.linux-x86_64/egg/panoptes/utils/images
copying build/lib/panoptes/utils/images/focus.py -> build/bdist.linux-x86_64/egg/panoptes/utils/images
copying build/lib/panoptes/utils/images/plot.py -> build/bdist.linux-x86_64/egg/panoptes/utils/images
copying build/lib/panoptes/utils/images/__init__.py -> build/bdist.linux-x86_64/egg/panoptes/utils/images
copying build/lib/panoptes/utils/images/bayer.py -> build/bdist.linux-x86_64/egg/panoptes/utils/images
copying build/lib/panoptes/utils/images/cr2.py -> build/bdist.linux-x86_64/egg/panoptes/utils/images
copying build/lib/panoptes/utils/time.py -> build/bdist.linux-x86_64/egg/panoptes/utils
copying build/lib/panoptes/utils/__init__.py -> build/bdist.linux-x86_64/egg/panoptes/utils
copying build/lib/panoptes/utils/rs232.py -> build/bdist.linux-x86_64/egg/panoptes/utils
copying build/lib/panoptes/utils/error.py -> build/bdist.linux-x86_64/egg/panoptes/utils
copying build/lib/panoptes/utils/stars.py -> build/bdist.linux-x86_64/egg/panoptes/utils
copying build/lib/panoptes/utils/logging.py -> build/bdist.linux-x86_64/egg/panoptes/utils
copying build/lib/panoptes/utils/library.py -> build/bdist.linux-x86_64/egg/panoptes/utils
copying build/lib/panoptes/utils/utils.py -> build/bdist.linux-x86_64/egg/panoptes/utils
creating build/bdist.linux-x86_64/egg/panoptes/utils/database
copying build/lib/panoptes/utils/database/file.py -> build/bdist.linux-x86_64/egg/panoptes/utils/database
copying build/lib/panoptes/utils/database/base.py -> build/bdist.linux-x86_64/egg/panoptes/utils/database
copying build/lib/panoptes/utils/database/__init__.py -> build/bdist.linux-x86_64/egg/panoptes/utils/database
copying build/lib/panoptes/utils/database/memory.py -> build/bdist.linux-x86_64/egg/panoptes/utils/database
copying build/lib/panoptes/__init__.py -> build/bdist.linux-x86_64/egg/panoptes
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/theskyx.py to theskyx.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/data/metadata.py to metadata.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/data/__init__.py to __init__.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/horizon.py to horizon.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/config/cli.py to cli.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/config/__init__.py to __init__.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/config/helpers.py to helpers.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/config/server.py to server.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/config/client.py to client.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/social/__init__.py to __init__.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/social/twitter.py to twitter.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/social/slack.py to slack.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers/protocol_buffers.py to protocol_buffers.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers/protocol_arduinosimulator.py to protocol_arduinosimulator.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers/__init__.py to __init__.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers/protocol_no_op.py to protocol_no_op.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/serial_handlers/protocol_hooked.py to protocol_hooked.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/serializers.py to serializers.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/images/fits.py to fits.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/images/focus.py to focus.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/images/plot.py to plot.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/images/__init__.py to __init__.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/images/bayer.py to bayer.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/images/cr2.py to cr2.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/time.py to time.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/__init__.py to __init__.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/rs232.py to rs232.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/error.py to error.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/stars.py to stars.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/logging.py to logging.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/library.py to library.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/utils.py to utils.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/database/file.py to file.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/database/base.py to base.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/database/__init__.py to __init__.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/utils/database/memory.py to memory.cpython-38.pyc
byte-compiling build/bdist.linux-x86_64/egg/panoptes/__init__.py to __init__.cpython-38.pyc
creating build/bdist.linux-x86_64/egg/EGG-INFO
installing scripts to build/bdist.linux-x86_64/egg/EGG-INFO/scripts
running install_scripts
running build_scripts
creating build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.8/cr2-to-jpg -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/cr2-to-jpg to 775
copying src/panoptes_utils.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/panoptes_utils.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/panoptes_utils.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/panoptes_utils.egg-info/entry_points.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/panoptes_utils.egg-info/not-zip-safe -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/panoptes_utils.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying src/panoptes_utils.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
creating 'dist/panoptes_utils-0.2.23.dev0-py3.8.egg' and adding 'build/bdist.linux-x86_64/egg' to it
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
Processing panoptes_utils-0.2.23.dev0-py3.8.egg
removing '/usr/local/lib/python3.8/dist-packages/panoptes_utils-0.2.23.dev0-py3.8.egg' (and everything under it)
creating /usr/local/lib/python3.8/dist-packages/panoptes_utils-0.2.23.dev0-py3.8.egg
Extracting panoptes_utils-0.2.23.dev0-py3.8.egg to /usr/local/lib/python3.8/dist-packages
panoptes-utils 0.2.23.dev0 is already the active version in easy-install.pth
Installing cr2-to-jpg script to /usr/local/bin
Installing panoptes-config-server script to /usr/local/bin
Installed /usr/local/lib/python3.8/dist-packages/panoptes_utils-0.2.23.dev0-py3.8.egg
Processing dependencies for panoptes-utils==0.2.23.dev0
error: Pillow 6.2.2 is installed but pillow>=7.1.0 is required by {'bokeh'}
Hi @Patronics, thanks for reporting this back. #228 is open right now, with the solution coming in #227, hopefully later today.
Can you remind me again what hardware you are trying to install this on?
How can I resolve this "pillow fight"?
+1 for clever. :rofl:
Thanks, our hardware is sort of a Frankenstein of the two generations of Panoptes units, running in Ubuntu on a NUC.
Attempting to run
pip install panoptes-utils
fails due to some missing dependencies (that can be installed manually through pip to resolve, but then it fails with the errorComplete output from command python setup.py egg_info: Traceback (most recent call last): File "<string>", line 1, in <module> File "/tmp/pip-build-hWEZb0/panoptes-utils/setup.py", line 12, in <module> from panoptes_utils.version import __version__ File "panoptes_utils/__init__.py", line 348, in <module> class DelaySigTerm(contextlib.ContextDecorator): AttributeError: 'module' object has no attribute 'ContextDecorator'
This is on Ubuntu on the PAN14 device (intel NUC based). Also is panoptes-utils supposed to have been preinstalled with POCS? there doesn't seem to be any documentation on if you're supposed to install it separately or not?
`panoptes@panoptes-desktop:/var/panoptes/panoptes-utils$ pip install "panoptes-utils" Collecting panoptes-utils Downloading https://files.pythonhosted.org/packages/a6/c3/e9a09d681626cd8e4e105b93dbb36380260bbfd1d1b41a04c15c394644f0/panoptes-utils-0.0.3.tar.gz (51kB) 100% |████████████████████████████████| 51kB 799kB/s Complete output from command python setup.py egg_info: Traceback (most recent call last): File "", line 1, in
File "/tmp/pip-build-sPT3Bb/panoptes-utils/setup.py", line 9, in
from configparser import ConfigParser
ImportError: No module named configparser
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-sPT3Bb/panoptes-utils/ [1]+ Done gedit README.md panoptes@panoptes-desktop:/var/panoptes/panoptes-utils$ cd ~ panoptes@panoptes-desktop:~$ pip install "panoptes-utils" Collecting panoptes-utils Using cached https://files.pythonhosted.org/packages/a6/c3/e9a09d681626cd8e4e105b93dbb36380260bbfd1d1b41a04c15c394644f0/panoptes-utils-0.0.3.tar.gz Complete output from command python setup.py egg_info: Traceback (most recent call last): File "", line 1, in
File "/tmp/pip-build-PD3glQ/panoptes-utils/setup.py", line 9, in
from configparser import ConfigParser
ImportError: No module named configparser
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-PD3glQ/panoptes-utils/ panoptes@panoptes-desktop:~$ pip install "configparser" Collecting configparser Downloading https://files.pythonhosted.org/packages/7a/2a/95ed0501cf5d8709490b1d3a3f9b5cf340da6c433f896bbe9ce08dbe6785/configparser-4.0.2-py2.py3-none-any.whl Installing collected packages: configparser Successfully installed configparser-4.0.2 panoptes@panoptes-desktop:~$ pip install "panoptes-utils" Collecting panoptes-utils Using cached https://files.pythonhosted.org/packages/a6/c3/e9a09d681626cd8e4e105b93dbb36380260bbfd1d1b41a04c15c394644f0/panoptes-utils-0.0.3.tar.gz Complete output from command python setup.py egg_info: Traceback (most recent call last): File "", line 1, in
File "/tmp/pip-build-uS7i6o/panoptes-utils/setup.py", line 12, in
from panoptes_utils.version import version
File "panoptes_utils/init.py", line 8, in
from astropy import units as u
ImportError: No module named astropy
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-uS7i6o/panoptes-utils/ panoptes@panoptes-desktop:~$ pip install "astropy" Collecting astropy Downloading https://files.pythonhosted.org/packages/57/9d/69e74ec2eb8f6a2ac7c687ecac2703aabe3324dfafb83081780a96ce71ce/astropy-2.0.16-cp27-cp27mu-manylinux1_x86_64.whl (6.1MB) 100% |████████████████████████████████| 6.1MB 133kB/s Collecting pytest<3.7,>=2.8 (from astropy) Downloading https://files.pythonhosted.org/packages/d8/e9/73246a565c34c5f203dd78bc2382e0e93aa7a249cdaeba709099eb1bc701/pytest-3.6.4-py2.py3-none-any.whl (196kB) 100% |████████████████████████████████| 204kB 1.5MB/s Collecting numpy>=1.9.0 (from astropy) Using cached https://files.pythonhosted.org/packages/3a/5f/47e578b3ae79e2624e205445ab77a1848acdaa2929a00eeef6b16eaaeb20/numpy-1.16.6-cp27-cp27mu-manylinux1_x86_64.whl Collecting setuptools (from pytest<3.7,>=2.8->astropy) Downloading https://files.pythonhosted.org/packages/e1/b7/182161210a13158cd3ccc41ee19aadef54496b74f2817cc147006ec932b4/setuptools-44.1.1-py2.py3-none-any.whl (583kB) 100% |████████████████████████████████| 583kB 1.1MB/s Collecting py>=1.5.0 (from pytest<3.7,>=2.8->astropy) Downloading https://files.pythonhosted.org/packages/68/0f/41a43535b52a81e4f29e420a151032d26f08b62206840c48d14b70e53376/py-1.9.0-py2.py3-none-any.whl (99kB) 100% |████████████████████████████████| 102kB 2.0MB/s Collecting more-itertools>=4.0.0 (from pytest<3.7,>=2.8->astropy) Downloading https://files.pythonhosted.org/packages/2f/9d/dcfe59e213093695f108508af1214cf9cd95cc5489e46877ec5cb56369e5/more_itertools-5.0.0-py2-none-any.whl (52kB) 100% |████████████████████████████████| 61kB 2.4MB/s Collecting funcsigs; python_version < "3.0" (from pytest<3.7,>=2.8->astropy) Downloading https://files.pythonhosted.org/packages/69/cb/f5be453359271714c01b9bd06126eaf2e368f1fddfff30818754b5ac2328/funcsigs-1.0.2-py2.py3-none-any.whl Collecting six>=1.10.0 (from pytest<3.7,>=2.8->astropy) Using cached https://files.pythonhosted.org/packages/ee/ff/48bde5c0f013094d729fe4b0316ba2a24774b3ff1c52d924a8a4cb04078a/six-1.15.0-py2.py3-none-any.whl Collecting attrs>=17.4.0 (from pytest<3.7,>=2.8->astropy) Using cached https://files.pythonhosted.org/packages/a2/db/4313ab3be961f7a763066401fb77f7748373b6094076ae2bda2806988af6/attrs-19.3.0-py2.py3-none-any.whl Collecting atomicwrites>=1.0 (from pytest<3.7,>=2.8->astropy) Downloading https://files.pythonhosted.org/packages/2c/a0/da5f49008ec6e9a658dbf5d7310a4debd397bce0b4db03cf8a410066bb87/atomicwrites-1.4.0-py2.py3-none-any.whl Collecting pluggy<0.8,>=0.5 (from pytest<3.7,>=2.8->astropy) Downloading https://files.pythonhosted.org/packages/f5/f1/5a93c118663896d83f7bcbfb7f657ce1d0c0d617e6b4a443a53abcc658ca/pluggy-0.7.1-py2.py3-none-any.whl Installing collected packages: setuptools, py, six, more-itertools, funcsigs, attrs, atomicwrites, pluggy, pytest, numpy, astropy Successfully installed astropy-2.0.16 atomicwrites-1.4.0 attrs-19.3.0 funcsigs-1.0.2 more-itertools-5.0.0 numpy-1.16.6 pluggy-0.7.1 py-1.9.0 pytest-3.6.4 setuptools-44.1.1 six-1.15.0 panoptes@panoptes-desktop:~$ pip install "panoptes-utils" Collecting panoptes-utils Using cached https://files.pythonhosted.org/packages/a6/c3/e9a09d681626cd8e4e105b93dbb36380260bbfd1d1b41a04c15c394644f0/panoptes-utils-0.0.3.tar.gz Complete output from command python setup.py egg_info: Traceback (most recent call last): File "", line 1, in
File "/tmp/pip-build-hWEZb0/panoptes-utils/setup.py", line 12, in
from panoptes_utils.version import version
File "panoptes_utils/init.py", line 348, in
class DelaySigTerm(contextlib.ContextDecorator):
AttributeError: 'module' object has no attribute 'ContextDecorator'
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-hWEZb0/panoptes-utils/`