Skip to content

Releases: pyros-projects/wishful

wishful v0.4.0

Choose a tag to compare

@github-actions github-actions released this 11 Jun 10:48
e5ca6dc

What's Changed

  • feat: Dynamic improvements, logging, and comprehensive documentation by @pyros-projects in #3
  • fix: Use 'class' instead of 'className' in Astro MDX for proper CSS styling by @pyros-projects in #4
  • fix: GitHub Pages deployment - base path and CSS class attributes by @pyros-projects in #5
  • feat: Add wishful.explore() for multi-variant generation + documentation overhaul by @pyros-projects in #6
  • Add Claude Code GitHub Workflow by @pyros-projects in #7
  • feat(evolve): add code search workbench spine by @pyros-projects in #8
  • docs: refresh context and active import direction by @pyros-projects in #9
  • release: wishful 0.4.0 — release readiness + post-release quality, reviewed by @pyros-projects in #10

Full Changelog: v0.2.0...v0.4.0

v0.2.0

Choose a tag to compare

@pyros-projects pyros-projects released this 24 Nov 12:44
a57108f

What's Changed

  • Improve context discovery and document version bump policy by @pyros-projects in #1
  • feat: Type Registry System & Static/Dynamic Import Modes (v0.2.0) by @pyros-projects in #2

New Contributors

Full Changelog: v0.1.1...v0.2.0

v0.1.1 - Wishful think your code into existence

Choose a tag to compare

@pyros-projects pyros-projects released this 23 Nov 12:09

🪄 wishful v0.1.1 - The "Wait, This Actually Works?" Release

TL;DR: Import things that don't exist. An LLM writes them for you. Cache forever. Profit.


What Even Is This?

Ever find yourself thinking "I wish Python had a function that just... did the thing?"

Well, now it does. Sort of. Through the power of ✨ extremely questionable design decisions ✨ and LLMs.

from wishful.text import extract_emails  # This doesn't exist...
# ...until now. The LLM just wrote it. It's cached. It works. Don't think too hard about it.

What's In The Box

  • Just-in-time code generation via import hooks (yes, really)
  • LLM-powered module synthesis (litellm support = all the models)
  • Persistent caching (.wishful/ directory with actual Python files you can edit)
  • Context-aware generation (drop comments near your imports, the AI reads them)
  • Safety guardrails (AST validation to block obvious foot-guns)
  • Offline testing mode (WISHFUL_FAKE_LLM=1 for deterministic stubs)
  • Zero boilerplate (well, except for the API keys)

Should You Use This?

¯\_(ツ)_/¯

Pros:

  • Turns wishful thinking into actual code
  • Faster than writing utility functions yourself
  • Makes you feel like a wizard 🧙‍♂️
  • The cache is just Python files, so you can review/edit/commit them

Cons:

  • Your coworkers will have questions
  • "How does this work?" is not a question you want to answer in a code review
  • The AI sometimes gets... creative
  • Your import statements now have an API quota

Known Issues

  • None yet! (Give it time)
  • Actually, one: it works suspiciously well and that's concerning

What's Next?

  • v0.2.0: More features, probably
  • v1.0.0: When enough people have used this in production that someone threatens a lawsuit (kidding... mostly)

Installation

pip install wishful

Then just start importing things that don't exist. The future is now.

Final Thoughts

This started as a joke project titled "magic_import" and somehow became... not a joke? The rename to "wishful" felt appropriate because that's exactly what this is: turning your wishful thinking into executable Python.

Is this the future of programming? Absolutely not.

Is it fun? Absolutely yes.

Is it useful? You tell me.


Full Changelog: This is the first release, so... everything?

Documentation: Check the README for way too many puns and a surprising amount of useful information.

Issues/Feedback: Open an issue if something breaks. Or if it works too well. Either way, I'd love to know.

Happy wishing! 🌟