-
Notifications
You must be signed in to change notification settings - Fork 23
/
ChangeLog
986 lines (626 loc) · 32.4 KB
/
ChangeLog
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
Version 3.1.4
2023-10-20 YiFei Zhu <[email protected]>
* Fix .referrers occasionally returning empty set due to GC race
2023-10-18 YiFei Zhu <[email protected]>
* Python 3.12 support added, Python 3.7 support dropped
2022-06-16 YiFei Zhu <[email protected]>
* Make guppy ignore ImportError when it is initializing heapdefs from
all loaded modules. [mardanst]
2022-06-01 YiFei Zhu <[email protected]>
* Fix INTERATTR definition, where for "internal attributes" it would
always report the attribute name as "newname".
2022-05-22 YiFei Zhu <[email protected]>
* Fix refcount sanity assertion for Python 3.11, when C asserts are
compiled in.
Version 3.1.3
2023-05-13 YiFei Zhu <[email protected]>
* Python 3.11 support - the traverse will create all the lazily-created
frame objects and materialize object managed dicts; this will consume
additional memory.
2022-02-12 YiFei Zhu <[email protected]>
* Fix profile browser initialization on Python 3.10+
2022-01-05 YiFei Zhu <[email protected]>
* Fix crash doing path calculation when a path component is non-comparable
2022-01-04 YiFei Zhu <[email protected]>
* Fix crash when a type doesn't have __module__
Version 3.1.2
2021-10-08 YiFei Zhu <[email protected]>
* Nothing changed, just releasing 3.1.2
2020-10-06 YiFei Zhu <[email protected]>
* Python 3.10 support [smn-3-14]
Version 3.1.1
2021-06-29 YiFei Zhu <[email protected]>
* Add linux aarch64 wheel builds [odidev]
2021-06-22 YiFei Zhu <[email protected]>
* Fix Py 3.9 to use SIZEOF_PYGC_HEAD in _testinternalcapi
2021-01-28 YiFei Zhu <[email protected]>
* Slightly uasier to use unsafe repr for Path
2021-01-23 YiFei Zhu <[email protected]>
* End of support for Python 3.5
2021-01-22 YiFei Zhu <[email protected]>
* Fix MorePrinter in Stat objects
* Add warning about pywin32 < 300, if it's imported
2021-01-16 YiFei Zhu <[email protected]>
* Add guppy.__version__
Version 3.1.0
2020-10-10 YiFei Zhu <[email protected]>
* Nothing changed, just releasing 3.1.0
2020-10-09 YiFei Zhu <[email protected]>
* Python 3.9 support, no inter-interpreter support
2020-06-14 YiFei Zhu <[email protected]>
* Add R_INSET relation for in unordered set relationship
2020-06-13 YiFei Zhu <[email protected]>
* Unified MorePrinter code path
* Set __qualname__ to __name__ on dynamic classes
2020-05-19 YiFei Zhu <[email protected]>
* hp.Prod(), .byprod classifier, producer profiler
* IdentitySet.prod to print tracemalloc results
2020-05-14 YiFei Zhu <[email protected]>
* Add .all to MorePrinter
Version 3.0.10
2020-05-12 YiFei Zhu <[email protected]>
* Nothing changed, just releasing 3.0.10
2020-03-01 YiFei Zhu <[email protected]>
* Skip modules that don't have __dict__ attributes [Bob Haddleton]
2019-11-28 YiFei Zhu <[email protected]>
* Replace a few instances of ZeroDivisionError with inspect.currentframe()
Version 3.0.9
2019-11-27 YiFei Zhu <[email protected]>
* Nothing changed, just releasing 3.0.9
2019-11-26 YiFei Zhu <[email protected]>
* Workaround multi-interpreter initialization with tracemalloc so we don't
deadlock, by temporarily restoring to the default raw domain allocator.
2019-11-25 YiFei Zhu <[email protected]>
* Collapse Glue.py exception tracebacks for less intimidation
* Add assertion during Share initialization so we don't get a surprise like
in View.root
2019-11-20 YiFei Zhu <[email protected]>
* Changes to object hiding tag mechanism; guppy internals are again
properly hidden from heap traversal.
* Restore Interface attribute caching, and set View.root as chgable so that
the root attribute is not cached
2019-11-09 YiFei Zhu <[email protected]>
* Python 3.8 support
* Fix richcompare for NodeTuple
* Warn, not error, when we get _NyHeapDefs_ from imported modules that
contain non-capsules
Version 3.0.8
2019-10-07 YiFei Zhu <[email protected]>
* Nothing changed, just releasing 3.0.8
2019-10-03 YiFei Zhu <[email protected]>
* RefPat.py: Add missing comma in string list [Ehsan Kia]
2019-10-02 YiFei Zhu <[email protected]>
* Don't cache Interface attributes because of invalidation is too painful,
and it barely makes a difference.
2019-09-26 YiFei Zhu <[email protected]>
* Unreachable code cleanup
* Use a temporary root object for traversal in initialization, to reduce
its performance penalty
2019-09-25 YiFei Zhu <[email protected]>
* Fix get_partition memoization
* Create FastPartition for reusing the already-computed partition
information after selecting from a single partition.
* Fix segfault in Horizon deallocation
2019-09-22 YiFei Zhu <[email protected]>
* Unreachable code cleanup
* Python 3 fixes RE.py and RE_Rect.py
Version 3.0.7
2019-09-21 YiFei Zhu <[email protected]>
* Nothing changed, just releasing 3.0.7
2019-09-20 YiFei Zhu <[email protected]>
* Simulate recursion with multiple node sets (MutNodeSet) and stacks
(PyList) for generating a reference graph, so we don't get a C stack
overflow
* Make tab completion with rlcompleter on a UniSet not so expensive by
using introspection and return if it's being called by rlcompleter
2019-09-19 YiFei Zhu <[email protected]>
* Traverse all GC tracked items to find non-GC-tracked dicts in dictof
classifier
2019-09-17 YiFei Zhu <[email protected]>
* Optimize dictof classifier by using GC data rather than heap traversal
* Scope all eval() in tests
* Use a stack instead of recursion for heap traversals, except reference
graph where a recursion limit is set
2019-09-16 YiFei Zhu <[email protected]>
* Disabled malloc hooks because of thread safety issues
* Fixed tests if installed as package
Version 3.0.6
2019-09-14 YiFei Zhu <[email protected]>
* Prime apport because it installs an sys.excepthook that imports stuffs
2019-09-12 YiFei Zhu <[email protected]>
* Fix __str__ on BasicMorePrinter not being paged
* Unreachable code cleanup
2019-09-11 YiFei Zhu <[email protected]>
* xmemstats import from pydll and msvcrt on Windows
* Made data from xmemstats malloc hooks sane
2019-09-10 YiFei Zhu <[email protected]>
* Fix Py3 porting of foo.next => next(foo)
2019-09-09 YiFei Zhu <[email protected]>
* Re-enable some Py2.7-disabled tests
2019-09-08 YiFei Zhu <[email protected]>
* Unreachable code cleanup
Version 3.0.5
2019-09-07 YiFei Zhu <[email protected]>
* Wheel binary compatibility fix for Python >= 3.7, < 3.7.4:
Use PyObject_GC_UnTrack instead of _PyObject_GC_UNTRACK
2019-09-06 YiFei Zhu <[email protected]>
* xmemstats: Resolve availability of most information at run time
* Minor bug fixes
2019-09-05 YiFei Zhu <[email protected]>
* Prefix thread states with interpreter number in RootState
* Minor bug fixes
2019-09-04 YiFei Zhu <[email protected]>
* Make first heap call faster by making an IdentitySet of a single
object instead of the entire heap during initialization
* Use _PySys_GetSizeOf as default size getter
* Allow xt_hd_traverse to be KeyboardInterrupt-ed
* Minor bug fixes
Version 3.0.4
2019-09-01 YiFei Zhu <[email protected]>
* Generate Profile Browser about / help
2019-08-29 YiFei Zhu <[email protected]>
* Add warning / error if attempting to install on non-CPython 3
2019-08-27 YiFei Zhu <[email protected]>
* Document how to load dumps in Profile Browser
2019-08-23 YiFei Zhu <[email protected]>
* Fix Profile Browser loading dumps
Version 3.0.3
2019-08-20 YiFei Zhu <[email protected]>
* Open help web pages with online version.
2019-08-19 YiFei Zhu <[email protected]>
* Fixed Profile Browser.
* Accept _NyHeapDefs_ from outside c capsules.
2019-08-18 YiFei Zhu <[email protected]>
* Add more attributes for traversal in root state.
Version 3.0.2
2019-08-18 YiFei Zhu <[email protected]>
* Multiple interpreter support returned.
* Bug fixes to Remote Monitor.
Version 3.0.1
2019-08-17 YiFei Zhu <[email protected]>
* Ported to Python 3
* Multiple interpreter support disabled.
* Classifier byclass removed. There are no more old style classes.
* Extended C integer size to work on 64 bit Windows machines.
* Many minor changes.
guppy 0.1.10
2013-04-25 sverker <sverker@sverker-HP-Pavilion-g6-Notebook-PC>
* guppy/sets/test.py (Test.test1): Added checks for Python 2.7
2011-05-24 Sverker Nilsson <sverker@sverker-laptop>
* src/heapy/hv_cli_dictof.c (hv_get_objects): New function that
emulates gc_get_objects because of optimizations to the dict
implementation which made them non-gc-tracked sometimes.
(hv_cli_dictof_update_new_method): Relies on new function
hv_get_objects to get at all dict objects in the heap.
2011-02-24 Sverker Nilsson <sverker@sverker-laptop>
* guppy/heapy/Part.py : Removed a failing assert in lack of a
better solution. The result may perhaps differ sometimes from
the true result, depending on the definition heap before/after.
2010-06-08 Sverker Nilsson <sverker@sverker-laptop>
* src/sets/bitset.c (mutbitset_iop_PyLongObject): Don't multiply
with SHIFT if _PyLong_Frexp is used
* guppy/heapy/test/test_Part.py (MixedCase.test_1): Changed the
test result if sys.version >= 2.7; because the size of strings
was optimized 8 bytes. (How ? )
* src/sets/bitset.c (mutbitset_iop_PyLongObject): Used
_PyLong_Frexp instead of _PyLong_AsScaledDouble if
PY_VERSION_HEX >= 0x02070000 . (_PyLong_AsScaledDouble disappeared
but I think I should complain, couldn't figure out how to add an
issue with the tracker.)
2010-02-16 Sverker Nilsson <sverker@sverker-laptop>
* guppy/sets/test.py (Test.test16.tsv): Expected OverflowError
instead of ValueError, an inconsequential change to do with
possiboe test error reporting.
2010-02-15 Sverker Nilsson <sverker@sverker-laptop>
* guppy/heapy/test/test_Classifiers.py
(SpecialCases.test_dictowner, SpecialCases.test_alt_retclaset):
Changed to use clock() instead of time() for cpu time
measurements. Added adaptive loop count as the time in some cases
were down to 0.01 s - which may be the resolution of clock(). Now
makes the time be about 0.5-1 s regardless of CPU speed.
* guppy/heapy/test/test_Path.py (NewTestCase.test_1):
Changed to use clock() instead of time() for cpu time measurements
in a test that is not currently used, just in case we begin to use it.
2010-02-14 Sverker Nilsson <sverker@sverker-laptop>
* src/sets/nodeset.c (nodeset_op_set): Just an inconsequential
change, it had two returns after each other.
* src/sets/bitset.c (mutbitset_iop_PyLongObject):
In the latest change where a loop over pos was added, changed type
from int to NyBit.
* src/sets/bitset.h: Checks endianness and defines macros to
handle it.
* src/sets/bitset.c (immbitset_long):
* src/sets/bitset.c (mutbitset_iop_PyLongObject):
Changes to work with big endian.
2010-01-02 Sverker Nilsson <sverker@sverker-laptop>
* guppy/etc/KnuthBendix.py
(KnuthBendix.make_confluent.add_reduction): Added missing argument
to % in error message
2009-08-30 Sverker Nilsson <sverker@sverker-laptop>
* guppy/heapy/Use.py (_GLUECLAMP_): Added loadall method
Version 0.1.9
2009-06-23 Sverker Nilsson <sverker@sverker-laptop>
* specs/index.gsl: download mentions today's date
* guppy/sets/test.py: Made it try numpy.random instead of
RandomArray; revert to random if no numpy.random could be
installed so more tests can get done albeit slower.
* MANIFEST.in: added specs/*.py
* ANNOUNCE : Added advertisement for http://sncs.se
2009-06-18 Sverker Nilsson <sverker@sverker-laptop>
* specs/index.gsl: Changed wording of tested pythons to exclude
having tested with python2.3 in 32 bit mode.
* src/sets/bitset.c (bits_first,bits_last): Changed to use #if
directive to get rid of warnings in 32-bit mode.
* src/sets/bitset.h (NyBits_N): Changed definition to use
ULONG_MAX to be able to use it in preprocessor #if directive.
* README (TEST): changed sample output to begin with test of sets.
* setup.py (doit): long_description now starts with newline to
look better in PKG-INFO
* ANNOUNCE: added wordings about heapy_tutorial, pop bug and test.
* guppy/heapy/test/test_all.py: added dependencies test
* specs/index.gsl: Added heapy_tutorial link
* specs/genguppydoc.py (GenGuppyDoc.gengsl): generate heapy_tutorial
* specs/heapy_tutorial.gsl: new file
* guppy/heapy/test/test_dependencies.py : new file
2009-06-16 Sverker Nilsson <sverker@sverker-laptop>
* specs/index.gsl: Added interactive help to example which was
moved to documentation section.
* src/sets/bitset.c (mutbitset_pop): changed type of i from NyBit to
int to work in 64 bits with test7 in sets/test.py .
(bits_last): made it work with 64 bits by testing the upper 32-bit half
(bits_first): made it use NyBits_N instead of NyBits_64
(bits_last): made it use NyBits_N instead of NyBits_64 , NyBits_32
(NyMutBitSet_pop): changed 1<<i to 1l<<i to work with 64 bits with
test12 of test.py.
2009-06-12 Sverker Nilsson <sverker@sverker-laptop>
* ANNOUNCE: Tells about interactive help with example.
* specs/index.gsl: Download section updated for 0.1.9. Credits
added Yaroslav Halchenko.
2009-04-07 Sverker Nilsson <sverker@sverker-laptop>
* guppy/heapy/Monitor.py: made import readline optional
* setup.py (doit): package_data uses *.html & *.jpg
2009-03-08 Sverker Nilsson <sverker@sverker-laptop>
* ANNOUNCE: news for 0.1.9
2009-01-09 Sverker Nilsson <sverker@sverker-laptop>
* guppy/gsl/Tester.py (TestOf.make_cat.get_example_expr): Made the
example values be regenerated each time. (Unless 0 is true.)
Affects speed sometimes (an extra function call per arg) but may
also be faster.
* guppy/heapy/Use.py (_GLUECLAMP_.load): changed usereadline to
use_readline to correspond to doc .
* guppy/heapy/Prof.py (Menu.delete): Removed commented-out lines
to delete commands.
2008-11-03 Sverker Nilsson <sverker@sverker-laptop>
* guppy/heapy/UniSet.py (UniSet & IdentitySet): Removed several
_get_xxx methods and put the definitions directly in properties as
lambdas with docstrings (to clean up result of help()) .
2008-10-31 Sverker Nilsson <sverker@sverker-laptop>
* guppy/heapy/Prof.py (_GLUECLAMP.pb_): Added docstring
* guppy/heapy/Monitor.py (monitor): Added docstring
* guppy/heapy/UniSet.py (UniSet etc): Made the docstrings of _get_
wording in terms of attributes rather than methods.
* guppy/heapy/Use.py (_GLUECLAMP_): Added more dir/help
* guppy/doc/__init__.py : Added more dir support
2008-10-28 Sverker Nilsson <sverker@sverker-laptop>
* src/sets/bitset.c (mutbitset_iop_PyLongObject): Made explit long
cast to long for num_poses, to get rid of warning from MSVC.
* setup.py: Removed extra_compile_args and extra_link_args vars.
* src/heapy/heapy.h: Removed DL_IMPORT macro usage.
* src/sets/sets_internal.h: Removed all DL_IMPORT macros.
to get rid of warning from MSVC about inconsistent linkage.
2008-10-25 Sverker Nilsson <sverker@sverker-laptop>
* setup.py: Removed the extra compile args for MSWindows -
they were only there for debugging.
2008-10-24 Sverker Nilsson <sverker@sverker-laptop>
* Added debug parameter to hpy().test() and made all test_main
functions take that parameter. When true, it will be possible
to look into the failure stack with pdb.pm() .
* Added Chad Austin's patch for MSWINDOWS
Made a temp os-determination. Have to check this out.
Changed macro FILL to return -1 to get rid of warning in a set init.
Made the initfunc in heapyc return an int to get rid of new warning.
Moved & renamed macro to NYFILL in new file src/include/guppy.h
which is intended to host general public guppy related includes.
Made corresponding changes FILL->NYFILL where used.
2008-06-18 Sverker Nilsson <sverker@sverker-laptop>
* guppy/doc/__init__.py (Tab): Added tabs for different help
browsing environments.
2008-06-17 Sverker Nilsson <sverker@sverker-laptop>
* guppy/doc/__init__.py (_GLUECLAMP_.help_instance): Added
method. Also added Subject class.
* guppy/heapy/UniSet.py (UniSet and subclasses): Added _help_url_
attributes and _get_help which uses this via help_instance, but I
began to think they should perhaps refer to the gsl kindnames
instead.
* guppy/doc/__init__.py (Document): Added class Document, various
restructurings in progress
2008-05-22 Sverker Nilsson <sverker@sverker-laptop>
* README (License): Added modify and redistribute wording to
the License for clarity, still refers to MIT license.
* Removed ihelp pkg. Changes to various files to reflect
ihelp->doc .
* Moved ihelp.__init__.py into guppy/doc
* Moved top-level doc dir into guppy package
* ihelp.__init__.py : continued improving text html rendering
2008-05-21 Sverker Nilsson <sverker@sverker-laptop>
* guppy/heapy/Spec.py:
* guppy/gsl/Filer.py:
* guppy/gsl/DottedTree.py:
* guppy (docstring): Changed quotes to """ from ''' because I
found pydoc.gui() (in Python 2.5) didn't recognize it otherwise.
* guppy/etc/Glue.py (Share.getattr2): Made it try getattr3 with
the CLAMP first even if it was a package.
2008-05-20 Sverker Nilsson <sverker@sverker-laptop>
* (Default): Made ihelp directory and made guppy.help work first
version.
* guppy/etc/PrettyPrintHTML.py: Added
* guppy/gsl/Html.py (Node2Html): visit_comment: Made it not
output anything to the XHTML file.
2008-05-14 Sverker Nilsson <sverker@sverker-laptop>
* (specs/index.gsl): Added external resources documentation
section and two external links.
2008-04-09 Sverker Nilsson <sverker@sverker-laptop>
* (changelog): Renamed to ChangeLog since Emacs insists on having
it as default name.
* MANIFEST: added specs/genguppydoc.py
* specs/index.gsl: Made it use css, improved table layout for doc
and download.
Added doc/css/guppy.css
Version 0.1.8
2008-04-08 Sverker Nilsson <sverker@sverker-laptop>
* guppy/gsl/Main.py (find_aspects_inseq): as->as_
Several other GSL-related files as -> as_
untabified setup.py to look better in pypi
Version 0.1.7
2008-04-07 Sverker Nilsson <sverker@sverker-laptop>
* guppy/heapy/test/test_View.py (FirstCasetest_cal_hiding): as->as_
* guppy/heapy/test/test_UniSet.py (FirstCase): as->asrt
* guppy/sets/test.py (test_set_operations and others): as->as_
* guppy/heapy/test/test_Classifiers.py (SpecialCases.test_2): as->asrt
* guppy/heapy/Classifiers.py (SoKind.__hash__): added
* For Python 2.6a2 ^^^
* specs/index.gsl: Added commentary in download section
referringing to svn as source of latest changes esp. 64 bit.
* Added specs/genguppydoc.py, to be able to regenerate docs from
svn'd files.
2008-04-05 Sverker Nilsson <sverker@sverker-laptop>
* guppy/heapy/test/test_Classifiers.py (SpecialCases):
Relaxed the timing test in test_alt_retclaset with a factor 2
from 2 to 4.
* guppy/heapy/test/test_heapyc.py (TestHeapView):
in test_timing:
it failed in python2.3 64 bit, I removed the check for now,
may check into this later...
* src/sets/bitset.c (bits_first): Removed xxx etc from comment, no
problem with being hardcoded for size and now tested with 64 bits.
(sf_realloc): changed the update of v->lo and v->hi to use better
defined pointer-arithmetic within allocated arrays. This solved a
problem with 64 bit mode in (at least) Python 2.4. May be a
coincidence that it seemed to work with 2.5.
2008-03-17 Sverker Nilsson <sverker@sverker-laptop>
* Several files, to make it complie without warnings in 32 bit
mode.
NyBit is now defined as Py_intptr_t and limits are calculated
a'la pyport.h .
* src/sets/bitset.h: using __LP64__ macro to indirectly define internal
conditional flags, NyBits_32 resp. NyBits_64
* guppy/heapy/__init__.py : checked sys.maxint to detmine arch
some size-dependent tests are relaxed if not 32-bit arch
* guppy/heapy/test_heapyc.py : relaxed a timing test
* src/sets/nodeset.c &c. changed some more occurences of int to NyBit
or perhaps they just became long in some place.
2008-03-13 Sverker Nilsson <sverker@sverker-laptop>
* Starting modifications to work with 64 bits.
* guppy/src/sets/ (bitset.h, nodeset.c, bitset.c), maybe others,
changes to especially the index type used as bit number in bitsets.
Defining type NyBit for this and also NySize. They are just
longs right now. Testing with Ubuntu 7.10 / AMD 64.
2007-02-16 Sverker Nilsson <sverker@localhost>
* Put it under svn. Changed to call it 0.1.7 in README and ANNOUNCE
2007-01-31 Sverker Nilsson <sverker@localhost>
* guppy/gsl/XHTML.py (Node2XHTML.visit_comment): Made it not
output anything to the XHTML file.
2007-01-25 Sverker Nilsson <sverker@localhost>
* guppy/gsl/Document.py (_GLUECLAMP_.output_handlers): Added XHTML entry
(Document.visit_output): Made the output mode specification case-insensitive.
* guppy/gsl: Added XHTML.py module - initially a copy of Html.py.
I am changing to be more conventional(?) - to use all upper case
in the XHTML name since that is how it is written looks in
documents on the web. (Is this contrary to Python conventions to
use Capitalized names?) But it would be too weird to write Xhtml
(or even worse XHtml) vs XHTML.
2006-11-08 Sverker Nilsson <sverker@localhost>
* guppy/gsl/Html.py (Node2Html.__init__): Changed (default,
still fixed) encoding to utf-8.
Version 0.1.6
2006-10-13 Sverker Nilsson <sverker@localhost>
* guppy/heapy/Use.py (_GLUECLAMP_._get_Root): This is what the
method should have been called, not get_RS that it became
yesterday.
Version 0.1.5
2006-10-12 Sverker Nilsson <sverker@localhost>
* guppy/gsl/Document.py: Made some changes wrt dl/dt/dd to make
the generated HTML code be more standards compliant, fixing
rendering problems occuring AFAIK at least using Firefox.
* guppy/gsl/Html.py: Fixed a problem with generated comments.
* guppy/heapy/Remote.py (on): Made the site module be imported
before Remote, to make it work in a normal installation when
PYTHONPATH does not contain the guppy package. Had to change the
recursion stopping flag to not be in the Remote module; now put in
sys.
(Annex) made h be a shorthand for hp in the remote interpreter, to
be consistent with new abridged example style.
* guppy/heapy/UniSet.py: Made sp be a shorthand for shpaths,
because it is such a commonly used attribute.
* guppy/heapy/[test_Path,test_ER].py : Made check of test results
fit changes made to Path.py resp. Use.py
* guppy/heapy/Use.py : Added RS attribute, to work with changes
in Path.py. Changed default reprefix to be 'hpy().' , to be more
meaningful in most cases.
* guppy/heapy/Path.py (_GLUECLAMP_.shpgraph): Made the source name
be derived from the Root attribute of the global hpy() instance in
the normal case when the root is RootSTate -- to describe the path
unambiguosly and show how it may be used.
Version 0.1.4
2006-10-11 Sverker Nilsson <sverker@localhost>
* guppy/heapy/View.py (obj_at): Uses new obj_at method in
immnodeset objects, to handle compatibility issues between Python
versions and also be much faster.
(referrers): After updating referrers, now checks that the domain
of referrer graph was really covering the objects it should, and
otherwise prints an error message and calls the debugger. -- I
don't know when this should happen, the problem might have been
due to a compilation version error, but I am letting the check
left in.
* guppy/etc/Glue.py: Checked ImportError message to see if it was
a clean ImportError (No module named %s) in which case it proceeds
as usual but otherwise the error is reported (showing the cause of
the error)
Changed '0x%x' to hex() to get rid of a compatibility warning
Added more informative message text when an AttributeError is
raised from getting an attribute from a module.
* src/heapy/stdtypes.c (frame_relate): Replaced use of f_nlocals,
f_ncells and f_nfreevars with values calculated from tuple sizes
and co_nlocals, because in 2.5 the fields are removed in frames.
(frame_traverse): Similarly removed use of f_nlocals.
(type_traverse and type_relate): Changed name of slots to ht_slots
if Python version >= 2.5.
* src/sets/bitset.c: Removed use of type intintargfunc which is
depreciated in Python2.5.
* src/sets/immnodeset.c: Added obj_at method to immutable
nodesets, to solve problems occuring when using id() in different
versions of Python (2.5 sometimes returns long ints) in the obj_at
method in View.py; the C method is cleaner and much faster based
on binary search.
* src/sets/nodeset.c: Made a pointer comparison compare cast to
Py_uintptr_t instead of pointers directly, to be more well defined
since the pointers are to different objects.
Removed the use of type intintargfunc which is depreciated in
Python2.5.
2006-10-09 Sverker Nilsson <sverker@localhost>
* guppy/heapy/test/test_Classifiers.py: Increased the number of
loops in a time test from 10 to 100 to get better precision on
faster machines. Removed a few tests that failed in newer Python
depending on different object representation. Changed the use of
er.classifier.partition(li.nodes) to li.by(er).partition to make
a testcloser to what would be used by the user. Added a debug
parameter to test_main.
* guppy/heapy/test/test_ER.py: Removed / commented out the many
printouts, added missing tests when feasible, changed assert
statements to self.assert_ calls, changed initial comments in test
methods to doc strings to make test printout more informative.
* guppy/heapy/test/test_heapyc.py: Removed some timing
printouts. I think I could add some tests there instead but it is
tricky to be portable and stable.
* guppy/heapy/test/test_Path.py (chkrel): Made it handle the case
where several relation edges were found, despite only one was
originally expected, because this happened because of sharing
introduced (likely by some optimization) in Python 2.5. Added
debug parameter to test_main and run_test.
* guppy/heapy/test/Use.py: Added test() method which will test all
of heapy - easier to remember and write than ... whatever I had to
write before.
2006-10-05 Sverker Nilsson <sverker@localhost>
* guppy/heapy/Classifiers.py: Uses str2int for conversion to
handle differences between Python versions.
* guppy/etc/etc.py: Added str2int function to have a single place
to handle conversion of (hexadecimal) strings to integers - as it
became more complicated when handling all Python versions 2.3 -
2.5.
2006-10-02 Sverker Nilsson <sverker@localhost>
* guppy/gsl/SpecNodes.py: Added get_arg method. Changed a use of 0
to False for clarity. Corrected context handling in
errmsg_context. Made get_line open a read from a file when
possible.
2006-07-21 Sverker Nilsson <sverker@localhost>
* Changed the comment in docexample so as to show that comments do
not need to have .c at the beginning of each line.
( Noting that the generated document seems a bit 'naked' can use
some more heading and some back-link to top, next etc.
2006-06-22 Sverker Nilsson <sverker@localhost>
* In gsl/Html.py, generalized the handling of header tags
to allow for spec of links. Added charset specification
to comply with W3C tests.
Version 0.1.3
2006-03-02 Sverker Nilsson <sverker@localhost>
* In View, changed usage ArgSet -> Kind
2006-02-17 Sverker Nilsson <sverker@localhost>
* In Remote.py, changed the on() function to not do anything if it
was called from within the annex thread itself. Changed RM.py to
NOT do this check. (Structural/implementation cleanup details.)
* In UniSet, changed name ArgSet -> Kind
(Implementation / documentation detail)
2006-02-14 Sverker Nilsson <sverker@localhost>
* Fixed bug with array sizing for Python 2.4 (in stdtypes.h)
Added test for this case (to test_View.py)
2006-02-07 Sverker Nilsson <sverker@localhost>
* Added type_traverse to stdtypes
because the GC one didnt work with 2.4.2 in debug mode
(It checked for heap type with assert.)
* Changed usages of '0x%x'%addr to hex(addr) to make valid
hex literals in Python2.4.
2006-02-06 Sverker Nilsson <sverker@localhost>
* Added Monitor command to interrupt the remote process.
(The ki command.) It can still not interrupt it at all times.
* Made end of file exit the monitor. (Otherwise may be infinite
loop for file input)
* Made Monitor use threading rather than thread because the
program exited more cleanly in newer Pythons for some reason.
2006-02-05 Sverker Nilsson <sverker@localhost>
* Reverted the change to heapg but added a depreciated warning
* Added the heapu method - a slightly better name
It finds the referred objects i.e. strings as well
* Made the representation of a Stat indicate itself as such
to differentiate from repr of sets.
* Made the sort order of stat diff be what it claimed (largest
first)
* Fixed Monitor so it passes empty commands along
so multi-line commands can be used in remote interpreter.
* Changed the command string for quitting an interactive console
since 'q' is valid syntax
changed to: '-'
2006-02-03 Sverker Nilsson <sverker@localhost>
* Added priming of list and tuple iterators
so their slot wrappers dont suddenly show up unreachable.
* Made heapg return just .byclass.stat
to safeguard against common subtle problems.
* Added one-time initialization in View.heap
* Added ref option to reference pattern creator
* Dropped the usage of 'observation containers' in heapg
since it is too brittle.
* Uncommented call to deletecommand in fixed Menu in Prof.py
* Added dump method to IdentitySet
* Added Use.setrel
2006-02-01 Sverker Nilsson <sverker@localhost>
* Made help text of get_rp use shorter lines and added some
missing help text. Wrapped some other program lines.
* Stopkind in rp should be independent on classifier
try eg using er=h.Type. Change to RefPat.
2006-01-23 Sverker Nilsson <sverker@localhost>
* Added some comments to C code (heapdef.h)
* Have added some method to SpecNode (copy)
0.1.2
2006-01-17 Sverker Nilsson <[email protected]>
Primary Bugs
* Fixed a pointer comparison bug in nodegraph.c ,
which made a test fail in my new system
(with Linux 2.6.12-9-386) and could effect the outcome
of algorithms such as the shortest path.
* Fixed the address comparison in View.obj_at so it
handles unsigned addresses.
Test Portability Issues
* Made test_via in test_Classifiers work in Python 2.4
getting around the optimization of tuple constants.
* Relaxed guppy.heapy.test.test_Classifiers.RenderCase
since it was picky and list size changed in Python 2.4 .
* Relaxed test_Path.test_nodeset_relation
since it wasn't portable across different kernel versions.
* Fixed a test bug in sets/test.py where the range
step became zero with faster=0.
guppy-0.1.1
2005-12-01 Sverker Nilsson <[email protected]>
* Changed C code to be ANSI compatible
* Changed some outdated help text
guppy-0.1
2005-11-25 Sverker Nilsson <[email protected]>
* Initial version