3.2.1
devicons/devicon3.2.1May 5, 2026by isaacbmiller
AI Summary
This release focuses on refining the DSPy framework with dependency updates, documentation improvements, and critical bug fixes regarding async streaming and embedding caching.
Key Highlights
- Removed the upper bound on `litellm` dependency
- Updated the Usecase page to allow community contributions
- Fixed async streaming LM calls to forward custom headers
- Fixed `dspy.Embedder` to honor per-call caching settings
- Hardened TestPyPI release validation processes
New Features
- Fixed async streaming LM calls so custom headers are forwarded
- Fixed `dspy.Embedder` so per-call `caching=False` is honored
- Updated documentation and deployment structure
Full Release Notes
# DSPy 3.2.1 Changelog - Removed the upper bound on `litellm`. (#9687) - Usecase page has been updated! [https://dspy.ai/community/use-cases/](https://dspy.ai/community/use-cases/). To add your use-case, [open a PR](https://github.com/stanfordnlp/dspy/edit/main/docs/docs/community/use-cases.md)! ## Bug fixes - Fixed async streaming LM calls so custom headers are forwarded to LiteLLM streaming completions. (#9669) - Fixed `dspy.Embedder` so per-call `caching=False` is honored for both sync and async embedding calls. (#9708) ## Documentation - Moved Deployment into the technical documentation tabs and promoted production use cases under Community. (#9709) - Updated the production use-cases copy for DSPy. - Fixed MkDocs admonition rendering in Deployment and Observability docs. (#9690, #9691) - Fixed duplicate-word typos across docs, source, and tests. (#9695) ## CI and release - Hardened TestPyPI release validation by adding strict `twine check` and reducing unused workflow permissions. (#9648) - Gave TestPyPI publishing its own GitHub environment. (#9649) - Removed an unused `setup-node` step from the docs push workflow. (#9702) - Replaced direct merge-to-main after publishing with a version bump PR. (#9716) - Refreshed `uv.lock` for the 3.2.0 release state. (#9650) ## Dependency updates - Updated test and development dependencies: `pytest-asyncio`, `ruff`, `pre-commit`, `datamodel-code-generator`, `optuna`, and `urllib3`. (#9665, #9664, #9699, #9701, #9697, #9698) - Updated documentation dependencies: `mkdocs-llmstxt`, `mkdocstrings`, `mistune`, and `mkdocs-jupyter`. (#9661, #9668, #9666, #9700) - Updated GitHub Actions dependencies: `actions/cache` and `astral-sh/setup-uv`. (#9662, #9663) ## Contributors - @isaacbmiller - @GopalGB (first contribution, #9695) - @spjosyula (first contribution, #9708) ## Excluded - The GEPA 0.1.1 result/documentation update was intentionally excluded from this release. (#9673)