GitHub user github-actions[bot] created a discussion: December 14, 2025: This Week in OpenDAL
*This weekly update is generated by LLMs. You're welcome to join our [Discord](https://opendal.apache.org/discord/) for in-depth discussions.* ## Overall Activity Summary The `apache/opendal` repository has seen significant activity in the past week, with a strong focus on modularization efforts as part of RFC-6828. Contributors have been actively working on splitting services and layers into separate crates to enhance maintainability and reduce complexity. Additionally, new features have been introduced, bugs have been addressed, and discussions on improving the project’s architecture and community engagement are ongoing. ## Key Ongoing Projects - **Modularization of Services and Layers (RFC-6828)**: - #7007 by @EricZZZ: Refactors the `cacache` service into a new crate, aligning with the modularization initiative. - #7006 by @EricZZZ: Splits the `alluxio` service into a new crate, contributing to the core-split effort. - #6996 by @XYenon: Extracts the `onedrive` service into its own crate, maintaining the public API surface. - #6982 by @tao12345666333: Refactors the `b2` service into a standalone crate as part of the ongoing modularization. - #6961 by @bytelazy: Splits the `retry` layer out of `core` into its own crate, following the RFC-6828 guidelines. - **New Feature Development**: - #7005 by @JMLX42: Introduces a new `wasi-fs` backend using the `wasi:filesystem` interface, enabling filesystem access for WebAssembly components running in WASI Preview 2 runtimes. - #6993 by @clbarnes: Adds `from_uri` constructors for `Operator` and `AsyncOperator` in the Python bindings, increasing flexibility for OpenDAL API consumers. - **Refactoring and Cleanup**: - #6994 by @Xuanwo: Removes `setup-protoc` from CI to avoid GitHub API rate limits. - #6987 by @chitralverma: Removes unused dependencies and addresses clippy warnings for Rust 1.92. - #6957 by @koushiro: Cleans up deprecated HTTP client configuration. ## Priority Items - **Pull Requests Needing Immediate Attention**: - #7007 by @EricZZZ: Refactor `cacache` service into a new crate. - #7005 by @JMLX42: Add `wasi-fs` backend using the `wasi:filesystem` interface for WebAssembly components. - #6993 by @clbarnes: Add `from_uri` constructors for Python bindings. - **Issues Requiring Attention**: - #6995 by @amunra: Addresses a race condition in `Reader::into_futures_async_read` that causes stale range calculations and corrupt data. - #6992 by @clbarnes: Resolves issues with the devcontainer using an outdated Debian version, preventing Python development. ## Notable Discussions - **#6829**: Tracking the modularization of services and layers as part of RFC-6828. Contributors like @EricZZZ, @XYenon, and @tao12345666333 are actively working on splitting services and layers into separate crates. - **#6998**: Proposal of the ASF Board Report for December 2025, led by @Xuanwo, summarizing the project's progress and community health. - **#6752**: Discussion led by @koushiro on unifying code patterns across services to improve consistency and maintainability. ## Emerging Trends - **Modularization Push**: The repository is heavily focused on modularizing services and layers to improve maintainability, reduce build times, and enable independent development of components. - **WASI and WebAssembly Support**: The introduction of the `wasi-fs` backend highlights a growing interest in supporting WebAssembly runtimes. - **Community Growth**: The project has seen active contributions from a diverse group of contributors, including @EricZZZ, @XYenon, @tao12345666333, @JMLX42, and @clbarnes. ## Good First Issues - **#6886**: Split the `cos` service into its own crate. This task is well-documented and provides a clear entry point for understanding the repository’s modularization effort. - **#6883**: Refactor the `cacache` service into a new crate. This is a straightforward task for contributors looking to get started with the modularization initiative. - **#6895**: Extract the `gcs` service into its own crate. A great opportunity to contribute to the modularization effort. - **#6939**: Split the `logging` layer into a separate crate. A simple and well-defined task for new contributors. - **#6934**: Refactor the `concurrent_limit` layer into its own crate. This task is approachable and provides a good introduction to the repository’s architecture. New contributors are encouraged to explore these issues and join the [Discord community](https://opendal.apache.org/discord/) for support and guidance! GitHub link: https://github.com/apache/opendal/discussions/7008 ---- This is an automatically sent email for [email protected]. To unsubscribe, please send an email to: [email protected]
