Mark Lodato [Sat, 24 Oct 2009 20:17:23 +0000 (16:17 -0400)]
--embed mode: fix Py3, floating point on FreeBSD
Incorporate the changes of cython_freeze:
* fix when compiling on Python 3 (Issue #434)
* fix floating point issues on FreeBSD
Mark Lodato [Sat, 24 Oct 2009 19:37:28 +0000 (15:37 -0400)]
freeze: fix for compiling with Python3
To get the output of cython_freeze to compile with both Python 2 and
Python 3, I copied the contents of Python-3.1.1/Modules/python.c, with
some slight modifications. The main issue is that Python 3 uses
wchar_t, while Python 2 uses char. It also appears that the
Py_FlushLine/PyErr_Clear is not needed in Python 3.
Related to #434: "main() function generated by --embed doesn't compile
in Py3"
Mark Lodato [Sat, 24 Oct 2009 19:01:29 +0000 (15:01 -0400)]
freeze: exit(2) in examples, to test exit code
The cython_freeze-generated executable exits with code 1 if something
wrong happens, unless a SystemExit exception occurred, in which case it
returns the value passed to sys.exit(). In order to differentiate
between the two cases, change the two example Cython modules to exit(2).
Mark Lodato [Sat, 24 Oct 2009 18:40:41 +0000 (14:40 -0400)]
freeze: include FreeBSD fix from Python's main()
Copy the fix for floating point exceptions on FreeBSD from Python's
Module/python.c.
Mark Lodato [Mon, 12 Oct 2009 04:17:47 +0000 (00:17 -0400)]
freeze: Makefile: use -fno-strict-aliasing
Python 2 cannot compile with strict aliasing, so the Cython modules
should really be compiled with -fno-strict-aliasing. See Issue #395.
Mark Lodato [Mon, 5 Oct 2009 02:36:40 +0000 (22:36 -0400)]
freeze: Makefile: add target to build README.html
Add a target (with alias "html") to build README.html from README.txt
using rst2html. This is not run by default.
Mark Lodato [Mon, 5 Oct 2009 02:34:48 +0000 (22:34 -0400)]
freeze: rename README.rst to README.txt
The only reason I had a "rst" extension was so that GitHub would pick it
up.
--HG--
rename : Demos/freeze/README.rst => Demos/freeze/README.txt
Mark Lodato [Mon, 5 Oct 2009 00:07:28 +0000 (20:07 -0400)]
freeze: add --pymain example
Add an example of building a --pymain Python interpreter to the README
and to the Makefile.
Mark Lodato [Mon, 5 Oct 2009 00:03:20 +0000 (20:03 -0400)]
freeze: add -p option for calling Py_Main()
Add an option to build a regular interpreter, calling Py_Main(), rather
than running the first module as __main__.
Mark Lodato [Mon, 5 Oct 2009 00:02:03 +0000 (20:02 -0400)]
freeze: remove blank lines from beginning and end
Mark Lodato [Mon, 5 Oct 2009 00:01:27 +0000 (20:01 -0400)]
freeze: add -o option for setting output file
Mark Lodato [Mon, 5 Oct 2009 00:00:32 +0000 (20:00 -0400)]
freeze: use optparse to parse arguments
Mark Lodato [Sun, 4 Oct 2009 23:39:07 +0000 (19:39 -0400)]
freeze: Makefile: flags from distutils.sysconfig
Instead of hard-coding the compiler flags and libraries, extract them
from distutils.sysconfig.
Mark Lodato [Sun, 4 Oct 2009 23:32:43 +0000 (19:32 -0400)]
freeze: README: fix typos and mistakes in example
I mis-spelled "combinatorics", and I forgot to use the -c flag to gcc.
Mark Lodato [Sun, 4 Oct 2009 23:31:26 +0000 (19:31 -0400)]
freeze: Makefile: only clean specific C files
Mark Lodato [Sun, 4 Oct 2009 23:29:54 +0000 (19:29 -0400)]
freeze: remove mistaken semicolon
Mark Lodato [Tue, 6 Oct 2009 01:37:12 +0000 (21:37 -0400)]
freeze: fix cmath.pyx when run as __main__
Mark Lodato [Sun, 4 Oct 2009 22:45:27 +0000 (18:45 -0400)]
freeze: fix Makefile's CYTHON path
Mark Lodato [Sat, 3 Oct 2009 19:55:55 +0000 (15:55 -0400)]
freeze: rename cython_freeze.py to cython_freeze
--HG--
rename : bin/cython_freeze.py => bin/cython_freeze
Mark Lodato [Sun, 4 Oct 2009 22:25:32 +0000 (18:25 -0400)]
freeze: in documentation, reference Demos/freeze
The files originally had README.rst in the top level and the examples in
the example directory, but now all are in Demos/freeze.
Stefan Behnel [Sat, 24 Oct 2009 13:43:24 +0000 (15:43 +0200)]
fix identifier decoding check
Stefan Behnel [Sat, 24 Oct 2009 13:28:56 +0000 (15:28 +0200)]
fix exec in Py2.3
Stefan Behnel [Sat, 24 Oct 2009 13:12:23 +0000 (15:12 +0200)]
missing weakref .pxd file, include all python_*.pxd files in python.pxd, test their cimport
Stefan Behnel [Sat, 24 Oct 2009 09:30:00 +0000 (11:30 +0200)]
removed dead comment
Stefan Behnel [Sat, 24 Oct 2009 08:59:41 +0000 (10:59 +0200)]
minor refactoring, use 'notnone=True' in type tests
Mark Lodato [Mon, 12 Oct 2009 16:37:59 +0000 (12:37 -0400)]
prevent warnings when compiling with `gcc -Wextra`
The PyInt conversion functions generate two warnings when compiled under
`gcc -Wall -Wextra`:
1. comparison of unsigned expression < 0 is always false
2. signed and unsigned type in conditional expression
This patch fixes these problems by creating a new temporary variable
`is_unsigned`, which fixes problem 1, and by converting the ternary
return expression into a normal if/else branch, which fixes problem 2.
Lisandro Dalcin [Fri, 23 Oct 2009 18:41:24 +0000 (16:41 -0200)]
additional test for type casts (ticket #417)
--HG--
extra : rebase_source :
3512ea980463bae13f30b0d8bd395cabe253e65c
Lisandro Dalcin [Thu, 22 Oct 2009 20:42:30 +0000 (18:42 -0200)]
Extension type cast should reject None (ticket #417)
--HG--
extra : rebase_source :
37bb9de5574e1f7b4f288192eaa3c70a2ae350ca
Mark Lodato [Fri, 16 Oct 2009 23:38:02 +0000 (19:38 -0400)]
numpy.pxd: add NPY_UINT64 and family
This provides a fast way to check to see the data type of an ndarray.
For example, to check to see if an integer is 64 bits:
PyArray_TYPE(a) == NPY_UINT64 or PyArray_TYPE(a) == NPY_INT64
Mark Lodato [Fri, 16 Oct 2009 23:28:49 +0000 (19:28 -0400)]
numpy.pxd: fix typo PyArray_ISISCONTIGUOUS
Stefan Behnel [Fri, 23 Oct 2009 16:56:48 +0000 (18:56 +0200)]
applied pyximport patch from ticket 312
Stefan Behnel [Fri, 23 Oct 2009 13:53:24 +0000 (15:53 +0200)]
fix cascade order of assignments for complete assignments within parallel assignments
Stefan Behnel [Fri, 23 Oct 2009 13:39:32 +0000 (15:39 +0200)]
more .pxd cleanups
--HG--
rename : Cython/Includes/python_string.pxd => Cython/Includes/python_bytes.pxd
rename : Cython/Includes/python_parse.pxd => Cython/Includes/python_getargs.pxd
Stefan Behnel [Fri, 23 Oct 2009 08:10:14 +0000 (10:10 +0200)]
fix bug 409: use cascaded assignments also for the complete rhs when optimising parallel assignments
Robert Bradshaw [Fri, 23 Oct 2009 06:21:40 +0000 (23:21 -0700)]
Fix #250, Traceback method name is wrong for exceptions caught in methods
Robert Bradshaw [Fri, 23 Oct 2009 05:39:44 +0000 (22:39 -0700)]
Fix ticket #215, explicit error for __getslice__, __delslice__ in Py3.
Stefan Behnel [Thu, 22 Oct 2009 20:34:15 +0000 (22:34 +0200)]
fix in-place division in Py3
Robert Bradshaw [Thu, 22 Oct 2009 20:20:11 +0000 (13:20 -0700)]
Annotation work.
Robert Bradshaw [Thu, 22 Oct 2009 19:06:11 +0000 (12:06 -0700)]
Remove backwards incompatable change to string identifiers.
Robert Bradshaw [Thu, 22 Oct 2009 10:27:16 +0000 (03:27 -0700)]
another merge
Robert Bradshaw [Thu, 22 Oct 2009 10:15:34 +0000 (03:15 -0700)]
Cpp exception tests.
Robert Bradshaw [Thu, 22 Oct 2009 09:50:29 +0000 (02:50 -0700)]
Fix cpp exception catching.
Robert Bradshaw [Thu, 22 Oct 2009 09:50:11 +0000 (02:50 -0700)]
Return value for check_const.
Stefan Behnel [Thu, 22 Oct 2009 09:26:16 +0000 (11:26 +0200)]
merge
Stefan Behnel [Thu, 22 Oct 2009 09:24:48 +0000 (11:24 +0200)]
fix intern() optimisation
Robert Bradshaw [Thu, 22 Oct 2009 09:17:13 +0000 (02:17 -0700)]
Fix casts and negations in except clauses.
Robert Bradshaw [Thu, 22 Oct 2009 06:39:02 +0000 (23:39 -0700)]
More cmp tests, refix C assignable types.
Robert Bradshaw [Thu, 22 Oct 2009 06:20:22 +0000 (23:20 -0700)]
merge
Robert Bradshaw [Thu, 22 Oct 2009 06:18:20 +0000 (23:18 -0700)]
More comparison fixes.
Stefan Behnel [Thu, 22 Oct 2009 06:12:32 +0000 (08:12 +0200)]
tiny cleanup
Robert Bradshaw [Thu, 22 Oct 2009 05:34:50 +0000 (22:34 -0700)]
Fix comparison type deduction.
Robert Bradshaw [Thu, 22 Oct 2009 04:25:36 +0000 (21:25 -0700)]
merge
Robert Bradshaw [Thu, 22 Oct 2009 04:25:12 +0000 (21:25 -0700)]
Fix #431, intern() doesn't work for python strings with 0 characters.
Stefan Behnel [Wed, 21 Oct 2009 19:54:00 +0000 (21:54 +0200)]
cleanup
Stefan Behnel [Wed, 21 Oct 2009 19:44:42 +0000 (21:44 +0200)]
fix bug 430: make 'locals().items()' work
Stefan Behnel [Wed, 21 Oct 2009 19:43:53 +0000 (21:43 +0200)]
test fixes
Stefan Behnel [Wed, 21 Oct 2009 19:30:39 +0000 (21:30 +0200)]
fix bug 429: make 'locals' builtin overridable
Stefan Behnel [Wed, 21 Oct 2009 18:47:08 +0000 (20:47 +0200)]
new test case for locals()
Stefan Behnel [Wed, 21 Oct 2009 18:43:30 +0000 (20:43 +0200)]
extended test case
Stefan Behnel [Wed, 21 Oct 2009 13:57:41 +0000 (15:57 +0200)]
test case for locals(), ticket 429
Stefan Behnel [Wed, 21 Oct 2009 10:09:05 +0000 (12:09 +0200)]
extended test case
Stefan Behnel [Wed, 21 Oct 2009 09:55:08 +0000 (11:55 +0200)]
detect optimisable IndexNodes assignments in ref-count optimisation, but do not activate them for now
Dag Sverre Seljebotn [Wed, 21 Oct 2009 08:31:53 +0000 (10:31 +0200)]
Preliminary scons support (in Tools dir)
Stefan Behnel [Tue, 20 Oct 2009 20:31:39 +0000 (22:31 +0200)]
handle simple swap assignments without ref-counting
Stefan Behnel [Tue, 20 Oct 2009 19:36:58 +0000 (21:36 +0200)]
comments
Stefan Behnel [Tue, 20 Oct 2009 19:16:12 +0000 (21:16 +0200)]
fix switch transform
Stefan Behnel [Tue, 20 Oct 2009 19:09:11 +0000 (21:09 +0200)]
merge
Stefan Behnel [Tue, 20 Oct 2009 19:08:24 +0000 (21:08 +0200)]
another rewrite to catch comparisons of invalid types
Stefan Behnel [Tue, 20 Oct 2009 19:06:22 +0000 (21:06 +0200)]
extended test case
Stefan Behnel [Tue, 20 Oct 2009 19:02:54 +0000 (21:02 +0200)]
extended test case
Stefan Behnel [Tue, 20 Oct 2009 18:08:57 +0000 (20:08 +0200)]
extended test case
Stefan Behnel [Tue, 20 Oct 2009 18:08:31 +0000 (20:08 +0200)]
don't allow pointer assignments to Python variables (except for char*)
Stefan Behnel [Tue, 20 Oct 2009 18:06:22 +0000 (20:06 +0200)]
test simplification
Dag Sverre Seljebotn [Tue, 20 Oct 2009 08:46:09 +0000 (10:46 +0200)]
Fix for buffer testcase (s must be bytes, not unicode)
Dag Sverre Seljebotn [Tue, 20 Oct 2009 08:37:13 +0000 (10:37 +0200)]
Blacklist __nonzero__ from autotestdict
Dag Sverre Seljebotn [Tue, 20 Oct 2009 08:23:01 +0000 (10:23 +0200)]
numpy.pxd: npy_complexX should be the C structs used by C NumPy, not Cython complex
Dag Sverre Seljebotn [Tue, 20 Oct 2009 08:06:41 +0000 (10:06 +0200)]
merge
Dag Sverre Seljebotn [Tue, 20 Oct 2009 08:06:09 +0000 (10:06 +0200)]
Fix z.conjugate() for typedef-ed z; disallow external typedef complex
Stefan Behnel [Mon, 19 Oct 2009 10:14:12 +0000 (12:14 +0200)]
find common type for comparisons *before* coercing operands, to prevent inconsistent types and loosing type information
Stefan Behnel [Sun, 18 Oct 2009 17:37:13 +0000 (19:37 +0200)]
Py3 test fixes
Stefan Behnel [Sun, 18 Oct 2009 17:31:53 +0000 (19:31 +0200)]
fix default string value representation in auto-embedded signatures
Stefan Behnel [Sun, 18 Oct 2009 16:25:34 +0000 (18:25 +0200)]
enable working test
Stefan Behnel [Sun, 18 Oct 2009 15:58:18 +0000 (17:58 +0200)]
fix source comments for non-ASCII characters
Stefan Behnel [Sun, 18 Oct 2009 12:52:43 +0000 (14:52 +0200)]
test case cleanup
Stefan Behnel [Sun, 18 Oct 2009 12:42:50 +0000 (14:42 +0200)]
new test case for reraising exceptions
Stefan Behnel [Sun, 18 Oct 2009 12:01:08 +0000 (14:01 +0200)]
Python calls SetTraceback() later, so should we
Stefan Behnel [Sun, 18 Oct 2009 11:30:34 +0000 (13:30 +0200)]
fix memory leak in new exception raising code
Stefan Behnel [Sun, 18 Oct 2009 10:30:21 +0000 (12:30 +0200)]
refactoring of exception raising code, simpler/faster/correcter code for reraising exceptions, separate implementation for Py3, minor fixes for error cases
Stefan Behnel [Sat, 17 Oct 2009 21:29:50 +0000 (23:29 +0200)]
Py2 test fixes
Stefan Behnel [Sat, 17 Oct 2009 20:52:16 +0000 (22:52 +0200)]
avoid redundant recoding during code comment injection by configuring input codec directly
Stefan Behnel [Sat, 17 Oct 2009 20:34:28 +0000 (22:34 +0200)]
fix bug 412: str char comparison, refactoring to move comparison coercions closer in the code
Stefan Behnel [Sat, 17 Oct 2009 12:33:20 +0000 (14:33 +0200)]
fix test case in C++
Robert Bradshaw [Sat, 17 Oct 2009 09:04:04 +0000 (02:04 -0700)]
some test fixes
Robert Bradshaw [Sat, 17 Oct 2009 07:25:11 +0000 (00:25 -0700)]
Better error for foo(*args) when foo a cdef function.
Stefan Behnel [Fri, 16 Oct 2009 22:35:18 +0000 (00:35 +0200)]
simple test for testing truth of C values
Stefan Behnel [Fri, 16 Oct 2009 11:51:20 +0000 (13:51 +0200)]
merge
Stefan Behnel [Fri, 16 Oct 2009 11:38:03 +0000 (13:38 +0200)]
more .pxd signature fixing
Dag Sverre Seljebotn [Fri, 16 Oct 2009 11:31:53 +0000 (13:31 +0200)]
Yet another bugfix for autotestdict
Dag Sverre Seljebotn [Fri, 16 Oct 2009 11:21:32 +0000 (13:21 +0200)]
Update a testcase
Dag Sverre Seljebotn [Fri, 16 Oct 2009 11:20:15 +0000 (13:20 +0200)]
Fix Parsing.py so it compiles with Cython