> Release time: 2025-02-25 12:08:35
🙇 We'd like to thank all contributors for this new release! In particular,
Zac Li, Jina Dev Bot, 🙇
🆕 New Features
- [[fa7f11b9](https://github.com/jina-ai/jina/commit/fa7f11b92f50e387c3dcf443e4e96ca58cdff5ca)] __-__ support param in sm batch (#6229) (*Zac Li*)
🍹 Other Improvements
- [[ef3ad20f](https://github.com/jina-ai/jina/commit/ef3ad20f2bd350fdd32a1f947f5b48bb5245cf04)] __-__ __version__: the next version will be 3.33.1 (*Jina Dev Bot*)
Release & Version Identifier
Jina is shipped from two package management systems, PyPi and Docker Hub. This article clarifies the release cycle and version identifier behind each system.
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
- [PyPi package versioning](pypi-package-versioning)
- [Docker image versioning](docker-image-versioning)
- [Manual Release Entrypoint](manual-release-entrypoint)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
PyPi package versioning
We follow [PEP-440](https://www.python.org/dev/peps/pep-0440/), and a form of [semantic versioning](https://semver.org/) as explained above.
To install the latest final release:
bash
pip install -U jina
To install a particular final release:
bash
pip install jina==x.y.z
The term "final release" is relative to "developmental release" as described below.
Install Jina with Recommended Extensions
`pip install -U jina` only installs the core dependencies of Jina.
The recommended way of installing Jina is `pip install -U jina`
`"standard"` include extra dependencies that enables:
- Executor Hub + Docker support
- FastAPI + Websocket support (required when using `Flow(protocol='http')` or `Flow(protocol='websocket')`)
- the best compression via LZ4 algorithm
- the best async eventloop management via `uvloop`
Other extension tags such as `[devel]` can be found in [extra-requirements.txt](extra-requirements.txt).
Do I need "[standard]"?
Depends on how you use and distribute Jina.
If you are using/distributing Jina as a microservice, you often only need to install the core dependencies via `pip install jina`.
Developmental releases versioning
One every master-merging event, we create early releases directly from source control which do not conflict with later project releases. The version identifier for development release is `x.y.z.devN`, which adds a suffix `.dev`, followed by a non-negative integer value `N`, which is reset on every release.
To install the latest development release:
bash
pip install --pre jina
Version epochs
Release cycle and versioning
Jina is developed continuously by the community and core team. Updates are grouped and released at regular intervals to align with software development best practices.
Jina follows a form of numbered versioning. The version number of the product is a three-part value `x.y.z` where `x`, `y`, and `z` are the major, minor, and patch components respectively.
- Patch release (`x.y.z` -> `x.y.(z+1)`): Contain bug fixes, new features and breaking changes. Released weekly on a Wednesday morning CET.
- Minor release (`x.y.z -> x.(y+1).0`): Contain bug fixes, new features and breaking changes. Released monthly on the first Wednesday of the month CET. This release is more QA tested and considered more stable than a patch release.
- Major release (`x.y.z -> (x+1).0.0`): Are released based on the development cycle of the Jina company. There is no set scheduled for when these will occur.
The following example shows how Jina is released from 0.9 to 0.9.2 according to the schema we defined above.
|Event `e` | After `e`, `pip install jina` | After `e`, `pip install --pre jina` | After `e`, master `__init__.py` |
|--- | --- | --- | --- |