minor, provide dt_strf_ical() for timestamps in icalendar's format

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
draft, test simple printing system

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
hygiene, discard superfluous checks

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
minor, return NULL on 0-obint

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
test, adapt to missing .desc slot

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
minor, adapt eche's cmd_merge() to print .sum slot instead of uid

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
minor, extend echs_event_eq_p() to use both uids and sums for equality checks

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
minor, extend the evstrm base class by (optional) prntm() to print multiple instances of the same class

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
minor, provide predicates for nul/min/max instants

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
minor, precache mux events upon the first call to next_evmux()

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
major, rename merge->select and establish new merge command

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
test, provide regression test files for echse(1) merge command

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
fix, monthdays in dom bitint are off by one, fix up when printing

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
fix, in evrrul's many-items printer check the items for event equality before merging them into one

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
minor, factor out echs_event_t printing

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
minor, fill in missing uid fields in merged ical streams

Signed-off-by: Sebastian Freundt <hroptatyr@fresse.org>
Merge branch 'cmd/merge'

* cmd/merge:
  minor, fill in missing uid fields in merged ical streams
  minor, factor out echs_event_t printing
  fix, in evrrul's many-items printer check the items for event equality before merging them into one
  fix, monthdays in dom bitint are off by one, fix up when printing
  test, provide regression test files for echse(1) merge command
  major, rename merge->select and establish new merge command
  minor, precache mux events upon the first call to next_evmux()
  minor, provide predicates for nul/min/max instants
  minor, extend the evstrm base class by (optional) prntm() to print multiple instances of the same class
  minor, extend echs_event_eq_p() to use both uids and sums for equality checks
  minor, adapt eche's cmd_merge() to print .sum slot instead of uid
  test, adapt to missing .desc slot
  minor, return NULL on 0-obint
  hygiene, discard superfluous checks
  draft, test simple printing system
  minor, provide dt_strf_ical() for timestamps in icalendar's format