------------------------------
What's new in libsixel-1.8 ?
------------------------------
* python: Fix broken python interface problem(#128), reported by @fd00.
* build: Introduce VPATH build support(#56), suggested by @tkelman.
* Security fix for CVE-2019-20205 (#127), integer overflow problem,
reported by @sleicasper.
* Security fix for CVE-2019-20056 (#126), assertion failure problem,
reported by @sleicasper.
* Security fix for CVE-2019-20094 (#125), heap overflow problem,
reported by @cuanduo.
* Security fix for #124, illegal longjump() call problem,
reported by @cuanduo.
* Serucity fix for #74 and #123, access violation problem,
reported by @HongxuChen and SuhwanSong.
* Security fix for #122, heap overflow problem,
reported by @SuhwanSong.
* Security fix for CVE-2019-20023(#117, #119, #120), memory leaks problem,
reported by @SuhwanSong and @gutiniao.
* Strip first flag check in LZW compression function for issue #118,
reported by @yoichi
* Security fix for CVE-2019-11024 (#85), recursive loop problem,
reported by @Loginsoft-Research.
* Security fix for #73, illegal memory access problem,
reported by @HongxuChen.
* Security fix for #89, core dumped issue,
reported by @niugx.
* Security fix for #107, large memory allocation problem,
reported by @cuanduo.
* Security fix for #114, heap-buffer-overflow problem,
reported by @SuhwanSong.
* Security fix for #116, heap-buffer-overflow problem,
reported by @SuhwanSong.
* Security fix for #118, heap-buffer-overflow problem,
reported by @SuhwanSong.
* Security fix for #121, heap-buffer-overflow problem,
reported by @gutiniao
* Security fix for #73, illegal memory access problem,
reported by @HongxuChen.
* Security fix for CVE-2018-19757 (#79), NULL pointer dereference problem,
reported by @nluedtke and fixed by @knok (#91, #94).
* Security fix for CVE-2018-19762 (#81), heap-based buffer overflow problem,
reported by @nluedtke and fixed by @knok (#92).
* Security fix for CVE-2018-19756 (#80), heap-based buffer over-read problem,
reported by @nluedtke and fixed by @knok (#93).
* Security fix for CVE-2018-19763 (#82), heap-based buffer over-read problem,
reported by @nluedtke and fixed by @knok (#95).
* Security fix for CVE-2018-19761, illegal address access, fixed by @knok (#96).
* Security fix for CVE-2018-19759, heap-based buffer over-read problem, fixed by @knok (#98).
* Security fix for CVE-2018-3753 (#83), infinite loop problem,
reported by @cool-tomato and fixed by @knok (#99).
* Security fix for CVE-2018-19759 (#102),
heap-based buffer over-read that will cause a denial of service.
reported and fixed by @YourButterfly. (#106)
* Security fix for CVE-2019-19635 (#103), heap-based buffer overflow,
reported and fixed by @YourButterfly. (#106)
* Security fix for CVE-2019-19636 (#104) and CVE-2019-19637 (#105), integer overflow problem.
reported and fixed by @YourButterfly. (#106)
* gif loader: check LZW code size (Issue #75), Thanks to @HongxuChen.
https://github.com/saitoha/libsixel/commit/7808a06b88c11dbc502318cdd51fa374f8cd47ee
* core: Fix a global-buffer-overflow problem (Issue #72), Thanks to @fgeek.
https://github.com/saitoha/libsixel/commit/c868b59ec89bdb24c42a0de89e5319a989076c66
* core: Fix unexpected hangs/performance issues (Issue #76), Thanks to @HongxuChen.
https://github.com/saitoha/libsixel/commit/88561b7a810017b91d26b6273323dde4b6f9b273
https://github.com/saitoha/libsixel/commit/2d3d9ffe8ab886b7bc670fd896d63c628436cc66
https://github.com/saitoha/libsixel/commit/c9363cd1d5929e1d721af9f09633061dfa8152fe
* core: Upgrade stb_image to 2.19.
* core: Introduce new dithering method, a_dither / x_dither (http://pippin.gimp.org/a_dither/).
Thanks to @hodefoting.
https://github.com/saitoha/libsixel/pull/53
* core: Fix wrong HLS color handling.
https://github.com/saitoha/libsixel/commit/0fb35d22e7ba4ed8bce3be42791e6b39c3187b89
* core: Improve quality of 15bpp(hi-color mode) dither.
https://github.com/saitoha/libsixel/commit/42f34283defea67c2d6294af4bd7dcb4fdf9f046
* core: Fix memory leak problems(CVE-2018-14072, CVE-2018-14073), Thanks to @fCorleone.
https://github.com/saitoha/libsixel/commit/f94bc6fec696abd77be275226f28409602bd1f27
https://github.com/saitoha/libsixel/commit/84ed0bc35e273ebd0a7fbc9d8f8669f7cf5f5612
* core: Fix some heap buffer-overflow problems, Thanks to @fgeek.
https://github.com/saitoha/libsixel/commit/6a19d99f95dafbbb50facf9267497afbcfba5731
https://github.com/saitoha/libsixel/commit/0d70e046437370c86696f2ed38ac0413855d98ce
https://github.com/saitoha/libsixel/commit/438188c1f8b418a38674364cf5c126ef3ed4166a
https://github.com/saitoha/libsixel/commit/ba21bb94d68f8bf7dc590400a707753f5d5c4709
* img2sixel: Allow a deferred clear code in a GIF format
GIF decoder must do nothing when the table is full.
See Section "DEFERRED CLEAR CODE IN LZW COMPRESSION" in
https://www.w3.org/Graphics/GIF/spec-gif89a.txt.
Thanks to @mame.
https://github.com/saitoha/libsixel/pull/63
* img2sixel: Marks -D option (read source images from stdin continuously) as deprecated
https://github.com/saitoha/libsixel/commit/9c8ffa62203899d866fc28e3ab7c6dfd9a0019b1
* Some bug fixes and minor improvements.
Thanks to @set135, @ttdoda, @tsutsui.
* Announcement for package maintainers:
Immutable tarball is provided, because GitHub auto-generated tarball may be not immutable.
https://github.com/saitoha/libsixel/releases/download/v1.8.0/libsixel-1.8.0.tar.gz
For details, see https://github.com/saitoha/libsixel/issues/64 .
------------------------------
What's new in libsixel-1.7 ?
------------------------------
* core: Upgrade stb_image to 2.12.
* core: Upgrade stb_image_write.h to v1.02.
* core: introduce canonical,fast decoder to prevent segmentation faults
* python: add row level API functions to python interface
* img2sixel: fix broken -S option
* img2sixel: fix broken animated GIF resizing feature
* example: add example/drawing
* example: add example/python
* converters: Makefile tweak from yacp(thanks to @fd00)
https://github.com/fd00/yacp/blob/896e9bd819b373e8e99fefcec12bd85c73e7f123/libsixel/libsixel-1.6.0-1bl1.src.patch
* packaging: fix for cygport compilation
------------------------------
What's new in libsixel-1.6 ?
------------------------------
* img2sixel: Add -R(--gri-limit) option.
* configure: Fix check for gdImageCreateFromPngPtr availability(thanks to @hattya).
* core: Upgrade stb_image to 2.10.
* core: Upgrade stb_image_write.h to v1.01.
* libsixel-config: Add --datarootdir option to libsixel-config.
* img2sixel: Solve encoder option confliction between -m/-e/-I/-b.
* core: Introduce new API for output object, sixel_output_set_gri_arg_limit().
* core: Add new API: sixel_encoder_encode_bytes().
------------------------------
What's new in libsixel-1.5 ?
------------------------------
* img2sixel: Add -k(--insecure) option.
* img2sixel: Add -B(--bgcolor) option.
* core: Introduce new API for dither object, sixel_dither_set_transparent().
* core: Respect transparency of paletted images(GIF/PNG).
* core: Introduce API set for generic image maniplation:
sixel_frame_get_pixels()
sixel_frame_ref()
sixel_frame_unref()
sixel_frame_init()
sixel_frame_get_pixels()
sixel_frame_get_palette()
sixel_frame_get_width()
sixel_frame_get_height()
sixel_frame_get_ncolors()
sixel_frame_get_pixelformat()
sixel_frame_get_transparent()
sixel_frame_get_multiframe()
sixel_frame_get_delay()
sixel_frame_get_frame_no()
sixel_frame_get_loop_no()
sixel_frame_strip_alpha()
sixel_frame_resize()
sixel_frame_clip()
* core: Introduce API set for load/write well-known image formats:
sixel_helper_load_image_file()
sixel_helper_write_image_file()
* core: Add more high level APIs (File-to-File conversion API):
sixel_encoder_create()
sixel_encoder_ref()
sixel_encoder_unref()
sixel_encoder_set_cancel_flag()
sixel_encoder_setopt()
sixel_encoder_encode()
sixel_decoder_create()
sixel_decoder_ref()
sixel_decoder_unref()
sixel_decoder_setopt()
sixel_decoder_decode()
* core: Introduce new APIs for semantic error handling:
sixel_helper_set_additional_message()
sixel_helper_get_additional_message()
sixel_helper_format_error()
* core: Introduce custom allocator APIs:
sixel_allocator_new()
sixel_allocator_ref()
sixel_allocator_unref()
sixel_allocator_malloc()
sixel_allocator_calloc()
sixel_allocator_realloc()
sixel_allocator_free()
* core: Add new constructor methods that returns SIXELSTATUS for semantic error handling:
sixel_output_new()
sixel_dither_new()
sixel_frame_new()
sixel_encoder_new()
sixel_decoder_new()
sixel_allocator_new()
sixel_output_new()
sixel_dither_new()
sixel_frame_new()
sixel_encoder_new()
sixel_decoder_new()
* core: Improve processing quality of loading paletted PNG images.
* core: Improve processing quality and performance of loading GIF images.
* core: Update stb_image.h to version 2.06
* core: Update stb_image_write.h to version 0.94
* Add Python interface
* Add Perl interface (alpha)
* Add PHP interface (alpha)
* Add Ruby interface (alpha)
* Add new build helper program: libsixel-config
* A lot of bug fixes and minor improvements.
Thanks to @msmhrt, @ttdoda, and @msmhrt.
------------------------------
What's new in libsixel-1.4 ?
------------------------------
* core: SIXEL encoder supports various pixel formats(thanks to @uobikiemukot).
* core: Supports high-color(15bpp output) mode(thanks to @arakiken).
* core: More high compressed output mode is introduced(thanks to @arakiken).
* core: Fix typoed API(thanks to @waywardmonkeys).
* core: Fix a minor performance bug(thanks to @arakiken).
* img2sixel: New option -D(--pipe-mode) is introduced.
With this option, img2sixel continuously read source images from
stdin.
* img2sixel: Introduce -I(--high-color) option, high-color(15bpp) output mode
is added(thanks to @arakiken).
* img2sixel: New option -E(--encode-policy) is added. high-compressed
mode(-E size) is introduced(thanks to @arakiken).
* img2sixel: New option -b(--builtin-palette) is added. built-in support of
VT-340 palette is added(thanks to @vrtsds).
* img2sixel: Performance inprovement for loading 8bit indexed PNG.
* tests: 'make test' achieves 90% coverage.
* A lot of bug fixes and minor improvements.
Thanks to @obache, @ttdoda, @vrtsds, and @msmhrt.
------------------------------
What's new in libsixel-1.3 ?
------------------------------
* Now libcurl is automatically linked to img2sixel.
If you don't want to build with libcurl, you should configure with
--without-libcurl option.
* Add libjpeg integration(linked automatically to img2sixel).
* Add libpng integration(linked automatically to img2sixel/sixel2png).
* Introduce -t(--palette-type) option.
img2sixel can output HLS paletted sixel with "-t hls".
Add new API sixel_output_set_palette_type.
* Introduce -v(--verbose) option.
* Add new API sixel_dither_set_body_only.
* Now img2sixel can load SIXEL as input data.
* Some bug fixes and minor improvements.
Thanks to @obache and @arakiken.
------------------------------
What's new in libsixel-1.2 ?
------------------------------
* Introduce GNU Screen penetration (-P) feature written by @arakiken.
This works with arakiken's GNU screen sixel branch
(screen-sixel, https://bitbucket.org/arakiken/screen/branch/screen).
* Introduce crop operation (-c) feature written by @arakiken.
This works with arakiken's w3m remoteimg branch
https://bitbucket.org/arakiken/w3m/branch/remoteimg
(w3m with "-sixel" option)
* Introduce -C (complexion score) option and implement complexion correction
feature. (discussion with @tsutsui)
* Introduce static image extraction from Gif animation (-S).
(discussion with @isaki68k)
* Introduce --enable-debug configure option.
* Add APIs for skipping DCS envelope
sixel_output_{get,set}_skip_dcs_envelope. (disscussion with @uobikiemukot)
* Some bug fixes and minor improvements.
Thanks to @elfring, @isaki68k, @knok, @mattn, @tsutsui, @waywardmonkeys
and @ttdoda.