Skip to content

Python 3.13 Compatibility Blockers #397

Open
@devin-ai-integration

Description

@devin-ai-integration

Python 3.13 Compatibility Investigation

Based on research in PR #337, there are two major blockers for Python 3.13 compatibility:

1. fastavro Package (1.8.2)

The package fails to build with Python 3.13 due to several C API changes:

  • Use of deprecated Unicode APIs:

    • Py_UNICODE type (deprecated)
    • _PyUnicode_FastCopyCharacters (should use PyUnicode_CopyCharacters)
  • Missing or changed internal C APIs:

    • _PyDict_SetItem_KnownHash undefined
    • _PyObject_NextNotImplemented undefined
    • _PyLong_AsByteArray signature change

2. requests-cache Package

This is also a blocker for Python 3.12 compatibility (see #299).

Required Steps for Python 3.13 Support

  1. Track and update fastavro once they add Python 3.13 support
  2. Resolve requests-cache compatibility (tracked in Third party requests-cache breaks Python 3.12 compatibility #299)
  3. Re-test with Python 3.13 once both dependencies are updated

Related Links

Metadata

Metadata

Assignees

No one assigned

    Labels

    dependenciesPull requests that update a dependency filepythonPull requests that update Python code

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions