Source

pyobjc / pyobjc / 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
 987
 988
 989
 990
 991
 992
 993
 994
 995
 996
 997
 998
 999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
2003-03-09  Bill Bumgarner  <bbum@codefab.com>
    * Lib/Foundation/__init__.py: Added declarations for all of the informal
      protocols in Foundation.

2003-02-28  Bill Bumgarner  <bbum@codefab.com>
    * Lib/AppKit/__init__.py: Added three (void) methods to
    NSTableViewDelegate and added NSOutlineViewDelegate.

2003-02-27  Bill Bumgarner  <bbum@codefab.com>
    * Lib/AppKit/__init__.py (NSTableViewDelegate): Added NSTableViewDelegate
      declaration and updated TableModel2 example.

2003-02-25  Bill Bumgarner  <bbum@codefab.com>
    * Restructured Modules/ to reflect the division between modules.  Names
      are the same as their framework counterparts as much as possible.

2003-02-24  Bill Bumgarner  <bbum@codefab.com>
    * Moved code generation scripts to Scripts/CodeGenerators.  Added a very
      basic README to CodeGenerators.
    * setup.py: Set USE_ADJUST_REFCOUNTS to 0 because that has been the
      behavior in the bridge for quite some time.

2003-02-15  Bill Bumgarner  <bbum@codefab.com>
    * Modules/objc/objc_support.m: Invocation now uses alloc/init instead of
      +invocationWith... class method.  This prevents spurious "no pool, just
      leaking" errors from certain threaded situations.
    * Modules/Cocoa/NSAutoreleasePoolSupport.m: Fixed a really stupid memory
      leak in pop pool.

2003-02-06  Bill Bumgarner  <bbum@codefab.com>
    * Lib/Foundation/test/test_nsstring.py: Added another test from David
      E. that demonstrates issues with string encoding.

2003-02-04  Bill Bumgarner  <bbum@codefab.com>
    * Lib/AppKit/test/test_nscell.py (TestNSCell.testFloat): Added unit test
      from David Eppstein.
    * objc_support.m (depythonify_c_value): Now uses OC_PythonString to
      encapsulate strings.
    * OC_PythonString.m: implemented.  Class should be optimized by covering
      the various random utility/extension methods in NSString's API as
      transparent call-throughs to the appropriate method/function on the
      encapsulated CFString.
    * OC_Python*.m: fixed -dealloc to call super.

2003-02-03  Bill Bumgarner  <bbum@codefab.com>
    * Lib/Foundation/test/test_nsundomanager.py: Added integer test from
      David Eppstein
    * _convenience.py:  removed mapping of __repr__ to -description
    * Cocoa-Python Document-based Application:  Fixed copy files phase and
      references to PyObjC module.

2003-02-02  Bill Bumgarner  <bbum@codefab.com>
    * Project Templates/clean.py: Added a simple script to clean the project
      template tree.

2003-02-01  Bill Bumgarner  <bbum@codefab.com>
    * Moved project templates to copy the PyObjC directory from
      site-packages.  Fixed Web Services Tool example appropriately.
    * Lib/objc/_convenience.py:  __repr__ and __str__ now both invoke
      -description.   Not sure why __repr__ doing that was commented out
      before, but it seems to work-- same set of unit tests pass.
    * Lib/Foundation/Conversion.py:  Now handles NSValue instances correctly
      [like NSNumber].

2003-01-31  Just van Rossum <just@letterror.com>
    * Added autoGIL extension module.  It's a top-level module as it's not
      Cocoa- or PyObjC-specific. In fact it may end up in the Python
      distribution at some point.  autoGIL.installAutoGIL() is called at
      the end of Foundation/__init__.py. This installs a callback in the
      CFRunLoop for the main thread, that releases the Global Interpreter
      Lock when the event loop goes to sleep, and acquires it again when it
      wakes up.  This allows other Python threads to run while an app is
      inside the event loop.

2003-01-25  Bill Bumgarner  <bbum@codefab.com>
    * Modules/objc/libffi_support.m: Modified such that a Python based
      implementation can be stuck onto an objc class through the user of a
      closure to carry along the Python callable.   See classAddMethods().
    * Modules/objc/module.m: Added classAddMethods()
    * Lib/objc/test/test_methodedits.py: unit tests for classAddMethods().
      One currently fails due to a bug in PyObjC.

2003-01-23  Bill Bumgarner  <bbum@codefab.com>
    * setup.py (USE_FFI): Enabled FFI.  Refactored setup.py slightly to push
      FFI configuration to top.

2003-01-20  Bill Bumgarner  <bbum@codefab.com>
    * Lib/Foundation/Conversion.py: Fixed tests to ensure that "" and 0 are
      not counted as None.

2003-01-18  Just van Rossum <just@letterror.com>
    * Make AppKit.NSApplicationMain() propagate exceptions back to Python.
    * Include the entire exception info (type, value and traceback) when
      converting a Python exception to an NSException. This is needed to
      get a complete traceback.

2003-01-18  Ronald Oussoren <oussoren@cistron.nl>
    * Remove the PyOBJC_UNIQUE_PROXY option, it is always on anyway.
    * Remove mechanism for registering methods that return a 'new'
      instead of a 'borrowed' reference. This mechanism is too
      simplistic.
    * Initial support for special support of init methods: These return
      self, and if they don't the old value of self probably is no longer
      valid. 
    * Bugfixes in libffi support
    * Some performance enhancements, the effects are fairly minor.
      I'm not too happy about the new version for objc_methodlist_magic, I'll
      probably revert this change later on.
    * Add workaround for a feature of NSData: 
    	x = NSData.alloc()
	    y = x.initWithBytes_len_(foo, bar)
      The initWithBytes_len_ call above acts like realloc(): 'x' might no
      longer be a pointer to a valid object. 
    * Add <class>.pyobjc_classMethods, <object>.pyobjc_classMethods and
      <object>.pyobjc_instanceMethods. The attributes of these attributes
      are the class and instance-methods of the <class> or <object>.
    * Typo in "Project Templates/00README.txt"

2003-01-18  Bill Bumgarner  <bbum@codefab.com>

    * Modules/objc/OC_PythonDictionary.m ([OC_PythonDictionary
      -objectForKey:]): Fixed -objectForKey: to return nil if key did not
      exist (previously, it would segfault).   This mimics NSDictionary
      behavior.
    * Lib/Foundation: moved conversion functions to their own module;
      Conversion.   collections unit test now tests conversion and conversion
      helpers.

2003-01-17  Bill Bumgarner  <bbum@codefab.com>
    * Lib/objc/_convenience.py (enumeratorGenerator): Busted by the language police!

2003-01-16  Bill Bumgarner  <bbum@codefab.com>
    * Lib/objc/_convenience.py: Fixed enumeratorGenerator() to test
      nextObject against None.  This fixes a bug where an empty string in an
      array would terminate enumeration even if there were objects after the
      empty string.

2003-01-14  Bill Bumgarner  <bbum@codefab.com>
    * Lib/AppKit/__init__.py (NSApplicationDelegate): Added
      NSApplicationDelegate definitions.
    * Modules/Cocoa/_AppKit.m (objc_NSApplicationMain): Evil hack to fix bug
      in NSApplicationMain()'s lack of argument processing.  Evil Evil hack,
      but it works.

2003-01-13  Bill Bumgarner  <bbum@codefab.com>
    * Lib/objc/_convenience.py: Added support for NSEnumerator [for x in
      enum:] and cleaned up other convenience methods.

2003-01-11  Bill Bumgarner  <bbum@codefab.com>
    * setup.py (req_ver): Moved back to non-ffi build (I believe the move to
      ffi was an unintentional change?).
    * Modules/Cocoa/_AppKit.m: Added bridging of NSRectFillList.  API should
      be in GNUstep?
    (objc_NSRectFillList): Fixed short-circuit where rectCount is 0.

2002-01-06 Ronald Oussoren <oussoren@cistron.nl>
    * Merged the second halve of Mirko's patch: Changes to Modules/Cocoa
    * I've done some updates to make ensure that there are no patches to
      generated files.

2003-01-06  Bill Bumgarner  <bbum@codefab.com>
    * Doc/coding-style.txt: Added more information about ReST.  Some cleanup.
    * Modules/objc/module.m: Added convenience function to allocate a buffer
    via PyBuffer API (result is a buffer with a fixed length / location --
    useful with NSData and NSBIR).
    * Modules/Cocoa/NSAutoreleasePoolSupport.m: Now thread safe.

2003-01-05  Bill Bumgarner  <bbum@codefab.com>
    * test_nsbitmapimagerep.py: Data test now passes.  Deeper investigation
    revealed that there is no easy way to unify the types passed into an
    NSBIR and what is returned by -bitmapData/-getBitmapDataPlanes.  Namely,
    there is no way to produce a read/write buffer from an array.array()
    without dipping directly into the C API.

2002-01-05  Ronald Oussoren <oussoren@cistron.nl>
    * Merged initial version of GNUstep support by Mirko Viviani 
      <mirko@objectlab.org>
    * This patches only Modules/objc and setup.py. Mirko also sent
      a patch for Modules/Cocoa, I'll merge that later.

2003-01-04  Bill Bumgarner  <bbum@codefab.com>
    * CocoaApp.pbproj/TemplateInfo.plist: Added description text.
    * Modules/Cocoa/_AppKitMapping.m: Added AppKitMapping as new module in
    setup.py (why wasn't it there before?).  Added support for
    NSImageBitmapRep.  Can now create a bitmap rep w/many arg designated
    intiailizer and can invoke -getBitmapDataPlanes.   Unit test included.
    array instances returned by -getBitmapDataPlanes are mutable and, as
    such, it is now possible to edit/manipulate NSIBR directly in Python.
    * _AppKitMapping.m: Improved error messages for not-yet-supported methods
    and fixed calls to super.   Fixed up unit test.  Added initial support
    for -bitmapData.

2003-01-03  Bill Bumgarner  <bbum@codefab.com>
    * Modules/objc/objc_support.m: Augmented error message for Unhandled type.
    
2003-01-03 Ronald Oussoren <oussoren@cistron.nl>
    * Added methods to objc/_convenience that allow us to use 
      NSArray.arrayWithObjects_ and other varargs constructors (by calling
      non-varargs versions under the hood)

2003-01-03  Bill Bumgarner  <bbum@codefab.com>
    * Scripts/runalltests: also check to make sure file ends with '.py' (to
      avoid '.py~' files.
    * Modules/Cocoa/_FoundationMapping.m: Started moving the various class
      specific method registrations to separate source files but static
      variables defeated me.  
    * Lib/Foundation/test/test_nsdata.py: Added test for NSData class cluster
      (including NSMutableData).   Refined tests a bit;  test for more
      conditions and for situations that should raise an exception.
    * NSData: Added support for -bytes.
    * NSMutableData: Added support for mutableBytes
    * NSData: Added support for +dataWithBytes:length:

2003-01-01  Bill Bumgarner  <bbum@codefab.com>

    * Project Templates/Cocoa-Python Application/bin-python-main.m: Added
    Cocoa/Cocoa.h in hopes that it'll fix indexing.

    * Project Templates/Cocoa-Python
    Application/CocoaApp.pbproj/TemplateInfo.plist: Added __main__.py,
    removed Main.py

    * Examples/CurrencyConverter/00README.txt: Created a simple README
    describing how to build the CurrencyConverter example.s a

    * Examples/addressbook.py (me): Checked to make sure there is really a
    'me' card in the address book.  If the user hadn't marked a card as 'This
    is my card', the script tossed an exception.

2002-12-23 Ronald Oussoren <oussoren@cistron.nl>
    * Automaticly convert 'self' argument to Objective-C if it is a Python
      string, or int (just like for other arguments). This allows calls like
      >>> NSString.localizedCaseInsensitiveCompare_('foo','bar')
     
2002-12-22 Ronald Oussoren <oussoren@cistron.nl>
    * Introduce support for libffi. For now the only advantages are a faster
      build and smaller libraries.

2002-12-19  Bill Bumgarner  <bbum@codefab.com>
    * RELEASE 0.8
    * Modules/Cocoa/_Foundation.m (and others):  Added #ifdefs that will only
    import the files if on 10.2 or greater.   This provides the foundation for
    10.1 compatibility, but the autogenerators and other pieces need to be put
    into places.

2002-12-17  Bill Bumgarner  <bbum@codefab.com>

    * Project Templates/Cocoa-Python Application/MyAppDelegate.py: Moved to
    AutoBaseClass.  Added significant documentation.

    * Project Templates/Cocoa-Python Application/bin-python-main.m: Integrated
    all of Jack's, Ronald's and my suggestions/patches/changes (that I could
    remember).

    * Project Templates/Cocoa-Python Application/__main__.py: Brought in line
    with Web Services Tool example.  Minimized the # of lines.

    * setup.py: Added test directories.

    * MANIFEST: Completely redid.

    * Scripts/buildpkg.py (PackageMaker.build): Tried to add RootOnly install
    flag.  Won't work until we move to new style packaging format.

    * ReadMe.txt: Added brief note about installing the packaged version.

    * Scripts/make_distrib.py (fd): Numerous changes.  Final products are
    built into a directory that can be directly disk imaged.  Directory
    contains readme, license, and changelog.  Package now contains developer
    examples. More cleanup of spurious files from trees to be packaged.

    * Cleaned up Cocoa-Python template;  synchronized with WebServicesTool
      example.  Added lots of comments.

2002-12-15 Ronald Oussoren <oussoren@cistron.nl>
    * Erase reference to the Python half before doing the [super release] 
      call that will release the Objective-C half of an instance of a
      Python subclass of an Objective-C class. This way we can't accidently
      call into the, already dead, python object. 

2002-12-08  Bill Bumgarner  <bbum@codefab.com>
    * Examples/WebServicesTool: Added a lot of inline documentation to the
          python code.
    * BUGS: Removed some of the already fixed bugs.  Removed legacy
          information that is no longer relevant.  Added new bugs. Added
          information to existing bugs.
	* FIXME: Edited to bring some stuff up to date.
	* Lib/Foundation/test/test_nsautoreleasepool.py (suite): Added
	  unittest to test NSAutoreleasePool bug workaround.
	* Modules/Cocoa/NSAutoreleasePoolSupport.m: Added bogus push/pop
	  workaround for NSAutoreleasePool bug.
	* INSTALL: Rewrote a good chunk of the text.  Removed references
	  to NeXTSTEP.hange
	* Examples/HelloWorld.py: Reworked example a bit to match modern
	  usage.
	  - References classes through AppKit/Foundation, not by looking up
        	    directly. 
	  - Added an action method to Hello button so it does something
	  even when sound is turned off.
	* Modules/objc/module.m: Fixed import in module.m;  wrong case.

2002-12-01  Bill Bumgarner  <bbum@codefab.com>
	* cleaned up nsobject unittests slightly [had cruft from nsarray]
	* added NSAutoreleasePool test

2002-11-27  Bill Bumgarner  <bbum@codefab.com>
	* make_distrib.py automatically removes CVS directories and
	.DS_Store files from tree before packaging.

2002-11-25 Ronald Oussoren <oussoren@cistron.nl>
	* Examples/{TableModel, CurrencyConverter, Todo}:
	  - Use NibClassBuilder module
	  - Use bundlebuilder module
	* Lib/objc/builder.py: Remove, no longer used

2002-11-22 Ronald Oussoren <oussoren@cistron.nl>
	* Examples/TableModel2/main.m: Set PYTHONPATH in the environment of
	  the child
	* Import bundlebuilder.py and plistlib.py from MacPython
	* Remove Tools/mknibwrapper: It is no longer needed
	* Added scripts/nibclassbuilder, as suggested by Just van Rossum

2002-11-20 Ronald Oussoren <oussoren@cistron.nl>
	Translated a number of names to a more Cocoa like syntax:
	* objc.lookup_class -> objc.lookUpClass
	* objc.class_list -> objc.getClassList

2002-11-18 Ronald Oussoren <oussoren@cistron.nl>
	* Doc/classes.txt: new file documenting how classes work
	* Lib/objc: Reformatted (4-space indent) and remove superfluos 
	  whitespace

2002-11-17  Bill Bumgarner  <bbum@codefab.com>
	* Normalize whitespace
	* allow extractClasses() to be called multiple times for one nib
	  (well it was allowed, but now less double work is performed)
	* renamed NibClassBuilder to _NibClassBuilder: AutoBaseClass is
	  not the way it's done.
	* added module doc string and variaus method doc strings
	* renamed loadClassesEtc. to extractClasses(), has a signature
	  is as discussed on the list (ie. can parse nibs by name or by
	  path)
	* Changed name of NibLoader to NibClassBuilder

	[Changes from Just van Rossum -- bbum acting as proxy because
	Just's sourceforge account is broken]

2002-11-15  Bill Bumgarner  <bbum@codefab.com>
	* Fixed a minor bug in NibLoader.py when specifying NIBs without
	the .nib extension

2002-11-15 Ronald Oussoren <oussoren@cistron.nl>
	- Modules/objc: Remove sel_class_method and sel_allocator from
	  selector objects, and introduce a sel_flags.
	- Modules/objc/selector.m: Add Python visible attributes that allow
	  reflection to access more information about selectors/methods.
	- Modules/objc/selector.m: donate_ref attribute is writable, allowing
	  python code to update this flag. Should be used only in setup
	  code.
	- Also check for updated Objective-C method-tables in obj.__getattr__,
	  PyObject_GenericGetAttr directly pokes into the class __dict__
	  instead of calling objc_class.__getattr__.

2002-11-15  Bill Bumgarner  <bbum@codefab.com>
	* Changed the names of various methods from loadNib to
	loadClassesForNib to better follow the Cocoa APIs.
	* Just rewrote the NibLoader.py;  added the new version.

	* Modified NibLoader to not generate a class for FirstResponder.
	* Integrated Just van Rossum's NibLoader script into the module.

2002-11-13 Ronald Oussoren <oussoren@cistron.nl>
	* Added workaround for 1 of the problems with NSTextView

2002-11-11  Bill Bumgarner  <bbum@codefab.com>
	* Fixed spelling error in NSComboxBoxDataSource definition.

2002-11-11 Ronald Oussoren <oussoren@cistron.nl>
 	* Lib/objc/__init__.py: Don't remove current directory from sys.path

2002-11-08 Ronald Oussoren <oussoren@cistron.nl>
	* Use integer for lots of userInfo arguments in the AppKit

2002-11-08  Bill Bumgarner  <bbum@codefab.com>
	* Cleaned up the Cocoa-Python project template.

2002-11-05  Bill Bumgarner  <bbum@codefab.com>
	* added an NSNumber test

2002-11-02  Bill Bumgarner  <bbum@codefab.com>
	* Change addressbook example to be in line with updated
	convenience methods.

2002-10-31 Ronald Oussoren <oussoren@cistron.nl>
	* Use 'nibwrapper' technique in all GUI examples.
	* Actually remove old version of classnib.py and add the
	  version in the new location (as used by Tools/mknibwrapper)

2002-10-31  Bill Bumgarner  <bbum@codefab.com>
	* Fixed a typo in NSOutlineViewDataSource.
	* Fixed the classnib.py script slightly.
	* Added support for NSSet in the convenience methods.

2002-10-30  Bill Bumgarner  <bbum@codefab.com>
	* Many, many changes to the convenience methods in the objc
	module.  Wrote a bunch of tests in test_nsarray and
	test_nsdictionary.

	* Fixed a bug in the NSDraggingDestination method declarations and
	made all of the methods optional (the developer only needs to
	implement a subset of the methods and none of the methods are
	required to be a part of that subset).
	* Fixed 'in' operation on arrays to use containsObject:.  Should
	work with sets.  Will not work with NSDictionary.
	* Fixed enum parser to handle enums that don't start with a
	typedef.  Regenerated appkit and foundation enumerated types files
	to pick up missing enums.
	* Added some tests and cleaned up a bit of the existing tests in
	test_subclass.py

2002-10-30  Ronald Oussoren <oussoren@cistron.nl>
	* Fix memory corruption bug
	* Add Obj-C exception handling around calls to ObjC_FindNative,
	  this avoids an unhandled exception when during:
	  	help('Foundation')
	  I didn't add a testcase for this as the above code takes a
	  _very_ long time to execute.
	* Some minor code cleanup (mostly removal of print statements)
	* Reset '__module__' of classes in the __init__.py of AppKit and 
	  Foundation. help(AppKit) now works (and generates an lot of
	  output)
	* pythonify_c_value("@", ...) now correctly process Class objects.
	* Modules/objc/class-builder.m: Can't just call 
	  objc_msgSendSuper({ self->super_class->isa, self }, ...), that
	  won't work when we are the super-class of self...
	* lib/objc/test/test_subclass.py: Added testcases for above
	* Digits are valid characters in Objective-C classnames,
	  class-builder.m incorrectly assumed they are not.
	* Lib/objc/_convenience.py: It is now possible to add multiple
	  convenience methods when an Objective-C selector is present, use
	  this to provide better wrapping of NSDictionary
	* Lib/AppKit/classnib.py: Moved from Lib/objc/classnib.py, removed
	  custom parser and use NSDictionary instead.
	* Tools/mknibwrapper: Script using AppKit.classnib for generating
	  a module declaring base classes for classes defined in NIB files.
	* Examples/{TableModel,iClass}: Use script above


2002-10-29  Bill Bumgarner  <bbum@bumbox.local.>

	* Fixed a bug in convenience method that covered objectForKey:.
	Wrote a unit test that failed due to the bug
	(test_nsdictionary.py), then fixed _convenience.py to fix the
	problem.

2002-10-28 Ronald Oussoren <oussoren@cistron.nl>
	* Doc/wrapping.txt: New file containing basic documentation on how
	  to wrap an Objective-C class library.

2002-10-25 Ronald Oussoren <oussoren@cistron.nl>
	* Improved inline documentation

2002-10-25  Bill Bumgarner  <bbum@codefab.com>

	* Changed the objc_support.m to compile in the invocation tear
	down code.

2002-10-24  Bill Bumgarner  <bbum@codefab.com>

	* Fixed up web services tool example slightly.

	* Changed objc_selcall to not release allocator method returns.
	Not sure if this is absolutely correct, but if fixes a bunch of
	code that had been implemented in a standard pattern.

	* Added a number of NS* tests.
	* "Fixed" a crasher that would happen after the second time a
	collection class was alloc()'d.

2002-10-23  Bill Bumgarner  <bbum@codefab.com>
	* Added a test_paths test suite to Foundation.  Tests one function
	(currently causes a bus error).

2002-10-22  Bill Bumgarner  <bbum@codefab.com>
	* Split Foundation unit tests into two suites.

	* Updated objc unit tests a bit.
	* Added Foundation unit tests.
	* Moved a number of tests from objc -> Foundation.

	* Updated the MANIFEST (too bad we can't effectively use MANIFEST.in)
	* Slight correction/addition to setup.py

	* Added basic unit tests to objc.
	* Implemented __ne__ in terms of isEqual_ (not isNotEqual_).
	* Added unit test that tests that an object is equal to itself.

2002-10-21 Ronald Oussoren <oussoren@cistron.nl>
	* scripts/buildpkg.py: Import from Python 2.3 CVS, with one minor
	  bugfix
	* scripts/make_distrib.py: Create source archive and installer
	* Modules/objc/register.m: Add signature that is needed to write
	  system services in Python.

2002-10-18  Bill Bumgarner  <bbum@codefab.com>
	* Fixed the -dealloc method in OC_PythonDictionary.
	* Disabled gc in objc's __init__.py (I thought we had done this in
	the past, but it seems to have gotten lost) only for python
	2.2.x.
	* Replaced all occurrences of True and False to 1 and 0 in
	Ronald's previous changes.
	* Changed TableModel2 example to be like TableModel example

2002-10-18 Ronald Oussoren <oussoren@cistron.nl>
	* Better fix for crash while converting exception from Python to
	  Objective-C
	* Code cleanup in OC_*.[hm], ObjCPointer.m
	* Cleaner code to check if the Objective-C class has a changed 
	  method table.
	* Native selectors now have a 'defining_class' attribute, which 
	  contains a reference to the class that defined this method.
	* Added type objc.informal_protocol, which can be used to eliminate
	  most existing cases of explicit calls to 'objc.selector'
	* Adding methods like __getitem__ to Objective-C class proxies is
	  now done using python code. This should make it easier to change
	  the implementation (and: less C code ==> good)

2002-10-17  Bill Bumgarner  <bbum@codefab.com>
	* Fixed a situation where ObjCErr_ToObjC() would crash if the
	exception lacked a value or traceback.

	* propertyListFromPythonCollection() takes an optional kv argument
	that is used as a helper function when the type to be converted in
	the python collection is not recognized.   For example, the
	xmlrpclib returns a [somewhat inadequate] internal type known as a
	DateTime.  To convert this to a Foundation class requires some
	jumping through hoops that may change a bit during context.  The
	caller can provide a helper function to do the conversion.

2002-10-16  Bill Bumgarner  <bbum@codefab.com>
	* NSClassFromString() was implemented twice in the Foundation's
	__init__.py.  The second implementation was supposed to be
	NSStringFromClass(). Fixed.

	* Added propertyListFromPythonCollection() function to
	Foundation.  It converts a Python collection (string / dict /
	array / tuple / numbers) into a corresponding tree of Obj-C
	NSString / NSDictionary / NSArray / NSArray / NSNumber instances.

2002-10-15 Ronald Oussoren <oussoren@cistron.nl>
	* Exceptions are now transparently transfered to the other language.
	  Upon transitioning back into the source language the exception
	  regains its orginal 'identity'

2002-10-11  Bill Bumgarner  <bbum@codefab.com>
	* Removed various debugging/development noise from startup.

	* Regenerated various incs in Modules/Cocoa based on new scripts.

	* Updated Examples/WebServicesTool to be compatible with Apple
	supplied Python.  Created a new main() implementation that
	transfers control to '/usr/bin/python' via execve().

	* Modules/Cocoa/scripts: Modified all scripts to use 0/1 instead
	of False/True for compatibility with Python 2.2.  Modified scripts
	that generate a table of information to emit the 'static' keyword
	at the head of the declaration.  This fixes a namespace collision
	with the Apple supplied Python.
	

2002-10-10 Ronald Oussoren <oussoren@cistron.nl>
	* Modules/objc/objc-class.m: Implemented a 'class_traverse' function
	  For some reason Python 2.2.0 crashes when we inherit tp_traverse
	  from PyTypeObject AND the ObjCClass is not fully constructed.
	* MANIFEST: Updated to current situation
	* README: Apple python now seems to work

2002-10-09 Ronald Oussoren <oussoren@cistron.nl>
	* Move Cocoa.AppKit and Cocoa.Foundation packages to AppKit
	  and Foundation
	* Some backward compatibility code for Python 2.2.0. This
	  includes disabling the GC module for now: This module interacts
	  badly with us.

2002-09-28 Ronald Oussoren <oussoren@cistron.nl>
	* objc-class.m: Actually implement the selector->python cache,
	  this significantly speeds up method dispatch (iClass is now
	  pretty snappy)

2002-09-23 Ronald Oussoren <oussoren@cistron.nl>
	* Changelog: fix my e-mail address.

	* setup.py: Check for a framework install of python on MacOS X

	* setup.py: Check for Python 2.3 or later

	* OC_PythonObject.m: Remove debug printf statements

	* class-builder.m: 
	  - Use alloca instead of malloc for small buffers
	  - Use signature string from the Python wrapper of a class, instead
	    of reading it directly from the Objective-C class: The user may
	    have specified a better signature.

 	* objc-class.m:
	  - Add 'tp_compare' and 'tp_hash' special methods.
	  - Fix memory leak in ObjCClass_FindSelector

	* objc_support.m:
	  - Add support for unicode strings
	  - In depythonify_c_value: do nothing if output buffer is NULL
	  - arguments arena support is completely disabled. As a side-effect,
	    _C_PTR values inside structures/arrays are no longer translated
	    to/from python.

	* objc_util.m: Translate some Cocoa exceptions into Python 

	* selector.m:
	  - Remove debug printfs
	  - Actually add implementations for ObjCSelector_Signature
	    and ObjCSelector_Selector
	
	* super-call.m:
	  - The python wrapper for an Objective-C method might know a better
	    signature than the method itself.
	
	* Modules/Cocoa:
	  - Copied later version, including some more constants.

	* Lib/objc/__init__.py: 
	  - Re-enable __setitem__ special method for objects with
	    setObject:forKey:
	  - IBAction is now a function
	  - If we are a '.app' add the Resources directory to the python
	    search-path (and at the front), and remove the '.' that is 
	    normally at the front. 

	* Lib/objc/_FoundationSignatures.py
	  - Add better signatures for a number of methods

	* Lib/objc/builder.py: Remove invalid comment

	* Examples/iClass: New example (Cocoa class browser)
	  

2002-09-15 Ronald Oussoren <oussoren@cistron.nl>
	* Fix a number of memory leaks. There are still some leaks left.

	* Some minor cleanups

	* Documentation about reference counts.

2002-09-08 Ronald Oussoren <oussoren@cistron.nl>
	* Redid the merge, the directory structure has been reorganised to
	  better reflect the importance of the modules for Cocoa programming.

2002-08-09 Ronald Oussoren <oussoren@cistron.nl>
	* this is the start of the merge of an experimental and completely
	  seperate branch. 


2002-01-30  Steve Majewski <sdm7g@Virginia.EDU>
	
	* will now build for Python 2.2
	 (includes a #define to correct bug in Python-2.2 abstract.h)

	* Cocoa package containing Foundation and AppKit added
	  to HelloWorld.py in Examples. MANIFEST and setup.py 
	  updated. 
	
	* PyObjC_Version  changed to 0.6.1 
	 (and ObjC.m changed to make __version__ a string.)

	 * OC_PythonObject.m addes NS_HANDLER code to try to
	  catch problem code, but now it just dies with a BusErr
	  somewhere after the exception.

2002-1-22  Steve Majewski <sdm7g@Virginia.EDU>
	
	* setup.py : added -g flag to compile for debugging
	
	* ObjC.m :  -v flag now dumps message sends to /tmp file
	
	* ObjCObject.m : added ISCLASS test before isKindOfClass -
	  without check, it crashes on sends to abstract classes
	  like NSProxy. Removed previous hack that wrongly commented
	  out some [super forwardInvocation] messages.

	* Examples/HelloWorld.py : fixed spelling and inserted
	    missing line.

2001-04-05  Steve Majewski <sdm7g@Virginia.EDU>

	* ObjC.h,objc_support.m,ObjCMethod.m:  Changed conditional code 
	for Mac OSX. ObjC.h conditionally defines MACOSX and other
	modules use that #ifdef.

	* ObjC.h (PyObjC_VERSION): Version 0.6.
	
2001-03-17  Bill Bumgarner  <bbum@localhost>

	* changed name of imported module to pyobjc to be more consistent
	with other modules (that typically have an all lower case name).

	* removed all old style Makefile and configuration stuff and moved
	to using setup.py.   Setup.py proves to be much easier to handle
	in a cross platform fashion and requires fewer steps to build the moudle.

1998-08-18  Lele Gaifax  <lele@paci.nautilus>

	* objc_support.h (ISCLASS): Check against META flag, an object is
	a class when its class pointer points to a metaclass...

	* ObjC.m (initObjC): Disabled the autorelease support: have to
	wait to patch Python for that.

	* OC_PythonObject.m ([OC_PythonObject
	-forwardInvocation:invocation]): use argumentInfoAtIndex:
	* ObjCMethod.m (ObjCMethod_pack_argument): likewise.

	* Here and there: I give up: make gcc happy by using #include, not
	#import...  

	* Makefile.pre.in (static): Use $(OCC) to link the executable.

	* objc_support.h: Removed warning on GNUstep not supported...

Tue Mar 24 19:56:46 1998  Lele Gaifax  <lele@nautilus.nautilus.eclipse.it>

	* ObjC.h (PyObjC_VERSION): Version 0.54.

Sat Jan 17 00:49:29 1998  Lele Gaifax  <lele@nautilus.eclipse.it>

	* OC_PythonObject.h (@interface OC_PythonObject): Now derived from
	NSProxy.

Sat Jan 10 13:22:31 1998  Lele Gaifax  <lele@nautilus.eclipse.it>

	* INSTALL: Added shared module recipe.

Thu Jan  8 20:20:32 1998  Lele Gaifax  <lele@nautilus.eclipse.it>

	* ObjC.h: Removed ObjCStream declaration.

Sun Jan  4 17:28:55 1998  Lele Gaifax  <lele@nautilus.eclipse.it>

	* ObjC.h (PyObjC_VERSION): Version 0.53.

	* Demo/LittleButtonedWindow/LittleButtonedWindow.py (run): Import
	ObjC before AppKit, so that the '-[' option is not needed.

	* ObjC.m (initObjC): Be sure the AutoreleasePool is instantiated. 

	* ObjCObject.m (ObjCObject_call): use
	instancesRespondToSelector:. 

Mon Dec 29 15:34:57 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* ObjC.h: Removed ObjCSequenceObject_Type and
	ObjCMappingObject_Type. 

Sun Dec 28 19:51:28 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* ObjC.m (ObjC_load_object_files): Removed.
	(ObjC_list_classes): Removed.

	* ObjCRuntime.m (ObjCRuntime_methods): Likewise.

	* ObjCRuntime.m (ObjCRuntime_getattro): Renamed ``kind'' to
	``__kind__''. 
	(ObjCRuntime_getattro): Removed ``__dict__'', added
	``__objc_classes__''. 

	* OC_PythonObject.h: Renamed from the anonymous ``object''.

Fri Dec 26 20:55:39 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* ObjC.h (PyObjC_VERSION): Version 0.52.

Mon Dec 22 20:07:49 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* objc_support.m (pythonify_c_value): If the object is an
 	NSString, return a corresponding PyString.
	(depythonify_c_value): If the expected type is an ObjC object and
 	we have a PyString, convert it in a corresponding NSString.
	(execute_and_pythonify_objc_method): if the method returns void,
 	return Py_None.

	* ObjCMethod.m (ObjCMethod_new_with_selector): Trap bad
	selectors. 
	(ObjCMethod_pack_argument): Reenabled.
	(ObjCMethod_unpack_argument): Likewise.

Tue Dec 16 19:46:07 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* ObjC.h (PyObjC_VERSION): Version 0.51. Tons of changes, dropped
	NeXTSTEP runtime support, renewed around the new OS API.

Wed Apr 16 23:53:37 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* PyObjC.fproj/ObjC.h (PyObjC_VERSION): Version 0.48, first
	running on OpenSTEP!

Thu Apr 10 22:14:03 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* ObjC.fproj/ObjC.h (WITH_FOUNDATION): Simplified variants
	selection. 

Wed Apr  9 19:19:30 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* ObjC.fproj/OC_PythonObject.m ([OC_PythonObject
	-forward:aSelector:argFrame]): Removed GNU_RUNTIME support.

Mon Apr  7 18:19:52 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Demo/ObjC/AlertPanel/AlertPanel.h: Include OC_PythonObject.h,
	not PythonObject.h. Thanx Andrew Robinson <andy@hps1.demon.co.uk>.

Sun Mar 23 22:49:12 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/makesetup: Allow -f (for frameworks) as a library flag
	within module rules.

Tue Mar 18 19:50:05 1997  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/makesetup: Added an option -M to change the name of the
	created Makefile.  

Fri Nov 15 09:12:01 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/objc_support.m (depythonify_c_value): Don't check the
	string size for arguments of type (void *).

	* Modules/OC_Pasteboard.m (-setData:forType:): DATA must be a kind
	of OC_Stream. 

Sun Nov 10 09:27:45 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h, Include/OC_PythonObject.h,
	Include/OC_PythonBundle.h, Include/OC_Pasteboard.h: Untabified. 

Sat Nov  9 19:08:31 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/OC_Stream.m, Modules/OC_PythonObject.m,
	Modules/OC_PythonBundle.m, Modules/OC_Pasteboard.m,
	Modules/ObjCStreams.m, Modules/ObjCRuntime.m,
	Modules/ObjCPointer.m, Modules/ObjCObject.m, Modules/ObjCMethod.m,
	Modules/objc_support.m, Modules/ObjC.m: Untabified.

Tue Oct 29 10:33:43 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.47.

Mon Oct 28 16:38:52 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/ObjC.m: Splitted.

	* Modules/ObjCRuntime.m: New file.

	* Modules/ObjCMethod.m: New file.

	* Modules/ObjCObject.m: New file.

	* Modules/ObjCPointer.m: New file.

	* Demo/ObjC/ShellText/ShellText_SingleUnderscore.py (main):
	Likewise. 

	* Demo/ObjC/ShellText/ShellText.py (main): With a command line
	argument, show that file. Accepts also a -t|--title option.

	* INSTALL.PyObjC: Updated.

	* Misc/Makefile.pre.in (TARGET): set to pyobjc.

Sun Oct 27 11:55:53 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/ObjC.m (ObjCObject_sq_ass_item): Implemented.

	* Modules/OC_PythonObject.m (+newWithObject:): If the object is an
	ObjCObject, return the wrapped Objective-C object without creating
	a new instance.

Sat Oct 26 13:13:41 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/ObjC.m (ObjCSequenceObject_methods): New methods on
	sequence objects.
	(ObjCMappingObject_methods): New methods on mapping objects.

	* Modules/objc_support.m (pythonify_c_value): If an obj is a kind
	of OC_Stream, wrap it in a ObjCStream, not in a generic	ObjCObject. 
	(depythonify_c_value): viceversa.

	* Modules/ObjCStreams.m (ObjCStream_new): New function.

	* Misc/Makefile.pre.in: Added $(LINKFORSHARED) to link command.

Fri Oct 25 15:08:23 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/ObjC.m (ObjCSequenceObject_Type): New invisible type
	with sequence access.
	(ObjCMappingObject_Type): New invisible type with mapping access. 
	(ObjCObject_new): If an object is a sequence (responds to -length
	and -objectAt:) use ObjCSequenceObject_Type. If it is a dictionary
	(responds to -length and -valueForKey:) use
	ObjCMappingObject_Type. 

	* Doc/libObjC.tex (subsection{ObjCObject objects}): Tell about
	sequence and mapping access syntax.

	* All sources: slightly better methods documentation, as well as
	better error messages for PyArg_ParseTuple().

Thu Oct 24 14:23:04 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/OC_Pasteboard.h: Now all methods are in a category of
	the Pasteboard class. OC_Pasteboard is gone.

	* Modules/OC_PythonObject.m (-count): New method.

	* Modules/ObjC.m (ObjCObject_Type): added sequence capabilities.

Sat Oct 19 11:56:40 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/Setup.PyObjC.in (ObjC): Refer to sources in Modules.

Fri Oct 18 14:12:00 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.46.

	* Doc/libObjCStreams.tex: Tell the difference between NeXTSTEP and
	OpenStep implementation of OC_Stream.

	* Doc/libPyObjC.tex: Include libObjC and libObjCStreams.

	* INSTALL.PyObjC: Updated.

Thu Oct 17 18:10:46 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/OC_Stream.h (@interface OC_Stream): (WITH_FOUNDATION)
	now is a subclass of NSData.

	* Modules/OC_Stream.m (-freeWhenDone:): new method.
	(+newFromMemory:length:withMode:): use it.
	(+newFromFilename:withMode:): idem.

	* Include/OC_Stream.h (@interface OC_Stream): openByUs renamed
	freeWhenDone. 

	* Modules/Setup.PyObjC.in (ObjC): Added OC_Pasteboard.m.

	* Modules/objc_support.h (depythonify_objc_message): sped up.
	(pythonify_objc_message): idem.

Wed Oct 16 19:50:46 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/Setup.PyObjC.in (ObjC): Added OC_PythonBundle.m

	* Modules/ObjC.m (initObjC): Force the load of OC_PythonBundle.

Tue Oct 15 09:12:37 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/ObjC.m (ObjCMethod_unpack_argument): Was passing a
	PyStringObject instead of the cstring itself to sprintf().
	(ObjCObject_getattr): Print the warning only the first time the
	method gets fetched.

	* Modules/OC_Python.m: Dropped. It was used just as a shortcut for
	the Setup file.

	* Include/OC_Python.h: Idem.

	* Modules/Setup.PyObjC.in (ObjC): Removed OC_Python.m, added
	PythonObject.m OC_PythonInt.m OC_PythonString.m.  

Mon Oct 14 15:48:58 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.45.

	* Doc/libObjC.tex: Describe the single-underscore syntax.

Thu Oct 10 11:11:21 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/OC_Stream.h: Renamed +newFromMappedFile: to
	+newFromFilename:. 
	Rename -saveToFile: to -saveToFilename:.

	* Modules/ObjCStreams.m (ObjCStream_seek): Use the renamed method. 

	* Include/OC_Stream.h: Renamed -setStreamPosition:from: to
	 -setStreamPosition:seekMode: for uniformity with GNUstep.

	* Modules/ObjCStreams.m (ObjCStream_dealloc): test for
	WITH_FOUNDATION, not GNU_RUNTIME.
	(STREAM_.*DURING.*): Simplified and implemented Foundation
	variants. 

	* Modules/objc_support.h: stub support for OpenStep.

Wed Oct  9 10:46:50 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.44.

Tue Oct  8 18:02:58 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/ObjC.m (ObjCPointer_unpack): Check for void *.
	(ObjC_methods): new method make_pointer, to create arbitrary
	pointer objects.

	* Modules/objc_support.m (depythonify_c_value:_C_DBL): accepts an
	integer value too.
	(depythonify_c_value:_C_FLT): likewise.

Mon Oct  7 14:46:35 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.43.

	* Modules/Setup.PyObjC.in: Added ObjCStreams.m.

Fri Oct  4 16:53:41 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.42.

	* Modules/ObjC.m: ObjCStream objects implementation. 

	* Modules/objc_support.m (pythonify_c_value): Hack to support
	passing NXStreams as ObjCStream objects.
	(depythonify_c_value): likewise.

Thu Oct  3 12:42:30 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/ObjC.m: Moved BUGS section to BUGS.PyObjC.
	(ObjCObject_call): Support for initialization arguments.

        * README.PyObjC: splitted, creating INSTALL.PyObjC and
	NEWS.PyObjC.
	
	* Modules/makesetup: Little note to explain my changes.
	: Undone */* hack on source names. Silly me! I should never fix
	something too early in the morning ;-)
	
	* Modules/Setup.PyObjC.in: Sources are in the Modules/ directory.

Wed Oct  2 12:36:10 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.41.

	* Misc/Makefile.pre.in: Fits PyObjC needs.
	
	* Modules/ObjC.m (ObjCMethod_pack_argument): Return an ObjCPointer
	object, not a string.
	(ObjCMethod_unpack_argument): Accepts ObjCPointer objects as
	well as strings.

	* Modules/objc_support.m (objc_skip_typespec): Corrected
	_C_UNION_B branch: unions are not prepended by their tag like
	structures.
	(objc_alignof_type): likewise.
	(objc_sizeof_type): likewise.
	(pythonify_c_value): Support _C_UNIONs by translating them to
	strings. 
	(depythonify_c_value): Likewise, accepting a string of the right
	size. 
	(pythonify_c_value): Use ObjCPointer to encode pointers, do not
	pythonify the content of the pointed value.

Fri Sep 27 17:10:12 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/objc_support.m (execute_and_pythonify_objc_method): Show
	the expected ObjC type in the error message for type mismatch.

	* Modules/ObjC.m (ObjCMethod_pack_argument): likewise.
	(ObjC_lookup_class): better error message.
	(ObjCRuntime_getattro): Set the error message if the class cannot
	be found.
	(ObjCMethod_pack_argument): Reset the buffer if the value is not
	given. 

Fri Sep 27 11:40:04 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.4.

	* Modules/ObjC.m (ObjCRuntime_sel_is_mapped): Implemented.

	* Modules/objc_support.m (execute_and_pythonify_objc_method):
	Handle floats and doubles return values.

Thu Sep 26 10:45:36 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.31.

	* Modules/ObjC.m (ObjC_list_classes): Oops! Use DECREF not INCREF
        on item.

	* Modules/objc_support.m (execute_and_pythonify_objc_method): For
	consistency, refer to the first argument as 0, not 1.

	* Modules/ObjC.m (ObjCRuntime_getattro): Added 'kind' member,
	which is set to ``GNU'' if using the GNU runtime, ``NeXT''
	otherwise. 

Tue Sep 24 12:40:18 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/OC_PythonObject.m (get_method_for_selector): To support
	the single underscore notation, always pythonify the objc message.

	* Modules/objc_support.h (pythonify_objc_message): Support for
	single underscore notation.
	(depythonify_objc_message): likewise.

Fri Sep 20 12:03:22 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.3.

	* Modules/ObjC.m (ObjCMethod_pack_argument): Implemented
	GNU_RUNTIME support.
	(ObjCMethod_unpack_argument): Likewise.

	* Modules/OC_PythonObject.m (-forward::): Banalized: removed check
	against the runtime, since it was in any way a guess. Also, support
	the GNU runtime.

	* Modules/objc_support.m (execute_and_pythonify_objc_method): If
	an error occurred executing the method, do not pythonify the
	result and let the interpreter raise the error by returning NULL.

	* Modules/OC_PythonObject.m (-respondsTo:): Clear the error status
	and return NO if the Python Object does not respond to the method.

	* Modules/ObjC.m: Added version number to the module's doc, and
	show an example of the alternative syntax.

Mon Sep 16 11:44:35 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Include/ObjC.h (PyObjC_VERSION): Version 0.2.

	* Modules/objc_support.m (depythonify_c_value): Accept also Class
	object for _C_ID type ([Object isKindOf:] does not specify its arg
	must be a class...).

	* Modules/ObjC.m (ObjCMethod_pack_argument): New method on
	ObjCMethod, to support pass-by-ref parameters. 
	(ObjCMethod_unpack_argument): idem.

	* Modules/ObjC.m (ObjCObject_get_class): New method on ObjCObject,
	named "Class", as a workaround to get the class of an object
	(``class'' is a reserved keyword in Python).

	* Modules/ObjC.m (ObjCRuntime_getattro): Clean the error set by
	PyDict_GetItem and by Py_FindMethod.

	* Modules/objc_support.m (depythonify_c_value): For pointer
	arguments, accept a string object too: if the sizes match, then
	the string object will contain whatever the method will put in it,
	so you'll can use struct.unpack() on it.

Fri Sep 13 11:14:50 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

        * All sources: added a disclaimer, you never know...
	
	* Include/ObjC.h (PyObjC_VERSION): Initialized to 0.1.

	* Modules/ObjC.m (ObjCObject_call): Implemented: if X is an ObjC
	class, then X() is equivalent to X.new(). Does not handle
	arguments yet.
	(ObjCRuntime_Type): Implemented.
	(initObjC): Put an instance of ObjCRuntime in the module
	dictionary as the ``runtime'' member. This allow a new syntax to
	get an ObjC class: ObjC.runtime.TheClass.
	(initObjC): Added ``__version__'' to module's dictionary.

	* Modules/objc_support.m (pythonify_c_value): Do not convert
	pointers to integers, but rather dereference them and convert the
	value they point to.
	(depythonify_c_value): Correctly handle pointers: allocate some
	memory to keep the pointed value and depythonify there.
	(execute_and_pythonify_objc_method): initialize the arguments
	arena, where we eventually allocate memory for pointer arguments. 

Thu Sep 12 16:12:43 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/OC_PythonObject.m (-mappingDelItemString:): Work around
	to 1.4b3 bug: use PyDict_DelItemString if PyMapping_DelItemString
	is not defined in abstract.h. 
	(-mappingDelItem:): likewise.

	* Modules/objc_support.m (pythonify_c_value): Convert nil to None,
	not NULL. nil is sometimes used by the current NS API to signal an
	error. But OpenStep will use exceptions, so I think this is a safe
	change. This cures x.superclass() bug when x is an instance of the
	root class.

	* Modules/ObjC.m (ObjCObject_methods): added .isInstance and
	.isClass methods.

Wed Sep 11 11:50:02 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/objc_support.m (execute_and_pythonify_objc_method): In
	the error message about bad arguments, refer to the first argument
	as "1", not "0".

Tue Sep 10 19:31:10 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/ObjC.m (ObjCMethod_call): Support for passing/receiving
	complex structures to/from the ObjC method.

Sat Sep  7 12:20:18 1996  Lele Gaifax  <lele@nautilus.eclipse.it>

	* Modules/ObjC.m: unified the decoding/encoding switches. 

	(ObjC_load_object_files): GNU rt support implemented.
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.