platform/upstream/python-cython.git
11 years agospeed up unpacking of small integers in Py3
Stefan Behnel [Sat, 9 Mar 2013 15:26:35 +0000 (16:26 +0100)]
speed up unpacking of small integers in Py3

11 years agosimplify some Py3 precompiler checks
Stefan Behnel [Sat, 9 Mar 2013 13:24:31 +0000 (14:24 +0100)]
simplify some Py3 precompiler checks

11 years agostreamline __Pyx_PyInt_AsSize_t() a bit
Stefan Behnel [Sat, 9 Mar 2013 13:18:55 +0000 (14:18 +0100)]
streamline __Pyx_PyInt_AsSize_t() a bit

11 years agoallow alternative spellings for encoding names in c_string_encoding directive, fix...
Stefan Behnel [Sat, 9 Mar 2013 10:48:33 +0000 (11:48 +0100)]
allow alternative spellings for encoding names in c_string_encoding directive, fix c_string_type=unicode

11 years agoreduce default decoding overhead in Py3
Stefan Behnel [Sat, 9 Mar 2013 10:08:36 +0000 (11:08 +0100)]
reduce default decoding overhead in Py3

11 years agosimplify Py3 checks in TypeConversion.c
Stefan Behnel [Sat, 9 Mar 2013 09:28:27 +0000 (10:28 +0100)]
simplify Py3 checks in TypeConversion.c

11 years agoraise NameError instead of KeyError when del-ing a non-existing name inside of a...
Stefan Behnel [Sat, 9 Mar 2013 08:43:00 +0000 (09:43 +0100)]
raise NameError instead of KeyError when del-ing a non-existing name inside of a Python class body

11 years agouse inlined setattr also for delattr
Stefan Behnel [Sat, 9 Mar 2013 08:03:11 +0000 (09:03 +0100)]
use inlined setattr also for delattr

11 years agospeed up object attribute setting a little
Stefan Behnel [Fri, 8 Mar 2013 21:11:43 +0000 (22:11 +0100)]
speed up object attribute setting a little

11 years agoclean up Python name assignment code, special case module globals to change module...
Stefan Behnel [Fri, 8 Mar 2013 21:02:02 +0000 (22:02 +0100)]
clean up Python name assignment code, special case module globals to change module dict directly

11 years agofix special case in for-from loop with object loop variable by adding yet another...
Stefan Behnel [Fri, 8 Mar 2013 20:49:01 +0000 (21:49 +0100)]
fix special case in for-from loop with object loop variable by adding yet another hack to the existing hack

11 years agoremove comment
Stefan Behnel [Fri, 8 Mar 2013 20:16:00 +0000 (21:16 +0100)]
remove comment

11 years agoremove unused utility code annotation
Stefan Behnel [Fri, 8 Mar 2013 19:46:20 +0000 (20:46 +0100)]
remove unused utility code annotation

11 years agoadd another failing test for iterable lookup in generators
Stefan Behnel [Fri, 8 Mar 2013 14:25:10 +0000 (15:25 +0100)]
add another failing test for iterable lookup in generators

11 years agochangelog
Stefan Behnel [Fri, 8 Mar 2013 10:35:10 +0000 (11:35 +0100)]
changelog

11 years agocdef some imported names in the parser
Stefan Behnel [Fri, 8 Mar 2013 08:38:10 +0000 (09:38 +0100)]
cdef some imported names in the parser

11 years agouse new PyDict_SetDefault() C-API function in Py3.4
Stefan Behnel [Fri, 8 Mar 2013 07:07:36 +0000 (08:07 +0100)]
use new PyDict_SetDefault() C-API function in Py3.4

11 years agouse freelists for closure classes
Stefan Behnel [Thu, 7 Mar 2013 22:20:53 +0000 (23:20 +0100)]
use freelists for closure classes

11 years agouse direct call to tp_new() slot function in closure creation
Stefan Behnel [Thu, 7 Mar 2013 21:40:32 +0000 (22:40 +0100)]
use direct call to tp_new() slot function in closure creation

11 years agospeed up lookup of Python object attributes a little
Stefan Behnel [Thu, 7 Mar 2013 21:00:01 +0000 (22:00 +0100)]
speed up lookup of Python object attributes a little

11 years agorevert last two commits - does not work for negative indices
Stefan Behnel [Thu, 7 Mar 2013 20:08:00 +0000 (21:08 +0100)]
revert last two commits - does not work for negative indices

11 years agouse more direct C-API call for slice assignments on lists
Stefan Behnel [Thu, 7 Mar 2013 19:56:56 +0000 (20:56 +0100)]
use more direct C-API call for slice assignments on lists

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