summaryrefslogtreecommitdiff
path: root/CHANGES.current
blob: e41f17d65d26d8ebce0384cb1734cb553bcf4394 (plain)
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
Version 1.3.40 (18 August 2009)
===============================

2009-08-17: olly
	    [Perl] Add "#undef do_exec" to our clean up of Perl global
	    namespace pollution.

2009-08-17: olly
	    [PHP] Fix to wrap a resource returned by __get() in a PHP object (SF#2549217).

2009-08-17: wsfulton
            Fix #2797485 After doing a 'make clean', install fails if yodl2man or yodl2html 
            is not available.

2009-08-16: wsfulton
            [Octave] Caught exceptions display the type of the C++ exception instead of the
            generic "c++-side threw an exception" message.

2009-08-16: wsfulton
            [Java] When %catches is used, fix so that any classes specified in the "throws"
            attribute of the "throws" typemap are generated into the Java method's throws clause.

2009-08-16: wsfulton
            [C#] Fix exception handling when %catches is used, reported by Juan Manuel Alvarez.

2009-08-15: wsfulton
            Fix %template seg fault on some cases of overloading the templated method.
            Bug reported by Jan Kupec.

2009-08-15: wsfulton
	    [Ruby] Add numerous missing wrapped methods for std::vector<bool> specialization
            as reported by Youssef Jones.

2009-08-14: wsfulton
	    [Perl] Add SWIG_ConvertPtrAndOwn() method into the runtime for smart pointer 
            memory ownership control. shared_ptr support still to be added. Patch from 
            David Fletcher.

2009-08-14: olly
	    [PHP] PHP5 now wraps static member variables as documented.

2009-08-14: olly
	    [PHP] Update the PHP "class" example to work with PHP5 and use
	    modern wrapping features.

2009-08-13: wsfulton
	    [PHP] std::vector wrappers overhaul. They no longer require the 
            specialize_std_vector() macro. Added wrappers for capacity() and reserve().

2009-08-13: wsfulton
	    [PHP] Add const reference typemaps. const reference primitive types are
            now passed by value rather than pointer like the other target languages.
	    Fixes SF#2524029.

2009-08-08: wsfulton
	    [Python] More user friendly AttributeError is raised when there are
            no constructors generated for the proxy class in the event that the
            class is abstract - the error message is now 
            "No constructor defined - class is abstract" whereas if there are no
            public constructors for any other reason and the class is not abstract,
            the message remains
            "No constructor defined".
            [tcl] Similarly for tcl when using -itcl.

2009-08-04: olly
	    [PHP] Fix generated code to work with PHP 5.3.

2009-08-04: vmiklos
            [PHP] Various mathematical functions (which would conflict
            with the built-in PHP ones) are now automatically handled by
            adding a 'c_' prefix.

2009-08-03: wsfulton
            [C#] The std::vector<T> implementation is improved and now uses $typemap such
            that the proxy class for T no longer has to be specified in some macros
            for correct C# compilation; the following macros are deprecated, where
            CSTYPE was the C# type for the C++ class CTYPE:

            SWIG_STD_VECTOR_SPECIALIZE_MINIMUM(CSTYPE, CTYPE)
              usage should be removed altogether

            SWIG_STD_VECTOR_SPECIALIZE(CSTYPE, CTYPE)
              should be replaced with:
            SWIG_STD_VECTOR_ENHANCED(CTYPE)

            Some more details in csharp/std_vector.i

            *** POTENTIAL INCOMPATIBILITY ***

2009-07-31: olly
	    [Python] Fix indentation so that we give a useful error if the
	    module can't be loaded.  Patch from Gaetan Lehmann in SF#2829853.

2009-07-29: wsfulton
            Add $typemap(method, typelist) special variable macro. This allows
            the contents of a typemap to be inserted within another typemap.
            Fully documented in Typemaps.html.

2009-07-29: vmiklos
            [PHP] Static member variables are now prefixed with the
            class name. This allows static member variables with the
            same name in different classes.

2009-07-29: olly
	    [Python] Add missing locks to std::map wrappers.  Patch from 
	    Paul Hampson in SF#2813836.

2009-07-29: olly
	    [PHP] Fix memory leak in PHP OUTPUT typemaps.  Reported by Hitoshi
	    Amano in SF#2826322.

2009-07-29: olly
	    [PHP] Fix memory leak in PHP resource destructor for classes
	    without a destructor and non-class types.  Patch from Hitoshi Amano
	    in SF#2825303.

2009-07-28: olly
	    [PHP] Update warnings about clashes between identifiers and PHP
	    keywords and automatic renaming to work with the PHP5 class
	    wrappers.  Fixes SF#1613679.

2009-07-28: vmiklos
            [PHP] If a member function is not public but it has a base
            which is public, then now a warning is issued and the member
            function will be public, as PHP requires this.

2009-07-21: vmiklos
            [PHP] Director support added.

2009-07-15: olly
	    [Perl] Don't specify Perl prototype "()" for a constructor with a
	    different name to the class, as such constructors can still take
	    parameters.

2009-07-12: xavier98
	    [Octave] Add support for Octave 3.2 API

2009-07-05: olly
	    [PHP] Update the list of PHP keywords - "cfunction" is no longer a
	    keyword in PHP5 and PHP 5.3 added "goto", "namespace", "__DIR__",
	    and "__NAMESPACE__".

2009-07-03: olly
	    [Tcl] To complement USE_TCL_STUBS, add support for USE_TK_STUBS
	    and SWIG_TCL_STUBS_VERSION.  Document all three in the Tcl chapter
	    of the manual.  Based on patch from SF#2810380 by Christian
	    Gollwitzer.

2009-07-02: vmiklos
            [PHP] Added factory.i for PHP, see the li_factory testcase
            for more info on how to use it.

2009-07-02: wsfulton
            Fix -Wallkw option as reported by Solomon Gibbs.

2009-07-02: wsfulton
            Fix syntax error when a nested struct contains a comment containing a * followed 
            eventually by a /. Regression from 1.3.37, reported by Solomon Gibbs.

2009-07-01: vmiklos
            [PHP] Unknown properties are no longer ignored in proxy
            classes.

2009-07-01: vmiklos
            [PHP] Fixed %newobject behaviour, previously any method
            marked with %newobject was handled as a constructor.

2009-06-30: olly
	    [Ruby] Undefine close and connect macros defined by Ruby API
	    headers as we don't need them and they can clash with C++ methods
	    being wrapped.  Patch from Vit Ondruch in SF#2814430.

2009-06-26: olly
	    [Ruby] Fix to handle FIXNUM values greater than MAXINT passed for a
	    double parameter.

2009-06-24: wsfulton
            Fix wrapping methods with default arguments and the compactdefaultargs feature 
            where a class is passed by value and is assigned a default value. The SwigValueWrapper
            template workaround for a missing default constructor is no longer used as the code 
            generated does not call the default constructor.

2009-06-16: wsfulton
	    [Java,C#] Fix enum marshalling when %ignore is used on one of the enum items.
            Incorrect enum values were being passed to the C++ layer or compilation errors resulted.

2009-06-02: talby
	    [Perl] Resolved reference.i overload support problem
	    identified by John Potowsky.

2009-05-26: wsfulton
	    [C#] Improved std::map wrappers based on patch from Yuval Baror. The C# proxy
            now implements System.Collections.Generic.IDictionary<>.

	    These std:map wrappers have a non-backwards compatible overhaul to make them
            like a .NET IDictionary. Some method names have changed as following:
              set -> setitem (use this[] property now)
              get -> getitem (use this[] property now)
              has_key -> ContainsKey
              del -> Remove
              clear -> Clear

            The following macros used for std::map wrappers are deprecated and will no longer work:
              specialize_std_map_on_key
              specialize_std_map_on_value
              specialize_std_map_on_both

            *** POTENTIAL INCOMPATIBILITY ***

2009-05-20: vmiklos
            [PHP] Add the 'thisown' member to classes. The usage of it
            is the same as the Python thisown one: it's 1 by default and
            you can set it to 0 if you want to prevent freeing it. (For
            example to prevent a double free.)

2009-05-14: bhy
            [Python] Fix the wrong pointer value returned by SwigPyObject_repr().

2009-05-13: mutandiz (Mikel Bancroft)
	    [allegrocl] Minor tweak when wrapping in -nocwrap mode.

2009-05-11: wsfulton
	    [C#] Improved std::vector wrappers on the C# proxy side from Yuval Baror. These
	    implement IList<> instead of IEnumerable<> where possible.

2009-04-29: wsfulton
	    [Java, C#] Add the 'notderived' attribute to the javabase and csbase typemaps.
	    When this attribute is set, the typemap will not apply to classes that are derived
	    from a C++ base class, eg 
	      %typemap(csbase, notderived="1") SWIGTYPE "CommonBase"

2009-04-29: olly
	    [Python] Don't attempt to acquire the GIL in situations where we
	    know that it will already be locked.  This avoids some dead-locks
	    with mod_python (due to mod_python bugs which are apparently
	    unlikely to ever be fixed), and results in smaller wrappers which
	    run a little faster (in tests with Xapian on x86-64 Ubuntu 9.04,
	    the stripped wrapper library was 11% smaller and ran 2.7% faster).

2009-04-21: wsfulton
	    [C#] Fix #2753469 - bool &OUTPUT and bool *OUTPUT typemaps initialisation.

2009-04-09: wsfulton
	    Fix #2746858 - C macro expression using floating point numbers

2009-03-30: olly
	    [PHP] The default out typemap for char[ANY] now returns the string up to a
	    zero byte, or the end of the array if there is no zero byte.  This
	    is the same as Python does, and seems more generally useful than
	    the previous behaviour of returning the whole contents of the array
	    including any zero bytes.  If you want the old behaviour, you can provide
	    your own typemap to do this:

	    %typemap(out) char [ANY]
	    %{
		RETVAL_STRINGL($1, $1_dim0, 1);
	    %}