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
Stefan Behnel [Tue, 13 Aug 2013 08:27:01 +0000 (10:27 +0200)]
minor doc fixes
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
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
Stefan Behnel [Sat, 27 Jul 2013 18:01:14 +0000 (20:01 +0200)]
loosen source line constraints in pylintrc
Stefan Behnel [Sat, 27 Jul 2013 17:57:43 +0000 (19:57 +0200)]
reformat code
Stefan Behnel [Sat, 27 Jul 2013 17:21:19 +0000 (19:21 +0200)]
add prliminary pylint configuration
Stefan Behnel [Sat, 27 Jul 2013 16:51:18 +0000 (18:51 +0200)]
fix unknown name error
Stefan Behnel [Sat, 27 Jul 2013 16:49:39 +0000 (18:49 +0200)]
fix NormalizeTree transform
Stefan Behnel [Sat, 27 Jul 2013 15:17:32 +0000 (17:17 +0200)]
fix type declaration in parser
Stefan Behnel [Sat, 27 Jul 2013 13:31:42 +0000 (15:31 +0200)]
properly handle expressions at the beginning of func/class/etc. blocks that start with a string literal but are not docstrings
Stefan Behnel [Sat, 27 Jul 2013 06:05:25 +0000 (08:05 +0200)]
changelog
Stefan Behnel [Sat, 27 Jul 2013 05:55:43 +0000 (07:55 +0200)]
changelog
Stefan Behnel [Sat, 27 Jul 2013 05:52:50 +0000 (07:52 +0200)]
avoid traversing/clearing exttype attributes with simple types during garbage collection
Stefan Behnel [Sat, 27 Jul 2013 05:27:46 +0000 (07:27 +0200)]
prevent simple builtin typed exttype attributes from triggering GC support
Stefan Behnel [Sat, 27 Jul 2013 04:50:34 +0000 (06:50 +0200)]
minor cleanup, use set for efficient name lookup
Stefan Behnel [Sat, 27 Jul 2013 04:14:44 +0000 (06:14 +0200)]
add test tag
Stefan Behnel [Fri, 26 Jul 2013 19:26:43 +0000 (21:26 +0200)]
always set __path__ for compiled packages and in Py3.3 actually implement finding the file path at module init time by rerunning the import lookup
Robert Bradshaw [Fri, 26 Jul 2013 17:54:18 +0000 (10:54 -0700)]
Implement warn.all (or any_directive.all).
Stefan Behnel [Fri, 26 Jul 2013 10:21:04 +0000 (12:21 +0200)]
undo translating Tempita package, apparently doesn't work in Py3.3+
Stefan Behnel [Fri, 26 Jul 2013 10:00:36 +0000 (12:00 +0200)]
fix imports in compiled Tempita for Py3
Stefan Behnel [Fri, 26 Jul 2013 09:20:22 +0000 (11:20 +0200)]
use absolute imports in Visitor.py
Stefan Behnel [Fri, 26 Jul 2013 09:02:07 +0000 (11:02 +0200)]
micro optimisation in globals()
Stefan Behnel [Fri, 26 Jul 2013 08:39:37 +0000 (10:39 +0200)]
use branch hint in getattr3()
Stefan Behnel [Fri, 26 Jul 2013 08:38:49 +0000 (10:38 +0200)]
move getattr() utility code from Builtins.c to ObjectHandling.c as it deals with object protocols and is not a required replacement
Stefan Behnel [Fri, 26 Jul 2013 08:14:07 +0000 (10:14 +0200)]
add comments to utility files