faust-streaming / mode

Python AsyncIO Services
https://faust-streaming.github.io/mode/
Other
43 stars 16 forks source link

Broken python3.8 with version 0.4.0 #59

Closed Tucug closed 3 months ago

Tucug commented 3 months ago

Checklist

Steps to reproduce

When generating a list with pip compile, here are some relevant packages info:

dataclasses-avroschema==0.42.0 faust-streaming==0.10.24 mode-streaming==0.4.0

Expected behavior

No error. No error was observed when freezing the package mode-streaming to 0.3.5

Actual behavior

ImportError: cannot import name 'OrderedDict' from 'mode.utils.compat' (C:...\mode\utils\compat.py)

Full traceback

...
[2024-04-02T20:13:38.044Z]   File "C:\...\dataclasses_avroschema\schema_generator.py", line 209, in parse_obj
[2024-04-02T20:13:38.044Z]     return from_dict(data_class=cls, data=data, config=Config(**cls.config()))
[2024-04-02T20:13:38.044Z]   File "C:\...\dataclasses_avroschema\schema_generator.py", line 231, in config
[2024-04-02T20:13:38.044Z]     cls.generate_schema()
[2024-04-02T20:13:38.044Z]   File "C:\...\dataclasses_avroschema\schema_generator.py", line 53, in generate_schema
[2024-04-02T20:13:38.044Z]     cls.schema_def = cls._generate_avro_schema()
[2024-04-02T20:13:38.044Z]   File "C:\...\dataclasses_avroschema\schema_generator.py", line 64, in _generate_avro_schema
[2024-04-02T20:13:38.044Z]     return AvroSchemaDefinition("record", cls.klass, metadata=metadata, parent=cls.parent or cls)
[2024-04-02T20:13:38.044Z]   File "<string>", line 9, in __init__
[2024-04-02T20:13:38.044Z]   File "C:\...\dataclasses_avroschema\schema_definition.py", line 67, in __post_init__
[2024-04-02T20:13:38.044Z]     self.fields = self.parse_dataclasses_fields()
[2024-04-02T20:13:38.044Z]   File "C:\...\dataclasses_avroschema\schema_definition.py", line 71, in parse_dataclasses_fields
[2024-04-02T20:13:38.044Z]     if utils.is_faust_model(self.klass):
[2024-04-02T20:13:38.044Z]   File "C:\...\dataclasses_avroschema\utils.py", line 32, in is_faust_model
[2024-04-02T20:13:38.044Z]     return issubclass(klass, faust.Record)
[2024-04-02T20:13:38.044Z]   File "C:\...\faust\__init__.py", line 272, in __getattr__
[2024-04-02T20:13:38.044Z]     module = __import__(object_origins[name], None, None, [name])
[2024-04-02T20:13:38.044Z]   File "C:\...\faust\models\__init__.py", line 5, in <module>
[2024-04-02T20:13:38.044Z]     from .record import Record
[2024-04-02T20:13:38.044Z]   File "C:\...\faust\models\record.py", line 21, in <module>
[2024-04-02T20:13:38.044Z]     from mode.utils.compat import OrderedDict
[2024-04-02T20:13:38.044Z] ImportError: cannot import name 'OrderedDict' from 'mode.utils.compat' (C:\jenkins\master\Tools\Python38\site-packages\mode\utils\compat.py)

Versions

wbarnha commented 3 months ago

Sorry about that. Try upgrading to faust-streaming==0.11.0 or downgrading mode-streaming to 0.3.5. I deliberately yanked mode-streaming==0.3.6 for this reason.