--------------------
Added
~~~~~
* Conda environment file. (wtgee 1066)
* Add the `gsutil` to `google` install options. Required for uploading data. (wtgee 1036, 1037)
* Ability to specify autofocus plots in config file. (wtgee 1029)
* A "developer" version of the ``panoptes-pocs`` docker image is cloudbuilt automatically on merge with ``develop``. (wtgee 1010)
* Better error checking in cameras, including ability to store error. (AnthonyHorton 1007)
* Added ``error.InvalidConfig`` exception. (wtgee 1007)
* Config options to control camera processing options and allow for `defaults` in the config that applies to all cameras: (wtgee 1007)
* ``cameras.defaults.compress_fits`` if FITS files should be fpacked. Default True.
* ``cameras.defaults.record_observations`` if observation metadata should be recorded. Default True.
* ``cameras.defaults.make_pretty_images`` to make jpgs from images. Default True.
Breaking
~~~~~~~~
* The ``model`` parameter for the camera and subcomponents needs a fully resolved namespace for either the module or class. (wtgee 1007)
* The ``take_exposure`` method returns an event to indicate that exposure is in progress, **not** to indicate when exposure has completed. The event is stored in the camera object and accessible via ``camera.is_exposing``. (wtgee 1007)
* Removed camera temperature stability checking for now. (wtgee 1007)
* Moved the ``AbstractGphotoCamera`` class into it's own namespace and file. (wtgee 1007)
* Python moved back to 3.7. (1021)
Bug fixes
~~~~~~~~~
* Fix incorrect import of autofocus plots. (wtgee 1034)
* DSLR simulator cameras properly override the cooling defaults. (wtgee 1001)
* Stability checks for cooled cameras so they are only marked ``ready`` when cooled condition has stabilized. (danjampro 990)
* Properly closed the autofocus matplotlib figures. (wtgee 1029)
* Prevent thumbnails from being larger than image. (wtgee 1029)
Changed
~~~~~~~
* Clean up dependencies and offer extras install options. (wtgee 1066)
* Split some hardware options, such as ``focuser``, which has extra dependencies.
* Consolidate config files into ``conf_files`` dir. This includes targets and state machine files. (wtgee 1066)
* Change ``thumbnail_size`` to ``cutout_size`` consistently. (wtgee 1040.)
* Camera observation updates:
* TheSkyX utilities added (from ``panoptes-utils``). (wtgee 1066)
* headers param fixed so truly optional. The POINTING keyword is checked in the metadata, not original headers. Closes 1002. (wtgee 1009)
* Passing approved headers will actually write them to file. (wtgee 1009)
* ``blocking=False`` param added. If True, will wait on observation_event. (wtgee 1009)
* Renamed metadata variables to be consistent. (wtgee 1009)
* ``_process_fits`` is responsible for writing the headers rather than calling out to panoptes-utils. Allows for easier overrides. (wtgee 1009)
* dslr simulator readout time improved. (wtgee 1009)
* ``process_exposure`` doesn't require the exposure_event to be passed because that is the cameras is_exposing property. (wtgee 1009)
* The autofocus plotting has been moved to an external file. (wtgee 1029)
* Changelog cleanup. (wtgee 1008)
* ``panoptes-utils`` updates:
* Updated ``panoptes-utils`` to ``v0.2.30``. (wtgee 1066)
* Updated ``panoptes-utils`` to ``v0.2.29``. (wtgee 1021)
* Updated ``panoptes-utils`` to ``v0.2.28``. (wtgee 1007)
* Updated ``panoptes-utils`` to ``v0.2.27`` to support the envvars for starting config server. (wtgee 1001)
* Move the ``wait-for-it.sh`` script into ``scripts``. (wtgee 1001)
* Camera:
* Changed how subcomponents for camera are created. (wtgee 1007)
* Camera and subcomponent stringification changed for clarity. (wtgee 1007)
* Can reassign SDK camera if same UID is presented with flag to ``create_cameras_from_config``. (wtgee 1007)
* Add support for taking "dark" frames for cameras with mechanical shutters or opaque filters in the filterwheel. (AnthonyHorton 989)
* ``_poll_exposure`` was needlessly being called in a ``threading.Timer`` rather than a simple ``threading.Event``. (wtgee 1007)
* Slight improvements to the timeout and readout for exposures with the simulators. (wtgee 1007)
* Docker:
* Default ``$PANUSER`` is now ``pocs-user`` instead of ``panoptes``. (wtgee 1066)
* Docker images default to ``latest`` instead of ``develop``. (wtgee 1066)
* Removed ``developer`` docker image. (wtgee 1066)
* Updated to match ``panoptes-utils`` Docker updates: removal of ``source-extractor`` and more. (wtgee 1008)
* ``gphoto2`` comes from apt. (wtgee 1007)
* Local setup script doesn't build ``panoptes-utils`` but assumes done otherwise or uses ``gcr.io``. (wtgee 1007)
* Testing:
* Added ``tests/env`` file for setting up testing. (wtgee 1066)
* Config server is started as part of pytest again (reverting below). (wtgee 1066)
* Testing is run from a locally built Docker image for both local and CI testing. (wtgee 1001)
* Config file for testing is moved to ``$PANDIR/tests/testing.yaml``. (wtgee 1001)
* Config server for testing is started external to ``pytest``, which is currently lowering coverage. (wtgee 1001)
* Coverage reports are generated inside the Docker container. (wtgee 1001)
* Default log level set to TRACE. (wtgee 1007)
* Less hard-coding of fixtures and answers, more config server. (wtgee 1007)
* Renamed the cameras in testing fixtures. (wtgee 1007)
* Cooled cameras have temperature stability check in conftest. (wtgee 1007)
Removed
~~~~~~~
* Removed testing and local setup scripts. (wtgee 1066)
* Removed manuals from ``resources`` directory. (wtgee 1066)
* Removed all arduino files, to be replaced by Firmata. See instructions on gitbook docs. (wtgee 1035)
* Remove ``create_camera_simulator`` helper function. (wtgee 1007)