You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The bundle script located in tools/bundle.py fails with Python version 3.13:
$ python tools/bundle.py applications/Tools/upython/manifest.yml bundle.zip
Traceback (most recent call last):
File "/home/ofa/dev/flipper-application-catalog/tools/bundle.py", line 15, in <module>
from dataclass_wizard.dumpers import asdict
File "/home/ofa/.local/lib/python3.13/site-packages/dataclass_wizard/__init__.py", line 100, in <module>
from .bases_meta import LoadMeta, DumpMeta
File "/home/ofa/.local/lib/python3.13/site-packages/dataclass_wizard/bases_meta.py", line 10, in <module>
from .abstractions import AbstractJSONWizard
File "/home/ofa/.local/lib/python3.13/site-packages/dataclass_wizard/abstractions.py", line 14, in <module>
from .models import Extras
File "/home/ofa/.local/lib/python3.13/site-packages/dataclass_wizard/models.py", line 3, in <module>
from dataclasses import MISSING, Field, _create_fn
ImportError: cannot import name '_create_fn' from 'dataclasses' (/usr/lib64/python3.13/dataclasses.py)
I did a quick test with a clean Python 3.12 and 3.13 environment in Docker to ensure the problem is not on my side: same result with 3.13 and works as expected with 3.12.
FROM python:3.13
WORKDIR /app
COPY . .
RUN pip install -r tools/requirements.txt
CMD [ "python", "tools/bundle.py", "applications/Tools/upython/manifest.yml", "bundle.zip" ]
I'm on Fedora 41 (KDE Spin) using a standard Python 3.13 (obviously) installation and Intel i7 CPU.
The text was updated successfully, but these errors were encountered:
Hello,
I had the same problem as you but I fix this one with just running pip install dataclass-wizard. Thus I got into another problem :
File "/home/evgeni/.ufbt/current/scripts/fbt/appmanifest.py", line 205, in load_manifest
exec(manifest_file.read())
~~~~^^^^^^^^^^^^^^^^^^^^^^
File "", line 1, in
File "/home/evgeni/.ufbt/current/scripts/fbt/appmanifest.py", line 186, in App
self._validate_app_params(*args, **kw)
~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
File "/home/evgeni/.ufbt/current/scripts/fbt/appmanifest.py", line 161, in _validate_app_params
if apptype in AppBuildset.dist_app_types:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: argument of type 'method' is not iterable
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/evgeni/Downloads/flipper-application-catalog-main/tools/bundle.py", line 550, in
sys.exit(Main().main())
~~~~~~~~~~~^^
File "/home/evgeni/Downloads/flipper-application-catalog-main/tools/bundle.py", line 498, in main
return self.process(self.parser.parse_args())
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/evgeni/Downloads/flipper-application-catalog-main/tools/bundle.py", line 526, in process
bundler.bundle(
~~~~~~~~~~~~~~^
skip_lint=args.nolint,
^^^^^^^^^^^^^^^^^^^^^^
skip_build=args.nobuild,
^^^^^^^^^^^^^^^^^^^^^^^^
skip_source_code=args.nosourcecode,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/home/evgeni/Downloads/flipper-application-catalog-main/tools/bundle.py", line 78, in bundle
self._update_manifest_from_fap()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/home/evgeni/Downloads/flipper-application-catalog-main/tools/bundle.py", line 187, in _update_manifest_from_fap
app_manager.load_manifest(app_manifest_path, self._code_dir)
~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/evgeni/.ufbt/current/scripts/fbt/appmanifest.py", line 207, in load_manifest
raise FlipperManifestException(
f"Failed parsing manifest '{app_manifest_path}' : {e}"
)
fbt.appmanifest.FlipperManifestException: Failed parsing manifest '/tmp/tmptm3vyygb/code/application.fam' : argument of type 'method' is not iterable
People checked and said that the problem is not from the fam file which has this:
App(
appid="gpio_explorer_app",
name="GPIO Explorer",
apptype=FlipperAppType.EXTERNAL,
entry_point="main_gpio_explorer_app",
stack_size=4 * 1024,
fap_icon="app.png",
fap_category="GPIO",
fap_description="The most complete app to start exploring the GPIO functionalities",
)
So to solve this problem you have to use python 3.11.
The bundle script located in
tools/bundle.py
fails with Python version 3.13:I did a quick test with a clean Python 3.12 and 3.13 environment in Docker to ensure the problem is not on my side: same result with 3.13 and works as expected with 3.12.
I'm on Fedora 41 (KDE Spin) using a standard Python 3.13 (obviously) installation and Intel i7 CPU.
The text was updated successfully, but these errors were encountered: