]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/subversion/subversion/libsvn_subr/utf8proc/NEWS.md
Update svn-1.9.7 to 1.10.0.
[FreeBSD/FreeBSD.git] / contrib / subversion / subversion / libsvn_subr / utf8proc / NEWS.md
1 # utf8proc release history #
2
3 ## Version 2.1 ##
4
5 2016-12-16:
6
7 - New functions `utf8proc_map_custom` and `utf8proc_decompose_custom`
8   to allow user-supplied transformations of codepoints, in conjunction
9   with other transformations ([#89]).
10
11 - New function `utf8proc_normalize_utf32` to apply normalizations
12   directly to UTF-32 data (not just UTF-8) ([#88]).
13
14 - Fixed stack overflow that could occur due to incorrect definition
15   of `UINT16_MAX` with some compilers ([#84]).
16
17 - Fixed conflict with `stdbool.h` in Visual Studio ([#90]).
18
19 - Updated font metrics to use Unifont 9.0.04.
20
21 ## Version 2.0.2 ##
22
23 2016-07-27:
24
25 - Move `-Wmissing-prototypes` warning flag from `Makefile` to `.travis.yml`
26   since MSVC does not understand this flag and it is occasionally useful to
27   build using MSVC through the `Makefile` ([#79]).
28
29 - Use a different variable name for a nested loop in `bench/bench.c`, and
30   declare it in a C89 way rather than inside the `for` to avoid "error:
31   'for' loop initial declarations are only allowed in C99 mode" ([#80]).
32
33 ## Version 2.0.1 ##
34
35 2016-07-13:
36
37 - Bug fix in `utf8proc_grapheme_break_stateful` ([#77]).
38
39 - Tests now use versioned Unicode files, so they will no longer
40   break when a new version of Unicode is released ([#78]).
41
42 ## Version 2.0 ##
43
44 2016-07-13:
45
46 - Updated for Unicode 9.0 ([#70]).
47
48 - New `utf8proc_grapheme_break_stateful` to handle the complicated
49   grapheme-breaking rules in Unicode 9.  The old `utf8proc_grapheme_break`
50   is still provided, but may incorrectly identify grapheme breaks
51   in some Unicode-9 sequences.
52
53 - Smaller Unicode tables ([#62], [#68]).  This required changes
54   in the `utf8proc_property_t` structure, which breaks backward
55   compatibility if you access this `struct` directly.  The
56   functions in the API remain backward-compatible, however.
57
58 - Buffer overrun fix ([#66]).
59
60 ## Version 1.3.1 ##
61
62 2015-11-02:
63
64 - Do not export symbol for internal function `unsafe_encode_char()` ([#55]).
65
66 - Install relative symbolic links for shared libraries ([#58]).
67
68 - Enable and fix compiler warnings ([#55], [#58]).
69
70 - Add missing files to `make clean` ([#58]).
71
72 ## Version 1.3 ##
73
74 2015-07-06:
75
76 - Updated for Unicode 8.0 ([#45]).
77
78 - New `utf8proc_tolower` and `utf8proc_toupper` functions, portable
79   replacements for `towlower` and `towupper` in the C library ([#40]).
80
81 - Don't treat Unicode "non-characters" as invalid, and improved
82   validity checking in general ([#35]).
83
84 - Prefix all typedefs with `utf8proc_`, e.g. `utf8proc_int32_t`,
85   to avoid collisions with other libraries ([#32]).
86
87 - Rename `DLLEXPORT` to `UTF8PROC_DLLEXPORT` to prevent collisions.
88
89 - Fix build breakage in the benchmark routines.
90
91 - More fine-grained Makefile variables (`PICFLAG` etcetera), so that
92   compilation flags can be selectively overridden, and in particular
93   so that `CFLAGS` can be changed without accidentally eliminating
94   necessary flags like `-fPIC` and `-std=c99` ([#43]).
95
96 - Updated character-width tables based on Unifont 8.0.01 ([#51]) and
97   the Unicode 8 character categories ([#47]).
98
99 ## Version 1.2 ##
100
101 2015-03-28:
102
103 - Updated for Unicode 7.0 ([#6]).
104
105 - New function `utf8proc_grapheme_break(c1,c2)` that returns whether
106   there is a grapheme break between `c1` and `c2` ([#20]).
107
108 - New function `utf8proc_charwidth(c)` that returns the number of
109   column-positions that should be required for `c`; essentially a
110   portable replacment for `wcwidth(c)` ([#27]).
111
112 - New function `utf8proc_category(c)` that returns the Unicode
113   category of `c` (as one of the constants `UTF8PROC_CATEGORY_xx`).
114   Also, a function `utf8proc_category_string(c)` that returns the Unicode
115   category of `c` as a two-character string.
116
117 - `cmake` script `CMakeLists.txt`, in addition to `Makefile`, for
118   easier compilation on Windows ([#28]).
119
120 - Various `Makefile` improvements: a `make check` target to perform
121   tests ([#13]), `make install`, a rule to automate updating the Unicode
122   tables, etcetera.
123
124 - The shared library is now versioned (e.g. has a soname on GNU/Linux) ([#24]).
125
126 - C++/MSVC compatibility ([#17]).
127
128 - Most `#defined` constants are now `enums` ([#29]).
129
130 - New preprocessor constants `UTF8PROC_VERSION_MAJOR`,
131   `UTF8PROC_VERSION_MINOR`, and `UTF8PROC_VERSION_PATCH` for compile-time
132   detection of the API version.
133
134 - Doxygen-formatted documentation ([#29]).
135
136 - The Ruby and PostgreSQL plugins have been removed due to lack of testing ([#22]).
137
138 ## Version 1.1.6 ##
139
140 2013-11-27:
141
142 - PostgreSQL 9.2 and 9.3 compatibility (lowercase `c` language name)
143
144 ## Version 1.1.5 ##
145
146 2009-08-20:
147
148 - Use `RSTRING_PTR()` and `RSTRING_LEN()` instead of `RSTRING()->ptr` and
149   `RSTRING()->len` for ruby1.9 compatibility (and `#define` them, if not
150   existent)
151
152 2009-10-02:
153
154 - Patches for compatibility with Microsoft Visual Studio
155
156 2009-10-08:
157
158 - Fixes to make utf8proc usable in C++ programs
159
160 2009-10-16:
161
162 ## Version 1.1.4 ##
163
164 2009-06-14:
165
166 - replaced C++ style comments for compatibility reasons
167 - added typecasts to suppress compiler warnings
168 - removed redundant source files for ruby-gemfile generation
169
170 2009-08-19:
171
172 - Changed copyright notice for Public Software Group e. V.
173 - Minor changes in the `README` file
174
175 ## Version 1.1.3 ##
176
177 2008-10-04:
178
179 - Added a function `utf8proc_version` returning a string containing the version
180   number of the library.
181 - Included a target `libutf8proc.dylib` for MacOSX.
182
183 2009-05-01:
184 - PostgreSQL 8.3 compatibility (use of `SET_VARSIZE` macro)
185
186 ## Version 1.1.2 ##
187
188 2007-07-25:
189
190 - Fixed a serious bug in the data file generator, which caused characters
191   being treated incorrectly, when stripping default ignorable characters or
192   calculating grapheme cluster boundaries.
193
194 ## Version 1.1.1 ##
195
196 2007-06-25:
197
198 - Added a new PostgreSQL function `unistrip`, which behaves like `unifold`,
199   but also removes all character marks (e.g. accents).
200
201 2007-07-22:
202
203 - Changed license from BSD to MIT style.
204 - Added a new function `utf8proc_codepoint_valid` to the C library.
205 - Changed compiler flags in `Makefile` from `-g -O0` to `-O2`
206 - The ruby script, which was used to build the `utf8proc_data.c` file, is now
207   included in the distribution.
208
209 ## Version 1.0.3 ##
210
211 2007-03-16:
212
213 - Fixed a bug in the ruby library, which caused an error, when splitting an
214   empty string at grapheme cluster boundaries (method `String#utf8chars`).
215
216 ## Version 1.0.2 ##
217
218 2006-09-21:
219
220 - included a check in `Integer#utf8`, which raises an exception, if the given
221   code-point is invalid because of being too high (this was missing yet)
222
223 2006-12-26:
224
225 - added support for PostgreSQL version 8.2
226
227 ## Version 1.0.1 ##
228
229 2006-09-20:
230
231 - included a gem file for the ruby version of the library
232
233 Release of version 1.0.1
234
235 ## Version 1.0 ##
236
237 2006-09-17:
238
239 - added the `LUMP` option, which lumps certain characters together (see `lump.md`) (also used for the PostgreSQL `unifold` function)
240 - added the `STRIPMARK` option, which strips marking characters (or marks of composed characters)
241 - deprecated ruby method `String#char_ary` in favour of `String#utf8chars`
242
243 ## Version 0.3 ##
244
245 2006-07-18:
246
247 - changed normalization from NFC to NFKC for postgresql unifold function
248
249 2006-08-04:
250
251 - added support to mark the beginning of a grapheme cluster with 0xFF (option: `CHARBOUND`)
252 - added the ruby method `String#chars`, which is returning an array of UTF-8 encoded grapheme clusters
253 - added `NLF2LF` transformation in postgresql `unifold` function
254 - added the `DECOMPOSE` option, if you neither use `COMPOSE` or `DECOMPOSE`, no normalization will be performed (different from previous versions)
255 - using integer constants rather than C-strings for character properties
256 - fixed (hopefully) a problem with the ruby library on Mac OS X, which occurred when compiler optimization was switched on
257
258 ## Version 0.2 ##
259
260 2006-06-05:
261
262 - changed behaviour of PostgreSQL function to return NULL in case of invalid input, rather than raising an exceptional condition
263 - improved efficiency of PostgreSQL function (no transformation to C string is done)
264
265 2006-06-20:
266
267 - added -fpic compiler flag in Makefile
268 - fixed bug in the C code for the ruby library (usage of non-existent function)
269
270 ## Version 0.1 ##
271
272 2006-06-02: initial release of version 0.1
273
274 [#6]: https://github.com/JuliaLang/utf8proc/issues/6
275 [#13]: https://github.com/JuliaLang/utf8proc/issues/13
276 [#17]: https://github.com/JuliaLang/utf8proc/issues/17
277 [#20]: https://github.com/JuliaLang/utf8proc/issues/20
278 [#22]: https://github.com/JuliaLang/utf8proc/issues/22
279 [#24]: https://github.com/JuliaLang/utf8proc/issues/24
280 [#27]: https://github.com/JuliaLang/utf8proc/issues/27
281 [#28]: https://github.com/JuliaLang/utf8proc/issues/28
282 [#29]: https://github.com/JuliaLang/utf8proc/issues/29
283 [#32]: https://github.com/JuliaLang/utf8proc/issues/32
284 [#35]: https://github.com/JuliaLang/utf8proc/issues/35
285 [#40]: https://github.com/JuliaLang/utf8proc/issues/40
286 [#43]: https://github.com/JuliaLang/utf8proc/issues/43
287 [#45]: https://github.com/JuliaLang/utf8proc/issues/45
288 [#47]: https://github.com/JuliaLang/utf8proc/issues/47
289 [#51]: https://github.com/JuliaLang/utf8proc/issues/51
290 [#55]: https://github.com/JuliaLang/utf8proc/issues/55
291 [#58]: https://github.com/JuliaLang/utf8proc/issues/58
292 [#62]: https://github.com/JuliaLang/utf8proc/issues/62
293 [#66]: https://github.com/JuliaLang/utf8proc/issues/66
294 [#68]: https://github.com/JuliaLang/utf8proc/issues/68
295 [#70]: https://github.com/JuliaLang/utf8proc/issues/70
296 [#77]: https://github.com/JuliaLang/utf8proc/issues/77
297 [#78]: https://github.com/JuliaLang/utf8proc/issues/78
298 [#79]: https://github.com/JuliaLang/utf8proc/issues/79
299 [#80]: https://github.com/JuliaLang/utf8proc/issues/80
300 [#84]: https://github.com/JuliaLang/utf8proc/pull/84
301 [#88]: https://github.com/JuliaLang/utf8proc/pull/88
302 [#89]: https://github.com/JuliaLang/utf8proc/pull/89
303 [#90]: https://github.com/JuliaLang/utf8proc/issues/90