Skip to content

Conversation

@feat7
Copy link
Owner

@feat7 feat7 commented Dec 25, 2025

Summary

  • Fix [Errno 35] Resource temporarily unavailable error on macOS when running ingestkit CLI
  • Fix infinite recursion caused by Python entry point and Go binary both being named ingestkit

Changes

  • cli.py: Use os.execvp() instead of subprocess.run() to avoid EAGAIN errors when stdin/stdout are in non-blocking mode
  • setup.py: Rename downloaded Go binary to ingestkit-cli to prevent conflict with Python entry point
  • .gitignore: Add Python build artifacts (__pycache__/, *.egg-info/)
  • Bump version to 0.1.7

Root Cause

  1. subprocess.run() can fail with EAGAIN (Errno 35) on macOS when file descriptors are in non-blocking mode
  2. Both Python entry point and Go binary were named ingestkit - pyenv shim found Python first, causing infinite loop

Test Plan

  • Tested locally: pip install -e packages/python
  • Verified ingestkit --help works
  • Verified ingestkit init --server works

- Use os.execvp() instead of subprocess.run() to avoid EAGAIN errors
  when stdin/stdout are in non-blocking mode
- Rename Go binary to ingestkit-cli to prevent infinite recursion with
  Python entry point (both were named 'ingestkit')
- Add Python build artifacts to .gitignore
- Bump version to 0.1.7
@feat7 feat7 merged commit 6a83ab3 into main Dec 25, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants