File: CHANGES

package info (click to toggle)
jcc 3.6-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 1,932 kB
  • sloc: cpp: 23,157; python: 6,608; java: 65; makefile: 51
file content (308 lines) | stat: -rw-r--r-- 14,500 bytes parent folder | download
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
Version 3.5 -> 3.6
------------------
 - fixed bug PYLUCENE-47 (with help from Petrus Hyv�nen)
 - fixed bug PYLUCENE-48
 - removed overlap between int and byte types when parsing args (PYLUCENE-50)

Version 3.4 -> 3.5
------------------
 - fixed bug PYLUCENE-46

Version 3.3 -> 3.4
------------------
 - added NAN to the list of reserved words

Version 3.2 -> 3.3
------------------
 - fixed bug PYLUCENE-43
 - fixed bug PYLUCENE-41

Version 3.1 -> 3.2
------------------
 - added missing 'const' breaking build with Python 3.7 (Aric Coady)
 - fixed bug with not skipping META-INF/ entries in .jar files

Version 3.0 -> 3.1
------------------
 - fixed bug PYLUCENE-36 (Paulo Villegas)
 - reworked type construction to use PyType_FromSpecWithBases (Python 3)
 - added 'm' suffix to linux -lpython statement for shared jcc lib
 - fixed bug with using split instead of rpartition on path (Petrus Hyv�nen)
 - fixed bug PYLUCENE-38 (Aric Coady)
 - fixed bug PYLUCENE-39

Version 2.23 -> 3.0
-------------------
 - added support for Python 3 (3.3+) (with R�diger Meier and Thomas Koch)
 - python3: fixed bugs with surrogate pairs (now supported for the first time)
 
Version 2.22 -> 2.23
--------------------
 - extended ability to explicitely requesting wrappers to fields
 
Version 2.21 -> 2.22
--------------------
 - monkeypatched customize_compiler to fix darwin linker error due to -Wl,-x
 - added check that MACOSX_DEPLOYMENT_TARGET is set to at least 10.5
 - replaced MACOSX_DEPLOYMENT_TARGET check -mmacosx-version-min=10.5
 - shared mode now requires a modern setuptools (version >= 8)

Version 2.20 -> 2.21
--------------------
 - improved through-layer Python error handling (with Lee Skillen)

Version 2.19 -> 2.20
--------------------
 - added support for java varargs by reconstructing array from last parameters

Version 2.18 -> 2.19
--------------------
 - fixed bug with missing class parameters when fixed by declaration
 - improved runtime support for fixed class generic parameters
 - improved runtime support for fixed class array generic parameters

Version 2.17 -> 2.18
--------------------
 - fixed bug PYLUCENE-26 (Martin Anon)
 - added support for building with setuptools >= 1.1.6

Version 2.16 -> 2.17
--------------------
 - added support for detecting and running with Oracle JDK 7 on Mac OS X
 - added skipping of synthetic methods

Version 2.15 -> 2.16
--------------------
 - improved parseArgs() to let nested arrays pass through
 - added 'min', 'max' and 'PREFIX' to reserved words list to placate Visual C++

Version 2.14 -> 2.15
--------------------
 - improved JCC build on Linux by monkey patching setuptools (Caleb Burns)
 - fixed bug with wrapping arrays coming out of generic iterators
 - added support for wrapping non-public methods by listing them as class:method
 - fixed bug with wrapping wrong clone() method in python extensions classes

Version 2.13 -> 2.14
--------------------
 - fixed class initialization race bug PYLUCENE-17 (with Patrick J. McNerthney)
 - added support for initVM's vmargs to be a [list, of, args], PYLUCENE-19
 - added support for using full Java class names in Python via --use_full_names
 - fixed bug PYLUCENE-20 (Roman Chyla)

Version 2.12 -> 2.13
--------------------
 - fixed bug with name collision between method and static field of same name
 - added --maxheap, --egg-info and --extra-setup-arg parameters (Chris Wilson)
 - added check for duplicate class names in generated Python module
 - updated setuptools patch logic to accomodate new 0.6.15 and up fork
 - fixed issues with with arrays as generics parameters (openjdk 7)
 - added support for auto-boxing primitive types when converting to object array
 - fixed bug with setting a string into an object array
 - fixed bug with decref'ing too early when converting a sequence to an array

Version 2.11 -> 2.12
--------------------
 - fixed slice operation bug on JArray (int vs Py_ssize_t on 64-bit systems)
 - fixed bug in argument parsing not detecting soon enough incorrect num args
 - fixed bug in JArray(type) function decref'ing type_name too soon

Version 2.10 -> 2.11
--------------------
 - improved recovery from toString() failure, displaying class name instead
 - non public classes listed on command line now wrapped (Lukasz Jancewicz)
 - fixed bug with generating wrappers for unimplemented interface methods
 - fixed bug with generating propMethods for void getters
 - fixed bug with missing code for returning arrays from iterators

Version 2.9 -> 2.10
-------------------
 - added javadoc for org.apache.jcc.PythonVM class (Bill Janssen)
 - fixed bug with Constructor.getGenericParameterTypes() losing first parameter

Version 2.8 -> 2.9
------------------
 - fixed bug with excluding inner classes only (Christian Heimes)
 - fixed bug with Python gc in non-attached JVM thread (Christian Heimes)

Version 2.7 -> 2.8
------------------
 - fixed bug with --module using relative paths (Roman Chyla)
 - made fully qualified C++ class names absolute
 - fixed bug with parameterized types not requiring classes found in parameters
 - fixed bug with missing space between >> of nested generics

Version 2.6 -> 2.7
------------------
 - added 'IGNORE' to reserved word list
 - improved --exclude logic to also exclude inner classes of excluded classes
 - moved --find-jvm-dll logic to __init__.py to accomodate Python 2.7
 - fixed bug with faulty Java version logic causing crashes with Java 1.5
 - added logic for finding JavaVM.framework headers on Mac OS X (Bill Janssen)

Version 2.5 -> 2.6
------------------
 - added freebsd7 settings to setup.py (Sujan Shakya)
 - added support for unix-specific --home distutils install parameter
 - added support for extracting JAVAHOME from Windows registry (Bill Janssen)
 - updated MANIFEST.in as sdist started creating incomplete source archives
 - improved support for building on Windows with mingw32 (Bill Janssen)
 - added support for --find-jvm-dll parameter (Bill Janssen)
 - fixed bug with not inheriting type parameters to inner parameterized classes
 - added support for of_() method to set instance type parameters
 - fixed bug with not heeding type parameter for --sequence get method
 - parameterized return values are now unboxed
 - improved auto-boxing of primitive type parameters
 - added support for auto-boxing CharSequence from python str and unicode
 - added support for auto-boxing Number from python int, long and float
 - added 'asm' to list of reserved words
 - added JCC_VERSION string to modules using JCC
 - added support for --resources
 - fixed bug with array Release calls using isCopy instead of 0 mode
 - added support for --import
 - added read-only env.classpath property
 - config.py now written only during build or when missing (Christian Heimes)
 - fixed bug with not enforcing Iterable for iterator method detection

Version 2.4 -> 2.5
------------------
 - added env.jni_version for the JNI version as returned by JNI's GetVersion()
 - added env.java_version for java.lang.System.getProperty('java.version')
 - default value to initVM's classpath parameter now is importing module's
 - added support for Java generics
 - added 'string_' property to JArray('byte') instances to extract byte string
 - fixed bug with passing list of extension objects
 - reworked iterator and enumeration 'next' templates to shortcut C++ wrappers
 - fixed bug in code comparing setuptools versions when >= 0.6c10
 - verified build against setuptools from distribute 0.6.6
 - renamed patch.43 to differentiate setuptools versions

Version 2.3 -> 2.4
------------------
 - added 'typeof' to reserved word list
 - added Java stacktrace to __str__() of JavaError, fixing half of PYLUCENE-1
 - fixed local string ref leaks in JArray<jstring>.get/toSequence (Aric Coady)
 - added --libpath parameter to specify -Djava.library.path
 - classes listed with --exclude are no longer loaded (except for dependencies)
 - added --vmarg to add Java VM initialization parameters (Christian Kofler)
 - added support for passing a directory to --module
 - byte values are now returned as signed numbers as opposed to one-char strs
 - added --arch command line flag to filter Mac OS X python config settings
 - cast_() and instance_() methods now generated on extension classes as well
 - fixed bug with reporting Python error that occurred in an extension class

Version 2.2 -> 2.3
------------------
 - fixed Solaris compilation issue with using va_arg() with function pointers
 - added --reserved command line arg to extend list of words to mangle
 - fixed bug with initJCC not being run when Python VM embedded in JVM
 - added --wininst to enable use of bdist_wininst with distutils (Jonas Maurus)
 - added --help to describe command line options (Jonas Maurus)
 - added support for --rename to workaround python flattened namespace clashes
 - fixed bug with Enumeration/Iterator template function instantiation
 - removed -framework Python from darwin link flags in setup.py

Version 2.1 -> 2.2
------------------
 - JCC now a subproject of the Apache PyLucene project
 - fixed bug where thread's JNIEnv was not set before calling findClass()
 - unhandled java exception now is printed out via ExceptionDescribe()
 - added cast to placate Solaris compiler error in JArray.cpp
 - JArray Python wrappers should return None when passed a null array
 - added JDK variable to setup.py to better parameterize build configuration
 - added support for proxying mapping and sequence protocols on FinalizerProxy
 - changed Type suffix to $$Type to avoid clashes with like-named Java classes
 - added 'bool' and 'operator' to list of reserved words
 - added support for packages and classes named with C++ reserved words
 - static methods shadowed by non-static methods of same name now '_' suffixed
 - added 'java.lang' to --package by default
 - added isCurrentThreadAttached() method to VMEnv
 - added MANIFEST.in to exclude generated jcc/config.py (Christian Heimes)
 - passing strings for byte[] or char[] is no longer supported, use JArray
 - failure to call initVM() now reported with error instead of crash
 - failure to find class now reported with error instead of crash
 - failure to call attachCurrentThread() now reported with error, not crash

Version 2.0 -> 2.1
------------------
 - fixed bug with not checking missing module name when attempting build
 - increased jcc's java stack to 512k
 - added support for iPod/iPhone, with shared mode
 - added missing cast to jweak in call to DeleteWeakGlobalRef()
 - fixed local string ref leak in JArray<jstring> (Aaron Lav)
 - fixed local ref leak if ref for object already exists in table (Aaron Lav)
 - fixed bug with error reporting from class methods (Aaron Lav)
 - fixed bug with reporting python errors with RuntimeException when not shared
 - removed bogus storage class from template specializations (Joseph Barillari)

Version 1.9 -> 2.0
------------------
 - fixed bug with failed findClass() import
 - fixed bug http://bugzilla.osafoundation.org/show_bug.cgi?id=12127
 - added -ljvm to linux2 and sunos5 LFLAGS
 - added support for using JCC in reverse (starting from Java VM) (shared only)
 - using PythonException for reporting Python errors (shared only)
 - inserted Apache 2.0 license copyright notices
 - fixed bug with declaring array parameters in extension methods
 - added support for --module to add individual python files to resulting egg
 - JCC in reverse functional on Mac OS X and Linux
 - fixed JCC in reverse threading issues
 - JCC in reverse usable with Tomcat
 - got python stacktrace into PythonException's message
 - added 'self' property to get wrapped python object from extension wrapper
 - added headless AWT workaround to JCC's own initVM() call
 - added DEBUG_CFLAGS to setup.py to improve debug build support
 - fixed uninitialized Class class bug (parseArgs)
 - added errorName field to PythonException
 - added support for excluding stack trace from PythonException
 - arrays are now wrapped by JArray() objects instead of expanded into lists
 - return by value in arrays now supported
 - added support for nested arrays via JArray().cast_()
 - included patch to setuptools to support shared mode on Linux

Version 1.8 -> 1.9
------------------
 - fixed code generation for clone() broken by finalization proxy work
 - added 'union' to the list of reserved words
 - fixed castCheck() to work with finalization proxies
 - --compile no longer installs by default
 - fixed bug in __init__.cpp #include statements for package-less classes
 - fixed line ending bug on Windows
 - fixed multiple JCC-built extensions in same process problem
 - removed env argument from initVM() as it's redundant with the libjcc.dylib
 - reimplemented env->setClassPath() in terms of system URLClassLoader hack
 - added support for --include option
 - added 'NULL' to list of reserved words
 - added support for building shared libjcc library on Mac OS X and Linux
 - fixed bug with generating wrappers for abstract Enumeration implementations
 - added support for --install-dir and --use-distutils options
 - copy jcc runtime sources into extension source tree before compiling
 - added detection of invalid command line args
 - fixed double-free bug when passing in vmargs
 - added defines to enable building with MinGW (Bill Janssen)
 - added support for --bdist
 - added support for --compiler
 - fixed crasher on Windows with virtual JObject.weaken$()
 - fixed bug not checking return value from initVM()
 - fixed bug with findClass() not catching C++ exception when class not found
 - added missing code in parseArgs() to handle double[], float[] and long[]

Version 1.7 -> 1.8
------------------

 - fixed bug using the wrong field modifiers for setter (Bill Janssen)
 - added missing calls for generating wrappers for ancestors of Exception
 - added missing call for generating wrappers for String
 - added note about --classpath to README

Version 1.6 -> 1.7
------------------
 - fixed memory leak when calling inherited methods via callSuper()
 - added support for building on Solaris with Sun Studio C++ (Solaris 11)
 - fixed leak of local refs of jstring when converting to an array of String
 - automated finalization of extensions via proxy for breaking ref cycle
 - added Py_CLEAR and Py_VISIT macros for Python 2.3.5 compilation

Earlier versions (changes included in PyLucene versions < 2.3)
--------------------------------------------------------------
 - see http://svn.osafoundation.org/pylucene/trunk/jcc/CHANGES