GitHub user github-actions[bot] created a discussion: December 21, 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 past week has been highly productive for the `apache/opendal` repository, with significant progress on the modularization of services and layers as part of RFC-6828. Contributors have been actively splitting services and layers into standalone crates to improve maintainability and reduce complexity. Additionally, new features have been introduced, bugs have been addressed, and several discussions have shaped the project's future direction. ## Key Ongoing Projects - **Modularization of Services and Layers (RFC-6828)**: - #7078 by @PiyushXCoder: Refactors the `dtrace` layer into a separate crate. - #7079 by @PiyushXCoder: Splits the `mongodb` service into its own crate. - #7037 by @codxbrexx: Extracts the `gridfs` service into a standalone crate. - #7073 by @PsiACE: Refactors the `concurrent-limit` layer into a separate crate. - #7038 by @codxbrexx: Moves the `monoiofs` service into a new crate. - #7065 by @PiyushXCoder: Splits the `webdav` service into its own crate. - #7040 by @tao12345666333: Refactors the `hdfs` service into a separate crate. - **New Feature Development**: - #7076 by @fengys1996: Adds `list` support for the `mysql` service. - #7074 by @userzhy: Introduces user-defined metadata support for the `webdav` service. - #7071 by @mro68: Fixes directory path handling in the `gdrive` service to ensure trailing slashes. - #7068 by @userzhy: Adds user metadata support for the `upyun` service. - **Bug Fixes**: - #7072 by @PiyushXCoder: Ensures `content-length` is mandatory in `fs` service `list()` responses. - #7058 by @mro68: Fixes missing `size` and `modifiedTime` metadata in `gdrive` service `list()` operations. ## Priority Items - **Pull Requests Needing Immediate Attention**: - #7078 by @PiyushXCoder: Refactor `dtrace` layer into a separate crate. - #7079 by @PiyushXCoder: Split `mongodb` service into its own crate. - #7076 by @fengys1996: Add `list` support for `mysql` service. - #7074 by @userzhy: Add user-defined metadata support for `webdav`. - **Issues Requiring Attention**: - #7062 by @Xuanwo: Proposes making `content-length` mandatory in `list()` responses for all services. - #7069 by @Xuanwo: Suggests building a `HotpathLayer` for OpenDAL to optimize performance. ## Notable Discussions - **#6829**: The ongoing tracking issue for RFC-6828, which focuses on modularizing services and layers. Contributors such as @PiyushXCoder, @codxbrexx, and @tao12345666333 have been instrumental in driving this effort forward. - **#7032**: Discussion initiated by @clbarnes on why the filesystem scheme is `fs` instead of the more commonly recognized `file`. This led to the implementation of #7075, which adds `file` as an alias for `fs`. - **#7062**: A discussion led by @Xuanwo on making `content-length` a mandatory return value in `list()` operations to reduce confusion for users. ## Emerging Trends - **Modularization Push**: The repository is heavily focused on splitting services and layers into standalone crates, improving maintainability and enabling independent development of components. - **Enhanced Metadata Support**: Several services, including `webdav`, `upyun`, and `gdrive`, are being enhanced to support user-defined metadata and ensure consistent metadata handling. - **Community Engagement**: The project continues to see active contributions from a diverse group of contributors, including @PiyushXCoder, @codxbrexx, @tao12345666333, @userzhy, and @mro68. ## Good First Issues - **#6829**: Tracking issue for RFC-6828, which involves splitting services and layers into separate crates. This is a well-documented initiative with clear steps for new contributors. - **#6919**: Split the `rocksdb` service into its own crate. A straightforward task for contributors interested in modularization. - **#6908**: Extract the `mongodb` service into a standalone crate. A great opportunity to contribute to the core-split effort. - **#6934**: Refactor the `concurrent_limit` layer into its own crate. This task is approachable and provides a good introduction to the repository’s architecture. - **#6939**: Split the `logging` layer into a separate crate. A simple and well-defined task for new contributors. 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/7080 ---- This is an automatically sent email for [email protected]. To unsubscribe, please send an email to: [email protected]
