# Apache Iggy 0.5.0 Release

Published: 2025-08-10

Rendered page: https://iggy.apache.org/blogs/2025/08/10/release-0.5.0/

Source: https://github.com/apache/iggy-website/blob/main/content/blog/release-0.5.0.mdx

## Release 0.5.0

It’s been four months since our last [release 0.4.300](https://github.com/apache/iggy/releases/tag/server-0.4.300).
Over 150 commits, a dozen new contributors, and countless hours later, we’re proud to announce **[Apache Iggy 0.5.0](https://github.com/apache/iggy/releases/tag/server-0.5.0)**!

This release brings major improvements across the board — core server enhancements, updated SDKs, new tooling, data management interfaces, and more.


## Iggy Server

The most significant change on the server side is the introduction of **[zero-copy (de)serialization](https://github.com/apache/iggy/pull/1679)**.
This boosts performance (increased throughput and lower tail latency) while reducing memory usage by avoiding unnecessary allocations and copies.

You can read the full **[deep dive](https://iggy.apache.org/blogs/2025/05/08/zero-copy-deserialization)**, but in short — this is a **breaking change**. It required SDK refactoring, and is supported only in the most recent client library releases.

The new schema is already supported in the **[Iggy CLI](https://github.com/apache/iggy/tree/master/core/cli)** and **[Iggy Web UI](https://github.com/apache/iggy/tree/master/web)**. A simple update is all you need.

Docker images for the server and related components are available on **[Docker Hub](https://hub.docker.com/u/apache?page=1&search=iggy)**.

---

## SDKs

Alongside migrating repositories to the monorepo, we updated all SDKs to support the zero-copy schema and fill in missing features.
Our supported client libraries now include:

- [Rust](https://crates.io/crates/iggy) (always up-to-date, core reference implementation)
- [C#](https://www.nuget.org/packages/Apache.Iggy/)
- [Java](https://repository.apache.org/#nexus-search;quick~iggy)
- [Python](https://pypi.org/project/apache-iggy/)
- [Node.js (TypeScript)](https://www.npmjs.com/package/apache-iggy)
- [Go](https://pkg.go.dev/github.com/apache/iggy/foreign/go)

C++ and Elixir clients are in progress under the [foreign](https://github.com/apache/iggy/tree/master/foreign) directory.

**New in Rust SDK:**
Support for a **[background producer](https://github.com/apache/iggy/pull/1838)**, which buffers messages in the background according to configured linger time and other settings. Examples are available [here](https://github.com/apache/iggy/tree/master/examples/rust).

---

## Benchmarks

We’ve expanded our benchmarking toolkit:

- **Iggy Bench CLI** (`iggy-bench`) — run local benchmarks with various configurations and profiles.
- JSON output and chart rendering for visual performance analysis.
- Open benchmark results published at [benchmarks.iggy.apache.org](https://benchmarks.iggy.apache.org), powered by the open source [benchmarking suite](https://github.com/apache/iggy/tree/master/core/bench).

As always, you can install the regular CLI with: `cargo install iggy-cli`.

---

## Connectors

We’ve built a new **connectors runtime** for easily creating Rust-based plugins that integrate Iggy with external data sources—similar to Kafka Connect or Redpanda Connect.

You can:
- Ingest data into Iggy from external systems (e.g., Postgres CDC).
- Export data from Iggy to external destinations (e.g., indexing engines).
- Apply optional transformations and schema mappings along the way.

Learn more in this [post](https://iggy.apache.org/blogs/2025/06/06/connectors-runtime) and in the [documentation](https://iggy.apache.org/docs/connectors/introduction).

---

## MCP Server

Apache Iggy now includes support for the **[Model Context Protocol](https://modelcontextprotocol.io) (MCP)**—an open standard for providing context to LLMs.

You can start the MCP server with `cargo run --bin iggy-mcp` or use the provided Docker image.

Configuration, credentials, and permissions are detailed in the [documentation](https://iggy.apache.org/docs/ai/mcp).

---

## Versioning

Releases follow [semver](https://semver.org/) (e.g., `0.5.0`) or the `latest` Docker tag (`apache/iggy:latest`).

We also publish edge/dev/nightly builds (e.g., `0.5.0-edge.1` or `apache/iggy:edge`), which contain the newest changes but are **not recommended for production**.

---

## What’s Next

Work is underway on a **complete rewrite of the server’s core architecture** using the **io_uring runtime** with a **thread-per-core, shared-nothing design**. This will further improve performance, reduce tail latencies, and lower resource usage.

Other upcoming efforts:
- Expanding SDKs across more languages and catching up with the latest features.
- Synchronous SDK clients and [sans-io](https://www.firezone.dev/blog/sans-io) design.
- Benchmarking orchestrator
- Enhancing the Connectors Runtime and Web UI.
- Extending AI features around the MCP server.
- Exploring **Agentic AI** use cases for streaming-based agent coordination.

---

Thanks to our amazing community and contributors for making Apache Iggy better with every release.

**Join us on [Discord](https://discord.gg/apache-iggy) and help shape the future of the project!**
