pfalcon/uzlib

2.9, 3.0: Backward-incompatible changes

pfalcon opened this issue · 2 comments

Soft backward-incompatibility:

  • Public API structures and their fields are renamed to follow standard_c_naming_convention. However, compatibility defines are provided to lessen immediate impact on 3rd-party applications. The defines are guaranteed to be available at least for half a year, but may be removed in uzlib releases beyond that. The applications are recommended to update soon. The list of renames can be seen here: https://github.com/pfalcon/uzlib/blob/master/src/tinf_compat.h

Required changes:

  • destSize is replaced with dest_limit (#18)
  • All of 3 fields in struct uzlib_uncomp must be explicitly set by user: source, source_limit, source_read_cb.
  • dest_start must be set in addition to dest too for in-memory decompression mode.
  • uzlib_compress() API changes: d1bd481, 36d0a27

Ok, my idea was to batch any backward-incompatible API changes before 3.0, but that takes longer than expected, so let there be 2.9.x series with API in flux. Hope to cut a release soon.

Closing now.