pyobs-qhyccd 2.0.0.dev11__tar.gz → 2.0.0.dev12__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/.github/dependabot.yml +5 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/.github/workflows/pypi.yml +1 -1
- pyobs_qhyccd-2.0.0.dev12/.github/workflows/pyrefly.yml +26 -0
- pyobs_qhyccd-2.0.0.dev12/.github/workflows/pytest.yml +28 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/PKG-INFO +1 -1
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/pyobs_qhyccd/qhyccdcamera.py +7 -6
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/pyproject.toml +7 -1
- pyobs_qhyccd-2.0.0.dev12/tests/test_import.py +23 -0
- pyobs_qhyccd-2.0.0.dev12/tests/test_qhyccdcamera.py +129 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/uv.lock +61 -1
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/.github/workflows/ruff.yml +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/.pre-commit-config.yaml +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/.readthedocs.yml +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/CMakeLists.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/README.md +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/docs/Makefile +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/docs/make.bat +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/docs/requirements.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/docs/source/_static/pyobs.gif +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/docs/source/conf.py +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/docs/source/index.rst +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/distclean.sh +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/etc/udev/rules.d/85-qhyccd.rules +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/install.sh +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/IC16200A.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/IC16803.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/IC8300.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/IC90A.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/IMG0H.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/IMG2P.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/IMG2S.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/IMG50.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/Origin678C.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/POLEMASTER.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY0204.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY09000A.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY10.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY10768.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY11.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY12.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY1253.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY128.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY128PRO.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY15.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY16.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY16000.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY160002AD.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY16200A.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY163.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY165.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY168.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY16803A.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY174.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY178.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY183.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY183A.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY1920.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY2.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY20.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY2020.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY21.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY22.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY224.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY23.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY247.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY268.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY27.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY28.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY29.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY290.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY294.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY294PRO.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY2E.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY2PRO.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY342.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY342PRO.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY367.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY367PRO.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY4040.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY4040PRO.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY410.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY411.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY411ERIS.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY411_1.3.3.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY42.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY42PRO.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY432.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY461.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY487.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY530.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY533.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY550.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY585.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5II.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III174.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III178.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III185.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III200.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III224.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III290.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III334.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III415.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III462.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III482.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III485.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III568.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III585.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III678.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5III715.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY5LOADER.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY6.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY600-9267-1203.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY600.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY600ERIS-12-qxx.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY6060.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY6060PRO.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY695A.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY7.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY8.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY811.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY814A.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY8L.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY8M.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY8PRO.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY90A.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY9701.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY990.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY991.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY992.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/QHY9S.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/miniCam5.HEX +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/firmware/qhy/miniCam8.img +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/lib/udev/rules.d/85-qhyccd.rules +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/sbin/fxload +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/uninstall.sh +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/cmake_modules/FindOpenCV.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/cmake_modules/FindUSB-1.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/cmake_modules/FindUSB-ARM.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/doc/HowTo_QHYCCD_SDK_CrossPlatform.pdf +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/COPYING +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/Makefile +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/README.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/a3load.hex +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/ezusb.c +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/ezusb.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/fxload +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/fxload.8 +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/fxload.spec +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/fx3load/main.c +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/include/config.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/include/qhyccd.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/include/qhyccdcamdef.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/include/qhyccderr.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/include/qhyccdstruct.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/lib/libqhyccd.a +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/lib/libqhyccd.so +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/lib/libqhyccd.so.20 +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/lib/libqhyccd.so.25.9.29.10 +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/riffa_linux_driver/Makefile +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/riffa_linux_driver/README.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/riffa_linux_driver/circ_queue.c +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/riffa_linux_driver/circ_queue.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/riffa_linux_driver/riffa_driver.c +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/riffa_linux_driver/riffa_driver.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/DownloadFirmware/.svn/entries +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/DownloadFirmware/.svn/format +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/DownloadFirmware/.svn/text-base/Makefile.svn-base +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/DownloadFirmware/.svn/text-base/downfirmware.cpp.svn-base +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/DownloadFirmware/Makefile +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/DownloadFirmware/downfirmware.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode/.svn/entries +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode/.svn/format +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode/.svn/text-base/LiveFrameSample.cpp.svn-base +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode/.svn/text-base/Makefile.svn-base +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode/LiveFrameSample +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode/LiveFrameSample.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode/LiveFrameSample.o +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode/Makefile +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode/qhyccd.ini +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode_PCIE_Raw_Riffa/LiveFrameSample.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode_PCIE_Raw_Riffa/Makefile +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/LiveFrameMode_PCIE_Raw_Riffa/qhyccd.ini +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/SingleFrameMode/.svn/entries +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/SingleFrameMode/.svn/format +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/SingleFrameMode/.svn/text-base/Makefile.svn-base +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/SingleFrameMode/.svn/text-base/SingleFrameMode.cpp.svn-base +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/SingleFrameMode/Makefile +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/SingleFrameMode/SingleFrameMode +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/SingleFrameMode/SingleFrameMode.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/SingleFrameMode/SingleFrameMode.o +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/SingleFrameMode/qhyccd.ini +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/cmake/FindLibQHYCCD.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_base/CMakeLists.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_base/main.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_cfw/CMakeLists.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_cfw/build/qhyccd.ini +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_cfw/main.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/CMakeLists.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/CMakeCommon.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/CMakeParseArguments.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindCFITSIO.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindDC1394.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindFFTW3.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindGMock.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindGSL.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindINDI.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindJPEG.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindLibXISF.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindLibev.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindNova.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindOggTheora.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindOpenAL.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindPackageHandleStandardArgs.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindPackageMessage.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindRTLSDR.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindUSB1.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/FindVorbis.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/cmake_modules/UnityBuild.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/main.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_client/main.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/CMakeLists.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/CMakeCommon.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/CMakeParseArguments.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindCFITSIO.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindDC1394.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindFFTW3.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindGMock.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindGSL.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindINDI.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindJPEG.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindLibXISF.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindLibev.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindNova.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindOggTheora.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindOpenAL.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindPackageHandleStandardArgs.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindPackageMessage.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindRTLSDR.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindUSB1.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/FindVorbis.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/cmake_modules/UnityBuild.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/main.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_indi_focus/main.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/CMakeLists.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/FindLibQHYCCD.cmake +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/README.md +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/CyAPI.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/CyUSB30_def.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/config.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/dllqhyccd.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/dllqhyccd.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/qhyccd.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/qhyccdcamdef.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/qhyccderr.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/qhyccdinternal.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/include/qhyccdstruct.h +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/lib/qhyccd.lib +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_multicam_opencv/main.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_opencv/CMakeLists.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_live_opencv/main.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_single_opencv/CMakeLists.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/cmake_demo/test_single_opencv/main.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/CMakeLists.txt +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/Capture.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/ControlCFW.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/ControlCool.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/ForceStop.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/GetCameraStatus.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/GetHistJPG.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/GetLastImageFIT.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/GetLastImageJPG.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/GetTemperature.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/LiveFrameSample.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/OSXDownloadFirmware2Camera.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/README +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/SetTemperature.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/testapp/common/SingleFrameSample.cpp +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/local/udev/85-qhyccd.rules +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/lib/usr/share/usb/a3load.hex +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/pyobs_qhyccd/__init__.py +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/pyobs_qhyccd/gui.py +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/pyobs_qhyccd/libqhyccd.pxd +0 -0
- {pyobs_qhyccd-2.0.0.dev11 → pyobs_qhyccd-2.0.0.dev12}/pyobs_qhyccd/qhyccddriver.pyx +0 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
name: pyrefly
|
|
2
|
+
on: push
|
|
3
|
+
|
|
4
|
+
jobs:
|
|
5
|
+
pyrefly:
|
|
6
|
+
runs-on: ubuntu-latest
|
|
7
|
+
timeout-minutes: 10
|
|
8
|
+
|
|
9
|
+
steps:
|
|
10
|
+
- name: Check out repository code
|
|
11
|
+
uses: actions/checkout@v4
|
|
12
|
+
|
|
13
|
+
- name: Set up Python
|
|
14
|
+
uses: astral-sh/setup-uv@v5
|
|
15
|
+
with:
|
|
16
|
+
enable-cache: true
|
|
17
|
+
python-version: "3.13"
|
|
18
|
+
|
|
19
|
+
- name: Install system dependencies
|
|
20
|
+
run: sudo apt-get install -y libusb-1.0-0-dev libcfitsio-dev
|
|
21
|
+
|
|
22
|
+
- name: Install packages
|
|
23
|
+
run: uv sync --all-extras --dev
|
|
24
|
+
|
|
25
|
+
- name: Run pyrefly
|
|
26
|
+
run: uv run pyrefly check
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
name: PyTest
|
|
2
|
+
on: push
|
|
3
|
+
|
|
4
|
+
jobs:
|
|
5
|
+
test:
|
|
6
|
+
runs-on: ubuntu-latest
|
|
7
|
+
timeout-minutes: 10
|
|
8
|
+
|
|
9
|
+
steps:
|
|
10
|
+
- name: Check out repository code
|
|
11
|
+
uses: actions/checkout@v4
|
|
12
|
+
|
|
13
|
+
- name: Set up Python
|
|
14
|
+
uses: astral-sh/setup-uv@v5
|
|
15
|
+
with:
|
|
16
|
+
enable-cache: true
|
|
17
|
+
python-version: "3.13"
|
|
18
|
+
|
|
19
|
+
- name: Install system dependencies
|
|
20
|
+
run: sudo apt-get install -y libusb-1.0-0-dev libcfitsio-dev
|
|
21
|
+
|
|
22
|
+
- name: Install packages
|
|
23
|
+
run: uv sync --all-extras --dev
|
|
24
|
+
|
|
25
|
+
- name: Run tests
|
|
26
|
+
run: uv run pytest tests
|
|
27
|
+
env:
|
|
28
|
+
CI: true
|
|
@@ -10,6 +10,7 @@ from typing import Any, TypeVar, cast
|
|
|
10
10
|
import numpy as np
|
|
11
11
|
from pyobs.images import Image
|
|
12
12
|
from pyobs.interfaces import (
|
|
13
|
+
Binning,
|
|
13
14
|
BinningCapabilities,
|
|
14
15
|
BinningState,
|
|
15
16
|
CoolingState,
|
|
@@ -198,21 +199,21 @@ class QHYCCDCamera(BaseCamera, ICamera, IWindow, IBinning, IAbortable, ICooling,
|
|
|
198
199
|
|
|
199
200
|
await self._run_blocking_or_raise(_set_custom_params)
|
|
200
201
|
|
|
201
|
-
async def _available_binnings(self) -> list[
|
|
202
|
+
async def _available_binnings(self) -> list[Binning]:
|
|
202
203
|
if self._driver is None:
|
|
203
204
|
return []
|
|
204
205
|
driver = self._driver
|
|
205
206
|
|
|
206
|
-
def _get() -> list[
|
|
207
|
+
def _get() -> list[Binning]:
|
|
207
208
|
binnings = []
|
|
208
209
|
if driver.is_control_available(Control.CAM_BIN1X1MODE):
|
|
209
|
-
binnings.append(
|
|
210
|
+
binnings.append(Binning(x=1, y=1))
|
|
210
211
|
if driver.is_control_available(Control.CAM_BIN2X2MODE):
|
|
211
|
-
binnings.append(
|
|
212
|
+
binnings.append(Binning(x=2, y=2))
|
|
212
213
|
if driver.is_control_available(Control.CAM_BIN3X3MODE):
|
|
213
|
-
binnings.append(
|
|
214
|
+
binnings.append(Binning(x=3, y=3))
|
|
214
215
|
if driver.is_control_available(Control.CAM_BIN4X4MODE):
|
|
215
|
-
binnings.append(
|
|
216
|
+
binnings.append(Binning(x=4, y=4))
|
|
216
217
|
return binnings
|
|
217
218
|
|
|
218
219
|
return await self._run_blocking_or_raise(_get)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "pyobs-qhyccd"
|
|
3
|
-
version = "2.0.0.
|
|
3
|
+
version = "2.0.0.dev12"
|
|
4
4
|
description = "pyobs module for QHYCCD cameras"
|
|
5
5
|
authors = [{ name = "Tim-Oliver Husser", email = "thusser@uni-goettingen.de" }]
|
|
6
6
|
requires-python = ">=3.11"
|
|
@@ -24,6 +24,8 @@ dev = [
|
|
|
24
24
|
"pyrefly>=1.1.1",
|
|
25
25
|
"pre-commit>=4.2.0,<5",
|
|
26
26
|
"cython>=3.0.0,<4",
|
|
27
|
+
"pytest>=8.0.0",
|
|
28
|
+
"pytest-asyncio>=0.24.0",
|
|
27
29
|
]
|
|
28
30
|
|
|
29
31
|
[tool.setuptools]
|
|
@@ -61,3 +63,7 @@ select = ["E", "F", "W", "I", "UP", "G"]
|
|
|
61
63
|
|
|
62
64
|
[tool.pyrefly]
|
|
63
65
|
python-version = "3.11"
|
|
66
|
+
project-excludes = ["pyobs_qhyccd/gui.py"]
|
|
67
|
+
|
|
68
|
+
[tool.pytest.ini_options]
|
|
69
|
+
asyncio_mode = "strict"
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"""Smoke tests: import the driver and instantiate it without hardware, asserting the
|
|
2
|
+
interfaces it claims.
|
|
3
|
+
|
|
4
|
+
The Cython extension (qhyccddriver) links the vendored QHYCCD static library during
|
|
5
|
+
install, but device enumeration/opening only happens inside open(), so instantiation
|
|
6
|
+
is safe with no QHYCCD hardware attached.
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from pyobs.interfaces import IAbortable, IBinning, ICamera, ICooling, IGain, IWindow
|
|
10
|
+
from pyobs.modules import Module
|
|
11
|
+
|
|
12
|
+
from pyobs_qhyccd import QHYCCDCamera
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def test_instantiate_camera() -> None:
|
|
16
|
+
camera = QHYCCDCamera()
|
|
17
|
+
assert isinstance(camera, Module)
|
|
18
|
+
assert isinstance(camera, ICamera)
|
|
19
|
+
assert isinstance(camera, IWindow)
|
|
20
|
+
assert isinstance(camera, IBinning)
|
|
21
|
+
assert isinstance(camera, ICooling)
|
|
22
|
+
assert isinstance(camera, IGain)
|
|
23
|
+
assert isinstance(camera, IAbortable)
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"""Unit tests for the non-hardware logic in QHYCCDCamera: constructor defaults, the
|
|
2
|
+
window/binning setters, the cooling-control guard, and the _run_blocking wrappers.
|
|
3
|
+
|
|
4
|
+
Hardware I/O (opening, exposing, reading out) is out of scope here.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
import asyncio
|
|
8
|
+
import threading
|
|
9
|
+
from unittest.mock import AsyncMock
|
|
10
|
+
|
|
11
|
+
import pytest
|
|
12
|
+
from pyobs.interfaces import IBinning, ICooling, IWindow
|
|
13
|
+
|
|
14
|
+
from pyobs_qhyccd import QHYCCDCamera
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def test_constructor_defaults() -> None:
|
|
18
|
+
camera = QHYCCDCamera()
|
|
19
|
+
assert camera._setpoint == -10
|
|
20
|
+
assert camera._window == (0, 0, 0, 0)
|
|
21
|
+
assert camera._binning == (1, 1)
|
|
22
|
+
assert camera._effective_area == (0, 0, 0, 0)
|
|
23
|
+
assert camera._cooling_step == 1.0
|
|
24
|
+
assert camera._cooling_wait == 60.0
|
|
25
|
+
assert camera._driver is None
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
@pytest.mark.asyncio
|
|
29
|
+
async def test_set_window() -> None:
|
|
30
|
+
camera = QHYCCDCamera()
|
|
31
|
+
camera.comm.set_state = AsyncMock() # type: ignore[method-assign]
|
|
32
|
+
|
|
33
|
+
await camera.set_window(10, 20, 100, 200)
|
|
34
|
+
|
|
35
|
+
assert camera._window == (10, 20, 100, 200)
|
|
36
|
+
assert camera.comm.set_state.await_args is not None
|
|
37
|
+
interface, state = camera.comm.set_state.await_args.args
|
|
38
|
+
assert interface is IWindow
|
|
39
|
+
assert (state.x, state.y, state.width, state.height) == (10, 20, 100, 200)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
@pytest.mark.asyncio
|
|
43
|
+
async def test_set_binning() -> None:
|
|
44
|
+
camera = QHYCCDCamera()
|
|
45
|
+
camera.comm.set_state = AsyncMock() # type: ignore[method-assign]
|
|
46
|
+
|
|
47
|
+
await camera.set_binning(2, 3)
|
|
48
|
+
|
|
49
|
+
assert camera._binning == (2, 3)
|
|
50
|
+
assert camera.comm.set_state.await_args is not None
|
|
51
|
+
interface, state = camera.comm.set_state.await_args.args
|
|
52
|
+
assert interface is IBinning
|
|
53
|
+
assert (state.x, state.y) == (2, 3)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
@pytest.mark.asyncio
|
|
57
|
+
async def test_set_cooling_without_driver_publishes_state() -> None:
|
|
58
|
+
camera = QHYCCDCamera()
|
|
59
|
+
camera.comm.set_state = AsyncMock() # type: ignore[method-assign]
|
|
60
|
+
|
|
61
|
+
await camera.set_cooling(True, -15.0)
|
|
62
|
+
|
|
63
|
+
# no driver attached, so power can't be read back and is published as None
|
|
64
|
+
assert camera._setpoint == -15.0
|
|
65
|
+
assert camera.comm.set_state.await_args is not None
|
|
66
|
+
interface, state = camera.comm.set_state.await_args.args
|
|
67
|
+
assert interface is ICooling
|
|
68
|
+
assert (state.setpoint, state.power, state.enabled) == (-15.0, None, True)
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
@pytest.mark.asyncio
|
|
72
|
+
async def test_set_cooling_disabled_publishes_no_setpoint() -> None:
|
|
73
|
+
camera = QHYCCDCamera()
|
|
74
|
+
camera.comm.set_state = AsyncMock() # type: ignore[method-assign]
|
|
75
|
+
|
|
76
|
+
await camera.set_cooling(False, -15.0)
|
|
77
|
+
|
|
78
|
+
# disabling cooling publishes setpoint=None even though a setpoint was passed in
|
|
79
|
+
assert camera.comm.set_state.await_args is not None
|
|
80
|
+
interface, state = camera.comm.set_state.await_args.args
|
|
81
|
+
assert interface is ICooling
|
|
82
|
+
assert (state.setpoint, state.enabled) == (None, False)
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
@pytest.mark.asyncio
|
|
86
|
+
async def test_set_gain_requires_driver() -> None:
|
|
87
|
+
camera = QHYCCDCamera()
|
|
88
|
+
with pytest.raises(ValueError):
|
|
89
|
+
await camera.set_gain(10.0)
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
@pytest.mark.asyncio
|
|
93
|
+
async def test_run_blocking_runs_func_and_returns_true() -> None:
|
|
94
|
+
ran: list[bool] = []
|
|
95
|
+
|
|
96
|
+
def fast() -> None:
|
|
97
|
+
ran.append(True)
|
|
98
|
+
|
|
99
|
+
assert await QHYCCDCamera._run_blocking(fast) is True
|
|
100
|
+
assert ran == [True]
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
@pytest.mark.asyncio
|
|
104
|
+
async def test_run_blocking_times_out() -> None:
|
|
105
|
+
done = threading.Event()
|
|
106
|
+
|
|
107
|
+
def slow() -> None:
|
|
108
|
+
done.wait()
|
|
109
|
+
|
|
110
|
+
assert await QHYCCDCamera._run_blocking(slow, timeout=0.01) is False
|
|
111
|
+
done.set()
|
|
112
|
+
await asyncio.sleep(0.05)
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
@pytest.mark.asyncio
|
|
116
|
+
async def test_run_blocking_or_raise_returns_value() -> None:
|
|
117
|
+
camera = QHYCCDCamera()
|
|
118
|
+
assert await camera._run_blocking_or_raise(lambda: 42) == 42
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
@pytest.mark.asyncio
|
|
122
|
+
async def test_run_blocking_or_raise_reraises() -> None:
|
|
123
|
+
camera = QHYCCDCamera()
|
|
124
|
+
|
|
125
|
+
def boom() -> int:
|
|
126
|
+
raise ValueError("boom")
|
|
127
|
+
|
|
128
|
+
with pytest.raises(ValueError):
|
|
129
|
+
await camera._run_blocking_or_raise(boom)
|
|
@@ -1007,6 +1007,15 @@ wheels = [
|
|
|
1007
1007
|
{ url = "https://files.pythonhosted.org/packages/7f/ec/6b120b4a86f6fadc7ddb1d7c7cdcb15bcfb332deb022ab60df51bcd4494c/influxdb_client-1.50.0-py3-none-any.whl", hash = "sha256:f172975cf7f0c95bfe74f288b31273393b164d2c58a948de55497d9956ab49be", size = 746289, upload-time = "2026-01-23T09:39:37.377Z" },
|
|
1008
1008
|
]
|
|
1009
1009
|
|
|
1010
|
+
[[package]]
|
|
1011
|
+
name = "iniconfig"
|
|
1012
|
+
version = "2.3.0"
|
|
1013
|
+
source = { registry = "https://pypi.org/simple" }
|
|
1014
|
+
sdist = { url = "https://files.pythonhosted.org/packages/72/34/14ca021ce8e5dfedc35312d08ba8bf51fdd999c576889fc2c24cb97f4f10/iniconfig-2.3.0.tar.gz", hash = "sha256:c76315c77db068650d49c5b56314774a7804df16fee4402c1f19d6d15d8c4730", size = 20503, upload-time = "2025-10-18T21:55:43.219Z" }
|
|
1015
|
+
wheels = [
|
|
1016
|
+
{ url = "https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl", hash = "sha256:f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53fbf12", size = 7484, upload-time = "2025-10-18T21:55:41.639Z" },
|
|
1017
|
+
]
|
|
1018
|
+
|
|
1010
1019
|
[[package]]
|
|
1011
1020
|
name = "invoke"
|
|
1012
1021
|
version = "3.0.3"
|
|
@@ -1772,6 +1781,15 @@ wheels = [
|
|
|
1772
1781
|
{ url = "https://files.pythonhosted.org/packages/75/a6/a0a304dc33b49145b21f4808d763822111e67d1c3a32b524a1baf947b6e1/platformdirs-4.9.6-py3-none-any.whl", hash = "sha256:e61adb1d5e5cb3441b4b7710bea7e4c12250ca49439228cc1021c00dcfac0917", size = 21348, upload-time = "2026-04-09T00:04:09.463Z" },
|
|
1773
1782
|
]
|
|
1774
1783
|
|
|
1784
|
+
[[package]]
|
|
1785
|
+
name = "pluggy"
|
|
1786
|
+
version = "1.6.0"
|
|
1787
|
+
source = { registry = "https://pypi.org/simple" }
|
|
1788
|
+
sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412, upload-time = "2025-05-15T12:30:07.975Z" }
|
|
1789
|
+
wheels = [
|
|
1790
|
+
{ url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" },
|
|
1791
|
+
]
|
|
1792
|
+
|
|
1775
1793
|
[[package]]
|
|
1776
1794
|
name = "pre-commit"
|
|
1777
1795
|
version = "4.6.1"
|
|
@@ -2160,6 +2178,15 @@ wheels = [
|
|
|
2160
2178
|
{ url = "https://files.pythonhosted.org/packages/b4/11/97233cf23ad5411ac6f13b1d6ee3888f90ace4f974d9bf9db887aa428912/pyerfa-2.0.1.5-cp39-abi3-win_amd64.whl", hash = "sha256:66292d437dcf75925b694977aa06eb697126e7b86553e620371ed3e48b5e0ad0", size = 349410, upload-time = "2024-11-11T15:22:24.817Z" },
|
|
2161
2179
|
]
|
|
2162
2180
|
|
|
2181
|
+
[[package]]
|
|
2182
|
+
name = "pygments"
|
|
2183
|
+
version = "2.20.0"
|
|
2184
|
+
source = { registry = "https://pypi.org/simple" }
|
|
2185
|
+
sdist = { url = "https://files.pythonhosted.org/packages/c3/b2/bc9c9196916376152d655522fdcebac55e66de6603a76a02bca1b6414f6c/pygments-2.20.0.tar.gz", hash = "sha256:6757cd03768053ff99f3039c1a36d6c0aa0b263438fcab17520b30a303a82b5f", size = 4955991, upload-time = "2026-03-29T13:29:33.898Z" }
|
|
2186
|
+
wheels = [
|
|
2187
|
+
{ url = "https://files.pythonhosted.org/packages/f4/7e/a72dd26f3b0f4f2bf1dd8923c85f7ceb43172af56d63c7383eb62b332364/pygments-2.20.0-py3-none-any.whl", hash = "sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176", size = 1231151, upload-time = "2026-03-29T13:29:30.038Z" },
|
|
2188
|
+
]
|
|
2189
|
+
|
|
2163
2190
|
[[package]]
|
|
2164
2191
|
name = "pynacl"
|
|
2165
2192
|
version = "1.6.2"
|
|
@@ -2241,7 +2268,7 @@ gui = [
|
|
|
2241
2268
|
|
|
2242
2269
|
[[package]]
|
|
2243
2270
|
name = "pyobs-qhyccd"
|
|
2244
|
-
version = "2.0.0.
|
|
2271
|
+
version = "2.0.0.dev12"
|
|
2245
2272
|
source = { editable = "." }
|
|
2246
2273
|
dependencies = [
|
|
2247
2274
|
{ name = "astropy" },
|
|
@@ -2261,6 +2288,8 @@ dev = [
|
|
|
2261
2288
|
{ name = "cython" },
|
|
2262
2289
|
{ name = "pre-commit" },
|
|
2263
2290
|
{ name = "pyrefly" },
|
|
2291
|
+
{ name = "pytest" },
|
|
2292
|
+
{ name = "pytest-asyncio" },
|
|
2264
2293
|
{ name = "ruff" },
|
|
2265
2294
|
]
|
|
2266
2295
|
|
|
@@ -2280,6 +2309,8 @@ dev = [
|
|
|
2280
2309
|
{ name = "cython", specifier = ">=3.0.0,<4" },
|
|
2281
2310
|
{ name = "pre-commit", specifier = ">=4.2.0,<5" },
|
|
2282
2311
|
{ name = "pyrefly", specifier = ">=1.1.1" },
|
|
2312
|
+
{ name = "pytest", specifier = ">=8.0.0" },
|
|
2313
|
+
{ name = "pytest-asyncio", specifier = ">=0.24.0" },
|
|
2283
2314
|
{ name = "ruff", specifier = ">=0.9.0" },
|
|
2284
2315
|
]
|
|
2285
2316
|
|
|
@@ -2359,6 +2390,35 @@ wheels = [
|
|
|
2359
2390
|
{ url = "https://files.pythonhosted.org/packages/53/27/d17f25e45820e633a70e6109b35991eda09a5e8000c2a306f0ab7538d48c/pyside6_essentials-6.11.0-cp310-abi3-win_arm64.whl", hash = "sha256:81ca603dbf21bc39f89bb42db215c25ebe0c879a1a4c387625c321d2730ec187", size = 56337457, upload-time = "2026-03-23T12:43:43.573Z" },
|
|
2360
2391
|
]
|
|
2361
2392
|
|
|
2393
|
+
[[package]]
|
|
2394
|
+
name = "pytest"
|
|
2395
|
+
version = "9.1.1"
|
|
2396
|
+
source = { registry = "https://pypi.org/simple" }
|
|
2397
|
+
dependencies = [
|
|
2398
|
+
{ name = "colorama", marker = "sys_platform == 'win32'" },
|
|
2399
|
+
{ name = "iniconfig" },
|
|
2400
|
+
{ name = "packaging" },
|
|
2401
|
+
{ name = "pluggy" },
|
|
2402
|
+
{ name = "pygments" },
|
|
2403
|
+
]
|
|
2404
|
+
sdist = { url = "https://files.pythonhosted.org/packages/e4/47/b9efed96c114afcfa3c9d3fe98a76a1d14c74a9e266d397cf6eb64be5e01/pytest-9.1.1.tar.gz", hash = "sha256:1088fbde8f2b49d95a549a195707afa7a76a3ce9bcadc26b6d71f0ffda5fe313", size = 1636369, upload-time = "2026-06-19T10:58:32.857Z" }
|
|
2405
|
+
wheels = [
|
|
2406
|
+
{ url = "https://files.pythonhosted.org/packages/24/25/1de2678b631f5a49215c6c96fff41ba892b0a34df68d6d80292b1b48aa7f/pytest-9.1.1-py3-none-any.whl", hash = "sha256:37a86b45efb9a47a61a36449063e8e18d0cab3161329fc099eb21783169c4f0c", size = 386536, upload-time = "2026-06-19T10:58:31.347Z" },
|
|
2407
|
+
]
|
|
2408
|
+
|
|
2409
|
+
[[package]]
|
|
2410
|
+
name = "pytest-asyncio"
|
|
2411
|
+
version = "1.4.0"
|
|
2412
|
+
source = { registry = "https://pypi.org/simple" }
|
|
2413
|
+
dependencies = [
|
|
2414
|
+
{ name = "pytest" },
|
|
2415
|
+
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
|
|
2416
|
+
]
|
|
2417
|
+
sdist = { url = "https://files.pythonhosted.org/packages/43/7c/d36d04db312ecf4298932ef77e6e4a9e8ad017906e24e34f0b0c361a2473/pytest_asyncio-1.4.0.tar.gz", hash = "sha256:c6c0d2259945122819f171a32ecea2c349ead889ee28176caaf492143424be42", size = 58514, upload-time = "2026-05-26T09:56:04.083Z" }
|
|
2418
|
+
wheels = [
|
|
2419
|
+
{ url = "https://files.pythonhosted.org/packages/03/e2/08a497ef684b88559c9cc5f4ad53a37e7b99e727094a86d6ea32536d5d3c/pytest_asyncio-1.4.0-py3-none-any.whl", hash = "sha256:933ca923a23075a87fb7070c0ec272a6848489824d887c85c812670932835aa1", size = 16930, upload-time = "2026-05-26T09:56:02.576Z" },
|
|
2420
|
+
]
|
|
2421
|
+
|
|
2362
2422
|
[[package]]
|
|
2363
2423
|
name = "python-dateutil"
|
|
2364
2424
|
version = "2.9.0.post0"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|