Pre-release

@jcupitt jcupitt released this Aug 20, 2018

Assets 3

Release candidate for the upcoming v8.7.0. Changes since rc1:

  • update radiance load from upstream
  • mapim could fail for float index images with coordinates out of int range
  • scale openexr alpha to 0 - 255
  • close input earlier, when we can [kleisauke]
  • add vips_object_get_args() for language bindings [kleisauke]

@jcupitt jcupitt released this Jul 25, 2018 · 28 commits to master since this release

Assets 5

Final pre-release for the upcoming libvips 8.7.0.

Changes since 8.6.5:

  • add magicksave, save image with libMagick [dlemstra]
  • remove jpeg thumbnail from EXIF if "jpeg-thumbnail-data" has been removed by
    user
  • hough_line scales width to 0 - 180, not 0 - 360
  • hough_line is 4x faster
  • hough_circle is 2x faster
  • add vips_sobel() and vips_canny() edge detectors
  • add vips_rotate() ... a convenience method for vips_similarity()
  • svgload was missing is_a [lovell]
  • better header sniffing for small files
  • drop incompatible ICC profiles before save
  • better hasalpha rules
  • create funcs always make MULTIBAND (ie. no alpha)
  • use O_TMPFILE, if available [Alexander--]
  • set "interlaced=1" for interlaced JPG and PNG images
  • add PDFium PDF loader
  • jpegload adds a jpeg-chroma-subsample field with eg. 4:4:4 for no
    chrominance subsampling.
  • tiffload, pdfload, magickload set VIPS_META_N_PAGES "n-pages" metadata item
  • add fontfile option to vips_text() [fangqiao]
  • add vips_transpose3d() -- swap major dimensions in a volumetric image
  • remove vips7 stuff from default API ... you must now #include it explicitly
  • added vips_argument_get_id() to fix derived classes on win32 [angelmixu]
  • fix compile with MSVC 2017 [angelmixu]
  • pdfload has a option for background
  • vips7 C++ interface defaults off
  • make members, getters and operators "const" in cpp API
  • composite has params for x/y position of sub-images [medakk]
  • add Mitchell kernel
  • pyramid builders have a choice of 2x2 shrinkers [harukizaemon]
  • add palette option to pngsave [felixbuenemann]
  • add basic nifti load/save support
  • support writing string-valued fields via libexif
  • paste in the test suite from pyvips
  • get EXIF tag names from tag plus ifd [@Nan619]
  • escape ASCII control characters in XML
  • magickload now sniffs some file types itself
Assets 5

The libvips binary vips-dev-w64-all-x.y.z.zip contains ALL the file format loaders that libvips supports, including some very minor ones, and a complete copy of ImageMagick. It can process many different file types, but it is also rather vulnerable to hacking.

The vips-dev-w64-web-x.y.z.zip build contains only file format loaders that have been carefully tested and which are commonly used on the web. It won't load formats like openslide (for example), but it should be much safer to use with untrusted input images.

Changes since 8.6.4:

  • fix a buffer overflow in the tiff reader [HongxuChen]

@jcupitt jcupitt released this Jun 13, 2018 · 2 commits to 8.6 since this release

Assets 5

The libvips binary vips-dev-w64-all-x.y.z.zip contains ALL the file format loaders that libvips supports, including some very minor ones, and a complete copy of ImageMagick. It can process many different file types, but it is also rather vulnerable to hacking.

The vips-dev-w64-web-x.y.z.zip build contains only file format loaders that have been carefully tested and which are commonly used on the web. It won't load formats like openslide (for example), but it should be much safer to use with untrusted input images.

Changes since 8.6.3:

  • better fitting of fonts with overhanging edges [Adrià]
  • revise C++ example [fangqiao]
  • strict round down on jpeg shrink on load [davidwood]
  • configure test for g++ 7.2 and composite.cpp
  • don't Ping in magickload, too unreliable
  • ensure WebP can add metadata when compiled with libwebpmux [lovell]
  • improve accuracy of vector path convolution [felixbuenemann]
Pre-release

@jcupitt jcupitt released this Jun 10, 2018 · 121 commits to master since this release

Assets 3

Since 8.6:

  • add magicksave, save image with libMagick [dlemstra]
  • remove jpeg thumbnail from EXIF if "jpeg-thumbnail-data" has been removed by user
  • hough_line scales width to 0 - 180, not 0 - 360
  • hough_line is 4x faster
  • hough_circle is 2x faster
  • add vips_sobel() and vips_canny() edge detectors
  • add vips_rotate() ... a convenience method for vips_similarity()
  • svgload was missing is_a [lovell]
  • better header sniffing for small files
  • drop incompatible ICC profiles before save
  • better hasalpha rules
  • create funcs always make MULTIBAND (ie. no alpha)
  • use O_TMPFILE, if available [Alexander--]
  • set "interlaced=1" for interlaced JPG and PNG images
  • add PDFium PDF loader
  • add @Format option to magickload
  • jpegload adds a jpeg-chroma-subsample field with eg. 4:4:4 for no chrominance subsampling.
  • tiffload, pdfload, magickload set VIPS_META_N_PAGES "n-pages" metadata item
  • add fontfile option to vips_text() [fangqiao]
  • add vips_transpose3d() -- swap major dimensions in a volumetric image
  • remove vips7 stuff from default API ... you must now #include it explicitly
  • added vips_argument_get_id() to fix derived classes on win32 [angelmixu]
  • fix compile with MSVC 2017 [angelmixu]
  • pdfload has a option for background

@jcupitt jcupitt released this Mar 8, 2018 · 15 commits to 8.6 since this release

Assets 7

The libvips binary vips-dev-w64-all-x.y.z.zip contains ALL the file format loaders that libvips supports, including some very minor ones, and a complete copy of ImageMagick. It can process many different file types, but it is also rather vulnerable to hacking.

The vips-dev-w64-web-x.y.z.zip build contains only file format loaders that have been carefully tested and which are commonly used on the web. It won't load formats like openslide (for example), but it should be much safer to use with untrusted input images.

  • the 8.6.3-1 windows builds fix a crash in libz configuation
  • use pkg-config to find libjpeg, if we can
  • better clean of output image in vips_image_write() fixes a crash writing twice to memory
  • better rounding behaviour in convolution means we hit the vector path more often
  • fix a crash if a delayed load failed [gsharpsh00ter]
  • icc_import attaches the fallback profile if it used it, making vipsthumbnail behaviour with untagged CMYK images saner

@jcupitt jcupitt released this Jan 31, 2018 · 23 commits to 8.6 since this release

Assets 5
  • vips_sink_screen() keeps a ref to the input image ... stops a rare race
  • fix a minor accidental ABI break in 8.6.0 -> 8.6.1 [remicollet]
  • fix read of plane-separate TIFFs with large strips [remicollet]
  • fix a C++ warning in composite.cpp [lovell]
  • remove number of images limit in composite
  • composite allows 1 mode ... reused for all joins
  • fix race in vips_sink() for threaded read of sequential images
Pre-release

@jcupitt jcupitt released this Jul 24, 2018

Assets 4
  • add magicksave, save image with libMagick [dlemstra]
  • dzsave to szi sets suffix correctly [martinweihrauch]
  • dzsave szi writes "scan-properties.xml"
  • add vips_image_(get|set)_image()
  • add openslideload option to attach all associated images as metadata
  • dzsave to szi will write all associated images

@jcupitt jcupitt released this Jan 3, 2018 · 31 commits to 8.6 since this release

Assets 5
  • fix mmap window new/free cycling
  • fix some compiler warnings
  • remove the 64-image limit on bandary operations
  • better version date [bmwiedemann]
  • bump wrapper script version [bgilbert]
  • fix a memleak on error during jpeg buffer write [lovell]
  • fix misspelling of IPTC as IPCT [lovell]
  • seq could be set on small images opened in random-access mode [aferrero2707]
  • fix small memleak in dzsave [lovell]
  • small speedup for rgb->g [lovell]

@jcupitt jcupitt released this Dec 8, 2017 · 351 commits to master since this release

Assets 5

See the install notes for guidance on which package to download.

Changes since 8.5

  • supports FITS images with leading non-image HDUs, thanks benepo
  • add vips_image_new_from_image() and vips_image_new_from_image1() ... make a
    constant image
  • add new_from_image() to Python as well
  • slight change to cpp new_from_image() to match py/C behaviour
  • vips_conv(), vips_compass(), vips_convsep() default to FLOAT precision
  • add FORCE resize mode to break aspect ratio
  • add vips_thumbnail_image()
  • better prefix guessing on Windows, thanks tumagonx
  • savers support a "page_height" option for multipage save
  • rename 'disc' as 'memory' and default off
  • add vips_find_trim(), search for non-background areas
  • remove lcms1 support, it had bitrotted
  • join tagged as seq
  • support tiffsave_buffer for pyramids, thanks bubba
  • thumbnail and vipsthumbnail have an option for rendering intent, thanks
    kleisauke
  • set file create time on Windows, thanks dlong500
  • remove python tests ... moved to pyvips test suite
  • vips7 and vips8 python bindings default to off ... use the new pyvips
    binding instead
  • better svgload: larger output, handle missing width/height, thanks lovell
  • add vips_gravity() ... embed, but with direction rather than position
  • vips_text() can autofit text to a box, thanks gargsms
  • add vips_composite() / vips_composite2(): merge a set of images with
    a set of blend modes
  • better gobject-introspection annotations, thanks astavale
  • vips_image_write() severs all links between images, when it can ... thanks
    Warren and Nakilon
  • vector path for convolution is more accurate and can handle larger masks
  • linear and cubic kernels for reduce are higher quality
  • added vips_value_set_blob_free()
  • "--size Nx" to vipsthumbnail was broken, thanks jrochkind
  • fix build with gcc 7
  • add vips_fill_nearest() ... fill pixels with nearest colour
  • add VIPS_COMBINE_MIN, a new combining mode for vips_compass()
  • vips_hist_find_indexed() now has a @combine parameter
  • vips_affine() and vips_similarity() have a "background" parameter
  • fix nasty jaggies on the edges of affine output, thanks chregu
  • add gif-delay, gif-comment and gif-loop metadata
  • add dispose handling to gifload
  • dzsave outputs extra right and bottom overlap-only tiles, for closer spec
    adherence
  • deprecate the "centre" option for vips_resize(): it's now always on
  • setting the EXIF data block automatically sets other image tags
  • add "extend" option to affine; resize uses it to stop black edges