mirrors.
The ChangeLog between -7 and -8 says:
* Add -unique-colors to discard all but one of any pixel color.
* The montage program properly parses the -channel option.
* Make -colors work consistently as an image operator.
* Some DPX images do not contain a television header.
* Restore ability to read 10-bit grayscale Cineon images.
* Improve handling of corrupt GIF images.
* Add IsImageSimiliar() method to MagickCore API.
* Improve color reduction algorithm for images with transparency.
Changes 6.2.8-3:
* The -page A4 option no longer returns a width/height of 0.
* GetMagickModulePath() at line 803 in magick/module.c the variable 'home'
is not freed before returning.
* Magick::throwException should not call MagickLib::GetException().
Changes 6.2.8-2:
* The DPX orientation header elements are 8 not 16.
* Fix the ImageMagick web pages so they render properly.
Changes 6.2.8-1:
* Fix off-by-one error in DrawAffineImage().
* Set the offset to layer 2 of XCF images.
* Set proper precendence so -fx 'p{u[1]*w,u[2]*h}' parses properly (bug
and add a new helper target and script, "show-buildlink3", that outputs
a listing of the buildlink3.mk files included as well as the depth at
which they are included.
For example, "make show-buildlink3" in fonts/Xft2 displays:
zlib
fontconfig
iconv
zlib
freetype2
expat
freetype2
Xrender
renderproto
* Don't fault when processing bad TIFF profiles (4 characters or less).
* Masks are now read properly for 16-bit DIB's.
* The pixel cache file descriptor limit code failed because the pixel cache
timestamp was not always being set properly.
* Fixed a small memory leak in IsGrayImage().
* Fixed Cineon writing bug for very long filenames in 6.2.7 (reference
http://redux.imagemagick.org/discussion-server/viewtopic.php?t=6590)
* Begin the long journey of enhancing the conjure utility to support
all options that are supported by the convert utility and PerlMagick
(e.g. border, guassian-blur, etc.).
libMagick, which in turn breaks many configure scripts and other
attempts at linking it. Making libMagick depend on libWand is not a
good idea either. Bump revision.
Changelog:
* Default quantum scale to QuantumRange/(maximum-minimum) in magick/quantum.c.
Also remove two files from PLIST, as they are no more present
* Add -adaptive-sharpen to the convert and mogrify programs.
Changes 6.2.7.2:
* Generate proper image filenames when filename has more than one embedded
period (e.g. image.gif.eps becomes image.gif-0.eps, image.gif-1.eps,
etc.).
* CompositeImage() is now thread-safe.
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
Changes to 6.2.8-8:
* 'convert existing-image.png -background' no longer generates a fault.
* -define pdf:use-cropbox=true actually works now.
* Slight mods to magick/xwindow.c to compile under BEOS (path provided by
henrimoi@hotma...).
* #000000 improperly set the opacity channel (bug report and patch from
digipete@shaw....).
* Patch for OpenVMS compile support.
Changes to 6.2.6-7:
* Added the 'Dispose' layers function to return the 'GIF dispose' images of
an animation.
* File is already closed, do not call fclose() on it in magick/blob.c.
* PS3/EPS3 now writes a proper image mask when compression is None.
* Patch to properly read interlaced GIF's.
* DestroyMagick() is not always reliably available when atexit() unwinds.
anymore (noted by tron).
2006-03-26 6.2.6-6 Cristy <stentz@image...>
* Specify '-depth 32 -define quantum:format=floating-point' to read/write
single precision floating point TIFF and raw formats.
* Specify '-depth 64 -define quantum:format=floating-point' to read/write
double precision floating point TIFF and raw formats.
* If you overlaying an image with a negative offset, the image is no
longer wrapped around the left and right edges of the canvas.
2006-03-20 6.2.6-5 Cristy <stentz@image...>
* Fix Group4-compression in the PDF writer.
2006-03-06 6.2.6-4 Cristy <stentz@image...>
* Read image filenames that start with a dash (e.g. display -- -logo.png).
* Do not set the image opacity when reading a PSD colormap index (reference
http://redux.imagemagick.org/discussion-server/viewtopic.php?p=18026).
* By default, ImageMagick sets the page size to the MediaBox. Some
PDF files, however, have a CropBox that is smaller than the MediaBox and
may include white space, registration or cutting marks outside the CropBox.
To force ImageMagick to use the CropBox rather than the MediaBox, use
-define (e.g. -define pdf:use-cropbox=true).
* RGB to CMYK color conversion is now scaled properly.
* The command line utilities properly returns a non-zero status when an
exception is thrown.
Changes 6.2.6.2
* Fix a memory leak in each of CompositeImageCommand() and CompositeImage()
* Add new options -layers compare-any, -layers compare-clear,
-layers compare-overlay, and -layers optimize.
* Draw last dash in a dashed polyline.
* Add %D to -format to return the image disposal method.
* ncorrect handling of file:// URIs causes data loss (patch from Daniel
Kobras).
* Set default BMP resolution units to PixelsPerCentimeter (problem report
from digipete@shaw...).
* SetImageType(): monochrome images are not required to be colormapped
* Initialize blob->mapped to MagickFalse in AttachBlob()
* Use painters algorithm for the -draw point primitive
* NormalizeImage() now normalizes the opacity channel correctly
* QueryFontMetrics() now accounts for the font stroke width
checksum and size were correct and I managed to download the outdated
version from two different hosts. Must be Monday ...
Oh yes, bump the package revision again.
Several changes are involved since they are all interrelated. These
changes affect about 1000 files.
The first major change is rewriting bsd.builtin.mk as well as all of
the builtin.mk files to follow the new example in bsd.builtin.mk.
The loop to include all of the builtin.mk files needed by the package
is moved from bsd.builtin.mk and into bsd.buildlink3.mk. bsd.builtin.mk
is now included by each of the individual builtin.mk files and provides
some common logic for all of the builtin.mk files. Currently, this
includes the computation for whether the native or pkgsrc version of
the package is preferred. This causes USE_BUILTIN.* to be correctly
set when one builtin.mk file includes another.
The second major change is teach the builtin.mk files to consider
files under ${LOCALBASE} to be from pkgsrc-controlled packages. Most
of the builtin.mk files test for the presence of built-in software by
checking for the existence of certain files, e.g. <pthread.h>, and we
now assume that if that file is under ${LOCALBASE}, then it must be
from pkgsrc. This modification is a nod toward LOCALBASE=/usr. The
exceptions to this new check are the X11 distribution packages, which
are handled specially as noted below.
The third major change is providing builtin.mk and version.mk files
for each of the X11 distribution packages in pkgsrc. The builtin.mk
file can detect whether the native X11 distribution is the same as
the one provided by pkgsrc, and the version.mk file computes the
version of the X11 distribution package, whether it's built-in or not.
The fourth major change is that the buildlink3.mk files for X11 packages
that install parts which are part of X11 distribution packages, e.g.
Xpm, Xcursor, etc., now use imake to query the X11 distribution for
whether the software is already provided by the X11 distribution.
This is more accurate than grepping for a symbol name in the imake
config files. Using imake required sprinkling various builtin-imake.mk
helper files into pkgsrc directories. These files are used as input
to imake since imake can't use stdin for that purpose.
The fifth major change is in how packages note that they use X11.
Instead of setting USE_X11, package Makefiles should now include
x11.buildlink3.mk instead. This causes the X11 package buildlink3
and builtin logic to be executed at the correct place for buildlink3.mk
and builtin.mk files that previously set USE_X11, and fixes packages
that relied on buildlink3.mk files to implicitly note that X11 is
needed. Package buildlink3.mk should also include x11.buildlink3.mk
when linking against the package libraries requires also linking
against the X11 libraries. Where it was obvious, redundant inclusions
of x11.buildlink3.mk have been removed.
* The Tru64 UNIX 4.0D/5.1 C++ compiler doesn't support ios::binary.
There is an #ifdef for this, MISSING_STD_IOS_BINARY, but nothing sets
it in configure.ac. So, I whipped up something to test it. I've tested
this with the Sun, HP, IBM, SGI, and GNU C++ compilers.
* Bitmaps in wmf files which are drawed via ipa_bmp_draw (in coders/wmf.c)
are not scaled to the output size, but drawn with the original size.
* Shear no longer produces artifacts for a 0 y-shear (e.g. 60x0).
* The PerlMagick memory, disk, etc., limits were not being set for values
other than unlimited.
* Not all memory allocated in GetTransformTokens & GetStyleTokens are freed
in SVG parsing.
* The -channel option is operational again.
* The black channel offset was incorrectly computed when compositing causing
a seg-fault (bug report from Arfune).
* Under extremely rare conditions the GIF coder had a memory leak.
* Moved image list advancement to after the progress monitor call in
QuantizeImages() (bug report by Tim Hunter).
* The black channel offset was incorrectly computed when compositing causing
a seg-fault (bug report from Arfune).
* Under extremely rare conditions the GIF coder had a memory leak.
* Moved image list advancement to after the progress monitor call in
QuantizeImages() (bug report by Tim Hunter).
* The display program no longer exits after the first image.
* The JP2 coders no longer interprets the first channel as an opacity channel.
* The VID coder no longer generates a fault (bug report from Arfune).
* CMYK Postscript with a subimage specification no longer returns a grayscale
image (bug report from Arfune).
* Handle image settings with MogrifyImageInfo() method.
* GNS contributed QueryMultilineTypeMetrics(). Its like QueryTypeMetrics()
but returns the maximum text width and height for multiple lines of text.
* Treat -channel as a setting in the command line programs.
* The black channel offset was incorrectly computed when compositing causing
a seg-fault (bug report from Arfune).
* Under extremely rare conditions the GIF coder had a memory leak.
* Moved image list advancement to after the progress monitor call in
QuantizeImages() (bug report by Tim Hunter).
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
All library names listed by *.la files no longer need to be listed
in the PLIST, e.g., instead of:
lib/libfoo.a
lib/libfoo.la
lib/libfoo.so
lib/libfoo.so.0
lib/libfoo.so.0.1
one simply needs:
lib/libfoo.la
and bsd.pkg.mk will automatically ensure that the additional library
names are listed in the installed package +CONTENTS file.
Also make LIBTOOLIZE_PLIST default to "yes".
* PNG vulnerability fix.
* Added YCbCr coder for raw Y, Cb, and Cr samples.
* Fixed the -fx option operator precendence problem (+ and - should be the
same precendence).
* Rare memory corruption due to a JPEG comment (bug report by
brundlefly76@hotma...).
* The PerlMagick Evaluate() method no longer fails with an assertion error.
* Restore -dSAFER for a more secure Ghostscript invocation. The downside is
we must copy the Postscript file to a temporary file otherwise we get a
the ocassional invalidfileaccess fom Ghostscript.
* Do not report image depth unless the -verbose or -format %z option is used
with the identify program.
* Center gravity now works when cropping by percent (e.g. -crop 75%).
* Small memory leak on exception in the ImageToBlob() method.
* %@ returns the image bounding box (e.g. identify -format %@ logo:).
* Sync pixel cache when cloning an image-- just in case someone clones
an image clone and accesses pixels with AcquireImagePixel() instead of
GetImagePixels().
Changes:
Bug fixes:
* Fixed problem with relative filename wildcards (e.g.
identify images/*.jpg)
* DrawSetStrokeDashArray() now respects the number_elements argument.
Performance improvements:
* Don't open a loadable module if its already open.
* Added anonymous memory-mapping to the pixel cache. This makes it
possible for memory to be returned to the system after the image is
destroyed.
Utilities enhancements:
* The display program now composites any transparent images on top of a
checkered background to assist in visualizing any partial transparent
pixels.
Coder additions/improvments:
* When an unknown property is encountered in the XCF coder, it enters a
bogus loop that never terminates.
Code/structure enhancements:
* Introduce MagickBooleanType and MagickStatusType types of unsigned int.
These types are 100% compatible with the existing API but removes
ambiguity. Previously we got complaints that users did not realize that a
return value of unsigned int in most cases meant a binary value (0/1).
MagickStatusType is used for methods that return a bit mask.
* Introduce MagickFalse and MagickTrue while we deprecate True/False.
And more...
* DrawSetStrokeDashArray() now respects the number_elements argument
* Since the WMF coder has Wand dependancies we only enable this coder when
both WMF is available and module support enabled
* Some XCF tiles were not being read properly
* Fixed memory leak in EPT coder
* Fixed memory leak in DestroyImage()
* Close Windows registry when no longer needed
* RelinquishUniqueFileResource() was not freeing file resource properly
* Free the ImageInfo structure allocated by CloneImageInfo() in the
WriteImages() method
* EPT images cannot support blobs
* Fixed temporary file resource limit leak in RelinquishUniqueFileResource()
* ConvolveImageChannel() incorrectly initialized non-selected channels to 0
* Added Cisco IP phone image format (write only)
(to ignore any errors).
This is so in the rare case that you already have files from an
old install that it won't fail to install new package.
This was discussed with maintainer, tron@, in March.
* MagickWand API, a higher level C interface to the ImageMagick methods.
* Increased stability. The library was checked and cross-checked with
splint and valgrind to eliminate security vulnerabilities and common
programming mistakes as well as ensure no memory leaks.
* A new -fx option to apply a mathematical expression to an image list from
the command line.
* Algorithms were improved to reduce processing requirements resulting in a
significant speed-up over previous releases.
* All regression tests pass at Q8, Q16, and Q32 on a variety of platforms
including Linux, Solaris, FreeBSD, Mac OS X, and Windows.
* The composite methods have been corrected to precisely conform to the
SVG standard.
* New image comparison utility, `compare'.
* Better support for CMYK image workflow.
* New string handling methods to help prevent potential buffer overflow
problems.
* Error reporting has more detail to help identify the cause of a
particular problem.
* Bug fixes
by moving the inclusion of buildlink3.mk files outside of the protected
region. This bug would be seen by users that have set PREFER_PKGSRC
or PREFER_NATIVE to non-default values.
BUILDLINK_PACKAGES should be ordered so that for any package in the
list, that package doesn't depend on any packages to the left of it
in the list. This ordering property is used to check for builtin
packages in the correct order. The problem was that including a
buildlink3.mk file for <pkg> correctly ensured that <pkg> was removed
from BUILDLINK_PACKAGES and appended to the end. However, since the
inclusion of any other buildlink3.mk files within that buildlink3.mk
was in a region that was protected against multiple inclusion, those
dependencies weren't also moved to the end of BUILDLINK_PACKAGES.
Changes since version 5.5.6:
- File descriptor leak prevented temporary disk pixel cache from being
removed under Windows.
- Color profile patches provided by (dge at softec.st).
- West/East geometry was computed with image width rather than height.
- The MNG encoder failed to set the JNG bit in the simplicity profile.
- The MNG encoder failed to write FRAM chunks when all images were JNG.
- The JNG encoder wrote the wrong alpha_sample_depth for opaque images.
- Fixed JPEG EXIF problem.
- Added -thumbnail as an option to the utilities.
- No TIFF preview was written on EPT write (patch provided by
Lars Ruben Skyum).
- NegateImage() now negates the K channel of a CMYK image (patch provided
by Lars Ruben Skyum).
- Parameter 'elevation' misspeclled for PerlMagick Shape() method.
- A number of minor leak/unitialzed memory problems fixed.
- Allocate free nodes from the heap in QuantizeImage().
- Magick-config --version returned gibberish.
- Adopted Bob Friesenhahn's patterns-- use as filename pattern:checkboard,
pattern:bricks, etc.
- We cannot reliably auto rotate PDF files so this feature was removed.
- The conjure program did not correctly handle the gravity attribute.
- The persistent cache reference count was not properly incremented.
- Added $image->Describe() method to PerlMagick to interface to the
DescribeImage() C API method.
- Added support for the EXIF Tag Parsing Library. Currently we simply
display the tags when calling DescribeImage(). In the near future
there will be support for modifying or adding tags.
- Added Bob Friesenhahn's updated Windows installation instructions.
- Interfaced the drawing routines with the new MagickWand API.
MagickWand will be the primary public C interface to ImageMagick in
the near future.
- magick/effect.c: RandomChannelThresholdImage was not handling
PseudoColor, non-gray images correctly.
- png.c would not compile with libpng versions older than libpng-0.95,
due to bugs introduced in ImageMagick version 5.5.2.
- Implemented -random-threshold and -ordered-dither options.
- The locale messaging system now uses a hash for fast lookup.
- Updated libtool to the new released version, 1.5.
- Fixed bug with decoding grayscale PNG images and JNG alpha channel
at Q:32.
- Now recognize 32-bit hex color specifications, patches provided by
Bob Friesenhahn.
- Started API wrappers based on Bob Friesenhahn's method suggestions.
- Text annotations that started with '\n' were not rendered correctly.
- Removed artifacts from images rotated with a small number of degrees.
- Minor bug fix in the ParseGeometry() method.
- Modified the non-public inline AlphaComposite() to use a PixelPacket
pointer; previously it returned a PixelPacket structure.
- You can now specify an image geometry as an image file (e.g. -geometry
image.jpg).
- Use new temporary file manager for JNG components.
- Added support for 12-bit TIFF images.
- Added improved locale message subsystem (contributed by Kyle Shorter).
- Removed a bias from SampleImage() and DrawAffineImage() (bug report
by Glenn Randers-Pehrson).
- PerlMagick now recognizes percent values for fuzz or opacity.
- Not enough memory allocated for reading PCX (bug report by Trevor
Willis).
- There were artifacts when using the Bessel function for resizing
(bug report by Bob Friesenhahn).
- Added -resample to convert to change the resolution of an image.
- Added a temporary file manager that prevents race conditions and
removes any remaining files on exit.
- Prepped ImageMagick to work with Visual C++ 7.0 under Windows.
The Windows configure patches came from William Radcliffe.
- The refresh of the display image window no longer lags when the
magnify window overlay it.
- Numerous code clean-up and minor speed ups based on problem areas
identified in the Graphics-Magick ChangeLog.
Changes are lots of bug fixes and minor enhancements (several pages
worth of it).
XXX Those two should probably be using a Makefile.common instead
XXX of just copying the appropriate bits.
libMagick.so libraries to be API compatible, and they don't want to
handle proper ELF versioning, but have the "real" version number in
the library. To spare us the pkgsrc maintenance nightmare, follow their
example. Bump PKGREVISION.
Changes:
* Verify sanity of sysconf(_SC_PAGE_SIZE) and sysconf(_SC_PHYS_PAGES)
before using their values.
* Corrected bug in image geometry height calculation.
* PingBlob() improperly set the length memory of BlobInfo to zero.
* Fixed Ping() memory leak in PerlMagick.
* Fixed -map problem in convert/mogrify utilities.
* -border with a single value now produces correct results
(e.g. -border 10).
* Set locale type LC_NUMERIC to "C".
* Bug fix for PS2 encoder.
* Added PS-Adobe preamble to PS3 encoder.
* Use ImageMagick release number to allow multiple ImageMagick releases
to co-exist without interference on the same machine.
* Decided that DrawGet functions should return by value.
* Added detailed logging to BMP, PNG, and JPEG codecs, including JPEG
quality estimate.
* Added draw.h "DrawGet" equivalents to most of the "DrawSet" functions.
* Added an array size argument to DrawSetDashPattern and got rid of
the zero-termination garbage.
o Remove 'Set' from the names of draw.h functions which update the
current affine transformation array (e.g. DrawSetRotate becomes
DrawRotate).
* Under Windows, a DllMain function which automatically initializes
ImageMagick (when ImageMagick is built using DLLs) may be added by
defining ProvideDllMain in magick_config.h
* Added resource consumption methods, see magick/resource.c.
* Replaced underscores in commandline options with hyphens. For backward
compatibility, underscores will continue to be recognized.
* Added -blue-primary, -green-primary, -red-primary, -white-point options.
* Added BMP2 and BMP3 output formats.
* Changed chromaticity primary.z from 1.0 to 1.0-(primary.x+primary.y)
in the PNG and PCD codecs.
* Added 'exception' parameter to the ImageMagick progress monitor API.
* Added enumerated types for the dispose member of the Image structure.
* Added -version option to commandline utilities.
* The xcf decoder would sometimes create artifacts when reading RLE-encoded
grayscale images, due to the green and blue samples not being defined.
* Added logging capabilities to the CORE API. This facility is useful
for debugging. Added "events" parameter to the -debug commandline option.
* AcquireImagePixels() did not always return the same pixel values
for virtual pixels when the cache was stored on disk (very rare).
* new -virtual-pixel command line option.
* new PerlMagick virtual-pixel image attribute.
Remove `-p' from mkdir arguments, it is already part of ${MKDIR}.
While here substitute a couple of ${PREFIX} by `%D' in
`@exec ${MKDIR} ...' lines and add a couple of missing `%D' in such lines too!
all dependencies on packages depending on "png" which contain shared
libraries, all for the (imminent) update to the "png" package.
[List courtesy of John Darrow, courtesy of "bulk-build".]
"mogrify -rotate 90 foo.tiff") used to leave the result in
/tmp/magickXXXXXXX with an in-file image comment of
/tmp/magickXXXXXXX.mgk.
Now it writes back to foo.tiff and the in-file comment is correct.
For some reason, working on jpg's didn't exhibit this problem
- Some operations that generate new files from some formats (e.g,
"mogrify -format jpg -rotate 90 foo.tiff") used to leave the result
in /tmp/magickXXXXXXX.jpg.
Now foo.jpg is generated.
For some reason, converting jpg->tiff didn't exhibit this problem.
redefines about which buildlink.mk files would care is BUILDLINK_X11_DIR,
which points to the location of the X11R6 hierarchy used during building.
If x11.buildlink.mk isn't included, then BUILDLINK_X11_DIR defaults to
${X11BASE} (set in bsd.pkg.mk), so its value is always safe to use. Remove
the ifdefs surrounding the use of BUILDLINK_X11_DIR in tk/buildlink.mk and
revert changes to move x11.buildlink.mk before the other buildlink.mk files.
use X11_BUILDLINK_MK as a test value. Generally just reordering the
inclusions so that x11.buildlink.mk comes before the other buildlink.mk
files will make everthing work.
foo-* to foo-[0-9]*. This is to cause the dependencies to match only the
packages whose base package name is "foo", and not those named "foo-bar".
A concrete example is p5-Net-* matching p5-Net-DNS as well as p5-Net. Also
change dependency examples in Packages.txt to reflect this.
A complete list of changes is not available unfortunately. Recent
changes are:
- Text drawing now handles UTF8-encoding.
- Off-by-one GetImagePixels() fix in draw.c
- PingImage() now reports attributes for all images an image sequence.
- magick/image.h: Rename QuantumLeap define to QuantumDepth.
QuantumDepth is set to the values 8 or 16, depend
configuration option.
- Updated PerlMagick signatures to signature algorithm.
- ImageMagick defaults to 16-bit quantum. Set QuantumMagick for 8-bit.
- Changed image->blob from BlobInfo to BlobInfo- so the Image
structure size is not dependent on the large-file defines.
- Added -background to convert prog
- DispatchImage() now properly handles grayscale images.
to ${X11BASE} in the header and library search paths into references to
${LOCALBASE}/share/x11-links. These packages should now be strongly-
buildlinked regardless of whether xpkgwedge is installed.
Changes well-tested on NetBSD-1.5X/i386 with and without xpkgwedge and
lightly-tested on NetBSD-1.5.1/alpha without xpkgwedge.
BUILDLINK_PREFIX.<pkgname>. This allows buildlink to find X11BASE packages
regardless of whether they were installed before or after xpkgwedge was
installed. Idea by Alistair Crooks <agc@pkgsrc.org>.