- Breaking Changes
- Change the return type of
icupy.icu.UnicodeSet.__getitem__(index: int)
fromint
toicupy.icu.UnicodeString
- Remove
icupy.icu.UnicodeSet.__getitem__(slice: slice)
- Change the return type of
- NEW
- Add support for ICU 76.1
- Add
icupy.icu.Collator.equal_to(source: UnicodeString | str, target: UnicodeString | str)
- Add
icupy.icu.Collator.greater_equal(source: UnicodeString | str, target: UnicodeString | str)
- Add
icupy.icu.Collator.less_equal(source: UnicodeString | str, target: UnicodeString | str)
- Add
icupy.icu.Collator.less(source: UnicodeString | str, target: UnicodeString | str)
- Add
icupy.icu.Collator.not_equal_to(source: UnicodeString | str, target: UnicodeString | str)
- Add
icupy.icu.MeasureUnit.create_light_speed()
- Add
icupy.icu.MeasureUnit.create_night()
- Add
icupy.icu.MeasureUnit.get_light_speed()
- Add
icupy.icu.MeasureUnit.get_night()
- Add
icupy.icu.UBlockCode.UBLOCK_EGYPTIAN_HIEROGLYPHS_EXTENDED_A
- Add
icupy.icu.UBlockCode.UBLOCK_GARAY
- Add
icupy.icu.UBlockCode.UBLOCK_GURUNG_KHEMA
- Add
icupy.icu.UBlockCode.UBLOCK_KIRAT_RAI
- Add
icupy.icu.UBlockCode.UBLOCK_MYANMAR_EXTENDED_C
- Add
icupy.icu.UBlockCode.UBLOCK_OL_ONAL
- Add
icupy.icu.UBlockCode.UBLOCK_SUNUWAR
- Add
icupy.icu.UBlockCode.UBLOCK_SYMBOLS_FOR_LEGACY_COMPUTING_SUPPLEMENT
- Add
icupy.icu.UBlockCode.UBLOCK_TODHRI
- Add
icupy.icu.UBlockCode.UBLOCK_TULU_TIGALARI
- Add
icupy.icu.UIndicConjunctBreak.U_INCB_CONSONANT
- Add
icupy.icu.UIndicConjunctBreak.U_INCB_EXTEND
- Add
icupy.icu.UIndicConjunctBreak.U_INCB_LINKER
- Add
icupy.icu.UIndicConjunctBreak.U_INCB_NONE
- Add
icupy.icu.UIndicSyllabicCategory.U_INSC_REORDERING_KILLER
- Add
icupy.icu.UJoiningGroup.U_JG_KASHMIRI_YEH
- Add
icupy.icu.UnicodeSet.__iter__()
- Add
icupy.icu.UnicodeSet.code_points()
- Add
icupy.icu.UnicodeSet.ranges()
- Add
icupy.icu.UnicodeSet.strings()
- Add
icupy.icu.UProperty.UCHAR_INDIC_CONJUNCT_BREAK
- Add
icupy.icu.UProperty.UCHAR_MODIFIER_COMBINING_MARK
- Add
icupy.icu.UScriptCode.USCRIPT_GARAY
- Add
icupy.icu.UScriptCode.USCRIPT_GURUNG_KHEMA
- Add
icupy.icu.UScriptCode.USCRIPT_KIRAT_RAI
- Add
icupy.icu.UScriptCode.USCRIPT_OL_ONAL
- Add
icupy.icu.UScriptCode.USCRIPT_SUNUWAR
- Add
icupy.icu.UScriptCode.USCRIPT_TODHRI
- Add
icupy.icu.UScriptCode.USCRIPT_TULU_TIGALARI
- Remove
icupy.icu.number.SimpleNumber.truncate_start(maximum_integer_digits: int)
- Add
- Add support for Python 3.13
- Add support for ICU 76.1
- CHANGED
- Update pybind11 from 2.12.0 to 2.13.6
- REMOVED
- Drop support for Python 3.8
- NEW
- Add support for ICU 75 (#73, #74)
- Add
icupy.icu.number.LocalizedNumberFormatter.without_locale()
- Add
icupy.icu.number.LocalizedNumberRangeFormatter.without_locale()
- Add
icupy.icu.number.SimpleNumber.set_maximum_integer_digits(maximum_integer_digits: int)
- Add
icupy.icu.u_get_id_types(c: int)
- Add
icupy.icu.u_has_id_type(c: int, type_: icupy.icu.UIdentifierType)
- Add
icupy.icu.UIdentifierStatus
enum - Add
icupy.icu.UIdentifierType
enum - Add
icupy.icu.UProperty.UCHAR_IDENTIFIER_STATUS
- Add
icupy.icu.UProperty.UCHAR_IDENTIFIER_TYPE
- Add
icupy.icu.UScriptCode.USCRIPT_ARABIC_NASTALIQ
- Add
- Add support for ICU 75 (#73, #74)
- CHANGED
- Update pybind11 from 2.11.1 to 2.12.0
- NEW
- Add support for Python 3.12
- Add support for ICU 74 (partial) (#53)
- Add
icupy.icu.Measure.__ne__(other: UObject)
- Add
icupy.icu.MeasureUnit.create_gasoline_energy_density()
- Add
icupy.icu.MeasureUnit.get_gasoline_energy_density()
- Add
icupy.icu.Normalizer2.get_nfkc_simple_casefold_instance()
- Add
icupy.icu.TimeZone.get_iana_id(id_: UnicodeString | str, iana_id: UnicodeString)
- Add
icupy.icu.UBlockCode.UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_I
- Add
icupy.icu.ULineBreak.U_LB_AKSARA_PREBASE
- Add
icupy.icu.ULineBreak.U_LB_AKSARA_START
- Add
icupy.icu.ULineBreak.U_LB_AKSARA
- Add
icupy.icu.ULineBreak.U_LB_VIRAMA_FINAL
- Add
icupy.icu.ULineBreak.U_LB_VIRAMA
- Add
icupy.icu.UProperty.UCHAR_ID_COMPAT_MATH_CONTINUE
- Add
icupy.icu.UProperty.UCHAR_ID_COMPAT_MATH_START
- Add
icupy.icu.UProperty.UCHAR_IDS_UNARY_OPERATOR
- Add
icupy.icu.uspoof_are_bidi_confusable_unicode_string(sc: _USpoofCheckerPtr, direction: UBiDiDirection, s1: UnicodeString | str, s2: UnicodeString | str)
- Add
icupy.icu.uspoof_are_bidi_confusable_utf8(sc: _USpoofCheckerPtr, direction: UBiDiDirection, id1: bytes, length1: int, id2: bytes, length2: int)
- Add
icupy.icu.uspoof_are_bidi_confusable(sc: _USpoofCheckerPtr, direction: UBiDiDirection, id1: str, length1: int, id2: str, length2: int)
- Add
icupy.icu.uspoof_get_bidi_skeleton_unicode_string(sc: _USpoofCheckerPtr, direction: UBiDiDirection, id_: UnicodeString | str, dest: UnicodeString)
- Add
icupy.icu.uspoof_get_bidi_skeleton_utf8(sc: _USpoofCheckerPtr, direction: UBiDiDirection, id_: bytes, length: int = -1)
- Add
icupy.icu.uspoof_get_bidi_skeleton(sc: _USpoofCheckerPtr, direction: UBiDiDirection, id_: str, length: int = -1)
- Add
- Implement
icu::number::SimpleNumberFormatter
class (#55)- Add
icupy.icu.number.SimpleNumber
class - Add
icupy.icu.number.SimpleNumberFormatter
class - Add
icupy.icu.USimpleNumberSign
enum
- Add
- CHANGED
- Update pybind11 from 2.10.4 to 2.11.1
- Change the argument type from
str
tobytes
icupy.icu.UnicodeString.from_utf8(utf8: str)
→icupy.icu.UnicodeString.from_utf8(utf8: bytes)
icupy.icu.uspoof_are_confusable_utf8(sc: _USpoofCheckerPtr, id1: str, length1: int, id2: str, length2: int)
→icupy.icu.uspoof_are_confusable_utf8(sc: _USpoofCheckerPtr, id1: bytes, length1: int, id2: bytes, length2: int)
icupy.icu.uspoof_check_utf8(sc: _USpoofCheckerPtr, id_: str, length: int = -1)
→icupy.icu.uspoof_check_utf8(sc: _USpoofCheckerPtr, id_: bytes, length: int = -1)
icupy.icu.uspoof_check2_utf8(sc: _USpoofCheckerPtr, id_: str, length: int, check_result: _USpoofCheckerPtr | None = None)
→icupy.icu.uspoof_check2_utf8(sc: _USpoofCheckerPtr, id_: bytes, length: int, check_result: _USpoofCheckerPtr | None = None)
icupy.icu.uspoof_get_skeleton_utf8(sc: _USpoofCheckerPtr, type_: int, id_: str, length: int = -1) -> str
→icupy.icu.uspoof_get_skeleton_utf8(sc: _USpoofCheckerPtr, type_: int, id_: bytes, length: int = -1) -> bytes
icupy.icu.utext_open_utf8(ut: _UTextPtr | None, s: str, length: int)
→icupy.icu.utext_open_utf8(ut: _UTextPtr | None, s: bytes, length: int = -1)
- FIXED
- Add missing methods for UTF-8 strings (#56)
- Add
icupy.icu.Collator.compare_utf8(source: bytes, target: bytes)
- Add
icupy.icu.IDNA.label_to_ascii_utf8(label: bytes, info: IDNAInfo)
- Add
icupy.icu.IDNA.label_to_unicode_utf8(label: bytes, info: IDNAInfo)
- Add
icupy.icu.IDNA.name_to_ascii_utf8(name: bytes, info: IDNAInfo)
- Add
icupy.icu.IDNA.name_to_unicode_utf8(name: bytes, info: IDNAInfo)
- Add
icupy.icu.Normalizer2.is_normalized_utf8(b: bytes)
- Add
icupy.icu.Normalizer2.normalize_utf8(options: int, src: bytes, edits: Edits | None = None)
- Add
icupy.icu.UnicodeSet.span_utf8(b: bytes, length: int, span_condition: USetSpanCondition)
- Add
- Change the return/argument type of the C/C++
UBool
type fromint
tobool
(#59) - Change the argument type from
UnicodeString
toUnicodeString | str
icupy.icu.uspoof_are_confusable_unicode_string(sc: _USpoofCheckerPtr, s1: UnicodeString, s2: UnicodeString)
→icupy.icu.uspoof_are_confusable_unicode_string(sc: _USpoofCheckerPtr, s1: UnicodeString | str, s2: UnicodeString | str)
icupy.icu.uspoof_check2_unicode_string(sc: _USpoofCheckerPtr, id_: UnicodeString, check_result: _USpoofCheckResultPtr | None = None)
→icupy.icu.uspoof_check2_unicode_string(sc: _USpoofCheckerPtr, id_: UnicodeString | str, check_result: _USpoofCheckResultPtr | None = None)
icupy.icu.uspoof_check_unicode_string(sc: _USpoofCheckerPtr, id_: UnicodeString)
→icupy.icu.uspoof_check_unicode_string(sc: _USpoofCheckerPtr, id_: UnicodeString | str)
icupy.icu.uspoof_get_skeleton_unicode_string(sc: _USpoofCheckerPtr, type_: int, id_: UnicodeString, dest: UnicodeString)
→icupy.icu.uspoof_get_skeleton_unicode_string(sc: _USpoofCheckerPtr, type_: int, id_: UnicodeString | str, dest: UnicodeString)
- Change an argument (Fix a typo)
icupy.icu.DecimalFormatSymbols.set_symbol(symbol: ENumberFormatSymbol, value: UnicodeString | str, bool: propogate_digits = True)
→icupy.icu.DecimalFormatSymbols.set_symbol(symbol: ENumberFormatSymbol, value: UnicodeString | str, bool: propagate_digits = True)
- Add missing methods for UTF-8 strings (#56)
- FIXED
- Add
icupy.icu.FormattedRelativeDateTime.__init__()
- Add
icupy.icu.MeasureUnit.create_milligram_ofglucose_per_deciliter()
- Add
icupy.icu.MeasureUnit.get_milligram_ofglucose_per_deciliter()
- Add
icupy.icu.MessageFormat.get_locale(type_: ULocDataLocaleType)
- Add
icupy.icu.number.FormattedNumber.__init__()
- Add
icupy.icu.number.FormattedNumberRange.__init__()
- Add
- IMPROVED
- Refactoring
- REMOVED
- Drop support for Python 3.7
- NEW
- Add support for ICU 73 (partial)
- Add
icupy.icu.Calendar.get_temporal_month_code()
- Add
icupy.icu.Calendar.in_daylight_time()
- Add
icupy.icu.Calendar.in_temporal_leap_year()
- Add
icupy.icu.Calendar.set_temporal_month_code(temporal_month: str)
- Add
icupy.icu.MeasureUnit.create_beaufort()
- Add
icupy.icu.MeasureUnit.get_beaufort()
- Add
icupy.icu.NumberFormat.ERoundingMode.ROUND_HALF_CEILING
- Add
icupy.icu.NumberFormat.ERoundingMode.ROUND_HALF_FLOOR
- Add
icupy.icu.NumberFormat.ERoundingMode.ROUND_HALF_ODD
- Add
icupy.icu.UCalendarDateFields.UCAL_ORDINAL_MONTH
- Add
icupy.icu.USET_SIMPLE_CASE_INSENSITIVE
- Remove
icupy.icu.GregorianCalendar.in_daylight_time()
- Add
- Add support for ICU 73 (partial)
- CHANGED
- Update pybind11 from 2.10.0 to 2.10.4
- FIXED
- Move
get_actual_maximum(field: UCalendarDateFields)
oficupy.icu.GregorianCalendar
class toicupy.icu.Calendar
class - Move
get_actual_minimum(field: UCalendarDateFields)
oficupy.icu.GregorianCalendar
class toicupy.icu.Calendar
class - Move
roll(field: UCalendarDateFields, amount: int)
oficupy.icu.GregorianCalendar
class toicupy.icu.Calendar
class
- Move
- REMOVED
- Remove
icupy.number
module
- Remove
- NEW
- Add support for Python 3.11
- Add support for ICU 72
- Add
icupy.icu.UBlockCode.UBLOCK_ARABIC_EXTENDED_C
- Add
icupy.icu.UBlockCode.UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_H
- Add
icupy.icu.UBlockCode.UBLOCK_CYRILLIC_EXTENDED_D
- Add
icupy.icu.UBlockCode.UBLOCK_DEVANAGARI_EXTENDED_A
- Add
icupy.icu.UBlockCode.UBLOCK_KAKTOVIK_NUMERALS
- Add
icupy.icu.UBlockCode.UBLOCK_KAWI
- Add
icupy.icu.UBlockCode.UBLOCK_NAG_MUNDARI
- Add
icupy.icu.UScriptCode.USCRIPT_KAWI
- Add
icupy.icu.UScriptCode.USCRIPT_NAG_MUNDARI
- Add
icupy.icu.MeasureUnit.create_quarter()
- Add
icupy.icu.MeasureUnit.create_tonne()
- Add
icupy.icu.MeasureUnit.get_quarter()
- Add
icupy.icu.MeasureUnit.get_tonne()
- Add
icupy.icu.number.LocalizedNumberFormatter.display_options(display_options: DisplayOptions)
- Add
icupy.icu.number.UnlocalizedNumberFormatter.display_options(display_options: DisplayOptions)
- Implement
icu::DisplayOptions
class- Add
icupy.icu.DisplayOptions
class
- Add
- Implement Display options API (udisplayoptions)
- Add
icupy.icu.UDisplayOptionsCapitalization
enum - Add
icupy.icu.UDisplayOptionsDisplayLength
enum - Add
icupy.icu.UDisplayOptionsGrammaticalCase
enum - Add
icupy.icu.UDisplayOptionsNameStyle
enum - Add
icupy.icu.UDisplayOptionsNounClass
enum - Add
icupy.icu.UDisplayOptionsPluralCategory
enum - Add
icupy.icu.UDisplayOptionsSubstituteHandling
enum - Add
icupy.icu.udispopt_from_grammatical_case_identifier(identifier: str)
- Add
icupy.icu.udispopt_from_noun_class_identifier(identifier: str)
- Add
icupy.icu.udispopt_from_plural_category_identifier(identifier: str)
- Add
icupy.icu.udispopt_get_grammatical_case_identifier(grammatical_case: UDisplayOptionsGrammaticalCase)
- Add
icupy.icu.udispopt_get_noun_class_identifier(noun_class: UDisplayOptionsNounClass)
- Add
icupy.icu.udispopt_get_plural_category_identifier(plural_category: UDisplayOptionsPluralCategory)
- Add
- Add
- FIXED
- Fix return type of
icupy.icu.number.FormattedNumber.get_noun_class()
- Fix return type of
- CHANGED
- Update pybind11 from 2.9.2 to 2.10.0
- Change arguments and return type of
icupy.icu.Collator.get_bound(source: list[int], source_length: int, bound_type: UColBoundMode, no_of_levels: int) -> list[int]
→get_bound(source: bytes, source_length: int, bound_type: UColBoundMode, no_of_levels: int) -> bytes
- Change arguments of
icupy.icu.CollationKey.__init__(values: list[int], count: int)
→__init__(values: bytes, count: int = -1)
- Change return type of
icupy.icu.CollationKey.get_byte_array() -> list[int]
→bytes
- Change return type of
icupy.icu.ResourceBundle.get_binary() -> list[int]
→bytes
- Change return type of
icupy.icu.ResourceBundle.get_version() -> list
→tuple
- Change return type of
icupy.icu.RuleBasedCollator.get_sort_key(...) -> list[int]
→bytes
- Change return type of
icupy.icu.RuleBasedCollator.get_version() -> list
→tuple
- Change return type of
icupy.icu.u_char_age(c: int) -> list
→tuple
- Change return type of
icupy.icu.u_get_data_version() -> list
→tuple
- Change return type of
icupy.icu.u_get_unicode_version() -> list
→tuple
- Change return type of
icupy.icu.u_get_version() -> list
→tuple
- Change return type of
icupy.icu.u_version_from_string() -> list
→tuple
- Change return type of
icupy.icu.ulocdata_get_cldr_version() -> list
→tuple
- FIXED
- Raise
IndexError
whenicupy.icu._ConstChar16Ptr.__getitem__(...)
accessing beyond capacity - Change return type of
icupy.icu.UnicodeSet.__getitem__(index: slice) -> list[int]
→UnicodeSet
- Change return type of
icupy.icu.UnicodeString.__getitem__(index: slice) -> str
→UnicodeString
- Change return type of
icupy.icu.UnicodeString
comparison operators fromint
tobool
- Fix
icupy.icu.UnicodeString.__iadd__(other: UnicodeString | str | int)
to return itself - Fix return value of
icupy.icu.UnicodeString.extract_between(start: int, limit: int)
- Change
icupy.icu.UTextVector
to keep references
- Raise
- IMPROVED
- Add
icupy.icu._ConstChar16Ptr.__len__()
- Add
icupy.icu.UnicodeString.__setitem__(index: int, value: str | int)
- Reimplement
icupy.icu.UnicodeStringVector
- Add
UnicodeStringVector.__iadd__(item: UnicodeString | str)
- Add
UnicodeStringVector.__iadd__(item: list[UnicodeString])
- Add
UnicodeStringVector.__iadd__(item: list[str])
- Add
UnicodeStringVector.__init__(iterable: list[str])
- Add
UnicodeStringVector.__reversed__()
- Add
UnicodeStringVector.__setitem__(index: int, iterable: list[str])
- Add
UnicodeStringVector.extend(iterable: list[str])
- Add
UnicodeStringVector.reverse()
- Change arguments of
UnicodeStringVector.__contains__(x: UnicodeString)
→__contains__(item: UnicodeString | str)
- Change arguments of
UnicodeStringVector.__setitem__(arg0: int, arg1: UnicodeString)
→__setitem__(index: int, item: UnicodeString | str)
- Change arguments of
UnicodeStringVector.append(x: UnicodeString)
→append(item: UnicodeString | str)
- Change arguments of
UnicodeStringVector.insert(i: int, x: UnicodeString)
→insert(index: int, item: UnicodeString | str)
- Change arguments of
UnicodeStringVector.remove(x: UnicodeString)
→remove(item: UnicodeString | str)
- Add
- Improve
icupy.icu.UTextVector
- Disable reverse iterator of
UTextVector
- Add
UTextVector.__init__()
- Add
UTextVector.__delitem__(index: int | slice)
- Add
UTextVector.__iadd__(src: list[UnicodeString])
- Add
UTextVector.append(src: UnicodeString)
- Add
UTextVector.clear()
- Add
UTextVector.extend(src: list[UnicodeString])
- Add
UTextVector.insert(index: int, src: UnicodeString)
- Disable reverse iterator of
- Change arguments of
icupy.icu.u_version_to_string(version_array: list[int])
→u_version_to_string(version_array: list[int[4]])
- Add
- REMOVED
- Remove
icupy.icu.UTextVector.__init__(n: int)
- Remove
- CHANGED
- Update pybind11 from 2.9.1 to 2.9.2
- Change arguments of
icupy.icu.RuleBasedBreakIterator.__init__(compiled_rules: list[int], rule_length: int)
→__init__(compiled_rules: bytes, rule_length: int)
- Change return type of
icupy.icu.RuleBasedBreakIterator.get_binary_rules() -> list[int]
→bytes
- FIXED
- Fix comparison method of
icupy.icu._UTextPtr.__eq__(other: _UTextPtr)
- Fix comparison method of
icupy.icu._UTextPtr.__ne__(other: _UTextPtr)
- Fix keep alive policy of
icupy.icu.RuleBasedBreakIterator.__init__(compiled_rules: bytes, rule_length: int)
- Fix keep alive policy of
icupy.icu.RuleBasedCollator.__init__(bin: bytes, length: int, base: RuleBasedCollator)
- Fix repr() format of
icupy.icu._UTextPtr
- Fix repr() format of
icupy.icu.AnnualTimeZoneRule
- Fix repr() format of
icupy.icu.ConstrainedFieldPosition
- Fix repr() format of
icupy.icu.DateTimeRule
- Fix repr() format of
icupy.icu.ErrorCode
- Fix repr() format of
icupy.icu.FieldPosition
- Fix repr() format of
icupy.icu.GregorianCalendar
- Fix repr() format of
icupy.icu.ParsePosition
- Fix repr() format of
icupy.icu.TimeArrayTimeZoneRule
- Fix repr() format of
icupy.icu.UnicodeSet
- Fix repr() format of
icupy.icu.UnicodeString
- Fix repr() format of
icupy.icu.UParseError
- Fix repr() format of
icupy.icu.UTransPosition
- Fix comparison method of
- IMPROVED
- Allow to create subclass of
icupy.icu.SearchIterator
- Add
SearchIterator.__init__(other: SearchIterator)
- Add
SearchIterator.__init__()
- Add
SearchIterator.__init__(text: UnicodeString | str, breakiter: BreakIterator = None)
- Add
SearchIterator.__init__(text: CharacterIterator, breakiter: BreakIterator = None)
- Add
SearchIterator.__eq__(other: SearchIterator)
- Add
SearchIterator.__ne__(other: SearchIterator)
- Add
SearchIterator._handle_next(position: int)
- Add
SearchIterator._handle_prev(position: int)
- Add
SearchIterator._set_match_length(length: int)
- Add
SearchIterator._set_match_not_found()
- Add
SearchIterator._set_match_start(position: int)
- Add
SearchIterator.reset()
- Add
SearchIterator.set_text(text: CharacterIterator)
- Add
SearchIterator.set_text(text: UnicodeString | str)
- Add
- Allow to create subclass of
icupy.icu.Transliterator
- Add
Transliterator.__init__(id_: UnicodeString | str, adopted_filter: UnicodeFilter)
- Add
Transliterator.__init__(other: Transliterator)
- Add
Transliterator._create_basic_instance(id_: UnicodeString | str, canon: UnicodeString)
- Add
Transliterator._handle_transliterate(text: Replaceable, pos: UTransPosition, incremental: bool)
- Add
Transliterator._set_id(id_: UnicodeString | str)
- Add
Transliterator._set_maximum_context_length(max_context_length: int)
- Add
Transliterator.filtered_transliterate(text: Replaceable, index: UTransPosition, incremental: bool)
- Add
Transliterator.finish_transliteration(text: Replaceable, index: UTransPosition)
- Add
Transliterator.handle_get_source_set(result: UnicodeSet)
- Add
- Add
icupy.icu.CollationKey.__hash__()
- Add
icupy.icu.Locale.__hash__()
- Add
icupy.icu.MessagePattern.__hash__()
- Add
icupy.icu.MessagePattern.Part.__hash__()
- Add
icupy.icu.RuleBasedBreakIterator.__hash__()
- Add
icupy.icu.RuleBasedCollator.__hash__()
- Add
icupy.icu.UnicodeSet.__hash__()
- Add
icupy.icu.UnicodeString.__hash__()
- Add
icupy.icu.UnicodeString.handle_replace_between(start: int, limit: int, text: UnicodeString | str)
- Change arguments of
icupy.icu.Transliterator.unregister(id_: UnicodeString)
→unregister(id_: UnicodeString | str)
- Allow to create subclass of
- NEW
- Add support for ICU 71
- Add
icupy.icu.DateTimePatternGenerator.get_date_time_format(style: UDateFormatStyle)
- Add
icupy.icu.DateTimePatternGenerator.set_date_time_format(style: UDateFormatStyle, date_time_format: UnicodeString | str)
- Add
icupy.icu.number.FormattedNumber.get_noun_class()
- Add
icupy.icu.number.Precision.increment_exact(mantissa: int, magnitude: int)
- Add
icupy.icu.ucnv_clone(cnv: _UConverterPtr)
- Add
icupy.icu.UNumberFormatFields.UNUM_APPROXIMATELY_SIGN_FIELD
- Add
- Add support for ICU 71
- ADDED
- Add
icupy.icu.RuleBasedCollator.__init__(bin: bytes, length: int, base: RuleBasedCollator)
- Add
icupy.icu.u_string_has_binary_property(s: str, which: UProperty)
- Add
icupy.icu.NounClass
enum
- Add
- CHANGED
- Change return type of
icupy.icu.RuleBasedCollator.clone_binary() -> list[int]
→bytes
- Change return type of
- IMPROVED
- Change arguments of
icupy.icu.DateFormatSymbols.__init__(locale: Locale)
→__init__(locale: Locale | str)
- Change arguments of
icupy.icu.Collator.create_instance(loc: Locale)
→create_instance(loc: Locale | str)
- Change arguments of
icupy.icu.Collator.get_display_name(object_locale: Locale, display_locale: Locale, name: UnicodeString)
→get_display_name(object_locale: Locale | str, display_locale: Locale | str, name: UnicodeString)
- Change arguments of
icupy.icu.Collator.get_display_name(object_locale: Locale, name: UnicodeString)
→get_display_name(object_locale: Locale | str, name: UnicodeString)
- Change arguments of
icupy.icu.Collator.get_functional_equivalent(keyword: str, locale: Locale)
→get_functional_equivalent(keyword: str, locale: Locale | str)
- Change arguments of
- REMOVED
- Remove
icupy.icu.ICUException
. Useicupy.icu.ICUError
instead - Remove
icupy.__version__
. Useimportlib.metadata
orimportlib-metadata
package instead
- Remove
- NEW
- Add
icupy.icu.U_GC_*_MASK
constants
- Add
- ADDED
- Add
icupy.icu.UnicodeSet.__ne__(other: _ConstUSetPtr)
- Add
icupy.icu.UnicodeSet.__ne__(other: _USetPtr)
- Add
icupy.icu.ucnv_cb_from_uwrite_bytes(arguments: UConverterFromUnicodeArgs, source: str, length: int, offset_index: int)
- Add
icupy.icu.ucnv_cb_from_uwrite_sub(arguments: UConverterFromUnicodeArgs, offset_index: int)
- Add
icupy.icu.ucnv_cb_to_uwrite_sub(arguments: UConverterToUnicodeArgs, offset_index: int)
- Add
icupy.icu.ucnv_cb_to_uwrite_uchars(arguments: UConverterToUnicodeArgs, source: str, length: int, offset_index: int)
- Add
- CHANGED
- Update pybind11 from 2.8.0 to 2.9.1
- Change arguments of
icupy.icu.PluralRules.get_samples(keyword: UnicodeString | str)
→get_samples(keyword: UnicodeString | str, dest_capacity: int)
- Change return type of
icupy.icu.Formattable.get_object() -> BasicTimeZone | Calendar | CurrencyAmount | DateInterval | TimeUnitAmount | TimeZone | UObject
→BasicTimeZone | Calendar | CurrencyAmount | DateInterval | TimeUnitAmount | UObject
- FIXED
- Fix return value policy of
icupy.icu.BreakIterator.get_text()
- Fix comparison method of
icupy.icu.UnicodeSet.__eq__(other: _ConstUSetPtr)
- Fix comparison method of
icupy.icu.UnicodeSet.__eq__(other: _USetPtr)
- Fix return value policy of
- DEPRECATED
icupy.icu.ICUException
is deprecated and will be removed in icupy 0.12icupy.icu.ucnv_cb_from_u_write_bytes()
is deprecated. Useicupy.icu.ucnv_cb_from_uwrite_bytes()
insteadicupy.icu.ucnv_cb_from_u_write_sub()
is deprecated. Useicupy.icu.ucnv_cb_from_uwrite_sub()
insteadicupy.icu.ucnv_cb_to_u_write_sub()
is deprecated. Useicupy.icu.ucnv_cb_to_uwrite_sub()
insteadicupy.icu.ucnv_cb_to_u_write_uchars()
is deprecated. Useicupy.icu.ucnv_cb_to_uwrite_uchars()
instead
Maintenance release.
- NEW
- Add support for Python 3.7
- Implement
icu::CanonicalIterator
class - Implement
icu::CaseMap
class - Implement
icu::FilteredBreakIteratorBuilder
class - Implement
icu::GenderInfo
class - Implement
icu::LocaleDisplayNames
class - Implement
icu::Region
class - Implement
icu::ScientificNumberFormatter
class - Implement Locale data API (ulocdata)
- Implement
icu::NoUnit
- Add
icupy.icu.u_get_data_version()
- Add
icupy.utils.gc(obj: typing.Any, closer: collections.abc.Callable[[typing.Any], typing.Any])
- ADDED
- Add
icupy.icu.ucnv_get_from_ucall_back(converter: _UConverterPtr)
- Add
icupy.icu.ucnv_get_to_ucall_back(converter: _UConverterPtr)
- Add
icupy.icu.ucnv_set_from_ucall_back(converter: _UConverterPtr, new_action: _UConverterFromUCallbackPtr, new_context: ConstVoidPtr)
- Add
icupy.icu.ucnv_set_to_ucall_back(converter: _UConverterPtr, new_action: _UConverterToUCallbackPtr, new_context: ConstVoidPtr)
- Add
- CHANGED
- Change module name from
icupy.number
toicupy.icu.number
- Change module name from
- IMPROVED
- On Windows, add ICU4C DLL search path at initialization
- Improve repr() format of
icupy.icu.ErrorCode
- Improve repr() format of
icupy.icu.Calendar
- Improve repr() format of
icupy.icu.Locale
- Improve repr() format of
icupy.icu.UParseError
- Improve repr() format of
icupy.icu.AnnualTimeZoneRule
- Improve repr() format of
icupy.icu.InitialTimeZoneRule
- Improve repr() format of
icupy.icu.TimeArrayTimeZoneRule
- Improve repr() format of
icupy.icu.UnicodeString
- DEPRECATED
icupy.number
submodule is deprecated. Useicupy.icu.number
insteadicupy.icu.ucnv_get_from_u_call_back()
is deprecated. Useicupy.icu.ucnv_get_from_ucall_back()
insteadicupy.icu.ucnv_get_to_u_call_back()
is deprecated. Useicupy.icu.ucnv_get_to_ucall_back()
insteadicupy.icu.ucnv_set_from_u_call_back()
is deprecated. Useicupy.icu.ucnv_set_from_ucall_back()
insteadicupy.icu.ucnv_set_to_u_call_back()
is deprecated. Useicupy.icu.ucnv_set_to_ucall_back()
instead
- NEW
- Add support for Python 3.10
- Add support for ICU 70
- Add
icupy.icu.MeasureUnit.create_item()
- Add
icupy.icu.MeasureUnit.create_kilowatt_hour_per_100_kilometer()
- Add
icupy.icu.MeasureUnit.get_item()
- Add
icupy.icu.MeasureUnit.get_kilowatt_hour_per_100_kilometer()
- Add
icupy.icu.TimeZone.create_enumeration()
- Add
icupy.icu.TimeZone.create_enumeration_for_raw_offset(raw_offset: int)
- Add
icupy.icu.TimeZone.create_enumeration_for_region(region: str)
- Add
icupy.icu.UnicodeSet.has_strings()
- Add
icupy.icu.UBlockCode.UBLOCK_ARABIC_EXTENDED_B
- Add
icupy.icu.UBlockCode.UBLOCK_CYPRO_MINOAN
- Add
icupy.icu.UBlockCode.UBLOCK_ETHIOPIC_EXTENDED_B
- Add
icupy.icu.UBlockCode.UBLOCK_KANA_EXTENDED_B
- Add
icupy.icu.UBlockCode.UBLOCK_LATIN_EXTENDED_F
- Add
icupy.icu.UBlockCode.UBLOCK_LATIN_EXTENDED_G
- Add
icupy.icu.UBlockCode.UBLOCK_OLD_UYGHUR
- Add
icupy.icu.UBlockCode.UBLOCK_TANGSA
- Add
icupy.icu.UBlockCode.UBLOCK_TOTO
- Add
icupy.icu.UBlockCode.UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED_A
- Add
icupy.icu.UBlockCode.UBLOCK_VITHKUQI
- Add
icupy.icu.UBlockCode.UBLOCK_ZNAMENNY_MUSICAL_NOTATION
- Add
icupy.icu.UJoiningGroup.U_JG_THIN_YEH
- Add
icupy.icu.UJoiningGroup.U_JG_VERTICAL_TAIL
- Add
icupy.icu.UProperty.UCHAR_BASIC_EMOJI
- Add
icupy.icu.UProperty.UCHAR_EMOJI_KEYCAP_SEQUENCE
- Add
icupy.icu.UProperty.UCHAR_RGI_EMOJI_FLAG_SEQUENCE
- Add
icupy.icu.UProperty.UCHAR_RGI_EMOJI_MODIFIER_SEQUENCE
- Add
icupy.icu.UProperty.UCHAR_RGI_EMOJI_TAG_SEQUENCE
- Add
icupy.icu.UProperty.UCHAR_RGI_EMOJI_ZWJ_SEQUENCE
- Add
icupy.icu.UProperty.UCHAR_RGI_EMOJI
- Add
icupy.icu.UDateFormatSymbolType.UDAT_NARROW_QUARTERS
- Add
icupy.icu.UDateFormatSymbolType.UDAT_STANDALONE_NARROW_QUARTERS
- Add
icupy.icu.UScriptCode.USCRIPT_CYPRO_MINOAN
- Add
icupy.icu.UScriptCode.USCRIPT_OLD_UYGHUR
- Add
icupy.icu.UScriptCode.USCRIPT_TANGSA
- Add
icupy.icu.UScriptCode.USCRIPT_TOTO
- Add
icupy.icu.UScriptCode.USCRIPT_VITHKUQI
- Add
icupy.icu.UErrorCode.U_INPUT_TOO_LONG_ERROR
- Add
- Implement Arabic shaping API (ushape)
- Implement Bidi Transformations API (ubiditransform)
- Implement StringPrep API (usprep)
- Implement Unicode Security and Spoofing Detection API (uspoof)
- Implement Universal Time Scale API (utmscale)
- Implement
icu::UnicodeSetIterator
class
- CHANGED
- Update pybind11 from 2.7.1 to 2.8.0
- NEW
- Implement
icu::AlphabeticIndex
class - Implement
icu::ListFormatter
class - Implement
icu::MessagePattern
class - Implement
icu::RelativeDateTimeFormatter
class
- Implement
- CHANGED
- Update pybind11 from 2.6.2 to 2.7.1
- Change default value of
icupy.icu.DateFormatSymbols.set_am_pm_strings(ampms: list[UnicodeString], count: int = None)
→set_am_pm_strings(ampms: list[UnicodeString], count: int = -1)
- Change default value of
icupy.icu.DateFormatSymbols.set_era_names(era_names: list[UnicodeString], count: int = None)
→set_era_names(era_names: list[UnicodeString], count: int = -1)
- Change default value of
icupy.icu.DateFormatSymbols.set_eras(eras: list[UnicodeString], count: int = None)
→set_eras(eras: list[UnicodeString], count: int = -1)
- Change default value of
icupy.icu.DateFormatSymbols.set_months(months: list[UnicodeString], count: int = None)
→set_months(months: list[UnicodeString], count: int = -1)
- Change default value of
icupy.icu.DateFormatSymbols.set_narrow_eras(narrow_eras: list[UnicodeString], count: int = None)
→set_narrow_eras(narrow_eras: list[UnicodeString], count: int = -1)
- Change default value of
icupy.icu.DateFormatSymbols.set_short_months(short_months: list[UnicodeString], count: int = None)
→set_short_months(short_months: list[UnicodeString], count: int = -1)
- Change default value of
icupy.icu.DateFormatSymbols.set_short_weekdays(abbrev_weekdays: list[UnicodeString], count: int = None)
→set_short_weekdays(abbrev_weekdays: list[UnicodeString], count: int = -1)
- Change default value of
icupy.icu.DateFormatSymbols.set_weekdays(weekdays: list[UnicodeString], count: int = None)
→set_weekdays(weekdays: list[UnicodeString], count: int = -1)
- IMPROVED
- Use CMake environment variables in _build.py
- NEW
- Implement
icu::CompactDecimalFormat
class - Implement
icu::CurrencyPluralInfo
class - Implement
icu::DecimalFormat
class - Implement
icu::MessageFormat
class - Implement
icu::PluralFormat
class - Implement
icu::PluralRules
class - Implement
icu::RuleBasedNumberFormat
class - Implement
icu::SelectFormat
class
- Implement
- ADDED
- Add
icupy.icu.DateFormat.get_number_format()
- Add
icupy.icu.DateFormat.set_number_format(new_number_format: NumberFormat)
- Add
- CHANGED
- Rename
icupy.icu.ICUException
toicupy.icu.ICUError
- Change arguments of
icupy.icu.DateFormatSymbols.set_am_pm_strings(ampms: UnicodeStringVector, count: int = None)
→set_am_pm_strings(ampms: list[UnicodeString], count: int = None)
- Change arguments of
icupy.icu.DateFormatSymbols.set_era_names(era_names: UnicodeStringVector, count: int = None)
→set_era_names(era_names: list[UnicodeString], count: int = None)
- Change arguments of
icupy.icu.DateFormatSymbols.set_eras(eras: UnicodeStringVector, count: int = None)
→set_eras(eras: list[UnicodeString], count: int = None)
- Change arguments of
icupy.icu.DateFormatSymbols.set_months(months: UnicodeStringVector, count: int = None)
→set_months(months: list[UnicodeString], count: int = None)
- Change arguments of
icupy.icu.DateFormatSymbols.set_months(months: UnicodeStringVector, count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
→set_months(months: list[UnicodeString], count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
- Change arguments of
icupy.icu.DateFormatSymbols.set_narrow_eras(narrow_eras: UnicodeStringVector, count: int = None)
→set_narrow_eras(narrow_eras: list[UnicodeString], count: int = None)
- Change arguments of
icupy.icu.DateFormatSymbols.set_quarters(quarters: UnicodeStringVector, count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
→set_quarters(quarters: list[UnicodeString], count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
- Change arguments of
icupy.icu.DateFormatSymbols.set_short_months(short_months: UnicodeStringVector, count: int = None)
→set_short_months(short_months: list[UnicodeString], count: int = None)
- Change arguments of
icupy.icu.DateFormatSymbols.set_short_weekdays(abbrev_weekdays: UnicodeStringVector, count: int = None)
→set_short_weekdays(abbrev_weekdays: list[UnicodeString], count: int = None)
- Change arguments of
icupy.icu.DateFormatSymbols.set_weekdays(weekdays: UnicodeStringVector, count: int = None)
→set_weekdays(weekdays: list[UnicodeString], count: int = None)
- Change arguments of
icupy.icu.DateFormatSymbols.set_weekdays(weekdays: UnicodeStringVector, count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
→set_weekdays(weekdays: list[UnicodeString], count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
- Change arguments of
icupy.icu.DateFormatSymbols.set_year_names(year_names: UnicodeStringVector, count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
→set_year_names(year_names: list[UnicodeString], count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
- Change arguments of
icupy.icu.DateFormatSymbols.set_zodiac_names(zodiac_names: UnicodeStringVector, count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
→set_zodiac_names(zodiac_names: list[UnicodeString], count: int, context: DateFormatSymbols.DtContextType, width: DateFormatSymbols.DtWidthType)
- Change return type of
icupy.icu.Collator.get_available_locales() -> StringEnumeration
→list[Locale]
- Change return type of
icupy.icu.BreakIterator.get_available_locales() -> StringEnumeration
→list[Locale]
- Rename
- FIXED
- Add missing inherited methods
- Add
icupy.icu.CompactDecimalFormat.format(...)
- Add
icupy.icu.DecimalFormat.format(...)
- Add
icupy.icu.MessageFormat.parse_object(...)
- Add
- Add missing inherited methods
- IMPROVED
- Export enum members into parent scope
- DEPRECATED
icupy.icu.ICUException
is deprecated and will be removed in a future release. Useicupy.icu.ICUError
instead
Initial release.