Skip to content

graspologic dependency pulls in gensim<=3.9 which fails to build on Python 3.12+ #5

Description

@raine

I had trouble getting this work with pipx install graphifyy. Needed pyenv, and with that setup, the skill itself did not work.

Low effort Claude explanation:

Environment

  • Python 3.12+ (tested on 3.14)
  • macOS (Apple Silicon)
  • pipx install graphifyy

Problem

Installing graphifyy fails on Python 3.12+ because of a transitive dependency chain:

graphifyy → graspologic → gensim>=3.8.0,<=3.9.0 → requires numpy<1.20 to build → numpy<1.20 doesn't support Python 3.12+

The failure during pip install:

error: subprocess-exited-with-error
AttributeError: 'dict' object has no attribute '__NUMPY_SETUP__'

gensim 3.8–3.9 reads numpy.__NUMPY_SETUP__ during its build, which was removed in numpy 1.20. numpy 1.20 itself dropped support for Python 3.12.

Workaround

Install using Python 3.11 via pyenv:

pyenv install 3.11
pipx install graphifyy --python ~/.pyenv/versions/3.11.*/bin/python3.11

Secondary issue

The skill (SKILL.md) checks installation and invokes the library with python3, which refers to the system Python — not the pipx venv where graphify is actually installed. So even after a successful install via pipx, /graphify fails with ModuleNotFoundError.

The skill should derive the Python interpreter from the graphify binary's shebang rather than calling python3 directly:

$(head -1 $(which graphify) | tr -d '#!') -c "from graphify.detect import detect ..."

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    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