Releases: SpaceShaman/autopy.fish
🚀 v0.4.0 – Smarter, Safer & Now Asynchronous!
This release brings two major enhancements thanks to the amazing contributions from @simonmandlik 👏🐟
✨ New
-
Deleted venv detection → PR #10
autopy.fishnow automatically deactivates the virtual environment if it gets deleted or becomes unavailable for any reason. This ensures a clean and stable shell even when environments are removed or moved. -
Experimental async version → PR #8 PR #11
An asynchronous version ofautopy.fishis now available in theexperimentalbranch!
It uses fish-async-prompt to run activation logic in the background, making your prompt feel faster and more responsive—especially for Poetry users.How to try it
Install from the
experimentalbranch and enable async behavior:fisher install SpaceShaman/autopy.fish@experimental fisher install acomagu/fish-async-prompt
or
reef install SpaceShaman/autopy.fish@experimental reef install acomagu/fish-async-prompt
Add the following to your
config.fish:set -g async_prompt_functions autopy set -g async_prompt_inherit_variables all
For more details, see the updated README.
Huge thanks to @simonmandlik for driving these fantastic improvements and continuing to make autopy.fish faster, safer, and more flexible! 🙏💪
Full Changelog: v0.3.2...v0.4.0
⚡ v0.3.2 – Faster & Safer Poetry Detection
✨ Improved
- Poetry venv lookup speed-up
Optimized the way the Poetry virtual environment path is determined — now roughly 2× faster based on measurements.
(Thanks @simonmandlik for the improvement! 🚀) → PR #6
🐛 Fixed
- Safer Poetry handling
Added a check to ensure thatpoetryis installed before attempting to use it, preventing potential errors in minimal environments.
Full Changelog: v0.3.1...v0.3.2
🐛 v0.3.1 – Fix Log Spam
Fixed
- No more console spam when
python3is missing
Quoted the command substitution inis_venv_active, preventing error messages ifpython3is not installed.
(Thanks @iliqiliev for the fix! 🙏) → PR #5
Full Changelog: v0.3.0...v0.3.1
🚀 v0.3.0 – Community Power-Up
This release brings important improvements contributed by the community — big thanks to @simonmandlik and @iliqiliev for their great work! 🙌🐟
✨ Added
-
Support for multiple Poetry projects in one repo
Improvedget_project_dirso that it correctly handles repositories containing multiple Poetry projects in different subdirectories. (Thanks @simonmandlik 🎉) -
Explicit venv sourcing
You can now manuallysourceany virtual environment to temporarily disable autopy untildeactivateis run. (Thanks @simonmandlik 🙏)
🐛 Fixed
- More robust venv detection
Replaced the use ofwhichwithtype --pathto avoid errors on minimal systems and ensure faster checks. (Thanks @iliqiliev
👋 New Contributors
- @iliqiliev made their first contribution in #2
Full Changelog: v0.2.6...v0.3.0
🐛 v0.2.6 – Safer Deactivation
Fixed
- More robust deactivation
deactivate_venvnow checks if thedeactivatefunction exists before calling it, preventing errors in edge cases.
It also ensures all related environment variables are properly unset, leaving a clean shell state after deactivation.
Full Changelog: v0.2.5...v0.2.6
📦 v0.2.5 – UV Support & Compatibility Fixes
✨ Added
- UV support
Improvedis_poetry_projectto check explicitly for[tool.poetry]inpyproject.toml, ensuring proper detection for projects managed with uv as well as Poetry.
🐛 Fixed
- Better venv detection
Updatedis_venv_activeto usepython3for broader compatibility across systems.
Full Changelog: v0.2.4...v0.2.5
🔧 v0.2.4 – Env Var Conflict Resolved
Changed
- 🔧 Renamed
OLD_PROJECT_DIRtoAUTOPY_OLD_PROJECT_DIR
This change avoids conflicts with other plugins (e.g.autoenv.fish) that previously used the same variable name. The new, namespaced variable improves clarity and compatibility in mixed setups.
Full Changelog: v0.2.3...v0.2.4
v0.2.3 Smarter Pane Detection 🧠🐟
🪟 Enhanced Behavior
- Auto-activation in new panes
autopy.fishnow triggers when opening a new terminal pane (e.g. intmuxorwezterm) within a project directory, ensuring your virtual environment stays active even in freshly split panes.
🙏 Thanks
Big thanks to @simonmandlik for contributing this improvement!
Full Changelog: v0.2.2...v0.2.3
v0.2.2 Faster & Cleaner Navigation ⚡🐟
🚀 Improved
- Faster directory changes
Now, when you move into a subdirectory of a project and the virtual environment is already active, the plugin immediately exits—skipping unnecessary checks and speeding up directory navigation.
♻️ Refactor
- Activation and deactivation logic split
The logic for activating and deactivating virtual environments is now separated into dedicated functions, making the codebase cleaner and easier to extend.
Full Changelog: v0.2.1...v0.2.2
v0.2.1 Clean Code, Happy Fish! 🧼🐟
♻️ Refactor
- Extracted
get_project_dirandget_venv_dirfunctions inautopy.fishfor improved readability and maintainability. - Refactored the virtual environment activation logic to make the codebase cleaner and easier to maintain.
These changes do not affect user-facing features, but make the code easier to read, understand, and contribute to!
Full Changelog: v0.2.0...v0.2.1