Upgrading arrow 0.17 to 1
Breaking0.17.0 → 1.4.0Breaking2Platform5New19Changed7Fixed25Other18
BreakingUpgrade verdict
2 breaking changes and 5 platform requirement changes.
In plain terms
- Calling humanize with an empty list of granularities now fails with an error instead of silently doing something else.
- Some existing code may stop working after upgrading; the full list of incompatible changes is in issue #832.
- The library now officially works with newer Python versions 3.11 and 3.12.
- Python 3.6 and 3.7 are no longer supported; you need a newer Python version.
Must act Top 5 of 7 that need code or config changes
Python requirement changed in 1.3.0: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.* → >=3.8.
Adds tzdata.
What you must change
Breaking2
Passing an empty granularity list to humanize now raises a ValueError.
humanizeValueErrorIntroduces multiple breaking changes, with a complete overview in #832.
Platform5
Adds official support for Python 3.11 and 3.12.
Drops support for Python 3.6 and 3.7, which are end-of-life.
Adds official support for Python 3.10.
Drops support for Python 2.7 and 3.5.
Adds support for Python 3.9.
API changes
Generated by DepDelta from published Python source. Not mixed with prose notes.
- added:
export FORMAT_RFC3339_STRICT - added:
export __version__
- changed:
function factory(type) → function factory(type: Type[Arrow]) -> ArrowFactory - changed:
function get(*args, **kwargs) → function get(*, locale: str=…, tzinfo: Optional[TZ_EXPR]=…, normalize_whitespace: bool=…) -> Arrow | (*args: int, locale: str=…, tzinfo: Optional[TZ_EXPR]=…, normalize_whitespace: bool=…) -> Arrow | (__obj: Union[Arrow, datetime, date, struct_time, dt_tzinfo, int, float, str, Tuple[int, int, int]], *, locale: str=…, tzinfo: Optional[TZ_EXPR]=…, normalize_whitespace: bool=…) -> Arrow | (__arg1: Un… - changed:
function now(tz=…) → function now(tz: Optional[TZ_EXPR]=…) -> Arrow - changed:
function utcnow() → function utcnow() -> Arrow
- removed:
property Arrow.ambiguous - removed:
property Arrow.datetime - removed:
property Arrow.float_timestamp - removed:
property Arrow.fold - removed:
property Arrow.imaginary - removed:
property Arrow.int_timestamp - removed:
property Arrow.naive - removed:
property Arrow.timestamp - removed:
property Arrow.tzinfo - changed:
class Arrow(object) → class Arrow - changed:
constructor Arrow(year, month, day, hour=…, minute=…, second=…, microsecond=…, tzinfo=…, **kwargs) → constructor Arrow(year: int, month: int, day: int, hour: int=…, minute: int=…, second: int=…, microsecond: int=…, tzinfo: Optional[TZ_EXPR]=…, **kwargs: Any) -> None - changed:
field Arrow.resolution → field Arrow.resolution: ClassVar[timedelta] - changed:
method Arrow.astimezone(tz) → method Arrow.astimezone(tz: Optional[dt_tzinfo]) -> dt_datetime - changed:
method Arrow.ceil(frame) → method Arrow.ceil(frame: _T_FRAMES, **kwargs: Any) -> Arrow - changed:
method Arrow.clone() → method Arrow.clone() -> Arrow - changed:
method Arrow.ctime() → method Arrow.ctime() -> str - changed:
method Arrow.date() → method Arrow.date() -> date - changed:
method Arrow.dst() → method Arrow.dst() -> Optional[timedelta] - changed:
method Arrow.floor(frame) → method Arrow.floor(frame: _T_FRAMES, **kwargs: Any) -> Arrow - changed:
method Arrow.for_json() → method Arrow.for_json() -> str - changed:
method Arrow.format(fmt=…, locale=…) → method Arrow.format(fmt: str=…, locale: str=…) -> str - changed:
method Arrow.humanize(other=…, locale=…, only_distance=…, granularity=…) → method Arrow.humanize(other: Union[Arrow, dt_datetime, None]=…, locale: str=…, only_distance: bool=…, granularity: Union[_GRANULARITY, List[_GRANULARITY]]=…) -> str - changed:
method Arrow.is_between(start, end, bounds=…) → method Arrow.is_between(start: Arrow, end: Arrow, bounds: _BOUNDS=…) -> bool - changed:
method Arrow.isocalendar() → method Arrow.isocalendar() -> Tuple[int, int, int] - changed:
method Arrow.isoformat(sep=…) → method Arrow.isoformat(sep: str=…, timespec: str=…) -> str - changed:
method Arrow.isoweekday() → method Arrow.isoweekday() -> int - changed:
method Arrow.replace(**kwargs) → method Arrow.replace(**kwargs: Any) -> Arrow - changed:
method Arrow.shift(**kwargs) → method Arrow.shift(check_imaginary: bool=…, **kwargs: Any) -> Arrow - changed:
method Arrow.span(frame, count=…, bounds=…) → method Arrow.span(frame: _T_FRAMES, count: int=…, bounds: _BOUNDS=…, exact: bool=…, week_start: int=…) -> Tuple[Arrow, Arrow] - changed:
method Arrow.strftime(format) → method Arrow.strftime(format: str) -> str - changed:
method Arrow.time() → method Arrow.time() -> dt_time - changed:
method Arrow.timetuple() → method Arrow.timetuple() -> struct_time - changed:
method Arrow.timetz() → method Arrow.timetz() -> dt_time - changed:
method Arrow.to(tz) → method Arrow.to(tz: TZ_EXPR) -> Arrow - changed:
method Arrow.toordinal() → method Arrow.toordinal() -> int - changed:
method Arrow.utcoffset() → method Arrow.utcoffset() -> Optional[timedelta] - changed:
method Arrow.utctimetuple() → method Arrow.utctimetuple() -> struct_time - changed:
method Arrow.weekday() → method Arrow.weekday() -> int - changed:
static method Arrow.fromdate(date, tzinfo=…) → static method Arrow.fromdate(date: date, tzinfo: Optional[TZ_EXPR]=…) -> Arrow - changed:
static method Arrow.fromdatetime(dt, tzinfo=…) → static method Arrow.fromdatetime(dt: dt_datetime, tzinfo: Optional[TZ_EXPR]=…) -> Arrow - changed:
static method Arrow.fromtimestamp(timestamp, tzinfo=…) → static method Arrow.fromtimestamp(timestamp: Union[int, float, str], tzinfo: Optional[TZ_EXPR]=…) -> Arrow - changed:
static method Arrow.interval(frame, start, end, interval=…, tz=…, bounds=…) → static method Arrow.interval(frame: _T_FRAMES, start: dt_datetime, end: dt_datetime, interval: int=…, tz: Optional[TZ_EXPR]=…, bounds: _BOUNDS=…, exact: bool=…) -> Iterable[Tuple[Arrow, Arrow]] - changed:
static method Arrow.now(tzinfo=…) → static method Arrow.now(tzinfo: Optional[dt_tzinfo]=…) -> Arrow - changed:
static method Arrow.range(frame, start, end=…, tz=…, limit=…) → static method Arrow.range(frame: _T_FRAMES, start: Union[Arrow, dt_datetime], end: Union[Arrow, dt_datetime, None]=…, tz: Optional[TZ_EXPR]=…, limit: Optional[int]=…) -> Generator[Arrow, None, None] - changed:
static method Arrow.span_range(frame, start, end, tz=…, limit=…, bounds=…) → static method Arrow.span_range(frame: _T_FRAMES, start: dt_datetime, end: dt_datetime, tz: Optional[TZ_EXPR]=…, limit: Optional[int]=…, bounds: _BOUNDS=…, exact: bool=…) -> Iterable[Tuple[Arrow, Arrow]] - changed:
static method Arrow.strptime(date_str, fmt, tzinfo=…) → static method Arrow.strptime(date_str: str, fmt: str, tzinfo: Optional[TZ_EXPR]=…) -> Arrow - changed:
static method Arrow.utcfromtimestamp(timestamp) → static method Arrow.utcfromtimestamp(timestamp: Union[int, float, str]) -> Arrow - changed:
static method Arrow.utcnow() → static method Arrow.utcnow() -> Arrow - added:
field Arrow.max: ClassVar[Arrow] - added:
field Arrow.min: ClassVar[Arrow] - added:
method Arrow.dehumanize(input_string: str, locale: str=…) -> Arrow - added:
method Arrow.timestamp() -> float - added:
property Arrow.ambiguous -> bool - added:
property Arrow.datetime -> dt_datetime - added:
property Arrow.float_timestamp -> float - added:
property Arrow.fold -> int - added:
property Arrow.imaginary -> bool - added:
property Arrow.int_timestamp -> int - added:
property Arrow.naive -> dt_datetime - added:
property Arrow.tzinfo -> dt_tzinfo - added:
static method Arrow.fromordinal(ordinal: int) -> Arrow - added:
variable TZ_EXPR
- changed:
variable MAX_TIMESTAMP → variable MAX_TIMESTAMP: Final[float] - changed:
variable MAX_TIMESTAMP_MS → variable MAX_TIMESTAMP_MS: Final[float] - changed:
variable MAX_TIMESTAMP_US → variable MAX_TIMESTAMP_US: Final[float] - added:
variable DEFAULT_LOCALE: Final[str] - added:
variable DEHUMANIZE_LOCALES - added:
variable MAX_ORDINAL: Final[int] - added:
variable MIN_ORDINAL: Final[int] - added:
variable is_64bits
- changed:
class ArrowFactory(object) → class ArrowFactory - changed:
constructor ArrowFactory(type=…) → constructor ArrowFactory(type: Type[Arrow]=…) -> None - changed:
method ArrowFactory.get(*args, **kwargs) → method ArrowFactory.get(*, locale: str=…, tzinfo: Optional[TZ_EXPR]=…, normalize_whitespace: bool=…) -> Arrow | (__obj: Union[Arrow, datetime, date, struct_time, dt_tzinfo, int, float, str, Tuple[int, int, int]], *, locale: str=…, tzinfo: Optional[TZ_EXPR]=…, normalize_whitespace: bool=…) -> Arrow | (__arg1: Union[datetime, date], __arg2: TZ_EXPR, *, locale: str=…, tzinfo: Optional[TZ_EXPR]=…, no… - changed:
method ArrowFactory.now(tz=…) → method ArrowFactory.now(tz: Optional[TZ_EXPR]=…) -> Arrow - changed:
method ArrowFactory.utcnow() → method ArrowFactory.utcnow() -> Arrow - added:
field ArrowFactory.type: Type[Arrow]
- changed:
class DateTimeFormatter(object) → class DateTimeFormatter - changed:
constructor DateTimeFormatter(locale=…) → constructor DateTimeFormatter(locale: str=…) -> None - changed:
method DateTimeFormatter.format(dt, fmt) → method DateTimeFormatter.format(dt: datetime, fmt: str) -> str - changed:
variable FORMAT_ATOM → variable FORMAT_ATOM: Final[str] - changed:
variable FORMAT_COOKIE → variable FORMAT_COOKIE: Final[str] - changed:
variable FORMAT_RFC1036 → variable FORMAT_RFC1036: Final[str] - changed:
variable FORMAT_RFC1123 → variable FORMAT_RFC1123: Final[str] - changed:
variable FORMAT_RFC2822 → variable FORMAT_RFC2822: Final[str] - changed:
variable FORMAT_RFC3339 → variable FORMAT_RFC3339: Final[str] - changed:
variable FORMAT_RFC822 → variable FORMAT_RFC822: Final[str] - changed:
variable FORMAT_RFC850 → variable FORMAT_RFC850: Final[str] - changed:
variable FORMAT_RSS → variable FORMAT_RSS: Final[str] - changed:
variable FORMAT_W3C → variable FORMAT_W3C: Final[str] - added:
field DateTimeFormatter.locale: locales.Locale - added:
variable FORMAT_RFC3339_STRICT: Final[str]
- changed:
class Locale(object) → class Locale - changed:
constructor Locale() → constructor Locale() -> None - changed:
field ArabicLocale.timeframes → field ArabicLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field BelarusianLocale.timeframes → field BelarusianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field BulgarianLocale.timeframes → field BulgarianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field CzechLocale.timeframes → field CzechLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field EstonianLocale.timeframes → field EstonianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Mapping[str, str]]] - changed:
field FinnishLocale.timeframes → field FinnishLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field GermanBaseLocale.timeframes → field GermanBaseLocale.timeframes: ClassVar[Dict[TimeFrameLiteral, str]] - changed:
field HebrewLocale.timeframes → field HebrewLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field HungarianLocale.timeframes → field HungarianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field IcelandicLocale.timeframes → field IcelandicLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field Locale.and_word → field Locale.and_word: ClassVar[Optional[str]] - changed:
field Locale.day_abbreviations → field Locale.day_abbreviations: ClassVar[List[str]] - changed:
field Locale.day_names → field Locale.day_names: ClassVar[List[str]] - changed:
field Locale.future → field Locale.future: ClassVar[str] - changed:
field Locale.meridians → field Locale.meridians: ClassVar[Dict[str, str]] - changed:
field Locale.month_abbreviations → field Locale.month_abbreviations: ClassVar[List[str]] - changed:
field Locale.month_names → field Locale.month_names: ClassVar[List[str]] - changed:
field Locale.names → field Locale.names: ClassVar[List[str]] - changed:
field Locale.ordinal_day_re → field Locale.ordinal_day_re: ClassVar[str] - changed:
field Locale.past → field Locale.past: ClassVar[str] - changed:
field Locale.timeframes → field Locale.timeframes: ClassVar[Mapping[TimeFrameLiteral, _TimeFrameElements]] - changed:
field MacedonianLocale.timeframes → field MacedonianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field PolishLocale.timeframes → field PolishLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field RussianLocale.timeframes → field RussianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field SlovakLocale.timeframes → field SlovakLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
field UkrainianLocale.timeframes → field UkrainianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - changed:
function get_locale(name) → function get_locale(name: str) -> Locale - changed:
function get_locale_by_class_name(name) → function get_locale_by_class_name(name: str) -> Locale - changed:
method EnglishLocale.describe(timeframe, delta=…, only_distance=…) → method EnglishLocale.describe(timeframe: TimeFrameLiteral, delta: Union[int, float]=…, only_distance: bool=…) -> str - changed:
method GermanBaseLocale.describe(timeframe, delta=…, only_distance=…) → method GermanBaseLocale.describe(timeframe: TimeFrameLiteral, delta: Union[int, float]=…, only_distance: bool=…) -> str - changed:
method HebrewLocale.describe_multi(timeframes, only_distance=…) → method HebrewLocale.describe_multi(timeframes: Sequence[Tuple[TimeFrameLiteral, Union[int, float]]], only_distance: bool=…) -> str - changed:
method Locale.day_abbreviation(day) → method Locale.day_abbreviation(day: int) -> str - changed:
method Locale.day_name(day) → method Locale.day_name(day: int) -> str - changed:
method Locale.describe(timeframe, delta=…, only_distance=…) → method Locale.describe(timeframe: TimeFrameLiteral, delta: Union[float, int]=…, only_distance: bool=…) -> str - changed:
method Locale.describe_multi(timeframes, only_distance=…) → method Locale.describe_multi(timeframes: Sequence[Tuple[TimeFrameLiteral, Union[int, float]]], only_distance: bool=…) -> str - changed:
method Locale.meridian(hour, token) → method Locale.meridian(hour: int, token: Any) -> Optional[str] - changed:
method Locale.month_abbreviation(month) → method Locale.month_abbreviation(month: int) -> str - changed:
method Locale.month_name(month) → method Locale.month_name(month: int) -> str - changed:
method Locale.month_number(name) → method Locale.month_number(name: str) -> Optional[int] - changed:
method Locale.ordinal_number(n) → method Locale.ordinal_number(n: int) -> str - changed:
method Locale.year_abbreviation(year) → method Locale.year_abbreviation(year: int) -> str - changed:
method Locale.year_full(year) → method Locale.year_full(year: int) -> str - changed:
method ThaiLocale.year_abbreviation(year) → method ThaiLocale.year_abbreviation(year: int) -> str - changed:
method ThaiLocale.year_full(year) → method ThaiLocale.year_full(year: int) -> str - added:
class AlbanianLocale(Locale) - added:
class AmharicLocale(Locale) - added:
class ArmenianLocale(Locale) - added:
class CroatianLocale(Locale) - added:
class GeorgianLocale(Locale) - added:
class KazakhLocale(Locale) - added:
class LaotianLocale(Locale) - added:
class LatinLocale(Locale) - added:
class LatvianLocale(Locale) - added:
class LithuanianLocale(Locale) - added:
class LuxembourgishLocale(Locale) - added:
class MacedonianLatinLocale(SlavicBaseLocale) - added:
class MalayLocale(Locale) - added:
class MalteseLocale(Locale) - added:
class OdiaLocale(Locale) - added:
class SamiLocale(Locale) - added:
class SerbianLocale(Locale) - added:
class SinhalaLocale(Locale) - added:
class TamilLocale(Locale) - added:
class UrduLocale(Locale) - added:
class UzbekLocale(Locale) - added:
class ZuluLocale(Locale) - added:
field AlbanianLocale.and_word - added:
field AlbanianLocale.day_abbreviations - added:
field AlbanianLocale.day_names - added:
field AlbanianLocale.future - added:
field AlbanianLocale.month_abbreviations - added:
field AlbanianLocale.month_names - added:
field AlbanianLocale.names - added:
field AlbanianLocale.past - added:
field AlbanianLocale.timeframes - added:
field AmharicLocale.and_word - added:
field AmharicLocale.day_abbreviations - added:
field AmharicLocale.day_names - added:
field AmharicLocale.future - added:
field AmharicLocale.month_abbreviations - added:
field AmharicLocale.month_names - added:
field AmharicLocale.names - added:
field AmharicLocale.past - added:
field AmharicLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[Mapping[str, str], str]]] - added:
field AmharicLocale.timeframes_only_distance - added:
field ArmenianLocale.and_word - added:
field ArmenianLocale.day_abbreviations - added:
field ArmenianLocale.day_names - added:
field ArmenianLocale.future - added:
field ArmenianLocale.meridians - added:
field ArmenianLocale.month_abbreviations - added:
field ArmenianLocale.month_names - added:
field ArmenianLocale.names - added:
field ArmenianLocale.past - added:
field ArmenianLocale.timeframes - added:
field CroatianLocale.and_word - added:
field CroatianLocale.day_abbreviations - added:
field CroatianLocale.day_names - added:
field CroatianLocale.future - added:
field CroatianLocale.month_abbreviations - added:
field CroatianLocale.month_names - added:
field CroatianLocale.names - added:
field CroatianLocale.past - added:
field CroatianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field GeorgianLocale.and_word - added:
field GeorgianLocale.day_abbreviations - added:
field GeorgianLocale.day_names - added:
field GeorgianLocale.future - added:
field GeorgianLocale.month_abbreviations - added:
field GeorgianLocale.month_names - added:
field GeorgianLocale.names - added:
field GeorgianLocale.past - added:
field GeorgianLocale.timeframes - added:
field JapaneseLocale.and_word - added:
field KazakhLocale.day_abbreviations - added:
field KazakhLocale.day_names - added:
field KazakhLocale.future - added:
field KazakhLocale.month_abbreviations - added:
field KazakhLocale.month_names - added:
field KazakhLocale.names - added:
field KazakhLocale.past - added:
field KazakhLocale.timeframes - added:
field LaotianLocale.BE_OFFSET - added:
field LaotianLocale.day_abbreviations - added:
field LaotianLocale.day_names - added:
field LaotianLocale.future - added:
field LaotianLocale.month_abbreviations - added:
field LaotianLocale.month_names - added:
field LaotianLocale.names - added:
field LaotianLocale.past - added:
field LaotianLocale.timeframes - added:
field LatinLocale.and_word - added:
field LatinLocale.day_abbreviations - added:
field LatinLocale.day_names - added:
field LatinLocale.future - added:
field LatinLocale.month_abbreviations - added:
field LatinLocale.month_names - added:
field LatinLocale.names - added:
field LatinLocale.past - added:
field LatinLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field LatvianLocale.and_word - added:
field LatvianLocale.day_abbreviations - added:
field LatvianLocale.day_names - added:
field LatvianLocale.future - added:
field LatvianLocale.month_abbreviations - added:
field LatvianLocale.month_names - added:
field LatvianLocale.names - added:
field LatvianLocale.past - added:
field LatvianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field LithuanianLocale.and_word - added:
field LithuanianLocale.day_abbreviations - added:
field LithuanianLocale.day_names - added:
field LithuanianLocale.future - added:
field LithuanianLocale.month_abbreviations - added:
field LithuanianLocale.month_names - added:
field LithuanianLocale.names - added:
field LithuanianLocale.past - added:
field LithuanianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field LuxembourgishLocale.and_word - added:
field LuxembourgishLocale.day_abbreviations - added:
field LuxembourgishLocale.day_names - added:
field LuxembourgishLocale.future - added:
field LuxembourgishLocale.month_abbreviations - added:
field LuxembourgishLocale.month_names - added:
field LuxembourgishLocale.names - added:
field LuxembourgishLocale.past - added:
field LuxembourgishLocale.timeframes: ClassVar[Dict[TimeFrameLiteral, str]] - added:
field LuxembourgishLocale.timeframes_only_distance - added:
field MacedonianLatinLocale.day_abbreviations - added:
field MacedonianLatinLocale.day_names - added:
field MacedonianLatinLocale.future - added:
field MacedonianLatinLocale.meridians - added:
field MacedonianLatinLocale.month_abbreviations - added:
field MacedonianLatinLocale.month_names - added:
field MacedonianLatinLocale.names - added:
field MacedonianLatinLocale.past - added:
field MacedonianLatinLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field MalayLocale.and_word - added:
field MalayLocale.day_abbreviations - added:
field MalayLocale.day_names - added:
field MalayLocale.future - added:
field MalayLocale.month_abbreviations - added:
field MalayLocale.month_names - added:
field MalayLocale.names - added:
field MalayLocale.past - added:
field MalayLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field MalteseLocale.and_word - added:
field MalteseLocale.day_abbreviations - added:
field MalteseLocale.day_names - added:
field MalteseLocale.future - added:
field MalteseLocale.month_abbreviations - added:
field MalteseLocale.month_names - added:
field MalteseLocale.names - added:
field MalteseLocale.past - added:
field MalteseLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field OdiaLocale.day_abbreviations - added:
field OdiaLocale.day_names - added:
field OdiaLocale.future - added:
field OdiaLocale.meridians - added:
field OdiaLocale.month_abbreviations - added:
field OdiaLocale.month_names - added:
field OdiaLocale.names - added:
field OdiaLocale.past - added:
field OdiaLocale.timeframes - added:
field SamiLocale.day_abbreviations - added:
field SamiLocale.day_names - added:
field SamiLocale.future - added:
field SamiLocale.month_abbreviations - added:
field SamiLocale.month_names - added:
field SamiLocale.names - added:
field SamiLocale.past - added:
field SamiLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field SerbianLocale.and_word - added:
field SerbianLocale.day_abbreviations - added:
field SerbianLocale.day_names - added:
field SerbianLocale.future - added:
field SerbianLocale.month_abbreviations - added:
field SerbianLocale.month_names - added:
field SerbianLocale.names - added:
field SerbianLocale.past - added:
field SerbianLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field SinhalaLocale.and_word - added:
field SinhalaLocale.day_abbreviations - added:
field SinhalaLocale.day_names - added:
field SinhalaLocale.future - added:
field SinhalaLocale.month_abbreviations - added:
field SinhalaLocale.month_names - added:
field SinhalaLocale.names - added:
field SinhalaLocale.past - added:
field SinhalaLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[Mapping[str, str], str]]] - added:
field SinhalaLocale.timeframes_only_distance - added:
field SlavicBaseLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[str, Mapping[str, str]]]] - added:
field TamilLocale.day_abbreviations - added:
field TamilLocale.day_names - added:
field TamilLocale.future - added:
field TamilLocale.month_abbreviations - added:
field TamilLocale.month_names - added:
field TamilLocale.names - added:
field TamilLocale.past - added:
field TamilLocale.timeframes - added:
field TurkishLocale.and_word - added:
field TurkishLocale.meridians - added:
field UrduLocale.and_word - added:
field UrduLocale.day_abbreviations - added:
field UrduLocale.day_names - added:
field UrduLocale.future - added:
field UrduLocale.month_abbreviations - added:
field UrduLocale.month_names - added:
field UrduLocale.names - added:
field UrduLocale.past - added:
field UrduLocale.timeframes - added:
field UzbekLocale.day_abbreviations - added:
field UzbekLocale.day_names - added:
field UzbekLocale.future - added:
field UzbekLocale.month_abbreviations - added:
field UzbekLocale.month_names - added:
field UzbekLocale.names - added:
field UzbekLocale.past - added:
field UzbekLocale.timeframes - added:
field ZuluLocale.and_word - added:
field ZuluLocale.day_abbreviations - added:
field ZuluLocale.day_names - added:
field ZuluLocale.future - added:
field ZuluLocale.month_abbreviations - added:
field ZuluLocale.month_names - added:
field ZuluLocale.names - added:
field ZuluLocale.past - added:
field ZuluLocale.timeframes: ClassVar[Mapping[TimeFrameLiteral, Union[Mapping[str, str], str]]] - added:
method AmharicLocale.describe(timeframe: TimeFrameLiteral, delta: Union[float, int]=…, only_distance: bool=…) -> str - added:
method LaotianLocale.year_abbreviation(year: int) -> str - added:
method LaotianLocale.year_full(year: int) -> str - added:
method LuxembourgishLocale.describe(timeframe: TimeFrameLiteral, delta: Union[int, float]=…, only_distance: bool=…) -> str - added:
method SinhalaLocale.describe(timeframe: TimeFrameLiteral, delta: Union[float, int]=…, only_distance: bool=…) -> str - added:
variable TimeFrameLiteral
- changed:
class DateTimeParser(object) → class DateTimeParser - changed:
class TzinfoParser(object) → class TzinfoParser - changed:
constructor DateTimeParser(locale=…, cache_size=…) → constructor DateTimeParser(locale: str=…, cache_size: int=…) -> None - changed:
field DateTimeParser.SEPARATORS → field DateTimeParser.SEPARATORS: ClassVar[List[str]] - changed:
method DateTimeParser.parse(datetime_string, fmt, normalize_whitespace=…) → method DateTimeParser.parse(datetime_string: str, fmt: Union[List[str], str], normalize_whitespace: bool=…) -> datetime - changed:
method DateTimeParser.parse_iso(datetime_string, normalize_whitespace=…) → method DateTimeParser.parse_iso(datetime_string: str, normalize_whitespace: bool=…) -> datetime - changed:
static method TzinfoParser.parse(tzinfo_string) → static method TzinfoParser.parse(tzinfo_string: str) -> dt_tzinfo - added:
field DateTimeParser.locale: locales.Locale
- removed:
function isstr(s) - removed:
function total_seconds(td) - changed:
function is_timestamp(value) → function is_timestamp(value: Any) -> bool - changed:
function iso_to_gregorian(iso_year, iso_week, iso_day) → function iso_to_gregorian(iso_year: int, iso_week: int, iso_day: int) -> datetime.date - changed:
function next_weekday(start_date, weekday) → function next_weekday(start_date: Optional[datetime.date], weekday: int) -> datetime.datetime - added:
function validate_ordinal(value: Any) -> None