user@nuc:~/src/flowsint/flowsint-api$ poetry run uvicorn app.main:app --host 0.0.0.0 --port 5001 --reload
INFO: Will watch for changes in these directories: ['/home/user/src/flowsint/flowsint-api']
INFO: Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)
INFO: Started reloader process [18581] using StatReload
Process SpawnProcess-1:
Traceback (most recent call last):
File "/usr/lib/python3.11/multiprocessing/process.py", line 314, in _bootstrap
self.run()
File "/usr/lib/python3.11/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/_subprocess.py", line 80, in subprocess_started
target(sockets=sockets)
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/server.py", line 67, in run
return asyncio_run(self.serve(sockets=sockets), loop_factory=self.config.get_loop_factory())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/_compat.py", line 30, in asyncio_run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 120, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 650, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/server.py", line 71, in serve
await self._serve(sockets)
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/server.py", line 78, in _serve
config.load()
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/config.py", line 439, in load
self.loaded_app = import_from_string(self.app)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/importer.py", line 22, in import_from_string
raise exc from None
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/importer.py", line 19, in import_from_string
module= importlib.import_module(module_str)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/user/src/flowsint/flowsint-api/app/main.py", line 2, in <module>
from flowsint_core.core.graph_db import Neo4jConnection
ModuleNotFoundError: No module named 'flowsint_core'
Originally created by @nerblock on GitHub (Oct 26, 2025).
Original GitHub issue: https://github.com/reconurge/flowsint/issues/17
Trying to start the api but no cake:
```bash
user@nuc:~/src/flowsint/flowsint-api$ poetry run uvicorn app.main:app --host 0.0.0.0 --port 5001 --reload
INFO: Will watch for changes in these directories: ['/home/user/src/flowsint/flowsint-api']
INFO: Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)
INFO: Started reloader process [18581] using StatReload
Process SpawnProcess-1:
Traceback (most recent call last):
File "/usr/lib/python3.11/multiprocessing/process.py", line 314, in _bootstrap
self.run()
File "/usr/lib/python3.11/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/_subprocess.py", line 80, in subprocess_started
target(sockets=sockets)
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/server.py", line 67, in run
return asyncio_run(self.serve(sockets=sockets), loop_factory=self.config.get_loop_factory())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/_compat.py", line 30, in asyncio_run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 120, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 650, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/server.py", line 71, in serve
await self._serve(sockets)
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/server.py", line 78, in _serve
config.load()
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/config.py", line 439, in load
self.loaded_app = import_from_string(self.app)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/importer.py", line 22, in import_from_string
raise exc from None
File "/home/user/.local/lib/python3.11/site-packages/uvicorn/importer.py", line 19, in import_from_string
module = importlib.import_module(module_str)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/user/src/flowsint/flowsint-api/app/main.py", line 2, in <module>
from flowsint_core.core.graph_db import Neo4jConnection
ModuleNotFoundError: No module named 'flowsint_core'
```
Could you show the output of poetry run python -m pip list | grep flowsint ?
Otherwise, make sure you run poetry install in all py packages :
cd flowsint
poetry install
cd ./flowsint-core && poetry install
cd ./flowsint-transforms && poetry install
cd ./flowsint-api && poetry install && poetry run alembic upgrade head
<!-- gh-comment-id:3448226514 -->
@dextmorgn commented on GitHub (Oct 26, 2025):
Hey nerblock,
Could you show the output of `poetry run python -m pip list | grep flowsint` ?
Otherwise, make sure you run `poetry install` in all py packages :
```bash
cd flowsint
poetry install
cd ./flowsint-core && poetry install
cd ./flowsint-transforms && poetry install
cd ./flowsint-api && poetry install && poetry run alembic upgrade head
```
Could you show the output of poetry run python -m pip list | grep flowsint ?
no output..
Otherwise, make sure you run poetry install in all py packages :
done
poetry run alembic upgrade head
this gives me an error:
user@nuc:~/src/flowsint/flowsint-api$ poetry run alembic upgrade head
Traceback (most recent call last):
File "/home/user/.local/bin/alembic", line 7, in <module>
sys.exit(main())
^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/alembic/config.py", line 1022, in main
CommandLine(prog=prog).main(argv=argv)
File "/home/user/.local/lib/python3.11/site-packages/alembic/config.py", line 1012, in main
self.run_cmd(cfg, options)
File "/home/user/.local/lib/python3.11/site-packages/alembic/config.py", line 946, in run_cmd
fn(
File "/home/user/.local/lib/python3.11/site-packages/alembic/command.py", line 483, in upgrade
script.run_env()
File "/home/user/.local/lib/python3.11/site-packages/alembic/script/base.py", line 545, in run_env
util.load_python_file(self.dir, "env.py")
File "/home/user/.local/lib/python3.11/site-packages/alembic/util/pyfiles.py", line 116, in load_python_file
module= load_module_py(module_id, path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/alembic/util/pyfiles.py", line 136, in load_module_py
spec.loader.exec_module(module)# type: ignore
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/user/src/flowsint/flowsint-api/alembic/env.py", line 16, in <module>
from flowsint_core.core.models import * # noqa
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ModuleNotFoundError: No module named 'flowsint_core'
<!-- gh-comment-id:3448842476 -->
@nerblock commented on GitHub (Oct 26, 2025):
> Could you show the output of `poetry run python -m pip list | grep flowsint` ?
no output..
> Otherwise, make sure you run `poetry install` in all py packages :
done
> poetry run alembic upgrade head
this gives me an error:
```bash
user@nuc:~/src/flowsint/flowsint-api$ poetry run alembic upgrade head
Traceback (most recent call last):
File "/home/user/.local/bin/alembic", line 7, in <module>
sys.exit(main())
^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/alembic/config.py", line 1022, in main
CommandLine(prog=prog).main(argv=argv)
File "/home/user/.local/lib/python3.11/site-packages/alembic/config.py", line 1012, in main
self.run_cmd(cfg, options)
File "/home/user/.local/lib/python3.11/site-packages/alembic/config.py", line 946, in run_cmd
fn(
File "/home/user/.local/lib/python3.11/site-packages/alembic/command.py", line 483, in upgrade
script.run_env()
File "/home/user/.local/lib/python3.11/site-packages/alembic/script/base.py", line 545, in run_env
util.load_python_file(self.dir, "env.py")
File "/home/user/.local/lib/python3.11/site-packages/alembic/util/pyfiles.py", line 116, in load_python_file
module = load_module_py(module_id, path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.local/lib/python3.11/site-packages/alembic/util/pyfiles.py", line 136, in load_module_py
spec.loader.exec_module(module) # type: ignore
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/user/src/flowsint/flowsint-api/alembic/env.py", line 16, in <module>
from flowsint_core.core.models import * # noqa
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ModuleNotFoundError: No module named 'flowsint_core'
```
if poetry run python -m pip list | grep flowsint returns nothing, I'm suspecting a mismatch in your python environment. Maybe you're using your local python binary instead of the virtual env one.
If you want to debug more, try seeing if those don't reference your /home/user/.local/lib/python3.11 instead of the .venv. Try running :
poetry env info
#> Virtualenv#> Python: 3.12.9#> Implementation: CPython#> Path: /home/user/src/flowsint/.venv#> Executable: /home/user/src/flowsint/.venv/bin/python #> correct, should reference python in the .venv
And the one returned by poetry run which python should be the same.
If you don't feel like debugging, try removing the .venv folder with rm -rf .venv and relauch the install with make dev command.
Let me know !
<!-- gh-comment-id:3448900261 -->
@dextmorgn commented on GitHub (Oct 26, 2025):
if `poetry run python -m pip list | grep flowsint` returns nothing, I'm suspecting a mismatch in your python environment. Maybe you're using your local python binary instead of the virtual env one.
If you want to debug more, try seeing if those don't reference your `/home/user/.local/lib/python3.11` instead of the `.venv`. Try running :
```bash
poetry env info
#> Virtualenv
#> Python: 3.12.9
#> Implementation: CPython
#> Path: /home/user/src/flowsint/.venv
#> Executable: /home/user/src/flowsint/.venv/bin/python #> correct, should reference python in the .venv
```
And the one returned by `poetry run which python` should be the same.
If you don't feel like debugging, try removing the `.venv` folder with `rm -rf .venv` and relauch the install with `make dev` command.
Let me know !
user@nuc:~/src/flowsint$ poetry env info
Virtualenv
Python: 3.11.0
Implementation: CPython
Path: /home/user/src/flowsint/.venv
Executable: /home/user/src/flowsint/.venv/bin/python
Valid: True
Base
Platform: linux
OS: posix
Python: 3.11.0
Path: /usr
Executable: /usr/bin/python3.11
user@nuc:~/src/flowsint$ poetry run which python
/home/user/src/flowsint/.venv/bin/python
Will try to remove .venv and report back.
<!-- gh-comment-id:3448960801 -->
@nerblock commented on GitHub (Oct 26, 2025):
This is what I get:
```bash
user@nuc:~/src/flowsint$ poetry env info
Virtualenv
Python: 3.11.0
Implementation: CPython
Path: /home/user/src/flowsint/.venv
Executable: /home/user/src/flowsint/.venv/bin/python
Valid: True
Base
Platform: linux
OS: posix
Python: 3.11.0
Path: /usr
Executable: /usr/bin/python3.11
```
```bash
user@nuc:~/src/flowsint$ poetry run which python
/home/user/src/flowsint/.venv/bin/python
```
Will try to remove .venv and report back.
Ok so I removed .venv and I get this error now which is weird because it ran successfully with python 3.11 before:
user@nuc:~/src/flowsint$ make dev
make check-env
make[1]: Entering directory '/home/user/src/flowsint'
🔎 Checking .env files...
✅ Using existing .env in .
✅ Using existing .env in flowsint-api
✅ Using existing .env in flowsint-core
✅ Using existing .env in flowsint-app
make[1]: Leaving directory '/home/user/src/flowsint'
make install
make[1]: Entering directory '/home/user/src/flowsint'
🚀 Installing Flowsint project modules...
poetry config virtualenvs.in-project true --local
poetry env use python3.12
Could not find the python executable python3.12
make[1]: *** [Makefile:35: install] Error 1
make[1]: Leaving directory '/home/user/src/flowsint'
make: *** [Makefile:9: dev] Error 2
<!-- gh-comment-id:3448962675 -->
@nerblock commented on GitHub (Oct 26, 2025):
Ok so I removed .venv and I get this error now which is weird because it ran successfully with python 3.11 before:
```bash
user@nuc:~/src/flowsint$ make dev
make check-env
make[1]: Entering directory '/home/user/src/flowsint'
🔎 Checking .env files...
✅ Using existing .env in .
✅ Using existing .env in flowsint-api
✅ Using existing .env in flowsint-core
✅ Using existing .env in flowsint-app
make[1]: Leaving directory '/home/user/src/flowsint'
make install
make[1]: Entering directory '/home/user/src/flowsint'
🚀 Installing Flowsint project modules...
poetry config virtualenvs.in-project true --local
poetry env use python3.12
Could not find the python executable python3.12
make[1]: *** [Makefile:35: install] Error 1
make[1]: Leaving directory '/home/user/src/flowsint'
make: *** [Makefile:9: dev] Error 2
```
Great, can you comment line #41 in the Makefile and run rm -rf .venv && make dev again ?
Basically remove the poetry env use python3.12 from the install.
This was forcing the usage of a particular python version but cannot work if not installed on the host machine.
Let me know if this works, so that I can update the Makefile to make it less restrictive.
<!-- gh-comment-id:3448973244 -->
@dextmorgn commented on GitHub (Oct 26, 2025):
Great, can you comment line #41 in the `Makefile` and run `rm -rf .venv && make dev` again ?
Basically remove the `poetry env use python3.12` from the install.
This was forcing the usage of a particular python version but cannot work if not installed on the host machine.
Let me know if this works, so that I can update the Makefile to make it less restrictive.
Ok, there is some progress... I removed the 3.12 line and ran apt install build-essential cmake pkg-config because of build errors, and now its missing cairo:
user@nuc:~/src/flowsint$ make dev
make check-env
make[1]: Entering directory '/home/user/src/flowsint'
🔎 Checking .env files...
✅ Using existing .env in .
✅ Using existing .env in flowsint-api
✅ Using existing .env in flowsint-core
✅ Using existing .env in flowsint-app
make[1]: Leaving directory '/home/user/src/flowsint'
make install
make[1]: Entering directory '/home/user/src/flowsint'
🚀 Installing Flowsint project modules...
poetry config virtualenvs.in-project true --local
#poetry env use python3.12
docker compose up -d postgres redis neo4j
[+] Running 3/3
✔ Container flowsint-postgres Running 0.0s
✔ Container redis-cache Running 0.0s
✔ Container flowsint-neo4j Running 0.0s
poetry install
Creating virtualenv flowsint in /home/user/src/flowsint/.venv
Installing dependencies from lock file
Package operations: 198 installs, 0 updates, 0 removals
- Installing pycparser (2.23)
- Installing asn1crypto (1.5.1)
- Installing certifi (2025.10.5)
- Installing cffi (2.0.0)
- Installing charset-normalizer (3.4.4)
- Installing idna (3.11)
- Installing mdurl (0.1.2)
- Installing typing-extensions (4.15.0)
- Installing urllib3 (2.5.0)
- Installing webencodings (0.5.1)
- Installing annotated-types (0.7.0)
- Installing asttokens (3.0.0)
- Installing catalogue (2.0.10)
- Installing cryptography (45.0.7)
- Installing executing (2.2.1)
- Installing freetype-py (2.5.1)
- Installing frozenlist (1.8.0)
- Installing markdown-it-py (4.0.0)
- Installing multidict (6.7.0)
- Installing oscrypto (1.3.0)
- Installing parso (0.8.5)
- Installing pillow (12.0.0)
- Installing propcache (0.4.1)
- Installing ptyprocess (0.7.0)
- Installing pure-eval (0.2.3)
- Installing pycairo (1.28.0): Failed
PEP517 build of a dependency failed
Backend subprocess exited when trying to invoke build_wheel
| Command '['/tmp/tmphu6w8uwg/.venv/bin/python', '/home/user/.local/share/pypoetry/venv/lib/python3.11/site-packages/pyproject_hooks/_in_process/_in_process.py', 'build_wheel', '/tmp/tmptxkf4lsa']' returned non-zero exit status 1.
|| + meson setup /tmp/tmpa3xeff5g/pycairo-1.28.0 /tmp/tmpa3xeff5g/pycairo-1.28.0/.mesonpy-tlu2qq6m -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md -Dwheel=true -Dtests=false --native-file=/tmp/tmpa3xeff5g/pycairo-1.28.0/.mesonpy-tlu2qq6m/meson-python-native-file.ini
| The Meson build system
| Version: 1.9.1
| Source dir: /tmp/tmpa3xeff5g/pycairo-1.28.0
| Build dir: /tmp/tmpa3xeff5g/pycairo-1.28.0/.mesonpy-tlu2qq6m
| Build type: native build
| Project name: pycairo
| Project version: 1.28.0
| C compiler for the host machine: cc (gcc 11.4.0 "cc (Ubuntu 11.4.0-1ubuntu1~22.04.2) 11.4.0")| C linker for the host machine: cc ld.bfd 2.38
| Host machine cpu family: x86_64
| Host machine cpu: x86_64
| Program python3 found: YES (/tmp/tmphu6w8uwg/.venv/bin/python)| Compiler for C supports arguments -Wall: YES
| Compiler for C supports arguments -Warray-bounds: YES
| Compiler for C supports arguments -Wcast-align: YES
| Compiler for C supports arguments -Wconversion: YES
| Compiler for C supports arguments -Wextra: YES
| Compiler for C supports arguments -Wformat=2: YES
| Compiler for C supports arguments -Wformat-nonliteral: YES
| Compiler for C supports arguments -Wformat-security: YES
| Compiler for C supports arguments -Wimplicit-function-declaration: YES
| Compiler for C supports arguments -Winit-self: YES
| Compiler for C supports arguments -Winline: YES
| Compiler for C supports arguments -Wmissing-format-attribute: YES
| Compiler for C supports arguments -Wmissing-noreturn: YES
| Compiler for C supports arguments -Wnested-externs: YES
| Compiler for C supports arguments -Wold-style-definition: YES
| Compiler for C supports arguments -Wpacked: YES
| Compiler for C supports arguments -Wpointer-arith: YES
| Compiler for C supports arguments -Wreturn-type: YES
| Compiler for C supports arguments -Wshadow: YES
| Compiler for C supports arguments -Wsign-compare: YES
| Compiler for C supports arguments -Wstrict-aliasing: YES
| Compiler for C supports arguments -Wundef: YES
| Compiler for C supports arguments -Wunused-but-set-variable: YES
| Compiler for C supports arguments -Wswitch-default: YES
| Compiler for C supports arguments -Wno-missing-field-initializers: YES
| Compiler for C supports arguments -Wno-unused-parameter: YES
| Compiler for C supports arguments -fno-strict-aliasing: YES
| Compiler for C supports arguments -fvisibility=hidden: YES
| Found pkg-config: YES (/usr/bin/pkg-config) 0.29.2
| Found CMake: /usr/bin/cmake (3.22.1)| Run-time dependency cairo found: NO (tried pkgconfig and cmake)|| ../cairo/meson.build:31:12: ERROR: Dependency "cairo" not found, tried pkgconfig and cmake
|| A full log can be found at /tmp/tmpa3xeff5g/pycairo-1.28.0/.mesonpy-tlu2qq6m/meson-logs/meson-log.txt
Note: This error originates from the build backend, and is likely not a problem with poetry but one of the following issues with pycairo (1.28.0)
- not supporting PEP 517 builds
- not specifying PEP 517 build requirements correctly
- the build requirements are incompatible with your operating system or Python version
- the build requirements are missing system dependencies (eg: compilers, libraries, headers).
You can verify this by running pip wheel --no-cache-dir --use-pep517 "pycairo (==1.28.0)".
- Installing pygments (2.19.2)
- Installing pydantic-core (2.41.4)
- Installing requests (2.32.5)
- Installing tinycss2 (1.4.0)
- Installing traitlets (5.14.3)
- Installing typing-inspection (0.4.2)
- Installing uritools (5.0.0)
- Installing wcwidth (0.2.14)
make[1]: *** [Makefile:37: install] Error 1
make[1]: Leaving directory '/home/user/src/flowsint'
make: *** [Makefile:9: dev] Error 2
<!-- gh-comment-id:3449004783 -->
@nerblock commented on GitHub (Oct 26, 2025):
Ok, there is some progress... I removed the 3.12 line and ran `apt install build-essential cmake pkg-config` because of build errors, and now its missing cairo:
```bash
user@nuc:~/src/flowsint$ make dev
make check-env
make[1]: Entering directory '/home/user/src/flowsint'
🔎 Checking .env files...
✅ Using existing .env in .
✅ Using existing .env in flowsint-api
✅ Using existing .env in flowsint-core
✅ Using existing .env in flowsint-app
make[1]: Leaving directory '/home/user/src/flowsint'
make install
make[1]: Entering directory '/home/user/src/flowsint'
🚀 Installing Flowsint project modules...
poetry config virtualenvs.in-project true --local
#poetry env use python3.12
docker compose up -d postgres redis neo4j
[+] Running 3/3
✔ Container flowsint-postgres Running 0.0s
✔ Container redis-cache Running 0.0s
✔ Container flowsint-neo4j Running 0.0s
poetry install
Creating virtualenv flowsint in /home/user/src/flowsint/.venv
Installing dependencies from lock file
Package operations: 198 installs, 0 updates, 0 removals
- Installing pycparser (2.23)
- Installing asn1crypto (1.5.1)
- Installing certifi (2025.10.5)
- Installing cffi (2.0.0)
- Installing charset-normalizer (3.4.4)
- Installing idna (3.11)
- Installing mdurl (0.1.2)
- Installing typing-extensions (4.15.0)
- Installing urllib3 (2.5.0)
- Installing webencodings (0.5.1)
- Installing annotated-types (0.7.0)
- Installing asttokens (3.0.0)
- Installing catalogue (2.0.10)
- Installing cryptography (45.0.7)
- Installing executing (2.2.1)
- Installing freetype-py (2.5.1)
- Installing frozenlist (1.8.0)
- Installing markdown-it-py (4.0.0)
- Installing multidict (6.7.0)
- Installing oscrypto (1.3.0)
- Installing parso (0.8.5)
- Installing pillow (12.0.0)
- Installing propcache (0.4.1)
- Installing ptyprocess (0.7.0)
- Installing pure-eval (0.2.3)
- Installing pycairo (1.28.0): Failed
PEP517 build of a dependency failed
Backend subprocess exited when trying to invoke build_wheel
| Command '['/tmp/tmphu6w8uwg/.venv/bin/python', '/home/user/.local/share/pypoetry/venv/lib/python3.11/site-packages/pyproject_hooks/_in_process/_in_process.py', 'build_wheel', '/tmp/tmptxkf4lsa']' returned non-zero exit status 1.
|
| + meson setup /tmp/tmpa3xeff5g/pycairo-1.28.0 /tmp/tmpa3xeff5g/pycairo-1.28.0/.mesonpy-tlu2qq6m -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md -Dwheel=true -Dtests=false --native-file=/tmp/tmpa3xeff5g/pycairo-1.28.0/.mesonpy-tlu2qq6m/meson-python-native-file.ini
| The Meson build system
| Version: 1.9.1
| Source dir: /tmp/tmpa3xeff5g/pycairo-1.28.0
| Build dir: /tmp/tmpa3xeff5g/pycairo-1.28.0/.mesonpy-tlu2qq6m
| Build type: native build
| Project name: pycairo
| Project version: 1.28.0
| C compiler for the host machine: cc (gcc 11.4.0 "cc (Ubuntu 11.4.0-1ubuntu1~22.04.2) 11.4.0")
| C linker for the host machine: cc ld.bfd 2.38
| Host machine cpu family: x86_64
| Host machine cpu: x86_64
| Program python3 found: YES (/tmp/tmphu6w8uwg/.venv/bin/python)
| Compiler for C supports arguments -Wall: YES
| Compiler for C supports arguments -Warray-bounds: YES
| Compiler for C supports arguments -Wcast-align: YES
| Compiler for C supports arguments -Wconversion: YES
| Compiler for C supports arguments -Wextra: YES
| Compiler for C supports arguments -Wformat=2: YES
| Compiler for C supports arguments -Wformat-nonliteral: YES
| Compiler for C supports arguments -Wformat-security: YES
| Compiler for C supports arguments -Wimplicit-function-declaration: YES
| Compiler for C supports arguments -Winit-self: YES
| Compiler for C supports arguments -Winline: YES
| Compiler for C supports arguments -Wmissing-format-attribute: YES
| Compiler for C supports arguments -Wmissing-noreturn: YES
| Compiler for C supports arguments -Wnested-externs: YES
| Compiler for C supports arguments -Wold-style-definition: YES
| Compiler for C supports arguments -Wpacked: YES
| Compiler for C supports arguments -Wpointer-arith: YES
| Compiler for C supports arguments -Wreturn-type: YES
| Compiler for C supports arguments -Wshadow: YES
| Compiler for C supports arguments -Wsign-compare: YES
| Compiler for C supports arguments -Wstrict-aliasing: YES
| Compiler for C supports arguments -Wundef: YES
| Compiler for C supports arguments -Wunused-but-set-variable: YES
| Compiler for C supports arguments -Wswitch-default: YES
| Compiler for C supports arguments -Wno-missing-field-initializers: YES
| Compiler for C supports arguments -Wno-unused-parameter: YES
| Compiler for C supports arguments -fno-strict-aliasing: YES
| Compiler for C supports arguments -fvisibility=hidden: YES
| Found pkg-config: YES (/usr/bin/pkg-config) 0.29.2
| Found CMake: /usr/bin/cmake (3.22.1)
| Run-time dependency cairo found: NO (tried pkgconfig and cmake)
|
| ../cairo/meson.build:31:12: ERROR: Dependency "cairo" not found, tried pkgconfig and cmake
|
| A full log can be found at /tmp/tmpa3xeff5g/pycairo-1.28.0/.mesonpy-tlu2qq6m/meson-logs/meson-log.txt
Note: This error originates from the build backend, and is likely not a problem with poetry but one of the following issues with pycairo (1.28.0)
- not supporting PEP 517 builds
- not specifying PEP 517 build requirements correctly
- the build requirements are incompatible with your operating system or Python version
- the build requirements are missing system dependencies (eg: compilers, libraries, headers).
You can verify this by running pip wheel --no-cache-dir --use-pep517 "pycairo (==1.28.0)".
- Installing pygments (2.19.2)
- Installing pydantic-core (2.41.4)
- Installing requests (2.32.5)
- Installing tinycss2 (1.4.0)
- Installing traitlets (5.14.3)
- Installing typing-inspection (0.4.2)
- Installing uritools (5.0.0)
- Installing wcwidth (0.2.14)
make[1]: *** [Makefile:37: install] Error 1
make[1]: Leaving directory '/home/user/src/flowsint'
make: *** [Makefile:9: dev] Error 2
```
So it needed apt install libcairo2-dev to continue. And now it fails with:
../cairo/meson.build:51:15: ERROR: Python dependency not found
<!-- gh-comment-id:3449010060 -->
@nerblock commented on GitHub (Oct 26, 2025):
So it needed `apt install libcairo2-dev` to continue. And now it fails with:
```bash
../cairo/meson.build:51:15: ERROR: Python dependency not found
```
Mhhh. I will be working on a fully dockerized env in the next few days to avoid this kind of problem.
<!-- gh-comment-id:3449016985 -->
@dextmorgn commented on GitHub (Oct 26, 2025):
Mhhh. I will be working on a fully dockerized env in the next few days to avoid this kind of problem.
So it built everything successfully, but now I get this error... 😅
user@nuc:~/src/flowsint/flowsint-api$ poetry run uvicorn app.main:app --host 0.0.0.0 --port 5001 --reload
INFO: Will watch for changes in these directories: ['/home/user/src/flowsint/flowsint-api']
INFO: Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)
INFO: Started reloader process [27526] using StatReload
Process SpawnProcess-1:
Traceback (most recent call last):
File "/usr/lib/python3.11/multiprocessing/process.py", line 314, in _bootstrap
self.run()
File "/usr/lib/python3.11/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/_subprocess.py", line 80, in subprocess_started
target(sockets=sockets)
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/server.py", line 65, in run
return asyncio.run(self.serve(sockets=sockets))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 188, in run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 120, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 650, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/server.py", line 69, in serve
await self._serve(sockets)
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/server.py", line 76, in _serve
config.load()
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/config.py", line 434, in load
self.loaded_app = import_from_string(self.app)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/importer.py", line 19, in import_from_string
module= importlib.import_module(module_str)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/user/src/flowsint/flowsint-api/app/main.py", line 11, in <module>
from app.api.routes import transforms
File "/home/user/src/flowsint/flowsint-api/app/api/routes/transforms.py", line 4, in <module>
from flowsint_core.core.registry import TransformRegistry
File "/home/user/src/flowsint/flowsint-core/src/flowsint_core/core/registry.py", line 12, in <module>
from flowsint_transforms.domain.to_history import DomainToHistoryTransform
File "/home/user/src/flowsint/flowsint-transforms/src/flowsint_transforms/domain/to_history.py", line 12, in <module>
from tools.network.whoxy import WhoxyTool
File "/home/user/src/flowsint/flowsint-transforms/src/tools/network/whoxy.py", line 36
f"Error querying Whoxy API: {str(data.get("status_reason") )}"
^^^^^^^^^^^^^
SyntaxError: f-string: unmatched '('
<!-- gh-comment-id:3449028071 -->
@nerblock commented on GitHub (Oct 26, 2025):
So it built everything successfully, but now I get this error... 😅
```bash
user@nuc:~/src/flowsint/flowsint-api$ poetry run uvicorn app.main:app --host 0.0.0.0 --port 5001 --reload
INFO: Will watch for changes in these directories: ['/home/user/src/flowsint/flowsint-api']
INFO: Uvicorn running on http://0.0.0.0:5001 (Press CTRL+C to quit)
INFO: Started reloader process [27526] using StatReload
Process SpawnProcess-1:
Traceback (most recent call last):
File "/usr/lib/python3.11/multiprocessing/process.py", line 314, in _bootstrap
self.run()
File "/usr/lib/python3.11/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/_subprocess.py", line 80, in subprocess_started
target(sockets=sockets)
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/server.py", line 65, in run
return asyncio.run(self.serve(sockets=sockets))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 188, in run
return runner.run(main)
^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/runners.py", line 120, in run
return self._loop.run_until_complete(task)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/asyncio/base_events.py", line 650, in run_until_complete
return future.result()
^^^^^^^^^^^^^^^
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/server.py", line 69, in serve
await self._serve(sockets)
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/server.py", line 76, in _serve
config.load()
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/config.py", line 434, in load
self.loaded_app = import_from_string(self.app)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/uvicorn/importer.py", line 19, in import_from_string
module = importlib.import_module(module_str)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 940, in exec_module
File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
File "/home/user/src/flowsint/flowsint-api/app/main.py", line 11, in <module>
from app.api.routes import transforms
File "/home/user/src/flowsint/flowsint-api/app/api/routes/transforms.py", line 4, in <module>
from flowsint_core.core.registry import TransformRegistry
File "/home/user/src/flowsint/flowsint-core/src/flowsint_core/core/registry.py", line 12, in <module>
from flowsint_transforms.domain.to_history import DomainToHistoryTransform
File "/home/user/src/flowsint/flowsint-transforms/src/flowsint_transforms/domain/to_history.py", line 12, in <module>
from tools.network.whoxy import WhoxyTool
File "/home/user/src/flowsint/flowsint-transforms/src/tools/network/whoxy.py", line 36
f"Error querying Whoxy API: {str(data.get("status_reason") )}"
^^^^^^^^^^^^^
SyntaxError: f-string: unmatched '('
```
Ok, so I removed the double quotes inside the double quotes from /whoxy.py, then this error came up when registering:
(trapped) error reading bcrypt version
Traceback (most recent call last):
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/passlib/handlers/bcrypt.py", line 620, in _load_backend_mixin
version= _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
I followed this post and replaced the get_password_hash and verify_password functions with the bcrypt only implementation. Now registration works but I cant login:
INFO: 127.0.0.1:60910 - "POST /api/auth/register HTTP/1.1"201 Created
INFO: 127.0.0.1:39340 - "POST /api/auth/token HTTP/1.1"400 Bad Request
<!-- gh-comment-id:3449134393 -->
@nerblock commented on GitHub (Oct 27, 2025):
Ok, so I removed the double quotes inside the double quotes from /whoxy.py, then this error came up when registering:
```bash
(trapped) error reading bcrypt version
Traceback (most recent call last):
File "/home/user/.cache/pypoetry/virtualenvs/flowsint-api-Snje2lh6-py3.11/lib/python3.11/site-packages/passlib/handlers/bcrypt.py", line 620, in _load_backend_mixin
version = _bcrypt.__about__.__version__
^^^^^^^^^^^^^^^^^
AttributeError: module 'bcrypt' has no attribute '__about__'
```
I followed [this post](https://github.com/pyca/bcrypt/issues/684#issuecomment-1902590553) and replaced the get_password_hash and verify_password functions with the bcrypt only implementation. Now registration works but I cant login:
```bash
INFO: 127.0.0.1:60910 - "POST /api/auth/register HTTP/1.1" 201 Created
INFO: 127.0.0.1:39340 - "POST /api/auth/token HTTP/1.1" 400 Bad Request
```
I think the best solution for you would be tu upgrade your python version to python3.12 + and re-start the install
<!-- gh-comment-id:3449839480 -->
@dextmorgn commented on GitHub (Oct 27, 2025):
I think the best solution for you would be tu upgrade your python version to python3.12 + and re-start the install
@nerblock, I updated the deploy so that now everything works in docker environment. Rebase your branch and run make dev to dev or make prod for production and you should be fine ! Let me know if this works so I can close the issue.
<!-- gh-comment-id:3450588898 -->
@dextmorgn commented on GitHub (Oct 27, 2025):
@nerblock, I updated the deploy so that now everything works in docker environment. Rebase your branch and run `make dev` to dev or `make prod` for production and you should be fine ! Let me know if this works so I can close the issue.
I can confirm make prod works as expected. Thank you for the assistance, closing this!
<!-- gh-comment-id:3455061176 -->
@nerblock commented on GitHub (Oct 28, 2025):
I can confirm `make prod` works as expected. Thank you for the assistance, closing this!
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Originally created by @nerblock on GitHub (Oct 26, 2025).
Original GitHub issue: https://github.com/reconurge/flowsint/issues/17
Trying to start the api but no cake:
@dextmorgn commented on GitHub (Oct 26, 2025):
Hey nerblock,
Could you show the output of
poetry run python -m pip list | grep flowsint?Otherwise, make sure you run
poetry installin all py packages :@nerblock commented on GitHub (Oct 26, 2025):
no output..
done
this gives me an error:
@dextmorgn commented on GitHub (Oct 26, 2025):
if
poetry run python -m pip list | grep flowsintreturns nothing, I'm suspecting a mismatch in your python environment. Maybe you're using your local python binary instead of the virtual env one.If you want to debug more, try seeing if those don't reference your
/home/user/.local/lib/python3.11instead of the.venv. Try running :And the one returned by
poetry run which pythonshould be the same.If you don't feel like debugging, try removing the
.venvfolder withrm -rf .venvand relauch the install withmake devcommand.Let me know !
@nerblock commented on GitHub (Oct 26, 2025):
This is what I get:
Will try to remove .venv and report back.
@nerblock commented on GitHub (Oct 26, 2025):
Ok so I removed .venv and I get this error now which is weird because it ran successfully with python 3.11 before:
@dextmorgn commented on GitHub (Oct 26, 2025):
Great, can you comment line #41 in the
Makefileand runrm -rf .venv && make devagain ?Basically remove the
poetry env use python3.12from the install.This was forcing the usage of a particular python version but cannot work if not installed on the host machine.
Let me know if this works, so that I can update the Makefile to make it less restrictive.
@nerblock commented on GitHub (Oct 26, 2025):
Ok, there is some progress... I removed the 3.12 line and ran
apt install build-essential cmake pkg-configbecause of build errors, and now its missing cairo:@nerblock commented on GitHub (Oct 26, 2025):
So it needed
apt install libcairo2-devto continue. And now it fails with:@dextmorgn commented on GitHub (Oct 26, 2025):
Mhhh. I will be working on a fully dockerized env in the next few days to avoid this kind of problem.
@nerblock commented on GitHub (Oct 26, 2025):
It needed
apt install python3.11-dev. 🤦♂️@nerblock commented on GitHub (Oct 26, 2025):
So it built everything successfully, but now I get this error... 😅
@nerblock commented on GitHub (Oct 27, 2025):
Ok, so I removed the double quotes inside the double quotes from /whoxy.py, then this error came up when registering:
I followed this post and replaced the get_password_hash and verify_password functions with the bcrypt only implementation. Now registration works but I cant login:
@dextmorgn commented on GitHub (Oct 27, 2025):
I think the best solution for you would be tu upgrade your python version to python3.12 + and re-start the install
@dextmorgn commented on GitHub (Oct 27, 2025):
@nerblock, I updated the deploy so that now everything works in docker environment. Rebase your branch and run
make devto dev ormake prodfor production and you should be fine ! Let me know if this works so I can close the issue.@nerblock commented on GitHub (Oct 28, 2025):
I can confirm
make prodworks as expected. Thank you for the assistance, closing this!