Changelog
2019-06-05 Jan Snigula <snigula@mpe.mpg.de>
* ocd/auto_schedule.py: Log warnings from autoschedule
2018-12-25 Jan Snigula <snigula@mpe.mpg.de>
* tests/*: Updates for the image quality update
* setup.py: Added more dependencies
* ocd/static/ocd.cfg: Added image_quality and valid_image_quality
parameters
* ocd/storage.py: Update to use moffat base image_quality
metrology event
2018-12-14 Jan Snigula <snigula@mpe.mpg.de>
* ocd/static/ocd.cfg: Same
* ocd/storage.py: use photometry_trans key from config
* tests/*: More updates for the transparency update
2018-12-14 Jan Snigula <snigula@mpe.mpg.de>
* tests/*: Updates
* ocd/config.py: Minor fix for testing
* ocd/static/ocd.cfg: Added key for transparency
* ocd/storage.py: Use PAS supplied transparency
2018-06-18 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/contributions.rst: update contribution docs with information
about the new pytest option; resolves issue #2608
2018-06-18 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: add --force-tcs option to avoid using IPC; third part
of issue #2608
2018-06-18 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: if the name is None or the path is longer that 105
characters, use a TCP address; second part of issue #2608
2018-06-18 Francesco Montesano <montefra@mpe.mpg.de>
* tests/*py: replace ipc path creation with a fixture; first part of issue
#2608
2018-06-08 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: now the illumination is included in the photometry.
Resolves issue #2589
* doc/source/ocd_decision.rst: update the docs accordingly
* tests/test_storage.py: and the tests
2018-05-17 Francesco Montesano <montefra@mpe.mpg.de>
* ReleaseNotes.rst: update
* doc/source/errors.rst: same
* doc/source/storage.rst: same
* doc/source/utils.rst: same
* ReleaseNotes.md: delete
2018-05-17 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/metadata into ^trunk
2018-05-17 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^trunk into ^/branches/metadata
2018-05-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: all the database transactions need to be properly
encapsulated
2018-05-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: use metadata instead of queue for uniformity
* doc/source/ocd_decision.rst: same
* tests/test_shots_db.py: same
2018-05-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: add metadata to the shot_dict. Resolves issue #2562
* tests/test_auto_schedule.py: test it
* tests/conftest.py: simplify the fixtures
* tests/test_states.py: and use them
2018-05-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: add function to get the metadata
* tests/test_shots_db.py: test it
2018-05-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: send the metadata in the subprocess running ``ocd
run_shot``. Resolves issue #2565
* tests/test_run_shot.py: update the tests
2018-05-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add the metadata command line option to ``ocd run_shot``
command. Resolves issue #2564
* tests/test_run_shot.py: test the new option
* doc/source/ocd_executables.rst: update the docs
2018-05-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add metadata to the string formatting dict. Resolves
issue #2567
* ocd/static/ocd.cfg: add the info
* tests/test_run_shot.py: test the formatting
* tests/conftest.py: update
2018-05-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: clear metadata. Resolves #2566
* tests/test_run_shot.py: test it
* doc/source/ocd_decision.rst: and document it
2018-05-14 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_decision.rst: update docs
2018-05-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: set the metadata. Implements issue #2563
* tests/test_run_shot.py: test the new feature
* tests/conftest.py: update the necessary fixtures
2018-05-14 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_inputs.rst: update documentation. Resolves issue #2561
* ocd/shots_db.py: same
2018-05-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: load all the columns of the shot file. Implements issue
#2561
* tests/data/autoschedule.dat: add columns to the test file
* tests/test_shots_db.py: test the changes
2018-05-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: add new SQlite3 table to store metadata. Resolves issue
#2560
* doc/source/shot_db.rst: update
* doc/source/index.rst: fix typo
* ocd/states.py: same
* doc/source/ocd_inputs.rst: adjust references
2018-05-17 Francesco Montesano <montefra@mpe.mpg.de>
* ReleaseNotes.rst: renamed and updated
doc/source/release_notes.rst: added. Resolves issue #2554
* doc/source/index.rst: add it
* doc/source/conf.py: use pyhetdex and tcs_lib intersphinx from readthedox
2018-05-17 Francesco Montesano <montefra@mpe.mpg.de>
* readthedocs.yml: added for readthedocs deployment
* requirements_rtd.txt: same
2018-05-09 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/emit_states into ^/trunk
2018-05-09 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/emit_states
2018-05-09 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: use tcs_lib >= 0.5
* tox.ini: use the released tcs_lib
2018-05-03 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_decision.rst: document the TCS-like events emitted by
ocd.states
* ocd/states.py: add ref anchors
2018-05-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: when a TCS heartbeat event arrives, emit the current state;
resolves issue #5212
* tests/test_states.py: make Cure that events are send out
* tests/data/TCS_test.db: update test database
* tests/test_orchestrator.py: update the integration tests
* tests/test_db_replay.py: update
* doc/source/states.rst: update the docs
* tests/conftest.py: revert changes introduced by r348
2018-05-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: add basic infrastructure to handle TCS heartbeat topics;
first part of issue #5212
* ocd/auto_schedule.py: adapt accordingly
* ocd/orchestrator.py: update comments about OCD heartbeat
* tests/test_states.py: test the modifications and prepare them for the next
step
* tests/test_auto_schedule.py: test the modifications
* tests/conftest.py: make sure that ocd urls are unique
* doc/source/states.rst: add the new topic
2018-05-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: emit events on state changes; resolves issue #2511
* tests/test_states.py: test it
* tests/test_auto_schedule.py: adapt to the changes
* tests/test_orchestrator.py: same
2018-05-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/heart_beat.py: the next version of tcs_lib injects content in the
output event
* tests/test_heart_beat.py: same
* tests/test_utils.py: same
* tests/test_run_shot.py: use a generic executable to test playing sounds
2018-05-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: add a callback function to send event via ZMQ; third part
of #2511
* tox.ini: use tcs_lib devel for now
* doc/source/states.rst: update the docs
2018-05-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: MetrologyState use extra_msg to the transaction callback in
instead of logging the information by itself; second part of #2511
* tests/test_states.py: test the changes
2018-05-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: add ``extra_msg`` to the method that log state transitions;
first part of #2511
2018-05-08 Francesco Montesano <montefra@mpe.mpg.de>
* LICENSE_fdl1.3: added
* LICENSE_gpl3: added
* doc/source/license.rst: added and add the above files
* doc/source/index.rst: use proper name
* ocd/*.py: add copyright notice. Resolves issue #2555
2018-05-04 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/main.py: use tcs_lib's SafeTCSEvent; resolves r2510
* setup.py: require tcs_lib >= 0.4
* ocd/orchestrator.py: remove ocd's SafeTCSEvent implementation
* tests/test_orchestrator.py: remove its tests
2018-05-03 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/gauss_fwhm into ^/trunk
2018-05-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: estimate FWHM using the Gaussian fit; resolves #2545
* tests/test_storage.py: test the changes
* tests/conftest.py: add the new needed parameters to the test events
* tests/test_states.py: same
* doc/source/ocd_decision.rst: document the changes
2018-04-23 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: flip the sign of the dither offsets to get the correct
behaviour
2018-04-23 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/config_update into ^/trunk
2018-04-23 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/config_update
* : ReleaseNotes.md: update
2018-04-23 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add information whether options are modifiable or not.
Resolves #2424
2018-04-23 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_executables.rst: document the ``ocd config send`` command.
2018-04-22 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add command line subcommand to send configuration options.
Implements issue #2424
* ocd/static/ocd.cfg: add the necessary configuration options
* ocd/utils.py: and initialize the necessary server
* tests/conftest.py: rename a variable
* tests/test_config.py: test the new command
* tests/test_utils.py: and the new server initialization
2018-04-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: update docs
* ocd/auto_schedule.py: add method to update the configuration. Resolves
issue #2492
* ocd/orchestrator.py: same
* ocd/states.py: same
* tests/test_auto_schedule.py: test the changes
* tests/test_orchestrator.py: same
* tests/test_states.py: same
2018-04-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: PEP8
* ocd/orchestrator.py: reformat the code and add the ConfigUpdater to the
orchestrator (resolves in #2494)
* tests/test_orchestrator.py: make sure that it is properly plugged and used
2018-04-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add class to handle configuration change requests. Resolves
issue #2491
* tests/test_config.py: test it
* doc/source/config.rst: update the docs
2018-04-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: fix the y shifts of the guider offsets. Resolves issue
#2526
2018-04-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: don't pipe stdout and sdterr when running a shot
2018-04-20 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/run_shot_updates into ^/trunk
2018-04-20 Francesco Montesano <montefra@mpe.mpg.de>
* ReleaseNotes.md: update
2018-04-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: wait for readout instead of write. Resolves issue #2523
* ocd/static/ocd.cfg: update the configuration option accordingly
* ocd/config.py: automatically replace move the old into the new
configuration option
* tests/test_run_shot.py: update the tests
* doc/source/ocd_decision.rst: and the docs
2018-04-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: skip the guide probe offset for the last exposure.
Resolves issue #2522
* tests/test_run_shot.py: update the tests
* doc/source/ocd_decision.rst: and the docs
2018-04-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add a sound at the end of each exposure and if a failure
happens (resolves issue #2509)
* ocd/static/ocd.cfg: add the corresponding configuration
* tests/test_run_shot.py: update the tests
* doc/source/ocd_decision.rst: and the docs
2018-04-09 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/extra_commands/ into ^/trunk
2018-04-09 Francesco Montesano <montefra@mpe.mpg.de>
* ReleaseNotes.md: update
2018-03-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: Move "SetObjectAndMagnitudes" to after "go_next";
resolves #2436.
* doc/source/ocd_decision.rst: update the docs
2018-03-28 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_decision.rst: update the docs with the new commands
* doc/source/run_shot.rst: update the document name
* ocd/static/ocd.cfg: add some more info
2018-03-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add commands to start and stop saving probe frames and
ACAM stuff (resolves issue #2423)
* tests/test_run_shot.py: update the tests and relax tests with timing
2018-03-27 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add function to play a sound
* ocd/static/ocd.cfg: add options to play a sound
* tests/conftest.py: test it
* tests/test_run_shot.py: same
* tests/data/silence.ogg: add short empty sound for testing
2018-03-27 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add some guider/wfs setup command (first part of #2423)
* tests/test_run_shot.py: test the changes
* ocd/docker_mysql.py: give explicit docker tag
* tests/test_auto_schedule.py: autoschedule_main changed...
2018-03-01 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/bad_photometry into ^/trunk
2018-03-01 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/bad_photometry
2018-03-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: mask negative filter.magnitude. Resolves issue #2396
* tests/test_storage.py: test the changes
* doc/source/ocd_decision.rst: and document them
2018-03-01 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/timeout/ into ^/trunk
2018-02-23 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_decision.rst: update the documentation according to the
changes of #2065. Resolves the issue
* ocd/run_shot.py: fix variable type
* ReleaseNotes.md: update
2018-02-23 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add option to continue after the timeout; second part
of #2065
* ocd/run_shot.py: use the option as intended
* tests/test_run_shot.py: test it
2018-02-22 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add a timeout option to use in tcs.wait_for_setup;
first part of issue #2065
* ocd/run_shot.py: use it (and add log message about waiting for the setup)
* tests/test_run_shot.py: update the tests
>>>>>>> .merge-right.r309
2018-02-20 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/exposure_time/ into ^/trunk
2018-02-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: convert exposure time to seconds (resolves issue
#2373)
* tests/test_auto_schedule.py: test it
2018-02-13 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/corrupted_events into ^/trunk
2018-02-13 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: bump minimum tcs_lib required version
* tox.ini: don't use devel tcs_lib
2018-02-13 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/corrupted_events
2018-02-13 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/log_messages into ^/trunk
2018-02-09 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: add log message with the parameters passed to
autoschedule_main
* tests/test_auto_schedule.py: update the tests
* ocd/run_shot.py: update logging according to #2302
2018-02-09 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/main.py: use the new SafeTCSEvent to report exceptions (resolve issue
#2313)
* ocd/orchestrator.py: re-raise also TimeoutError to allow testing
2018-02-09 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: add a version of the TCSEvent class that log
exceptions and then keep going (first part of issue #2313)
* tests/test_orchestrator.py: test the changes
* tox.ini: use the devel version of tcs_lib
* doc/source/orchestrator.rst: fix warning
2018-02-09 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/corrupted_events
2018-02-09 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: require pyhetdex 0.13
* tests/conftest.py: update to make pytest >=3 happy
* tests/test_auto_schedule.py: same
* tests/test_run_shot.py: same
* tests/test_shots_db.py: same
2018-02-07 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/cancel_trajectory into ^/trunk
2018-02-07 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: cancel a trajectory before starting a new one. Resolves
issue #2342
* tests/test_run_shot.py: test it
2018-02-06 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_inputs.rst: document that RA is in hours
* ocd/shots_db.py: same
2018-01-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: reorganize the order of the log messages to make it
less confusing
2018-01-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/errors.py: add new error for the shot file mismatch
* ocd/shots_db.py: raise a more sensible error when the columns in the shot
file are not to spec. Resolves issue #2311
* tests/test_shots_db.py: update the test
2018-01-17 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/main.rst: added. Resolves #2285
* doc/source/index.rst: add it to index
* doc/source/ocd_executables.rst: rename from ocd_main.rst
* doc/source/orchestrator.rst: update module name
* ocd/main.py: update docstrings
* setup.py: bump version
2018-01-17 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: make logging events optional and off by default.
Resolves issue #2303
* ocd/static/ocd.cfg: add the corresponding configuration option
* tests/test_orchestrator.py: test the changes
2018-01-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: order keys when logging the incoming events. Resolves
issue #2280
* tests/test_orchestrator.py: make sure that this is what happens
2018-01-11 Francesco Montesano <montefra@mpe.mpg.de>
* tests/test_auto_schedule.py: update tests after fixing issue #2281
* tests/conftest.py: same
2017-12-21 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: set version 0.1
2017-12-21 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/event_keys into ^/trunk
2017-12-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add a container to compute the FWHM in arcsecond and plug
this in the MetrologyVault. Resolves issue #2273
* doc/source/ocd_decision.rst: update the documentation
* tests/conftest.py: update the tests
* tests/test_states.py: same
* tests/test_storage.py: same
2017-12-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: change the meaning of the photometry_skymag and
photometry_trans. Resolves #2270
* ocd/storage.py: use the new keywords and update the docs
* doc/source/ocd_decision.rst: update the docs
* tests/test_orchestrator.py: update the tests
* tests/test_states.py: same
* tests/test_storage.py: same
2017-12-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: pass the configuration to the ContainerTransparency in
preparation for @2270
* tests/test_storage.py: update the tests
2017-12-20 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/run_shot_and_shuffle/ into ^/trunk
2017-12-20 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_decision.rst: document the steps to run a shot. Resolves
issue #2268
2017-12-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add the shot dict to the ocd.run_shot.setup_telescope
event
2017-12-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: use also shot information from autoschedule when setting
up the telescope. Resolves issue #2269
* tests/test_run_shot.py: update the signature of the modified method
2017-12-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add absolute tolerance values for ra, dec, azimuth and
track comparison. Resolves issue #2267
* ocd/run_shot.py: use the tolerance from the configuration
* tests/test_run_shot.py: test the changes
2017-12-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: reorganize the implementation of validate_shuffle_conf in
preparation for issue #2267
* tests/test_run_shot.py: distinguish the input configurations objects in
the tests
2017-12-19 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/update_shot into ^/trunk
2017-12-19 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_decision.rst: add the explanation of what happens when a
shot finishes or abort. Resolves issue #2057
2017-12-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: if the azimuth or the track are not set, set them to the
shot_dict value. Third pare of issue #2057
* doc/source/shot_db.rst: update docs
* tests/test_shots_db.py: test the changes
* tests/test_states.py: update the tests accordingly
2017-12-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: change the signature of update_shot. Second part of issue
#2057
* ocd/states.py: update accordingly and simplify log messages
* tests/test_shots_db.py: test the changes
* tests/test_states.py: update the tests
2017-12-18 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: all the transitions to idle contains the tcs_event
dictionary. First part of issue #2057
* tests/test_states.py: update the tests
2017-12-18 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/next_shot into ^/trunk
2017-12-18 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/next_shot
2017-12-18 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_decision.rst: finish the document. Resolves issue #2262
* doc/source/ocd_notes.rst: add link anchor
* ocd/states.py: fix documentation
2017-12-15 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_decision.rst: write the first part of the document
* doc/source/index.rst: add the document to the index
2017-12-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: catch and log the exception raised when the maximum
observation number is reached. Resolves issue #2230
* tests/test_auto_schedule.py: test it
* ocd/shots_db.py: fix error string
2017-12-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add maximum allowed observation number. First step of
issue #2230
* ocd/shots_db.py: raise an exception if the maximum is hit
* ocd/errors.py: add the exception
* tests/test_shots_db.py: test the change
2017-12-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add sleep after sending out the first
``ocd.run_shot.run`` events. Resolves issue #2228
* tests/test_run_shot.py: test the changes
2017-12-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add options to skip shots or delay their start, first
part of issue #2228
* ocd/auto_schedule.py: use the new options
* tests/conftest.py: update accordingly
* tests/test_orchestrator.py: same
* tests/test_auto_schedule.py: test the new feature
2017-12-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: use the skip_shot_submission option. Resolves issue
#2241
* ocd/static/ocd.cfg: update comment
* tests/test_auto_schedule.py: test the changes
2017-12-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add option to skip running a shot. First part of issue
#2241
* ocd/config.py: check the option and replace in the configurations
* tests/test_config.py: test the changes
2017-12-12 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_main.rst: add a note about the issue implemented in #2240
and resolve it
* ocd/static/ocd.cfg: add a similar note
2017-12-12 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/main.py: ``ocd run`` raises if both event_urls and ocd_db_replay are
given. Resolves issue #2240
* tests/test_ocd_main.py: test the changes
2017-12-12 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: fix type in message
* tests/test_db_replay.py: ignore unnecessary warning
* tests/test_ocd_main.py: same
* tests/test_run_shot.py: same
2017-12-12 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: implement the function to check the urls necessary to
implement issue #2240
* ocd/errors.py: update the errors
* tests/test_config.py: test the changes
* ocd/static/ocd.cfg: remove ocd_db_replay url value
* ocd/utils.py: make sure that the missing urls are properly handled
* tests/test_utils.py: test the changes
* tests/conftest.py: update tests accordingly to the changes
* tests/test_allow_hetdex.py: same
* tests/test_db_replay.py: same
2017-12-12 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: write prototype for the function implementing configuration
value checks. First part of issue #2240
* ocd/errors.py: add two warnings
2017-12-08 Francesco Montesano <montefra@mpe.mpg.de>
* tests/data/TCS_test.db: replace the database with something that allows
full testing. Resolve issue #2078
* tests/conftest.py: move fixtures around
* tests/test_auto_schedule.py: same
* tests/test_db_replay.py: use the new database (speedup replay)
* tests/test_orchestrator.py: use the new database and test that something
happens
* scripts/db_manipulate.py: added. Saved in the repo for future reference
* scripts/smaller_db.py: same
* scripts/survey_to_shot_list.py: same
2017-12-07 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_notes.rst: add a note about mocking the times. Resolves
issue #2242
* ocd/run_shot.py: when running in a subprocess, returns also the command
executed [because I need to support python 2.7 :(]
* ocd/auto_schedule.py: update accordingly
* tests/test_auto_schedule.py: same
* tests/test_run_shot.py: same
* ocd/utils.py: fix message
2017-12-07 Francesco Montesano <montefra@mpe.mpg.de>
* tests/test_docker_mysql.py: check that the configuration overriding works
2017-12-07 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: avoid failing tests if a previous run left some docker
container around
* tests/test_docker_mysql.py: use the first six characters of uuid4
2017-12-06 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: collect all the clear/reset fixture in clear_all
* tests/test_allow_hetdex.py: adapt accordingly
* tests/test_run_shot.py: same
* tests/test_shots_db.py: same
* tests/test_utils.py: same
2017-12-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: use the new get_time_jd function
* ocd/main.py: initialize the times
* tests/test_auto_schedule.py: make sure that all it's still fine
* tests/test_ocd_main.py: test the initialization
2017-12-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: add get_time_{utc,jd} to get time and to allows mocking it.
First part of issue #2242
* ocd/static/ocd.cfg: add the corresponding configuration option
* tests/test_utils.py: test the changes
* tests/conftest.py: add necessary cleanup
2017-12-05 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: if there are saved processes, log errors and clear
the processes dictionary. Resolves #2239
* ocd/run_shot.py: fix docs
* tests/test_auto_schedule.py: test the changes
2017-12-05 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: use pytest >= 3.3 and drop pytest-catchlog
* tox.ini: same
* doc/source/install.rst: update the dependences
2017-12-05 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: add a warning if ``run_get_send_event`` fixture is
called but not used
* tests/data/get_send_event.py: print a message when starting
* tests/test_allow_hetdex.py: increase timeout to allow connection on slower
computer
* tests/test_db_replay.py: same
* tests/test_run_shot.py: same
* tests/test_docker_mysql.py: make sure to trigger a connection error
2017-12-05 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: if a shot is already running, don't run a new one.
Resolves issue #2058
* tests/test_auto_schedule.py: test the changes
2017-12-04 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: dump the configuration object. Part two of #2058
* ocd/run_shot.py: run a shot in a subprocess
* ocd/auto_schedule.py: execute the subprocess
* tests/test_auto_schedule.py: test the changes
* tests/test_config.py: same
* tests/test_run_shot.py: same
2017-12-04 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: move here the function to get a file with optional rotation
* ocd/shots_db.py: use the above functionality
* tests/test_shots_db.py: test the changes
* tests/test_utils.py: same
2017-12-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: use the new ocd.utils.tmpdir function. Resolves issue
#2233
* ocd/static/ocd.cfg: update docs
* ocd/utils.py: modify in order to simplify testing
* tests/conftest.py: make fixture with temporary tmp directory, update other
fixtures
* tests/test_shots_db.py: adapt according to the changes
2017-12-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: add temporary directory for ocd process. First part of issue
#2233
* setup.py: add py dependency
* tests/test_utils.py: test the new function
* tests/conftest.py: add fixture
2017-12-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: add interface for running a shot in a subprocess.
First step of #2058
* ocd/run_shot.py: reorganize variables to avoid repetitions
* tests/test_auto_schedule.py: test the above interface
2017-11-29 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/next_shot into ^/trunk
2017-11-29 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/next_shot
2017-11-29 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: fix JD -> seconds conversion, update log message
2017-11-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: add a function that converts one line from
autoschedule to a dictionary for ocd.run_shot.run. Resolves issue #2079
* tests/test_auto_schedule.py: test it
* tests/data/autoschedule_output.dat: add a file with the output of
autoschedule_main
* ocd/run_shot.py: fix typo
2017-11-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: returns 1 if no obsnum is found
* tests/test_shots_db.py: test it
2017-11-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: Fix the obs_number/observation misunderstanding
* tests/test_run_shot.py: update the tests
* tests/conftest.py: and the corresponding fixtures
* doc/source/ocd_main.rst: update the documentation
2017-11-24 Francesco Montesano <montefra@mpe.mpg.de>
* docker_mysql/README.md: update
2017-11-24 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/install.rst: update dependences
* doc/source/ocd_main.rst: add ocd docker_mysql and update the rest.
Resolves issue #2224
* doc/source/ocd_inputs.rst: move notes from here
* doc/source/ocd_notes.rst: to here and update the mysql information
* doc/source/index.rst: add ocd_notes
* ocd/docker_mysql.py: update and remove [database] override options
* ocd/static/ocd.cfg: udpate
* ocd/utils.py: same
* setup.py: update dependences
2017-11-24 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: add functions to create and fill a vl_obsnum table
* ocd/docker_mysql.py: finish implementing the ocd docker_mysql command.
Resolves issue #2224
* tests/conftest.py: update the fixtures
* tests/test_docker_mysql.py: test the latest changes
* tests/test_shots_db.py: some, plus remove old docker fixtures
* tox.ini: remove unneeded dependences
* tests/data/fill_vl_obsnum.sql: removed, its now in ocd.shots_db
* tests/data/vl_obsnum.sql: same
2017-11-23 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: isolate the code to connect to the mysql database
* doc/source/shot_db.rst: add it to the documentation
* ocd/docker_mysql.py: wait for the mysql server to come to life, normalize
some message. Second part of issue #2224
* tests/conftest.py: update fixtures with the latest implementation stuff
* tests/test_docker_mysql.py: test the changes
2017-11-22 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/docker_mysql.py: add a new docker_mysql command and implement the
docker part of it. First part of issue #2224
* ocd/main.py: add the new subcommand
* ocd/static/ocd.cfg: and the necessary configuration
* setup.py: add new 'docker' dependence
* tests/conftest.py: update fixtures
* tests/test_docker_mysql.py: test the new command
* tests/test_shots_db.py: update to the changes
* doc/source/docker_mysql.rst: add the command to the documentation
* doc/source/index.rst: and to the index
2017-11-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: fix documentation. Resolves issue #2176
* doc/source/shot_db.rst: add the function to the docs
* doc/source/ocd_inputs.rst: add a not on MySQL
2017-11-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add option to avoid inserting new lines in the mysql
database
* ocd/shots_db.py: use it
* tests/test_shots_db.py: test it
2017-11-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: fix query (it seems that all the arguments must be
strings)
* tests/test_shots_db.py: fix the tests to make them work properly; the
function works
2017-11-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: implement the function to retrieve the observation
number. Implements #2176
* tests/conftest.py: add fixture to get time
* tests/test_auto_schedule.py: use them
* tests/test_shots_db.py: fix detail of the test
2017-11-20 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: add option to skip docker tests
* tests/test_shots_db.py: use the skip option, fix test in python2
2017-11-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add mysql options
* tests/conftest.py: same
* tests/test_shots_db.py: finish writing the fixtures and test for the
function to get the next observation number
* tox.ini: add docker-compose dependency
2017-11-17 Francesco Montesano <montefra@mpe.mpg.de>
* docker_mysql/README.md: update
* tests/data/fill_vl_obsnum.sql: temporarily copy from docker_mysql
* tests/data/vl_obsnum.sql: same
* tests/test_shots_db.py: pull up the docker container, create and fill the
necessary table
* tox.ini: add necessary dependences
2017-11-17 Francesco Montesano <montefra@mpe.mpg.de>
* docker_mysql/mysqld.cnf: no need for the configuration file
* docker_mysql/Dockerfile: same
* docker_mysql/docker-compose.yml: added
* docker_mysql/docker-compose_build.yml: added
* docker_mysql/README.md: add docker-compose info, update the readme
2017-11-17 Francesco Montesano <montefra@mpe.mpg.de>
* docker_mysql/Dockerfile: the password is mandatory to create the htopx
user. We are a step closer for solving #2176
* docker_mysql/README.md: add lots of information
* docker_mysql/mysqld.cnf: listen to all addresses (seems necessary)
* docker_mysql/vl_obsnum.sql: create table
* docker_mysql/fill_vl_obsnum.sql: add a row
2017-11-16 Francesco Montesano <montefra@mpe.mpg.de>
* docker_mysql/Dockerfile: create docker file with a custom mysql server
* docker_mysql/README.md: add readme
2017-11-16 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: add pymysql as dependency
* ocd/shots_db.py: declare the function to query the mysql database
* tests/test_shots_db.py: write its test
* ocd/storage.py: fix docs
2017-11-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: make sure that the OCDVault topics are not updated. Fix
bug #2211
* tests/test_storage.py: regression tests
* ocd/states.py: avoid catching spurious KeyError
* ocd/utils.py: clean comment
2017-11-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/db_replay.py: remove options to convert to numbers and bool. Resolves
#2210
* doc/source/ocd_main.rst: update the docs
* ocd/storage.py: aesthetic change
2017-11-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: update docstring
* ocd/storage.py: same
2017-11-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: remove auto move of filter name configuration. Resolves
issue #2175
2017-11-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: remove auto move of shuffle configuration. Resolves issue
#2160
2017-11-13 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/next_shot
2017-11-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: plug ShotRunner
* ocd/auto_schedule.py: fix log message
* ocd/states.py: fix log message
* tests/test_states.py: update the tests
2017-11-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: run autoschedule and log the result
* tests/test_auto_schedule.py: test the changes
2017-11-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: if all is good, run autoschedule. Second part of
#2183
* ocd/errors.py: update error description
* tests/test_auto_schedule.py: test new pieces
2017-11-10 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: add an abstract base class to define the states interface.
Resolves #2209
* ocd/utils.py: add utilities
* tests/test_states.py: test the changes
* tests/test_utils.py: same
* doc/source/states.rst: add the base class to the docs
2017-11-09 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: add a ShotRunner class. Main feature of issue #2183
* tests/test_auto_schedule.py: test the init
2017-11-09 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: move here the fixture that loads the extra config file
* tests/test_auto_schedule.py: from here it comes
* tests/test_run_shot.py: use the fixture
* tests/test_utils.py: same
2017-11-09 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: finish the function to dump the database and run
autoschedule. Resolves issue #2183
* tests/test_auto_schedule.py: test it
* tests/conftest.py: update fixtures
* setup.py, tox.ini: add pytest-freezegun test dependency
2017-11-08 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/auto_schedule.py: create module for all the scheduling code. Start of
issue #2185
* ocd/run_shot.py: move run_autoschedule to ocd.auto_schedule
* tests/test_auto_schedule.py: add the test moduel
* tests/test_run_shot.py: move the run_autoschedule tests to the correct
place
* doc/source/auto_schedule.rst: added
* doc/source/index.rst: add it to the index
2017-11-08 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/next_shot
2017-11-08 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: plug the AzimuthVault. Resolves issue #2196
* tests/test_orchestrator.py: update the tests accordingly
2017-11-08 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: rename MiscVault to AzimuthVault and save setup and
non-setup azimuth values. Issue #2196 is almost done.
* tests/conftest.py: add a mock event for the azimuth
* tests/test_storage.py: update the tests
2017-11-08 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add Container that doesn't insert masked values and a
Vault that uses it. This should solve issue #2196
* tests/test_storage.py: begin testing the changes
2017-11-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add properties to get the lasted added value
* tests/test_storage.py: test them
2017-11-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: convert OCDVault to a metaclass and move the container
initialization to MetrologyVault. Second step of #1296
* tests/test_states.py: update the tests
2017-11-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: fix typo
2017-10-26 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: rename Vault for #2196
2017-10-26 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/next_shot
2017-10-26 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: plug the MetaState. Resolves issue #2184
* tests/test_orchestrator.py: update the test
2017-11-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/db_replay.py: correctly pass command line options
2017-11-07 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: log median metrology values and their reference values.
Resolves issue #2208
* tests/test_states.py: test the changes
2017-11-07 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: log transparency and set illumination to 0.86. Resolves
issue #2207
* tests/test_states.py: update the tests
* tests/test_storage.py: same
2017-11-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: catch exceptions in Orchestrator.run. Resolves issue
#2205
* tests/test_orchestrator.py: test it
2017-11-03 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/db_replay/ into ^/trunk
2017-11-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/db_replay.py: implement the `ocd db_replay` command. Resolves issue
#2198
* ocd/main.py: plug it in
* tests/test_db_replay.py: test it
* tests/conftest.py: adapt fixtures
* doc/source/ocd_main.rst: document the new command
* doc/source/db_replay.rst: and it's implementation
* doc/source/index.rst: add the new section
2017-11-03 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: add fixture to return the ocd main entry point
* tests/test_allow_hetdex.py: use it
* tests/test_config.py: use it
2017-11-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add urls and section in preparation of the 'ocd
db_replay' command. First part of #2198
* ocd/utils.py: initialize it
* tests/test_utils.py: test the changes
2017-10-25 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: add MetaState. Implements issue #2184
* tests/test_states.py: test it
* doc/source/states.rst: document it
* doc/source/_static/meta_state.png: add its representation
* scripts/states_graphs.py: add it to the list of things to create
2017-10-25 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: if a subcommand fails, raise an exception after the
test has run
2017-10-24 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/forced_azimuth into ^/trunk
2017-10-23 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: add "forced_az" to the database and to the input/output
shot files. Solves most of #2056
* tests/conftest.py: add the extra forced_az columns
* tests/data/autoschedule.dat: same
* tests/test_shots_db.py: same
* doc/source/ocd_inputs.rst: update the docs
* doc/source/shot_db.rst: same
2017-10-17 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/next_tcs_lib0.2.0 into ^/trunk
2017-10-17 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: require tcs_lib >= 0.2
* tox.ini: don't use tcs_lib dev version
2017-10-16 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/next_tcs_lib0.2.0
2017-10-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: remove
* ocd/__init__.py: import tcs_lib.tcs_proxy and set the correct module name.
Resolves issue: #2063
* ocd/static/loggers.cfg: update the logger names
* ocd/static/ocd.cfg: set the subsystem names
* tests/conftest.py: update the tests
* tests/test_run_shot.py: same
* tests/test_states.py: same
* tests/test_tcs_proxy.py: same
* doc/source/tcs_proxy.rst: remove
* doc/source/index.rst: remove from the index
* tox.ini: use development version also in the doc
2017-09-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: remove the ZMQServer in favor of the tcs_lib one
* ocd/heart_beat.py: adapt to the API changes
* ocd/run_shot.py: same
* ocd/states.py: same
* tox.ini: use the devel tcs_lib
* tests/conftest.py: same
* tests/data/get_send_event.py: same
* tests/test_utils.py: same
2017-10-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: add a proxy for errors in tcssubsystem
* ocd/run_shot.py: explicitly handle "No active exposure" errors. Resolves
issue #2179
* tests/test_run_shot.py: test the changes
* tests/test_tcs_proxy.py: same
2017-10-11 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: make sure that the arguments of
Guider{1,2}_offset_fiducial are binary strings
2017-10-11 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/conf.py: add external link for issues
* doc/source/ocd_inputs.rst: update the docs
* ocd/shots_db.py: same
* ocd/utils.py: use the external link
2017-10-11 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: copy only the guide probes magnitudes. Resolves issue
#2163
* ocd/static/ocd.cfg: update the magnitude name options to reflect this
* ocd/config.py: temporarily move the magnitude name options to the new
position
* tests/test_config.py: test the changes
* tests/test_run_shot.py: same
2017-10-10 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/filters into ^/trunk
2017-10-10 Francesco Montesano <montefra@mpe.mpg.de>
* tests/test_config.py: import the __future__ to make python2 happy
2017-10-10 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add mechanism to move options between sections and use it
for the "paths" one. First part of issue #2156
* tests/test_config.py: test the functionality
* ocd/static/ocd.cfg: move the shuffle and acam options to run_shot
* ocd/run_shot.py: use the new position
* tests/conftest.py: update the tests
* tests/test_run_shot.py: same
2017-10-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add the "observation" option and fix the meaning of
obs_number. Resolves issue #2157
* doc/source/ocd_main.rst: update the docs
* tests/conftest.py: and the tests
* tests/test_run_shot.py: same
2017-10-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add options in ``[run_shot]`` to map from shuffle to
pas filter names. Resolves issue #2155
* ocd/run_shot.py: check the number of elements and use the mapping
* ocd/main.py: check the number of elements
* tests/test_run_shot.py: update the tests
* doc/Makefile: livehtml use a random port and open the browser
automatically
2017-10-04 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: update to the new TCSSubSystem method names. Resolves
issue #2154
2017-10-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: make sure that all keywords are not unicode in python2
2017-09-29 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: make sure that method names and parameters are correct.
Resolves issue #2148
* tests/test_run_shot.py: update the tests accordingly
2017-09-29 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: convert dictionary values to binary strings and dictionary
keys to strings. Resolves issue #2147
* ocd/run_shot.py: use the conversion
* tests/test_utils.py: test the changes
2017-09-27 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_main.rst: update ``ocd run_shot`` documentation
2017-09-27 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/heartbeat into ^/trunk
2017-09-27 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: move TimeoutError from here
* ocd/errors.py: to here
* ocd/heart_beat.py: add HeartBeatQuery class methods to override the
original ones
* ocd/run_shot.py: use the heart beat to ensure a connection with ``ocd
run``. Resolves issue #2137
* tests/conftest.py: move around fixtures
* tests/test_allow_hetdex.py: same
* tests/test_heart_beat.py: test the new class methods
* tests/test_run_shot.py: test the changes
2017-09-26 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/allow_hetdex.py: use the new ListenAndReply class, resolves issue
#2130
* ocd/utils.py: of course python2 has to miss-behave...
* tests/test_allow_hetdex.py: adapt to the changes
2017-09-26 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/heart_beat.py: change the class name
* ocd/orchestrator.py: plug the HeartBeatHandler into the orchestrator
* tests/test_heart_beat.py: adapt the tests
* tests/test_orchestrator.py: improve the orchestrator test
* tests/test_states.py: rename RunShotState tests to be more descriptive
* tests/conftest.py: move fixtures around
* tests/test_storage.py: same
2017-09-26 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/heart_beat.py: module added. Add class to handle the heartbeat
request. Third part of issue #2130
* ocd/utils.py: move code into the above module
* tests/test_heart_beat.py: test the new class
* tests/conftest.py: move fixtures around
* tests/test_utils.py: same
* doc/source/heart_beat.rst: add new module to the documentation
* doc/source/index.rst: same
2017-09-25 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: add HeartBeat class. Second part of issue #2130
* tests/test_utils.py: test it
2017-09-25 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: add ``from_names`` constructor to allow building
``SendAndListen`` class from the initialized servers and urls
* tests/test_utils.py: test the changes
2017-09-25 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: add a class that sends TCS events in a thread and listen for
other events (typically a reply) in the main process. First part of #2130.
* tests/test_utils.py: test it
* tests/data/get_send_event.py: add script that acts replies to incoming
events
2017-09-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/errors.py: add OCDIndexError
* ocd/utils.py: produce more informative error messages. Solves issue #2132
* tests/test_utils.py: update the tests
2017-09-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/main.py: update the command line options
* ocd/run_shot.py: same
* ocd/static/ocd.cfg: update accordingly
* doc/source/ocd_main.rst: same
* tests/conftest.py: same
* tests/test_allow_hetdex.py: test overriding the configuration
* tests/test_ocd_main.py: same
* tests/test_run_shot.py: same
2017-09-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: fix wrong url, improve descriptions. Resolves issue
#2109
2017-09-19 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/allow_hetdex_state
2017-09-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: add common epilogue
* ocd/allow_hetdex.py: use it and override some more configuration entry
* tests/test_allow_hetdex.py: update according to the changes
* tests/test_utils.py: same
* doc/source/ocd_main.rst: add allow_hetdex to the docs. Resolves issue
#2114
2017-09-18 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_inputs.rst: add a note about ZeroMQ addresses
* doc/source/ocd_main.rst: add placeholder for issue #2114
* ocd/utils.py: fix docs
2017-09-18 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/allow_hetdex.py: use the new ZeroMQ server start functionality
* ocd/static/ocd.cfg: add corresponding command line options
* tests/test_allow_hetdex.py: adapt the tests
* tests/test_utils.py: use test config file
2017-09-18 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add a temporary 1 second sleep in ``ocd run_shot`` to
allow the server setup; fix command line option names.
2017-09-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/main.py: use the new interface to the ZeroMQ server initialization
* ocd/run_shot.py: same
ocd/static/ocd.cfg: update the configuration file
* tests/conftest.py: create the needed server at the beginning of the test
* tests/test_states.py: same
2017-09-15 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: create the servers only the first time they are required
* tests/test_utils.py: test it
2017-09-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: start changing the logic used to load the zmq servers; the
changes break the code and thus the tests. First part of issue #2114
* ocd/static/ocd.cfg: update with the new server names
* ocd/allow_hetdex.py: same
* ocd/main.py: same
* ocd/states.py: same
* tests/conftest.py: same
* tests/test_states.py: same
* tests/test_utils.py: start testing the changes
2017-09-12 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: plug the HetdexAllowedState in the orchestrator.
Resolves #2088 and #2085)
* tests/test_allow_hetdex.py: test it
* tests/conftest.py: expand a fixture to allow testing
* ocd/utils.py: hack init_zmq_servers to be able to test the changes. This
will need to be fixed properly (see bug #2113)
* tests/test_utils.py: update the tests accordingly
2017-09-12 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/allow_hetdex.py: make sure that the timeout is positive to avoid locks
* tests/test_allow_hetdex.py: finish testing the ``ocd allow_hetdex``
command. Resolves issue #2087
2017-09-08 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: move timeout functions here
* tests/conftest.py: use the now functions
* ocd/allow_hetdex.py: create entry point to enable/disable hetdex
* ocd/main.py: add the new subcommand
* ocd/static/ocd.cfg: add ulr necessary to run the new entry point
* tests/test_allow_hetdex.py: partially test the functionality
* tests/test_utils.py: add the new ulr
* doc/source/allow_hetdex.rst: added
* doc/source/index.rst: add to the index
* doc/source/utils.rst: little fix
2017-09-09 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: update the TCSLog mock class log_* signature to respect
the original signature
* ocd/orchestrator.py: use the correct signature
* ocd/run_shot.py: same
* ocd/states.py: same
* tests/test_states.py: update the tests
* tests/test_tcs_proxy.py: same
2017-09-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: add callbacks that send TCS-like events after a
HetdexAllowedState state change. Resolves issue #2086
* tests/test_states.py: test the new mechanism
* tests/conftest.py: move fixtures around
* tests/test_run_shot.py: same
* doc/source/states.rst: update the documentation accordingly
2017-09-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add url of zmq server that streams events from the OCD
main loop. Piece needed by issue #2086
* ocd/utils.py: initialize it
* ocd/main.py: don't listen to the new ZMQ server
* tests/conftest.py: update the tests
* tests/test_utils.py: same
2017-09-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: rename ``ocd_internal`` ZMQ server to
``ocd_run_shot``. Resolves issue #2089
* ocd/utils.py: update accordingly
* ocd/run_shot.py: same
* tests/conftest.py: same
* tests/test_run_shot.py: same
* tests/test_states.py: same
* tests/test_utils.py: same
2017-09-05 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: update the doc
* ocd/utils.py: the ocd servers urls/paths must be explicit
* ocd/static/ocd.cfg: adapt to it
* tests/test_utils.py: adapt to the changes
* tests/conftest.py: make sure ipc connections are used when initializing
servers, add fixture to clear all
* tests/test_ocd_main.py: use the new fixture, to ensure tests success
* tests/test_run_shot.py: make sure that all the tests run through
2017-08-17 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: fix docs
* ocd/states.py: add HetdexAllowedState, first part of issue #2086
* tests/test_states.py: test it
* doc/source/states.rst: add it to the docs
* doc/source/_static/hetdex_allowed_state.png: and add the corresponding
graph
* scripts/states_graphs.py: add the new state
2017-08-17 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/next_pyhetdex into ^/trunk
2017-08-17 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/next_pyhetdex
2017-08-16 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: use pyhetdex=>0.12.0
* tox.ini: don't use pyhetdex devel version
2017-07-31 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: use the file rotator. Resolves issue #2034
* ocd/static/ocd.cfg: add relevant configuration options
* tests/test_shots_db.py: update the tests
* doc/source/ocd_inputs.rst: add output shot file info
2017-08-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: add the metrology state to the orchestrator. Resolves
issue #2081
2017-08-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: handle events, updating the internal state. Resolves issue
#2050
* tests/test_states.py: test the changes
* ocd/static/ocd.cfg: add configuration variables needed by the state
* ocd/storage.py: update docs
2017-08-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: add metrology state, create mixin class for common
behaviour. First part of issue #2050
* scripts/states_graphs.py: add the new state
* tests/test_states.py: test the new state
* doc/source/states.rst: update the documenantion
* doc/source/_static/metrology_state.png: new state graph
2017-08-11 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: create section for run_shot configurations
* ocd/run_shot.py: add ``ocd run_shot`` subcommand and modify the code for
using with the new subcommand. Resolves issue #2075
* ocd/main.py: plug the new subcommand
* tests/test_run_shot.py: test the changes
* tests/test_ocd_main.py: move fixtures around
* tests/conftest.py: same
* doc/source/ocd_main.rst: add the run_shot command
* doc/source/run_shot.rst: add private members
2017-08-10 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: add the RunShotState to the Orchestrator. Resolves
issue @2071
* ocd/states.py: add "topics" attribute to reduce the number of possible
future errors
2017-08-10 Francesco Montesano <montefra@mpe.mpg.de>
* scripts/states_graphs.py: add script to create the graphs of the state
machines
* doc/source/contributions.rst: add a note to the documentation
* doc/source/_static/run_shot_state.png: rename the file
* doc/source/states.rst: same
2017-08-10 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/main.py: initialize the tcs_proxy, the database and the zmq servers.
Resolves issue #2060
* ocd/shots_db.py: fix docs
* ocd/utils.py: same
* setup.py: make pep8 happy
* tests/data/autoschedule.dat: update the file
* tests/data/test_ocd.cfg: update
* tests/test_run_shot.py: same
* tests/test_config.py: same
* tests/test_ocd_main.py: tweak the configuration
2017-08-09 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: use auto_subscribe config entry. Resolves issue #2076
* tests/test_orchestrator.py: adapt to the changes
* setup.py: forgot to remove the tcs_replay entry point, ups!
2017-08-09 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add possibility to override the configuration entries with
a Namespace. Resolves issue #2073
* ocd/static/ocd.cfg: add the entries from the command line
* tests/test_config.py: test it
* ocd/main.py: make the command line argument override the configuration
* ocd/states.py: adapt the new load_config signature
* ocd/storage.py: same
* tests/conftest.py: same
* doc/source/ocd_main.rst: update the documentation with the new command
line arguments
2017-08-08 Francesco Montesano <montefra@mpe.mpg.de>
* tests/conftest.py: add a fixture to add one row to the database
* tests/test_states.py: the integration test now works
2017-08-08 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: add on_enter_idle callback to allow updating the database
when the ``idle`` state is reached. Implements issue #2072
* ocd/tcs_proxy.py: fix documentation
* tests/test_states.py: test the changes
* tests/conftest.py: move fixtures around
* tests/test_shots_db.py: same
2017-08-08 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: rename state machine, add guards against unknown exposure
numbers. Resolves issue #2048
* tests/test_states.py: update the tests
* doc/source/states.rst: update the docs
* tests/conftest.py: create fixture to run a shot in a thread, move fixtures
around
* tests/test_run_shot.py: move fixtures around
2017-08-07 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/states.py: add methods to handle events. Issue #2048 on its way to
finish
* tests/test_states.py: test the new methods
2017-08-07 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: use an enumerator-like to track the execution status
instead of two boolean fields. Second part of issue #2048
* tests/test_run_shot.py: update the tests
* doc/source/run_shot.rst: adapt the documentation
2017-08-04 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: add ``transitions`` as dependency
* ocd/states.py: implements the state and transitions that tracks the
running shot. First part of issue #2048.
* tests/test_states.py: test the class
* tests/conftest.py: move around fixtures
* tests/test_run_shot.py: same
* doc/source/_static/run_shot_graph.png: add graph representing the model
* doc/source/states.rst: add the documentation
* doc/source/index.rst: add it to the index
2017-08-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: use the internal ZMQServer to send execution information.
Resolves issue #2052
* tests/test_run_shot.py: test the changes
* tests/test_utils.py: move fixtures
* tests/conftest.py: same
2017-08-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: add functionality to initialize zmq servers and get them.
Resolves issue #2059
* ocd/static/ocd.cfg: add the corresponding configuration entries
* tests/test_utils.py: test the new implementation
* doc/source/conf.py: add tcs_lib intersphinx
2017-08-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: make priority integer and update the documentation
accordingly. Resolves issue #2054
* doc/source/ocd_inputs.rst: update docs
2017-08-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: add pas subsystem
* ocd/static/ocd.cfg: add corresponding configuration
* ocd/static/loggers.cfg: add corresponding logger
* ocd/run_shot.py: use pas to set object name and magnitude. Resolves issue
#933
* tests/conftest.py: update accordingly
* tests/test_run_shot.py: same
* tests/test_tcs_proxy.py: same
2017-07-31 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: use "fallback" when getting configuration option.
Resolves issue #2044
2017-07-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: copy also the loggers.cfg
* ocd/utils.py: move the master config file name here
* tests/test_config.py: update the tests
* doc/source/ocd_main.rst: and the docs
2017-07-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: use pyhetdex db_helpers. Resolves issue #2033
* tests/test_shots_db.py: update the tests
2017-07-28 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/trunk into ^/branches/next_pyhetdex
2017-06-24 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_main.rst: update documentation for ``ocd config copy``
2017-06-23 Francesco Montesano <montefra@mpe.mpg.de>
* MANIFEST.in: add the ocd/static directory
* ocd/config.py: use pyhetdex.tools.io_helpers.copy_resources. Resolves
issue #1965
* ocd/utils.py: add static dir as variable
* tests/test_config.py: replace copying tests with a single integration test
2017-06-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: don't use readfp
* tox.ini: use devel pyhetdex
2017-07-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add {track_initial}. Resolves issue #2042
* ocd/static/ocd.cfg: update the docstring
2017-07-28 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_inputs.rst: update documentation; resolves issue #1993
2017-07-27 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add function to run autoschedule and parse the output.
Implements issue #1993
* ocd/static/ocd.cfg: add the options necessary to run autoschedule
* ocd/config.py: load the os.environ as defaults
* ocd/errors.py: add custom error
* tests/data/autoschedule.dat: added for testing purposes
* tests/conftest.py: add corresponding fixture
* tests/test_run_shot.py: test the changes
* tox.ini: import CUREBIN
2017-07-26 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: make the parsing of the shot file stricter to force the
shot id to be string. Resolves issue #2036
* ocd/static/ocd.cfg: remove the shot list header option
* tests/test_shots_db.py: adapt the tests
* doc/source/ocd_inputs.rst: adapt the documentation
2017-07-25 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_inputs.rst: document the input files
* doc/source/index.rst: add it to the index
* doc/source/ocd_main.rst: add reference
* ocd/shots_db.py: fix some docstring
2017-07-25 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/errors.py: add new exceptions
* ocd/shots_db.py: add function to update a Shots database entry; make sure
to use connect; fourth part of issue #2022
* tests/test_shots_db.py: test it
* doc/source/shot_db.rst: reorder the documentation
2017-07-24 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: add functionality to write a new shot file from the
database entries
* ocd/static/ocd.cfg: add new configuration entries
* tests/test_shots_db.py: test the changes
2017-07-21 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: add functionality to load a shot file into the database.
Second part of issue #2022
* ocd/static/ocd.cfg: add relevant configuration options
* tests/test_shots_db.py: test the changes
* ocd/config.py: fix docstring
* ocd/storage.py: same
* setup.py: add astropy
* doc/source/conf.py: same
2017-07-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: update the transparency container to the latest
information
* tests/test_storage.py: adapt the tests
2017-07-20 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/shots_db.py: update the database table to reflect the latest version
of autoschedule_main
* tests/test_shots_db.py: use parameter in test
2017-07-19 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: add peewee as dependency
* ocd/shots_db.py: setup the database and the model. Start of issue #2022
* ocd/static/ocd.cfg: add database configuration entries
* tests/test_shots_db.py: test test test
* doc/source/conf.py: add peewee
* doc/source/install.rst: same
* doc/source/shot_db.rst: add the code documentation
* doc/source/index.rst: same
2017-07-18 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: plug the transparency container. Almost resolves issue
#2008
* ocd/static/ocd.cfg: fix interpolation
* tests/test_storage.py: adapt the tests
2017-07-18 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add class to store transparency and reformat a bit the
code. First part of issue #2008
* tests/test_storage.py: test the changes
* doc/source/conf.py: use mathjax
2017-07-17 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: add type of photometry to store
* ocd/storage.py: use it. Resolves issue #2021
* tests/test_storage.py: adapt the tests
2017-07-17 Francesco Montesano <montefra@mpe.mpg.de>
* : merge ^/branches/tcs_lib_dep/ into ^/trunk
2017-07-17 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/index.rst: improve documentation
* doc/source/authors.rst: add
* doc/source/changelog.rst: same
* doc/source/contributions.rst: same
* doc/source/install.rst: same
* doc/source/licence.rst: same
* doc/source/todos.rst: same
* AUTHORS: update
2017-07-17 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: introduce tcd_lib as dependency
* doc/source/index.rst: remove the tcs_lib documentation
* doc/source/string_helpers.rst: same
* doc/source/tcs_{errors,event,replay,server}.rst: same
* ocd/config.py: adjust the imports
* ocd/main.py: same
* ocd/orchestrator.py: same
* tests/conftest.py: same
* tests/test_orchestrator.py: same
* tests/test_storage.py: same
* ocd/tcs_lib: remove it
* tests/test_tcs_lib: same
2017-07-17 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: cover all the TCSLog.log_* proxy methods. Resolves issue
#2014
* tests/test_tcs_proxy.py: extend the tests
2017-07-14 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: check the tcs commands. Resolves issue #1991
* tests/data/shuffle_out.cfg: add equinox to the test configuration file
* ocd/utils.py: add function to cast some dictionary values
* tests/test_utils.py: test it
2017-07-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: update documentation and make public two init functions
* tests/test_tcs_proxy.py: update the tests
2017-07-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: add a mock response that either returns the input
parameters or the key. Resolves issue #1995
* tests/test_tcs_proxy.py: test the changes
2017-07-13 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: the code to run the shot is almost ready and Issue #1991
almost solved
* ocd/static/ocd.cfg: add necessary command line options
* tests/test_run_shot.py: test the changes
2017-07-12 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: convert the log call functionality to a class to allow
mocking the response returned by the TCSSubSystem methods
* tests/test_tcs_proxy.py: update to the changes
* doc/source/tcs_proxy.rst: same
2017-07-12 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: pass all the information about the shot with a dictionary
* tests/test_run_shot.py: update according to the changes
2017-07-11 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: add first part of the machinery to run the exposures
* ocd/static/ocd.cfg: add relevant configuration entries
* tests/test_run_shot.py: test changes
2017-07-10 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: add virus and pfip
* ocd/static/ocd.cfg: add their URLS
* ocd/static/loggers.cfg: add their loggers
* tests/conftest.py: adapt the tests
* tests/test_tcs_proxy.py: same
2017-07-10 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: make some function future proofed
* tests/test_run_shot.py: update the tests
2017-07-10 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: setup the telescope
* tests/test_run_shot.py: test it
* tests/data/shuffle_out.cfg: update the sample shuffle configuration file
2017-07-10 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: initialize tcs subsystems
* ocd/static/ocd.cfg: add tcs url and mock configuration path
* ocd/static/loggers.cfg: add mock tcs subsystems logger
* tests/test_tcs_proxy.py: test the changes
* tests/conftest.py: update fixtures
2017-07-07 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: copy ACAM image to a destination. Second part of issue
#1991
* ocd/static/ocd.cfg: add necessary keys, update comments
* tests/test_run_shot.py: test the changes
* tests/data/shuffle_out.cfg: add test
* tests/data/test.jpg: add empty file to use in tests
* tests/conftest.py: move fixtures around
* tests/test_tcs_proxy.py: same
2017-07-07 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/run_shot.py: log loading of shuffle config, adjust keywords
* tests/data/shuffle_out.cfg: added
* tests/conftest.py: add fixture to return the above file
* tests/test_run_shot.py: integration test of the run function
2017-07-07 Francesco Montesano <montefra@mpe.mpg.de>
* .: ignore build and dist
* MANIFEST.in: add static dir
2017-07-07 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/loggers.cfg: added
* tests/test_tcs_proxy.py: check that the loggers.cfg can be loaded
* ocd/tcs_proxy.py: typo fixed
* MANIFEST.in: add the configuration files
2017-07-07 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: add a generic mock class that logs calls. Resolves
issue #1995
* tests/test_tcs_proxy.py: test the changes
2017-07-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_proxy.py: added. First part of issue #1995
* ocd/static/ocd.cfg: add configuration entries for TCSLog
* tests/test_tcs_proxy.py: test the new module
* doc/source/tcs_proxy.rst: add documentation
* doc/source/index.rst: add to the index
2017-07-03 Francesco Montesano <montefra@mpe.mpg.de>
* setup.py: add configparser dependency
* ocd/run_shot.py: load and check shuffle output file. First part of issue
#1991
* tests/test_run_shot.py: test it
* ocd/errors.py: add custom error
* ocd/static/ocd.cfg: add entry with the shuffle output directory
* ocd/utils.py: add isclose function
* tests/test_utils.py: test it
* doc/source/run_shot.rst: add new module
* doc/source/index.rst: add to the index
2017-06-06 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/server.py: add option cast variably types when replaying the database
* ocd/tcs_lib/tcs_replay.py: add the corresponding command line options
* tests/test_tcs_lib/test_server.py: test the changes
* doc/source/tcs_replay.rst: update documentation
2017-06-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/server.py: add option cast variably types when replaying the database
* ocd/tcs_lib/tcs_replay.py: add the corresponding command line options
* tests/test_tcs_lib/test_server.py: test the changes
2017-06-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add function to cast configuration entries to respecting
``None``
* tests/test_config.py: test it
* ocd/storage.py: use the maxlen and delta_timestamp from the configuration
when initializing the container
* tests/test_storage.py: adapt the tests
2017-06-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: begin adding values (first part of issue #1975)
* ocd/config.py: improve documentation and add support for empty values
* ocd/orchestrator.py: add the configuration file
* ocd/main.py: pass the configuration to the orchestrator
* ocd/storage.py: fix docstring
* tests/data/test_ocd.cfg: update the test file
* tests/conftest.py: add configuration object fixture
* tests/test_config.py: update tests
* tests/test_orchestrator.py: same
* doc/source/conf.py: add pyhetdex intersphinx
2017-06-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add fixed_skymag and kron_skymag containers for guider 1
and 2. Resolves issue #1967
* tests/test_storage.py: test the changes
2017-06-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: add optional argument to avoid subscribing to topics
in the Orchestrator class. Resolves issue #1966
* ocd/main.py: add the corresponding command line argument
* tests/test_orchestrator.py: test the changes
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: resolves issue #1971
* tests/test_storage.py: test the changes
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* tests/test_storage.py: finish testing and resolves Issue #1970
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: homogenize the masked and non-masked properties of
@Containers@. Resolves issue #1972
* tests/test_storage.py: test the changes
* pytest.ini: ignore RuntimeWarnings (mean/median/std of empty lists)
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: OCDVault: add function to mask fwhm values (fourth part of
issue #1970). Need to fix #1972 before being able to test it properly.
* tests/test_storage.py: add some test for the filtering
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: add factory functions for comparison operations (third part
of issue #1970)
* ocd/tcs_lib/tcs_event.py: fix doctest
* ocd/storage.py: same
* ocd/tcs_lib/replay.py.bkp: rename to avoid loading it during tests
* pytest.ini: enable doctest
* doc/source/utils.rst: added
* doc/source/index.rst: above added to the index
2017-05-31 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add support for deciding whether to mask the value of an
event (second part of the issue #1970)
* tests/test_storage.py: test it
2017-05-31 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add mask and masked mean/median/std (first part of issue
#1970)
* tests/test_storage.py: test it
* doc/source/conf.py: add numpy intersphinx
2017-05-29 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_main.rst: update the documentation. Resolves issue #1950
2017-05-29 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add "config copy" subcommand (completes issue #1950)
* tests/test_config.py: test the copying of the configuration file
* ocd/main.py: add "run" subcommand (damn python2)
* tests/test_ocd_main.py: update the tests
2017-05-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add subcommands for the configuration; need to implement
them
* ocd/main.py: use it
2017-05-24 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: configuration file argument and function to load it; first
part of issue #1950
* ocd/main.py: use them
* ocd/static/ocd.cfg: add a placeholder for the configuration file
* ocd/utils.py: add name of the default config file
* setup.py: add pyhetdex as dependency
* tests/test_config.py: test the new module
* tests/data/test_ocd.cfg: test config file
* doc/source/config.rst: add the new module to the documentation
* doc/source/index.rst: add it
2017-05-23 Francesco Montesano <montefra@mpe.mpg.de>
* tests/test_ocd_main.py: add basic test of the main function
* tests/conftest.py: move around fixtures
* tests/test_tcs_lib/conftest.py: same
* doc/source/ocd_main.rst: update documentation
* tox.ini: fail if test coverage less than 100%
2017-05-23 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: initialize and use the OCDVault in the Orchestrator.
Resolves issue #1947
* ocd/main.py: add info about -t/--topics; convert times to floats
* tests/test_orchestrator.py: test the orchestrator
* pytest.ini: add integration marker
2017-05-22 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add a class to act as a proxy for Containers. Resolves
issue #1941
* tests/test_storage.py: test it
2017-05-22 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_event.py: add option to convert data and wire times to
float. Resolves issue #1945
* tests/test_tcs_lib/test_tcs_event.py: test it
* ocd/orchestrator.py: use for loop on event listener
* ocd/tcs_lib/server.py: invert data and wire times
2017-05-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_event.py: add iterator support to the TCSEvent; update
doc string; resolves issue #1944
* tests/test_tcs_lib/test_tcs_event.py: test the for loop
* doc/source/tcs_event.rst: add special methods in the documentation
2017-05-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: pass the tcs event listener in the init
* ocd/main.py: initialize the tcs event listener here
* tests/test_ocd_main.py: add stub
* tests/test_orchestrator.py: same
* tox.ini: raise the coverage failure limit to 98%
* doc/source/ocd_main.rst: added
* doc/source/orchestrator.rst: same
* doc/source/index.rst: add them
* doc/source/storage.rst: some white spaces didn't behave
2017-05-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: create subclass with a method to handle an event
* tests/test_storage.py: test it
2017-05-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add properties to return mean, median and stddev
* setup.py: add numpy as dependency
* tests/test_storage.py
2017-05-18 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: make sure that delta_timestamp is a positive number
* ocd/errors.py: add OCD exceptions
* tests/test_storage.py: test the changes
* doc/source/errors.rst: added
* doc/source/index.rst: update
* doc/source/storage.rst: little fix
2017-05-17 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add a storage class, starting implementation of issue #1939
* tests/test_storage.py: test the first part of the class
* doc/source/storage.rst: add to the documentation
* doc/source/index.rst: add to the index
2017-05-16 Daniel Farrow <dfarrow@mpe.mpg.de>
Trivial grammar corrections:
* doc/source/tcs_replay.rst
* ocd/main.py
2017-05-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/server.py: fix query to create TCS events
* tests/data/TCS_test.db: update it to make sure the query works properly
* ocd/tcs_lib/tcs_event.py: don't use setsockopt_string
* tests/test_tcs_lib/test_tcs_event.py: update the tests
2017-05-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_event.py: add a close method
* tests/test_tcs_lib/conftest.py: add fixture to run a function in a timeout
context manager
* tests/test_tcs_lib/test_tcs_replay.py: use the fixture
* tests/test_tcs_lib/test_tcs_event.py: test tcs_event module
2017-05-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_event.py: renamed from tcsevent.py; add documentation and
subscribe to topics on zmq to avid further filtering
* ocd/tcs_lib/__init__.py: update the import accordingly
* ocd/main.py: add topics
* ocd/orchestrator.py: pass to the TCSEvent
* tests/test_tcs_lib/conftest.py: add fixture to get an unused port
* tests/test_tcs_lib/test_server.py: use the fixture
* tests/test_tcs_lib/test_tcs_replay.py: same
* doc/source/_templates/version.html: added
* doc/source/conf.py: add a sensible side bar
* doc/source/tcs_event.rst: added
* doc/source/index.rst: add it
* doc/source/string_helpers.rst: update
* doc/source/tcs_errors.rst: update
* doc/source/zmq_server.rst: update
2017-05-05 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/main.py: the ocd entry point goes here; command line added
* ocd/__init__.py: move the main away
* ocd/orchestrator.py: pass the url from the command line to the TCSEvent
* ocd/tcs_lib/__init__.py: expose TCSEvent
* ocd/tcs_lib/replay.py: use parent parsers
* ocd/tcs_lib/tcs_replay.py: remove some more parts reimplemented
* ocd/tcs_lib/tcsevent.py: return strings
* ocd/utils.py: add parent parser
* setup.py: adapt the ocd entry point
2017-05-05 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_replay.py: create the tcs_replay entry point
* setup.py: add the executable
* ocd/tcs_lib/errors.py: added
* ocd/tcs_lib/server.py: move the exception definition to errors
* ocd/tcs_lib/replay.py: remove the parts reimplemented
* doc/source/tcs_replay.rst: added
* doc/source/tcs_errors.rst: added
* doc/source/index.rst: add to the index
* tests/test_tcs_lib/conftest.py: add tcs_lib conftest
* tests/test_tcs_lib/test_tcs_replay.py: test the main
* tests/test_tcs_lib/test_server.py: use the new fixtures
2017-05-05 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/server.py: add iterator class to serve a mock event forever
* tests/test_tcs_lib/test_server.py: test it
2017-05-04 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/server.py: add iterable class to replay the database
* tests/test_tcs_lib/test_server.py: test it
* tests/conftest.py: add some fixture
* tests/data/TCS_test.db: added
* doc/source/conf.py: add pyzmq intersphinx
* doc/source/zmq_server.rst: add methods to the documentation
2017-05-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib: created and move here ocd/utils/*
* ocd/tcsevent.py: move it into ocd/tcs_lib
* ocd/utils: removed
* ocd/orchestrator.py: update imports
* pytest.ini: fix paths accordingly
* setup.cfg: same
* setup.py: make pre version
* doc/source/index.rst: rename the section according to the above changes
* doc/source/string_helpers.rst: update
* doc/source/zmq_server.rst: same
* tests/test_tcs_lib: move here test_utils
2017-05-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils/string_helpers.py: added
* ocd/utils/server.py: use it
* setup.py: add six as dependency
* doc/source/string_helpers.rst: added
* doc/source/index.rst: add it to the index
* tests/test_utils/test_string_helpers.py: add
* tests/test_utils/test_server.py: update tests
2017-05-02 Francesco Montesano <montefra@mpe.mpg.de>
* svn:ignore: add new files and paths
* ocd/utils/__init__.py: added
* ocd/utils/replay.py: temporarily added; it will removed when we are done
porting it
* ocd/utils/server.py: first implementation of the servers of issue #1922
* doc/Makefile: fix livehtml
* doc/source/conf.py: add pyzmq intersphinx
* doc/source/index.rst: update
* doc/source/zmq_server.rst: add
* pytest.ini: added
* setup.cfg: add coverage conf
* tests/conftest.py: added
* tests/test_utils: added
* tests/test_utils/test_server.py: simple test of the server
* tox.ini: added
2017-04-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: added
* ocd/__init__.py: initialize and start the orchestrator
* ocd/tcsevent.py: add the future
* setup.py: add zmq as dependency
2017-04-27 Francesco Montesano <montefra@mpe.mpg.de>
* svn:ignore: added
* AUTHORS: same
* doc: added
* LICENCE: same
* MANIFEST.in: same
* ReleaseNotes.md: same
* ocd/__init__.py: create fake entry point
* setup.cfg: added
* setup.py: added
2017-04-25 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcsevent.py: some edit, remove topic registration from the next()
method
2017-04-25 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/__init__.py: added
* ocd/tcsevent.py: added
2015-06-27 Francesco Montesano <montefra@mpe.mpg.de>
* first import
2017-06-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add function to cast configuration entries to respecting
``None``
* tests/test_config.py: test it
* ocd/storage.py: use the maxlen and delta_timestamp from the configuration
when initializing the container
* tests/test_storage.py: adapt the tests
2017-06-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/static/ocd.cfg: begin adding values (first part of issue #1975)
* ocd/config.py: improve documentation and add support for empty values
* ocd/orchestrator.py: add the configuration file
* ocd/main.py: pass the configuration to the orchestrator
* ocd/storage.py: fix docstring
* tests/data/test_ocd.cfg: update the test file
* tests/conftest.py: add configuration object fixture
* tests/test_config.py: update tests
* tests/test_orchestrator.py: same
* doc/source/conf.py: add pyhetdex intersphinx
2017-06-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add fixed_skymag and kron_skymag containers for guider 1
and 2. Resolves issue #1967
* tests/test_storage.py: test the changes
2017-06-02 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: add optional argument to avoid subscribing to topics
in the Orchestrator class. Resolves issue #1966
* ocd/main.py: add the corresponding command line argument
* tests/test_orchestrator.py: test the changes
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: resolves issue #1971
* tests/test_storage.py: test the changes
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* tests/test_storage.py: finish testing and resolves Issue #1970
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: homogenize the masked and non-masked properties of
@Containers@. Resolves issue #1972
* tests/test_storage.py: test the changes
* pytest.ini: ignore RuntimeWarnings (mean/median/std of empty lists)
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: OCDVault: add function to mask fwhm values (fourth part of
issue #1970). Need to fix #1972 before being able to test it properly.
* tests/test_storage.py: add some test for the filtering
2017-06-01 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils.py: add factory functions for comparison operations (third part
of issue #1970)
* ocd/tcs_lib/tcs_event.py: fix doctest
* ocd/storage.py: same
* ocd/tcs_lib/replay.py.bkp: rename to avoid loading it during tests
* pytest.ini: enable doctest
* doc/source/utils.rst: added
* doc/source/index.rst: above added to the index
2017-05-31 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add support for deciding whether to mask the value of an
event (second part of the issue #1970)
* tests/test_storage.py: test it
2017-05-31 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add mask and masked mean/median/std (first part of issue
#1970)
* tests/test_storage.py: test it
* doc/source/conf.py: add numpy intersphinx
2017-05-29 Francesco Montesano <montefra@mpe.mpg.de>
* doc/source/ocd_main.rst: update the documentation. Resolves issue #1950
2017-05-29 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add "config copy" subcommand (completes issue #1950)
* tests/test_config.py: test the copying of the configuration file
* ocd/main.py: add "run" subcommand (damn python2)
* tests/test_ocd_main.py: update the tests
2017-05-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: add subcommands for the configuration; need to implement
them
* ocd/main.py: use it
2017-05-24 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/config.py: configuration file argument and function to load it; first
part of issue #1950
* ocd/main.py: use them
* ocd/static/ocd.cfg: add a placeholder for the configuration file
* ocd/utils.py: add name of the default config file
* setup.py: add pyhetdex as dependency
* tests/test_config.py: test the new module
* tests/data/test_ocd.cfg: test config file
* doc/source/config.rst: add the new module to the documentation
* doc/source/index.rst: add it
2017-05-23 Francesco Montesano <montefra@mpe.mpg.de>
* tests/test_ocd_main.py: add basic test of the main function
* tests/conftest.py: move around fixtures
* tests/test_tcs_lib/conftest.py: same
* doc/source/ocd_main.rst: update documentation
* tox.ini: fail if test coverage less than 100%
2017-05-23 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: initialize and use the OCDVault in the Orchestrator.
Resolves issue #1947
* ocd/main.py: add info about -t/--topics; convert times to floats
* tests/test_orchestrator.py: test the orchestrator
* pytest.ini: add integration marker
2017-05-22 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add a class to act as a proxy for Containers. Resolves
issue #1941
* tests/test_storage.py: test it
2017-05-22 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_event.py: add option to convert data and wire times to
float. Resolves issue #1945
* tests/test_tcs_lib/test_tcs_event.py: test it
* ocd/orchestrator.py: use for loop on event listener
* ocd/tcs_lib/server.py: invert data and wire times
2017-05-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_event.py: add iterator support to the TCSEvent; update
doc string; resolves issue #1944
* tests/test_tcs_lib/test_tcs_event.py: test the for loop
* doc/source/tcs_event.rst: add special methods in the documentation
2017-05-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: pass the tcs event listener in the init
* ocd/main.py: initialize the tcs event listener here
* tests/test_ocd_main.py: add stub
* tests/test_orchestrator.py: same
* tox.ini: raise the coverage failure limit to 98%
* doc/source/ocd_main.rst: added
* doc/source/orchestrator.rst: same
* doc/source/index.rst: add them
* doc/source/storage.rst: some white spaces didn't behave
2017-05-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: create subclass with a method to handle an event
* tests/test_storage.py: test it
2017-05-19 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add properties to return mean, median and stddev
* setup.py: add numpy as dependency
* tests/test_storage.py
2017-05-18 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: make sure that delta_timestamp is a positive number
* ocd/errors.py: add OCD exceptions
* tests/test_storage.py: test the changes
* doc/source/errors.rst: added
* doc/source/index.rst: update
* doc/source/storage.rst: little fix
2017-05-17 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/storage.py: add a storage class, starting implementation of issue #1939
* tests/test_storage.py: test the first part of the class
* doc/source/storage.rst: add to the documentation
* doc/source/index.rst: add to the index
2017-05-16 Daniel Farrow <dfarrow@mpe.mpg.de>
Trivial grammar corrections:
* doc/source/tcs_replay.rst
* ocd/main.py
2017-05-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/server.py: fix query to create TCS events
* tests/data/TCS_test.db: update it to make sure the query works properly
* ocd/tcs_lib/tcs_event.py: don't use setsockopt_string
* tests/test_tcs_lib/test_tcs_event.py: update the tests
2017-05-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_event.py: add a close method
* tests/test_tcs_lib/conftest.py: add fixture to run a function in a timeout
context manager
* tests/test_tcs_lib/test_tcs_replay.py: use the fixture
* tests/test_tcs_lib/test_tcs_event.py: test tcs_event module
2017-05-16 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_event.py: renamed from tcsevent.py; add documentation and
subscribe to topics on zmq to avid further filtering
* ocd/tcs_lib/__init__.py: update the import accordingly
* ocd/main.py: add topics
* ocd/orchestrator.py: pass to the TCSEvent
* tests/test_tcs_lib/conftest.py: add fixture to get an unused port
* tests/test_tcs_lib/test_server.py: use the fixture
* tests/test_tcs_lib/test_tcs_replay.py: same
* doc/source/_templates/version.html: added
* doc/source/conf.py: add a sensible side bar
* doc/source/tcs_event.rst: added
* doc/source/index.rst: add it
* doc/source/string_helpers.rst: update
* doc/source/tcs_errors.rst: update
* doc/source/zmq_server.rst: update
2017-05-05 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/main.py: the ocd entry point goes here; command line added
* ocd/__init__.py: move the main away
* ocd/orchestrator.py: pass the url from the command line to the TCSEvent
* ocd/tcs_lib/__init__.py: expose TCSEvent
* ocd/tcs_lib/replay.py: use parent parsers
* ocd/tcs_lib/tcs_replay.py: remove some more parts reimplemented
* ocd/tcs_lib/tcsevent.py: return strings
* ocd/utils.py: add parent parser
* setup.py: adapt the ocd entry point
2017-05-05 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/tcs_replay.py: create the tcs_replay entry point
* setup.py: add the executable
* ocd/tcs_lib/errors.py: added
* ocd/tcs_lib/server.py: move the exception definition to errors
* ocd/tcs_lib/replay.py: remove the parts reimplemented
* doc/source/tcs_replay.rst: added
* doc/source/tcs_errors.rst: added
* doc/source/index.rst: add to the index
* tests/test_tcs_lib/conftest.py: add tcs_lib conftest
* tests/test_tcs_lib/test_tcs_replay.py: test the main
* tests/test_tcs_lib/test_server.py: use the new fixtures
2017-05-05 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/server.py: add iterator class to serve a mock event forever
* tests/test_tcs_lib/test_server.py: test it
2017-05-04 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib/server.py: add iterable class to replay the database
* tests/test_tcs_lib/test_server.py: test it
* tests/conftest.py: add some fixture
* tests/data/TCS_test.db: added
* doc/source/conf.py: add pyzmq intersphinx
* doc/source/zmq_server.rst: add methods to the documentation
2017-05-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcs_lib: created and move here ocd/utils/*
* ocd/tcsevent.py: move it into ocd/tcs_lib
* ocd/utils: removed
* ocd/orchestrator.py: update imports
* pytest.ini: fix paths accordingly
* setup.cfg: same
* setup.py: make pre version
* doc/source/index.rst: rename the section according to the above changes
* doc/source/string_helpers.rst: update
* doc/source/zmq_server.rst: same
* tests/test_tcs_lib: move here test_utils
2017-05-03 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/utils/string_helpers.py: added
* ocd/utils/server.py: use it
* setup.py: add six as dependency
* doc/source/string_helpers.rst: added
* doc/source/index.rst: add it to the index
* tests/test_utils/test_string_helpers.py: add
* tests/test_utils/test_server.py: update tests
2017-05-02 Francesco Montesano <montefra@mpe.mpg.de>
* svn:ignore: add new files and paths
* ocd/utils/__init__.py: added
* ocd/utils/replay.py: temporarily added; it will removed when we are done
porting it
* ocd/utils/server.py: first implementation of the servers of issue #1922
* doc/Makefile: fix livehtml
* doc/source/conf.py: add pyzmq intersphinx
* doc/source/index.rst: update
* doc/source/zmq_server.rst: add
* pytest.ini: added
* setup.cfg: add coverage conf
* tests/conftest.py: added
* tests/test_utils: added
* tests/test_utils/test_server.py: simple test of the server
* tox.ini: added
2017-04-28 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/orchestrator.py: added
* ocd/__init__.py: initialize and start the orchestrator
* ocd/tcsevent.py: add the future
* setup.py: add zmq as dependency
2017-04-27 Francesco Montesano <montefra@mpe.mpg.de>
* svn:ignore: added
* AUTHORS: same
* doc: added
* LICENCE: same
* MANIFEST.in: same
* ReleaseNotes.md: same
* ocd/__init__.py: create fake entry point
* setup.cfg: added
* setup.py: added
2017-04-25 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/tcsevent.py: some edit, remove topic registration from the next()
method
2017-04-25 Francesco Montesano <montefra@mpe.mpg.de>
* ocd/__init__.py: added
* ocd/tcsevent.py: added
2015-06-27 Francesco Montesano <montefra@mpe.mpg.de>
* first import