Skip to content

Localstore is incompatible with Python3.14 #49

@Tomorrowdawn

Description

@Tomorrowdawn

Python3.14中修改了底层执行逻辑(为了GIL),导致inspect行为不稳定,导致无法获得caller plugin.

(bot) tomorrowdawn@Tomorrowdawn:~/project/qqbot/bot$ nb orm upgrade
Using python: /home/tomorrowdawn/project/qqbot/bot/.venv/bin/python
WARNING: Legacy configuration format detected.
*** Use `nb upgrade-format` to upgrade to the new format.
01-12 22:49:00 [SUCCESS] nonebot | NoneBot is initializing...
01-12 22:49:00 [INFO] nonebot | Current Env: dev
01-12 22:49:01 [SUCCESS] nonebot | Succeeded to load plugin "message_logger" from "plugins.message_logger"
01-12 22:49:01 [SUCCESS] nonebot | Succeeded to load plugin "command_handler" from "plugins.command_handler"
01-12 22:49:01 [SUCCESS] nonebot | Succeeded to load plugin "nonebot_plugin_localstore"
Traceback (most recent call last):
  File "<string>", line 27, in <module>
    e.load()()
    ~~~~~~^^
  File "/home/tomorrowdawn/.local/share/uv/python/cpython-3.14.0-linux-x86_64-gnu/lib/python3.14/importlib/metadata/__init__.py", line 179, in load
    module = import_module(match.group('module'))
  File "/home/tomorrowdawn/.local/share/uv/python/cpython-3.14.0-linux-x86_64-gnu/lib/python3.14/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1398, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1371, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1314, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 491, in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1398, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1371, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1342, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 938, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 762, in exec_module
  File "<frozen importlib._bootstrap>", line 491, in _call_with_frames_removed
  File "/home/tomorrowdawn/project/qqbot/bot/.venv/lib/python3.14/site-packages/nonebot_plugin_orm/__init__.py", line 66, in <module>
    _data_dir = get_plugin_data_dir()
  File "/home/tomorrowdawn/project/qqbot/bot/.venv/lib/python3.14/site-packages/nonebot_plugin_localstore/__init__.py", line 74, in wrapper
    path = func(*args, **kwargs)
  File "/home/tomorrowdawn/project/qqbot/bot/.venv/lib/python3.14/site-packages/nonebot_plugin_localstore/__init__.py", line 180, in get_plugin_data_dir
    plugin = _try_get_caller_plugin()
  File "/home/tomorrowdawn/project/qqbot/bot/.venv/lib/python3.14/site-packages/nonebot_plugin_localstore/__init__.py", line 134, in _try_get_caller_plugin
    raise RuntimeError("Cannot detect caller 

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions