From a2b2148e73f50bced268a69655bb12c9a845ff22 Mon Sep 17 00:00:00 2001 From: Dana Robinson <43805+derobins@users.noreply.github.com> Date: Tue, 5 Apr 2022 15:26:00 -0700 Subject: [PATCH] Adds release timeline to README.md (#1584) --- README.md | 20 +++++++++++++ doc/img/release-schedule.plantuml | 45 ++++++++++++++++++++++++++++++ doc/img/release-schedule.png | Bin 0 -> 16991 bytes 3 files changed, 65 insertions(+) create mode 100644 doc/img/release-schedule.plantuml create mode 100755 doc/img/release-schedule.png diff --git a/README.md b/README.md index 7e0c2819e1..8f770ed79f 100644 --- a/README.md +++ b/README.md @@ -69,6 +69,26 @@ use and configuration https://forum.hdfgroup.org/t/quickstart-guide-welcome-to-the-new-hdf-forum +RELEASE SCHEDULE +---------------- + +![HDF5 release schedule](doc/img/release-schedule.png) + +HDF5 does not release on a regular schedule. Instead, releases are driven by +new features and bug fixes, though we try to have at least one release of each +maintenance branch per year. Future HDF5 releases indicated on this schedule +are tentative. + +| Release | New Features | +| ------- | ------------ | +| 1.13.2 | VFD SWMR, Onion VFD, Selection I/O | +| 1.13.3 | Multi-Dataset I/O | +| 1.13.4 | Subfiling | + +This list of feature release versions is also tentative, and the specific release +in which a feature is introduced may change. + + SNAPSHOTS, PREVIOUS RELEASES AND SOURCE CODE -------------------------------------------- Periodically development code snapshots are provided at the following URL: diff --git a/doc/img/release-schedule.plantuml b/doc/img/release-schedule.plantuml new file mode 100644 index 0000000000..f5aa62a285 --- /dev/null +++ b/doc/img/release-schedule.plantuml @@ -0,0 +1,45 @@ +The release timeline was generated on PlantUML (https://plantuml.com) + +The current script: + +@startuml +title HDF5 Release Schedule + +projectscale monthly +Project starts 2021-01-01 + +[1.8] starts 2021-01-01 and lasts 114 weeks +[1.8.22] happens 2021-02-05 +[1.8.23] happens 2022-12-31 +[1.8.23] displays on same row as [1.8.22] +[1.8] is colored in #CC6677 + +[1.10] starts 2021-01-01 and lasts 114 weeks +[1.10.8] happens 2021-10-22 +[1.10.9] happens 2022-05-31 +[1.10.9] displays on same row as [1.10.8] +[1.10] is colored in #DDCC77 + +[1.12] starts 2021-01-01 and lasts 114 weeks +[1.12.1] happens 2021-07-01 +[1.12.2] happens 2022-04-30 +[1.12.2] displays on same row as [1.12.1] +[1.12] is colored in #88CCEE + +[1.13] starts 2021-01-01 and lasts 104 weeks +[1.13.0] happens 2021-12-01 +[1.13.1] happens 2022-03-02 +[1.13.2] happens 2022-06-31 +[1.13.3] happens 2022-08-31 +[1.13.4] happens 2022-10-31 +[1.13.1] displays on same row as [1.13.0] +[1.13.2] displays on same row as [1.13.0] +[1.13.3] displays on same row as [1.13.0] +[1.13.4] displays on same row as [1.13.0] +[1.13] is colored in #44AA99 + +[1.14] starts at 2022-12-31 and lasts 10 weeks +[1.14.0] happens at 2022-12-31 +[1.14] is colored in #AA4499 +@enduml + diff --git a/doc/img/release-schedule.png b/doc/img/release-schedule.png new file mode 100755 index 0000000000000000000000000000000000000000..c2ed24142b06ff9b8753f0d8ab53ab2728b59233 GIT binary patch literal 16991 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