pyicu 2.15.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. pyicu-2.15.1/CHANGES +546 -0
  2. pyicu-2.15.1/CREDITS +24 -0
  3. pyicu-2.15.1/LICENSE +22 -0
  4. pyicu-2.15.1/MANIFEST.in +42 -0
  5. pyicu-2.15.1/PKG-INFO +383 -0
  6. pyicu-2.15.1/README.md +350 -0
  7. pyicu-2.15.1/_icu_.cpp +313 -0
  8. pyicu-2.15.1/arg.h +973 -0
  9. pyicu-2.15.1/bases.cpp +2820 -0
  10. pyicu-2.15.1/bases.h +95 -0
  11. pyicu-2.15.1/bidi.cpp +1167 -0
  12. pyicu-2.15.1/bidi.h +29 -0
  13. pyicu-2.15.1/calendar.cpp +953 -0
  14. pyicu-2.15.1/calendar.h +32 -0
  15. pyicu-2.15.1/casemap.cpp +1491 -0
  16. pyicu-2.15.1/casemap.h +29 -0
  17. pyicu-2.15.1/char.cpp +2004 -0
  18. pyicu-2.15.1/char.h +29 -0
  19. pyicu-2.15.1/charset.cpp +342 -0
  20. pyicu-2.15.1/charset.h +30 -0
  21. pyicu-2.15.1/collator.cpp +1475 -0
  22. pyicu-2.15.1/collator.h +34 -0
  23. pyicu-2.15.1/common.cpp +1019 -0
  24. pyicu-2.15.1/common.h +464 -0
  25. pyicu-2.15.1/dateformat.cpp +2774 -0
  26. pyicu-2.15.1/dateformat.h +36 -0
  27. pyicu-2.15.1/displayoptions.cpp +236 -0
  28. pyicu-2.15.1/displayoptions.h +40 -0
  29. pyicu-2.15.1/errors.cpp +183 -0
  30. pyicu-2.15.1/errors.h +30 -0
  31. pyicu-2.15.1/format.cpp +2454 -0
  32. pyicu-2.15.1/format.h +65 -0
  33. pyicu-2.15.1/gender.cpp +107 -0
  34. pyicu-2.15.1/gender.h +29 -0
  35. pyicu-2.15.1/idna.cpp +276 -0
  36. pyicu-2.15.1/idna.h +32 -0
  37. pyicu-2.15.1/iterators.cpp +1572 -0
  38. pyicu-2.15.1/iterators.h +36 -0
  39. pyicu-2.15.1/layoutengine.cpp +829 -0
  40. pyicu-2.15.1/layoutengine.h +29 -0
  41. pyicu-2.15.1/locale.cpp +3053 -0
  42. pyicu-2.15.1/locale.h +35 -0
  43. pyicu-2.15.1/macros.h +475 -0
  44. pyicu-2.15.1/measureunit.cpp +1684 -0
  45. pyicu-2.15.1/measureunit.h +34 -0
  46. pyicu-2.15.1/messagepattern.cpp +453 -0
  47. pyicu-2.15.1/messagepattern.h +29 -0
  48. pyicu-2.15.1/normalizer.cpp +848 -0
  49. pyicu-2.15.1/normalizer.h +29 -0
  50. pyicu-2.15.1/numberformat.cpp +5835 -0
  51. pyicu-2.15.1/numberformat.h +60 -0
  52. pyicu-2.15.1/py/PyICU.egg-info/PKG-INFO +383 -0
  53. pyicu-2.15.1/py/PyICU.egg-info/SOURCES.txt +114 -0
  54. pyicu-2.15.1/py/PyICU.egg-info/dependency_links.txt +1 -0
  55. pyicu-2.15.1/py/PyICU.egg-info/top_level.txt +1 -0
  56. pyicu-2.15.1/py/icu/__init__.py +38 -0
  57. pyicu-2.15.1/pyproject.toml +7 -0
  58. pyicu-2.15.1/regex.cpp +952 -0
  59. pyicu-2.15.1/regex.h +29 -0
  60. pyicu-2.15.1/samples/break.py +127 -0
  61. pyicu-2.15.1/samples/strsrch.py +151 -0
  62. pyicu-2.15.1/script.cpp +606 -0
  63. pyicu-2.15.1/script.h +29 -0
  64. pyicu-2.15.1/search.cpp +614 -0
  65. pyicu-2.15.1/search.h +30 -0
  66. pyicu-2.15.1/setup.cfg +4 -0
  67. pyicu-2.15.1/setup.py +286 -0
  68. pyicu-2.15.1/shape.cpp +170 -0
  69. pyicu-2.15.1/shape.h +29 -0
  70. pyicu-2.15.1/spoof.cpp +427 -0
  71. pyicu-2.15.1/spoof.h +32 -0
  72. pyicu-2.15.1/test/__init__.py +25 -0
  73. pyicu-2.15.1/test/lohit_hi.ttf +0 -0
  74. pyicu-2.15.1/test/noms.txt +7 -0
  75. pyicu-2.15.1/test/test_Bidi.py +93 -0
  76. pyicu-2.15.1/test/test_BreakIterator.py +64 -0
  77. pyicu-2.15.1/test/test_BytesTrie.py +75 -0
  78. pyicu-2.15.1/test/test_Charset.py +79 -0
  79. pyicu-2.15.1/test/test_Collator.py +161 -0
  80. pyicu-2.15.1/test/test_DateTimePatternGenerator.py +128 -0
  81. pyicu-2.15.1/test/test_LayoutEngine.py +137 -0
  82. pyicu-2.15.1/test/test_ListFormatter.py +48 -0
  83. pyicu-2.15.1/test/test_Locale.py +70 -0
  84. pyicu-2.15.1/test/test_LocaleData.py +205 -0
  85. pyicu-2.15.1/test/test_LocaleMatcher.py +105 -0
  86. pyicu-2.15.1/test/test_MessageFormat.py +110 -0
  87. pyicu-2.15.1/test/test_MessagePattern.py +80 -0
  88. pyicu-2.15.1/test/test_Normalizer.py +62 -0
  89. pyicu-2.15.1/test/test_NumberFormat.py +52 -0
  90. pyicu-2.15.1/test/test_NumberFormatter.py +214 -0
  91. pyicu-2.15.1/test/test_Property.py +50 -0
  92. pyicu-2.15.1/test/test_PythonReplaceable.py +99 -0
  93. pyicu-2.15.1/test/test_Regex.py +60 -0
  94. pyicu-2.15.1/test/test_Script.py +92 -0
  95. pyicu-2.15.1/test/test_SimpleFormatter.py +45 -0
  96. pyicu-2.15.1/test/test_Spoof.py +158 -0
  97. pyicu-2.15.1/test/test_TimeZone.py +109 -0
  98. pyicu-2.15.1/test/test_Transliterator.py +96 -0
  99. pyicu-2.15.1/test/test_UCS4.py +45 -0
  100. pyicu-2.15.1/test/test_UCharsTrie.py +75 -0
  101. pyicu-2.15.1/test/test_UDate.py +49 -0
  102. pyicu-2.15.1/test/test_UnicodeSet.py +44 -0
  103. pyicu-2.15.1/timezone.cpp +2140 -0
  104. pyicu-2.15.1/timezone.h +41 -0
  105. pyicu-2.15.1/transliterator.cpp +773 -0
  106. pyicu-2.15.1/transliterator.h +88 -0
  107. pyicu-2.15.1/tries.cpp +880 -0
  108. pyicu-2.15.1/tries.h +29 -0
  109. pyicu-2.15.1/tzinfo.cpp +733 -0
  110. pyicu-2.15.1/tzinfo.h +29 -0
  111. pyicu-2.15.1/unicodeset.cpp +1503 -0
  112. pyicu-2.15.1/unicodeset.h +36 -0
pyicu-2.15.1/CHANGES ADDED
@@ -0,0 +1,546 @@
1
+ Version 2.15 -> 2.15.1
2
+ ----------------------
3
+ - fixed build error missing conditional ICU < 70 in UnicodeSetIterator()
4
+ - fixed Enum arg parser with broken strict aliasing rules (Jakub Wilk)
5
+ - replaced all new[]/delete[] with std::unique_ptr<[]>, fixed leaks
6
+ - replaced most new/delete with std::unique_ptr<>, fixed leaks
7
+
8
+ Version 2.14 -> 2.15
9
+ ----------------------
10
+ - replaced argument parsing with modern C++ solution (Martin Jansche)
11
+ - added wrappers for UnicodeSet.codePoints(), .strings() and .ranges
12
+ - added wrappers for MeasureUnit.with|getConstantDenominator()
13
+ - added wrapper for MeasureUnit.createPortionPer1E9()
14
+ - added support for ICU 77.1
15
+
16
+ Version 2.13.1 -> 2.14
17
+ ----------------------
18
+ - added wrappers for UCPMap.get|getRange and Char.getIntPropertyMap
19
+ - added wrapper for Locale.getUnicodeKeywordValue
20
+ - added wrapper for UnicodeString.remove, UnicodeString.removeBetween
21
+ - added wrapper for UnicodeString.retainBetween, UnicodeString.truncate
22
+ - fixed bogus UBool uses on stack instead of int (Martin Jansche)
23
+ - added support for ICU 76.1
24
+
25
+ Version 2.13 -> 2.13.1
26
+ ----------------------
27
+ - change c++11 to c++17 in setup.py as current versions of ICU require it
28
+
29
+ Version 2.12 -> 2.13
30
+ --------------------
31
+ - fixed build issues on Windows
32
+ - added wrappers for MeasureUnit(locale, width) and getUnitDisplayName()
33
+ - added wrappers for DateFormatSymbols.getEra|ZodiacNames()
34
+ - added wrappers for DateFormatSymbols.getZoneStrings()
35
+ - added wrappers for LocaleDisplayNames
36
+ - fixed bug dealloc calling wrong destructor on most types (Fredrik Roubert)
37
+ - added support for ICU 75.1
38
+ - added wrappers for LocalizedNumber|Range|Formatter.withoutLocale()
39
+ - added wrappers for UIdentifierType, Char.hasIDType(), Char.getIDTypes()
40
+ - added wrappers for UIdentifierStatus
41
+ - added wrappers for UProperty.IDENTIFIER_TYPE, UProperty.IDENTIFIER_STATUS
42
+
43
+ Version 2.11 -> 2.12
44
+ --------------------
45
+ - fixed bug in RegexMatcher.reset() not retaining ownership of string
46
+ - added wrappers for TimeZoneNames class
47
+ - added wrapper for TimeZone.getIanaID()
48
+ - added wrapper for Normalizer2.getNFKCSimpleCasefoldInstance()
49
+ - added wrappers for SpoofChecker.getBidiSkeleton(),areBidiConfusable()
50
+ - added wrappers for ListFormatter.createInstance(locale, type, width)
51
+ - added support for ICU 74.1
52
+
53
+ Version 2.10.2 -> 2.11
54
+ ----------------------
55
+ - fixed bug PluralFormat.format accepting python strings, which are immutable
56
+ - fixed bug with UWordBreak wrapping wrong enum (UBreakIteratorType)
57
+ - added wrappers for UBreakIteratorType, ULine|SentenceBreakTag
58
+ - added wrappers for DateTimePatternGenerator::set|getDateTimeFormat()
59
+ - added wrappers for Precision::incrementExact()
60
+ - Locale objects can now be sorted (Fredrik Roubert)
61
+ - added wrapper for Calendar::inTemporalLeapYear()
62
+ - added wrappers for Calendar::get|setTemporalMonthCode()
63
+ - changed all Calendar setters to return self instead of None, setter chaining
64
+ - added support for ICU 73.1
65
+
66
+ Version 2.10.1 -> 2.10.2
67
+ ------------------------
68
+ - fixed bug in logic computing max_char for PyUnicode_New()
69
+
70
+ Version 2.10 -> 2.10.1
71
+ ----------------------
72
+ - fixed build issues with ICU < 72
73
+
74
+ Version 2.9 -> 2.10
75
+ -------------------
76
+ - fixed bug with building on MacOS when pkg-config is present
77
+ - added link to note about building everything from sources
78
+ - added wrapper for u_cleanup/u_init sequence as ResourceBundle.resetICU()
79
+ - added wrapper for TimeZone.getRegion()
80
+ - added support for ICU 72.1
81
+ - added wrapper for UnicodeSetIterator::skipToStrings()
82
+ - added wrapper for DisplayOptions, DisplayOptions::Builder and related enums
83
+ - added wrapper for FormattedNumber::getNounClass()
84
+ - added wrapper for NumberFormatter.displayOptions()
85
+
86
+ Version 2.8.1 -> 2.9
87
+ --------------------
88
+ - added support for ICU 71.1
89
+ - added wrappers for UMeasurePrefix, MeasureUnit.withPrefix()|getPrefix()
90
+ - added UNumberRoundingPriority, FractionPrecision.withSignificantDigits()
91
+ - added UNumberTrailingZeroDisplay, Precision.trailingZeroDisplay()
92
+
93
+ Version 2.8 -> 2.8.1
94
+ --------------------
95
+ - renamed _icu extension module to _icu_ and moved it into icu module
96
+ - moved icu python module sources into py directory
97
+ - deleted long deprecated PyICU.py file
98
+
99
+ Version 2.7.4 -> 2.8
100
+ --------------------
101
+ - fixed test failure in test_DateTimeParserGenerator.py with version 70.1rc
102
+ - added wrappers for UCurrNameStyle and for ucurr_getName() onto CurrencyUnit
103
+ - added support for ICU 70.1
104
+ - added FieldPosition-less overloads to RuleBasedNumberFormat.format()
105
+ - added pyproject.toml file to (also) build via python -m build
106
+
107
+ Version 2.7.3 -> 2.7.4
108
+ ----------------------
109
+ - added wrappers for UWordBreak and BreakIterator.getRuleStatusVec()
110
+ - added wrappers for MessagePattern (Roman Kalukiewicz)
111
+ - added wrapper for Collator::getKeywordValuesForLocale()
112
+
113
+ Version 2.7.2 -> 2.7.3
114
+ ----------------------
115
+ - added wrappers for LocaleMatcher.acceptLanguage|FromHTTP()
116
+
117
+ Version 2.7.1 -> 2.7.2
118
+ ----------------------
119
+ - worked around limitation of Visual Studio 2017 (cgohlke)
120
+ - added missing test and samples files to distribution (foutrelis)
121
+
122
+ Version 2.7 -> 2.7.1
123
+ --------------------
124
+ - added some tests for TimeZone classes
125
+ - fixed bug w/FormattedNumberRange.getFirst|SecondDecimal() gone w/ ICU 68.1+
126
+ - fixed bug with VTimeZone.write() wrapper invoking VTimeZone.writeSimple()
127
+
128
+ Version 2.6 -> 2.7
129
+ ------------------
130
+ - added wrapper for Locale.canonicalize()
131
+ - added wrappers for MeasureUnit.product(), reciprocal(), getDimensionality()
132
+ - added wrapper for MeasureUnit.forIdentifier()
133
+ - implemented *, /, **, 1/m for MeasureUnit in terms of product and reciprocal
134
+ - added wrappers for BasicTimeZone, RuleBasedTimeZone, VTimeZone
135
+ - added wrappers for TimeZoneTransition, TimeZoneRule and its subclasses
136
+ - added wrappers for DateTimeRule, DateRuleType, TimeRuleType
137
+ - added support for ICU 69.1
138
+
139
+ Version 2.5 -> 2.6
140
+ ------------------
141
+ - added missing BreakIterator.getRuleStatus() wrapper
142
+ - added wrappers for UBiDi API
143
+ - added wrappers for UBiDiTransform API
144
+ - added support for ICU 68.1
145
+ - added wrappers for DateIntervalFormat.get/setContext()
146
+ - added wrapper for LocaleMatcher.isMatch()
147
+ - added wrapper for LocaleMatcherBuilder.setDirection()
148
+ - added wrappers LocaleMatcherBuilder.setMaxDistance(), setNoDefaultLocale()
149
+ - added wrappers for MeasureUnit.getComplexity() and UMeasureUnitComplexity
150
+ - added wrapper for MeasureUnit.getIdentifier()
151
+ - switched MeasureUnit.__str__() to use MeasureUnit::getIdentifier()
152
+ - added wrappers for new MeasureUnit static factory methods
153
+ - added wrapper for FormattedNumber.getOutputUnit()
154
+ - added wrapper for FormattedNumberRange.getDecimalNumbers()
155
+ - added wrappers for PluralRules.select(FormattedNumber|Range)
156
+
157
+ Version 2.4.3 -> 2.5
158
+ --------------------
159
+ - added support for turning on -pedantic with gcc or clang
160
+ - added support for ICU 67.1
161
+ - added wrappers for FormattedValue, ConstrainedFieldPosition, UFieldCategory
162
+ - made FormattedValue iterable via nextPosition()
163
+ - added wrappers for FormattedDateInterval, FormattedNumber, FormattedList
164
+ - added wrappers for FormattedRelativeDateTime and enums
165
+ - added wrappers for UNumberFormatFields, UNumberFormatAttribute
166
+ - added wrappers for NumberRangeFormatter, FormattedNumberRange and enums
167
+ - added icu.ICU_MAX_MAJOR_VERSION global set to largest ICU version supported
168
+
169
+ Version 2.4.2 -> 2.4.3
170
+ ----------------------
171
+ - added Char.getPropertyValueName() and Char.getPropertyValueEnum()
172
+ - fixed build errors with PythonReplaceable for ICU < 55
173
+
174
+ Version 2.4.1 -> 2.4.2
175
+ ----------------------
176
+ - fixed build issues with ICU < 59
177
+
178
+ Version 2.4 -> 2.4.1
179
+ --------------------
180
+ - added missing header files to MANIFEST.in
181
+
182
+ Version 2.3.1 -> 2.4
183
+ --------------------
184
+ - workedaround mystery variations in test_Script.testSurrogatePairs
185
+ - added support for RuleBasedBreakIterator.getBinaryRules()
186
+ - added support for RuleBasedBreakIterator(binaryRules)
187
+ - added wrappers for LocaleBuilder
188
+ - added workaround for MSVC++ compiler issue (kochelmonster)
189
+ - added support for ICU 65.1
190
+ - added wrappers for DecimalFormat.get|setMultiplierScale()
191
+ - added wrapper for Locale.createUnicodeKeywords()
192
+ - added wrappers for new MeasureUnit static factory methods
193
+ - added wrappers for LocaleMatcher
194
+ - added wrappers for LocaleMatcher::Builder as LocaleMatcher.Builder
195
+ - added wrappers for LocaleMatcher::Result as LocaleMatcher.Result
196
+ - added support for constructing Locale objects from keywords
197
+ - locale.addLikelySubtags() and minimizeSubtags() now modify locale in place
198
+ - added wrappers for BytesTrie, BytesTrie.Builder|Iterator|State
199
+ - added wrappers for UCharsTrie, UCharsTrie.Builder|Iterator|State
200
+ - added wrappers for GenderInfo
201
+ - added support for implementing a subclass of Replaceable in Python
202
+ - added support for using PythonReplaceable with Transliterator methods
203
+
204
+ Version 2.3 -> 2.3.1
205
+ --------------------
206
+ - fixed build error with ICU 61, ICU 62
207
+
208
+ Version 2.2 -> 2.3
209
+ ------------------
210
+ - added support for also trying pkg-config for build configuration (Linux)
211
+ - fixed compilation issue in collator.cpp when not using c++11 (and icu < 60)
212
+ - added support for ICU 64.1
213
+ - filled out wrappers for missing NumberFormatter methods and classes
214
+
215
+ Version 2.1 -> 2.2
216
+ ------------------
217
+ - added wrappers for AlphabeticIndex and ImmutableIndex
218
+ - added wrapper for NumberingSystem
219
+ - added wrapper for UGraphemeClusterBreak enum
220
+ - added wrapper for UHangulSyllableType enum
221
+ - added wrappers for Edits and Edits::Iterator and Edits support with CaseMap
222
+ - added support for ICU 63.1
223
+ - added wrappers for Locale::to|fromLanguageTag
224
+ - added wrappers for UIndicPositionalCategory, UIndicSyllabicCategory enums
225
+ - added wrapper for UVerticalOrientation enum
226
+
227
+ Version 2.0.6 -> 2.1
228
+ --------------------
229
+ - added wrapper for ULineBreak enum
230
+ - fixed crasher with pypy3 6.0
231
+
232
+ Version 2.0.5 -> 2.0.6
233
+ ----------------------
234
+ - fixed another build error with ICU < 62
235
+
236
+ Version 2.0.4 -> 2.0.5
237
+ ----------------------
238
+ - fixed build error with ICU < 62
239
+ - added casemap.h to MANIFEST.in
240
+
241
+ Version 2.0.3 -> 2.0.4
242
+ ----------------------
243
+ - added support for ICU 62.1
244
+ - added support for CaseMap (without Edits)
245
+
246
+ Version 2.0.2 -> 2.0.3
247
+ ----------------------
248
+ - added wrappers for Region class and URegionType enum
249
+ - added wrappers for MeasureFormat.formatMeasure and formatMeasurePerUnit
250
+ - fixed build errors with ICU 59.1
251
+ - replaced occurrences of nullptr with NULL, -std=c++11 req'd w/only ICU >= 60
252
+
253
+ Version 2.0.1 -> 2.0.2
254
+ ----------------------
255
+ - fixed build error with ICU < 53
256
+
257
+ Version 2.0 -> 2.0.1
258
+ --------------------
259
+ - made Measure wrapper abstract when building with ICU < 53.1
260
+ - str(Measure) uses NumberFormatter when available
261
+
262
+ Version 1.9.8 -> 2.0
263
+ --------------------
264
+ - use icu-config for configuring compiler and linker (Constantine Peresypkin)
265
+ - added wrappers for UBidiPairedBracketType enum
266
+ - added wrappers for UWordBreakValues enum
267
+ - added wrappers for UJoiningGroup enum
268
+ - added wrappers for 120+ MeasureUnit static factory methods
269
+ - added wrapper for NoUnit class
270
+ - added wrapper for TimeUnit class
271
+ - added missing Measure constructor(Formattable or number, MeasureUnit)
272
+ - added wrappers for NumberFormatter and related classes and enums, and tests
273
+ - added wrapper for SimpleFormatter and tests
274
+ - fixed bugs in test_LocaleData.py using undefined values (Fredrik Roubert)
275
+ - added wrapper for UMemory and made it UObject's base
276
+ - removed unused docs.py
277
+
278
+ Version 1.9.7 -> 1.9.8
279
+ ----------------------
280
+ - fixed bugs in "UnicodeString as sequence"; it's a sequence of 16-bit UChar
281
+ - added support for ICU 60.1
282
+
283
+ Version 1.9.6 -> 1.9.7
284
+ ----------------------
285
+ - fixed bug in setup.py with Python 3 when ICU_VERSION obtained from env
286
+ - added workaround for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54249
287
+ - added support for ICU 59.1
288
+
289
+ Version 1.9.5 -> 1.9.6
290
+ ----------------------
291
+ - turned icu into a package and moved docs.py into it
292
+ - fixed a bunch of warnings about missing int/int32_t casts
293
+ - added reduced version of missing in < 2.7 check_output() used in setup.py
294
+ - added wrapper for MessageFormat::getFormatNames()
295
+ - added check for ICU_VERSION env variable before calling icu-config
296
+ - added wrappers for static Normalizer2 constructors that appeared in ICU 49
297
+ - hopefully workedaround 'daylight' #define on Windows
298
+
299
+ Version 1.9.4 -> 1.9.5
300
+ ----------------------
301
+ - added icu-config --version check in setup.py to exclude libicule from libs
302
+ - fixed bug with Python3.3+ <-> UnicodeString conversion with surrogate pairs
303
+ - reworked Python3.3+ <-> UnicodeString with no allocations (Markus Scherer)
304
+ - fixed bugs with 32bit Python2..Python3.2 <-> UnicodeString conversions
305
+ - added conditionals around uses of features in newer ICUs (Keegan Parker)
306
+
307
+ Version 1.9.3 -> 1.9.4
308
+ ----------------------
309
+ - added wrappers for uloc_addLikelySubtags(), uloc_minimizeSubtags() on Locale
310
+ - fixed bug in some script.cpp wrappers not accepting surrogate pairs
311
+ - added wrapper for UnicodeString.countChar32() and test
312
+ - fixed crasher due to ICUException not incref'ing members during copy
313
+ - added support for ICU 58.1 (conditionally removed layout engine wrapper)
314
+ - fixed bug in StringCharacterIterator's dealloc freeing random memory
315
+ - reworked Python <-> Unicode conversions for Python 3.3+ to use new APIs
316
+
317
+ Version 1.9.2 -> 1.9.3
318
+ ----------------------
319
+ - added missing conditionals around uses of features in newer ICU versions
320
+ - added wrappers for TimeZone::getIDForWindowsID, TimeZone::getWindowsID
321
+ - added wrappers for DateTimePatternGenerator
322
+ - added missing Context and BooleanAttribute wrappers on DateFormat
323
+ - added support for ICU 57.1
324
+ - build tested with Python 2.7.5, Python 3.5.1 and PyPy 2.2.1
325
+
326
+ Version 1.9 -> 1.9.2
327
+ --------------------
328
+ - added MANIFEST.in to ensure nothing's missing in the 'sdist' package
329
+ - enabled -Wwrite-strings and fixed warnings
330
+ - added missing conditionals around uses of features in newer ICU versions
331
+
332
+ Version 1.8 -> 1.9
333
+ ------------------
334
+ - fixed utf-8 conversion error position reporting (bug 13113)
335
+ - fixed delete/delete[] bug in common.cpp (Fredrik Roubert)
336
+ - added support for ICU 54.1
337
+ - added wrapper for USpoofChecker and related enums
338
+ - added support for ICU 55.1
339
+ - replaced UnicodeString idna methods with new uidna.h UTS #46 wrapper (55.1)
340
+ - added wrapper for Char functions and related enums (from uchar.h)
341
+ - added wrapper for Shape defines and shapeArabic() (from ushape.h)
342
+ - added wrapper for RelativeDateTimeFormatter (bug 13115)
343
+ - build tested with Python 2.7.5, Python 3.3.0 and PyPy 2.2.1
344
+
345
+ Version 1.7 -> 1.8
346
+ ------------------
347
+ - added wrapper for Locale::getRoot()
348
+ - added tp_hash implementation for Locale type based on Locale::hashCode()
349
+ - fixed bug 13112 (Markus Scherer)
350
+ - added support for building with PyPy (tested on PyPy 2.2.1 / Python 2.7.3)
351
+ - added Locale(lcid) constructor calling uloc_getLocaleForLCID()
352
+ - added wrapper for CompactDecimalFormat and its createInstance() method
353
+
354
+ Version 1.6 -> 1.7
355
+ ------------------
356
+ - added missing #include for <unicode/uscript.h>
357
+ - fixed issues building against ICU 4.2
358
+ - added wrapper for Script.isRightToLeft() (bug 13081)
359
+ - added support for ICU 53.1 (bug 13110)
360
+ - added wrappers for other Script functions introduced in ICU 51
361
+
362
+ Version 1.5 -> 1.6
363
+ ------------------
364
+ - removed wrappers for some layoutengine.cpp internal flags (bug 13074)
365
+ - added wrappers for ULocaleData functions (bug 13080)
366
+ - added wrappers for uscript functions and UScriptCode enum (bug 13081)
367
+ - generalized freebsd setup.py support (Laurence Parry)
368
+ - added support for ICU 52.1
369
+ - added wrapper for Locale::setKeywordValue()
370
+ - added Locale::removeKeywordValue()
371
+ - added support for ListFormatter
372
+ - build tested with Python 2.7 and Python 3.3.0
373
+
374
+ Version 1.4 -> 1.5
375
+ ------------------
376
+ - added wrapper for MessageFormat::format(argumentNames, arguments, ...)
377
+ - fixed bug in t_transliterator_filteredTransliterate passing UBool for int
378
+ - added wrapper for DateFormat::format(Calendar)
379
+ - added wrapper for Calendar::set(UCalendarDateFields field, value)
380
+ - added wrappers for UnicodeString::toTitle() w/o iterator (Fredrik Roubert)
381
+ - added support for ICU 50.1
382
+ - improved test_Collator's testGetSortKey() (Markus Scherer)
383
+ - added pypi classifiers to PyICU project info, including Python 3 tag
384
+ - build tested with Python 2.7 and Python 3.3.0
385
+
386
+ Version 1.3 -> 1.4
387
+ ------------------
388
+ - fixed bug with default tzinfo set on ICUtzinfo type (bug 13038)
389
+ - fixed bug 13040 (Martin Hosken)
390
+ - added wrapper for Transliterator::toRules()
391
+ - added missing wrapper for RuleBasedNumberFormat(URBNFRuleSetTag, Locale)
392
+ - added support for ICU 49.1.1
393
+ - implemented wrapper for new NumberFormat.parseCurrency()
394
+ - fixed bug in CurrencyAmount.str() not calling correct getDouble() overload
395
+ - added ScriptCode constants new in 49.0
396
+
397
+ Version 1.2 -> 1.3
398
+ ------------------
399
+ - fixed bug 13031
400
+ - PyICU ready for Python 3.2 (tests pass 2to3'd) (Martin von Gagern)
401
+ - added auto-conversion of test sources for Python 3 during setup
402
+ - added support for LEFontInstance and LayoutEngine (Martin Hosken, bug 13035)
403
+ - fixed bugs in RegexMatcher and RegexPattern not keeping their inputs
404
+ - added support for ICU 4.8.1.1
405
+
406
+ Version 1.1 -> 1.2
407
+ ------------------
408
+ - fixed bug 13009 (Martin von Gagern)
409
+ - fixed bug 13011 (Martin von Gagern)
410
+ - some unit test beautification (Martin von Gagern)
411
+ - added macros for RTTI checks (Martin von Gagern)
412
+ - fixed bug 13012
413
+ - fixed bug 13013 (Yuriy Pilgun)
414
+ - added wrappers for Locale::isBogus()/setToBogus() (Jimmy Yuen Ho Wong)
415
+ - fixed bug 13022 (Martin von Gagern)
416
+ - added support for ICU 4.8
417
+
418
+ Version 1.0 -> 1.1
419
+ ------------------
420
+ - added support for ICU 4.6
421
+ - switched to using RTTI if ICU >= 4.6 instead of poor man's ICU RTTI
422
+ - fixed bug with incorrect icu.VERSION string on Windows build
423
+
424
+ Version 1.0 -> 1.0.1
425
+ --------------------
426
+ - removed variable length array uses in regex.cpp (Chandler Carruth)
427
+ - fixed bug 12983
428
+ - fixed bug with BreakIterator.setText() not keeping reference to text
429
+ - fixed incorrect conditional <windows.h> include in locale.cpp (Ralf Haring)
430
+ - fixed incorrect spellings of PyErr_SetFromWindowsErrWithFilename (ditto)
431
+ - fixed incorrect declaration of PythonTransliterator (Christian Heimes)
432
+
433
+ Version 0.9 -> 1.0
434
+ ------------------
435
+ - added support for UnicodeSet, UnicodeFunctor, UnicodeFilter, UnicodeMatcher
436
+ - added support for RegexPattern and RegexMatcher
437
+ - added support for Normalizer
438
+ - added support for UTransPosition (Christoph Burgmer)
439
+ - added support for UTransPosition and UnicodeFilter methods to Transliterator
440
+ - fixed bug in UnicodeString single character assignment method
441
+ - added support for extending Transliterator from Python (Christoph Burgmer)
442
+ - improved support for in-place operations on UnicodeStrings
443
+ - added support for Transliterator::registerInstance (Christoph Burgmer)
444
+ - added support for ICU 4.4
445
+ - added support for Normalizer2, FilteredNormalizer2 if ICU version >= 4.4
446
+ - added support for SelectFormat if ICU version >= 4.4
447
+ - added support for TimeUnitFormat if ICU version >= 4.2
448
+ - added support for PluralRules and PluralFormat if ICU version >= 4.0
449
+ - added support for DateInterval, DateIntervalFormat if ICU version >= 4.0
450
+ - added support for CurrencyPluralInfo if ICU version >= 4.2
451
+ - added support for UnicodeSetIterator and UnicodeSet iterates via it
452
+ - added support for SearchIterator and StringSearch
453
+ - added some missing Collator and RuleBasedCollator methods
454
+ - refreshed README and CREDITS
455
+ - fixed bugs with UnicodeString-converted text arg ownership in iterators
456
+ - added missing conditionals for features in ICU versions >= 4.0
457
+ - README now marked-up with reStructuredText (Christoph Burgmer)
458
+ - PyICU main module renamed to 'icu' (with deprecation warning for old name)
459
+ - UnicodeString objects are now hashable
460
+ - reviewed all wrapped ICU setters for parameter ownership
461
+ - removed symbol prefixes from wrapped typed enums symbols
462
+ - added ResourceBundle.setAppData() implementation that memory maps file
463
+
464
+ Version 0.8 -> 0.9
465
+ ------------------
466
+ - fixed 64-bit random crasher bug in registerType()/isInstance()
467
+ - fixed bug 11548
468
+ - added entries for freebsd7 to setup.py (Jan Gehring)
469
+ - added support for building on Solaris (Christian Kesselheim)
470
+ - added missing wrapper for Collator.getSortKey()
471
+ - added support for built-in Transliterators (bug 12870)
472
+ - removed support for ICU internal URES_TABLE32 ResourceBundle type
473
+ - added support for TimeZone::getDSTSavings() (Jimmy Yuen Ho Wong)
474
+ - added support for ICU 4.2
475
+ - refreshed README
476
+
477
+ Version 0.6 -> 0.8
478
+ ------------------
479
+ - ICUtzinfo and FloatingTZ types now written in C for faster performance
480
+ - fixed bug 8180
481
+ - fixed bug 9229
482
+ - reworked FloatingTZ to optionally wrap a specific tzinfo instead of default
483
+ - incorporated c++ patches by Fredrik Roubert
484
+ - changed Exact unicode and string check to allow subclasses
485
+ - replaced Makefile with setup.py for distutils-based build (Bernd Zeimetz)
486
+ - PyICU supported with ICU 3.6 or 3.8
487
+ - PyICU supported on 64-bit processors (bug 11394)
488
+
489
+ Version 0.5 -> 0.6
490
+ ------------------
491
+ - integrated patch to support Python 2.3 and MSVC 6
492
+ - changed naive datetime to UDate conversion to use ICUtzinfo.default
493
+ - fixed bug not checking return value of PyImport_ImportModule
494
+ - PyICU now wraps ICU 3.6
495
+ - added support for building with Python 2.5
496
+ - added support for CharsetDetector and CharsetMatch C ICU APIs
497
+ - added UnicodeString.encode() to access compression and conversion APIs
498
+ - added support for IDNA APIs to UnicodeString
499
+ - added support for MessageFormat(string) %(objs) style formatting
500
+ - fixed bug in Formattable constructor not accepting a python unicode string
501
+ - added support for BreakIterator::DONE
502
+ - added support for BreakIterator::getText()
503
+ - added support for BreakIterator::nextBoundary() to bypass iterator code
504
+
505
+ Version 0.4 -> 0.5
506
+ ------------------
507
+ - changed OS X linking to resolve all symbols at link time
508
+ - Collator.getCollationKey() wasn't working
509
+ - added Collator.getCollationKey(string) overload
510
+ - using u_strFromUTF32() now to convert 4 byte unicode to 2 byte unicode
511
+ - improved support for Python 2.3
512
+ - PyICU no longer uses SWIG, wrappers are written by hand
513
+ - all APIs returning UnicodeString now return 'unicode'
514
+ - all APIs returning UnicodeString also take a UnicodeString arg to return it
515
+
516
+ Version 0.3 -> 0.4
517
+ ------------------
518
+ - PyICU now wraps ICU 3.4
519
+ - added Calendar.getType(), changed Calendar.__repr__()
520
+ - added Locale.createKeywords(), Locale.getKeywordValue()
521
+ - moved Locale to locale.i and added support for ResourceBundle
522
+ - replaced TimeZone.adoptDefault() with TimeZone.getDefault()
523
+
524
+ Version 0.2 -> 0.3
525
+ ------------------
526
+ - added support for CanonicalIterator, CollationElementIterator
527
+ - added static formatMessage() method on MessageFormat
528
+ - added static encoding helper methods to UnicodeString
529
+ - reworked PyString_AsUnicodeString() to report decode errors by default
530
+ - added support for Collator, RuleBasedCollator and CollationKey
531
+ - added test_Collator unit tests
532
+ - added test_MessageFormat unit tests
533
+ - fixed various MessageFormat bugs
534
+ - fixed bug in ICUtzinfo, now returning copy of ICU TimeZone instance
535
+ - fixed bug in TimeZone.adoptDefault() not checking type of pointer
536
+ - added __eq__, __ne__ and __hash__ methods to ICUtzinfo
537
+ - MessageFormat.getFormats() now returns copies of concrete formats
538
+
539
+ Version 0.1 -> 0.2
540
+ ------------------
541
+ - added most missing UnicodeString methods
542
+ - added support for the BreakIterator and CharacterIterator classes
543
+
544
+ Version 0.0 -> 0.1
545
+ ------------------
546
+ - initial release
pyicu-2.15.1/CREDITS ADDED
@@ -0,0 +1,24 @@
1
+
2
+ PyICU is a Python extension wrapping Unicode Consortium's ICU library and
3
+ wouldn't be possible without the tireless efforts of the people and open source
4
+ projects below.
5
+
6
+ - the ICU developers: http://icu-project.org
7
+
8
+ - the Open Source Applications Foundation, for hosting the project at its
9
+ inception, in 2004: http://www.osafoundation.org
10
+
11
+ - Andi Vajda, PyICU project founder and maintainer
12
+ - Christoph Burgmer for the Transliterator Python subclass
13
+ - Jan Gehring for Freebsd 7 build entries
14
+ - Christian Kesselheim for Solaris build entries
15
+ - Jimmy Yuen Ho Wong for TimeZone::getDSTSavings()
16
+ - Bernd Zeimetz for replacing Makefile with setup.py
17
+ - Martin von Gagern, Python 3 support, bug fixes
18
+ - Fredrik Roubert for various bug fixes (see CHANGES)
19
+ - Markus Scherer for various bug fixes (see CHANGES)
20
+ - Martin Hosken for bug fixes (see CHANGES)
21
+ - Roman Kalukiewicz for MessagePattern
22
+ -
23
+
24
+ Thank you all !
pyicu-2.15.1/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ /* ====================================================================
2
+ * Copyright (c) 2004-2022 Open Source Applications Foundation.
3
+ *
4
+ * Permission is hereby granted, free of charge, to any person obtaining a
5
+ * copy of this software and associated documentation files (the "Software"),
6
+ * to deal in the Software without restriction, including without limitation
7
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8
+ * and/or sell copies of the Software, and to permit persons to whom the
9
+ * Software is furnished to do so, subject to the following conditions:
10
+ *
11
+ * The above copyright notice and this permission notice shall be included
12
+ * in all copies or substantial portions of the Software.
13
+ *
14
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20
+ * DEALINGS IN THE SOFTWARE.
21
+ * ====================================================================
22
+ */
@@ -0,0 +1,42 @@
1
+ include README.md
2
+ include CHANGES
3
+ include CREDITS
4
+ include LICENSE
5
+ include arg.h
6
+ include bases.h
7
+ include bidi.h
8
+ include calendar.h
9
+ include casemap.h
10
+ include char.h
11
+ include charset.h
12
+ include collator.h
13
+ include common.h
14
+ include dateformat.h
15
+ include displayoptions.h
16
+ include errors.h
17
+ include format.h
18
+ include gender.h
19
+ include idna.h
20
+ include iterators.h
21
+ include layoutengine.h
22
+ include locale.h
23
+ include macros.h
24
+ include measureunit.h
25
+ include messagepattern.h
26
+ include normalizer.h
27
+ include numberformat.h
28
+ include regex.h
29
+ include script.h
30
+ include search.h
31
+ include shape.h
32
+ include spoof.h
33
+ include timezone.h
34
+ include transliterator.h
35
+ include tries.h
36
+ include tzinfo.h
37
+ include unicodeset.h
38
+ include test/__init__.py
39
+ include test/lohit_hi.ttf
40
+ include test/noms.txt
41
+ include samples/break.py
42
+ include samples/strsrch.py