Define project goals
- Dominant language
- Go
- Stars
- 691
- Forks
- 296
- Avg merge
- 2d 16h
- Merged PRs (30d)
- 11
Description
As this project is being restarted/reinvigorated I wanted to publicly discuss what I see as the overarching goals of the project. These are not items to tackle in a single PR or anything like that but every PR should be somehow supporting one of the goals. These are based on things I saw, both good and bad, as I read through and started tinkering with the current codebase.
* Improve the coverage of the public Ceph API. This work can be considered complete
when all of the current, non-deprecated, Ceph APIs are usable through go-ceph.
* Maintain that API coverage if and when the Ceph API is updated.
* ~Aim for 100% test coverage (according to golang native coverage tool)~
* Aim for coverage of all code paths, including error handling, that can be reasonably tested in the unit test framework
* Convert highly non-idiomatic APIs to more idiomatic equivalents and deprecate
the non idiomatic versions
* Document the API for all public types and functions.
* Work on testing/tooling to ensure no memory leaks when translating between
the Ceph API and Go.
* Handle both new and deprecated APIs such that the bindings can be used
with a (reasonable) set of Ceph versions.
* Define a release cycle and release process
Depending on how the discussion goes we might want to put this in a document or something like that. Are there any goals you think I'm missing? Disagree with any of the above? etc.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.