v2.5:
Fix to sanitize abbreviated months from icu
typo in RU locale in abbreviation for January
Fix lint errors for flake8 v3.5.0
Add a constant for start hour
Add 'secs' and 'mins' into base units
Remove unused dependency on future
0.15.4:
- [FIX] Fixed an issue that caused package installs to fail on Conda Forge.
0.15.3:
- [NEW] ``factory.get()`` can now create arrow objects from a ISO calendar tuple, for example:
.. code-block:: python
>>> arrow.get((2013, 18, 7))
<Arrow [2013-05-05T00:00:00+00:00]>
- [NEW] Added a new token ``x`` to allow parsing of integer timestamps with milliseconds and microseconds.
- [NEW] Formatting now supports escaping of characters using the same syntax as parsing, for example:
.. code-block:: python
>>> arw = arrow.now()
>>> fmt = "YYYY-MM-DD h [h] m"
>>> arw.format(fmt)
'2019-11-02 3 h 32'
- [NEW] Added ``humanize`` week granularity translations for Chinese, Spanish and Vietnamese.
- [CHANGE] Added ``ParserError`` to module exports.
- [FIX] Added support for midnight at end of day.
- [INTERNAL] Created Travis build for macOS.
- [INTERNAL] Test parsing and formatting against full timezone database.
0.15.2:
- [NEW] Added ``humanize`` week granularity translations for Portuguese and Brazilian Portuguese.
- [NEW] Embedded changelog within docs and added release dates to versions.
- [FIX] Fixed a bug that caused test failures on Windows only.
0.15.1:
- [NEW] Added ``humanize`` week granularity translations for Japanese.
- [FIX] Fixed a bug that caused Arrow to fail when passed a negative timestamp string.
- [FIX] Fixed a bug that caused Arrow to fail when passed a datetime object with ``tzinfo`` of type ``StaticTzInfo``.
0.15.0:
- [NEW] Added support for DDD and DDDD ordinal date tokens. The following functionality is now possible: ``arrow.get("1998-045")``, ``arrow.get("1998-45", "YYYY-DDD")``, ``arrow.get("1998-045", "YYYY-DDDD")``.
- [NEW] ISO 8601 basic format for dates and times is now supported (e.g. ``YYYYMMDDTHHmmssZ``).
- [NEW] Added ``humanize`` week granularity translations for French, Russian and Swiss German locales.
- [CHANGE] Timestamps of type ``str`` are no longer supported **without a format string** in the ``arrow.get()`` method. This change was made to support the ISO 8601 basic format and to address bugs.
The following will NOT work in v0.15.0:
.. code-block:: python
>>> arrow.get("1565358758")
>>> arrow.get("1565358758.123413")
The following will work in v0.15.0:
.. code-block:: python
>>> arrow.get("1565358758", "X")
>>> arrow.get("1565358758.123413", "X")
>>> arrow.get(1565358758)
>>> arrow.get(1565358758.123413)
- [CHANGE] When a meridian token (a|A) is passed and no meridians are available for the specified locale (e.g. unsupported or untranslated) a ``ParserError`` is raised.
- [CHANGE] The timestamp token (``X``) will now match float timestamps of type ``str``: ``arrow.get(“1565358758.123415”, “X”)``.
- [CHANGE] Strings with leading and/or trailing whitespace will no longer be parsed without a format string. Please see `the docs <https://arrow.readthedocs.io/en/latest/#regular-expressions>`_ for ways to handle this.
- [FIX] The timestamp token (``X``) will now only match on strings that **strictly contain integers and floats**, preventing incorrect matches.
- [FIX] Most instances of ``arrow.get()`` returning an incorrect ``Arrow`` object from a partial parsing match have been eliminated.
Alan Coopersmith (3):
Use _CONST_X_STRING to make libXt declare String as const char *
Clear -Wsign-compare warning from gcc 7.3
xclock 1.0.9
Jon Turney (1):
Consistently use X_GETTIMEOFDAY
Niclas Zeising (2):
Fix logic sourrouning && and ||
Use fabsf when dealing with floating point numbers
This library provides access to and handling of calendar data.
It supports the standard formats iCalendar and vCalendar and the
group scheduling standard iTIP.
A calendar contains information like incidences (events, to-dos, journals),
alarms, time zones, and other useful information. This API provides
access to that calendar information via well known calendar formats
iCalendar (or iCal) and the older vCalendar.
Version 2.8.1:
Data updates
- Updated tzdata version to 2019c.
Bugfixes
- Fixed a race condition in the ``tzoffset`` and ``tzstr`` "strong" caches on
Python 2.7.
- Parsing errors will now raise ``ParserError``, a subclass of ``ValueError``,
which has a nicer string representation.
- ``parser.parse`` will now raise ``TypeError`` when ``tzinfos`` is passed a
type that cannot be interpreted as a time zone. Prior to this change, it
would raise an ``UnboundLocalError`` instead.
- Changed error message raised when when passing a ``bytes`` object as the time
zone name to gettz in Python 3.
- Changed compatibility logic to support a potential Python 4.0 release.
- Updated many modules to use ``tz.UTC`` in favor of ``tz.tzutc()`` internally,
to avoid an unnecessary function call.
- Fixed issue where ``dateutil.tz`` was using a backported version of
``contextlib.nullcontext`` even in Python 3.7 due to a malformed import
statement.
Tests
- Switched from using assertWarns to using pytest.warns in the test suite.
- Fix typo in setup.cfg causing PendingDeprecationWarning to not be explicitly
specified as an error in the warnings filter.
- Fixed issue where ``test_tzlocal_offset_equal`` would fail in certain
environments (such as FreeBSD) due to an invalid assumption about what time
zone names are provided.
- Fixed a minor bug in ``test_isoparser`` related to ``bytes``/``str``
handling.
- Explicitly listed all markers used in the pytest configuration.
- Extensive improvements to the parser test suite, including the adoption of
``pytest``-style tests and the addition of parametrization of several test
cases.
- Added tests for tzinfos input types.
- Fixed failure of test suite when changing the TZ variable is forbidden.
- Pinned all test dependencies on Python 3.3.
Documentation changes
- Fixed many misspellings, typos and styling errors in the comments and
documentation.
Misc
- Added Python 3.8 to the trove classifiers.
- Moved as many keys from ``setup.py`` to ``setup.cfg`` as possible.
- Reorganized ``parser`` methods by functionality.
- Switched ``release.py`` over to using ``pep517.build`` for creating releases,
rather than direct invocations of ``setup.py``.
- Added a "build" environment into the tox configuration, to handle dependency
management when making releases.
Changes in 3.0.6:
Handle both COUNT and UNTIL in RRULEs
Fix RRULE BYDAY with INTERVAL=2 conflict
Various fuzzification fixes
New publicly available function:
icaltimezone_truncate_vtimezone()
Add option to disable building the test suite
Built-in timezones updated to tzdata2019c
Changes in 3.0.5:
New publicly available function:
icalproperty_get_datetime_with_component()
Allow reset DATE/DATE-TIME VALUE parameter for all-day events
icalproperty_get_datetime_with_component() will use location as TZID fallback.
New CMake option ENABLE_GTK_DOC for disabling the libical-glib developer documentation
GObject Introspection - use $MAJOR-0 versioning
libical-glib API is considered unstable:
define LIBICAL_GLIB_UNSTABLE_API=1 before including <libical-glib/libical-glib.h>
Built-in timezones updated to tzdata2019a
De-fuzzifications and Coverity fixes
Changes in 3.0.4:
Silently fail RSCALE recurrence clauses when RSCALE is disabled
Fixed icalcomponent_set_comment() and icalcomponent_set_uid()
fix FREQ=MONTHLY;BYMONTH
Skip UTF-8 marker when parsing
Fix parsing ? in VCF files produced by Outlook
Fix TZID on DATE-TIME value can override time specified in UTC
CMake discovery module for ICU uses pkg-config now
New publicly available function:
icalparameter_kind_is_valid()
Built-in timezones updated to tzdata2018e
0.23 2019-08-14
- Rewrite property folding to be faster (and clearer)(thanks to Calvin Morrison)
- Linewrap tests: add a stronger assertion about expectation(thanks to Ricardo Signes)
Note that as the folding code is rewritten, there is a tiny behavior change:
Long folded strings will always contain CRLF at the end no matter if
original strings have that or not(they should have according to RFC).
Please report if this is an issue to you.
0.32 Sat Sep 14 2019
- add support for offset timezones without a space separator and
formatted HH:MM '2019-09-03T10:42:00.000-04:00'
- thanks Stijn Heymans
- allow negative timezone offsets in 2 and 4 digit lengths with and without spaces
- now works: 2007-05-06T04:44:44-0800
- now works: 2007-05-06T04:44:44-08
- now works: 2007-05-06T04:44:44 -08
- validate all timezone offsets
0.7.2:
Features:
* Extended Czech support
* Added `time` to valid periods
* Added timezone information to dates found with `search_dates()`
* Support strings as date formats
Improvements:
* Fixed Collections ABCs depreciation warning
* Fixed dates with trailing colons not being parsed
* Fixed date format override on any settings change
* Fixed parsing current weekday as past date, regardless of settings
* Added UTC -2:30 as a valid offset
* Added Python 3.7 to supported versions, dropped support for Python 3.3 and 3.4
* Moved to importlib from imp where possible
* Improved support for Catalan
* Documentation improvements
Upstream changes:
2.37 2019-09-11
- This release is based on version 2019c of the Olson database. This release
includes contemporary changes for Fiji and Norfolk Island.
2.36 2019-07-01
- This release is based on version 2019b of the Olson database. This release
includes contemporary changes for Brazil and Palestine.
Upstream changes:
1.15 2019 July 26
- Fix a bug in the test suite due to floating-point rounding. Thanks to
Slaven Rezic (see CPAN RT bug 130150:
https://rt.cpan.org/Ticket/Display.html?id=130150)
- Also improved __DATA__ handling, so as not to hold a lock on the library.
1.14 2019 July 22
- Fix CPAN RT bug 87484 (https://rt.cpan.org/Ticket/Display.html?id=87484),
concerning very small floating-point values (e.g. "2.1458e-06").
- Fix CPAN RT Bug 95447, concerning floating-point numerical time values.
- Fix CPAN RT Bug 121367, concerning loading perl-only routines after forking.
This might (?) also fix bug 74880, but I can't reproduce that.
- Skip locale tests on openbsd platform.
- Fix accented strings in locale.t
1.13 2019 July 18
- Fix CPAN RT bug 85001.
This was a problem in the test suite only; no code changes were made
in the main module lib/Time/Format.pm.
The problem existed in how the test suite checked for whether certain
CPAN modules were installed, and especially in how it attempted to
unload them from memory afterward.
Thanks to Sendu Bala for reporting this -- and to Jim Keenan for
pushing me to fix this.
0.14.7
- [CHANGE] `ArrowParseWarning` will no longer be printed on every call to `arrow.get()` with a datetime string. The purpose of the warning was to start a conversation about the upcoming 0.15.0 changes and we appreciate all the feedback that the community has given us!
0.14.6
- [NEW] Added support for `week` granularity in `Arrow.humanize()`. For example, `arrow.utcnow().shift(weeks=-1).humanize(granularity="week")` outputs "a week ago". This change introduced two new untranslated words, `week` and `weeks`, to all locale dictionaries, so locale contributions are welcome!
- [NEW] Fully translated the Brazilian Portugese locale.
- [CHANGE] Updated the Macedonian locale to inherit from a Slavic base.
- [FIX] Fixed a bug that caused `arrow.get()` to ignore tzinfo arguments of type string (e.g. `arrow.get(tzinfo="Europe/Paris")`).
- [FIX] Fixed a bug that occurred when `arrow.Arrow()` was instantiated with a `pytz` tzinfo object.
- [FIX] Fixed a bug that caused Arrow to fail when passed a sub-second token, that when rounded, had a value greater than 999999 (e.g. `arrow.get("2015-01-12T01:13:15.9999995")`). Arrow should now accurately propagate the rounding for large sub-second tokens.
5.61.0
Add public holidays' substitute days in Russia, for 2019-2020
Update holidays in Russia
5.60.0
Update UK Early May bank holiday for 2020
Fix ISO code for Hesse / Germany
5.58.0
holidays/plan2/holiday_zm_en-gb - add Zambia holidays
holidays/plan2/holiday_lv_lv - fix Midsummer's Day
holiday_mu_en - Holidays 2019 in Mauritius
holiday_th_en-gb - update for 2019
Update Japanese holidays
Add public holidays for Lower Saxony (Germany)
2.0.0:
Major differences since 1.5.1
- When no time zone configuration can be find, tzlocal now return UTC.
This is a major difference from 1.x, where an exception would be raised.
This change is because Docker images often have no configuration at all,
and the unix utilities will then default to UTC, so we follow that.
- If tzlocal on Unix finds a timezone name in a /etc config file, then
tzlocal now verifies that the timezone it fouds has the same offset as
the local computer is configured with. If it doesn't, something is
configured incorrectly.
- Get timezone via Termux `getprop` wrapper on Android. It's not officially
supported because we can't test it, but at least we make an effort.
Minor differences and bug fixes
- Skip comment lines when parsing /etc/timezone.
- Don't load timezone from current directory.
- Now verifies that the config files actually contain something before
reading them.
- Got rid of a BytesWarning
- Now handles if config file paths exists, but are directories.
- Moved tests out from distributions
- Support wheels
The canonical form [1] of an R package Makefile includes the
following:
- The first stanza includes R_PKGNAME, R_PKGVER, PKGREVISION (as
needed), and CATEGORIES.
- HOMEPAGE is not present but defined in math/R/Makefile.extension to
refer to the CRAN web page describing the package. Other relevant
web pages are often linked from there via the URL field.
This updates all current R packages to this form, which will make
regular updates _much_ easier, especially using pkgtools/R2pkg.
[1] http://mail-index.netbsd.org/tech-pkg/2019/08/02/msg021711.html
0.14.4
- [FIX] Fixed a regression in 0.14.3 that prevented a tzinfo argument of type string to be passed to the get() function. Functionality such as arrow.get("2019072807", "YYYYMMDDHH", tzinfo="UTC") should work as normal again.
- [CHANGE] Moved backports.functools_lru_cache dependency from extra_requires to install_requires for Python 2.7 installs to fix
0.14.3
- [NEW] Added full support for Python 3.8.
- [CHANGE] Added warnings for upcoming factory.get() parsing changes in 0.15.0. Please see https://github.com/crsmithdev/arrow/issues/612 for full details.
- [FIX] Extensive refactor and update of documentation.
- [FIX] factory.get() can now construct from kwargs.
- [FIX] Added meridians to Spanish Locale.
2.0.5:
Fixed
* Fixed ISO week dates not being parsed properly in from_format().
* Fixed loading of some timezones with empty posix spec.
* Fixed deprecation warnings.
Locales
* Added RU locale.
PR pkg/54340.
A small Python library to parse various kinds of time expressions,
inspired by a StackOverflow question.
The single function pytimeparse.timeparse.timeparse defined in the
library (also available as pytimeparse.parse) parses time expressions
like the following:
32m
2h32m
3d2h32m
1w3d2h32m
1w 3d 2h 32m
1 w 3 d 2 h 32 m
...
0.14.2
- [CHANGE] Travis CI builds now use tox to lint and run tests.
- [FIX] Fixed UnicodeDecodeError on certain locales.
0.14.1
- [FIX] Fixed "ImportError: No module named 'dateutil'".
0.14.0
- [NEW] Added provisional support for Python 3.8.
- [CHANGE] Removed support for EOL Python 3.4.
- [FIX] Updated setup.py with modern Python standards.
- [FIX] Upgraded dependencies to latest versions.
- [FIX] Enabled flake8 and black on travis builds.
- [FIX] Formatted code using black and isort.
Upstream changes:
1.21 2019-05-11 NEILB
- Added Time::Elapsed to SEE ALSO, suggested by Ron Savage in RT#122186.
- Updated AUTHOR section to reflect that Neil Bowers is current maintainer.
- Extended testsuite so there's full code coverage (not pod yet).
Upstream changes:
0.15 2019-05-12 NEILB
- Added support for fractional parts of seconds in hh:mm:ss.ssss
- Added L<> links to Time::Duration and duration_exact in that module.
- Fixed grammar in doc
Upstream changes:
2.35 2019-04-21
- Handle "infinity" as a representation of infinite values in serialized
objects. On Solaris we end up with "infinity" and "-infinity" as opposed to
just "inf" and "-inf". Fixed by Andrew Paprocki. GH #36.
Upstream changes:
1.51 2019-04-21
- Fix CLDR formatting of 'S' pattern with more than 9 digits of
precision. While we only store nanoseconds in the DateTime object we should
still be able to handle an arbitrary number of digits properly. Fixed by
Slaven Rezić. GH #89.
jdcal 1.4.1
Remove testing for Python 2.6 and 3.3.
Added testing for Python 3.7. For current Python versions tested
see travis.yml.
Removed unused function fpart.
Change log:
* Removed the frame around the calendar popup to simplify appearance
* Spacing improvements in the preferences dialog (bug #14662)
* Fixed build warnings
* Updated translations
Upstream changes:
2.34 2019-03-26
- This release is based on version 2019a of the Olson database. This release
includes contemporary changes for Palestine and Metlakatla, Alaska.
Upstream changes:
1.76 2019-02-07
[BACKWARDS INCOMPATIBILITIES]
* The ability to set the pattern, time_zone, and locale via accessor methods
has been removed. This was deprecated over three years ago in version
1.60. It also turns out that the setting was actually broken for a long time
but no one seemed to notice, so I think it's afe to remove this feature.
aniso8601 builder for dateutil relativedeltas
Features
* Provides RelativeTimeBuilder compatible with aniso8601
* Returns dateutil relativedelta objects for durations
aniso8601 6.0.0
Remove previously deprecated built in version of relativetimebuilder
Python 2 support will be removed in 7.0.0
aniso8601 5.0.0
Previously deprecated relative keyword removed
Move builders to builders module
aniso8601.builder.PythonTimeBuilder -> aniso8601.builders.python.PythonTimeBuilder
aniso8601.builder.RelativeTimeBuilder -> aniso8601.builders.relative.RelativeTimeBuilder
aniso8601.builder.TupleBuilder -> aniso8601.builders.TupleBuilder
UTCOffset moved out of builder (aniso8601.builder.UTCOffset -> aniso8601.utcoffset.UTCOffset)
Fractional arguments are now handled with greater precision
When build_time is called with only hh 24<=hh<25, a MidnightBoundsError is raised, this used to be a HoursOutOfBoundsError
Promote interval components to datetime objects if the given duration has second or microsecond resolution, or if the duration tuple has hour, minute, or second components
Before promotion would only happen if the duration tuple had hour, minute, or second components
The built in RelativeTimeBuilder is deprecated, it will be removed in aniso8601 6.0.0, use RelativeTimeBuilder from relativetimebuilder instead
0.10.1
======
2019-03-30
* FIX error with the new color priority system and `discover` calendar type
* FIX search results in ikhal are ordered, same as in `khal search`
0.10.0
======
2019-03-25
* only dateutil < 2.7 is supported
* NEW DEPENDENCY added click_log >= 0.2.0
* NEW DEPENDENCY for Python 3.4: typing
* UPDATED DEPENDENCY icalendar>=4.03
* DROPPED support for Python 3.3
* vdirsyncer is still a test dependency (and always has been)
* FIX ordinal numbers in birthday entries (before, all number would end on `th`)
* FIX `search` will no longer break on overwritten events with a master event
* FIX when using short dates, khal infers that you meant next year, when date
is before today
* FIX Check for multi_uid .ics files in vdirs and don't import those events
(All .ics files in vdirs should only contain VEVENTS with the same UID.)
* CHANGE only searched configuration file paths are now
$XDG_CONFIG_HOME/khal/config and $XDG_CONFIG_HOME/khal/khal.conf (deprecated)
* CHANGE removed default command
* CHANGE default date/time formats to be the system's locale's formats
* CHANGE ``--verbose`` flag to ``--verbosity``, allowing finer granularity
* CHANGE `search` will now print one line for every different event in a
recurrence set, that is one line for the master event, and one line for every
different overwritten event
* CHANGE khal learned to read .ics files with nonsenscial TZOFFSETs > 24h and
prints a warning
* CHANGE better error message for a specific kind of invalid config file
* NEW khal learned the ``--logfile/-l LOGFILE`` flag which allows logging to a
file
* NEW format can now print the duration of an event with `{duration}`
* NEW configuration option: [view]monthdisplay = firstday|firstfullweek,
if set to 'firstday', khal displays the month name as soon as any day
in the week is within the new month. If set to 'firstfullweek', khal
displays the month name only if the first day of the week is within
the new month.
* NEW ikhal learned to show log messages in the header and in a new log pane,
access with default keybinding `L`
* NEW python 3.7 is now officially supported.
* NEW configuration option [[per_calendar]]priority = int (default 10). If
multiple calendars events are on the same day, the day will be colored with
the color of the calendar with highest priority. If multiple calendars have
the same highest priority, it falls back to the previous system.
* NEW format can now print the organizer of the event with '(organizer)'
Upstream changes:
0.82 2019-03-03
- Removed use of Class::Factory::Util. That distro is poorly maintained (by
me) and it has some issues with its use of Module::Build. This distro
(DateTime-Format-Builder) really doesn't need to use Class::Factory::Util.
Upstream changes:
1.9760 [2019-02-18]
- make utime() available only if we have both fd and name setting
[RT #133030]
- Adjutst Makefile.PL for windows: the DEFINE() in Makefile.PL
can't be be in sub init() because that sub isn't called on windows
- t/itimer.t: avoid race condition.
- don't truncate nanosec utime
- fallback/const-c.inc: Avoid compiler warning showing up on darwin.
1.9759 [2018-03-23]
- This version reverts the changes on CPAN that were included in 1.9754 - 1.9758.
Several of these changes caused instability on some windows platforms. We can
revisit these fixes if necessary in Perl 5.29.0
Alan Coopersmith (7):
config: Add missing AC_CONFIG_SRCDIR
configure: Drop AM_MAINTAINER_MODE
autogen.sh: Honor NOCONFIGURE=1
Update README for gitlab migration
Update configure.ac bug URL for gitlab migration
Replace remaining sprintf calls with snprintf
xclock 1.0.8
Emil Velikov (1):
autogen.sh: use quoted string variables
Jon TURNEY (1):
No point in trying to use iconv if we don't have nl_langinfo
Keith Packard (1):
Allow sub-second updates.
Mihail Konev (1):
autogen: add default patch prefix
Peter Hutterer (1):
autogen.sh: use exec instead of waiting for configure to finish
Version 0.13.1
Add support for Python 3.7.
Remove deprecation decorators for Arrow.range(), Arrow.span_range() and Arrow.interval(). All now return generators, wrap with list() to get old behavior.
0.7.1:
Features/news:
Added detected language to return value of search_dates()
Performance improvements
Refreshed versions of dependencies
Improvements:
Fixed unpickleable DateTime objects with timezones
Fixed regex pattern to avoid new behaviour of re.split in Python 3.7
Fixed an exception thrown when parsing colons
Fixed tests failing on days with number greater than 30
Fixed ZeroDivisionError exceptions
1.1:
Drop support for EOL Python releases, add (explicit) support for Python 3.5 and 3.6
Add :meth:.utils.FixedOffset.__deepcopy__() method, to prevent crash on deepcopy
Version 2.8.0 (2019-02-04)
Data updates
- Updated tzdata version to to 2018i.
Features
- Added support for EXDATE parameters when parsing rrule strings.
- Added support for sub-minute time zone offsets in Python 3.6+.
- Switched the tzoffset, tzstr and gettz caches over to using weak
references, so that the cache expires when no other references to the
original tzinfo objects exist. This cache-expiry behavior is not
guaranteed in the public interface and may change in the future. To improve
performance in the case where transient references to the same time zones
are repeatedly created but no strong reference is continuously held, a
smaller "strong value" cache was also added.
Bugfixes
- Added time zone inference when initializing an rrule with a specified
UNTIL but without an explicitly specified DTSTART; the time zone
of the generated DTSTART will now be taken from the UNTIL rule.
- Fixed an issue where parser.parse would raise Decimal-specific errors
instead of a standard ValueError if certain malformed values were parsed
(e.g. NaN or infinite values).
- Fixed issue in parser where a tzinfos call explicitly returning
None would throw a ValueError.
- Fixed incorrect parsing of certain dates earlier than 100 AD when repesented
in the form "%B.%Y.%d", e.g. "December.0031.30".
- Add support for ISO 8601 times with comma as the decimal separator in the
dateutil.parser.isoparse function.
- Changed handling of T24:00 to be compliant with the standard. T24:00
now represents midnight on the *following* day.
- Fixed an issue where isoparser.parse_isotime was unable to handle the
24:00 variant representation of midnight.
- Added support for more than 6 fractional digits in isoparse.
- Added 'z' (lower case Z) as valid UTC time zone in isoparser.
- Fixed a bug with base offset changes during DST in tzfile, and refactored
the way base offset changes are detected.
- Fixed error condition in tz.gettz when a non-ASCII timezone is passed on
Windows in Python 2.7.
- Improved performance and inspection properties of tzname methods.
- Removed unnecessary binary_type compatibility shims.
- Changed python setup.py test to print an error to stderr and exit
with 1 instead of 0.
- Added a pyproject.toml file with build requirements and an explicitly
specified build backend.
Documentation changes
- Added documentation for the rrule.rrulestr function.
- Added documentation for dateutil.tz.gettz.
- Add documentation for the dateutil.tz.win module and mocked out certain
Windows-specific modules so that autodoc can still be run on non-Windows
systems.
- Added changelog to documentation.
- Changed order of keywords in the rrule docstring.
- Improved documentation on the use of until and count parameters in
rrule.
- Added an example of how to use a custom parserinfo subclass to parse
non-standard datetime formats in the examples documentation for parser.
- Added doctest examples to tzfile documentation.
- Updated the documentation for relativedelta's weekday arguments.
- Improved explanation of the order that relativedelta components are
applied in.
- Expanded the description and examples in the relativedelta class.
- Improved the contributing documentation to clarify where to put new changelog
files.
- Fixed a broken doctest in the relativedelta module.
- Changed the default theme to sphinx_rtd_theme, and changed the sphinx
configuration accordingly.
- Reorganized dateutil.tz documentation and fixed issue with the
dateutil.tz docstring.
- Cleaned up malformed RST in the tz documentation.
- Corrected link syntax and updated URL to https for ISO year week number
notation in relativedelta examples.
2.0.0 (2018-12-26)
Added
* to_local and period_for instance methods have been added to TZInfo::Timezone. These are similar to utc_to_local and period_for_utc, but take the UTC offset of the given time into account.
* abbreviation, dst?, base_utc_offset and observed_utc_offset instance methods have been added to TZInfo::Timezone, returning the abbreviation, whether daylight savings time is in effect and the UTC offset of the time zone at a specified time.
* A TZInfo::Timestamp class has been added. It can be used with TZInfo::Timezone in place of a Time or DateTime.
* local_time, local_datetime and local_timestamp instance methods have been added to TZInfo::Timezone. These methods construct local Time, DateTime and TZInfo::Timestamp instances with the correct UTC offset and abbreviation for the time zone.
* Support for a (yet to be released) version 2 of tzinfo-data has been added, in addition to support for version 1. The new version will remove the (no longer needed) DateTime parameters from transition times, reduce memory consumption and improve the efficiency of loading timezone and country indexes.
* A TZInfo::VERSION constant has been added, indicating the TZInfo version number.
Changed
* The minimum supported Ruby versions are now Ruby MRI 1.9.3, JRuby 1.7 (in 1.9 or later mode) and Rubinius 3.
* Local times are now returned using the correct UTC offset (instead of using UTC). #49 and #52.
* Local times are returned as instances of TimeWithOffset, DateTimeWithOffset or TZInfo::TimestampWithOffset. These classes subclass Time, DateTime and TZInfo::Timestamp respectively. They override the default behaviour of the base classes to return information about the observed offset at the indicated time. For example, the zone abbreviation is returned when using the %Z directive with strftime.
* The transitions_up_to, offsets_up_to and strftime instance methods of TZInfo::Timezone now take the UTC offsets of given times into account (instead of ignoring them as was previously the case).
* The TZInfo::TimezonePeriod class has been split into two subclasses: TZInfo::OffsetTimezonePeriod and TZInfo::TransitionsTimezonePeriod. TZInfo::OffsetTimezonePeriod is returned for time zones that only have a single offset. TZInfo::TransitionsTimezonePeriod is returned for periods that start or end with a transition.
* TZInfo::TimezoneOffset#abbreviation, TZInfo::TimezonePeriod#abbreviation and TZInfo::TimezonePeriod#zone_identifier now return frozen String instances instead of instances of Symbol.
* The utc_offset and utc_total_offset attributes of TZInfo::TimezonePeriod and TZInfo::TimezoneOffset have been renamed base_utc_offset and observed_utc_offset respectively. The former names have been retained as aliases.
* TZInfo::Timezone.get, TZInfo::Timezone.get_proxy and TZInfo::Country.get can now be used with strings having any encoding. Previously, only encodings that are directly comparable with UTF-8 were supported.
* The requested identifier is included in TZInfo::InvalidTimezoneIdentifier exception messages.
* The requested country code is included in TZInfo::InvalidCountryCode exception messages.
* The full range of transitions is now loaded from zoneinfo files. Zoneinfo files produced with version 2014c of the zic tool contain an initial transition 2**63 seconds before the epoch. Zoneinfo files produced with version 2014d or later of zic contain an initial transition 2**59 seconds before the epoch. These transitions would previously have been ignored, but are now returned in methods such as TZInfo::Timezone#transitions_up_to.
* The TZInfo::RubyDataSource and TZInfo::ZoneinfoDataSource classes have been moved into a new TZInfo::DataSources module. Code that is setting TZInfo::ZoneinfoDataSource.search_path or TZInfo::ZoneinfoDataSource.alternate_iso3166_tab_search_path will need to be updated accordingly.
* The TZInfo::InvalidZoneinfoDirectory and TZInfo::ZoneinfoDirectoryNotFound exception classes raised by TZInfo::DataSources::ZoneinfoDataSource have been moved into the TZInfo::DataSources module.
* Setting the data source to :ruby or instantiating TZInfo::DataSources::RubyDataSource will now immediately raise a TZInfo::DataSources::TZInfoDataNotFound exception if require 'tzinfo/data' fails. Previously, a failure would only occur later when accessing an index or loading a timezone or country.
* The DEFAULT_SEARCH_PATH and DEFAULT_ALTERNATE_ISO3166_TAB_SEARCH_PATH constants of TZInfo::DataSources::ZoneinfoDataSource have been made private.
* The TZInfo::Country.data_source, TZInfo::DataSource.create_default_data_source, TZInfo::DataSources::ZoneinfoDataSource.process_search_path, TZInfo::Timezone.get_proxies and TZInfo::Timezone.data_source methods have been made private.
* The performance of loading zoneinfo files and the associated indexes has been improved.
* Memory use has been decreased by deduplicating String instances when loading country and time zone data.
* The dependency on the deprecated thread_safe gem as been removed and replaced by concurrent-ruby.
* The Info classes used to return time zone and country information from TZInfo::DataSource implementations have been moved into the TZInfo::DataSources module.
* The TZInfo::TransitionDataTimezoneInfo class has been removed and replaced with TZInfo::DataSources::TransitionsDataTimezoneInfo and TZInfo::DataSources::ConstantOffsetDataTimezoneInfo. TZInfo::DataSources::TransitionsDataTimezoneInfo is constructed with an Array of TZInfo::TimezoneTransition instances representing times when the offset changes. TZInfo::DataSources::ConstantOffsetDataTimezoneInfo is constructed with a TZInfo::TimezoneOffset instance representing the offset constantly observed in a time zone.
* The TZInfo::DataSource#timezone_identifiers method should no longer be overridden in custom data source implementations. The implementation in the base class now calculates a result from TZInfo::DataSource#data_timezone_identifiers and TZInfo::DataSource#linked_timezone_identifiers.
* The results of the TZInfo::DataSources::RubyDataSource to_s and inspect methods now include the time zone database and tzinfo-data versions.
Removed
* Methods of TZInfo::Timezone that accept time arguments no longer allow Integer timestamp values. Time, DateTime or TZInfo::Timestamp values or objects that respond to to_i, subsec and optionally utc_offset must be used instead.
* The %:::z format directive can now only be used with TZInfo::Timezone#strftime if it is supported by Time#strftime on the runtime platform.
* Using TZInfo::Timezone.new(identifier) and TZInfo::Country.new(code) to obtain a specific TZInfo::Timezone or TZInfo::Country will no longer work. TZInfo::Timezone.get(identifier) and TZInfo::Country.get(code) should be used instead.
* The TZInfo::TimeOrDateTime class has been removed.
* The valid_for_utc?, utc_after_start?, utc_before_end?, valid_for_local?, local_after_start? and local_before_end? instance methods of TZInfo::TimezonePeriod have been removed. Comparisons can be performed with the results of the starts_at, ends_at, local_starts_at and local_ends_at methods instead.
* The to_local and to_utc instance methods of TZInfo::TimezonePeriod and TZInfo::TimezoneOffset have been removed. Conversions should be performed using the TZInfo::Timezone class instead.
* The TZInfo::TimezonePeriod#utc_total_offset_rational method has been removed. Equivalent information can be obtained using the TZInfo::TimezonePeriod#observed_utc_offset method.
* The datetime, time, local_end, local_end_time, local_start and local_start_time instance methods of TZInfo::TimezoneTransition have been removed. The at, local_end_at and local_start_at methods should be used instead and the result (a TZInfo::TimestampWithOffset) converted to either a DateTime or Time by calling to_datetime or to_time on the result.
* The us_zones and us_zone_identifiers class methods of TZInfo::Timezone have been removed. TZInfo::Country.get('US').zones and TZInfo::Country.get('US').zone_identifiers should be used instead.
Upstream changes:
0.13
* Use explicit 4 digit years when using localtime. This fixes
some test failures that started after 2018-12-31 because of
date math.
## Version 1.3.1 2019-01-18
* Update jruby extension to not use global runtime state (thanks @kares) (#70)
* Update travis CI config
* Update documentataion for Ruby 2.6
Upstream changes:
2.23 2018-12-30
- This release is based on version 2018i of the Olson database. This release
includes contemporary changes for São Tomé and Príncipe.
2.22 2018-12-29
- This release is based on version 2018h of the Olson database. This release
includes contemporary changes for Morocco, Kazakhstan, and Iran.
Changes:
Version 1.29 - released August 14, 2017
Update GPLv2 license text.
Update FSF address.
Remove trailing whitespace.
Use autotools for build.
Rename changelog to ChangeLog; clean up and split off TODO.
Correct bug report email address.
Remove unused variables.
Use unsigned char in mask bitmap to avoid overflow warnings.
Use correct includes for each file.
Add desktop entry file.
Version 1.28 - released September 20, 2011.
Debian patches added to the upstream version. These patches
are included:
01_all_previous_diff.diff, 02_update_time.diff,
03_add_southern_hemisphere_support.diff and
04_fix_hyphen_used_as_minus_sign.diff
BUGS file updated to report to wmaker-dev@lists.windowmaker.info
Source is now at http://repo.or.cz/w/dockapps.git
Updated by Rodolfo García Peñas (kix) <kix@kix.es>
Library for parsing ISO 8601 strings
Features
* Pure Python implementation
* Python 3 support
* Logical behavior
- Parse a time, get a datetime.time
- Parse a date, get a datetime.date
- Parse a datetime, get a datetime.datetime
- Parse a duration, get a datetime.timedelta
- Parse an interval, get a tuple of dates or datetimes
- Parse a repeating interval, get a date or datetime generator
* UTC offset represented as fixed-offset tzinfo
* Parser separate from representation, allowing parsing to different datetime
formats
* No regular expressions
2.0.4:
Fixed from_format() not recognizing input strings when the specified pattern had escaped elements.
Fixed missing x token for string formatting.
Fixed reading timezone files.
Added support for parsing padded 2-digit days of the month with from_format()
Fixed from_format() trying to parse escaped tokens.
Fixed the z token timezone parsing in from_format() to allow underscores.
Fixed C extensions build errors.
Fixed age calculation for future dates.
Upstream changes:
2.21 2018-10-27
- This release is based on version 2018f of the Olson database. This release
includes contemporary changes for Morocco.
2.20 2018-10-18
- Added more documentation on how local time zones work, and a warning to set
$ENV{TZ} if you're writing tests for code that tries to use the local time
zone.
- This release is based on version 2018f of the Olson database. This release
includes contemporary changes for Russia (Volograd), Fiji, and Chile.
Upstream changes:
1.06 2018-10-28 <schubiger@cpan.org>
- Merged development version to stable.
1.05_02 2018-10-27 <schubiger@cpan.org>
- Amend description of prefer_future option.
- Include the time zone when constructing DateTime objects
for the datetime option in dateparse.
- Minor tweaks to dateparse.
1.05_01 2018-10-25 <schubiger@cpan.org>
- Fix advancing to future when both datetime and prefer_future
options are provided.
Due to sysutils/ruby-chef's dependency, stop updating to latest version
0.12.0 for now.
## 0.11.0
* Add support for unary minus operator (thanks @walterbrebels).
## 0.10.1
* Fix `TimeInterval` size for non UTC timezones. (#41)
## 0.10.0
* Fix `TimeInterval` with `<duration>/<end>` patterns and leap years.
* Fix decimal fractions on date atoms. **WARNING** some duration patterns are
no longer valid.
# Hitimes Changelog
## Version 1.3.0 2018-06-15
* Add api method `Hitimes.raw_instant` to expose raw OS instant value
* Add api constant `Hitimes::INSTANT_CONVERSION_FACTOR` to expose raw OS instant conversion factor
* other development cleanup tasks
This removes the need for AUTO_MKDIRS and bsd.prefs.mk. It also
leverages ${INSTALL_SCRIPT}, ${INSTALL_MAN_DIR}, ${INSTALL_MAN} and
${INSTALL_DATA} instead of just ${INSTALL}.
No change to PKGREVISION as the final binary should be identical.
With suggestions from leot@, thanks!
1.50 2018-08-01
- The %F strftime pattern incorrectly zero-padded numbers less than four
digits. According to POSIX::strftime, this should output the year as-is
without padding. Reported by Andy Lester. GH #83.
MooseX::Types::DateTime::MoreCoercions builds on MooseX::Types::DateTime to add
additional custom types and coercions. Since it builds on an existing type, all
coercions and constraints are inherited.
C Extensions code does not seem supported when it is built with Python 2.7.
Pass the environment variable to avoid compiling it and failing and adjust PLIST
accordingly.
Reported via #pkgsrc by Juraj Lutter, thanks!
2.0.3:
Fixed handling of pytz timezones.
Fixed some formatter's tokens handling.
Fixed errors on some systems when retrieving timezone from localtime files.
Fixed diff methods.
Fixed closest()/farthest() methods.
Each R package should include ../../math/R/Makefile.extension, which also
defines MASTER_SITES. Consequently, it is redundant for the individual
packages to do the same. Package-specific definitions also prevent
redefining MASTER_SITES in a single common place.
Performing substitutions during post-patch breaks tools such as mkpatches,
making it very difficult to regenerate correct patches after making changes,
and often leading to substituted string replacements being committed.