TypeError: 'type' object is not subscriptable
wise-ubuntu opened this issue · 2 comments
wise-ubuntu commented
Do you know how to solve this issue?
flask --app src.adapters.app.application init-db
Traceback (most recent call last):
File "/home/user/architecture/venv/bin/flask", line 8, in <module>
sys.exit(main())
File "/home/user/architecture/venv/lib/python3.8/site-packages/flask/cli.py", line 1047, in main
cli.main()
File "/home/user/architecture/venv/lib/python3.8/site-packages/click/core.py", line 1055, in main
rv = self.invoke(ctx)
File "/home/user/architecture/venv/lib/python3.8/site-packages/click/core.py", line 1651, in invoke
cmd_name, cmd, args = self.resolve_command(ctx, args)
File "/home/user/architecture/venv/lib/python3.8/site-packages/click/core.py", line 1698, in resolve_command
cmd = self.get_command(ctx, cmd_name)
File "/home/user/architecture/venv/lib/python3.8/site-packages/flask/cli.py", line 578, in get_command
app = info.load_app()
File "/home/user/architecture/venv/lib/python3.8/site-packages/flask/cli.py", line 308, in load_app
app = locate_app(import_name, name)
File "/home/user/architecture/venv/lib/python3.8/site-packages/flask/cli.py", line 218, in locate_app
__import__(module_name)
File "/home/user/architecture/hexagonal-flask-blog-tutorial/src/adapters/app/application.py", line 3, in <module>
from src.main.containers import Container
File "/home/user/architecture/hexagonal-flask-blog-tutorial/src/main/containers.py", line 4, in <module>
from src.main.user_containers import UserContainer
File "/home/user/architecture/hexagonal-flask-blog-tutorial/src/main/user_containers.py", line 2, in <module>
from src.adapters.db.user_repository import UserRepository
File "/home/user/architecture/hexagonal-flask-blog-tutorial/src/adapters/db/user_repository.py", line 2, in <module>
from src.domain.ports.repository import RepositoryInterface
File "/home/user/architecture/hexagonal-flask-blog-tutorial/src/domain/ports/repository.py", line 6, in <module>
class RepositoryInterface(ABC):
File "/home/user/architecture/hexagonal-flask-blog-tutorial/src/domain/ports/repository.py", line 13, in RepositoryInterface
def execute(self, query: str, data: tuple[Any, ...], commit: bool = False) -> Any:
TypeError: 'type' object is not subscriptable
ShahriyarR commented
This is due to Python version, you are using 3.8 but the supported version for this project is 3.9.
There are 2 options here:
- If possible use Python >= 3.9
- Or add
from __future__ import annotations
at top of the imports where you got this fail.
wise-ubuntu commented
Thanks!