diff --git a/README.md b/README.md index 89e90f7..7f35464 100644 --- a/README.md +++ b/README.md @@ -62,14 +62,21 @@ PROJECT STRUCTURE: -------------------------------------------------------------------------------------------- LAST VERSION -Date: 14/05/2018 +Date: 9/10/18 By: E. Pallier -Version: 0.20 -- The dependencies of the project are all up-to-date and in adequacy with Django 2.0. -- Django have been updated to Django 2. -- Creation of an interactive dashboard as the home page of PYROS (still work-in-progress). - -Major current version (0.20): https://projects.irap.omp.eu/versions/158 +VERSION: 0.18.010 +- new versionning plan : M.YY.VVV.B + - M = Major version number + - YY = Year + - VVV = Minor version number + - B = Bugfix number +- new devices_channel/ folder containing the new DeviceControllerAbstract and ClientChannelAbstract classes (independant from pyros for the moment, but will soon be integrated) +- new src/utils/celme (celestial mecanics) library from Alain Klotz (more and more used inside pyros) + +Major current version (0.18): +- TECHNICAL DOC: tinyurl/pyros-colibri +- DEV PLAN: https://docs.google.com/spreadsheets/d/1Gy6c-9fhUDBx5Bc6YrcGvfgP-HukWdhUh8oT11_y88g/edit#gid=664458270 +- (OLD, TO BE UPDATED) https://projects.irap.omp.eu/versions/158 ROADMAP: https://projects.irap.omp.eu/projects/pyros/roadmap -------------------------------------------------------------------------------------------- @@ -82,7 +89,7 @@ MAIN CHANGES (MILESTONES): Full list of commits: https://gitlab.irap.omp.eu/epallier/pyros/commits/master -14/05/18 Version 0.20 (Q. Durand) +14/05/18 Version 0.18.001 (Q. Durand) Update all dependencies, update to django 2 and work in progress on the dashboard 23/03/18 Version 0.16.11 (E. Pallier) diff --git a/devices_channel/README.md b/devices_channel/README.md new file mode 100644 index 0000000..16fce19 --- /dev/null +++ b/devices_channel/README.md @@ -0,0 +1,321 @@ + +VERSION: 0.18.001 + +Date: 9/10/18 + +By: epallier@irap.omp.eu + +See section "DONE" below for version history + +******************************************************************************************** +1) TEST + +Pour lancer les TESTS: +cd test/ +./test_client_gemini.py + +Ca doit se terminer par quelque chose comme: +Ran 2 tests in 0.013s +OK + +Là, il faut arrêter avec CTRL-C (car je ne sais pas encore comment arrêter le simulateur de Telescope (serveur) autrement !) + + + +******************************************************************************************** +2) RUN + +Pour lancer le client sur le telescope Gemini de Alain Klotz: +./telescope_controller_gemini_run.py +(Windows: python3 telescope_controller_gemini_run.py) + +(NB: un log "client.log" est créé et alimenté au fur et à mesure) +(Pour avoir moins de détail, mettre la variable DEBUG à False dans le fichier telescope_controller_gemini_run.py) +(press ENTER to quit) + +Examples of requests: + +REQUEST TO SERVER (ENTER to quit): >>> :GR# +NATIVE Command to send is ':GR#' +Sent: b'00090000:GR#\x00' +Sent 13 bytes +RECEIVED (ALL BYTES): b'0009000015:01:48#\x00' +RECEIVED (useful data): 15:01:48 + +REQUEST TO SERVER (ENTER to quit): >>> get ra +GENERIC Command to send is get_ra +NATIVE Command to send is ':GR#' +Sent: b'00100000:GR#\x00' +Sent 13 bytes +RECEIVED (ALL BYTES): b'0010000015:01:48#\x00' +RECEIVED (useful data): 15:01:48 +result is 15:01:48 + + + +******************************************************************************************** +3) DEV + +Pour lancer le client sur le "simulateur" de telescope (localhost, port 11110): +- dans un terminal, lancer le simulateur: ./server_run.py +- dans un autre terminal, lancer le client avec le paramètre "local": ./telescope_controller_gemini_run.py local + + + +******************************************************************************************** +4) DONE + + 5/10/18: + + - greatly improved (plant)UML class diagram(s) + + + 4/10/18: + + - BIG REORGANIZATION OF CODE + => new class DeviceControllerAbstract which has a component ClientChannel (of type "socket", "serial", or "usb") + - tests ok + - cleanup + + + 2/10/18: + + - included "doctests" in tests (try it by running "cd test/ ; ./test_client_gemini.py") + - started plc client + + - improved telescope simulator server answers : do_goto(), do_move(), do_init() + + - improved telescope simulator server answers + - tests pass ok + + - decorator @generic_cmd + + - abstract commands dictionary is now the default one and is ovewritable with native dictionary + - native telescope class is now less than 300 lines (majority of code is in the abstract class so that it is easy to make a new concrete telescope class): + => ne contient quasiment QUE le dictionnaire des commandes natives + - cleanup + + + 1/10/18: + + - interpreteur de cde generique et native : set ra 20:00:00 ou :GR# + - execute_cmd(): + - execute_generic_cmd() + - execute_native_cmd() + - GenericResult() + + + 28/9/18: + + - move do_init() to abstract class + - generic return code for each command + + - clean code + - move do_goto() and move_dir() to abstract class + + - doctests + + + 27/9/18: + + - GOTO + - finalize do_init() + + - set date&time, set lat&long + - README file enriched + - help => liste cdes possibles + - (X) set DATE & TIME (p109) + - Ce que fait AK avec TCL ou C: sprintf(ligne,":SC%02d/%02d/%02d#:SL%02d:%02d:%02.0f#:SG+00#",m,d,y-2000,h,min,s); + 1) :SG+00# + => TU + 2) SC%02d/%02d/%02d#: + mois, jour, YY + 3) SL%02d:%02d:%02.0f#: + hh:mn:ss (heure locale) + m,d,y-2000,h,min,s + Faire les 3 commandes ensemble en 1 seule ligne, chacune séparée par #, le tout terminé par « 00 » + + - generic commands available from client console + - generic commands implemented + + - procedure initialize() + + - ACK (cde 6) + + - 3 types of commands + - \x00 at end + + - classe SocketClientAbstract de base + + + +******************************************************************************************** +5) WORK CURRENTLY IN PROGRESS... + + - main updated + - tests updated + - comment functions args + + + +******************************************************************************************** +6) TODO LIST + + - INTEGRATION INTO PYROS + + - LOG: avoir le nom du module qui logue et non pas only logs.py + + - interpreteur de cde generique (avec celme pour les values) : set ra 20:00:00 + + - Tele MEADE ETX (altaz) : cf doc pdf (from page 1) + - peut être en 3 modes : land, altaz, polar (equatorial) + - :AP# => passer en mode polar + - :AA# => passer en mode AltAz + - cette config doit être fait dans do_init() + - doc page 1 : x=implémenté, p=partial, - = pas implémenté + + - Position class + + - POSITION (p103): + - (100) MOVE() (p104-105) + => en altaz ou radec + => préférer "haut, bas, gauche, droite" plutôt que North, South, west, east (surtout sur altaz ça n'a aucun sens) + => sur equatorial, h,b = DEC et g,d = RA + - set_speed() + - start(direction) avec direction = h,b,g,d => move infini + - stop() + - pulse(direction, nbsec) = start() puis sleep(nbsec) puis stop() + - éventuellement start_diagonal qui ferait start(up) et start(right) en alternance (pas prioritaire) + - MOVE(direction, rate, duration): + - move dans une direction (N,S,E,O) à l'infini + - ':Q#' pour arrêter (p 108) + - duration: infinie si pas donnée + - rate (p108): 4 vitesses différentes (prendre la plus lente par défaut), entre 0 et 1: + - [0-0.25] : RC => Rate Center. Subsequent Move commands will move at Centering Speed. + - [0.25-0.50] : RG => Rate Guide. Subsequent Move commands will move at Guiding Speed. + - [0.50-0.75] : RM => Rate Move. Subsequent Move commands will move at Centering Speed. + - [0.75-1.0] : RS => Rate Slew. Subsequent Move commands will move at Slewing Speed. + + - (100) GOTO: + - bloquant ou non + - 1) goto_setmode(radec | hadec | altaz) + - 2) goto() + - Attention, gemini ne comprend que radec, les tarot ne comprennent que hadec !!! : + => goto_setmode(radec) ne fait rien sur un gemini, mais convertit sur un tarot + + - (100) vitesse de pointage (slew speed) : n'existe pas sur tous les tele + + - drift = tracking speed : une fois que tele a pointé, comment il part... + - toujours en hadec + - tracking_speed = 0 => tele est fixe + - t.tracking_speed(ha ou ra, dec) => ha est en nb degrés/sec + => t.tracking_speed(0,0) + => t.tracking_speed("diurnal" ou "sideral",0) // sideral c'est mieux + - jour solaire : 86400s/jour + - jour sideral (diurnal) = durée d'une journée pour une étoile = 86164s/jour (moins que jour solaire, à cause du fait que en 24h, la Terre a avancé sur son orbite circulaire) + - nb degrés/sec = 360/86400 pour jour solaire, et 360/86164 pour jour sideral + + + - (200) timeout : 1 pour send, 1 pour receive + + - (200) celme.angles => infos() à généraliser + + - (200) type erreurs + - 1000 : communication (network, cable débranché) = channel + - 2000 : syntax + - 3000 : out of limit (pointage hors limite, ex: sur le sol) + - 4000 : controller + - 5000 : file (disk...) + + - (200) generic functions return tuple with error code : + res = get_ra() + => res.res is the result + => res.error is the error object : err.error_code, err.generic_msg, err.native_msg + => ou plutot: + res,error = get_ra() + res,_ = get_ra() # pour ignorer le code erreur + res is the result + error is the error object + + - (200) PLC abstract client + + - (100) input commands format : + - get ra + - set ra "2h3m27s" => converted by celme.Angle(ra).deg() + + - (100) _cmds = list of functions (???) + + - remplacer utf-8 par unicode ou iso... + + - cdes 05 (p100): + - cde 05 => return long list of parameters (= GROS GET) + - ENQ = 05 + + - Table d'attributs pour chaque telescope (config) + + - _connect() ou connect() ? + + - Implémenter les commandes NATIVES (non LX-200) : + - < ou >, termine par ':' + checksum + # + + + + + + + + + + + + +******************************************************************************************** +7) INFORMATIONS + + + GMT = TU décalé de 12h, mais maintenant c'est pareil + TU = UTC civil, voir aussi UT1, UT2 + + COMMANDES LX-200: + - SA et SZ pour envoyer coord en alt-az + + RA-DEC is converted into "pas codeurs" + 1 pas codeur (mvmt interne du tele) = environ 1 sec arc sur le ciel + (en gros, RA = petit axe du tele, DEC = grand axe du tele) + + Parking = vers le nord (cf photo) = en position CWD (Counter Weight Down) (contre-poids en bas ?) + + Par défaut, le tele fonctionne en RADEC J2000 + + http://82.64.28.71:8083/L5V1serial.html + + + Ce qui marche: + + - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GD# + Received (all data): 01000000+90:00:00# + + - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GR# + Received (all data): 0100000015:01:48# + - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GR# + Received (all data): 0100000016:04:17# + + - Get Software Level l(one digit) and Version vv(two digits) + REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GV# + Received (all data): 01000000510# + + - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GG# + Received (all data): 01000000+00# + + - Get Maximum Velocity of both axes (N = No mvmt) + REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:Gv# + Received (all data): 01000000N + + + + + + + + + diff --git a/devices_channel/README.txt b/devices_channel/README.txt deleted file mode 100644 index 0e3aa29..0000000 --- a/devices_channel/README.txt +++ /dev/null @@ -1,314 +0,0 @@ - - -******************************************************************************************** -1) TEST - -Pour lancer les TESTS: -cd test/ -./test_client_gemini.py - -Ca doit se terminer par quelque chose comme: -Ran 2 tests in 0.013s -OK - -Là, il faut arrêter avec CTRL-C (car je ne sais pas encore comment arrêter le simulateur de Telescope (serveur) autrement !) - - - -******************************************************************************************** -2) RUN - -Pour lancer le client sur le telescope Gemini de Alain Klotz: -./telescope_controller_gemini_run.py -(Windows: python3 telescope_controller_gemini_run.py) - -(NB: un log "client.log" est créé et alimenté au fur et à mesure) -(Pour avoir moins de détail, mettre la variable DEBUG à False dans le fichier telescope_controller_gemini_run.py) -(press ENTER to quit) - -Examples of requests: - -REQUEST TO SERVER (ENTER to quit): >>> :GR# -NATIVE Command to send is ':GR#' -Sent: b'00090000:GR#\x00' -Sent 13 bytes -RECEIVED (ALL BYTES): b'0009000015:01:48#\x00' -RECEIVED (useful data): 15:01:48 - -REQUEST TO SERVER (ENTER to quit): >>> get ra -GENERIC Command to send is get_ra -NATIVE Command to send is ':GR#' -Sent: b'00100000:GR#\x00' -Sent 13 bytes -RECEIVED (ALL BYTES): b'0010000015:01:48#\x00' -RECEIVED (useful data): 15:01:48 -result is 15:01:48 - - - -******************************************************************************************** -3) DEV - -Pour lancer le client sur le "simulateur" de telescope (localhost, port 11110): -- dans un terminal, lancer le simulateur: ./server_run.py -- dans un autre terminal, lancer le client avec le paramètre "local": ./telescope_controller_gemini_run.py local - - - -******************************************************************************************** -4) DONE - - 5/10/18: - - - greatly improved (plant)UML class diagram(s) - - - 4/10/18: - - - BIG REORGANIZATION OF CODE - => new class DeviceControllerAbstract which has a component ClientChannel (of type "socket", "serial", or "usb") - - tests ok - - cleanup - - - 2/10/18: - - - included "doctests" in tests (try it by running "cd test/ ; ./test_client_gemini.py") - - started plc client - - - improved telescope simulator server answers : do_goto(), do_move(), do_init() - - - improved telescope simulator server answers - - tests pass ok - - - decorator @generic_cmd - - - abstract commands dictionary is now the default one and is ovewritable with native dictionary - - native telescope class is now less than 300 lines (majority of code is in the abstract class so that it is easy to make a new concrete telescope class): - => ne contient quasiment QUE le dictionnaire des commandes natives - - cleanup - - - 1/10/18: - - - interpreteur de cde generique et native : set ra 20:00:00 ou :GR# - - execute_cmd(): - - execute_generic_cmd() - - execute_native_cmd() - - GenericResult() - - - 28/9/18: - - - move do_init() to abstract class - - generic return code for each command - - - clean code - - move do_goto() and move_dir() to abstract class - - - doctests - - - 27/9/18: - - - GOTO - - finalize do_init() - - - set date&time, set lat&long - - README file enriched - - help => liste cdes possibles - - (X) set DATE & TIME (p109) - - Ce que fait AK avec TCL ou C: sprintf(ligne,":SC%02d/%02d/%02d#:SL%02d:%02d:%02.0f#:SG+00#",m,d,y-2000,h,min,s); - 1) :SG+00# - => TU - 2) SC%02d/%02d/%02d#: - mois, jour, YY - 3) SL%02d:%02d:%02.0f#: - hh:mn:ss (heure locale) - m,d,y-2000,h,min,s - Faire les 3 commandes ensemble en 1 seule ligne, chacune séparée par #, le tout terminé par « 00 » - - - generic commands available from client console - - generic commands implemented - - - procedure initialize() - - - ACK (cde 6) - - - 3 types of commands - - \x00 at end - - - classe SocketClientAbstract de base - - - -******************************************************************************************** -5) WORK CURRENTLY IN PROGRESS... - - - main updated - - tests updated - - comment functions args - - - -******************************************************************************************** -6) TODO LIST - - - INTEGRATION INTO PYROS - - - LOG: avoir le nom du module qui logue et non pas only logs.py - - - interpreteur de cde generique (avec celme pour les values) : set ra 20:00:00 - - - Tele MEADE ETX (altaz) : cf doc pdf (from page 1) - - peut être en 3 modes : land, altaz, polar (equatorial) - - :AP# => passer en mode polar - - :AA# => passer en mode AltAz - - cette config doit être fait dans do_init() - - doc page 1 : x=implémenté, p=partial, - = pas implémenté - - - Position class - - - POSITION (p103): - - (100) MOVE() (p104-105) - => en altaz ou radec - => préférer "haut, bas, gauche, droite" plutôt que North, South, west, east (surtout sur altaz ça n'a aucun sens) - => sur equatorial, h,b = DEC et g,d = RA - - set_speed() - - start(direction) avec direction = h,b,g,d => move infini - - stop() - - pulse(direction, nbsec) = start() puis sleep(nbsec) puis stop() - - éventuellement start_diagonal qui ferait start(up) et start(right) en alternance (pas prioritaire) - - MOVE(direction, rate, duration): - - move dans une direction (N,S,E,O) à l'infini - - ':Q#' pour arrêter (p 108) - - duration: infinie si pas donnée - - rate (p108): 4 vitesses différentes (prendre la plus lente par défaut), entre 0 et 1: - - [0-0.25] : RC => Rate Center. Subsequent Move commands will move at Centering Speed. - - [0.25-0.50] : RG => Rate Guide. Subsequent Move commands will move at Guiding Speed. - - [0.50-0.75] : RM => Rate Move. Subsequent Move commands will move at Centering Speed. - - [0.75-1.0] : RS => Rate Slew. Subsequent Move commands will move at Slewing Speed. - - - (100) GOTO: - - bloquant ou non - - 1) goto_setmode(radec | hadec | altaz) - - 2) goto() - - Attention, gemini ne comprend que radec, les tarot ne comprennent que hadec !!! : - => goto_setmode(radec) ne fait rien sur un gemini, mais convertit sur un tarot - - - (100) vitesse de pointage (slew speed) : n'existe pas sur tous les tele - - - drift = tracking speed : une fois que tele a pointé, comment il part... - - toujours en hadec - - tracking_speed = 0 => tele est fixe - - t.tracking_speed(ha ou ra, dec) => ha est en nb degrés/sec - => t.tracking_speed(0,0) - => t.tracking_speed("diurnal" ou "sideral",0) // sideral c'est mieux - - jour solaire : 86400s/jour - - jour sideral (diurnal) = durée d'une journée pour une étoile = 86164s/jour (moins que jour solaire, à cause du fait que en 24h, la Terre a avancé sur son orbite circulaire) - - nb degrés/sec = 360/86400 pour jour solaire, et 360/86164 pour jour sideral - - - - (200) timeout : 1 pour send, 1 pour receive - - - (200) celme.angles => infos() à généraliser - - - (200) type erreurs - - 1000 : communication (network, cable débranché) = channel - - 2000 : syntax - - 3000 : out of limit (pointage hors limite, ex: sur le sol) - - 4000 : controller - - 5000 : file (disk...) - - - (200) generic functions return tuple with error code : - res = get_ra() - => res.res is the result - => res.error is the error object : err.error_code, err.generic_msg, err.native_msg - => ou plutot: - res,error = get_ra() - res,_ = get_ra() # pour ignorer le code erreur - res is the result - error is the error object - - - (200) PLC abstract client - - - (100) input commands format : - - get ra - - set ra "2h3m27s" => converted by celme.Angle(ra).deg() - - - (100) _cmds = list of functions (???) - - - remplacer utf-8 par unicode ou iso... - - - cdes 05 (p100): - - cde 05 => return long list of parameters (= GROS GET) - - ENQ = 05 - - - Table d'attributs pour chaque telescope (config) - - - _connect() ou connect() ? - - - Implémenter les commandes NATIVES (non LX-200) : - - < ou >, termine par ':' + checksum + # - - - - - - - - - - - - -******************************************************************************************** -7) INFORMATIONS - - - GMT = TU décalé de 12h, mais maintenant c'est pareil - TU = UTC civil, voir aussi UT1, UT2 - - COMMANDES LX-200: - - SA et SZ pour envoyer coord en alt-az - - RA-DEC is converted into "pas codeurs" - 1 pas codeur (mvmt interne du tele) = environ 1 sec arc sur le ciel - (en gros, RA = petit axe du tele, DEC = grand axe du tele) - - Parking = vers le nord (cf photo) = en position CWD (Counter Weight Down) (contre-poids en bas ?) - - Par défaut, le tele fonctionne en RADEC J2000 - - http://82.64.28.71:8083/L5V1serial.html - - - Ce qui marche: - - - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GD# - Received (all data): 01000000+90:00:00# - - - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GR# - Received (all data): 0100000015:01:48# - - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GR# - Received (all data): 0100000016:04:17# - - - Get Software Level l(one digit) and Version vv(two digits) - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GV# - Received (all data): 01000000510# - - - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:GG# - Received (all data): 01000000+00# - - - Get Maximum Velocity of both axes (N = No mvmt) - REQUEST TO SERVER [ex: ':GD#' (Get Dec), ':GR#' (Get RA)']: 01000000:Gv# - Received (all data): 01000000N - - - - - - - - - diff --git a/simulators/README.md b/simulators/README.md new file mode 100644 index 0000000..f59af53 --- /dev/null +++ b/simulators/README.md @@ -0,0 +1,3 @@ +VERSION: 0.18.001 + +Date: 9/10/18 \ No newline at end of file diff --git a/src/alert_manager/README.md b/src/alert_manager/README.md index c8e86d0..f59af53 100644 --- a/src/alert_manager/README.md +++ b/src/alert_manager/README.md @@ -1,5 +1,3 @@ -VERSION: 0.1.0 +VERSION: 0.18.001 -Date: 14/03/2018 - -By: +Date: 9/10/18 \ No newline at end of file diff --git a/src/analyzer/README.md b/src/analyzer/README.md index c8e86d0..f59af53 100644 --- a/src/analyzer/README.md +++ b/src/analyzer/README.md @@ -1,5 +1,3 @@ -VERSION: 0.1.0 +VERSION: 0.18.001 -Date: 14/03/2018 - -By: +Date: 9/10/18 \ No newline at end of file diff --git a/src/common/README.md b/src/common/README.md new file mode 100644 index 0000000..f59af53 --- /dev/null +++ b/src/common/README.md @@ -0,0 +1,3 @@ +VERSION: 0.18.001 + +Date: 9/10/18 \ No newline at end of file diff --git a/src/dashboard/README.md b/src/dashboard/README.md index c8e86d0..f59af53 100644 --- a/src/dashboard/README.md +++ b/src/dashboard/README.md @@ -1,5 +1,3 @@ -VERSION: 0.1.0 +VERSION: 0.18.001 -Date: 14/03/2018 - -By: +Date: 9/10/18 \ No newline at end of file diff --git a/src/devices/README.md b/src/devices/README.md new file mode 100644 index 0000000..f59af53 --- /dev/null +++ b/src/devices/README.md @@ -0,0 +1,3 @@ +VERSION: 0.18.001 + +Date: 9/10/18 \ No newline at end of file diff --git a/src/majordome/README.md b/src/majordome/README.md index c8e86d0..f59af53 100644 --- a/src/majordome/README.md +++ b/src/majordome/README.md @@ -1,5 +1,3 @@ -VERSION: 0.1.0 +VERSION: 0.18.001 -Date: 14/03/2018 - -By: +Date: 9/10/18 \ No newline at end of file diff --git a/src/monitoring/README.md b/src/monitoring/README.md index c8e86d0..f59af53 100644 --- a/src/monitoring/README.md +++ b/src/monitoring/README.md @@ -1,5 +1,3 @@ -VERSION: 0.1.0 +VERSION: 0.18.001 -Date: 14/03/2018 - -By: +Date: 9/10/18 \ No newline at end of file diff --git a/src/observation_manager/README.md b/src/observation_manager/README.md index c8e86d0..f59af53 100644 --- a/src/observation_manager/README.md +++ b/src/observation_manager/README.md @@ -1,5 +1,3 @@ -VERSION: 0.1.0 +VERSION: 0.18.001 -Date: 14/03/2018 - -By: +Date: 9/10/18 \ No newline at end of file diff --git a/src/routine_manager/README.md b/src/routine_manager/README.md index c8e86d0..f59af53 100644 --- a/src/routine_manager/README.md +++ b/src/routine_manager/README.md @@ -1,5 +1,3 @@ -VERSION: 0.1.0 +VERSION: 0.18.001 -Date: 14/03/2018 - -By: +Date: 9/10/18 \ No newline at end of file diff --git a/src/scheduler/README.md b/src/scheduler/README.md index c8e86d0..f59af53 100644 --- a/src/scheduler/README.md +++ b/src/scheduler/README.md @@ -1,5 +1,3 @@ -VERSION: 0.1.0 +VERSION: 0.18.001 -Date: 14/03/2018 - -By: +Date: 9/10/18 \ No newline at end of file diff --git a/src/user_manager/README.md b/src/user_manager/README.md new file mode 100644 index 0000000..f59af53 --- /dev/null +++ b/src/user_manager/README.md @@ -0,0 +1,3 @@ +VERSION: 0.18.001 + +Date: 9/10/18 \ No newline at end of file diff --git a/src/utils/celme/README b/src/utils/celme/README index 9b2213a..ea47047 100644 --- a/src/utils/celme/README +++ b/src/utils/celme/README @@ -1,6 +1,9 @@ celme =========== +VERSION: 0.18.001 +Date: 9/10/18 + A python module for driving a robotic observatory Web Page: none License: GNU General Public License -- libgit2 0.21.2