Bug fixes:
- added an assertion that VTIMEZONE sub-components' DTSTART must be of type
DATETIME
- Fix handling of VTIMEZONEs with subcomponents with the same DTSTARTs and
OFFSETs but which are of different types
-------------
- Updated zoneinfo file to 2017b.
- Added Python 3.6 to CI testing
- Removed duplicate test name that was preventing a test from being run.
- Fixed testing of folds and gaps, particularly on Windows
- Fixed deprecated escape characters in regular expressions.
- Many PEP8 style violations and other code smells were fixed.
- Improved performance of tzutc and tzoffset objects.
- Fixed issue with several time zone classes around DST transitions in any
zones with +0 standard offset (e.g. Europe/London)
- Fixed issue with fuzzy parsing where tokens similar to AM/PM that are in the
end skipped were dropped in the fuzzy_with_tokens list.
- Fixed issue with parsing dates of the form X m YY.
- Added support for parser weekdays with less than 3 characters.
- Fixed issue with the addition and subtraction of certain relativedeltas.
- Fixed issue where the COUNT parameter of rrules was ignored if 0.
- Updated documentation to include the new tz methods.
- Update documentation to reflect that the parser can raise TypeError.
- Fixed an incorrect year in a parser doctest.
- Moved version information into _version.py and set up the versions more
granularly.
Version 0.16.0
==============
*released on 2 June 2017*
- Strip ``METHOD:PUBLISH`` added by some calendar providers, see :gh:`502`.
- Fix crash of Google storages when saving token file.
- Make DAV discovery more RFC-conformant, see :ghpr:`585`.
- Vdirsyncer is now tested against Xandikos, see :ghpr:`601`.
- Subfolders with a leading dot are now ignored during discover for
``filesystem`` storage. This makes it easier to combine it with version
control.
- Statuses are now stored in a sqlite database. Old data is automatically
migrated. Users with really large datasets should encounter performance
improvements. This means that **sqlite3 is now a dependency of vdirsyncer**.
- **Vdirsyncer is now licensed under the 3-clause BSD license**, see :gh:`610`.
- Vdirsyncer now includes experimental support for `EteSync
<https://www.etesync.com/>`_, see :ghpr:`614`.
- Vdirsyncer now uses more filesystem metadata for determining whether an item
changed. You will notice a **possibly heavy CPU/IO spike on the first sync
after upgrading**.
- **Packagers:** Reference ``systemd.service`` and ``systemd.timer`` unit files
are provided. It is recommended to install these as documentation if your
distribution is systemd-based.
0.9.6
=====
released 2017-06-13
* FIX set PRODID to khal/icalendar
* FIX don't crash on updated vcards
* FIX checking for RRULEs we understand
* FIX after editing an event in ikhal, make sure both the calendar and the
eventcolumn are focused on the new date
* FIX no more crashes if only one event which is an overwritten instance is
present in an .ics file
* FIX .ics files containing only overwritten instances are not expanded anymore,
even if they contain a RRULE or RDATE
* FIX valid UNTIL entry for recurring datetime events
* CHANGE the symbol used for indicating a recurring event now has a space in
front of it, also the ascii version changed to `(R)`
* CHANGE birthdays on leap 29th of February are shown on 1st of March in
non-leap years
* NEW import and printics will read from stdin if not filename(s) are provided.
* NEW new entry points recommended for packagers to use.
* NEW support keyword `yesterday` for querying and creating events
2016-11-01
================================================================================
xfce4-datetime-plugin v0.7.0 released
fix font styling with Gtk >= 3.22 to use a non-deprecated stanza
1.43 2017-05-29
- Added a small optimization for boolification overloading. Rather than
relying on a fallback to stringification, we now return true directly, which
is a little faster in cases like "if ($might_be_dt) { ... }".
- The datetime() method now accepts a single argument to use as the separate
between the date and time portion. This defaults to "T".
2.13 2017-06-01
- Really fix the indexing issue. For reals this time. I'm totally not
kidding. Thanks to Grinnz on #metacpan for giving me the solution.
2.12 2017-06-01
- Attempting to fix indexing of DateTime::TimeZone::Catalog on metacpan
again. No real code or zone changes. Reported by Greg Oscwhald. GH #19.
ISO8601 is a simple implementation in Ruby of the ISO 8601 (Data elements and
interchange formats - Information interchange - Representation of dates
and times) standard.
## Version 1.2.5 2017-05-25
* Update dependencies
* Add ruby 2.4 to windows fatbinary
* Update docs to indicate windows ruby before 2.0 is no longer supported
3.11.4 (2017-05-10)
-------------------
Bug fixes:
- Don't break on parameter values which contain equal signs, e.g. base64 encoded
binary data [geier]
- Fix handling of VTIMEZONEs with subcomponents with the same DTSTARTs.
[geier]
3.11.3 (2017-02-15)
-------------------
Bug fixes:
- Removed ``setuptools`` as a dependency as it was only required by setup.py
and not by the package.
- Don't split content lines on the unicode ``LINE SEPARATOR`` character
``\u2028`` but only on ``CRLF`` or ``LF``.
3.11.2 (2017-01-12)
-------------------
Bug fixes:
- Run tests with python 3.5 and 3.6.
[geier]
- Allow tests failing with pypy3 on travis.ci.
[geier]
3.11.1 (2016-12-19)
-------------------
Bug fixes:
- Encode error message before adding it to the stack of collected error messages.
3.11 (2016-11-18)
-----------------
Fixes:
- Successfully test with pypy and pypy3. [gforcada]
- Minor documentation update. [tpltnt]
I use MIT on my other projects, so relicensing.
Dropping support for Python versions nobody uses (2.5, 3.1, 3.2), adding 3.6 Python 3.1 and 3.2 still works, 2.5 has been broken for some time.
Ayalash’s OS X fix didn’t work on Python 2.7, fixed that.
* Added PEP-495-compatible methods to address ambiguous and imaginary dates in
time zones in a backwards-compatible way. Ambiguous dates and times can now
be safely represented by all dateutil time zones.
* Added new methods for working with ambiguous and imaginary dates to the tz
module. datetime_ambiguous() determines if a datetime is ambiguous for a given
zone and datetime_exists() determines if a datetime exists in a given zone.
This works for all fold-aware datetimes, not just those provided by dateutil.
* Fixed an issue where dst() in Portugal in 1996 was returning the wrong value
in tz.tzfile objects
* Fixed an issue where zoneinfo.ZoneInfoFile errors were not being properly
deep-copied.
* Refactored tzwin and tzrange as a subclass of a common class, tzrangebase, as
there was substantial overlapping functionality. As part of this change,
tzrange and tzstr now expose a transitions() function, which returns the
DST on and off transitions for a given year.
* Deprecated zoneinfo.gettz() due to confusion with tz.gettz(), in favor of
get() method of zoneinfo.ZoneInfoFile objects.
* For non-character, non-stream arguments, parser.parse now raises TypeError
instead of AttributeError.
* Fixed an issue where tzfile objects were not properly handling dst() and
tzname() when attached to datetime.time objects.
* /usr/share/lib/zoneinfo was added to TZPATHS for compatibility with Solaris
systems.
* tzoffset and tzrange objects now accept either a number of seconds or a
datetime.timedelta() object wherever previously only a number of seconds was
allowed.
* datetime.timedelta objects can now be added to relativedelta objects.
* Refactored relativedelta.weekday and rrule.weekday into a common base class
to reduce code duplication.
Upstream changes:
1.05 2017-04-23 <schubiger@cpan.org>
- Merged development version to stable.
1.04_01 2017-03-03 <schubiger@cpan.org>
- New supported format: beginning/end of last month.
[rt #120436 - Shawn M. Moore]
Upstream changes:
0.19 2017-03-07
- Documentation:
-- "week_start_day" parameter no longer marked "for internal use".
-- Fix "week day" examples. Pointed out by Eric Jensen and Zefram
in a thread started by Andrew Martin in datetime@perl.org
-- Clarify that week_start_day defaults to "1mo", except for
yearly recurrences that default to "mo". Patches by David Steinbrunner.
-- Updated contact email.
v1.2.3 2017/3/25
* Reduce the number of String objects allocated when loading zoneinfo
files. #54.
* Make Timezone#friendly_identifier compatible with frozen string literals.
* Improve the algorithm for deriving the utc_offset from zoneinfo files. This
now correctly handles Pacific/Apia switching from one side of the
International Date Line to the other whilst observing daylight savings
time. #66.
* Fix an UnknownTimezone exception when calling transitions_up_to or
offsets_up_to on a TimezoneProxy instance obtained from Timezone.get_proxy.
* Allow the Factory zone to be obtained from the Zoneinfo data source.
* Ignore the /usr/share/zoneinfo/timeconfig symlink included in Slackware
distributions. #64.
* Fix Timezone#strftime handling of %Z expansion when %Z is prefixed with more
than one percent. #31.
* Support expansion of %z, %:z, %::z and %:::z to the UTC offset of the time
zone in Timezone#strftime. #31 and #67.
-----------------------------------
(Changes to 3.2.9 is unknown)
Changes from 3.2.6 to 3.2.8
Protected delta.strftime() against segfaults on Windows, which
only allows day values <= 31 and segfaults for higher
values. Thanks to Frank Boje for reporting this problem.
Update DEPENDS
Upstream changes:
1.73 2017-01-31
- The format_datetime now checks that the object it is given isa DateTime
object. Implemented by Mohammad S Anwar. GitHub #17.
1.72 2017-01-24
- Require DateTime::Locale 1.05. This fixes some test failures seen on CPAN
Testers. Also require DateTime::TimeZone 2.09 because you should really
update this on a regular basis.
- Require Specio 0.33 to fix other test failures seen on CPAN (I hope).
1.71 2017-01-24
- By default, the word boundary checks added in 1.69 are now off. You can
enable them by passing "strict => 1" to the constructor. This was reported
as an issue by Toby Corkindale as GitHub #15.
- Switched from Params::Validate to Params::ValidationCompiler.
Upstream changes:
0.28 Thu Mar 23 2016
- fix tests under perl 5.25.10+ with -Ddefault_inc_excludes_dot
- thanks Kent Fredric rt #120698
0.27 Mon Mar 06 2017
- support a single lang as a string instead of requiring an arrayref (DWIM)
- example: lang => 'en'
- add support for:
- "next (weekday)" eg: next sunday
- "last (weekday)" eg: last sunday
- "next (month)" eg: next january
- "last (month)" eg: last january
- "(x unit) from now" eg: 3 years from now
- "(-x unit)" eg: -3 months
- "(+x unit)" eg: +3 months
- "YYMMDD HH:MM:SS" eg: 950404 00:22:12
- "YYMMDD HH:MM:SS.NS" eg: 950404 00:22:12.500
- "Mon D HH:MM:SS.NS TZ YYYY" eg: Fri Dec 2 22:56:03.500 GMT+0 1994
- thanks David White rt #105178, tests from Time::ParseDate
- when we have a leading month that is 0 (zero) and we have a year, assume it is supposed to be october (10)
- thanks Dave Musakhanyan
0.9.4
=====
released 2017-03-30
* FIX ikhal's event editor now warns before allowing to edit recurrence rules it
doesn't understand
* CHANGE improved the initial configuration wizard
* CHANGE improved ikhal's `light` color scheme
* NEW ikhal's event editor now allows better editing of recurrence rules,
including INTERVALs, end dates, and more
* NEW ikhal will now check if any configured vdir has been updated, and, if
applicable, refresh its UI to reflect the latest changes
1.16 2017-03-22
- Rebuilt all locale data with CLDR 31, released on 2017-03-20.
1.15 2017-03-15 (TRIAL RELEASE)
- Most data is now stored in a share dir and only loaded as needed. This
should reduce the memory usage from just loading DateTime::Locale by about
4mb. Based on a PR by sergey. GH #14.
1.14 2017-03-05
- Codes with just a language and script code were not parsed correctly,
leading to bugs in their data, so that they did not report a script_code,
nor did their name reflect the script. So for example "bs-Latn" was just
"Bosnian" instead of "Bosnian Latin".
1.13 2017-03-05
- Fixed a regression bug where providing a locale's English name or native
name to DateTime::Locale->load no longer worked. Fixed by Sergey. GH #13.
0.9.3
=====
released 2017-03-06
* FIX `list` (and commands based on it like `calendar`, `at`, and `search`)
crashed if `--notstarted` was given and allday events were found (introduced
in 0.9.2)
* FIX `list --notstarted` (and commands based on it) would show events only on
the first day of their occurrence and not on all further days
* FIX `configure` would crash if neither "import config from vdirsyncer" nor
"create locale vdir" was selected
* FIX `at` will now show an error message if a date instead of a datetime is
given
* FIX `at`'s default header will now show the datetime queried for (instead of
just the date)
* FIX validate vdir metadata in color files
* FIX show the actually configured keybindings in ikhal
* NEW khal will now show cancelled events with a big CANCELLED in front (can be
configured via event formatting)
* NEW ikhal supports editing an event's raw icalendar content in an external
editor ($EDITOR), default keybinding is `alt + shift + e`. Only use this, if
you know what you are doing, the icalendar library we use doesn't do a lot of
validation, it silently disregards most invalid data.
Version 0.15.0
==============
*released on 28 February 2017*
- Deprecated syntax for configuration values is now completely rejected. All
values now have to be valid JSON.
- A few UX improvements for Google storages, see :gh:`549` and :gh:`552`.
- Fix collection discovery for :storage:`google_contacts`, see :gh:`564`.
- iCloud is now tested on Travis, see :gh:`567`.
Objects and routines pertaining to date and time (tempora).
Modules include:
- tempora (top level package module) contains miscellaneous
utilities and constants.
- timing contains routines for measuring and profiling.
- schedule contains an event scheduler.
0.9.2
=====
released 2017-02-13
* FIX if weekstart != 0 ikhal would show wrong weekday names
* FIX allday events added with `khal new DATE TIMEDELTA` (e.g., 2017-01-18 3d)
were lasting one day too long
* FIX no more crashes when using timezones that have a constant UTC offset (like
UTC itself)
* FIX updated outdated zsh completion file
* FIX display search results for events with neither DTEND nor DURATION
* FIX display search results that are all-day events
* in ikhal, update the date-titles on date change
* FIX printing a new event's path if [default] print_new = path
* FIX width of calendar in `khal calendar` was off by two if locale.weeknumbers
was set to "right"
* CHANGED default `agenda_day_format` to include the actual date of the day
* NEW configuration option: [view]dynamic_days = True, if set to False, ikhal's
right column behaves similar as it did in 0.8.x
0.9.1
=====
released 2017-01-25
* FIX detecting not understood timezone information failed on python 3.6, this may lead to
erroneous offsets in start and end times for those events, as those datetimes
were treated as if they were in the system's local time, not as if they are in
the (possibly) configured default_timezone.
* python 3.6 is now officially supported
0.9.0
=====
released 2017-01-24
Dependency Changes
------------------
* vdirsyncer isn't a hard dependency any more
Bug Fixes
---------
* fixed various bugs in `configure`
* fix bug in `new` that surfaces when date(time)format does contain a year
* fix bug in `import` that allows importing into read-only and/or non-default calendar
* fix how color discovered in calendars
Backwards Incompatibilities
---------------------------
* calendar path is now a glob without recursion for discover, if your calendars
are no longer found, please consult the documentation (Taylor Money)
* `at` command now works like `list` with a timedelta of `0m`, this means that
`at` will no longer print events that end at exactly the time asked for
(Taylor Money)
* renamed `agenda` to `list` (Taylor Money)
* removed `days` configuration option in favor of `timedelta`, see
documentation for details (Taylor Money)
* configuration file path $XDG_CONFIG_HOME/khal/config is now supported and
$XDG_CONFIG_HOME/khal/khal.conf deprecated
* ikhal: introduction of three different new frame styles, new allowed values for
`[view] frame` are `False`, `width`, `color`, `top` (with default `False`),
`True` isn't allowed any more, please provide feedback over the usual channels
if and which of those you consider useful as some of those might be removed in
future releases (Christian Geier)
* removed configuration variable `encoding` (in section [locale]), the correct
locale should now be figured out automatically (Markus Unterwaditzer)
* events that start and end at the same time are now displayed as if their
duration was one hour instead of one day (Guilhem Saurel)
Enhancements
------------
* (nearly) all commands allow formatting of how events are printed with
`--format`, also see the new configuration options `event_format`,
`agenda_event_format`, `agenda_day_format` (Taylor Money)
* support for categories (and add `-g` flag for `khal new`) (Pierre David)
* search results are now sorted by start date (Taylor Money)
* added command `edit`, which also allows deletion of events (Taylor Money)
* `new` has interactive option (Taylor Money)
* `import` can now import multiple files at once (Christian Geier)
ikhal
-----
* BUGFIX no more crashing if invalid date is entered and mini-calendar displayed
* make keybinding for quitting configurable, defaults to *q* and *Q*, escape
only backtracks to last pane but doesn't exit khal anymore (Christian Geier)
* default keybinding changed: `tab` no longer shows details of focused events
and does not open the event editor either (Christian Geier)
* right column changed, it will now show as many days/events as fit, if users move
to another date (while the event column is in focus), that date should be
highlighted in the calendar (Christian Geier)
* cursor indicates which element is selected
Upstream changes:
1.25 2016-11-17
- Reduce memory usage by only loading Config if needed and not importing from
Carp. Based on PR #2 from J. Nick Coston.
MASTER_SITES= site1 \
site2
style continuation lines to be simple repeated
MASTER_SITES+= site1
MASTER_SITES+= site2
lines. As previewed on tech-pkg. With thanks to rillig for fixing pkglint
accordingly.
Version 0.14.1
==============
*released on 05 January 2017*
- ``vdirsyncer repair`` no longer changes "unsafe" UIDs by default, an extra
option has to be specified. See :gh:`527`.
- A lot of important documentation updates.
Upstream changes:
1.70 2016-12-10
- Altered the conversion specifier %z to accept 簣HH, 簣HHMM, 簣HH:MM and Z.
Previously only 簣HHMM where accepted. PR from Christian Hansen, GitHub #13.
1.69 2016-12-04 (TRIAL RELEASE)
- The word boundary check supposedly added in 1.67 didn't really work
properly, and still matched too much. For example, the pattern "%d-%m-%y"
would match "2016-11-30" and turn it into November 16, 2030. This also had
problems at the end of strings, so that the same pattern would improperly
match "30-11-2016" as November 30, 2020. Reported by Erik Huelsmann. GitHub
#11.
- Added docs for several formats which had long been supported but not
documented. These are %P, %c, %x, and %X. Reported by Alexander
Hartmaier. GH #10.
1.42 2016-12-25
- The DateTime::Duration->add and ->subtract methods now accept
DateTime::Duration objects. This used to work by accident, but this is now
done intentionally (with docs and tests). Reported by Petr Pisar. GitHub
#50.
new packages. Most of which are the remaining modules of the Tryton
platform which weren't packaged. The others are dependencies of the new
modules. This was tested on FreeBSD and is based in large part on Richard
Palo's (richard@) work. This is the most recent release of the Tryton
platform, version 4.2. There's a very large list of changes from the 3.8
series we have in pkgsrc. If you're interested, those functional changes
can be found here:
http://www.tryton.org/posts/new-tryton-release-42.htmlhttp://www.tryton.org/posts/new-tryton-release-40.html
2.09 2016-11-24
- This release is based on version 2016j of the Olson database. This release
includes contemporary changes for Russia (Europe/Saratov).
Upstream changes:
1.41 2016-11-16
- The DateTime->add and ->subtract methods now accept DateTime::Duration
objects. This used to work by accident, but this is now done intentionally
(with docs and tests). Based on PR #45 from Sam Kington.
-----------------------
Update 2005-10-10 | 10 October 2005 | JD 2453654.355984
Version 2.4 release.
Days between date calculator included: dbd
Example source for JAVA, PERL, AWK, PHP
(pkgsrc changes)
- Set LICENSE= 2-clause-bsd
- Silence pkglint warning. (removing two '@' at do-test,
no major change on output lines at make test).
----------------------------------------
2.07 2016-11-02
- This release is based on version 2016i of the Olson database. This release
includes contemporary changes for Tonga and Antarctica/Casey. There is also
a new zone for Northern Cyprus, Asia/Famagusta, which differs from other
parts of Cyprus.
Upstream changes:
2.06 2016-10-20
- This release is based on version 2016h of the Olson database. This release
includes contemporary changes for Palestine.
Version 0.14.0
==============
*released on 26 October 2016*
- ``vdirsyncer sync`` now continues other uploads if one upload failed. The
exit code in such situations is still non-zero.
- Add ``partial_sync`` option to pair section. See :ref:`the config docs
<partial_sync_def>`.
- Vdirsyner will now warn if there's a string without quotes in your config.
Please file issues if you find documentation that uses unquoted strings.
- Fix an issue that would break khal's config setup wizard.
0.8.4
=====
released 2016-10-06
* **IMPORTANT BUGFIX** fixed a bug that lead to imported events being
erroneously shifted if they had a timezone identifier that wasn't an Olson
database identifier. All users are advised to upgrade as soon as possible. To
see if you are affected by this and how to resolve any issues, please see the
release announcement (khal/doc/source/news/khal084.rst or
http://lostpackets.de/khal/news/khal084.html). Thanks to Wayne Werner for
finding and reporting this bug.
Version 0.13.1
==============
*released on 30 September 2016*
- Fix a bug that would completely break collection discovery.
Version 0.13.0
==============
*released on 29 September 2016*
- Python 2 is no longer supported at all. See :gh:`219`.
- Config sections are now checked for duplicate names. This also means that you
cannot have a storage section ``[storage foo]`` and a pair ``[pair foo]`` in
your config, they have to have different names. This is done such that
console output is always unambigous. See :gh:`459`.
- Custom commands can now be used for conflict resolution during sync. See
:gh:`127`.
- :storage:`http` now completely ignores UIDs. This avoids a lot of unnecessary
down- and uploads.
2.04 2016-09-26
- Automatically add the latest version of DateTime::Time::Local::Win32 as a
prereqs on Windows system automatically when building the release.
--------------------------
0.8.3
=====
released 2016-08-28
* fixed some bugs in the test suite on different operating systems
* fixed a check for icalendar files containing RDATEs
(pkgsrc-note)
- 'make print-PLIST' does not seem to generate alphabetically sorted list, why ?
-------------------------------
v0.4.0
Summary: v0.4.0 of dateutils
This is a bugfix release.
Bugfixes:
- document %g/%G format specifiers
- bug/42, accept NUL characters in input
- bug/45, correctly display Gregorian and ISO week dates in one line
- bug/46, adhere to ISO group's official formatting of week dates
- bug/47, allow rounding of Epoch based timestamps
- bug/48, avoid crash for void input to strptime(3)
Features:
- datetest supports --isvalid to conditionalise on date/time parsing
- all tools support --from-locale to parse localised input
- tools with output formatting support --locale to format output according to
locale
v0.3.5
Summary: v0.3.5 of dateutils
This is a bugfix release.
Bugfixes:
- bug/40, distinguish between numerals-only dates and durations
- tests will succeed independent of current date
See info page examples and/or README.
v0.3.4
Summary: v0.3.4 of dateutils
This is a bugfix release.
Bugfixes:
- bug/39, MacOSX endianness detection
- bug/38, ddiff day-only durations on date/times
- dadd +2m bug is fixed, regression dtadd.049.clit/dtadd.050.clit
v0.3.3
Summary: v0.3.3 of dateutils
This is a feature release.
Features:
- to clarify purpose and avoid name clashes prefix binaries with date- This
results in: dateadd dateconv datediff dategrep dateround dateseq datesort
datetest and datezone
- provide compatibilty through configure switch -with-old-names
- provide single digit years through %_y
- allow rounding of ISO-week dates (ywd) to week numbers
Bugfixes:
- dashes behind a date do not count as tz indicator
- UTC/TAI/GPS special coordinated zones work on systems without leap second
support
v0.3.2
Summary: v0.3.2 of dateutils
This is a bugfix release.
Bugfixes:
- out of range minutes will be discarded
- bug 30 (malicious input crashes dconv) has been fixed
Features:
- military midnight stamps are supported (T24:00:00)
- 8601 ordinal dates (year + doy) are recognised directly (-f yd)
- strptime(1) can behave in a locale-dependent way
-------------------------------------------------------------------------
(pkgsrc-changes)
- recover the two patches for 0.3.1
---------------------------------
## Version 1.2.4 2016-05-01
* Fix finding the extension on ruby 2.1.10 (thanks @wpiekutowski)
* Add more readable load error (thanks @mbautin)
* Update README with what versions of ruby are supported.
----------------------------------
1.39 2016-09-17
- Bump minimum required Perl to 5.8.4 from 5.8.1. Looking at CPAN Testers,
this distro hasn't actually passed with earlier Perl versions since
1.35. I'm not explicitly testing with anything earlier than 5.8.8
1.38 2016-09-16
- This release includes changes from past trial releases to switch from
Params::Validate and Params::ValidationCompiler. Relevant release notes from
those trial releases are repeated here for clarity.
- Replaced Params::Validate with Params::ValidationCompiler and Specio. In my
benchmarks this makes constructing a new DateTime object about 14%
faster. However, it slows down module load time by about 100 milliseconds
(1/10 of a second) on my desktop system with a primed cache (so really
measuring compile time, not disk load time).
- When you pass a locale to $dt->set you will now get a warning suggesting you
should use $dt->set_locale instead. The previous trial releases didn't allow
locale to be passed at all, which broke a lot of modules. I've sent PRs, but
for now the parameter should be allowed (but discouraged). Reported by
Slaven Rezić. RT #115420.
1.37 2016-08-14 (TRIAL RELEASE)
- Require the latest Params::ValidationCompiler (0.11).
libpopt which builds tz_convert. Also add some TLC for solaris specific
zoneinfo location and table names.
bump PKGREVISION to pick up dependency change on libical
This module provides a parser (and also a formater) for datetime strings
using patterns as defined by the Unicode CLDR Project (Common Locale Data
Repository). http://unicode.org/cldr/.
CLDR format is supported by DateTime and DateTime::Locale starting with
version 0.40.
DateTime::Incomplete is a class for representing partial dates and times.
These are actually encountered relatively frequently. For example, a
birthday is commonly given as a month and day, without a year.
Version 0.12.1
==============
*released on 20 August 2016*
- Fix a crash for Google and DAV storages. See :ghpr:`492`.
- Fix an URL-encoding problem with DavMail. See :gh:`491`.
Version 0.12
============
*released on 19 August 2016*
- :storage:`singlefile` now supports collections. See :ghpr:`488`.
NEWS:
Version 2.5.3
-------------
- Updated zoneinfo to 2016d
- Fixed parser bug where unambiguous datetimes fail to parse when dayfirst is
set to true. (gh issue #233, pr #234)
- Bug in zoneinfo file on platforms such as Google App Engine which do not
do not allow importing of subprocess.check_call was reported and fixed by
@savraj (gh issue #239, gh pr #240)
- Fixed incorrect version in documentation (gh issue #235, pr #243)
Version 2.5.2
-------------
- Updated zoneinfo to 2016c
- Fixed parser bug where yearfirst and dayfirst parameters were not being
respected when no separator was present. (gh issue #81 and #217, pr #229)
Version 2.5.1
-------------
- Updated zoneinfo to 2016b
- Changed MANIFEST.in to explicitly include test suite in source distributions,
with help from @koobs (gh issue #193, pr #194, #201, #221)
- Explicitly set all line-endings to LF, except for the NEWS file, on a
per-repository basis (gh pr #218)
- Fixed an issue with improper caching behavior in rruleset objects (gh issue
#104, pr #207)
- Changed to an explicit error when rrulestr strings contain a missing BYDAY
(gh issue #162, pr #211)
- tzfile now correctly handles files containing leapcnt (although the leapcnt
information is not actually used). Contributed by @hjoukl (gh issue #146, pr
#147)
- Fixed recursive import issue with tz module (gh pr #204)
- Added compatibility between tzwin objects and datetime.time objects (gh issue
#216, gh pr #219)
- Refactored monolithic test suite by module (gh issue #61, pr #200 and #206)
- Improved test coverage in the relativedelta module (gh pr #215)
- Adjusted documentation to reflect possibly counter-intuitive properties of
RFC-5545-compliant rrules, and other documentation improvements in the rrule
module (gh issue #105, gh issue #149 - pointer to the solution by @phep,
pr #213).
Version 2.5.0
-------------
- Updated zoneinfo to 2016a
- zoneinfo_metadata file version increased to 2.0 - the updated updatezinfo.py
script will work with older zoneinfo_metadata.json files, but new metadata
files will not work with older updatezinfo.py versions. Additionally, we have
started hosting our own mirror of the Olson databases on a github pages
site (https://dateutil.github.io/tzdata/) (gh pr #183)
- dateutil zoneinfo tarballs now contain the full zoneinfo_metadata file used
to generate them. (gh issue #27, gh pr #85)
- relativedelta can now be safely subclassed without derived objects reverting
to base relativedelta objects as a result of arithmetic operations.
(lp:1010199, gh issue #44, pr #49)
- relativedelta 'weeks' parameter can now be set and retrieved as a property of
relativedelta instances. (lp: 727525, gh issue #45, pr #49)
- relativedelta now explicitly supports fractional relative weeks, days, hours,
minutes and seconds. Fractional values in absolute parameters (year, day, etc)
are now deprecated. (gh issue #40, pr #190)
- relativedelta objects previously did not use microseconds to determine of two
relativedelta objects were equal. This oversight has been corrected.
Contributed by @elprans (gh pr #113)
- rrule now has an xafter() method for retrieving multiple recurrences after a
specified date. (gh pr #38)
- str(rrule) now returns an RFC2445-compliant rrule string, contributed by
@schinckel and @armicron (lp:1406305, gh issue #47, prs #50, #62 and #160)
- rrule performance under certain conditions has been significantly improved
thanks to a patch contributed by @dekoza, based on an article by Brian Beck
(@exogen) (gh pr #136)
- The use of both the 'until' and 'count' parameters is now deprecated as
inconsistent with RFC2445 (gh pr #62, #185)
- Parsing an empty string will now raise a ValueError, rather than returning the
datetime passed to the 'default' parameter. (gh issue #78, pr #187)
- tzwinlocal objects now have a meaningful repr() and str() implementation
(gh issue #148, prs #184 and #186)
- Added equality logic for tzwin and tzwinlocal objects. (gh issue #151,
pr #180, #184)
- Added some flexibility in subclassing timelex, and switched the default
behavior over to using string methods rather than comparing against a fixed
list. (gh pr #122, #139)
- An issue causing tzstr() to crash on Python 2.x was fixed. (lp: 1331576,
gh issue #51, pr #55)
- An issue with string encoding causing exceptions under certain circumstances
when tzname() is called was fixed. (gh issue #60, #74, pr #75)
- Parser issue where calling parse() on dates with no day specified when the
day of the month in the default datetime (which is "today" if unspecified) is
greater than the number of days in the parsed month was fixed (this issue
tended to crop up between the 29th and 31st of the month, for obvious reasons)
(canonical gh issue #25, pr #30, #191)
- Fixed parser issue causing fuzzy_with_tokens to raise an unexpected exception
in certain circumstances. Contributed by @MichaelAquilina (gh pr #91)
- Fixed parser issue where years > 100 AD were incorrectly parsed. Contributed
by @Bachmann1234 (gh pr #130)
- Fixed parser issue where commas were not a valid separator between seconds
and microseconds, preventing parsing of ISO 8601 dates. Contributed by
@ryanss (gh issue #28, pr #106)
- Fixed issue with tzwin encoding in locales with non-Latin alphabets
(gh issue #92, pr #98)
- Fixed an issue where tzwin was not being properly imported on Windows.
Contributed by @labrys. (gh pr #134)
- Fixed a problem causing issues importing zoneinfo in certain circumstances.
Issue and solution contributed by @alexxv (gh issue #97, pr #99)
- Fixed an issue where dateutil timezones were not compatible with basic time
objects. One of many, many timezone related issues contributed and tested by
@labrys. (gh issue #132, pr #181)
- Fixed issue where tzwinlocal had an invalid utcoffset. (gh issue #135,
pr #141, #142)
- Fixed issue with tzwin and tzwinlocal where DST transitions were incorrectly
parsed from the registry. (gh issue #143, pr #178)
- updatezinfo.py no longer suppresses certain OSErrors. Contributed by @bjamesv
(gh pr #164)
- An issue that arose when timezone locale changes during runtime has been
fixed by @carlosxl and @mjschultz (gh issue #100, prs #107, #109)
- Python 3.5 was added to the supported platforms in the metadata (@tacaswell
gh pr #159) and the test suites (@moreati gh pr #117).
- An issue with tox failing without unittest2 installed in Python 2.6 was fixed
by @moreati (gh pr #115)
- Several deprecated functions were replaced in the tests by @moreati
(gh pr #116)
- Improved the logic in Travis and Appveyor to alleviate issues where builds
were failing due to connection issues when downloading the IANA timezone
files. In addition to adding our own mirror for the files (gh pr #183), the
download is now retried a number of times (with a delay) (gh pr #177)
- Many failing doctests were fixed by @moreati. (gh pr #120)
- Many fixes to the documentation (gh pr #103, gh pr #87 from @radarhere,
gh pr #154 from @gpoesia, gh pr #156 from @awsum, gh pr #168 from @ja8zyjits)
- Added a code coverage tool to the CI to help improve the library. (gh pr #182)
- We now have a mailing list - dateutil@python.org, graciously hosted by
Python.org.
Version 2.4.2
-------------
- Updated zoneinfo to 2015b.
- Fixed issue with parsing of tzstr on Python 2.7.x; tzstr will now be decoded
if not a unicode type. gh #51 (lp:1331576), gh pr #55.
- Fix a parser issue where AM and PM tokens were showing up in fuzzy date
stamps, triggering inappropriate errors. gh #56 (lp: 1428895), gh pr #63.
- Missing function "setcachesize" removed from zoneinfo __all__ list by @ryanss,
fixing an issue with wildcard imports of dateutil.zoneinfo. (gh pr #66).
- (PyPi only) Fix an issue with source distributions not including the test
suite.
Version 2.4.1
-------------
- Added explicit check for valid hours if AM/PM is specified in parser.
(gh pr #22, issue #21)
- Fix bug in rrule introduced in 2.4.0 where byweekday parameter was not
handled properly. (gh pr #35, issue #34)
- Fix error where parser allowed some invalid dates, overwriting existing hours
with the last 2-digit number in the string. (gh pr #32, issue #31)
- Fix and add test for Python 2.x compatibility with boolean checking of
relativedelta objects. Implemented by @nimasmi (gh pr #43) and Cédric Krier
(lp: 1035038)
- Replaced parse() calls with explicit datetime objects in unit tests unrelated
to parser. (gh pr #36)
- Changed private _byxxx from sets to sorted tuples and fixed one currently
unreachable bug in _construct_byset. (gh pr #54)
- Additional documentation for parser (gh pr #29, #33, #41) and rrule.
- Formatting fixes to documentation of rrule and README.rst.
- Updated zoneinfo to 2015a.