platform/upstream/python-cython.git
11 years agospeed up slicing of lists and tuples
Stefan Behnel [Thu, 7 Mar 2013 19:39:15 +0000 (20:39 +0100)]
speed up slicing of lists and tuples

11 years agoMerge pull request #193 from nnemkin/pyunicode_string_fix
scoder [Thu, 7 Mar 2013 08:16:36 +0000 (00:16 -0800)]
Merge pull request #193 from nnemkin/pyunicode_string_fix

Compatibility fix for Py_UNICODE* support.

11 years agoPass-through single surrogates in Py_UNICODE[] literal encoding routine.
Nikita Nemkin [Thu, 7 Mar 2013 07:37:12 +0000 (13:37 +0600)]
Pass-through single surrogates in Py_UNICODE[] literal encoding routine.

11 years agofix name lookup in class scope
Stefan Behnel [Thu, 7 Mar 2013 07:18:27 +0000 (08:18 +0100)]
fix name lookup in class scope

11 years agofactor out builtin access code
Stefan Behnel [Wed, 6 Mar 2013 23:30:37 +0000 (00:30 +0100)]
factor out builtin access code

11 years agospeed up access to module globals
Stefan Behnel [Wed, 6 Mar 2013 23:17:37 +0000 (00:17 +0100)]
speed up access to module globals

11 years agoMerge pull request #192 from alexis-mignon/master
Robert Bradshaw [Wed, 6 Mar 2013 22:32:39 +0000 (14:32 -0800)]
Merge pull request #192 from alexis-mignon/master

Adding +/- operators for c++ vector iterators

11 years agocompare test result with CPython
Stefan Behnel [Wed, 6 Mar 2013 22:14:30 +0000 (23:14 +0100)]
compare test result with CPython

--HG--
rename : tests/run/ref2global.pyx => tests/run/ref2global.py

11 years agofix test
Stefan Behnel [Wed, 6 Mar 2013 22:00:07 +0000 (23:00 +0100)]
fix test

11 years agofix exception message
Stefan Behnel [Wed, 6 Mar 2013 18:34:25 +0000 (19:34 +0100)]
fix exception message

11 years agoCompatibility fix: no UTF-32 codec in Python 2.4/2.5.
Nikita Nemkin [Wed, 6 Mar 2013 18:05:32 +0000 (00:05 +0600)]
Compatibility fix: no UTF-32 codec in Python 2.4/2.5.

11 years agoAdding +/- operators for iterators
Alexis Mignon [Wed, 6 Mar 2013 14:48:06 +0000 (15:48 +0100)]
Adding +/- operators for iterators

11 years agoMerge branch 'master' of github.com:cython/cython
Robert Bradshaw [Wed, 6 Mar 2013 09:31:59 +0000 (01:31 -0800)]
Merge branch 'master' of github.com:cython/cython

11 years agoDocument drawbacks of excessive typing.
Robert Bradshaw [Wed, 6 Mar 2013 09:31:16 +0000 (01:31 -0800)]
Document drawbacks of excessive typing.

11 years agoMerge pull request #191 from nnemkin/py_unicode_strings
scoder [Tue, 5 Mar 2013 18:11:36 +0000 (10:11 -0800)]
Merge pull request #191 from nnemkin/py_unicode_strings

Py_UNICODE* string support

11 years agoMore pyunicode_ptr renames.
Nikita Nemkin [Tue, 5 Mar 2013 16:44:28 +0000 (22:44 +0600)]
More pyunicode_ptr renames.

11 years agoDocumentation for Py_UNICODE* string support.
Nikita Nemkin [Tue, 5 Mar 2013 12:33:34 +0000 (18:33 +0600)]
Documentation for Py_UNICODE* string support.

11 years agoRenamed Py_UNICODE* entities to use "pyunicode_ptr" prefix; fixed small issues in...
Nikita Nemkin [Tue, 5 Mar 2013 12:25:22 +0000 (18:25 +0600)]
Renamed Py_UNICODE* entities to use "pyunicode_ptr" prefix; fixed small issues in Py_UNICODE* support.

11 years agoMerge pull request #188 from pv/pyxbuild-fixes
scoder [Mon, 4 Mar 2013 18:05:08 +0000 (10:05 -0800)]
Merge pull request #188 from pv/pyxbuild-fixes

pyximport: fix a bug crashing other processes

11 years agoMerge pull request #189 from intellimath/master
scoder [Mon, 4 Mar 2013 18:03:45 +0000 (10:03 -0800)]
Merge pull request #189 from intellimath/master

Add datetime.pxd to cython.cpython

11 years agominor code cleanup
Stefan Behnel [Mon, 4 Mar 2013 06:30:30 +0000 (07:30 +0100)]
minor code cleanup

11 years agoprovide better error message for unknown globals (copied from CPython)
Stefan Behnel [Mon, 4 Mar 2013 06:07:32 +0000 (07:07 +0100)]
provide better error message for unknown globals (copied from CPython)

--HG--
rename : tests/broken/ref2global.pyx => tests/run/ref2global.pyx

11 years agoremove redundant utility code from ExprNodes.py
Stefan Behnel [Mon, 4 Mar 2013 06:06:21 +0000 (07:06 +0100)]
remove redundant utility code from ExprNodes.py

11 years agofix reversed order of operands in constant calculation for 'in' and 'not in' operator
Stefan Behnel [Sun, 3 Mar 2013 20:27:22 +0000 (21:27 +0100)]
fix reversed order of operands in constant calculation for 'in' and 'not in' operator

11 years agoFixed a silly typo.
Nikita Nemkin [Sun, 3 Mar 2013 16:08:16 +0000 (22:08 +0600)]
Fixed a silly typo.

11 years agoFix missing `void`
Zaur Shibzukhov [Sun, 3 Mar 2013 13:45:43 +0000 (16:45 +0300)]
Fix missing `void`

11 years agoChange test to initialize by `import_datetime`
Zaur Shibzukhov [Sun, 3 Mar 2013 13:44:03 +0000 (16:44 +0300)]
Change test to initialize by `import_datetime`

11 years agoChange test to initialize by `import_datetime`
Zaur Shibzukhov [Sun, 3 Mar 2013 13:42:32 +0000 (16:42 +0300)]
Change test to initialize by `import_datetime`

11 years agoChange test to initialize by `import_datetime`
Zaur Shibzukhov [Sun, 3 Mar 2013 13:40:47 +0000 (16:40 +0300)]
Change test to initialize by `import_datetime`

11 years agoFull support for Py_UNICODE[] literals with non-BMP characters.
Nikita Nemkin [Sun, 3 Mar 2013 13:38:15 +0000 (19:38 +0600)]
Full support for Py_UNICODE[] literals with non-BMP characters.

11 years agoAdd function `import_datetime`
Zaur Shibzukhov [Sun, 3 Mar 2013 13:38:11 +0000 (16:38 +0300)]
Add function `import_datetime`

Add inline function `import_datetime` for initialization of PyDateTime C API.

11 years agoFixed explicit coercion of ctypedef'ed C types.
Nikita Nemkin [Fri, 1 Mar 2013 19:57:52 +0000 (01:57 +0600)]
Fixed explicit coercion of ctypedef'ed C types.

11 years agoWarn on C++ exception declarations for non-extern functions.
Robert Bradshaw [Sun, 3 Mar 2013 07:35:45 +0000 (23:35 -0800)]
Warn on C++ exception declarations for non-extern functions.

This will be made an error.

11 years agoMSVC fixes.
Robert Bradshaw [Sun, 3 Mar 2013 07:34:25 +0000 (23:34 -0800)]
MSVC fixes.

11 years agoTests for Py_UNICODE* string support.
Nikita Nemkin [Sun, 3 Mar 2013 06:23:17 +0000 (12:23 +0600)]
Tests for Py_UNICODE* string support.

11 years agoBasic support for Py_UNICODE* strings.
Nikita Nemkin [Sun, 3 Mar 2013 06:01:06 +0000 (12:01 +0600)]
Basic support for Py_UNICODE* strings.

11 years agoRevert "Disallow C++ exception declarations for non-extern functions."
Robert Bradshaw [Sat, 2 Mar 2013 23:39:28 +0000 (15:39 -0800)]
Revert "Disallow C++ exception declarations for non-extern functions."

This reverts commit 496c0fd91bdaab3de3df7d084db95d5c90101104.

11 years agocorrect name for basestring in Py3 to 'str' (not 'unicode')
Stefan Behnel [Sat, 2 Mar 2013 21:11:50 +0000 (22:11 +0100)]
correct name for basestring in Py3 to 'str' (not 'unicode')

11 years agofix C compiler warnings about unused parameters
Stefan Behnel [Sat, 2 Mar 2013 20:53:59 +0000 (21:53 +0100)]
fix C compiler warnings about unused parameters

11 years agooptimise isinstance(obj, basestring) and map basestring to unicode in Py3
Stefan Behnel [Sat, 2 Mar 2013 18:45:35 +0000 (19:45 +0100)]
optimise isinstance(obj, basestring) and map basestring to unicode in Py3

11 years agominor code cleanup
Stefan Behnel [Sat, 2 Mar 2013 13:59:34 +0000 (14:59 +0100)]
minor code cleanup

11 years agouse constant flags to move wraparound/boundscheck evaluation into inlined Get/Set...
Stefan Behnel [Sat, 2 Mar 2013 10:30:03 +0000 (11:30 +0100)]
use constant flags to move wraparound/boundscheck evaluation into inlined Get/Set/DelItemInt() utility functions

11 years agoDisallow C++ exception declarations for non-extern functions.
Robert Bradshaw [Fri, 1 Mar 2013 20:59:11 +0000 (12:59 -0800)]
Disallow C++ exception declarations for non-extern functions.

11 years agoreduce freelist sizes below the number of created objects
Stefan Behnel [Fri, 1 Mar 2013 12:22:42 +0000 (13:22 +0100)]
reduce freelist sizes below the number of created objects

11 years agoadd freelist test for exttype with vtable
Stefan Behnel [Fri, 1 Mar 2013 12:21:52 +0000 (13:21 +0100)]
add freelist test for exttype with vtable

11 years agoAdd missing files
zaur [Thu, 28 Feb 2013 08:23:16 +0000 (11:23 +0300)]
Add missing files

11 years agoAdd test for date/time/datetime/timedelta members
zaur [Thu, 28 Feb 2013 08:22:09 +0000 (11:22 +0300)]
Add test for date/time/datetime/timedelta members

11 years agoRemove no-gil cdivision error test.
Robert Bradshaw [Wed, 27 Feb 2013 20:44:44 +0000 (12:44 -0800)]
Remove no-gil cdivision error test.

11 years agoFix inline getters for timedelta
zaur [Wed, 27 Feb 2013 11:19:24 +0000 (14:19 +0300)]
Fix inline getters for timedelta

11 years agoAdd new line at the end of file
zaur [Wed, 27 Feb 2013 09:54:48 +0000 (12:54 +0300)]
Add new line at the end of file

11 years agoAdd datetime.pxd to cython.cpython. Part II
zaur [Wed, 27 Feb 2013 09:46:26 +0000 (12:46 +0300)]
Add datetime.pxd to cython.cpython. Part II

11 years agoDon't require the GIL for cdivision(False).
Robert Bradshaw [Wed, 27 Feb 2013 08:42:02 +0000 (00:42 -0800)]
Don't require the GIL for cdivision(False).

11 years agoproperly integrate pyximport into setup.py
Stefan Behnel [Wed, 27 Feb 2013 07:49:32 +0000 (08:49 +0100)]
properly integrate pyximport into setup.py

--HG--
extra : rebase_source : d0e52d3a06b2734287cc30fe9ef9ebd0a641b05a

11 years agodelete unused file
Stefan Behnel [Wed, 27 Feb 2013 07:47:33 +0000 (08:47 +0100)]
delete unused file

--HG--
extra : rebase_source : 3998c84c9c2a646d9588103205666d37731c41a7

11 years agouse a couple of branch prediction macros in tp_new() function, just in case
Stefan Behnel [Mon, 25 Feb 2013 18:16:21 +0000 (19:16 +0100)]
use a couple of branch prediction macros in tp_new() function, just in case

--HG--
extra : rebase_source : 32ab400fc7cf381d2267ae01b3ada7065d706ed2

11 years agoinitialise all fields to 0 when using object structs from the freelist
Stefan Behnel [Mon, 25 Feb 2013 17:53:23 +0000 (18:53 +0100)]
initialise all fields to 0 when using object structs from the freelist

--HG--
extra : rebase_source : 346e99306b247c116d988b58802ed7e7eb62754c

11 years agoenum switch test
Robert Bradshaw [Tue, 26 Feb 2013 23:56:14 +0000 (15:56 -0800)]
enum switch test

11 years agoAllow enums in switch statement optimization.
Robert Bradshaw [Tue, 26 Feb 2013 23:52:01 +0000 (15:52 -0800)]
Allow enums in switch statement optimization.

11 years agoMerge remote-tracking branch 'main/master'
Robert Bradshaw [Tue, 26 Feb 2013 10:12:55 +0000 (02:12 -0800)]
Merge remote-tracking branch 'main/master'

Conflicts:
Cython/Compiler/Options.py

11 years agoDocs for c_string_type and c_string_encoding
Robert Bradshaw [Tue, 26 Feb 2013 10:09:30 +0000 (02:09 -0800)]
Docs for c_string_type and c_string_encoding
.# Please enter the commit message for your changes. Lines starting

11 years agomultiple-choice directive type
Robert Bradshaw [Tue, 26 Feb 2013 09:54:11 +0000 (01:54 -0800)]
multiple-choice directive type

11 years agosupport 'default' encoding
Robert Bradshaw [Tue, 26 Feb 2013 09:47:20 +0000 (01:47 -0800)]
support 'default' encoding

11 years agoCleanup default encoding.
Robert Bradshaw [Tue, 26 Feb 2013 09:00:50 +0000 (01:00 -0800)]
Cleanup default encoding.

11 years agoextend test case
Stefan Behnel [Sun, 24 Feb 2013 17:54:02 +0000 (18:54 +0100)]
extend test case

11 years agodescribe ways for fast exttype instantiation in docs
Stefan Behnel [Sun, 24 Feb 2013 17:38:01 +0000 (18:38 +0100)]
describe ways for fast exttype instantiation in docs

11 years agochangelog
Stefan Behnel [Sun, 24 Feb 2013 16:53:34 +0000 (17:53 +0100)]
changelog

11 years agoextend freelist support to all subtypes that have the same object struct size
Stefan Behnel [Sun, 24 Feb 2013 16:35:43 +0000 (17:35 +0100)]
extend freelist support to all subtypes that have the same object struct size

11 years agoclarify error message
Stefan Behnel [Sun, 24 Feb 2013 16:31:38 +0000 (17:31 +0100)]
clarify error message

11 years agopyximport: fix a bug crashing other processes
Pauli Virtanen [Sun, 24 Feb 2013 13:34:33 +0000 (15:34 +0200)]
pyximport: fix a bug crashing other processes

pyxbuild overwrites .so file contents, corrupting any mmapped code image
loaded. If pyximporting the same module from two different processes, on
Linux this leads to crashes with bus error.

This commit fixes the issue by unlinking the file first. On Linux et
al., this does not change the file contents of any open FDs.  On
Windows, unlinking fails, and we just switch to using a different file
name.

11 years agoinline freelist call to PyObject_Init()
Stefan Behnel [Sun, 24 Feb 2013 12:41:53 +0000 (13:41 +0100)]
inline freelist call to PyObject_Init()

11 years agowarn about ignored freelist() decorator on subtypes
Stefan Behnel [Sun, 24 Feb 2013 12:25:26 +0000 (13:25 +0100)]
warn about ignored freelist() decorator on subtypes

11 years agotest and fix tp_new() calling of cimported types
Stefan Behnel [Sun, 24 Feb 2013 11:14:09 +0000 (12:14 +0100)]
test and fix tp_new() calling of cimported types

11 years agoslightly improve test
Stefan Behnel [Sun, 24 Feb 2013 11:01:32 +0000 (12:01 +0100)]
slightly improve test

11 years agotry a potentially safer way to find out if we know the tp_new slot function of a...
Stefan Behnel [Sat, 23 Feb 2013 22:10:03 +0000 (23:10 +0100)]
try a potentially safer way to find out if we know the tp_new slot function of a type

11 years agomake sure we always have a set of directives on CClassScope instances
Stefan Behnel [Sat, 23 Feb 2013 21:51:42 +0000 (22:51 +0100)]
make sure we always have a set of directives on CClassScope instances

11 years agoprevent external base types from generating cleanup code for freelist
Stefan Behnel [Sat, 23 Feb 2013 21:51:10 +0000 (22:51 +0100)]
prevent external base types from generating cleanup code for freelist

11 years agoimplement freelist support for extension types with a @cython.freelist(N) decorator
Stefan Behnel [Sat, 23 Feb 2013 21:32:38 +0000 (22:32 +0100)]
implement freelist support for extension types with a @cython.freelist(N) decorator

11 years agominor cleanup
Stefan Behnel [Sat, 23 Feb 2013 21:19:27 +0000 (22:19 +0100)]
minor cleanup

11 years agosimplify code for directly calling module internal tp_new() slot function
Stefan Behnel [Sat, 23 Feb 2013 20:40:56 +0000 (21:40 +0100)]
simplify code for directly calling module internal tp_new() slot function

11 years agominor cleanup
Stefan Behnel [Sat, 23 Feb 2013 20:36:48 +0000 (21:36 +0100)]
minor cleanup

11 years agochangelog
Stefan Behnel [Sat, 23 Feb 2013 20:14:42 +0000 (21:14 +0100)]
changelog

11 years agooptimise tp_new() for module-internally defined types by calling the tp_new slot...
Stefan Behnel [Sat, 23 Feb 2013 17:20:53 +0000 (18:20 +0100)]
optimise tp_new() for module-internally defined types by calling the tp_new slot function directly

11 years agoimplement tp_new() optimisation with args/kwargs
Stefan Behnel [Sat, 23 Feb 2013 16:23:59 +0000 (17:23 +0100)]
implement tp_new() optimisation with args/kwargs

11 years agomake call signature of method dispatch usable for both simple and general call nodes
Stefan Behnel [Sat, 23 Feb 2013 16:20:12 +0000 (17:20 +0100)]
make call signature of method dispatch usable for both simple and general call nodes

11 years agomove tp_new() utility code into ObjectHandling.c
Stefan Behnel [Sat, 23 Feb 2013 15:47:55 +0000 (16:47 +0100)]
move tp_new() utility code into ObjectHandling.c

11 years agomove string related utility functions from Optimize.c and Optimize.py to StringTools.c
Stefan Behnel [Sat, 23 Feb 2013 15:44:16 +0000 (16:44 +0100)]
move string related utility functions from Optimize.c and Optimize.py to StringTools.c

11 years agoonly include CythonFunction utility code if it's really used, might be unused if...
Stefan Behnel [Sat, 23 Feb 2013 15:25:33 +0000 (16:25 +0100)]
only include CythonFunction utility code if it's really used, might be unused if .pxd overrides all def functions to cdef

11 years agorefactor constant string slicing and guard it against platform specific unicode strin...
Stefan Behnel [Sat, 23 Feb 2013 13:54:41 +0000 (14:54 +0100)]
refactor constant string slicing and guard it against platform specific unicode string length

11 years agoadd constant folding test for sliced unicode and bytes literals
Stefan Behnel [Sat, 23 Feb 2013 13:14:04 +0000 (14:14 +0100)]
add constant folding test for sliced unicode and bytes literals

11 years agofold sliced literal sequences (e.g. from DEFs) into constants
Stefan Behnel [Sat, 23 Feb 2013 13:09:44 +0000 (14:09 +0100)]
fold sliced literal sequences (e.g. from DEFs) into constants

11 years agofix expression node finding for bool and character values in constant folding
Stefan Behnel [Sat, 23 Feb 2013 12:02:40 +0000 (13:02 +0100)]
fix expression node finding for bool and character values in constant folding

11 years agodelete unused LongNode class
Stefan Behnel [Sat, 23 Feb 2013 10:39:14 +0000 (11:39 +0100)]
delete unused LongNode class

11 years agoadd constant folding tests for bool values
Stefan Behnel [Sat, 23 Feb 2013 10:36:26 +0000 (11:36 +0100)]
add constant folding tests for bool values

11 years agominor code cleanup
Stefan Behnel [Sat, 23 Feb 2013 10:35:53 +0000 (11:35 +0100)]
minor code cleanup

11 years agofix constant folding for repeated negation
Stefan Behnel [Sat, 23 Feb 2013 10:28:10 +0000 (11:28 +0100)]
fix constant folding for repeated negation

11 years agosupport Ellipsis as compile time constant
Stefan Behnel [Sat, 23 Feb 2013 09:55:55 +0000 (10:55 +0100)]
support Ellipsis as compile time constant

11 years agoremove duplicated code
Stefan Behnel [Sat, 23 Feb 2013 09:47:52 +0000 (10:47 +0100)]
remove duplicated code

11 years agoremove Py2.3 work-around
Stefan Behnel [Sat, 23 Feb 2013 09:47:10 +0000 (10:47 +0100)]
remove Py2.3 work-around

11 years agosimplify evaluation of --cython-only option in test runner
Stefan Behnel [Sat, 23 Feb 2013 09:20:45 +0000 (10:20 +0100)]
simplify evaluation of --cython-only option in test runner

11 years agohonour --cython-only option in compiled unit tests and pyregr tests
Stefan Behnel [Sat, 23 Feb 2013 09:14:21 +0000 (10:14 +0100)]
honour --cython-only option in compiled unit tests and pyregr tests