home *** CD-ROM | disk | FTP | other *** search
/ Big Green CD 8 / BGCD_8_Dev.iso / NEXTSTEP / Languages / python / PyObjC-0.47-MIHS / pyobjc-0.47-src / Misc / ChangeLog.PyObjC < prev    next >
Encoding:
Text File  |  1996-11-13  |  12.3 KB  |  364 lines

  1. Tue Oct 29 10:33:43 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  2.  
  3.     * Include/ObjC.h (PyObjC_VERSION): Version 0.46.
  4.  
  5. Mon Oct 28 16:38:52 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  6.  
  7.     * Modules/ObjC.m: Splitted.
  8.  
  9.     * Modules/ObjCRuntime.m: New file.
  10.  
  11.     * Modules/ObjCMethod.m: New file.
  12.  
  13.     * Modules/ObjCObject.m: New file.
  14.  
  15.     * Modules/ObjCPointer.m: New file.
  16.  
  17.     * Demo/ObjC/ShellText/ShellText_SingleUnderscore.py (main):
  18.     Likewise. 
  19.  
  20.     * Demo/ObjC/ShellText/ShellText.py (main): With a command line
  21.     argument, show that file. Accepts also a -t|--title option.
  22.  
  23.     * INSTALL.PyObjC: Updated.
  24.  
  25.     * Misc/Makefile.pre.in (TARGET): set to pyobjc.
  26.  
  27. Sun Oct 27 11:55:53 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  28.  
  29.     * Modules/ObjC.m (ObjCObject_sq_ass_item): Implemented.
  30.  
  31.     * Modules/OC_PythonObject.m (+newWithObject:): If the object is an
  32.     ObjCObject, return the wrapped Objective-C object without creating
  33.     a new instance.
  34.  
  35. Sat Oct 26 13:13:41 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  36.  
  37.     * Modules/ObjC.m (ObjCSequenceObject_methods): New methods on
  38.     sequence objects.
  39.     (ObjCMappingObject_methods): New methods on mapping objects.
  40.  
  41.     * Modules/objc_support.m (pythonify_c_value): If an obj is a kind
  42.     of OC_Stream, wrap it in a ObjCStream, not in a generic    ObjCObject. 
  43.     (depythonify_c_value): viceversa.
  44.  
  45.     * Modules/ObjCStreams.m (ObjCStream_new): New function.
  46.  
  47.     * Misc/Makefile.pre.in: Added $(LINKFORSHARED) to link command.
  48.  
  49. Fri Oct 25 15:08:23 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  50.  
  51.     * Modules/ObjC.m (ObjCSequenceObject_Type): New invisible type
  52.     with sequence access.
  53.     (ObjCMappingObject_Type): New invisible type with mapping access. 
  54.     (ObjCObject_new): If an object is a sequence (responds to -length
  55.     and -objectAt:) use ObjCSequenceObject_Type. If it is a dictionary
  56.     (responds to -length and -valueForKey:) use
  57.     ObjCMappingObject_Type. 
  58.  
  59.     * Doc/libObjC.tex (subsection{ObjCObject objects}): Tell about
  60.     sequence and mapping access syntax.
  61.  
  62.     * All sources: slightly better methods documentation, as well as
  63.     better error messages for PyArg_ParseTuple().
  64.  
  65. Thu Oct 24 14:23:04 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  66.  
  67.     * Include/OC_Pasteboard.h: Now all methods are in a category of
  68.     the Pasteboard class. OC_Pasteboard is gone.
  69.  
  70.     * Modules/OC_PythonObject.m (-count): New method.
  71.  
  72.     * Modules/ObjC.m (ObjCObject_Type): added sequence capabilities.
  73.  
  74. Sat Oct 19 11:56:40 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  75.  
  76.     * Modules/Setup.PyObjC.in (ObjC): Refer to sources in Modules.
  77.  
  78. Fri Oct 18 14:12:00 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  79.  
  80.     * Include/ObjC.h (PyObjC_VERSION): Version 0.46.
  81.  
  82.     * Doc/libObjCStreams.tex: Tell the difference between NeXTSTEP and
  83.     OpenStep implementation of OC_Stream.
  84.  
  85.     * Doc/libPyObjC.tex: Include libObjC and libObjCStreams.
  86.  
  87.     * INSTALL.PyObjC: Updated.
  88.  
  89. Thu Oct 17 18:10:46 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  90.  
  91.     * Include/OC_Stream.h (@interface OC_Stream): (WITH_FOUNDATION)
  92.     now is a subclass of NSData.
  93.  
  94.     * Modules/OC_Stream.m (-freeWhenDone:): new method.
  95.     (+newFromMemory:length:withMode:): use it.
  96.     (+newFromFilename:withMode:): idem.
  97.  
  98.     * Include/OC_Stream.h (@interface OC_Stream): openByUs renamed
  99.     freeWhenDone. 
  100.  
  101.     * Modules/Setup.PyObjC.in (ObjC): Added OC_Pasteboard.m.
  102.  
  103.     * Modules/objc_support.h (depythonify_objc_message): sped up.
  104.     (pythonify_objc_message): idem.
  105.  
  106. Wed Oct 16 19:50:46 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  107.  
  108.     * Modules/Setup.PyObjC.in (ObjC): Added OC_PythonBundle.m
  109.  
  110.     * Modules/ObjC.m (initObjC): Force the load of OC_PythonBundle.
  111.  
  112. Tue Oct 15 09:12:37 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  113.  
  114.     * Modules/ObjC.m (ObjCMethod_unpack_argument): Was passing a
  115.     PyStringObject instead of the cstring itself to sprintf().
  116.     (ObjCObject_getattr): Print the warning only the first time the
  117.     method gets fetched.
  118.  
  119.     * Modules/OC_Python.m: Dropped. It was used just as a shortcut for
  120.     the Setup file.
  121.  
  122.     * Include/OC_Python.h: Idem.
  123.  
  124.     * Modules/Setup.PyObjC.in (ObjC): Removed OC_Python.m, added
  125.     PythonObject.m OC_PythonInt.m OC_PythonString.m.  
  126.  
  127. Mon Oct 14 15:48:58 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  128.  
  129.     * Include/ObjC.h (PyObjC_VERSION): Version 0.45.
  130.  
  131.     * Doc/libObjC.tex: Describe the single-underscore syntax.
  132.  
  133. Thu Oct 10 11:11:21 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  134.  
  135.     * Include/OC_Stream.h: Renamed +newFromMappedFile: to
  136.     +newFromFilename:. 
  137.     Rename -saveToFile: to -saveToFilename:.
  138.  
  139.     * Modules/ObjCStreams.m (ObjCStream_seek): Use the renamed method. 
  140.  
  141.     * Include/OC_Stream.h: Renamed -setStreamPosition:from: to
  142.      -setStreamPosition:seekMode: for uniformity with GNUstep.
  143.  
  144.     * Modules/ObjCStreams.m (ObjCStream_dealloc): test for
  145.     WITH_FOUNDATION, not GNU_RUNTIME.
  146.     (STREAM_.*DURING.*): Simplified and implemented Foundation
  147.     variants. 
  148.  
  149.     * Modules/objc_support.h: stub support for OpenStep.
  150.  
  151. Wed Oct  9 10:46:50 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  152.  
  153.     * Include/ObjC.h (PyObjC_VERSION): Version 0.44.
  154.  
  155. Tue Oct  8 18:02:58 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  156.  
  157.     * Modules/ObjC.m (ObjCPointer_unpack): Check for void *.
  158.     (ObjC_methods): new method make_pointer, to create arbitrary
  159.     pointer objects.
  160.  
  161.     * Modules/objc_support.m (depythonify_c_value:_C_DBL): accepts an
  162.     integer value too.
  163.     (depythonify_c_value:_C_FLT): likewise.
  164.  
  165. Mon Oct  7 14:46:35 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  166.  
  167.     * Include/ObjC.h (PyObjC_VERSION): Version 0.43.
  168.  
  169.     * Modules/Setup.PyObjC.in: Added ObjCStreams.m.
  170.  
  171. Fri Oct  4 16:53:41 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  172.  
  173.     * Include/ObjC.h (PyObjC_VERSION): Version 0.42.
  174.  
  175.     * Modules/ObjC.m: ObjCStream objects implementation. 
  176.  
  177.     * Modules/objc_support.m (pythonify_c_value): Hack to support
  178.     passing NXStreams as ObjCStream objects.
  179.     (depythonify_c_value): likewise.
  180.  
  181. Thu Oct  3 12:42:30 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  182.  
  183.     * Modules/ObjC.m: Moved BUGS section to BUGS.PyObjC.
  184.     (ObjCObject_call): Support for initialization arguments.
  185.  
  186.         * README.PyObjC: splitted, creating INSTALL.PyObjC and
  187.     NEWS.PyObjC.
  188.     
  189.     * Modules/makesetup: Little note to explain my changes.
  190.     : Undone */* hack on source names. Silly me! I should never fix
  191.     something too early in the morning ;-)
  192.     
  193.     * Modules/Setup.PyObjC.in: Sources are in the Modules/ directory.
  194.  
  195. Wed Oct  2 12:36:10 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  196.  
  197.     * Include/ObjC.h (PyObjC_VERSION): Version 0.41.
  198.  
  199.     * Misc/Makefile.pre.in: Fits PyObjC needs.
  200.     
  201.     * Modules/ObjC.m (ObjCMethod_pack_argument): Return an ObjCPointer
  202.     object, not a string.
  203.     (ObjCMethod_unpack_argument): Accepts ObjCPointer objects as
  204.     well as strings.
  205.  
  206.     * Modules/objc_support.m (objc_skip_typespec): Corrected
  207.     _C_UNION_B branch: unions are not prepended by their tag like
  208.     structures.
  209.     (objc_alignof_type): likewise.
  210.     (objc_sizeof_type): likewise.
  211.     (pythonify_c_value): Support _C_UNIONs by translating them to
  212.     strings. 
  213.     (depythonify_c_value): Likewise, accepting a string of the right
  214.     size. 
  215.     (pythonify_c_value): Use ObjCPointer to encode pointers, do not
  216.     pythonify the content of the pointed value.
  217.  
  218. Fri Sep 27 17:10:12 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  219.  
  220.     * Modules/objc_support.m (execute_and_pythonify_objc_method): Show
  221.     the expected ObjC type in the error message for type mismatch.
  222.  
  223.     * Modules/ObjC.m (ObjCMethod_pack_argument): likewise.
  224.     (ObjC_lookup_class): better error message.
  225.     (ObjCRuntime_getattro): Set the error message if the class cannot
  226.     be found.
  227.     (ObjCMethod_pack_argument): Reset the buffer if the value is not
  228.     given. 
  229.  
  230. Fri Sep 27 11:40:04 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  231.  
  232.     * Include/ObjC.h (PyObjC_VERSION): Version 0.4.
  233.  
  234.     * Modules/ObjC.m (ObjCRuntime_sel_is_mapped): Implemented.
  235.  
  236.     * Modules/objc_support.m (execute_and_pythonify_objc_method):
  237.     Handle floats and doubles return values.
  238.  
  239. Thu Sep 26 10:45:36 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  240.  
  241.     * Include/ObjC.h (PyObjC_VERSION): Version 0.31.
  242.  
  243.     * Modules/ObjC.m (ObjC_list_classes): Oops! Use DECREF not INCREF
  244.         on item.
  245.  
  246.     * Modules/objc_support.m (execute_and_pythonify_objc_method): For
  247.     consistency, refer to the first argument as 0, not 1.
  248.  
  249.     * Modules/ObjC.m (ObjCRuntime_getattro): Added 'kind' member,
  250.     which is set to ``GNU'' if using the GNU runtime, ``NeXT''
  251.     otherwise. 
  252.  
  253. Tue Sep 24 12:40:18 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  254.  
  255.     * Modules/OC_PythonObject.m (get_method_for_selector): To support
  256.     the single underscore notation, always pythonify the objc message.
  257.  
  258.     * Modules/objc_support.h (pythonify_objc_message): Support for
  259.     single underscore notation.
  260.     (depythonify_objc_message): likewise.
  261.  
  262. Fri Sep 20 12:03:22 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  263.  
  264.     * Include/ObjC.h (PyObjC_VERSION): Version 0.3.
  265.  
  266.     * Modules/ObjC.m (ObjCMethod_pack_argument): Implemented
  267.     GNU_RUNTIME support.
  268.     (ObjCMethod_unpack_argument): Likewise.
  269.  
  270.     * Modules/OC_PythonObject.m (-forward::): Banalized: removed check
  271.     against the runtime, since it was in any way a guess. Also, support
  272.     the GNU runtime.
  273.  
  274.     * Modules/objc_support.m (execute_and_pythonify_objc_method): If
  275.     an error occurred executing the method, do not pythonify the
  276.     result and let the interpreter raise the error by returning NULL.
  277.  
  278.     * Modules/OC_PythonObject.m (-respondsTo:): Clear the error status
  279.     and return NO if the Python Object does not respond to the method.
  280.  
  281.     * Modules/ObjC.m: Added version number to the module's doc, and
  282.     show an example of the alternative syntax.
  283.  
  284. Mon Sep 16 11:44:35 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  285.  
  286.     * Include/ObjC.h (PyObjC_VERSION): Version 0.2.
  287.  
  288.     * Modules/objc_support.m (depythonify_c_value): Accept also Class
  289.     object for _C_ID type ([Object isKindOf:] does not specify its arg
  290.     must be a class...).
  291.  
  292.     * Modules/ObjC.m (ObjCMethod_pack_argument): New method on
  293.     ObjCMethod, to support pass-by-ref parameters. 
  294.     (ObjCMethod_unpack_argument): idem.
  295.  
  296.     * Modules/ObjC.m (ObjCObject_get_class): New method on ObjCObject,
  297.     named "Class", as a workaround to get the class of an object
  298.     (``class'' is a reserved keyword in Python).
  299.  
  300.     * Modules/ObjC.m (ObjCRuntime_getattro): Clean the error set by
  301.     PyDict_GetItem and by Py_FindMethod.
  302.  
  303.     * Modules/objc_support.m (depythonify_c_value): For pointer
  304.     arguments, accept a string object too: if the sizes match, then
  305.     the string object will contain whatever the method will put in it,
  306.     so you'll can use struct.unpack() on it.
  307.  
  308. Fri Sep 13 11:14:50 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  309.  
  310.         * All sources: added a disclaimer, you never know...
  311.     
  312.     * Include/ObjC.h (PyObjC_VERSION): Initialized to 0.1.
  313.  
  314.     * Modules/ObjC.m (ObjCObject_call): Implemented: if X is an ObjC
  315.     class, then X() is equivalent to X.new(). Does not handle
  316.     arguments yet.
  317.     (ObjCRuntime_Type): Implemented.
  318.     (initObjC): Put an instance of ObjCRuntime in the module
  319.     dictionary as the ``runtime'' member. This allow a new syntax to
  320.     get an ObjC class: ObjC.runtime.TheClass.
  321.     (initObjC): Added ``__version__'' to module's dictionary.
  322.  
  323.     * Modules/objc_support.m (pythonify_c_value): Do not convert
  324.     pointers to integers, but rather dereference them and convert the
  325.     value they point to.
  326.     (depythonify_c_value): Correctly handle pointers: allocate some
  327.     memory to keep the pointed value and depythonify there.
  328.     (execute_and_pythonify_objc_method): initialize the arguments
  329.     arena, where we eventually allocate memory for pointer arguments. 
  330.  
  331. Thu Sep 12 16:12:43 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  332.  
  333.     * Modules/OC_PythonObject.m (-mappingDelItemString:): Work around
  334.     to 1.4b3 bug: use PyDict_DelItemString if PyMapping_DelItemString
  335.     is not defined in abstract.h. 
  336.     (-mappingDelItem:): likewise.
  337.  
  338.     * Modules/objc_support.m (pythonify_c_value): Convert nil to None,
  339.     not NULL. nil is sometimes used by the current NS API to signal an
  340.     error. But OpenStep will use exceptions, so I think this is a safe
  341.     change. This cures x.superclass() bug when x is an instance of the
  342.     root class.
  343.  
  344.     * Modules/ObjC.m (ObjCObject_methods): added .isInstance and
  345.     .isClass methods.
  346.  
  347. Wed Sep 11 11:50:02 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  348.  
  349.     * Modules/objc_support.m (execute_and_pythonify_objc_method): In
  350.     the error message about bad arguments, refer to the first argument
  351.     as "1", not "0".
  352.  
  353. Tue Sep 10 19:31:10 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  354.  
  355.     * Modules/ObjC.m (ObjCMethod_call): Support for passing/receiving
  356.     complex structures to/from the ObjC method.
  357.  
  358. Sat Sep  7 12:20:18 1996  Lele Gaifax  <lele@nautilus.eclipse.it>
  359.  
  360.     * Modules/ObjC.m: unified the decoding/encoding switches. 
  361.  
  362.     (ObjC_load_object_files): GNU rt support implemented.
  363.  
  364.