1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
Changelog
2006-06-02:
- initial release of version 0.1
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)
Release of version 0.2
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 postgresql unifold function
- added the DECOMPOSE option, if you neither use COMPOSE or DECOMPOSE, 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
occured when compiler optimization was switched on
Release of version 0.3
2006-09-17:
- added the LUMP option, which lumps certain characters together
(see lump.txt) (also used for the PostgreSQL "unifold" function)
- added the STRIPMARK option, which strips marking characters
(or marks of composed characters)
- deprecated ruby method String#char_ary in favour of String#utf8chars
Release of version 1.0
2006-09-20:
- included a gem file for the ruby version of the library
Release of version 1.0.1
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
Release of version 1.0.2
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).
Release of version 1.0.3
2007-06-25:
- Added a new PostgreSQL function 'unistrip', which behaves like 'unifold',
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.
Release of version 1.1.1
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.
Release of version 1.1.2
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)
Release of version 1.1.3
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
- Release of version 1.1.4
2009-08-20:
- Use RSTRING_PTR() and RSTRING_LEN() instead of RSTRING()->ptr and
RSTRING()->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:
- Release of version 1.1.5
2013-11-27:
- PostgreSQL 9.2 and 9.3 compatibility (lowercase 'c' language name)
- Release of version 1.1.6
|