summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Disable "test_subclassinit" test only in PyPy2, not in PyPy3.gh2781_pep487_init_subclassStefan Behnel2020-04-211-0/+4
|
* Give PEP-487 support a feature flag since it doesn't seem to work in PyPy2 ↵Stefan Behnel2020-04-212-3/+14
| | | | (7.1.1, as available on travis).
* Another PyPy2 fix.Stefan Behnel2020-04-211-1/+5
|
* Safety fix in Py2 fallback code.Stefan Behnel2020-04-211-1/+1
|
* Always make a copy of the type dict before iterating over it since iteration ↵Stefan Behnel2020-04-211-1/+8
| | | | can alter it.
* Streamline PEP-487 implementation to avoid slowdowns if it's not used.Stefan Behnel2020-04-211-2/+68
| | | | Also provide a PyPy fallback for the missing "PySuper_Type" in PyPy2.
* Move a longer utility function away from the top of the C file.Stefan Behnel2020-04-211-5/+13
|
* Implement PEP-487: simpler customisation of class creation.Stefan Behnel2020-04-213-7/+418
| | | | Closes GH-2781.
* Revert "Build Cython in parallel on appveyor if distutils support it."Stefan Behnel2020-04-201-7/+1
| | | | | | This reverts commit 52635828ba8eaae0ddf8db43b47822997de91ae1. multiprocessing requires some additional setup on Windows, which I don't currently want to implement in setup.py.
* Merge branch '0.29.x'Stefan Behnel2020-04-201-0/+3
|\
| * Update changelog.Stefan Behnel2020-04-201-0/+3
| |
| * Avoid integer overflow when decoding bytes/charptr (GH-3535)Sam Sneddon2020-04-203-4/+38
| | | | | | Fixes GH-3534.
* | Avoid integer overflow when decoding bytes/charptr (GH-3535)Sam Sneddon2020-04-203-4/+38
| | | | | | Fixes GH-3534.
* | Disable the PEP-487 test in PyPy because it fails in travis (PyPy 7.1.1).Stefan Behnel2020-04-201-0/+1
| |
* | Build Cython in parallel on travis.Stefan Behnel2020-04-201-1/+1
| |
* | Suppress non-error output of the C compiler in test runner unless there is a ↵Stefan Behnel2020-04-201-1/+4
| | | | | | | | test failure or at least some error output as well.
* | Build Cython in parallel on appveyor if distutils support it.Stefan Behnel2020-04-201-1/+7
| |
* | Do not create a new unicode string object when taking a fully slice.Stefan Behnel2020-04-201-0/+2
| |
* | Merge branch '0.29.x'Stefan Behnel2020-04-201-0/+3
|\ \ | |/
| * Update changelog.Stefan Behnel2020-04-201-0/+3
| |
| * Avoid integer overflow when computing unicode substring (GH-3532)Sam Sneddon2020-04-202-9/+30
| | | | | | Fixes #3531.
* | Avoid useless C-API call to get a constant.Stefan Behnel2020-04-201-1/+2
| |
* | Avoid integer overflow when computing unicode substring (GH-3532)Sam Sneddon2020-04-202-9/+30
| | | | | | Fixes #3531.
* | Minor code cleanup.Stefan Behnel2020-04-201-4/+2
| |
* | Fix C99-ism to make code C89 again.Stefan Behnel2020-04-201-1/+2
| |
* | Minor code cleanup.Stefan Behnel2020-04-201-7/+10
| |
* | Update GetItem to support __class_getitem__ for type objects (GH-3518)msg5552020-04-203-15/+181
| | | | | | Closes #2753.
* | Turn plain classes without bases into new-style classes with ↵Stefan Behnel2020-04-195-1/+23
| | | | | | | | language_level=3 (GH-3530)
* | Prepare release of 3.0a2.Stefan Behnel2020-04-191-1/+1
| |
* | Update changelog.Stefan Behnel2020-04-181-5/+11
| |
* | Increase warning level for legacy "dict in annotations" typing.Stefan Behnel2020-04-181-2/+2
| |
* | Make "cimport numpy" without import_array() safer by automatically calling ↵da-woods2020-04-1812-8/+200
| | | | | | | | it (GH-3524)
* | Make C++ typeid accept specializations of fused types (#3205)Stefan Behnel2020-04-183-1/+72
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Potential fix for GH issue #3203 Gets the specialized type if possible from NameNode.analyse_as_type This does introduce a potential new bug: ``` cimport cython just_float = cython.fused_type(float) cdef OK1(just_float x): return just_float in floating cdef fail1(just_float x, floating y): return just_float in floating cdef fail2(floating x): return floating in floating def show(): """ >>> show() True True True True """ print(OK1(1.0)) print(fail1(1.0, 2.0)) print(fail1[float, double](1.0, 2.0)) print(fail2[float](1.0)) ``` fail1 and fail2 work before this patch but fail with it. It isn't clear to me if this should actually be considered a bug. It works in both versions with `cython.floating`, which possibly suggests analyse_as_type in AttributeNode should also be changed * Bring attribute.fused types in line * Removed try-catch * Fix and test "type in fused_type" special-case * Added "analyse_as_specialized_type" * Fixed cpp_operators (handle type is None)
| * | Fixed cpp_operators (handle type is None)da-woods2020-04-181-2/+2
| | |
| * | Added "analyse_as_specialized_type"da-woods2020-04-182-20/+18
| | |
| * | Fix and test "type in fused_type" special-caseda-woods2020-04-182-0/+36
| | |
| * | Removed try-catchda-woods2019-10-261-7/+5
| | |
| * | Bring attribute.fused types in lineda-woods2019-10-242-4/+21
| | |
| * | Potential fix for GH issue #3203da-woods2019-10-242-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Gets the specialized type if possible from NameNode.analyse_as_type This does introduce a potential new bug: ``` cimport cython just_float = cython.fused_type(float) cdef OK1(just_float x): return just_float in floating cdef fail1(just_float x, floating y): return just_float in floating cdef fail2(floating x): return floating in floating def show(): """ >>> show() True True True True """ print(OK1(1.0)) print(fail1(1.0, 2.0)) print(fail1[float, double](1.0, 2.0)) print(fail2[float](1.0)) ``` fail1 and fail2 work before this patch but fail with it. It isn't clear to me if this should actually be considered a bug. It works in both versions with `cython.floating`, which possibly suggests analyse_as_type in AttributeNode should also be changed
* | | Make CodeWriter inherit from ExpressionWriter in order to support all kinds ↵Stefan Behnel2020-04-183-88/+63
| | | | | | | | | | | | of expressions without duplicating code. (GH-3528)
* | | Start writing up some help for users who want to migrate from Cython 0.29.x ↵Stefan Behnel2020-04-182-0/+121
| | | | | | | | | | | | to Cython 3.0.
* | | Add some missing branch hints.Stefan Behnel2020-04-181-6/+6
| | |
* | | Merge branch '0.29.x'Stefan Behnel2020-04-171-4/+5
|\ \ \ | | |/ | |/|
| * | Update changelog.Stefan Behnel2020-04-171-0/+4
| | |
* | | Merge branch '0.29.x'Stefan Behnel2020-04-171-0/+1
|\ \ \ | |/ /
| * | Clear "self.index_temps" after cleanup to avoid keeping dangling temporary ↵Stefan Behnel2020-04-171-0/+1
| | | | | | | | | | | | state.
| * | Cleanup more generator temps (GH-3522)Stefan Behnel2020-04-171-11/+12
| | | | | | | | | | | | | | | * Fixed indexing temps for non-python objects. * Moved cleanup into release_temps since the temps survived into the result_code.
* | | Add comment and make sure the type's (empty) list of index temps cannot be ↵Stefan Behnel2020-04-171-1/+2
| | | | | | | | | | | | changed by accident.
* | | Simplify some redundant code by calling the obvious helper function instead.Stefan Behnel2020-04-171-6/+4
| | |
* | | Cleanup more generator temps (GH-3522)da-woods2020-04-171-11/+12
| | | | | | | | | | | | | | | | | | * Fixed indexing temps for non-python objects. * Release another temp in PyMethodCallNode. Was causing warnings in generators_py. * Moved cleanup into release_temps since the temps survived into the result_code.