icu4x icon indicating copy to clipboard operation
icu4x copied to clipboard

2.0 Beta release checklist items

Open Manishearth opened this issue 4 months ago • 0 comments

These are all the items from the release checklist and the graduation checklist that I think matter for ICU4X 2.0 beta in a way that cannot be resolved day-of release:

  • [ ] The crate should be almost fully documented
    • [ ] Almost every exported function should have docs coverage
    • [ ] There should be a crate-level example that illustrates a common use case for the component with the heading # Examples
    • [ ] All options and conditional code paths should have a corresponding docs test with the heading # Examples
  • [ ] The data structs should fully follow ZeroVec style
    • [ ] Deserialization should not have a "zero-copy violation" in the make-testdata test
    • [ ] Constructors should avoid allocating memory in the common case
    • [ ] Opaque blobs of data should be avoided if possible (instead use VarZeroVec, ZeroMap, etc.)
    • [ ] Data structs should not be panicky to load/deserialize and conform to data_safety.md
    • [ ] If any data structs use a large or unbounded number of data marker attributes, they are implemented in a way that reduces stack space, file size, and construction time, such as by having only a single variable-length field
  • [ ] The component should encourage i18n best practices
    • [ ] The component should produce correct results in all locales as generated by icu4x-datagen
    • [ ] Where applicable, the component should be consistent with ECMA-402 and UTS#35
    • [ ] Any gaps in i18n quality should be fixed, or, if that is not possible, they should have tracking issues and a concrete, resourced path forward. The intent is to not ship components with known i18n correctness problems and no plan to fix them in an upcoming release
    • [ ] The API design should be informally reviewed by someone else, who may be an ICU4X team member
  • [ ] There should be a completed changelog
  • [ ] We should go through ffi/capi/tests/missing_apis.txt and make note of glaring gaps, and ensure there is a clear path to filling them before the release.

These items need not be completed perfectly, as long as they are completed to some extent.

cc @sffc @robertbastian

Manishearth avatar Oct 01 '24 20:10 Manishearth