Open
Description
Feature Description
I am interested in helping release the first Ruby binding. Before release, I would happy to get OpenDAL Ruby binding to a demoable state.
Problem and Solution
The Ruby binding in OpenDAL implements several methods within the Operator
and Metadata
classes. I would like to see the following features added to the Ruby binding:
- Lister
- Basic IO class (similar to
File
in Python binding) - Capability
- Retry layer
- Operator:
- list
- create_dir
- delete
- rename
- remove_all
- copy
- open
- layer
With these features implemented, I could create a few examples in Ruby to share.
Additional Context
Other problems:
- The prevalent class loader, "Zeitwerk", will not load OpenDAL without additional configuration. Zeitwerk expects
lib/my_gem/version.rb
to defineMyGem::VERSION
, for example. - Fiber, Ruby's cooperative concurrency mechanism, has relatively low adoption. However, OpenDAL includes features that are only implemented asynchronously, which could pose a challenge when mapping them to Ruby's concurrency model.
Are you willing to contribute to the development of this feature?
- Yes, I am willing to contribute to the development of this feature.