(CVE-2014-0076 is already fixed in pkgsrc).
OpenSSL CHANGES
_______________
Changes between 1.0.1f and 1.0.1g [7 Apr 2014]
*) A missing bounds check in the handling of the TLS heartbeat extension
can be used to reveal up to 64k of memory to a connected client or
server.
Thanks for Neel Mehta of Google Security for discovering this bug and to
Adam Langley <agl@chromium.org> and Bodo Moeller <bmoeller@acm.org> for
preparing the fix (CVE-2014-0160)
[Adam Langley, Bodo Moeller]
*) Fix for the attack described in the paper "Recovering OpenSSL
ECDSA Nonces Using the FLUSH+RELOAD Cache Side-channel Attack"
by Yuval Yarom and Naomi Benger. Details can be obtained from:
http://eprint.iacr.org/2014/140
Thanks to Yuval Yarom and Naomi Benger for discovering this
flaw and to Yuval Yarom for supplying a fix (CVE-2014-0076)
[Yuval Yarom and Naomi Benger]
*) TLS pad extension: draft-agl-tls-padding-03
Workaround for the "TLS hang bug" (see FAQ and opensslPR#2771): if the
TLS client Hello record length value would otherwise be > 255 and
less that 512 pad with a dummy extension containing zeroes so it
is at least 512 bytes long.
[Adam Langley, Steve Henson]
- fix for an issue when saving a new file
- more useful status bar
- improved properties dialog
- support for use as a UNIX filter
- new generic UNIX filtering tool, filter(1)
- manual pages available for both editor(1) and filter(1)
- cleaner build with Gtk+ >= 3.0
- additional usability fixes
Fix for a DoS vulnerability, see
https://www.debian.org/security/2014/dsa-2895
Changes in 0.9.4:
- Compression: Disallow compression on unauthenticated streams
- Core: Limit default read size and maximum stanza size
- Core: Enable SASL EXTERNAL by default for component s2s
- S2S: Warn if s2s_secure_auth and s2s_require_encryption have been
set in conflicting ways
- S2S: Warn if no local network addresses were found, preventing
successful s2s
- MUC: Fix traceback when a non-occupant tried to change an
occupant's role
- MUC: API: Fire an event when temporary rooms are destroyed after
the last person leaves
- Telnet: Fixed traceback when listing users
- Telnet: Apply normalization to JIDs in user management commands
- HTTP: Fix directory detection in file server on Windows
- Plugins: Fix paths on Windows
- MOTD: Don't strip blank lines from the message provided in the config
- prosodyctl: Better error reporting when generating certificates
- Makefile: Improve FreeBSD compatibility
- Multiple fixes to our migration tools, and support for importing MUCs
from ejabberd
* A new certificate (X509) API, which supports:
- Reading the subject (identity) and issuer of the certificate.
- Reading various X509 extensions, including email and dnsName.
- Converting certificates to and from the standard ASCII PEM
format.
- Generating the fingerprint/digest of a certificate (using SHA1,
SHA256 or SHA512).
- Reading the certificate's expiration, serial number, and other
info.
* The ability to get more detailed information from OpenSSL about
why a certificate failed verification, for each certificate in the
chain.
* Flags to force acceptance of invalid certificates, e.g. to allow
the use of self-signed certificates in a Trust On First Use model.
* Flags to control checking CRLs for certificate revocation status.
* Support for ECDH cipher suites.
* An API to get the TLS 'finished' messages used for SASL channel
binding (e.g. the SCRAM PLUS mechanisms).
[SECURITY FIXES]
This version of ack prevents the --pager, --regex and --output
options from being used from project-level ackrc files. It is
possible to execute malicious code with these options, and we want
to prevent the security risk of acking through a potentially malicious
codebase, such as one downloaded from an Internet site or checked
out from a code repository.
The --pager, --regex and --output options may still be used from
the global /etc/ackrc, your own private ~/.ackrc, the ACK_OPTIONS
environment variable, and of course from the command line.
[ENHANCEMENTS]
Now ignores Eclipse .metadata directory. Thanks, Steffen Jaeckel.
Add --perltest for *.t files.
Added Matlab support. Thanks, Zertrin.
[FIXES]
Fixed a race condition in t/file-permission.t that was causing
failures if tests were run in parallel.
Fix the test suite for Win32. Many thanks to Christian Walde for
bringing the severity of this issue to our attention, as well as
providing a Win32 development environment for us to work with.
Fixed Win32-detection in the Makefile.PL. Thanks, Michael Beijen
and Alexandr Ciornii.
More compatibility fixes for Perl 5.8.8.
[INTERNALS]
Removed the Git revision tracking in the --version.
- fix --idle checking Python version incorrectly, resulting in
incorrect warning about running with Python < 2.5. Thanks: "Voytek",
Krzysztof Warzecha.
- add missing support for SSL certificate checking in POP3 which
broke POP retrieval in v4.45.0. Requires Python 2.6 or newer.
Thanks: "mancha".
* In main(), when parsing form input fails, the CGI script exits without
producing any output whatsoever. Wouldn't it be better to actually
emit an error status, instead of expecting the server to do something
sane with a script that produces no output?
* In mpRead(), a check is done to insure the requested length is not
greater than the amount of data still available, and to adjust it
if necessary. However, this check is currently done _after_ reading
data from the putback buffer, in which process len is decremented by
the amount of putback data read, but mpp->offset is not correspondingly
incremented (this happens later). As a result, the check uses too
small a value for len, and so fails to stop reading soon enough if
the requested length is greater than what is available _and_ there
was any data in the putback buffer.
The fix is to move the check to the beginning of mpRead()
* Further, if a read request is satisfied _entirely_ from the putback
buffer, mpp->offset is not updated at all, resulting in a similar
problem. The solution is to update mpp->offset in the "else if (got)"
case.
* In cgiParsePostMultipartInput(), if the Content-Disposition of a part
is not "form-data", afterNextBoundary() is not called before beginning
to process the next part. As a result, parsing of the next part headers
begins with the body of the unwanted part. It is necessary in this case
to call afterNextBoundary() before continuing with the next cycle.
* In handling out-of-memory conditions in afterNextBoundary(), *outP is
set to '\0'. While this is technically legal ('\0' is "an integral
constant expression with the value 0"), it looks funny.
* In cgiCookieString(), a change was introduced in v2.02 which purports
to prevent an overrun in cases where cgiCookie is exactly equal to
the requested cookie name. In fact, the problem can also occur if
the requested name occurs with no values at the end of cgiCookie.
Further, the change from v2.02 does not fix the problem, because it
compares the _pointers_ p and n to NULL, which they will never equal,
rather than comparing the pointers they point at to NUL.
* Also in cgiCookieString(), there is a comment suggesting that the main
loop never terminates except with a return. This is not the case.
For example, it will terminate if the requested cookie is not found
and the cgiCookie string ends in a semicolon.
* Why did days[] (formerly daysOfWeek[]) and months[] become non-static?
This pollutes the namespace of programs using CGIC.
* In cgiReadEnvironment(), when reading in the contents of an uploaded
file, it is possible that a temporary file is successfully created
but then cannot be opened. In this case, no attempt is made to remove
the tempoary file.
* Further, when a form entry does _not_ include an uploaded file,
e->tfileName is set to malloc'd but uninitialized memory. It should
be set to an empty string, by setting e->tfileName[0] to zero after
the 1-byte buffer is allocated.
Version 3.2.9 (2014-04-07)
--------------------------
### Fixed
Fixed a critical vulnerability of the install tool (see #6855).
### Fixed
Filter disabled groups in the registration module in the front end (see #6757).
### Fixed
Work around a bug in SimplePie with the "skip items" option (see #6107).
### Fixed
Fix the Swipe "continuous" option if there are exactly two slides (see #6812).
### Fixed
Apply `addslashes()` to strings in the `Config` class (see #6808).
### Fixed
Do not empty all fallback fields in sorting mode 4 (see #6498).
### Fixed
Do not allow template names to be longer than the DB fields (see #6819).
### Fixed
Correctly set the start time of a multi-day event (see #6802).
### Fixed
Correctly handle OR queries in the listing module (see #6344).
### Fixed
Use a monospaced font for the plain text newsletter preview (see #6790).
### Fixed
Adjust the `vScrollTo()` offset if the paste hint is visible (see #6478).
from pkgsrc-wip, packaged by Kamel Derouiche (required for PR pkg/42561).
ezPyCrypto is the culmination of my search for an approachable yet powerful
crypto library for Python.
Changelog:
New features include initial support for volumetrics in Cycles, and faster rendering of hair and textures. The motion tracker now supports weighted tracks and has improved planar tracking. For mesh modeling there are new Laplacian deform and wireframe modifiers, along with more control in the bevel tool. The game engine now supports object levels of detail.
The first results from the new user interface project are also in this release, with dozens of changes to make the interface more consistent and powerful. This is also the first release of the multithreaded dependency graph, which makes modifier and constraint evaluation faster in scenes with multiple objects.
Cycles Rendering
Cycles now has initial support for volume rendering including emission, absorption and scattering. Volume rendering can be used to render effects like fire, smoke, mist, absorption in glass, and many other effects that can't be represented by surface meshes alone.
CPU rendering performance was improved, particularly for hair, textures and Open Shading Language.
Motion Tracker
Trackers can now be weighted, to keep the result stable as feature disappear or become difficult to track. The plane track workflow was improved to be easier to control. Automatic feature detection was made more robust using a new detector algorithm.
User Interface
The toolbar now has tabs to organize tools in categories. Multiple buttons can now be edited at once, for example for XYZ axes or color channels. Transform tools now have a mode to enter expressions and units. Other changes were done to improve lists, header menus, tooltips, buttons, menus and more.
Modeling
The Laplacian Deform modifier was added to pose a mesh while preserving geometric details of the surface, and a new wireframe modifier allows you transform your mesh into a wireframe representation. The boolean modifier now supports ngons, and there are improvements to the bevel, screw and triangulate modifiers.
The bevel tool now offers more control over the bevel profile and results, and the knife tool was improved as well.
Threaded Dependency Graph
An important change that happened under the hood is the threaded dependency graph. This means that object modifiers and constraints, among other things, can now be computed with multiple threads taking advantage of multicore processors. This will be most noticeable with scenes that have many objects, or multiple objects with heavy modifiers. This is the first step in making the dependency graph in Blender more powerful.
Game Development
The Blender game engine now supports discrete level of detail for meshes. For game developers, support for working with Photoshop PSD files has been added.
A new view navigation walk mode has been added, which has a control scheme as typically found in first person shooter games. This can be useful for game developers to navigate levels as if in a game.
Freestyle NPR Rendering
The Freestyle Python API is an essential part that makes it a highly programmable NPR rendering engine. This API has been reorganized.
More Features
Many small changes and features were done all over Blender. Some notable new feature are normalized display for FCurves, derivative map baking, baking to vertex colors, better visualization of masks and control over mask filling, gravity option for sculpting, negative texture values to support vector displacement and a Lamp Data shading node to create more customized NPR shaders.
Feature Videos
For a visual demonstration of some of the new features in this release, check out the feature videos created during the development of this release.
Addons
Several addons have been added and updated, including Node Wrangler (aka Node Efficiency Tools) and a new Sketchfab Exporter addon
Bug Fixes
In addition to the new features, over 560 bugs that existed in previous releases have been fixed.
Properly render #include in the SYNOPSIS with In.
Handle nested escape codes in L<> links (and ignore them).
Properly consume whitespace following <code>X<></code> and <code>N<></code>.
* Do not install documents
Changelog:
Release 1.3.13 (2 Apr 2014 -- compared to 1.3.12)
-------------------------------------------------
* Bug fix to string_ref::c_str().
* Make ImageBuf iterators return valid black pixel data for missing tiles.
* Fix broken build when EMBEDPLUGINS=0.
* Fix broken build when building against OpenEXR 1.x.
* Fix bugs in ImageBufAlgo::flatten().
* Fix DPX handling of unsupported pixel types.
* Fix compilation problems for PowerPC.
* Fix Parameter neglect of proerly copying the m_interp field for assignment
and copy construction.
* Fixes for OpenBSD compilation.
* DPX: accept pixel ratio (x/0) to mean 1.0, not NaN.
* Fix ImageBufAlgo::circular_shift (and oiiotool --cshift) that did not
wrap correctly for negative shifts.
Release 1.3.12 (25 Jan 2014 -- compared to 1.3.11)
--------------------------------------------------
* Add .sxr and .mxr as possible filename extensions for OpenEXR.
* PNG: add "png:compressionlevel" and "compression" strategy attributes.
* Fix recent build break where OIIO would no longer compile properly
against OpenEXR <= 1.6.
* oiiotool --origin could crash with certain large ImageCache-backed
images.
Release 1.3.11 (8 Jan 2014 -- compared to 1.3.10)
-------------------------------------------------
* DPX output: honor the "Software" metadata attribute passed in.
* OpenEXR: fix crashing bug when reading stringvector attributes in the
file.
* Fix build breaks when building against OpenEXR 1.x.
* Fix warnings with Boost Python + gcc 4.8.
Release 1.3.10 (2 Jan 2014 -- compared to 1.3.9)
------------------------------------------------
* OpenEXR fix: multi-part EXR (2.0) didn't write the required "name"
attribute for each part.
* iconvert: properly handle multi-image files for formats that can't
append subimages.
* iv info window should print native file info, not translated
ImageBuf/ImageCache info.
* Improved strutil_test now much more comprehensively unit tests
Strutil.
* Strutil::split() fixes bug when maxsplit is not the default value.
* Fix ImageCache::get_pixels() for the chbegin != 0 case, when cache
and output buffer types were not identical.
* DPX bug fix -- inappropriate use of "dpx_ImageDescriptor" could make
invalid DPX files (especially when reading metadata from one DPX
file, changing the number of channels, then writing out again as a
DPX file).
Release 1.3 (2 Dec 2013 -- compared to 1.2.x)
----------------------------------------------
Major new features and improvements:
* Huge overhaul of the Python bindings: TypeDesc, ImageSpec (1.3.2),
ImageInput, ImageOutput (1.3.3), ROI, ImageBuf (1.3.4), ImageBufAlgo
(1.3.6). The Python bindings were pretty rusty, badly tested,
undocumented, and had not kept up with recent changes in the C++ APIs.
That's all fixed now, the Python APIs are finally first-class citizens
(including full functionality, unit tests, and docs), and we intend to
keep it that way.
* The ability for an application to supply custom ImageInput and associate
them with a file extension. Those II's can do anything, including
generate image data procedurally.
* GIF reader
Public API changes:
* Large overhaul of the Python bindings. See the (finally existing!) docs.
* ImageBufAlgo:
* New functions: nonzero_region(); ociodisplay(), resize() variety
that lets you specify the filter by name; 2-argument (non-in-place)
versions of add, sub, mul, rangecompress, rangeexpand, unpremult,
premult, clamp fixNonFinite; sub() varieties that take float or
float* operands.
* Removed several IBA functions that have been deprecated since 1.2.
* Deprecated the single-image in-place versions of add, sub, mul,
rangecompress, rangeexpand, unpremult, premult, clamp fixNonFinite.
* ImageBuf:
* read() and init_spec() are no longer required, somewhat simplifying
application code that uses ImageBuf. All ImageBuf API calls
automatically read the spec and/or pixels from their named file if
they are needed, if it has not already been done. (1.3.4)
* save() is deprecated, and new ImageBuf::write() is now preferred
(naming symmetry). (1.3.4)
* New set_write_format() and IB::set_write_tiles() allow override of
default choices for data format and tile size for subsequent calls
to ImageBuf::write(). (1.3.4)
* ImageCache / TextureSystem:
* ImageCache::add_file() lets you seed the ImageCache with a "virtual file"
that will read from a custom ImageInput. This lets you add "procedural
images" to the IC.
* ImageCache::add_tile() lets you add tiles to the ImageCache. The caller
can initialize those tiles with any pixel values it chooses.
* A new variety of IC/TS::destroy() takes a 'bool teardown' parameter
that, when true, does a complete teardown of the underlying ImageCache,
even if it's the "shared" one. (1.3.7)
* OIIO::declare_imageio_format() exposes a way to give OIIO a custom
ImageInput and/or ImageOutput (via factory functions) and associate them
with particular file extensions. This makes it especially easy for an
app to make a procedural image generator that looks to the entire rest
of OIIO like a regular image file. (1.3.2)
* TypeDesc::VECSEMANTICS now have additional enum tags for TIMECODE and
KEYCODE to indicate that the data represents an SMPTE timecode or
SMPTE keycode, respectively. (1.3.7)
Fixes, minor enhancements, and performance improvements:
* oiiotool improvements:
* --autotrim Shrinks pixel data window upon output to trim black
edges. (1.3.2)
* --siappend Appends subimages of top two images on the stack. (1.2.2)
* --datadump will print all pixel values of an image (debugging tool) (1.3.6)
* --flatten turns a "deep" image into a flat one by depth-compositing within
each pixel (1.3.6).
* --ociodisplay applies an OpenColorIO display transformation. (1.3.7)
* Fix memory leak when processing frame range. (1.2.1/1.3.2)
* --help now returns a success error code, not a failure. (1.2.1/1.3.2)
* Fix incorrect help message about --ociolook. (1.2.1/1.3.2)
* Fix typo in "oiio:Colorspace" attribute name that interfered
with correct color space conversion in --colorconvert. (1.2.1)
* Many fixes and improvements to XMP & IPTC metadata handling. (1.2.2)
* Multithread speed improvement when opening files by reducing how
much time ImageInput::create and/or ImageOutput::create hold a
global mutex.
* oiiotool --origin and --fullpixels, when operating on cropped or
overscanned image, could sometimes do the wrong thing. (1.2.2/1.3.3)
* oiiotool --colorconvert did not work properly when the color
transformation was detected to be a no-op. (1.2.2/1.3.3)
* oiiotool --fit did not handle padding or offsets properly. (1.2.2/1.3.3)
* Changed/improved the behavior of --rangecompress/--rangeexpand. (1.3.3)
* 'oiiotool --pattern checker' was incorrect when nonzero offsets were
used. (1.2.3/1.3.4)
* oiiotool --runstats prints the total time/memory on every iteration
when doing file sequence wildcard iteration. (1.3.4)
* Eliminated a particular situation that might hit an ASSERT. Instead,
bubble up a real error message. (1.3.4)
* oiiotool --resize and --resample fixed for overscan images (1.3.5)
* --ociolook applies OCIO looks. (1.3.6)
* Supports printf-style frame range wildcards ('%04d') in addition to the
'#' style, and scan for matching frames if no explicit framespec is
provided. (1.3.6)
* ImageBufAlgo improvements:
* colorconvert() did not work properly when the color transformation was
detected to be a no-op.
* colorconvert(): added a variety that specifies color spaces by name.
* New ociolook() function applies OCIO "looks." (1.3.6)
* checker() was incorrect when nonzero offsets were used.
* checker() now has default values of 0 for the 'offset' parameters
(and so may be omitted if you want 0 offsets). (1.3.4)
* unsharp_mask() bug when src and dst were different data formats.
(1.2.3/1.3.4)
* Better dealing with cases of IBA functions detecting and issuing
errors when inputs that must be initialized are not. (1.3.4)
* We changed the behavior of rangecompress/rangeexpand. We swear
the new way is better. (1.3.3)
* New nonzero_region() returns the shrink-wrapped nonzero pixel data window.
(1.3.2)
* resize() has a new variety that lets you specify the filter by name
(rather than allocating ans passing a Filter2D*).
* resize() and resample() fixed to more robustly handle overscan
images. (1.3.5)
* over()/zover() are no longer restricted to float images. (1.3.7)
* ImageBuf:
* ImageBuf::write() writes untiled images by default, fixing some
tricky issues when IB's start thinking they're tiled because of
interaction with the ImageCache (which makes everything look tiled).
* ImageBuf::file_format_name() never worked properly, now is fixed (1.3.4)
* Fixed bug that caused incorrect ImageBuf::copy_pixels() when the two
IB's had different data types. (1.3.4/1.2.3)
* Improved iterator's handling of how overscanned pixels interact
with wrap modes. (1.3.6)
* Fixed a bug with black wrap mode not working correctly. (1.3.7/1.2.4)
* ImageCache/TextureSystem:
* More careful with texture de-duplication -- texture value lookups
use de-duplication, but metadata lookups (e.g., get_texture_info)
uses the metadata from the original file.
* get_image_info/get_texture_info queries for "datawindow" and
"displaywindow". (1.3.6)
* The multi-point version of environment() was broken. (1.3.9)
* maketx: --hicomp uses the new range compression/expansion formula. (1.3.3)
* DPX:
* support multi-image (often used for stereo frames).
* Fixed DPX input that didn't recognized offset/cropped images.
(1.2.2/1.3.3, another fix in 1.3.4)
* Fixed DPX output crash with cropped images. (1.2.2/1.3.3)
* Now correctly get and set "smpte:TimeCode" and "smpte:KeyCode"
metadata. (1.3.7).
* OpenEXR:
* Fixed write_scanlines handling of per-channel data types (1.3.6)
* Several OpenEXR 2.0 deep file fixes: only some compression types
supported, write_tiles passed wrong parameters, must suppress some
attribute names. (1.2.3/1.3.6)
* Now correctly get and set "smpte:TimeCode" and "smpte:KeyCode"
metadata. (1.3.7).
* JPEG: fixed that some JPEG files were not being recognized because of
magic number issues.
* TGA: Correctly unassociate alpha if it's from an unasociated file;
also, always write unassociated data because so few Targa readers in
the wild seem to properly handle associated alpha.
* PNG: More correct handling of unassociated alpha.
* TIFF: More correct handling of unassociated alpha.
* PSD: fix handling of associated vs unassociated alpha. (1.2.3)
* maketx fixed to handle inputs that are a mixture of cropped and
overscanned. (1.3.5)
* Fix segfault if OCIO is set to a non-existant file. (1.3.6)
* Slight performance increase when writing images to disk (1.3.6)
* Many fixes to make OIIO compile with libc++ (clang's new C++ library,
and the default on OSX Mavericks). (1.2.3/1.3.6, 1.3.7)
* Fixed several potential buffer overflow errors from unsafe strcpy. (1.3.8)
Build/test system improvements:
* Fix broken tests under Windows. (1.3.2)
* Many fixes for compiler warnings on various platforms: fmath_test.cpp,
field3dinput.cpp, sysutil.cpp, argparse.cpp, oiiotool.cpp. (1.2.1/1.3.2)
* Fixes problems on little-endian architecture with texture3d.cpp.
(1.2.1/1.3.2)
* Fix compilation problems on architectures with gcc, but no 'pause'
instruction. (1.2.1/1.3.2)
* Fix build search path for correctly finding libopenjpeg 1.5. (1.2.1)
* Work around bug in older MSVC versions wherein Filesystem::open needed
to explicitly seek to the beginning of a file. (1.2.1/1.3.2)
* Build fixes for FreeBSD. (1.2.1/1.3.2, 1.2.4/1.3.6)
* Fix testsuite/oiiotool on Windows -- windows shell doesn't expand
wildcards. (1.2.1/1.3.2)
* Fix warnings for new GCC 4.8 compiler.
* Always search for and use the release HDF5 libraries, not the debugging
ones, even when building debug OIIO (this fixes errors when a system
does not have the debugging HDF5 libraries installed). (1.2.2/1.3.3)
* Extensive unit tests in the testsuite for the Python bindings.
* Fix compiler error on MIPS platform. (1.2.2/1.3.3)
* Add FIELD3D_HOME description to 'make help' (1.2.2/1.3.3)
* Add cmake variables ILMBASE_CUSTOM_INCLUDE_DIR, ILMBASE_CUSTOM_LIB_DIR,
OPENEXR_CUSTOM_INCLUDE_DIR, and OPENEXR_CUSTOM_LIB_DIR to make it
easier to have site-specific hints for these packages' locations. (1.3.4)
* Add BOOST_HOME and OCIO_HOME controls from the top-level Makefile wrapper.
(1.3.4/1.2.3)
* Accommodate new cmake release that slightly changes the HDF5 library
naming. (1.3.6)
* Various fixes to make the code compile properly with libc++ (clang's
rewrite of the C++ standard library). (1.3.6)
* Updated PugiXML (partly to help compilation with libc++) (1.3.6)
* Better support for NOTHREADS (for some legacy systems) (1.3.6)
* Fix to __attribute__(visibility) for gcc < 4.1.2 (1.3.6)
* Improve the CMake build files to fully quote path constructions to make
it more robust for builds with paths containing spaces. (1.3.7)
* Moved the main CMakeLists.txt file to the top level directory, per usual
CMake conventions. (1.3.7)
Developer goodies:
* Docs improvement: full documentation of ImageBufAlgo. (1.2.1/1.3.2)
* Merge improved "Tinyformat" that fixes a bug in some old glibc versions
(1.3.2).
* Now each command line tools explicitly converts to UTF native arguments,
rather than relying on it happening in ArgParse (which no longer does
so). (1.3.2)
* Strutil::contains() and icontains(). (1.2.2/1.3.3)
* Updatd "Tinyformat" to the latest release (1.3.6)
* Sysutil::physical_memory() tries to figure out the total physical memory
on the machine. (1.3.6)
* Strutil::safe_strcpy (1.3.8)
* ParamValue now allows get/set of the hidden 'interp' field. (1.3.9)
Release 1.2.3 (1 Nov 2013)
--------------------------
* 'oiiotool --pattern checker' (and ImageBufAlgo::checker) was
incorrect when nonzero offsets were used.
* ImageBufAlgo::unsharp_mask() bug when src and dst were different
data formats.
* PSD: fix handling of associated vs unassociated alpha.
* Fixed bug that caused incorrect ImageBuf::copy_pixels() when the two
IB's had different data types.
* Add BOOST_HOME and OCIO_HOME controls from the top-level Makefile wrapper.
* Several OpenEXR 2.0 deep file fixes: only some compression types
supported, write_tiles passed wrong parameters, must suppress some
attribute names.
* DPX - several fixes to properly handle images with nonzero origins.
* Fixes for recent cmake not finding HDF5 properly.
* Many fixes to make OIIO compile with libc++ (clang's new C++ library,
and the default on OSX Mavericks).
* Fix OpenEXR write_scanlines handling of per-channel data types.
* Upgraded PugiXML to a more modern version (necessary for clean compile
with libc++).
Data from the CLDR 25 release: Many bug fixes
Time zone data: 2014b, including post CLDR 25 time zone data update to CLDR.
U+20BD Ruble Sign added (from Unicode 7.0, otherwise ICU 53 still uses Unicode 6.3)
MeasureFormat API for new units in CLDR 24
Hoisted setContext/getContext from SimpleDateFormat to DateFormat, implement context-sensitive capitalization of relative dates
Added setContext/getContext methods to NumberFormat (and unum_setContext/unum_getContext for UNumberFormat), implement context-sensitive number formatting (for RBNF spellout)
Improved lenient date parsing consistency between ICU4C and ICU4J, add finer-grained control of date parsing leniency
Fixed numeric rounding in TimeUnitFormat
Fixes to Unicode 6.3 bidirectional algorithm implementations to behave exactly like reference implementations
Improved UTF-16 charset detection
Collation code re-implemented
Many bugs fixed, some enhancements implemented (link for ticket query)
Passes full UCA conformance tests now
Updated to UCA 6.3/CLDR 24 root collation
Performance: C++ UTF-8 and Java string comparisons significantly faster (very small reduction for C++ UTF-16)
Collation data size (uncompressed) reduced from 4.48MB (ICU 52) to 2.62MB
New data format, removed empty files, fixed genrb bug
More APIs function when collation rule strings have been omitted from the data files (e.g., getTailoredSet())
Java Collator.compare(Object, Object) now works with CharSequence, not just String
Java Collator base class (does not apply to RuleBasedCollator instances): getters for strength, decomposition mode, and locales return hardcoded default values; their setters do nothing
Rule syntax and semantics tightened and improved, matching LDML 25 Collation Rule Syntax
In particular, rule chains now must start with a reset.
Setting of variableTop deprecated, and not supported in rule syntax any more
Replaced by the new maxVariable setting; see LDML 25 Collation Settings
Accounting format supported in NumberFormat
RelativeDateTimeFormatter class for formatting relative times such as "3 weeks ago" or "next Tuesday."
Updated Spoof Checker for Unicode Security Standard version 6.3.