Commit graph

5 commits

Author SHA1 Message Date
Ethan Troy
f74856b711 Address review feedback before merge
Probe modern pipx homes, buffer install stdout for JSON, and clean up
failed venv creates so Install Markitdown retries reliably.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-20 16:08:59 -04:00
Ethan Troy
aac393071f Fix markitdown detection for Homebrew/pipx on macOS (#16)
Probe versioned Homebrew Pythons and pipx venvs, and install into a
plugin-local .venv so PEP 668 no longer blocks the Install button.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-19 13:12:13 -04:00
Ethan Troy
b0d26ce0f5 Improve Python detection error UX with troubleshooting info (ENG-642) 2026-03-17 20:38:54 -04:00
Ethan Troy
a93ed8341d Fix Python detection on macOS/Windows and settings UX issues (#13)
- Debounce Python path input (1.5s) to stop firing on every keystroke
- Guard against empty paths crashing spawn()
- Cancel debounce timer on settings tab hide/re-render
- Fire pending refreshDependencies() on hide so status stays current
- Add platform-specific Python fallback paths (Homebrew, Framework, Windows AppData)
- Prefer the first Python where markitdown actually imports over stale metadata
- Verify actual MarkItDown import in check_install.py, not just package metadata
- Add ALLOWED_PACKAGES allowlist to check_install.py
- Remove APPDATA path traversal in favor of LOCALAPPDATA
2026-03-17 20:11:42 -04:00
Ethan Troy
d6fa068498
Rewrite plugin v2: fix shell injection, modularize, add features (ENG-533)
## Summary
- **Security**: Replaced shell injection-vulnerable `exec()` calls with `spawn()` using argument arrays and `shell: false`, bundling Python wrapper scripts that use `argparse`
- **Architecture**: Decomposed monolithic 735-line `main.ts` into 12 focused modules across `src/` and `python/`
- **Features**: Added image extraction from PDFs, plugin arguments editor, context menu conversion, batch progress indicators, setup wizard, and Unicode support via `PYTHONUTF8=1`
- **Compatibility**: Reverted minAppVersion to 0.15.0, python3 fallback for macOS/Linux

Closes ENG-533
2026-02-17 01:08:20 -05:00