Skip to content

[BUG] openmemory-py wheel built from git contains syntax errors (truncated strings) — import fails #129

@evertvorster

Description

@evertvorster

What happened?

When building openmemory-py from the current git repository, the wheel (openmemory_py-1.3.1-py2.py3-none-any.whl) is produced successfully, but the resulting wheel contains syntactically invalid Python.

Multiple modules inside the wheel have truncated string literals or mismatched braces. As a result:

python -m compileall fails on the extracted wheel

import openmemory fails at runtime

Expected behavior:
The wheel produced from git should contain syntactically valid Python, and import openmemory should succeed.

Steps to Reproduce

Clone the OpenMemory repository from git.

Build the Python wheel using:

python -m build --wheel --no-isolation

Extract the generated wheel:

python -m zipfile -e openmemory_py-1.3.1-py2.py3-none-any.whl /tmp/omwheel

Compile the extracted package:

python -m compileall -q /tmp/omwheel/openmemory

Observe syntax errors in multiple files.

Component

Backend (API/Server)

Environment

Component

Python SDK (openmemory-py)

Wheel build / packaging pipeline

Environment

OS: Arch Linux / CachyOS

Python: 3.14.2

Build method: python -m build --wheel --no-isolation

Installation context: AUR-style python-openmemory-git packaging

Relevant log output

Relevant log output
*** Error compiling '/tmp/omwheel/openmemory/ai/mcp.py'...
SyntaxError: closing parenthesis '}' does not match opening parenthesis '(' on line 56

*** Error compiling '/tmp/omwheel/openmemory/connectors/google_slides.py'...
SyntaxError: unterminated f-string literal (detected at line 77)

*** Error compiling '/tmp/omwheel/openmemory/memory/hsg.py'...
SyntaxError: unterminated string literal (detected at line 221)

*** Error compiling '/tmp/omwheel/openmemory/ops/compress.py'...
SyntaxError: unterminated string literal (detected at line 100)


Examples from inside the wheel:

openmemory/memory/hsg.py

221: if re.match(r"^


openmemory/connectors/google_slides.py

77: "id": f"{presentation_id}


openmemory/ops/compress.py

100: c = re.sub(r"[*_~`


These truncations are present inside the wheel artifact itself, not introduced by downstream packaging.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Labels

bugSomething isn't working

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions