# Rust Editions and MSRV Supported by OpenLogi: 2024 Edition at 1.98

> Discover the Rust editions and MSRV supported by OpenLogi. Learn about the project's commitment to the latest Rust stable release, 1.98, for enhanced development.

- Repository: [Xuan Zhang/OpenLogi](https://github.com/AprilNEA/OpenLogi)
- Tags: deep-dive
- Published: 2026-08-27

---

**OpenLogi targets Rust 2024 Edition with a Minimum Supported Rust Version (MSRV) of 1.98**, tracking the current stable release as its compilation baseline.

OpenLogi is a Rust-based logistics and supply chain management framework maintained by AprilNEA. Understanding the Rust editions and MSRV supported by OpenLogi ensures contributors maintain compatibility with the project's modern toolchain requirements while leveraging the latest compiler capabilities.

## Where OpenLogi Declares Rust Edition and MSRV

The project explicitly defines its toolchain requirements across multiple authoritative source files. According to the [`docs/DEVELOPMENT.md`](https://github.com/AprilNEA/OpenLogi/blob/main/docs/DEVELOPMENT.md) file in the AprilNEA/OpenLogi repository, the project mandates: "Stable Rust (Edition 2024, MSRV 1.98 — the floor tracks current stable)". The [`.claude/rules/rust.md`](https://github.com/AprilNEA/OpenLogi/blob/main/.claude/rules/rust.md) file reinforces this policy, stating: "Edition 2024, MSRV = current stable (1.98)".

These declarations are enforced technically through the workspace root [`Cargo.toml`](https://github.com/AprilNEA/OpenLogi/blob/main/Cargo.toml), which sets the canonical values for all crates in the repository.

## Workspace Configuration in Cargo.toml

The root [`Cargo.toml`](https://github.com/AprilNEA/OpenLogi/blob/main/Cargo.toml) establishes the compilation baseline for the entire OpenLogi workspace:

```toml

# Cargo.toml (root of the repository)

[package]
name = "openlogi"
version = "0.1.0"
edition = "2024"          # ← Rust edition used by the project

rust-version = "1.98"     # ← Minimum Supported Rust Version (MSRV)

```

The **Rust 2024 Edition** provides the latest language features and idioms, while the **MSRV of 1.98** ensures reproducible builds across development environments. All workspace crates inherit these settings automatically unless explicitly overridden.

## Inheriting Settings in Workspace Crates

When adding new functionality to OpenLogi, individual crates can omit explicit declaration since they inherit from the workspace root:

```toml

# crates/my_new_feature/Cargo.toml

[package]
name = "my_new_feature"
edition = "2024"          # optional – inherits from workspace if omitted

rust-version = "1.98"     # optional – inherits from workspace if omitted

```

This inheritance mechanism guarantees consistent **Rust edition** and **MSRV** compliance across the entire OpenLogi codebase without requiring repetitive configuration in every crate manifest.

## CI Verification and MSRV Compliance

The project enforces these standards through continuous integration. The [`.github/workflows/ci.yml`](https://github.com/AprilNEA/OpenLogi/blob/main/.github/workflows/ci.yml) configuration includes specific jobs to verify MSRV compliance.

To verify your contributions locally against the OpenLogi MSRV before submitting:

```bash
RUSTUP_TOOLCHAIN=1.98 cargo check --workspace --all-targets

```

This command pins the Rust toolchain to version 1.98, ensuring your code respects the minimum supported version declared in the root [`Cargo.toml`](https://github.com/AprilNEA/OpenLogi/blob/main/Cargo.toml).

## Summary

- **OpenLogi** uses **Rust 2024 Edition** for modern language features and performance improvements.
- The **Minimum Supported Rust Version (MSRV)** is set to **1.98**, tracking the current stable release as documented in [`docs/DEVELOPMENT.md`](https://github.com/AprilNEA/OpenLogi/blob/main/docs/DEVELOPMENT.md) and [`.claude/rules/rust.md`](https://github.com/AprilNEA/OpenLogi/blob/main/.claude/rules/rust.md).
- Configuration resides in the workspace root [`Cargo.toml`](https://github.com/AprilNEA/OpenLogi/blob/main/Cargo.toml) via the `edition` and `rust-version` fields, inherited by all workspace members.
- The CI pipeline in [`.github/workflows/ci.yml`](https://github.com/AprilNEA/OpenLogi/blob/main/.github/workflows/ci.yml) enforces these requirements automatically on every pull request.

## Frequently Asked Questions

### What Rust edition does OpenLogi use?

OpenLogi uses **Rust 2024 Edition**. This edition is declared in the root [`Cargo.toml`](https://github.com/AprilNEA/OpenLogi/blob/main/Cargo.toml) and provides access to the latest language features, improved performance characteristics, and updated standard library APIs available in the 2024 release.

### What is the MSRV for OpenLogi?

The **Minimum Supported Rust Version (MSRV)** for OpenLogi is **1.98**. This version represents the current stable release at the time of implementation, ensuring the project can leverage recent compiler improvements while maintaining a stable compilation baseline across all development environments.

### Why does OpenLogi track the current stable release for MSRV?

According to the source documentation in [`docs/DEVELOPMENT.md`](https://github.com/AprilNEA/OpenLogi/blob/main/docs/DEVELOPMENT.md), OpenLogi explicitly defines its MSRV policy as "the floor tracks current stable." This aggressive MSRV policy allows the project to utilize cutting-edge Rust features immediately without maintaining compatibility with older compiler versions, simplifying the codebase and reducing technical debt.

### How can I verify my code compiles with OpenLogi's MSRV locally?

Run the following command from the repository root:

```bash
RUSTUP_TOOLCHAIN=1.98 cargo check --workspace --all-targets

```

This pins the toolchain to version 1.98 and checks all workspace crates and targets, matching the verification performed by the CI pipeline defined in [`.github/workflows/ci.yml`](https://github.com/AprilNEA/OpenLogi/blob/main/.github/workflows/ci.yml).