arskom / spyne

A transport agnostic sync/async RPC library that focuses on exposing services with a well-defined API using popular protocols.
http://spyne.io
Other
1.13k stars 313 forks source link

Python 3.12 compatibility issue: spyne.util.six.moves not found #711

Open MattiasBilaj opened 2 months ago

MattiasBilaj commented 2 months ago

Hello Spyne maintainers,

I've encountered a compatibility issue when using Spyne with Python 3.12. The problem occurs because Python 3.12 no longer includes the six library, causing the following import to fail:


from spyne.util.six.moves.collections_abc import MutableSet

This results in a ModuleNotFoundError: No module named 'spyne.util.six.moves'.

To address this, I've submitted a pull request

from collections.abc import MutableSet

This change should maintain backwards compatibility while fixing the issue for Python 3.12 users.
I would appreciate if you could review this change and consider merging it to improve Spyne's compatibility with the latest Python version.
Thank you for your time and for maintaining this valuable library.
Best regards,
Mattias Bilaj