6.6 KiB
utf8proc release history
Version 1.3
2015-07-06:
-
Updated for Unicode 8.0 (#45).
-
New
utf8proc_tolower
andutf8proc_toupper
functions, portable replacements fortowlower
andtowupper
in the C library ([#40]). -
Don't treat Unicode "non-characters" as invalid, and improved validity checking in general ([#35]).
-
Prefix all typedefs with
utf8proc_
, e.g.utf8proc_int32_t
, to avoid collisions with other libraries ([#32]). -
Rename
DLLEXPORT
toUTF8PROC_DLLEXPORT
to prevent collisions. -
Fix build breakage in the benchmark routines.
-
More fine-grained Makefile variables (
PICFLAG
etcetera), so that compilation flags can be selectively overridden, and in particular so thatCFLAGS
can be changed without accidentally eliminating necessary flags like-fPIC
and-std=c99
(#43). -
Updated character-width tables based on Unifont 8.0.01 (#51) and the Unicode 8 character categories (#47).
Version 1.2
2015-03-28:
-
Updated for Unicode 7.0 (#6).
-
New function
utf8proc_grapheme_break(c1,c2)
that returns whether there is a grapheme break betweenc1
andc2
(#20). -
New function
utf8proc_charwidth(c)
that returns the number of column-positions that should be required forc
; essentially a portable replacment forwcwidth(c)
(#27). -
New function
utf8proc_category(c)
that returns the Unicode category ofc
(as one of the constantsUTF8PROC_CATEGORY_xx
). Also, a functionutf8proc_category_string(c)
that returns the Unicode category ofc
as a two-character string. -
cmake
scriptCMakeLists.txt
, in addition toMakefile
, for easier compilation on Windows (#28). -
Various
Makefile
improvements: amake check
target to perform tests (#13),make install
, a rule to automate updating the Unicode tables, etcetera. -
The shared library is now versioned (e.g. has a soname on GNU/Linux) (#24).
-
C++/MSVC compatibility (#17).
-
Most
#defined
constants are nowenums
(#29). -
New preprocessor constants
UTF8PROC_VERSION_MAJOR
,UTF8PROC_VERSION_MINOR
, andUTF8PROC_VERSION_PATCH
for compile-time detection of the API version. -
Doxygen-formatted documentation (#29).
-
The Ruby and PostgreSQL plugins have been removed due to lack of testing (#22).
Version 1.1.6
2013-11-27:
- PostgreSQL 9.2 and 9.3 compatibility (lowercase
c
language name)
Version 1.1.5
2009-08-20:
- Use
RSTRING_PTR()
andRSTRING_LEN()
instead ofRSTRING()->ptr
andRSTRING()->len
for ruby1.9 compatibility (and#define
them, if not existent)
2009-10-02:
- Patches for compatibility with Microsoft Visual Studio
2009-10-08:
- Fixes to make utf8proc usable in C++ programs
2009-10-16:
Version 1.1.4
2009-06-14:
- replaced C++ style comments for compatibility reasons
- added typecasts to suppress compiler warnings
- removed redundant source files for ruby-gemfile generation
2009-08-19:
- Changed copyright notice for Public Software Group e. V.
- Minor changes in the
README
file
Version 1.1.3
2008-10-04:
- Added a function
utf8proc_version
returning a string containing the version number of the library. - Included a target
libutf8proc.dylib
for MacOSX.
2009-05-01:
- PostgreSQL 8.3 compatibility (use of
SET_VARSIZE
macro)
Version 1.1.2
2007-07-25:
- Fixed a serious bug in the data file generator, which caused characters being treated incorrectly, when stripping default ignorable characters or calculating grapheme cluster boundaries.
Version 1.1.1
2007-06-25:
- Added a new PostgreSQL function
unistrip
, which behaves likeunifold
, but also removes all character marks (e.g. accents).
2007-07-22:
- Changed license from BSD to MIT style.
- Added a new function
utf8proc_codepoint_valid
to the C library. - Changed compiler flags in
Makefile
from-g -O0
to-O2
- The ruby script, which was used to build the
utf8proc_data.c
file, is now included in the distribution.
Version 1.0.3
2007-03-16:
- Fixed a bug in the ruby library, which caused an error, when splitting an
empty string at grapheme cluster boundaries (method
String#utf8chars
).
Version 1.0.2
2006-09-21:
- included a check in
Integer#utf8
, which raises an exception, if the given code-point is invalid because of being too high (this was missing yet)
2006-12-26:
- added support for PostgreSQL version 8.2
Version 1.0.1
2006-09-20:
- included a gem file for the ruby version of the library
Release of version 1.0.1
Version 1.0
2006-09-17:
- added the
LUMP
option, which lumps certain characters together (seelump.md
) (also used for the PostgreSQLunifold
function) - added the
STRIPMARK
option, which strips marking characters (or marks of composed characters) - deprecated ruby method
String#char_ary
in favour ofString#utf8chars
Version 0.3
2006-07-18:
- changed normalization from NFC to NFKC for postgresql unifold function
2006-08-04:
- added support to mark the beginning of a grapheme cluster with 0xFF (option:
CHARBOUND
) - added the ruby method
String#chars
, which is returning an array of UTF-8 encoded grapheme clusters - added
NLF2LF
transformation in postgresqlunifold
function - added the
DECOMPOSE
option, if you neither useCOMPOSE
orDECOMPOSE
, no normalization will be performed (different from previous versions) - using integer constants rather than C-strings for character properties
- fixed (hopefully) a problem with the ruby library on Mac OS X, which occurred when compiler optimization was switched on
Version 0.2
2006-06-05:
- changed behaviour of PostgreSQL function to return NULL in case of invalid input, rather than raising an exceptional condition
- improved efficiency of PostgreSQL function (no transformation to C string is done)
2006-06-20:
- added -fpic compiler flag in Makefile
- fixed bug in the C code for the ruby library (usage of non-existent function)
Version 0.1
2006-06-02: initial release of version 0.1