MesaLib-10.5.7 2015-06-07
"The current release includes over a dozen nouveau fixes (mostly targeting
nv30/nv40 era hardware), i965 patches and a crash fix common to all the
gallium dri modules."
MesaLib-10.5.6 2015-05-24
"This time around we have fixes from all over mesa - core mesa, driver
specific patches (i965, nouveau, freedreno), reentrancy improvements
in Clover (OpenCL), GLX and EGL loader patches, and Darwin build fixes."
4.2.7
* Fix Ruby 1.9.3
4.2.5
* Fixed MiniMagick::Image#details parsing
4.2.4
* Fixed detecting MiniMagick version
* Fix the private method 'format' called on mogrify for real
4.2.3
* Fixed a rush mistake
4.2.2
* Raise proper error in #cheap_info on invalid image
* Improved MiniMagick::Image#details parsing
* Attempt to solve private method 'format' called on mogrify
4.2.1
* Attempt to fix#279
4.1.1
* Fix MiniMagick::Image#composite defaulting to JPG extension. The default is
now the extension of the base image, the one on which composite is called.
## RMagick 2.15.2
- GitHub repository moved back to github.com/rmagick/rmagick - @wurde, @vassilevsky
## RMagick 2.15.1
- Fix loop in linked list in `ImageList` methods => they no longer hang - @u338steven
RMagick 2.15.0
o Ability to remove alpha channel - @ollie
o C local variables guarded against GC to avoid segfaults - @u338steven
o trace_proc protected with a mutex to avoid segfaults - @u338steven
RMagick 2.14.0
o RMagick.rb moved to deprecated directory - @mockdeep
o Better ImageMagick feature detection - @bf4
o Prevent compilation failures if prefix is an empty string - @voxik
o SplineInterpolatePixel preprocessor check removed - @joshk
o Make error format a string literal - @mtasaka
o Automatically set ARCHFLAGS on OS X - @u338steven
o Fixed 'rmagick/version' require failure - @u338steven
o Fixed escaping of '%' in Draw#get_type_metrics - @mkluczny
o Silence warnings on Ruby 2.2 when comparing Enums - @meanphil
o Multiple test suite improvements - @mockdeep, @bf4
o Ruby source code formatting with RuboCop - @vassilevsky
Release 3.17.0 adds many improvements for ICO, TIFF, PNG, HDR, TGA, GIF,
RAW, JXR, JP2, Exif plugins. It comes with new conversion functions for
RGBA16/RGBAF formats, as well as new functions used to deal with external
pixel buffers (ConvertFromRawBitsEx, CreateView). Other useful added
functions are ReslaleRect, GetMemorySize, SetMetadataKeyValue and the
FIQ_LFPQUANT quantizer algorithm.
The library has been updated with the new LibPNG (1.6.16), LibTIFF (4.0.4),
LibRaw (0.17.a1), LibWebP (0.4.2), OpenEXR (2.2.0).
FreeImage is also distributed with updated VB6, Delphi and C++ wrappers.
It is a GLib 2.44 support release.
=== Changes
==== Ruby/GLib2
Improvements
Supported GLib 2.44.
[GitHub#361][Reported by Benjamin Maisano]
=== Thanks
Benjamin Maisano
MesaLib-10.5.5 2015-05-11
"This release includes a selection of i965 and nouveau driver fixes. Everyone
using a gallium driver (r300, r600 and others) is also encouraged to update."
MesaLib-10.5.4 2015-04-24
"This release includes fixes for the mesa state-tracker used by all the
gallium drivers, a drirc workaround for Second Life, plus i965 fixes."
The package provides an interface to create portable,
JavaScript driven PDF animations from sets of graphics files or
from inline graphics, such as LaTeX picture environment,
PSTricks or pgf/TikZ generated pictures, or just from typeset
text.
Mfpic is a scheme for producing pictures from (La)TeX commands.
Commands \mfpic and \endmfpic (in LaTeX, the mfpic environment)
enclose a group in which drawing commands may be placed. The
commands generate a Meta-language file, which may be processed
by Metapost (or even Metafont). The resulting image file will
be read back in to the document to place the picture at the
point where the original (La)TeX commands appeared. Note that
the ability to use Metapost here means that the package works
equally well in LaTeX and PDFLaTeX.
PicTeX is an early, and very comprehensive drawing package,
that mostly draws by placing myriads of small dots to make up
pictures. It has a tendency to run out of space, most
especially of allowable dimensions registers; packages m-pictex
and pictexwd deal with the register problem, in different ways.
Note that full documentation may be bought via the PC-TeX site,
though a command summary is available as free software.
Alternatively, a front-end package such as mathsPiC, which
covers all of PicTeX and has a complete and free manual, could
be used.
The Plain TeX graphics package is mostly a thin shell around
the LaTeX graphicx and color packages, with support of the
LaTeX-isms in those packages provided by miniltx (which is the
largest part of the bundle). The bundle also contains a file
"picture.tex", which is a wrapper around the autopict.sty, and
provides the LaTeX picture mode to Plain TeX users.
display/nr-filter-slot.cpp: In constructor 'Inkscape::Filters::FilterSlot::FilterSlot(Inkscape::DrawingItem*, Inkscape::DrawingContext*, Inkscape::DrawingContext&, const Inkscape::Filters::FilterUnits&)':
display/nr-filter-slot.cpp:38: internal compiler error: in add_phi_arg, at tree-phinodes.c:391
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.4/README.Bugs> for instructions.
make[3]: *** [display/nr-filter-slot.o] Error 1
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45709
ICE is present in 4.3 and 4.4.4. It is meant to be fixed in gcc 4.4.5
but apparently not the "gcc version 4.4.5" that comes with some versions
of Ubuntu, because it's actually gcc 4.4.4 with Ubuntu's custom(ary)
sprinkling of poor judgement.
ICE is fixed in GCC 4.5.2 or any version of 4.6 and on, so that's a safe
minimum requirement.
Apologies in advance for any fallout. I have tested this as extensively
as I could in wip but the fact is we were 5 years and 50+ releases behind so
there will undoubtably still be issues.
Users of software rendering should see a nice performance boost with this
package as it now comes with the llvmpipe software rasterizer.
Users who currently enjoy working DRI1 rendering with X11_TYPE=modular should
switch to x11/modular-xorg-server112 now as x11/modular-xorg-server will
from now on only support DRI2 and up.
New features in MesaLib 10.5:
Mesa 10.5.0 implements the OpenGL 3.3 API
GL_ARB_framebuffer_sRGB on freedreno
GL_ARB_texture_rg on freedreno
GL_EXT_packed_float on freedreno
GL_EXT_polygon_offset_clamp on i965, nv50, nvc0, r600, radeonsi, llvmpipe
GL_EXT_texture_shared_exponent on freedreno
GL_EXT_texture_snorm on freedreno
Changes in MesaLib 10.5:
Removed support for GCC versions earlier than 4.2.0.
New features in MesaLib 10.4:
GL_ARB_conditional_render_inverted on nv50
GL_ARB_sample_shading on r600
GL_ARB_texture_view on nv50, nvc0
GL_ARB_clip_control on nv50, nvc0, r300, r600, radeonsi, llvmpipe, softpipe
GL_KHR_context_flush_control on all drivers
Changes in MesaLib 10.4:
The environment variable GALLIUM_MSAA that forced a multisample GLX visual
was removed.
New features in MesaLib 10.3:
GL_ARB_ES3_compatibility on nv50, nvc0, r600, radeonsi, softpipe, llvmpipe
GL_ARB_clear_texture on i965
GL_ARB_compressed_texture_pixel_storage on all drivers
GL_ARB_conditional_render_inverted on i965, nvc0, softpipe, llvmpipe
GL_ARB_derivative_control on i965, nv50, nvc0, r600
GL_ARB_draw_indirect on nvc0, radeonsi
GL_ARB_explicit_uniform_location (all drivers that support GLSL)
GL_ARB_fragment_layer_viewport on nv50, nvc0, llvmpipe, r600
GL_ARB_gpu_shader5 on i965/gen7, nvc0
GL_ARB_multi_draw_indirect on nvc0, radeonsi
GL_ARB_sample_shading on radeonsi
GL_ARB_seamless_cubemap_per_texture on i965, llvmpipe, nvc0, r600, radeonsi,
softpipe
GL_ARB_stencil_texturing on nv50, nvc0, r600, and radeonsi
GL_ARB_texture_barrier on nv50, nvc0, r300, r600, radeonsi
GL_ARB_texture_compression_bptc on i965/gen7+, nvc0, r600/evergreen+, radeonsi
GL_ARB_texture_cube_map_array on radeonsi
GL_ARB_texture_gather on r600, radeonsi
GL_ARB_texture_query_levels on nv50, nvc0, llvmpipe, r600, radeonsi, softpipe
GL_ARB_texture_query_lod on r600, radeonsi
GL_ARB_viewport_array on nvc0
GL_AMD_vertex_shader_viewport_index on i965/gen7+, r600
GL_OES_compressed_ETC1_RGB8_texture on nv30, nv50, nvc0, r300, r600,
radeonsi, softpipe, llvmpipe
GLX_MESA_query_renderer on nv30, nv50, nvc0, r300, r600, radeonsi, softpipe,
llvmpipe
A new software rasterizer driver (kms_swrast_dri.so) that works with DRM
drivers that don't have a full-fledged GEM (such as qxl or simpledrm)
Distribute the Khronos GL/glcorearb.h header file.
Changes in MesaLib 10.3:
Removed support for the GL_ATI_envmap_bumpmap extension
The hacky --enable-32/64-bit is no longer available in configure. To build
32/64 bit mesa refer to the default method recommended by your distribution
New features in MesaLib 10.2:
GL_ARB_buffer_storage on i965, nv30, nv50, nvc0, r300, r600, and radeonsi
GL_ARB_multi_bind on all drivers
GL_ARB_sample_shading on nv50 (GT21x only), nvc0
GL_ARB_separate_shader_objects (desktop OpenGL) and
GL_EXT_separate_shader_objects (OpenGL ES 2.0 and 3.0) on all drivers
GL_ARB_stencil_texturing on i965/gen8+
GL_ARB_texture_cube_map_array on nv50 (GT21x only)
GL_ARB_texture_gather on nv50 (GT21x only), nvc0
GL_ARB_texture_query_lod on nv50 (GT21x only), nvc0
GL_ARB_texture_view on i965/gen7
GL_ARB_vertex_type_10f_11f_11f_rev on nv50, nvc0, radeonsi
GL_ARB_viewport_array on nv50, r600
GL_INTEL_performance_query on i965/gen5+
Changes in MesaLib 10.2:
Renamed --with-llvm-shared-libs to --enable-llvm-shared-libs
Split libxatracker.so into a standalone library which can be used with any
gallium driver.
New features in MesaLib 10.1:
GL_ARB_draw_indirect on i965.
GL_ARB_clear_buffer_object
GL_ARB_viewport_array on i965.
GL_ARB_map_buffer_alignment on all drivers that did not previously support it.
GL_AMD_shader_trinary_minmax.
GL_EXT_framebuffer_blit on r200 and radeon.
Reduced memory usage for display lists.
OpenGL 3.3 support on nv50, nvc0, r600 and radeonsi
Changes in MesaLib 10.1:
Removed support for the GL_MESA_texture_array extension. This extension
enabled the use of texture array with fixed-function and assembly fragment
shaders. No applications are known to use this extension.
New features in MesaLib 10.0:
GL_AMD_seamless_cubemap_per_texture on i965.
GL_ARB_conservative_depth on i965.
GL_ARB_texture_gather on i965.
GL_ARB_texture_query_levels on i965.
GL_ARB_texture_mirror_clamp_to_edge.
GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, and
GL_ARB_transform_feedback_instanced on i965/Gen7 (with appropriate kernel
support).
GL_ARB_sample_shading on i965.
GL_ARB_shader_atomic_counters on i965.
GL_ARB_vertex_attrib_binding
GL_ARB_vertex_type_10f_11f_11f_rev on i965 and r600g
GL_KHR_debug
GLX_MESA_query_renderer
Changes in MesaLib 10.0:
Removed X.Org state tracker (unmaintained and broken)
Removed the video-accel r300 targets
Removed the video-accel softpipe targets
New features in MesaLib 9.2:
GL_ARB_shading_language_420pack in all drivers that support GLSL 1.30.
GL_ARB_texture_buffer_range
GL_ARB_texture_multisample
GL_ARB_texture_storage_multisample
GL_ARB_texture_query_lod
GL_ARB_texture_storage on radeon, r200, and nouveau
GL_EXT_discard_framebuffer in all OpenGL ES (all versions) drivers
GL_EXT_framebuffer_multisample_blit_scaled on i965
Added new freedreno gallium driver
OSMesa interface for gallium llvmpipe/softpipe drivers
Gallium Heads-Up Display (HUD) feature for performance monitoring
Added support for UVD (2.2 and 3.0) video decoding on r600g and radeonsi
through VDPAU (requires Kernel 3.10 or later)
Changes in MesaLib 9.2:
Removed d3d1x state tracker (unused, unmaintained and broken)
Removed GL_EXT_clip_volume_hint because no driver had enabled it since 2007.
Removed GL_MESA_resize_buffers because it was only really implemented by
the (unsupported) GDI driver.
GL_EXT_separate_shader_objects has been removed from all Gallium drivers,
because it disallows a critical GLSL shader optimization.
GL_ARB_separate_shader_objects doesn't have this issue.
i965 Gen6+ requires Kernel 3.6 or later. (92d2f5a)
New features in MesaLib 9.1:
GL_ANGLE_texture_compression_dxt3
GL_ANGLE_texture_compression_dxt5
GL_ARB_ES3_compatibility
GL_ARB_internalformat_query
GL_ARB_map_buffer_alignment
GL_ARB_shading_language_packing
GL_ARB_texture_buffer_object_rgb32
GL_ARB_texture_cube_map_array
GL_EXT_color_buffer_float
GL_OES_depth_texture_cube_map
OpenGL 3.1 core profile support on Radeon HD2000 up to HD6000 series
Multisample anti-aliasing support on Radeon X1000 series
OpenGL ES 3.0 support on Intel HD Graphics 2000, 2500, 3000, and 4000
Changes in MesaLib 9.1:
Removed VAAPI state tracker (unmaintained and broken)
Removed i965's broken hardware implementation of GL_NV_vertex_program
Removed swrast support for GL_NV_vertex_program
Removed swrast support for GL_NV_fragment_program
Removed OpenVMS support (unmaintained and broken)
Removed makedepend build dependency
New features in MesaLib 9:
Added new Gallium3D - nv30 driver
Added new Gallium3D - radeonsi driver
Added OpenCL state tracker Clover
Completed VDPAU state tracker (video decoding support is currently limited
to MPEG1 and MPEG2)
GL_ARB_base_instance
GL_ARB_blend_func_extended
GL_ARB_debug_output
GL_ARB_invalidate_subdata - Currently a "no-op" implementation. This
extension is always enabled in all drivers.
GL_ARB_shader_bit_encoding
GL_ARB_texture_buffer_object
GL_ARB_timer_query
GL_ARB_transform_feedback3
GL_ARB_transform_feedback_instanced
GL_ARB_uniform_buffer_object
GL_EXT_unpack_subimage for ES 2.0
GL_EXT_read_format_bgra for ES 1.1 and 2.0
GL_EXT_texture_rg for ES 2.x
GL_NV_read_buffer for ES 2.0
GLX_ARB_create_context_robustness
EGL_KHR_create_context
EGL_KHR_surfaceless_context - This replaces the
EGL_KHR_surfaceless_{gles1,gles2,opengl} extensions that were never
approved by Khronos.
EGL_EXT_create_context_robustness
Changes in Mesalib 9:
The legacy/static Makefile system (ex: 'make linux-dri') has been removed.
The two supported build methods are now autoconf/automake and SCons.
Removed support for GL_ARB_shadow_ambient extension
Removed Gallium3D - nvfx driver (use nv30 instead)
libGLU has been moved into its own repository
New features in MesaLib 8:
GL_ARB_ES2_compatibility (r300g, r600g)
GL_ARB_depth_buffer_float (r600g)
GL_ARB_vertex_type_2_10_10_10_rev (r600g)
GL_ARB_texture_storage (gallium drivers and swrast)
GL_EXT_packed_float (i965)
GL_EXT_texture_array (r600g, i965)
GL_EXT_texture_shared_exponent (i965)
GL_NV_fog_distance (all gallium drivers, nouveau classic)
GL_NV_primitive_restart (r600g)
GL_OES_EGL_image_external (gallium drivers)
GL_OES_compressed_ETC1_RGB8_texture (softpipe, llvmpipe)
ARB_texture_rgb10_a2ui (softpipe, r600g)
Many updates to the VMware svga Gallium driver
Changes in MesaLib 8:
Removed all DRI drivers that did not support DRI2. Specifically, i810,
mach64, mga, r128, savage, sis, tdfx, and unichrome were removed.
Removed support for BeOS.
Removed the obsolete (and unmaintained) Windows "gldirect" and "ICD" drivers.
Removed the linux-fbdev software driver.
Removed all remnants of paletted texture support. As required by desktop
OpenGL, GL_COLOR_INDEX data can still be uploaded to a color (e.g., RGBA)
texture. However, the data cannot be stored internally as color-index.
Removed support for GL_APPLE_client_storage extension.
Removed the classic Mesa r300 and r600 drivers, which are superseded by the
gallium drivers for this hardware.
Removed the dead Gallium i965, cell and failover drivers, which were either
broken and with nobody in sight to fix the situation or deprecated.
This is a very large change, and incorporates the 4.8, 4.10, and 4.12 major
Xfce releases since 4.6.2, our previous pkgsrc release. For more information
about the thousands of changes in each major release since then, please see:
Xfce 4.12 announcement:
http://www.xfce.org/about/news
Xfce 4.12 tour:
http://www.xfce.org/about/tour
Xfce 4.10 announcement:
http://www.xfce.org/about/news/?post=1335571200
Xfce 4.10 tour:
http://www.xfce.org/about/tour410
Xfce 4.8 announcement:
http://www.xfce.org/about/news/?post=1295136000
Xfce 4.8 tour:
http://www.xfce.org/about/tour48
The pkgsrc changes since then are:
New packages:
archivers/xfce4-thunar-archive
graphics/elementary-xfce-icon-theme
mail/xfce4-mailwatch-plugin
misc/xfce4-time-out-plugin
multimedia/xfce4-thunar-media-tags
sysutils/xfce4-mount-plugin
sysutils/xfce4-taskmanager
sysutils/xfce4-thunar-vcs
sysutils/xfce4-verve-plugin
x11/xfce4-garcon
x11/xfce4-notifyd
x11/xfce4-tumbler
x11/xfce4-whiskermenu-plugin
Renamed packages:
devel/xfconf to devel/xfce4-conf
x11/libxfce4menu to x11/libxfce4ui
x11/xfce4-screenshooter-plugin to x11/xfce4-screenshooter
Updated packages:
audio/xfce4-mixer
audio/xfce4-xmms-plugin
devel/xfce4-dev-tools
editors/xfce4-mousepad
graphics/ristretto
meta-pkgs/xfce4-extras
meta-pkgs/xfce4
misc/xfce4-weather-plugin
multimedia/xfce4-mpc-plugin
net/xfce4-wavelan-plugin
sysutils/xfce4-appfinder
sysutils/xfce4-battery-plugin
sysutils/xfce4-cpugraph-plugin
sysutils/xfce4-diskperf-plugin
sysutils/xfce4-fsguard-plugin
sysutils/xfce4-genmon-plugin
sysutils/xfce4-netload-plugin
sysutils/xfce4-quicklauncher-plugin
sysutils/xfce4-systemload-plugin
sysutils/xfce4-thunar
sysutils/xfce4-xarchiver
sysutils/xfce4-xkb-plugin
textproc/xfce4-dict-plugin
time/xfce4-datetime-plugin
time/xfce4-orage
time/xfce4-timer-plugin
wm/xfce4-wm-themes
wm/xfce4-wm
x11/libxfce4gui
x11/libxfce4util
x11/xfce4-clipman-plugin
x11/xfce4-desktop
x11/xfce4-exo
x11/xfce4-eyes-plugin
x11/xfce4-gtk2-engine
x11/xfce4-notes-plugin
x11/xfce4-panel
x11/xfce4-places-plugin
x11/xfce4-session
x11/xfce4-settings
x11/xfce4-terminal
Removed packages:
sysutils/xfce4-volman
x11/xfce4-utils
This is based on a huge amount of work by the NetBSDfr team and Youri Mouton,
who takes over as MAINTAINER, and has been tested by Youri on a large number
of platforms prior to commit. A massive thanks to them. Any issues with the
import are mine alone as the committer-by-proxy.
package is built independently now.
Bump PKGREVISON.
The commit message in MesaLib read:
date: 2015-01-29 23:35:43 +0100; author: nat; state: Exp;
Fix segfaults and crashing with applications that use libGLU.
Alan Coopersmith (3):
configure: Drop AM_MAINTAINER_MODE
autogen.sh: Honor NOCONFIGURE=1
xgc 1.0.5
Christian Weisgerber (1):
Remove include of Version 7 <sys/timeb.h> header
Julien Cristau (1):
configure: look for gram.c in $srcdir
Changelog:
2015-04-05 Hayaki Saito <user@zuse.jp>
* converters/stb_image.h: Fix an existing bug in stb_image v1.41 of building
color palette, reported by @msmhrt (for Issue #41)
Set INSTALLATION_PREFIX to allow this to co-exist with graphics/MesaLib.
This package is here to allow x11/modular-xorg-server112 to find
dri drivers, which it should pick up from /usr/pkg/MesaLib7/lib/dri.
Version 2.40.9
- Fixed bgo#738367 - V/v/H/h commands in path elements were not
working. Patch by Andrea Griffini.
- Fixed bgo#605875 - Gaussian-blurred objects were sometimes missing.
Based on a patch by Eduard Braun.
- Fixed bgo#710163 - use _wfullpath() on Windows when canonicalizing
filenames. Patch by LRN.
Epoxy is a library for handling OpenGL function pointer management for you.
It hides the complexity of dlopen(), dlsym(), glXGetProcAddress(),
eglGetProcAddress(), etc. from the app developer, with very little knowledge
needed on their part.
Like the graphics/glu update, this makes glut independent of MesaLib.
This is MesaGLUT-7.9.2 base, with patches from FDO git to add autoconf
glue, that brings it to 8.0.1.
pkgsrc change: use libtool instead of glut's "mklib" shellscript.
Mar. 14, 2015 - Version 9.90 (production release)
- Added config_files/picasa_faces.config to the distribution (thanks StarGeek)
- Added a few new Minolta/Sony and Nikon lenses (thanks LibRaw)
- Added new Canon and Sigma lenses (thanks Niels Kristian Bech Jensen)
- Decode Nikon D810 custom settings (thanks Warren Hatch)
- Decode a few new Nikon tags
- Fixed superfluous "Open '' failed" warning which could occur in Windows
- Fixed problem reading multi-valued Microsoft Xtra tags
- Fixed problem on Windows using -overwrite_original_in_place with Unicode
file names
Mar. 7, 2015 - Version 9.89
- Added some new Minolta/Sony LensType values (thanks Jos Roost and LibRaw)
- Fixed Windows case-sensitivity and sort-order problems when using wildcards
in file names on the command line
- API Changes:
- Added UserParam option
Feb. 28, 2015 - Version 9.88
- Decode a few more ID3 tags
- Improved decoding of some Pentax tags
- Extended -list and -listw options to include flattened tags
- Patched to recognize ID3v2.3 tags in ID3v2.4 metadata and visa versa
- Patched byte ordering problems with Nikon FileInfo tags for the D5500
- Fixed bug where other groups were ignored when multiple groups were
specified when writing and one of those groups was a specific EXIF IFD (eg.
-ExifIFD:Time:all= ignored the Time constraint)
Feb. 24, 2015 - Version 9.87
- Added a number of new Sigma LensType values (thanks LibRaw)
- Fixed bug introduced in the Windows version of 9.85 where "*.*" on the
command line matched "." and "..", causing unexpected files to be processed
- Fixed problem extracting some Microsoft tags from MP4/MOV videos
Feb. 22, 2015 - Version 9.86
- Added check for valid filename encoding when using wildcards in Windows
- Added support for Sigma X3F version 4.1 images
- Added a number of new Sigma LensType values (thanks LibRaw and Niels
Kristian Bech Jensen)
- Added a new Canon LensType (thanks Michael Tapes)
- Added a new Leica LensType (thanks LibRaw)
- Added a new Olympus CameraType
- Decode a couple more FujiFilm RAF tags (thanks Frank Markesteijn)
- Always preserve FileCreateDate when writing on Windows if Win32::API and
Win32API::File are available
- Changed names of and properly decode new Olympus Pitch/Roll tags
- Changed rounding method for rational values in an attempt to fix failed
tests on FreeBSD 10.1 and Perl 5.20.1 with uselongdouble enabled
- Resolved issue with duplicate SamsungModelID values
Feb. 14, 2015 - Version 9.85
- Added support for Ricoh WG-M1 maker notes
- Added a few new Pentax LensType's (thanks Louis Granboulan)
- Decode a couple of new Pentax tags (thanks Louis Granboulan)
- Enhanced JSON import so an object with a missing SourceFile has the same
effect as a SourceFile of "*".
- Changed MIMEType for executable script files
- Patched remaining known problems involving Windows Unicode file names
(creating directories and using wildcards should now work)
- Patched long-standing Windows daylight-savings-time bug, and removed the
dependency on Win32API::File::Time (reported file times should now be
correct, but may disagree with the Windows "dir" command)
- Fixed decoding of FLIR:PlanckO (thanks Tomas)
Feb. 10, 2015 - Version 9.84
- Added a new CanonModelID
- Added a new Pentax LensType and PentaxModelID (thanks Louis Granboulan)
- Fixed bug introduced in 9.83 that broke the -P option on Windows
Feb. 7, 2015 - Version 9.83
- Added support for new IPTC Extension version 1.2 XMP tags
- Added support for Leica X (Typ 113) maker notes
- Added read support for ChartTIFF tags
- Added a few new Canon LensType values (thanks Norbert Wasser for two)
- Added a few new Nikon LensID's (thanks David Puschel, Robert
Rottmerhusen and Niels)
- Added a number of new Olympus ArtFilterEffect values (thanks Phiber)
- Added some new Olympus AspectRatio values (thanks Herb)
- Added a new PentaxModelID
- Added a new Olympus CameraType (thanks LibRaw)
- Added new values for various Canon tags
- Decode a number of new Sony tags (thanks Jos Roost)
- Decode a couple more Nikon ShootingMode bits (thanks Leegong)
- Updated to Nov 2014 XMP specification
- Patched incompatibility between Windows Unicode update and Perl 5.005
Jan. 15, 2015 - Version 9.82
- Added support for Windows Unicode names for input CSV and JSON files
- Decode a number of new Sony tags (thanks Jos Roost)
- Improved checks and warnings for invalid file name encoding on Windows
- Improved Polish translations (thanks Kacper Perschke)
- Changed exif2xmp.args and xmp2exif.args files (available in the full
ExifTool distribution) to avoid using non-standard XMP namespaces
- Fixed problem setting file times for Windows Unicode file names
Jan. 12, 2015 - Version 9.81
- Added Composite:Megapixels tag
- Added a few new Nikon LensID's (thanks Robert Rottmerhusen)
- Fixed problem in Windows using Unicode file names with the -o option
Jan. 7, 2015 - Version 9.80
- Added a few new Canon and Minolta/Sony LensType values (thanks LibRaw)
- Added a few new CanonModelID's
- Decode a few new Canon tags
- Suppress warning for Canon 7DmkIII VignettingCorrUnknown2 data format
- Fixed runtime warning when piping an MOI file to exiftool
- Fixed bug in -fileOrder option introduced in version 9.79
- Fixed bug using Windows Unicode file names with -tagsFromFile option
Jan. 4, 2015 - Version 9.79 - Windows Unicode file names
- Added support for Windows Unicode file names (but note that support still
isn't complete -- some things like setting FileModifyDate or creating a
directory with a Unicode name still need work)
- Added read support for MOI files
- Added a few more Canon LensType's (thanks LibRaw and Martin)
- Added a new Nikon LensID
- Added a couple of new Panasonic ImageQuality values
- Decode a new FujiFilm tag and added a new FilmMode value
- Allow zero-length group names to be specified (which provides a method to
directly access the 0th copy of a duplicate tag using the empty family 4
group name by specifying "4:TAG")
- Fixed invalid Samsung tag name
- Fixed writing of XMP:ExposureCompensation with fractional values
- API Changes:
- Added CharsetFileName option
Dec. 13, 2014 - Version 9.78
- Added a new Nikon LensID and a new Canon LensType (thanks LibRaw)
- Decode a new unknown atom in Canon MOV videos
- Decode a number of new Sony tags (thanks Jos Roost)
- Decode a number of new Samsung tags
- Improved MakerNote compatibility when writing by adding the same amount of
padding after the MakerNote IFD as that written by the specific camera model
- Changed the DNG BaselineExposureOffset to a signed rational (contrary to the
DNG 1.4 specification, which specifies an unsigned RATIONAL, but obviously
Adobe meant for it to store negative values)
- Changed name of new QuickTime Rating tag to RatingPercent
- Fixed problem introduced in 9.64 where multiple list values from some tags
in ZIP-based files were extracted as separate tags instead of as a list when
the -struct option was used, and implemented a different patch to just
suppress the structure warnings without changing the 9.63 behaviour
- Fixed problem where some EXIF information in MOV videos could be corrupted
when writing
Nov. 28, 2014 - Version 9.77
- Added FilePath tag (generated only if specified and Cwd is available)
- Added a new Panasonic ShootingMode (thanks Horst Wandres)
- Added a new FujiFilm WhiteBalance value
- Added a new QuickTime vendor ID
- Added a new Pentax RawDevelopmentProcess value
- Decode a few new QuickTime tags
- Decode some new tags in Kodak SP360 MP4 videos
- Fixed bug that could cause a runtime error when parsing a Canon EOS 40D
image which had been edited by Nikon Capture software
- Fixed bug which could produce invalid XML in the -X output when -struct was
also used
Version 1.6.17beta01 [January 29, 2015]
Removed duplicate PNG_SAFE_LIMITS_SUPPORTED handling from pngconf.h
Corrected the width limit calculation in png_check_IHDR().
Removed user limits from pngfix. Also pass NULL pointers to
png_read_row to skip the unnecessary row de-interlace stuff.
Added testing of png_set_packing() to pngvalid.c
Regenerated configure scripts in the *.tar distributions with libtool-2.4.4
Implement previously untested cases of libpng transforms in pngvalid.c
Fixed byte order in 2-byte filler, in png_do_read_filler().
Made the check for out-of-range values in png_set_tRNS() detect
values that are exactly 2^bit_depth, and work on 16-bit platforms.
Merged some parts of libpng-1.6.17beta01 and libpng-1.7.0beta47.
Added #ifndef __COVERITY__ where needed in png.c, pngrutil.c and
pngset.c to avoid warnings about dead code.
Added "& 0xff" to many instances of expressions that are typecast
to (png_byte), to avoid Coverity gripes.
Version 1.6.17beta02 [February 7, 2015]
Work around one more Coverity-scan dead-code warning.
Do not build png_product2() when it is unused.
Version 1.6.17beta03 [February 17, 2015]
Display user limits in the output from pngtest.
Eliminated the PNG_SAFE_LIMITS macro and restored the 1-million-column
and 1-million-row default limits in pnglibconf.dfa, that can be reset
by the user at build time or run time. This provides a more robust
defense against DOS and as-yet undiscovered overflows.
Version 1.6.17beta04 [February 21, 2015]
Added PNG_WRITE_CUSTOMIZE_COMPRESSION_SUPPORTED macro, on by default.
Allow user to call png_get_IHDR() with NULL arguments (Reuben Hawkins).
Rebuilt configure scripts with automake-1.15 and libtool-2.4.6
Version 1.6.17beta05 [February 25, 2015]
Restored compiling of png_reciprocal2 with PNG_NO_16BIT.
Version 1.6.17beta06 [February 27, 2015]
Moved png_set_filter() prototype into a PNG_WRITE_SUPPORTED block
of png.h.
Avoid runtime checks when converting integer to png_byte with
Visual Studio (Sergey Kosarevsky)
Version 1.6.17rc01 [March 4, 2015]
No changes.
Version 1.6.17rc02 [March 9, 2015]
Removed some comments that the configure script did not handle
properly from scripts/pnglibconf.dfa and pnglibconf.h.prebuilt.
Free the unknown_chunks structure even when it contains no data.
Version 1.6.17rc03 [March 12, 2015]
Updated CMakeLists.txt to add OSX framework, change YES/NO to ON/OFF
for consistency, and remove some useless tests (Alexey Petruchik).
Version 1.6.17rc04 [March 16, 2015]
Remove pnglibconf.h, pnglibconf.c, and pnglibconf.out instead of
pnglibconf.* in "make clean" (Cosmin).
Fix bug in calculation of maxbits, in png_write_sBIT, introduced
in libpng-1.6.17beta01 (John Bowler).
Version 1.6.17rc05 [March 21, 2015]
Define PNG_FILTER_* and PNG_FILTER_VALUE_* in png.h even when WRITE
is not supported (John Bowler). This fixes an error introduced in
libpng-1.6.17beta06.
Reverted "& 0xff" additions of version 1.6.17beta01. Libpng passes
the Coverity scan without them.
Version 1.6.17rc06 [March 23, 2015]
Remove pnglibconf.dfn and pnglibconf.pre with "make clean".
Reformatted some "&0xff" instances to "& 0xff".
Fixed simplified 8-bit-linear to sRGB alpha. The calculated alpha
value was wrong. It's not clear if this affected the final stored
value; in the obvious code path the upper and lower 8-bits of the
alpha value were identical and the alpha was truncated to 8-bits
rather than dividing by 257 (John Bowler).
Version 1.6.17 [March 26, 2015]
No changes.
Remove DateY and replace it by real XY datetime, date, time and timedelta support. (#188)
Introduce new XY configuration options: `xrange`, `x_value_formatter`.
Add show_x_labels option to remove them and the x axis.
Set print_values to False by default.
Fix secondary serie text values when None in data. (#192)
V 1.6.2
Add margin_top, margin_right, margin_bottom, margin_left options which defaults to margin. (thanks djt)
Update django mime parameter from mimetype to content_type. (thanks kswiat)
Allow a color and a style parameter to value metadata.
V 1.6.1
Fix Decimal incompatibility
V 1.6.0
Adds config option missing_value_fill_truncation. (thanks sirlark)
Avoid HTTP 301 Moved Permanently (thanks jean)
Add a Django response method (thanks inlanger)
Fix setup.py (#170)
Fix format error on list like in table
Add legend_at_bottom_columns option to specify number of columns in legend when at bottom. (#157)
Fix secondary interpolation (#165)
Adds an extra class (axis) to horizontal guides if the label is "0" (#147) (thanks sirlark)
Add line stroke customization parameters to style.py (#154) (thanks blakev)
Release 1.14.2 (2014-03-09 Bryce Harrington <bryce@osg.samsung.com>)
====================================================================
This release provides collected bug fixes, along with one feature
enhancement for the xcb backend, and a small performance improvement for
fonts.
The running theme of the bug fixes is platform-specific issues, both
build and run-time. Platforms with fixes include Sparc, AIX, Windows
(mingw), and Windows (MSVC8). Memory leaks, valgrind issues, and PDF
issues round out our list.
It's come to light that changes in cairo 1.14 resulted in breakage on
MacOS X 10.4. We've not yet determined whether to fix up the support,
or excise the 10.4-specific code and support only OS X 10.5 or newer.
Meantime, we'll only advertise cairo as working on OS X 10.5.
Features
--------
* Improve xcb's handling of per-screen subpixel ordering. If no
Xft.rgba property is specified, default to the screen's subpixel
order.
API Changes
-----------
None
Dependency Changes
------------------
None
Performance Optimizations
-------------------------
* Improve performance of cpu_to_be32 and be32_to_cpu, making truetype
subsetting of large fonts run about 15% faster.
Bug Fixes
---------
* Fix unaligned access on sparc with the compact font format (CFF).
Unlike truetype, all data in CFF is not aligned.
(Debian bug #712836)
* Fix unaligned access on sparc with tor-scan-converter's memory pool.
* Fix crash when loading a PDF with a transformed image.
(fdo bug #85151)
* Fix regression on mingw for bigendian test due to removal of file
extension for executables.
(fdo bug #85120)
* Fix handling of backslash in PDF interpreter
(fdo bug #85662)
* Fix crash in xlib and xcb renderers when swapping a 0-sized glyph
* Fix bug with RTL text in PDF operators
(fdo bug #86461)
* Fix compilation 'cairo-path-stroke-traps.c' with MSVC8
(fdo bug #84908)
* Fix crash in _fill_xrgb32_lerp_opaque_spans when a span length is
negative.
* Fix valgrind error by releasing pattern created by
cairo_pattern_create_rgb().
* Fix valgrind errors when running cairo-test-suite.
* Fix memory leak in recording surface replays
(fdo bug #87898)
* Fix destruction of fonts in api-special-cases test.
(fdo bug #87567)
* Fix duplicated surface push on similar-image, preventing trivial GTK3
program traces from being replayable, with an error message about
invalid values for the size of the input.
(fdo bug #73580)
* Fix crash when win32 surface's image size does not cover the entire
surface.
(fdo bug #53121)
* Fix crash due to obsolete CGFontGetGlyphPath call
(fdo bug #84324)
* Fix several build issues on AIX
(fdo bugs #89338, #89340, #89356, #89354)
* Fix various documentation warnings and errors
* Newer GCC requires swig2.
Changelog:
Version 1.1.0:
- geometry tools: sequence of lines, curved lines, ellipses
- new brush and layer blending modes; different layer merging
- new color dialog: palette and gamut mapping
- improved document frame, can be resized on canvas
- symmetric drawing mode
- old color changer ("washed") from 0.6 is available again
- toolbar improvements, e.g. move layer mode, pan/zoom
- revised cursor and on-canvas color picker
- better separation of mypaint's brush library; json brush file format
- translations, performance improvements, bugfixes, and more
4.1.0
* Added MiniMagick::Tool#stack for building ImageMagick stacks:
MiniMagick::Tool::Convert.new do |convert|
convert << "wand.gif"
convert.stack do |stack|
stack << "wand.gif"
stack.rotate(30)
end
convert << "images.gif"
end
convert wand.gif \( wand.gif -rotate 90 \) images.gif
4.0.4
* Allow filenames with colon in their names (thanks to @agorf)
=== 1.3.4 - 2015-02-16
- Assert compatibility with Ruby 2.2
- Improved documentation using RDoc, so it is included on http://www.rubydoc.info/gems/chunky_png
- Update chunkypng.com website; migrate some stuff from the wiki.
need to link with it but might have included x11/xf86driproto's bl3.mk first,
because we have:
x11/xf86driproto/buildlink3.mk:BUILDLINK_DEPMETHOD.libpciaccess?= build
(This issue appears only on non-x86 because on x86 we get libpciaccess
through libdrm)
Bump PKGREVISION to get the dependency expressed.
-------------------
2.63 2015.03.06
- Move SVG results from POD to external files.
2.62 2015.03.06
- Remove more duplicate pod.
- Encoding of the pod RT #89414
2.61 2015.03.03
- Eliminate a bunch of duplicate documentation.
- Skip tidy testing if module is not available (RT #102484)
- POD formatting.
2.60 2015.03.03
- Convert source files to utf8
- Add more tests
- css styles are now sorted to make it easeier to test
- Run Perltidy on the code
2.59 2013.03.31
- Experiment to show images on MetaCPAN
2.56 2013.03.30
- Move all the content of SVG::Manual to SVG
2.55 2013.03.30
- Add an image to the pod generated by and example.
- Rename SVG::Manual from .pm to .pod.
- Stop violating the Subroutines::ProhibitExplicitReturnUndef policy,
eliminate 'return undef' and return wantarray?():undef; from the code.
2.54 2013.02.16
- Update the dates in the Changes file.
- Remove the function prototypes that don't work on methods anyway.
Stop violating the Subroutines::ProhibitSubroutinePrototypes policy.
2.53 2012.08.09
- missing test file removed from MANIFEST (RT #78856)
2.52 2012.05.29
- move POD testing to xt/
- Some example cleanup - Shlomi Fish
- removing prototype - Shlomi Fish
- POD fixes - David Paleino
2.51 2012.03.30
- Maintenance by Gabor Szabo
- Some documentation fixes.
- Modernizing test suite.
- Link to new public repository.
Version 2.40.8
- Bugs fixed from fuzz testing: #744688 - possible double g_free()
when processing stroke-dasharray
- Optimize rendering of polylines, lines, rectangles, circles, and
ellipses. These should be marginally faster, marginally more
precise, and should put less pressure on the memory allocator.
Version 2.40.7
- Bugs fixed from fuzz testing: #703102, #738050, #738169, #744270, #744299
- Fixed unfiled bug from fuzz testing, where the convolution filter
had an integer multiplication overflow.
- Fix build of rsvg-convert on Windows.
- Fix a bunch of compiler warnings.
- Two targets added, post-build: and post-install:,
to build gnuplot.pdf (which was in 4.6.6 PLIST),
and two dependency for above process. Thanks gdt@ for comment.
(upstream)
- Update 4.6.6 to 5.0.0
---------------------
GNUPLOT Version 5.0 Release Notes
=================================
Gnuplot version 5 contains significant new capabilities and enhancements.
The most recent previous release was 4.6 patchlevel 6 (4.6.6).
Please see the NEWS file for bugfixes and minor changes to version 5.0
applied after feedback on release candidates -rc1, -rc2, and -rc3.
Release Notes date: 31 December 2014
NOTABLE NEW FEATURES
====================
* New plot styles "with parallelaxes" and labeled contours.
* New coordinate system (Degrees, Minutes, Seconds) "set xdata geographic".
* The "fit" command can now handle functions with up to 12 variables, and
can take into account errors on x as well as errors on dependent variables.
Final covariance terms are stored in user-accessible variables.
Fitting options are now controlled by the command "set fit ..." rather than
by environmental variables.
* The interpretation of columns in a "fit" command depends on new keywords
"error", "xyerror", "zerror". In most cases the program can also recognize
version 4 syntax (no error keyword but last column contains zerror).
* The dot/dash pattern of a line can now be controlled independently
from other line properties using the keyword "dashtype".
* The default color of individual line types can be changed using
"set linetype" (introduced in 4.6). In version 5 a default overall color
sequence can be selected using "set colors {default|classic|podo}".
The "classic" sequence is red/green/blue/magenta/cyan/yellow as used by
older gnuplot versions. The default and podo colors are chosen to be
more easily distinguished in print and in particular by people with color
vision problems.
* Text markup now supports bold and italic font settings in addition to
the subscript, superscript, font size and other options previously
provided by the "enhanced text" mode. This mode is now the default.
* Command scripts may place in-line data in a named data block for
repeated plotting.
* Bit shift operators << and >>
* RGB colors can include an alpha-channel for transparency.
# ARGBcolor = (Alpha << 24) + (Red << 16) + (Green << 8) + Blue
* Secondary axes (x2, y2) can be locked to the primary axis via a mapping
function. In the simplest case this guarantees that the primary and
secondary axis ranges are identical. In the general case it allows you
to define a non-linear axis, something that previously was only possible
for the special case of log scaling.
* The "import" command attaches a user-defined function name to a
function provided by an extenal shared object (i.e. a plugin library).
* Previous commands in the history list of an interactive session can be
reexecuted by number. For example "history !5" will reexecute the
command numbered 5 in the list reported by "history".
* Hypertext labels in the interactive terminals including web display
using the HTML canvas or svg terminals.
Many other additions are described in the "New Features" section of the
documentation.
CHANGES
=======
Gnuplot development assigns very high priority to backward compatibility
with earlier versions. For example any command script that worked in
version 4.0 is expected to continue to work for all version 4 releases
including the most recent one (4.6.6). However changes introduced in
version 5 can affect the operation of some version 4 scripts.
A brief summary of potentially incompatible changes is given here.
* Earlier versions of gnuplot used the keyword "linetype" to mean both
the color and the solid/dot/dash pattern of a line. Version 5 has
separate keywords "linecolor" and "dashtype". You can use these keywords
directly in a plot command or assign any desired color and a dash pattern
to a linetype. The program now provides a default set of 8 linetypes, all solid.
You can change these or add new linetypes as you please. You do not need
to change the current terminal or terminal mode in order to use dashed lines.
* The handling of input data containing NaN, Inf, an inconsistent number of
data columns, or other unexpected content has changed. See documentation
under "missing" for examples and figures.
* Time coordinates are stored internally as the number of seconds relative
to the standard unix epoch 1-Jan-1970. Earlier versions of gnuplot used
a different epoch internally (1-Jan-2000). This change resolves
inconsistencies introduced when time in seconds was generated externally.
The epoch convention used by a particular gnuplot installation can be
determined using the command `print strftime("%F",0)`.
Time is now stored to at least millisecond precision.
* The function `timecolumn(N,"timeformat")` now has 2 parameters.
Because the second parameter is not associated with any particular data axis,
this allows using the `timecolumn` function to read time data for reasons
other than specifying the x or y coordinate. Use of time formats
to generate axis tick labels is now controlled by "set {xy}tics time" rather
than by "set {xy}data time". Thus prior calls to `set xdata time` or
`set timefmt x` are unnecessary for either input or output.
These older commands still work, but are deprecated.
* The "reverse" keyword (e.g. "set xrange [*:*] reverse") now affects only
autoscaling. It has no effect on explicit ranges.
"set xrange [0:1] reverse" is _not_ the same as "set xrange [1:0]".
* Options to the "fit" command are now given by "set fit ..." rather than
by setting environmental variables. Fit can handle up to MAX_NUM_VAR
independent variables (currently 12). Variables other than the first
two (x, y) have been dissociated from axis names. This means, for example,
"set urange [U1:U2]" has no effect on fitting because "u" is not a fit
variable. Use the command "set dummy ..." to assign names to fit variables
3 ... 12.
* The `call` command is implemented by providing a set of variables ARGC,
ARG0, ..., ARG9. ARG0 holds the name of the script file being executed.
ARG1 to ARG9 are string variables and thus may either be referenced directly
or expanded as macros, e.g. @ARG1. The older convention for referencing
call parameters as tokens $0 ... $9 is deprecated.
* "unset xrange" (and other axis ranges) restores the default range.
* "unset terminal" restores the original terminal of the current session.
Security Fixes:
---------------
Annotate: Some requestable text-subsitution attributes caused a crash.
All formats: Image dimensions are checked to assure that they are within limits before proceeding to read the image.
BMP: Fix hang (endless loop) for certain files.
DCM: Fix crash as well as small heap over-write.
DPX: Fix crash due to DPX file reporting more elements than it has.
MNG: Validate MHDR chunk length to avoid huge memory allocation and DOS.
PCX: Fix for CVE-2014-8355. Validate file header in order to avoid buffer overun later.
PDB: Detect arithmetic overflows when calculating buffer sizes. Fix crash in writer when image width is not even multiple of 16. Fix buffer overrun with 2 and 4-bit PDB image files.
PNM: Validate PGM, PPM, and PAM header MaxValue parameter to avoid crash on poorly-formed input.
PNG: Impose a 10-million limit on dimensions when reading a PNG file to avoid denial of service.
PSD: Avoid problems caused by huge PSD colormap size.
PSD: Fix small stack over-write if more than 99 layers are written to PSD format.
PSD: Returns immediately if pixel limit was exceeded.
RLE: URT RLE reader is now more robust with errant files.
SUN: Header validation is now made fully robust, and arithmetic overflows in buffer-size calculations are detected to avoid heap overwrite.
TIFF: Fix crashes for photometrics which may delivery one or three samples per pixel (was assuming always three).
VIFF: Fixes to prevent buffer overflow. Validate colormap indexes.
Windows delegates: Fix unexpected argument splitting when invoking an external delegate program via delegates.mgk.
WPG: Fix use of NULL pointers. Fix buffer overflows.
XPM: Detect truncated row and quit with error rather than over-running a buffer.
XWD: Improve header validation. Added to UnstableCoderClass since the reader for this format should not be entrusted with untrustworthy input.
Bug fixes:
----------
CIN: Fix problem with text attribute values which are not NULL terminated. Validate sizes claimed by Cineon header.
Coverity: Fixes for many issues detected by Coverity scan (see ChangeLog).
DPX: Fix problem with text attribute values which are not NULL terminated.
DPX: Fix severe corruption of little-endian 32-bit packed output. Corruption was severe enough that it would have been noticed immediately.
Delegates: Fix possible memory leaks when invoking external application.
FITS: Properly validate values provided by file header.
GIF: Fix use of uninitialized data.
JBIG: Fix memory leaks.
JNG: Fix double-free error in error path.
JPEG: Verify the number of output components before attempting to decode the image.
Magick++: Image resolutionUnits() was not always returning correct value.
Magick++: Locking has not been working properly since the code was written in 1998. Apparently the issue has not been significant enough to cause run-time issues.
ICO: Windows icon reader is now much more robust.
MIFF: Reader now quits with an error if zip or bzip2 stream is corrupted.
MAT: Fix memory leaks.
PALM: Reader now reads various input formats (up to version 2) correctly whereas it was crashing or otherwise malfunctioning before. More work remains, particularly in the writer.
PCX: Eliminate memory leaks in error paths.
PDB: In PDB writer, void possible under-allocation due to arthimetic overflow when allocating packets.
PICT: Fix PICT reader crash with corrupted file.
PNG: Fix double-free error in error path.
PNG: Fixed handling of transparency when writing indexed PNG.
PNG: Avoid reading beyond the end of a tEXt keyword.
PSD: Fix error when reading PSDs files which have no layers.
RLA: Fix possible crash due to file header.
Signal Handling: Signal handling is now more robust and handles SIGSEGV and other critical signals. The sole purpose of the default signal handling is to remove any temporary files and quit. An informative message is printed for signals other than SIGINT.
SUN: Sun raster reader was not completely robust. Now it is.
SWF: Fix pixel cache access errors in 'ping' mode.
Text annotation: An empty text string is no longer treated as an error.
Text annotation: Fix regression added in 1.3.19 which caused spurious drawing errors to be produced while rendering with text when all of the text is off the left-hand side of the image.
TIFF: Fix unreliable reading JBIG compressed files by forcing use of strip reader rather than sometimes using scanline reader (which libtiff's JBIG codec does not support).
TIFF: Fix reading or writing planar min-is-white or min-is-black images with an associated alpha channel.
WebP: WebP writer now writes truely lossless output when requested.
identify / GetImageStatistics(): Failed to compute statistics for the Black channel of CMYK image files.
VICAR: Fix problem with continuing to "read" data when there is no more data left to read.
WMF: Fix memory leaks.
WPG: Fix potential DOS due to long reads during an error condition.
XPM: Avoid strncpy() of overlapping memory. Fixed memory leaks in error paths. Fixed bad memory access caused by empty file.
New Features:
-------------
compose: Supports composite operator names similar to the major *Magick brand, without losing any any compatibility with previous naming.
ICO: Windows ICO reader now supports reading PNG-encoded files.
Magick++ Geometry: New methods limitPixels() and fillArea() to support '@' and '^' geometry qualifiers. This enancement breaks the ABI due to previous use of inline methods and no place to put the new flags.
Magick++ Image::extent(): New method to place image on sized canvas of constant color using gravity.
Magick++ Image::formatExpression(): New method format a string based on a format similar to command-line -format.
Magick++ Image::resize(): New method to resize image specifying geometry, filter, and blur.
Magick++ STL extentImage: New New function object to invoke image extent method.
Magick++ Image::quiet(). New method which blocks (ignores) warning exceptions when passed a 'true' argument.
Resource limits: Added support for image Width and Height limits. Default image Width and Height limits are based on the range of a 32-bit signed integer, even for 64-bit builds which may have sufficient numeric range to image an entire galaxy. Limits may be increased as desired.
TIFF: Use define tiff:ignore-tags to ignore tags in 'corrupted' files with unknown and invalid tags. Use to read TIFF files which otherwise can not be read due to errors.
TIFF: Use '-define tiff:report-warnings=true' to enable that warnings reported by libtiff are thrown as warning exceptions so that they may be caught or will be reported at the gm command-line.
Windows Exceptions: A handler is registered (due to calling InitializeMagick()) to capture Windows Exceptions in a similar manner to the existing POSIX signal handler. If an application is using the library and wants to provide it own Windows exception handling, then it should make any changes after invoking InitializeMagick().
Windows Delegate Updates/Additions:
-----------------------------------
PNG: Update bundled libpng to 1.6.16. Resolves known security issues.
FreeType: Update bundled Freetype to 2.5.4. Resolves known security issues.
WebP: Update bundled WebP to 0.4.2 release.
WebP is auto-linked in Visual Studio.
Build Changes:
WebP is not included in the build when building with Visual Studio 6 (1998 vintage compiler!) since it requires more modern C.
Behavior Changes:
-----------------
AVI: Support for this format is removed since the implementation was worthless.
TIFF: Now uses YCbCr encoding when JPEG compression is requested for an RGB image.
----------------------
Version 1.5.3 <2015-01-18>
--------------------------
* applied patch from Sebastian Vater to fix memory leak
Version 1.5.2 <2014-12-14>
--------------------------
* fixed memory leak (thanks to Sebastian Vater)
Version 1.5.1 <2014-11-23>
--------------------------
* fixed some compiler errors
Version 1.5 <2014-08-09>
------------------------
* added support of marker element
* added support of patternTransform attribute
Version 1.4.2 <2014-07-06>
--------------------------
* added support of stroke-dasharray
* fixed handling of preserveAspectRatio="none"
Version 1.4.1 <2014-06-16>
--------------------------
* fixed rendering of tspan-element
* fixed rendering of use element in pattern and mask elements
Version 1.4 <2014-05-24>
------------------------
* added support of pattern element
Version 1.3 <2014-04-13>
------------------------
* added support of animations
* fixed some GetBBox() methods
3.300 Saturday February 28, 2015, 08:44:22 AM -0800
* lib/Image/Size.pm
* t/all.t
* t/old-os2.bmp (added)
Add support for old OS/2 version of BMP header (Geoff Richards).
* lib/Image/Size.pm
Typo fixes (David Steinbrunner).
* lib/Image/Size.pm
Avoid a sprintf() warning in Perl 5.21. Perl 5.21 introduces a
warning for redundant arguments to s?printf(), so sprintf("%d",
1, 2) would warn. This commit silences that warning by passing
sprintf the exact number of arguments that it expects (Brian
Fraser).
* lib/Image/Size.pm
Added =encoding utf8 to pod - the accented character was
causing a pod error (Neil Bowers).
* lib/Image/Size.pm
Added Z<> to the =item [012] to resolve pod warning. You can't
have =item 0, so the way round this seems to be to add a Z<>
(zero width space) before each digit (Neil Bowers).
* lib/Image/Size.pm
Added link to github repo to doc (Neil Bowers).
* lib/Image/Size.pm
RT #41238: Applied modified version of patch from user to fix a
die problem with unpack on truncated files.
* lib/Image/Size.pm
* t/1.sm.webp (added)
* t/all.t
* t/move.cur (added)
* t/tux.ico (added)
Add support for WEBP, ICO and CUR file types (Baldur
Kristinsson).
* lib/Image/Size.pm
Fix some perlcritic issues.
FreeImage is an Open Source library project for developers who would like to
support popular graphics image formats like PNG, BMP, JPEG, TIFF and others as
needed by today's multimedia applications. FreeImage is easy to use, fast,
multithreading safe, compatible with all 32-bit or 64-bit versions of Windows,
and cross-platform (works both with Linux and Mac OS X).
Thanks to its ANSI C interface, FreeImage is usable in many languages including
C, C++, VB, C#, Delphi, Java and also in common scripting languages such as
Perl, Python, PHP, TCL or Ruby.
GEGL tries to use OpenCL in a really weird way. It has (and installs!)
a local copy of OpenCL headers and then tries to find implementation
by dlopen'ing "libOpenCL.so". The problem is that it fails to compile
on Darwin < 10 by trying to include non-existent native OpenCL headers
too, which is in fact only optional.
Jun 10 2013:
Make max comment size 16000
Oct 25 2013:
Added "-zt" option to trim 32k of trailing zeroes from Nikon 1 J2 and J3 images.
Sep 28 2014:
Add ability to reset invalid rotation tag (from Moultrie game cameras)
---------------------
2013-03-31
4.3.0
* New web script cdinsert-ps.pl and page cdlabelgen-form.html added.
It now only generates .ps file, so can be hosted at any site that offers
perl cgi support.
No change to core cdlabelgen script and it remains at version# 4.2.0.
Changes are not available but here is a few from commit log:
* Add euclidean_distance_rgba method.
* Fix crash bilinear upsampling tall images.
* Fix bilinear upsampling correctness.
== 1.7.1 / 2014-06-12
* Minor enhancements:
* Renamed Color::RGB::BeccaPurple to Color::RGB::RebeccaPurple as stipulated
by Eric Meyer. http://meyerweb.com/eric/thoughts/2014/06/19/rebeccapurple/
For purposes of backwards compatibility, the previous name is still
permitted, but its use is strongly discouraged, and it will be removed in
the Color 2.0 release.
== 1.7 / 2014-06-12
* Minor enhancements:
* Added Color::RGB::BeccaPurple (#663399) in honour of Rebecca Meyer, the
daughter of Eric Meyer, who passed away on the 7th of June, 2014. Her
favourite colour was purple. #663399becca
https://twitter.com/meyerweb/status/476089708674428929http://www.zeldman.com/2014/06/10/the-color-purple/http://discourse.specifiction.org/t/name-663399-becca-purple-in-css4-color/225
* Bug fixes:
* Changed the homepage in the gem to point to github.com instead of
RubyForge, which has been shut down. Fixes#10, reported by @voxik.
== 1.6 / 2014-05-19
* Major enhancements:
* Aaron Hill (@armahillo) implemented the CIE Delta E 94 method by which an
RGB colour can be asked for the closest matching colour from a list of
provided colours. Fixes#5.
* To implement #closest_match and #delta_e94, conversion methods for sRGB to
XYZ and XYZ to L*a*b* space were implemented. These should be considered
experimental.
* Tooling fixes:
* Ensured that the gem manifest was up-to-date. Fixes#4 reported by @boutil.
Thanks!
* Fixed problems with Travis builds. Note that Ruby 1.9.2 is no longer
tested. Rubinius remains in a “failure-tolerated” mode.
* Color 1.6 is, barring security patches, the last release of Color that will
support Ruby 1.8.
1.3.3 - 2014-10-24
* Improve performance of Canvas#crop and Canvas#crop! by doing less memory
allocations.
* Update to RSPEC 3
* Add CONTRIBUTING.rdoc file.
1.3.2 - 2014-10-18
* Add HSV/HSL color conversions: Color.from_hsl, Color.to_hsl
* Allow empty IDAT chunks to better conform to the PNG standard.
* Small bugfix in image resampling.
* Documentation and code readability improvements.
1.3.1 - 2014-04-28
* Improve performance of Palette.from_canvas.
* Add Color.euclidean_distance_rgba to compare colors.
* Bugix in Canvas.from_bgr_stream.
* Documentation and code readibility improvements.
* README updates, include mention of screencast.
RMagick 2.13.4
#129 from @theschoolmaster
proof of concept for using pkg-config in place of Magick-config on debian based systems
#127 from @u338steven
Changed Image#resample to calling ResampleImage (related #29, #45)
#124 from @u338steven
Fixed#122: lib/RMagick.rb is overwritten by lib/rmagick.rb on case-insensitive systems
#123 from @prijutme4ty
New class SolidFill in order to fill image with monochromatic background
#121 from @markotom
Quotes for correct path of font file
#120 from @chulkilee
Allow MagickCore6 from Magick-config
#112 from @u338steven/
Fixed: build error with ImageMagick 6.8.9 (when deprecated functions are excluded)
#102 from @u338steven
Fixed: related x_resolution, y_resolution
from @u338steven
Lots of test fixes
#95 from @ioquatix
Fix pixel hash test
#94 from @u338steven
Fixed: build error on Windows Ruby x64 (with ImageMagick 6.8.0-10 or Ima...
#91 from @vassilevsky
Do not test machine and OS-specific integers
Fix initial memory limit test
RMagick 2.13.3
#90 from @bricef
Fix installation error on systems with HRDI enabled RMagick
Cairo rendering for display and PNG export
OpenMP multithreading for all filters
C++ code conversion
Major improvements in the Text tool
Measure tool
Type design features
Symbol library and support for Visio stencils
Cross platform WMF and EMF import and export
Improved support for Corel DRAW documents, Visio importer
Support for real world document and page size units, e.g. millimeters
Numerous usability improvements
Native Windows 64-bit build
0.35 (07/20/2014)
(ms) Fix for [rt.cpan.org #97322], now rounding results to cope with
floating point inaccuracies in rrdtool. Reported by Andreas König.
0.34 (06/26/2014)
(ms) Added disable_rrdtool_tag option as suggested by Sun Guonian.
0.33 (07/08/2013)
(ms) Florian Eckert reported that graph() modified 2nd level
entries of the options array passed to it. Used Storable::clone
in OO.pm to make a deep copy first.
0.32 (03/06/2012)
(ms) [rt.cpan.org #63351] Applied modified patch by Jonas Wagner to
fix stacked graphs with no legend.
(ms) Implements RRDs::xport and returns a Perl structure instead of
basic xport array (Remi Ferrand, Fabien Wernli).
Changes:
1.4.0
=====
[2] The non-SIMD RGB565 color conversion code did not work correctly on big
endian machines. This has been fixed.
[3] Fixed an issue in tjPlaneSizeYUV() whereby it would erroneously return 1
instead of -1 if componentID was > 0 and subsamp was TJSAMP_GRAY.
[3] Fixed an issue in tjBufSizeYUV2() wherby it would erroneously return 0
instead of -1 if width was < 1.
[5] The Huffman encoder now uses clz and bsr instructions for bit counting on
ARM64 platforms (see 1.4 beta1 [5].)
[6] The close() method in the TJCompressor and TJDecompressor Java classes is
now idempotent. Previously, that method would call the native tjDestroy()
function even if the TurboJPEG instance had already been destroyed. This
caused an exception to be thrown during finalization, if the close() method had
already been called. The exception was caught, but it was still an expensive
operation.
[7] The TurboJPEG API previously generated an error ("Could not determine
subsampling type for JPEG image") when attempting to decompress grayscale JPEG
images that were compressed with a sampling factor other than 1 (for instance,
with 'cjpeg -grayscale -sample 2x2'). Subsampling technically has no meaning
with grayscale JPEGs, and thus the horizontal and vertical sampling factors
for such images are ignored by the decompressor. However, the TurboJPEG API
was being too rigid and was expecting the sampling factors to be equal to 1
before it treated the image as a grayscale JPEG.
[8] cjpeg, djpeg, and jpegtran now accept an argument of -version, which will
print the library version and exit.
[9] Referring to 1.4 beta1 [15], another extremely rare circumstance was
discovered under which the Huffman encoder's local buffer can be overrun
when a buffered destination manager is being used and an
extremely-high-frequency block (basically junk image data) is being encoded.
Even though the Huffman local buffer was increased from 128 bytes to 136 bytes
to address the previous issue, the new issue caused even the larger buffer to
be overrun. Further analysis reveals that, in the absolute worst case (such as
setting alternating AC coefficients to 32767 and -32768 in the JPEG scanning
order), the Huffman encoder can produce encoded blocks that approach double the
size of the unencoded blocks. Thus, the Huffman local buffer was increased to
256 bytes, which should prevent any such issue from re-occurring in the future.
1.3.90 (1.4 beta1)
==================
[1] New features in the TurboJPEG API:
-- YUV planar images can now be generated with an arbitrary line padding
(previously only 4-byte padding, which was compatible with X Video, was
supported.)
-- The decompress-to-YUV function has been extended to support image scaling.
-- JPEG images can now be compressed from YUV planar source images.
-- YUV planar images can now be decoded into RGB or grayscale images.
-- 4:1:1 subsampling is now supported. This is mainly included for
compatibility, since 4:1:1 is not fully accelerated in libjpeg-turbo and has no
significant advantages relative to 4:2:0.
-- CMYK images are now supported. This feature allows CMYK source images to be
compressed to YCCK JPEGs and YCCK or CMYK JPEGs to be decompressed to CMYK
destination images. Conversion between CMYK/YCCK and RGB or YUV images is not
supported. Such conversion requires a color management system and is thus out
of scope for a codec library.
-- The handling of YUV images in the Java API has been significantly refactored
and should now be much more intuitive.
-- The Java API now supports encoding a YUV image from an arbitrary position in
a large image buffer.
-- All of the YUV functions now have a corresponding function that operates on
separate image planes instead of a unified image buffer. This allows for
compressing/decoding from or decompressing/encoding to a subregion of a larger
YUV image. It also allows for handling YUV formats that swap the order of the
U and V planes.
[2] Added SIMD acceleration for DSPr2-capable MIPS platforms. This speeds up
the compression of full-color JPEGs by 70-80% on such platforms and
decompression by 25-35%.
[3] If an application attempts to decompress a Huffman-coded JPEG image whose
header does not contain Huffman tables, libjpeg-turbo will now insert the
default Huffman tables. In order to save space, many motion JPEG video frames
are encoded without the default Huffman tables, so these frames can now be
successfully decompressed by libjpeg-turbo without additional work on the part
of the application. An application can still override the Huffman tables, for
instance to re-use tables from a previous frame of the same video.
[5] The Huffman encoder now uses clz and bsr instructions for bit counting on
ARM platforms rather than a lookup table. This reduces the memory footprint
by 64k, which may be important for some mobile applications. Out of four
Android devices that were tested, two demonstrated a small overall performance
loss (~3-4% on average) with ARMv6 code and a small gain (also ~3-4%) with
ARMv7 code when enabling this new feature, but the other two devices
demonstrated a significant overall performance gain with both ARMv6 and ARMv7
code (~10-20%) when enabling the feature. Actual mileage may vary.
[7] Improved the accuracy and performance of the non-SIMD implementation of the
floating point inverse DCT (using code borrowed from libjpeg v8a and later.)
The accuracy of this implementation now matches the accuracy of the SSE/SSE2
implementation. Note, however, that the floating point DCT/IDCT algorithms are
mainly a legacy feature. They generally do not produce significantly better
accuracy than the slow integer DCT/IDCT algorithms, and they are quite a bit
slower.
[8] Added a new output colorspace (JCS_RGB565) to the libjpeg API that allows
for decompressing JPEG images into RGB565 (16-bit) pixels. If dithering is not
used, then this code path is SIMD-accelerated on ARM platforms.
[13] Restored 12-bit-per-component JPEG support. A 12-bit version of
libjpeg-turbo can now be built by passing an argument of --with-12bit to
configure (Unix) or -DWITH_12BIT=1 to cmake (Windows.) 12-bit JPEG support is
included only for convenience. Enabling this feature disables all of the
performance features in libjpeg-turbo, as well as arithmetic coding and the
TurboJPEG API. The resulting library still contains the other libjpeg-turbo
features (such as the colorspace extensions), but in general, it performs no
faster than libjpeg v6b.
[14] Added ARM 64-bit SIMD acceleration for the YCC-to-RGB color conversion
and IDCT algorithms (both are used during JPEG decompression.) For unknown
reasons (probably related to clang), this code cannot currently be compiled for
iOS.
[15] Fixed an extremely rare bug that could cause the Huffman encoder's local
buffer to overrun when a very high-frequency MCU is compressed using quality
100 and no subsampling, and when the JPEG output buffer is being dynamically
resized by the destination manager. This issue was so rare that, even with a
test program specifically designed to make the bug occur (by injecting random
high-frequency YUV data into the compressor), it was reproducible only once in
about every 25 million iterations.
[16] Fixed an oversight in the TurboJPEG C wrapper: if any of the JPEG
compression functions was called repeatedly with the same
automatically-allocated destination buffer, then TurboJPEG would erroneously
assume that the jpegSize parameter was equal to the size of the buffer, when in
fact that parameter was probably equal to the size of the most recently
compressed JPEG image. If the size of the previous JPEG image was not as large
as the current JPEG image, then TurboJPEG would unnecessarily reallocate the
destination buffer.
1.3.1
=====
[3] Fixed a bug whereby attempting to encode a progressive JPEG with arithmetic
entropy coding (by passing arguments of -progressive -arithmetic to cjpeg or
jpegtran, for instance) would result in an error, "Requested feature was
omitted at compile time".
[4] Fixed a couple of issues whereby malformed JPEG images would cause
libjpeg-turbo to use uninitialized memory during decompression.
[5] Fixed an error ("Buffer passed to JPEG library is too small") that occurred
when calling the TurboJPEG YUV encoding function with a very small (< 5x5)
source image, and added a unit test to check for this error.