-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathChangeLog.legacy
1664 lines (1157 loc) · 50.6 KB
/
ChangeLog.legacy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2008-08-01 P. Henrique Silva <[email protected]>
* setup.py: Add suds (required by Simbad resolver)
* src/chimera/util/simbad.py: Use Simbad to get coordinates of
object names.
* src/scripts/chimera-focus:
* src/scripts/chimera-cam:
* src/scripts/chimera-dome:
* src/scripts/chimera-tel: Finish port to new CLI infrascructure.
* src/chimera/instruments/camera.py:
* src/chimera/drivers/sbig/sbig.py:
* src/chimera/interfaces/camera.py: fix convention of getSetPoint
method.
* src/chimera/core/cli.py: Lot of small fixes, nothing big.
* src/chimera/core/location.py: Classloader now treat classes in
case insensitive way, so does Location now.
* src/chimera/core/tests/chimera-dome.py:
* src/chimera/core/tests/chimera-focus.py: Moved to final location
on scripts.
* src/chimera/core/eventsproxy.py: Fix handling of exceptions on
event handlers.
* src/chimera/instruments/telescope.py: implements slewToObject.
* src/chimera/util/position.py: better error messages.
* src/chimera/drivers/faketelescope.py:
* src/chimera/drivers/fakecamera.py: Small fixes... those fakes
need to be more realistic to enable more automated tests.
2008-07-28 P. Henrique Silva <[email protected]>
* src/chimera/core/cli.py: Fix multiple actions execution order:
Respect command line order, always! There are no static
priorities, just user will.
2008-07-28 P. Henrique Silva <[email protected]>
* src/chimera/core/cli.py:
Add support for multiple actions groups. For each action group,
only one action can be specified. This enables multiple actions
handlind as specified in issue 9. But, this is not final yet as
the order in which the actions run is not the same as user
specified. Working on this now, commit just to create a runnable
snapshot.
Fix bug on _validateParameter: now validating only specified
options (was trying to validate all independent of what user
specified).
* src/chimera/core/tests/chimera-dome.py:
* src/chimera/core/tests/chimera-focus.py: Update to new helpGroup
option.
2008-07-27 P. Henrique Silva <[email protected]>
*** chimera-new-scripts branch ***
* src/chimera/core/cli.py:
Add Local Mnager host/port configuration.
Add include path options.
* src/chimera/core/tests/chimera-dome.py: Updated groups for
better help message.
2008-07-27 P. Henrique Silva <[email protected]>
*** chimera-new-scripts branch ***
* src/chimera/core/cli.py: Much better implementation of
_getObjects method. Working with most configurations of
local/remote instrument/driver. Needs test cases for promotion to
stable branch.
* .project:
* .pydevproject: updated to branch project.
* src/chimera/core/chimera.config.sample
* src/chimera/core/chimera.sample.config: Rename.
* src/chimera/core/constants.py: Updated for above rename.
* src/chimera/core/classloader.py: Accepts string paths.
* src/chimera/core/manager.py: Add exception handling on daemon
start.
* src/chimera/core/systemconfig.py: Hack! need better
implementation of multiple yaml files handling (location creation
versus host/port config)
* src/chimera/instruments/dome.py: less verbose dome.
2008-07-17 P. Henrique Silva <[email protected]>
* src/chimera/controllers/autofocus.py: Fix bug returning a scalar
when list was required.
* src/chimera/controllers/test/test_autofocus.py: Ad plot and log by default.
* src/chimera/drivers/meade.py: Fix bug on strfcoord usage.
* src/scripts/chimera-tel.py: Fix another ImportError (ChimeraException).
2008-07-10 P. Henrique Silva <[email protected]>
* src/chimera/core/path.py: New way to get Chimera paths. Use
pkg_resources to get correct installation place or just guess.
* src/scripts/chimera-focus:
* src/scripts/chimera-cam:
* src/scripts/chimera-dome:
* src/scripts/chimera-tel:
* src/chimera/controllers/site/main.py: All modified to use ChimeraPath.
* setup.cfg:
* setup.py: No more zip_safe. Eggs crash classloader. Not
installing as egg anymore.
2008-06-10 P. Henrique Silva <[email protected]>
* src/chimera/interfaces/cameradriver.py: Fix typos.
* src/chimera/controllers/site/main.py: Broad exception handling.
* src/chimera/core/manager.py: More exception handling.
* src/chimera/instruments/camera.py: There was a BIG bug here. In
the finally statement, we were returning a tuple, and according to
Python's manual, in a finally, if we break or return, we loose the
exception!!! The result was that any exception occuring in
drv.expose was silently ingored!!!
2008-06-07 P. Henrique Silva <[email protected]>
* src/chimera/drivers/fakecamera.py: Fixes on random number
geeration on flat creation routine. We were using N.fromfunction
without actually using the indices, returning a scalar value and
to an array.
Fix issue #7.
Patch from Isaac Richter.
2008-06-06 P. Henrique Silva <[email protected]>
* src/scripts/chimera-cam:
Add "--force-display" option to force display even if texp<5.
Fix issue where driver is never set to camera.getDriver() when
using a remote camera instrument.
Fix issue where chimera-cam --info gives incorrect (or no) camera
driver.
* src/scripts/chimera-tel:
Fix issue where driver is never set to telescope.getDriver() when
using a remote telescope instrument.
Fix issue where chimera-tel --info gives incorrect (or no)
telescope driver
* src/scripts/chimera-dome:
Add "-t"/"--telescope" option to tell the dome what telescope to
track.
Add "--track/--stand" commands to tell the dome to start/stop
tracking the telescope.
Fix issue where chimera-dome --info gives incorrect (or no) dome
driver.
* src/chimera/controller/site/main.py:
Add support for "-H"/"--host" and "-P"/"--port" options from
command line of scripts/chimera
* src/chimera/controllers/site/config.py: Add support for pyro
host and port passed in the constructor
* chimera/core/manager.py: Fix minor spelling errors in comments
* chimera/drivers/faketelescope.py: Fix slew code to set
self._slewing=False when done slewing; otherwise, the dome will
refuse to track
* src/chimera/drivers/fakecamera.py:
Add support for making simulated darks, flats, and grabbing DSS
images and applying simulated dark and flat to them.
Use driver paramaters ccd_width and ccd_height to control size of
simulated darks and flats.
Use driver paramater use_dss=True to have images grabbed from
DSS (when telescope is aligned with dome and dome is open
Patch from Isaac Richter, modified slightly to make flat fast with
Numpy.
2008-06-05 P. Henrique Silva <[email protected]>
* setup.py: Add RO dependency. (DS9 display)
* scripts/chimera-cam:
* chimera/drivers/sbig/sbig.py: Fix issue #3.
2008-06-05 P. Henrique Silva <[email protected]>
* src/scripts/chimera-tel:
* src/chimera/interfaces/telescopedriver.py:
* src/chimera/interfaces/telescope.py:
* src/chimera/core/site.py:
* src/chimera/instruments/tests/test_telescope.py:
* src/chimera/instruments/telescope.py:
* src/chimera/instruments/dome.py:
* src/chimera/util/position.py:
* src/chimera/util/tests/test_position.py:
* src/chimera/drivers/faketelescope.py:
* src/chimera/drivers/tests/test_meade.py:
* src/chimera/drivers/meade.py:
* src/chimera/drivers/theskytelescope.py:
* src/chimera/drivers/fakedome.py:
* docs/examples/meade/meadetest.py:
Fix issue #4.
Patch from Isaac Richter.
2008-05-30 P. Henrique Silva <[email protected]>
* src/scripts/chimera-cam: Expand exception handling.
* src/chimera/interfaces/dome.py:
* src/chimera/instruments/dome.py: Add sync.
* src/chimera/interfaces/focuser.py: Comment typos.
* src/chimera/instruments/camera.py
* src/chimera/instruments/tests/test_camera.py
* src/chimera/drivers/sbig/sbig.py
* src/chimera/drivers/fakecamera.py: Upgrade to new ImageSave class.
* setup.py: Update to new set of dependencies.
* src/chimera/util/sexcatalog.py: Add catalog params values form
sex 2.5.
* src/chimera/util/imagesave.py: Add support for basic FITS headers.
* src/chimera/util/position.py: New (betetr) range checking on
constructors.
* src/chimera/util/image.py:
* src/chimera/util/tests/test_image.py:
* src/chimera/util/tests/teste-sem-wcs.fits:
* src/chimera/util/tests/teste-com-wcs.fits: New image
class. FITS, WCS and SExtractor support.
* src/chimera/controllers/autofocus.py:
* src/chimera/controllers/tests/test_auto_focus.py: New AutoFocus
version.
* src/chimera/core/site.py:
* src/chimera/core/tests/test_site.py: New site functions for
date/time with test suite.
2008-05-21 P. Henrique Silva <[email protected]>
* src/chimera/util/coord.py: Fix bug on code that find desired
precision on strfcoord. This was causing ValueError when trying to
format seconds as a integer number.
2008-05-13 P. Henrique Silva <[email protected]>
* setup-chimera.bat:
* setup-chimera.sh:
* TODO:
* MANIFEST.in: Not needed anymore, setuptools handles this for us.
* README: New text.
* setup.py:
* setup.cfg:
* ez_setup.py: New setuptools script. Much more smart, with
automatic dependency handling and PyPI support. See ups at
http://pypi.python.org/pypi/chimera-python! Now you can use
easy_install with chimera!
2008-05-13 P. Henrique Silva <[email protected]>
* src/chimera/util/imagesave.py: Fix BSCALE/BZERO.
* src/chimera/drivers/sbig/sbig.py:
* src/chimera/drivers/optectcfs.py:
* src/chimera/drivers/domelna40cm.py
* src/chimera/drivers/meade.py:
* src/chimera/instruments/focuser.py:
* src/chimera/instruments/telescope.py:
* src/chimera/instruments/camera.py:
Fix abort where available.
Port to new lock scheme.
* src/chimera/instruments/tests/test_telescope.py:
* src/chimera/instruments/tests/test_camera.py: Improved test with
abort testing.
* src/chimera/instruments/dome.py: New dome implementation, with
fixed tracking telescope support.
* src/chimera/instruments/tests/test_dome.py: Test new dome
implementation.
2008-05-13 P. Henrique Silva <[email protected]>
* src/chimera/core/rwlock.py:
* src/chimera/core/lockwrapper.py
* src/chimera/core/constants.py:
* src/chimera/core/monitor.py: New locking infrastructure.
* src/chimera/core/tests/test_locks.py: Update test to new lock
infrastructure.
* src/chimera/core/metaobject.py: Add locking to default base object.
* src/chimera/core/chimeraobject.py:
Add new lock infrastructure wrapper methods.
Add support for thread-safe config set/get.
New look __control__ algorithm.
* src/chimera/core/manager.py:
Better stop algorithm.
Use new loop field in the resources manager.
Use new loop aborting scheme.
Remove thread pool support. Thread pool should be handled by the
user.
* src/chimera/core/resources.py: Add loop thread field.
* src/chimera/core/methodwrapper.py: Add logging.
* src/chimera/core/tests/test_config.py: Add enum checker test.
2008-05-13 P. Henrique Silva <[email protected]>
* src/chimera/drivers/fakecamera.py:
* src/chimera/drivers/fakedome.py:
* src/chimera/drivers/faketelescope.py: More realistic simulation.
2008-05-13 P. Henrique Silva <[email protected]>
* src/scripts/chimera-focus:
* src/scripts/chimera-cam:
* src/scripts/chimera:
* src/scripts/chimera-tel: Add Ctrl+C support.
* src/scripts/chimera-dome: Ctrl+C support.
Remove slit position from output (it's buggy on LNA).
2008-05-13 P. Henrique Silva <[email protected]>
* src/chimera/util/coord.py: Lot of changes.
Allow use of Coord outise Chimera.
Much better d2dms conversion with configurable precision.
Improved strfcoord using configurable precision of d2dms.
Fix bug when priting 01-09 seconds with only onde digit.
New math behavviour: Use other state onçy with strings.
* src/chimera/util/position.py: Allow position to be used outside
Chimera.
* src/chimera/util/tests/test_coord.py: Improved test suite.
* src/chimera/util/tests/hipparcos-tycho.dat: New test suite
database.
2008-05-13 P. Henrique Silva <[email protected]>
* src/chimera/controllers/scheduler:
* src/chimera/controllers/scheduler/programs.py:
* src/chimera/controllers/scheduler/clock.py:
* src/chimera/controllers/scheduler/dummy.py:
* src/chimera/controllers/scheduler/sensors.py:
* src/chimera/controllers/scheduler/exposures.py:
* src/chimera/controllers/scheduler/__init__.py:
* src/chimera/controllers/scheduler/model.py:
* src/chimera/controllers/scheduler/schedulers.py:
* src/chimera/controllers/scheduler/machine.py:
* src/chimera/controllers/scheduler/program.db:
* src/chimera/controllers/scheduler/database.py:
* src/chimera/controllers/scheduler/constraints.py:
* src/chimera/controllers/scheduler/program.py:
* src/chimera/controllers/scheduler/sequential.py:
* src/chimera/controllers/scheduler/tests:
* src/chimera/controllers/scheduler/tests/test_model.py:
* src/chimera/controllers/scheduler/tests/__init__.py:
* src/chimera/controllers/scheduler/create-tables.py:
* src/chimera/controllers/scheduler/scheduler.py:
* src/chimera/controllers/scheduler/program.xml:
* src/chimera/controllers/scheduler/seq.log:
* src/chimera/controllers/scheduler/ischeduler.py: New prototype
scheduler. This scheduler will be the main automation controller
in the system. It handles a generic program database and will
dispatch tasks using pluggable scheduler algorithms. A simple
sequential scheduler is implement right now and there are no real
instrument handling yet. Anyway, it very impressive how the simple
Machine class work and interacts with the scheduler database.
2008-05-13 P. Henrique Silva <[email protected]>
* tests/chimera.pychecker:
* tests/run-tests.sh:
* tests/run-pylint.sh: Marked as executables.
* tests/run-pychecker.sh: New file.
2008-05-13 P. Henrique Silva <henrique@boss>
* docs/site:
* docs/site/sync-sf.net:
* docs/site/static:
* docs/site/conf.py:
* docs/site/Makefile:
* docs/site/templates:
* docs/site/templates/layout.html:
* docs/site/index.rst: New website ReST files and a script to
update sf.net.
* docs/examples/site.xml: Move from scripts directory
2008-04-28 P. Henrique Silva <[email protected]>
* src/chimera/drivers/fakecamera.py (FakeCamera.expose): Use
ImageSave to get fake name.
Implements IFilterWheelDriver.
* src/chimera/drivers/sbig/sbig.py (SBIG.setFilter): Make it
synchronous (wait until filter finishes movement).
* src/chimera/drivers/meade.py (Meade.open): Support skip_init
option.
Implements ITelescopeDriverTracking.
* src/chimera/drivers/faketelescope.py: Implement more fake methods.
* src/chimera/instruments/telescope.py Implements ITelescopeTracking.
* src/chimera/instruments/tests/test_telescope.py
(TestTelescope.setup): Test use Fake by default.
* src/chimera/interfaces/telescope.py: Fix SlewRate enum
duplication.
(ITelescopeTracking): New interface.
* src/chimera/interfaces/domedriver.py (IDomeDriver.__config__):
Add init timeout.
* src/chimera/drivers/domelna40cm.py (DomeLNA40cm.open): Use init_timeout.
* src/chimera/interfaces/telescopedriver.py
(ITelescopeDriverSlew.__config__): Add skip_init option to don't
reinitialize Meade when using chimera-tel standalone
mode. Specially when using park/unpark.
(ITelescopeDriverTracking): New interface.
* src/scripts/chimera-cam:
Add support to change filter.
Add --info option.
Fix problem with --shutter options case sensitivity.
Change --filename to --output (camfits compatible).
* src/scripts/chimera-tel:
Add park/unpark, start/stop tracking, handle to move NSWE.
* src/scripts/chimera-dome:
* src/scripts/chimera-focus:
Add groups to --help.
Better exception handling when looking for driver.
2008-04-24 P. Henrique Silva <[email protected]>
* src/chimera/drivers/meade.py (Meade.park): Default park position
generalized.
* src/chimera/drivers/sbig/sbig.py (SBIG.__start__):
* src/chimera/drivers/sbig/sbigdrv.py (SBIGDrv.readoutLine):
* src/chimera/util/imagesave.py (ImageSave.save): Add support for
16 bit unsigned FITS using BSCALE/BZERO.
* src/chimera/instruments/dome.py (Dome.control): Disable control loop.
* src/chimera/core/tests/test_manager.py
(TestManager.test_add_start): Comment test case with know error
would be fixed in the future.
* src/chimera/interfaces/cameradriver.py: Add more bitpixes.
2008-03-12 P. Henrique Silva <[email protected]>
* setup.py: Updated.
* setup-chimera.sh: Compatible with older bash's and which's.
* .pydevproject: Updated.
* src/config/site.xml: Expanded example with host/port and
separeted site tag.
* docs/examples/client.py: Bulk configuration example added.
* docs/chimera.epydoc: Expand documentation to every chimera
package.
* docs/run-epydoc.sh: More verbose:
* tests/run-pychecker.sh: First working version.
* tests/run-tests.sh: Log support added.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/__init__.py: Documentation added (epydoc).
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/controllers/test/test_auto_focus.py: New. Tentative
autofocus support testing.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/controllers/site/config.py:
Added Manager host/port configuration.
Added Site support (moved from attributes of chimera to indidual
tag with normal subtags).
* src/chimera/controllers/site/main.py:
Fix prefix bug.
Added dry-run mode.
Added support for Site object creation based on config.py parsing.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/util/coord.py:
Much more documentation.
Add support for rich operators (<, <=, >, >=, ==, != and mod).
Add the much needed strfcoord function on CoordUtil and method on
Coord. hms2str and dms2str are now based on this function.
Fix "excess of generality" on Coord RE. Our RE are too general
that some strange string was being accepted as valid Coord (see
test_coord.py for examples)
* src/chimera/util/position.py: New class. A simple Position (a
tuple of Coords) class. It used astrolib Position as base to
inherites angsep and some other usefull things and the amazing TPM
library support. Hope to expand this class and make more use of
TPM in the future.
* src/chimera/util/tests/test_position.py: Test Position basic
functionality.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/util/filenamesequence.py: New. Very useful class to
implement automatic sequence number generation. Mostly used to
generate new index to image filenames (used in ImageSave).
* src/chimera/util/imagesave.py: New. All image saving blocks from
sbig.py was moved to a self contained class to allow reuse. Use
it!
* src/chimera/util/imagesave.py: New. Mostly a stub for future
telescope software limits support.
* src/chimera/util/enum.py: Add support for equality tests on
different Enum objects (copied for whatever reasons).
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/drivers/sbigdrv.py: Converted to use Exceptions.
* src/chimera/drivers/sbig.py:
Converted to new MetaObject framework.
Converted to use exceptions.
Converted to use full event-driven system.
Converted to use Coord and Position.
Converted to use Enum.
Converted to use ImageSave.
A few other fixes.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/drivers/meade.py:
Converted to new MetaObject framework.
Converted to use exceptions.
Converted to use full event-driven system.
Converted to use Coord and Position.
Converted to use Enum.
Fix bug on serial port parameters settings (I was leaving
parameters blank to use default, but defaults are not valid
anymore for some strange reasons).
Added NSWE movement support with self-calibration. Meade use time
based movements, but Telescope API receives arcseconds, so we
calibrate time->arcseconds to follow the API (which make a lot of
sense in every reasonable application, who cares about time?!).
Lot of small bug fixes.
* src/chimera/drivers/test/test_meade.py: New. Includes
calibration test.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/drivers/theskytelescope.py:
Converted to new MetaObject framework.
Converted to use exceptions.
Converted to use full event-driven system.
Add support for process kill with TheSky 5 which doesn't do it by
itself when asked to Disconnect.
Current support required changes on instrument implementation
'cause of Position serialization issues on Windows. Current API's
are imposed anyway, but these "hacks" must go someway soon.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/drivers/optectcfspy:
Converted to new MetaObject framework.
Converted to use exceptions.
Converted to use full event-driven system.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/drivers/domelna40cm.py:
Converted to new MetaObject framework.
Converted to use exceptions.
Converted to use full event-driven system.
Remove old documentation.
Remove unneeded debug of protocol.
IMPORTANT: Add phase difference between dome and scope (180
deg). So, dome receive a coord and convert to its own reference
frame and do vice-versa when returning on getAz. Azimuth is ALWAYS
in telescope reference frame.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/drivers/fakecamera.py:
* src/chimera/drivers/fakedome.py:
* src/chimera/drivers/fakefilterwheel.py:
* src/chimera/drivers/fakefocuser.py:
* src/chimera/drivers/faketelescope.py: New babies! Fake drivers
allow test units to be developed without real hardware
access. Must be more complete (in API and behaviour) in the
future.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/instruments/camera.py:
* src/chimera/instruments/filterwheel.py:
* src/chimera/instruments/telescope.py:
* src/chimera/instruments/dome.py:
* src/chimera/instruments/focuser.py: Every iinstrument
implementation have been improved, with full exception handling
support and new interfaces implemented. Test it, please!
* src/chimera/instruments/tests/test_telescope.py: More tests
added.
* src/chimera/instruments/tests/test_filterwheel.py:
* src/chimera/instruments/tests/test_dome.py:
* src/chimera/instruments/tests/test_focuser.py:
* src/chimera/instruments/tests/test_camera.py: New unit tests for
instruments.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/interfaces/camera.py:
* src/chimera/interfaces/filterwheel.py:
* src/chimera/interfaces/telescopedriver.py:
* src/chimera/interfaces/domedriver.py:
* src/chimera/interfaces/weatherstation.py:
* src/chimera/interfaces/focuserdriver.py:
* src/chimera/interfaces/telescope.py:
* src/chimera/interfaces/dome.py:
* src/chimera/interfaces/cameradriver.py:
* src/chimera/interfaces/focuser.py:
* src/chimera/interfaces/filterwheeldriver.py:
All Chimera interfaces (with some exceptions on driver interfaces)
have been improved a LOT. These interfaces should be much more
complete right now. An better validation scheme must be added
(zope.interface maybe).
Documentation was improved with exceptions on camera and telescope
drivers (mostly because these interfaces grew up together with the
respective implementations).
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/core/exceptions.py:
Add exception cause system allowing new ChimeraExceptions raised
in the context of another exception to carry information about the
original exception.
Add new exceptions.
ChimeraException now support BaseException parameters and are
properly de/serialized.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/core/methodwrapper.py: Fix bug on emulating static
calls without arguments.
Remove self.special call (old behaviour). Subclasses should
override call and not special anymore.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/core/manager.py:
Change exception raising to new log framework (no more
sys.exc_info).
Reflection support (resources).
Small bug fix on Window platform when shuting down.
Manager's identity (host/port) fixes (still with some bugs, but
improving).
* src/chimera/core/proxy.py: Identity fixes for URI only Proxies.
Better error messages when Proxy fails.
Configuration support using += (OMG, how this was not implemented
yet!?).
Better method type checking when subscribing to events.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/core/config.py:
Add Enum checker.
Add Coord option and checker (option added to save Coord state
when creating the option.
Small fixes on Config.
* src/chimera/core/test/test_config.py: Test those new features.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/core/site.py: New object. Used as a data container
with site specific information. Date/time functions will be
implemented in the future.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/core/tests/test_chimera_object.py: Improved tests
with exception testing.
* src/chimera/core/chimeraobject.py:
Add bulk configuration support.
Add Very simple reflection.
Small fix on identity of objects (new locations with hosts/port).
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/core/compat.py: Add few functions to make Chimera
2.4 compatible (any, all are only defined on Py2.5)
* src/chimera/core/threads.py: Remove auto-locking support as this
is handled in MetaObject level now (see below).
* src/chimera/core/classloader.py: Improved and cleaned expection
raising (no need to hack with sys.exc_info, thanks to log.py
work).
* src/chimera/core/callback.py: Fix documentation and PEP-8 80
column limit where reasonable.
* src/chimera/core/eventsproxy.py: Remove unreachable handlers
when publishing.
* src/chimera/core/eventwrapper.py: NameError fix.
* src/chimera/core/constants.py: Lock and reflection constants
added.
2008-03-12 P. Henrique Silva <[email protected]>
* src/chimera/core/lock.py:
* src/chimera/core/lockwrapper.py:
* src/chimera/core/test/test_locks: New files to add support for
coarse-grained automatic locks (much like synchronized methods in
Java).
* src/chimera/core/metaobject.py: Add lock support and use
constants to hide hard-coded values.
2008-03-10 P. Henrique Silva <[email protected]>
* scripts/chimera: Fix changes on Site controller.
* scripts/chimera-cam: Ported to new infrastructure and improved.
* scripts/chimera-console: Ported but not working yet.
* scripts/chimera-focus:
* scripts/chimera-tel:
* scripts/chimera-dome: New scripts.
2008-02-06 P. Henrique Silva <[email protected]>
* src/chimera/core/log.py: Better log formatting with separate
logger for console and file.
New function to set Console log level.
Logging of exceptions using printException facility using custom
formatter.
* src/chimera/core/tests/test_log.py: Simple test to confirm log
capabilities.
2008-01-07 P. Henrique Silva <[email protected]>
* tests/run-pychecker.sh
* tests/run-pylint.sh
* tests/run-tests.sh: Updated runners.
* TODO
* TODO.SPRINTS
* TODO.DONE: Updated TODO's.
* docs/chimera.epydoc
* docs/examples/minimo.py
* docs/examples/client.py
* docs/examples/proxy.py
* docs/examples/example.xml
* docs/examples/server.py: More examples.
* src/scripts/chimera: Main chimera script updated to new Manager
model.
* setup-chimera.sh: Improved to allow source use.
* src/config/site.xml: Added new host/port example.
2008-01-07 P. Henrique Silva <[email protected]>
* src/chimera/util/coord.py: New coord class.
* src/chimera/util/tests
* src/chimera/util/tests/test_coord.py
* src/chimera/util/tests/bsc.dat: Coord class tests with a copy of
BSC catalog.
* src/chimera/util/position.py: Future Position class (a pair of Coords).
2008-01-07 P. Henrique Silva <[email protected]>
* src/chimera/controllers/siteconfig.py Moved.
* src/chimera/controllers/chimeramain.py: Moved.
* src/chimera/controllers/site
* src/chimera/controllers/site/__init__.py
* src/chimera/controllers/site/main.py
* src/chimera/controllers/site/config.py: Updated to new Manager
model and moved to better place. Config now is Controller specific
(moved from core).
2008-01-07 P. Henrique Silva <[email protected]>
* src/chimera/interfaces/camera.py
* src/chimera/interfaces/filterwheel.py
* src/chimera/interfaces/__init__.py
* src/chimera/interfaces/lifecycle.py
* src/chimera/interfaces/telescopedriver.py
* src/chimera/interfaces/domedriver.py
* src/chimera/interfaces/weatherstation.py
* src/chimera/interfaces/focuserdriver.py
* src/chimera/interfaces/telescope.py
* src/chimera/interfaces/dome.py
* src/chimera/interfaces/cameradriver.py
* src/chimera/interfaces/focuser.py: Improved interfaces with full
documentation (need to be implemented yet).
2008-01-07 P. Henrique Silva <[email protected]>
* src/chimera/core/log.config: Not needed anymore, all log
configuration done at log.py.
* src/chimera/core/site.py: New.
* src/chimera/core/callback.py: New.
* src/chimera/core/exceptions.py: New.
* src/chimera/core/classloader.py: ClassLoaderException moved to
exceptions.py.
* src/chimera/core/chimeraobject.py: Fixes.
Added log to non-chimera packages.
Changed signatures of loop control methods (new getHz/setHz).
Fixed getManager method to return a Proxy.
* src/chimera/core/eventsproxy.py: Better exception handling on
publish. Unreachable proxy removal added.
* src/chimera/core/location.py: Host/port support.
Added host/port to Location.
Location doesn't use isValid anymore, exception is raised when
Location isn't valid.
* src/chimera/core/manager.py: Lot of fixes and new features.
Added support for remote objects on getProxy.
Fixed indexed instances connections.
Exception support added to all methods. No more "return False"
means error.
* src/chimera/core/resources.py: Exception support added.
* src/chimera/core/proxy.py: Fix getProxy when port/host is used.
* src/chimera/core/log.py: Add milliseconds to log format.
* src/chimera/core/tests/test_main.py: Removed.
* src/chimera/core/tests/managerhelperwithmainexception.py
* src/chimera/core/tests/managerhelperwithstopexception.py
* src/chimera/core/tests/test_chimera_object.py
* src/chimera/core/tests/managerhelperwithstartexception.py
* src/chimera/core/tests/test_events.py
* src/chimera/core/tests/test_config.py
* src/chimera/core/tests/test_location.py
* src/chimera/core/tests/test_resources.py
* src/chimera/core/tests/test_manager.py
* src/chimera/core/tests/managerhelperwithinitexception.py:
Fixed tests to support all the above modifications.
2007-12-10 P. Henrique Silva <[email protected]>
* src/chimera/core/threads.py
* src/chimera/core/classloader.py
* src/chimera/core/chimeraobject.py
* src/chimera/core/config.py
* src/chimera/core/eventsproxy.py
* src/chimera/core/location.py
* src/chimera/core/manager.py
* src/chimera/core/async.py
* src/chimera/core/proxy.py
* src/chimera/core/log.py
* src/chimera/core/main.py: Updated to the new log idiom.
2007-11-14 P. Henrique Silva <[email protected]>
* src/chimera/interfaces/lifecycle.py: New state methods
names. new methods to get Location, Manager and Proxy.
* src/chimera/controllers/siteconfig.py:
* src/chimera/controllers/chimeramain.py:
Moved from core. It's not core, it's a normal controller.
* src/chimera/instruments/tests
* src/chimera/instruments/tests/test_telescope.py: New test suite
(not complete yet).
* src/chimera/util/enum.py: New enum class. (PyPI enum)
* src/chimera/drivers/sbig/__init__.py: Fix relative import use.
* docs/examples/client.py:
* docs/examples/proxy.py:
* docs/examples/server.py: New examples.
* TODO: Added todo's from chimera-ng branch.
2007-11-14 P. Henrique Silva <[email protected]>
* src/chimera/core/classloader.py: New classloader. Contains code
moved from manager.py and improved exception handling.
* src/chimera/core/chimeraobject.py: New base class of the
system. Implements the ILifecycle interface and inherites from
RemoteObject to provide support for RPC and state management.
* src/chimera/core/remoteobject.py: New class to wrap Pyro's base
class.
* src/chimera/core/resources.py: Replace register.py with a more
simple resources management.
* src/chimera/core/constants.py: Runtime constants needed by the
new system.
* src/chimera/core/util.py: Simple core utilities (used only
internally)
* src/chimera/core/state.py: State management enumeration.
* src/chimera/core/eventsproxy.py: New event proxy used by
ChimeraObject to dispatch events.
* src/chimera/core/metaobject.py:
* src/chimera/core/methodwrapper.py:
* src/chimera/core/eventwrapper.py: New metaclass based object