1. 14 Dec, 2021 3 commits
  2. 06 Dec, 2021 12 commits
  3. 05 Dec, 2021 13 commits
  4. 30 Nov, 2021 1 commit
  5. 29 Nov, 2021 1 commit
  6. 26 Nov, 2021 1 commit
  7. 25 Nov, 2021 3 commits
  8. 24 Nov, 2021 2 commits
    • da-woods's avatar
      Clean up memoryview reference counting on error (GH-4476) · 002e7c6f
      da-woods authored
      Fixes https://github.com/cython/cython/issues/4296
      
      If there was an error in preparing the function arguments after a
      memoryview had already been created, then the memoryview was not
      cleaned up correctly.
      
      (This leaves it in the slightly odd position where memoryviews
      are cleaned up in the wrapper function on failure, but in the
      main function on success. I kind of think it'd be better to clean
      them up in the wrapper function in both cases, but I'm reluctant
      to mess with a system that largely works.)
      002e7c6f
    • da-woods's avatar
      Disable USE_UNICODE_WRITER for Limited API and Py3.11 (GH-4480) · 31fc0490
      da-woods authored
      For the Limited API, I'm not sure why USE_UNICODE_WRITER was ever
      the default - PyObject_Format() is part of the Limited API so
      should clearly be preferred.
      
      Python 3.11 hid _PyLong_FormatAdvancedWriter and
      _PyFloat_FormatAdvancedWriter. I've disabled USE_UNICODE_WRITER
      for the moment but I suspect we want to find replacements in the longer term.
      31fc0490
  9. 23 Nov, 2021 3 commits
  10. 18 Nov, 2021 1 commit
    • da-woods's avatar
      Make self argument for binops typed (GH-4436) · 1f0f5f36
      da-woods authored
      The type for the self argument for binops depends on the compile
      directives. Therefore it needs a set of type slots that depends
      on the compiler directives.
      
      I've therefore got rid of the big static list of typeslots in
      TypeSlots.py in favour of a class that defines them all (and
      can be initialized with suitable compiler directives as needed).
      This involves moving a static dictionary and list out of the
      global scope too, so that they too can be part of the class.
      The passing of the dictionary and list to all the constructors
      is a bit awkward
      
      Fixes https://github.com/cython/cython/issues/4434
      1f0f5f36