scoder [Fri, 30 Aug 2013 09:38:24 +0000 (02:38 -0700)]
Merge pull request #251 from jpaalasm/patch-1
Fix typo
Joonas Paalasmaa [Fri, 30 Aug 2013 09:32:33 +0000 (12:32 +0300)]
Fix typo
Stefan Behnel [Fri, 30 Aug 2013 07:13:42 +0000 (09:13 +0200)]
mark bytearray() and complex() as returning an instance of their type
Stefan Behnel [Fri, 30 Aug 2013 07:03:15 +0000 (09:03 +0200)]
PyPy doesn't define Py_OptimizeFlag => always set it to off to enable assertions
Stefan Behnel [Fri, 30 Aug 2013 04:35:11 +0000 (06:35 +0200)]
Py2.5 test fix
Stefan Behnel [Thu, 29 Aug 2013 19:55:05 +0000 (21:55 +0200)]
add test for __debug__ and asserts with Python's -O/-OO options
Stefan Behnel [Thu, 29 Aug 2013 19:54:17 +0000 (21:54 +0200)]
disable 'assert' when Python runtime runs with -O/-OO
Stefan Behnel [Thu, 29 Aug 2013 19:52:33 +0000 (21:52 +0200)]
optimize __debug__ flag
Stefan Behnel [Wed, 28 Aug 2013 19:48:11 +0000 (21:48 +0200)]
compile Tempita to speed up startup time and template parsing
--HG--
rename : Cython/Tempita/__init__.py => Cython/Tempita/_tempita.py
Stefan Behnel [Wed, 28 Aug 2013 19:26:48 +0000 (21:26 +0200)]
remove unnecessary imports
Stefan Behnel [Wed, 28 Aug 2013 19:25:50 +0000 (21:25 +0200)]
changelog
Robert Bradshaw [Tue, 27 Aug 2013 03:33:55 +0000 (20:33 -0700)]
Merge branch 'common-types' into pristine
Stefan Behnel [Sun, 25 Aug 2013 18:23:53 +0000 (20:23 +0200)]
add -3 option to cythonize script to make it easier to compile in Py3 mode
Stefan Behnel [Sun, 25 Aug 2013 18:14:03 +0000 (20:14 +0200)]
add --quiet and --force options to cythonize script
Stefan Behnel [Sat, 24 Aug 2013 14:14:12 +0000 (16:14 +0200)]
fix distutils build
Stefan Behnel [Sat, 24 Aug 2013 06:09:39 +0000 (08:09 +0200)]
update and clean up cystdlib.py script
Stefan Behnel [Fri, 23 Aug 2013 21:02:12 +0000 (23:02 +0200)]
add --lenient option also to normal command line
Stefan Behnel [Wed, 21 Aug 2013 19:13:17 +0000 (21:13 +0200)]
remove redundant qualifier from method name
Stefan Behnel [Wed, 21 Aug 2013 18:53:17 +0000 (20:53 +0200)]
simplify and extend in/not-in and is/is-not optimisation, add test
Stefan Behnel [Wed, 21 Aug 2013 13:51:26 +0000 (15:51 +0200)]
simplify generated code by converting 'not X in Y' and 'not X is Y' into the equivalent not-in and is-not operators
Stefan Behnel [Tue, 20 Aug 2013 07:14:54 +0000 (09:14 +0200)]
fix directive parsing in cythonize script
Robert Bradshaw [Thu, 15 Aug 2013 06:44:40 +0000 (23:44 -0700)]
Correct globals for shared function types.
Robert Bradshaw [Tue, 13 Aug 2013 16:03:37 +0000 (09:03 -0700)]
Use PyImport_GetModuleDict() for common utility types.
Stefan Behnel [Tue, 13 Aug 2013 08:27:01 +0000 (10:27 +0200)]
minor doc fixes
Robert Bradshaw [Tue, 13 Aug 2013 07:08:02 +0000 (00:08 -0700)]
Common utility types test.
Robert Bradshaw [Tue, 13 Aug 2013 07:07:36 +0000 (00:07 -0700)]
Py3 fixes for shared types.
Robert Bradshaw [Tue, 13 Aug 2013 05:56:59 +0000 (22:56 -0700)]
Merge branch 'master' into common-types
Robert Bradshaw [Tue, 13 Aug 2013 05:37:17 +0000 (22:37 -0700)]
Use shared module for more Cython types.
Robert Bradshaw [Tue, 13 Aug 2013 05:21:45 +0000 (22:21 -0700)]
Cleanup type sharing.
Robert Bradshaw [Tue, 13 Aug 2013 04:03:05 +0000 (21:03 -0700)]
Clarify cdef vs. def function arguments.
Stefan Behnel [Sun, 11 Aug 2013 17:44:46 +0000 (19:44 +0200)]
make test terminate in Py2.6 by disabling parallel compilation
Stefan Behnel [Sun, 11 Aug 2013 17:23:57 +0000 (19:23 +0200)]
disable cythonize_script* tests in Py2.4: missing support for running 'python2.4 -m a.b.c'
Stefan Behnel [Sun, 11 Aug 2013 15:27:08 +0000 (17:27 +0200)]
extract normal cythonize script test from package compilation test as the latter is not supported in Py3.[012]
--HG--
rename : tests/build/cythonize_script.srctree => tests/build/cythonize_script_package.srctree
Stefan Behnel [Sun, 11 Aug 2013 15:20:13 +0000 (17:20 +0200)]
properly support '**' pattern in file selection
Stefan Behnel [Sun, 11 Aug 2013 14:58:26 +0000 (16:58 +0200)]
fix base path finding for in-place compilation
Stefan Behnel [Sun, 11 Aug 2013 13:21:40 +0000 (15:21 +0200)]
looking up package path at import time requires Py3.3+
Stefan Behnel [Sun, 11 Aug 2013 11:04:32 +0000 (13:04 +0200)]
Py2.4 fix, no need to join the process pool in the error termination case
Robert Bradshaw [Sun, 11 Aug 2013 08:55:49 +0000 (01:55 -0700)]
Share common type object for Cython functions.
Stefan Behnel [Sun, 11 Aug 2013 07:44:24 +0000 (09:44 +0200)]
minor safety fix
Stefan Behnel [Sun, 11 Aug 2013 07:42:32 +0000 (09:42 +0200)]
minor cleanup
Stefan Behnel [Sun, 11 Aug 2013 07:37:10 +0000 (09:37 +0200)]
merge
Stefan Behnel [Sun, 11 Aug 2013 07:29:14 +0000 (09:29 +0200)]
move cythonize script to Cython.Build.Cythonize to make it generally available and keep bin/cythonize only as a pure start script
Stefan Behnel [Sun, 11 Aug 2013 07:15:17 +0000 (09:15 +0200)]
avoid useless overhead if we don't find anything to do
Robert Bradshaw [Sun, 11 Aug 2013 05:58:50 +0000 (22:58 -0700)]
Explicitly disallow caching + common_utility_include_dir.
Also added note to change log.
Robert Bradshaw [Sun, 11 Aug 2013 05:55:12 +0000 (22:55 -0700)]
Fix common_include_dir test for TravisCI.
Stefan Behnel [Sat, 10 Aug 2013 20:04:16 +0000 (22:04 +0200)]
provide serialised fallback if parallel processing fails
Stefan Behnel [Sat, 10 Aug 2013 18:35:07 +0000 (20:35 +0200)]
add simple test for cythonize script
Stefan Behnel [Sat, 10 Aug 2013 18:21:55 +0000 (20:21 +0200)]
reorder options in bin/cythonize
Stefan Behnel [Sat, 10 Aug 2013 17:59:35 +0000 (19:59 +0200)]
add bin/cythonize script
Stefan Behnel [Sat, 10 Aug 2013 15:11:58 +0000 (17:11 +0200)]
allow srctree header commands to be wrapped in triple string quotes to stop IDEs from complaining about them
Stefan Behnel [Sat, 10 Aug 2013 14:01:36 +0000 (16:01 +0200)]
fix for Py<=2.5
Stefan Behnel [Sat, 10 Aug 2013 13:37:12 +0000 (15:37 +0200)]
extend test
Stefan Behnel [Sat, 10 Aug 2013 13:20:56 +0000 (15:20 +0200)]
handle failure to create a process pool in cythonize() by falling back to a single process
Stefan Behnel [Sat, 10 Aug 2013 12:27:18 +0000 (14:27 +0200)]
fix "exclude_failures" mode in cythonize() by also ignoring stripped C files from compilation failures
Stefan Behnel [Sat, 10 Aug 2013 10:48:51 +0000 (12:48 +0200)]
changelog
Stefan Behnel [Sat, 10 Aug 2013 10:42:09 +0000 (12:42 +0200)]
extend test
Stefan Behnel [Sat, 10 Aug 2013 10:12:45 +0000 (12:12 +0200)]
avoid generating empty PyMethodDef array for types (especially closures)
Stefan Behnel [Sat, 10 Aug 2013 08:28:45 +0000 (10:28 +0200)]
encode code to bytes before hashing it
Stefan Behnel [Sat, 10 Aug 2013 08:26:31 +0000 (10:26 +0200)]
print a proper exception traceback when parallel cythonizing crashes
Robert Bradshaw [Fri, 9 Aug 2013 07:00:49 +0000 (00:00 -0700)]
Tests for common include dir.
Stefan Behnel [Fri, 9 Aug 2013 09:35:55 +0000 (11:35 +0200)]
test improved deallocation in Py3.4
Stefan Behnel [Fri, 9 Aug 2013 09:04:23 +0000 (11:04 +0200)]
add some tests for __dealloc__()
Stefan Behnel [Fri, 9 Aug 2013 08:47:02 +0000 (10:47 +0200)]
fix code generated for __dealloc__() and __releasebuffer__() to call WriteUnraisable() on exceptions instead of building a useless traceback
Stefan Behnel [Fri, 9 Aug 2013 08:09:24 +0000 (10:09 +0200)]
be a tiny bit smarter about when to GC_Track for the base type in tp_dealloc()
Stefan Behnel [Fri, 9 Aug 2013 08:07:21 +0000 (10:07 +0200)]
extend test
Stefan Behnel [Fri, 9 Aug 2013 07:57:08 +0000 (09:57 +0200)]
clean up tp_dealloc() code and integrate call to tp_finalize() for Py3.4
Stefan Behnel [Fri, 9 Aug 2013 07:07:26 +0000 (09:07 +0200)]
changelog
Stefan Behnel [Fri, 9 Aug 2013 07:05:28 +0000 (09:05 +0200)]
provide no_gc_clear decorator in pure mode
Stefan Behnel [Fri, 9 Aug 2013 07:02:39 +0000 (09:02 +0200)]
changelog
Stefan Behnel [Fri, 9 Aug 2013 06:58:10 +0000 (08:58 +0200)]
make generators use tp_finalize instead of tp_del for cleanup in Py3.4+
Stefan Behnel [Fri, 9 Aug 2013 06:44:11 +0000 (08:44 +0200)]
move method from Scope to CClassScope that only applies to extension types
Stefan Behnel [Fri, 9 Aug 2013 05:17:33 +0000 (07:17 +0200)]
reformat and clean up some old code
Stefan Behnel [Fri, 9 Aug 2013 05:13:55 +0000 (07:13 +0200)]
Py3 fix
Stefan Behnel [Fri, 9 Aug 2013 05:02:43 +0000 (07:02 +0200)]
fix docstring reuse from distutils Extension base class
Stefan Behnel [Thu, 8 Aug 2013 18:30:53 +0000 (20:30 +0200)]
extend no_gc_clear test to check closures for their automatic tp_clear() behaviour
Stefan Behnel [Thu, 8 Aug 2013 17:49:11 +0000 (19:49 +0200)]
make the NULL-instead-of-None change in tp_clear() optional and off by default - breaks too much code for now
Stefan Behnel [Thu, 8 Aug 2013 17:46:55 +0000 (19:46 +0200)]
remove outdated comment
scoder [Thu, 8 Aug 2013 16:50:05 +0000 (09:50 -0700)]
Merge pull request #233 from vitek/_type_inference_new
Assignmment based type inference
scoder [Thu, 8 Aug 2013 16:48:17 +0000 (09:48 -0700)]
Merge pull request #248 from Bluehorn/master
no_gc_clear implementation (disable tp_clear) + doc and tests
Stefan Behnel [Tue, 6 Aug 2013 17:09:53 +0000 (19:09 +0200)]
disable PyPy build on travis - takes way too long
Torsten Landschoff [Tue, 6 Aug 2013 15:29:38 +0000 (17:29 +0200)]
Removed directive_type for gc_no_clear as it can be inferred.
Torsten Landschoff [Tue, 6 Aug 2013 15:27:58 +0000 (17:27 +0200)]
Cleanup unneeded cpdefs and public declarations.
Per Stefan's comment these are unneeded and actually the tests still pass.
Stefan Behnel [Tue, 6 Aug 2013 07:28:07 +0000 (09:28 +0200)]
fix CPython version check for tp_finalize()
Stefan Behnel [Tue, 6 Aug 2013 07:24:45 +0000 (09:24 +0200)]
revert actual tp_finalize() usages, needs more thought
Stefan Behnel [Tue, 6 Aug 2013 07:20:08 +0000 (09:20 +0200)]
minor C code simplification
Stefan Behnel [Sun, 4 Aug 2013 14:03:00 +0000 (16:03 +0200)]
use proper C-API function for generator finalisation
Stefan Behnel [Sun, 4 Aug 2013 13:57:52 +0000 (15:57 +0200)]
enable Py_TPFLAGS_HAVE_FINALIZE flag for extension types that need it
Stefan Behnel [Sun, 4 Aug 2013 13:57:30 +0000 (15:57 +0200)]
fix CPython version checking for tp_finalize()
Stefan Behnel [Sun, 4 Aug 2013 13:13:54 +0000 (15:13 +0200)]
minor code cleanup
Stefan Behnel [Sun, 4 Aug 2013 12:58:05 +0000 (14:58 +0200)]
move object finalisation code from tp_dealloc() into tp_finalize() in Py3.4
Stefan Behnel [Sat, 3 Aug 2013 19:43:24 +0000 (21:43 +0200)]
use tp_finalize instead of tp_del for Cython generators
Stefan Behnel [Sat, 3 Aug 2013 19:28:15 +0000 (21:28 +0200)]
adapt more type structs to Py3.4
Stefan Behnel [Sat, 3 Aug 2013 16:33:10 +0000 (18:33 +0200)]
add tp_finalize slot for Py3.4+
Robert Bradshaw [Sat, 3 Aug 2013 08:04:04 +0000 (01:04 -0700)]
Add memory allocation from wiki.
Robert Bradshaw [Sat, 3 Aug 2013 06:30:02 +0000 (23:30 -0700)]
Added limitations from wiki.
Torsten Landschoff [Thu, 1 Aug 2013 23:48:31 +0000 (01:48 +0200)]
Fixed no_gc_clear test for Python 3.
Torsten Landschoff [Thu, 1 Aug 2013 23:47:08 +0000 (01:47 +0200)]
Renamed unit test to match decorator name.
Torsten Landschoff [Thu, 1 Aug 2013 22:45:15 +0000 (00:45 +0200)]
Add decorator @gc_no_clear to disable tp_clear slot.
This can be useful if some external objects have to be cleaned up when
the Python object dies. Otherwise the cyclic garbage collector may
drop the references before the cleanup has any chance to run.
Includes documentation and a simple unit test.
Discussion: http://article.gmane.org/gmane.comp.python.cython.devel/14986
Torsten Landschoff [Thu, 1 Aug 2013 21:37:30 +0000 (23:37 +0200)]
Change tp_clear generation to clear to NULL.
Better to crash early than to never know that the reference changed to
None. See discussion here:
http://article.gmane.org/gmane.comp.python.cython.devel/14833
Stefan Behnel [Sat, 27 Jul 2013 18:03:20 +0000 (20:03 +0200)]
disable report output in build log