Commit graph

198 commits

Author SHA1 Message Date
Markus Unterwaditzer
8f5fdfb2d4 Hash items resilient against formatting 2014-05-18 21:42:47 +02:00
Markus Unterwaditzer
a80fa62927 Remember order of items 2014-05-18 21:42:46 +02:00
Markus Unterwaditzer
7e8fa89985 First version of SingleFileStorage 2014-05-18 21:42:46 +02:00
Markus Unterwaditzer
16c1171581 Move safe_write to utils 2014-05-18 19:44:24 +02:00
Markus Unterwaditzer
29405f59ef Fix a bug where only basic auth would work 2014-05-18 19:43:09 +02:00
Markus Unterwaditzer
5fd866b41b Fix severe bug in davstorage
where (href, etag) instead of etag would be returned.

Thanks for @slavkoja for finding it.
2014-05-18 13:39:33 +02:00
Markus Unterwaditzer
bcf6c0612e Move vobject utils to own module 2014-05-16 13:51:55 +02:00
Markus Unterwaditzer
72d20e26d6 Remove unnecessary enumeration 2014-05-15 16:27:18 +02:00
Markus Unterwaditzer
d3752baf60 Don't overwrite builtin 2014-05-15 16:26:51 +02:00
Markus Unterwaditzer
46f7a0cb05 Flake8 2014-05-15 15:18:25 +02:00
Markus Unterwaditzer
61ef8b3ee3 Use icalendar for parsing 2014-05-15 15:14:06 +02:00
Markus Unterwaditzer
272a39040d Version 0.1.5
- Introduced changelogs.

  - Many bugfixes.

  - Many doc fixes.

  - vdirsyncer now doesn't necessarily need UIDs anymore for syncronization.

  - vdirsyncer now aborts if one collection got completely emptied between two
    syncronizations. See #42.
2014-05-14 16:39:33 +02:00
Markus Unterwaditzer
a33e34bc60 Flake8 2014-05-14 15:47:41 +02:00
Markus Unterwaditzer
98a9748392 Ident is now a property of Item 2014-05-14 15:40:06 +02:00
Markus Unterwaditzer
b87abfa4c0 Syncronization without UIDs! 2014-05-14 15:08:31 +02:00
Markus Unterwaditzer
cb29c2567f Allow uploading of items without UID 2014-05-14 14:48:50 +02:00
Markus Unterwaditzer
0f26517661 Don't assign empty UID 2014-05-14 14:23:20 +02:00
Markus Unterwaditzer
0f3ba10650 Remove UID checking from item 2014-05-14 14:12:59 +02:00
Markus Unterwaditzer
c89242e512 Fix VOBJECT parsing again
Apparently stuff like

    BEGIN:VEVENT
    UID
        :hahaha

is a thing.
2014-05-13 20:19:50 +02:00
Markus Unterwaditzer
b5df8a4514 Possible fix for #49
- Radicale incorrectly unquotes URLs
  - Older versions of radicale are so buggy they fail to look up items
    with url quotes in them.
  - ownCloud/SabreDAV follows the rebustness principle such that it
    takes anything, but returns properly encoded URLs.

Conclusion: Send broken, unquoted URLs, because both sides seem to be
happy with them. As wrong as it might seem, it works.
2014-05-13 19:32:59 +02:00
Markus Unterwaditzer
d3cff80beb Fix #51 2014-05-13 19:25:16 +02:00
Markus Unterwaditzer
49224c703f Small refactoring in sync 2014-05-13 18:54:16 +02:00
Markus Unterwaditzer
2656ac7a92 Small refactoring for http storage 2014-05-12 20:16:17 +02:00
Markus Unterwaditzer
f565cd43a9 Possible fix for #50 2014-05-12 20:08:38 +02:00
Markus Unterwaditzer
6bf52092a2 Style fixes 2014-05-03 22:39:51 +02:00
Markus Unterwaditzer
d781ac1101 Kill it with fire. 2014-05-03 21:52:05 +02:00
Markus Unterwaditzer
ff063d6d4c Catch all exceptions.
The idea is that a storage's __init__ may raise *anything* if the values
are incorrect. We already do very explicit checks whether the user
specified the wrong parameters, and show the exception if that's not the
case.
2014-05-03 00:18:55 +02:00
Markus Unterwaditzer
9616f0bbfe Move "obscure" exceptions into their own modules 2014-05-03 00:17:39 +02:00
Markus Unterwaditzer
233e8524ab Convert some logging calls to exception raises 2014-05-03 00:11:55 +02:00
Markus Unterwaditzer
798bcf384c Move status name generation in own func 2014-05-03 00:06:04 +02:00
Markus Unterwaditzer
0c8eba1cd3 Saner variable names 2014-05-02 23:57:39 +02:00
Markus Unterwaditzer
94eb60f352 PAIR/COLLECTION instead of PAIR_COLLECTION
...for statuses.

Also, various CLI usability improvements.
2014-05-02 23:49:29 +02:00
Markus Unterwaditzer
e8572cf858 See #47 2014-05-02 21:23:22 +02:00
Markus Unterwaditzer
a4687d371e Improve error message for config file. 2014-05-02 21:11:22 +02:00
Markus Unterwaditzer
bb579a8879 Fix some imports 2014-05-02 19:30:38 +02:00
Markus Unterwaditzer
110f5ca772 Remove unused constant 2014-05-02 19:30:38 +02:00
Markus Unterwaditzer
087312adb5 Stricter validation of items 2014-05-02 19:30:37 +02:00
Markus Unterwaditzer
d2f7d9a227 Some doc fixes for exceptions 2014-05-02 19:30:37 +02:00
Markus Unterwaditzer
0a1db301ad Add comment about multiline-strings 2014-05-02 19:30:37 +02:00
Clément Mondon
b6d3b9908b Avoid error when status_path dir doesn't exist 2014-05-02 16:33:10 +02:00
Markus Unterwaditzer
3e7bb377cc Add error message when general section is missing
Fix #43
Fix #45
2014-05-02 13:16:20 +02:00
Markus Unterwaditzer
eb386c8dac TIMEZONE issue
Some URLs such as
https://mozorg.cdn.mozilla.net/media/caldata/JapanHolidays.ics

have VTIMEZONES at the top.
2014-05-01 22:08:13 +02:00
Markus Unterwaditzer
aaf2eeb412 Remove obsolete --quiet option 2014-05-01 22:03:59 +02:00
Markus Unterwaditzer
d906aa3df6 Fix #42 2014-05-01 22:03:35 +02:00
Markus Unterwaditzer
9c45a7852a Disallow all multiline-values 2014-05-01 20:47:39 +02:00
Markus Unterwaditzer
7132ccdebb Remove useless multiline-ness 2014-05-01 20:03:13 +02:00
Markus Unterwaditzer
969ebb653d Fix bug with multiline values
The URL that showed this error up was

https://mozorg.cdn.mozilla.net/media/caldata/GermanHolidays.ics

with the following entry:

BEGIN:VEVENT
CREATED:20061023T132503Z
LAST-MODIFIED:20101214T141313Z
DTSTAMP:20101214T141313Z
UID:917544590
SUMMARY:Heilige drei Könige
STATUS:CONFIRMED
RRULE:FREQ=YEARLY;BYMONTH=1
CATEGORIES:Feiertag
DTSTART;VALUE=DATE:20060106
DTEND;VALUE=DATE:20060107
DESCRIPTION:Christlicher Feiertag. Nur in Baden-Württemberg\, Bayern und
 Sachsen-Anhalt.
X-MOZ-GENERATION:1
END:VEVENT
2014-05-01 11:25:22 +02:00
Markus Unterwaditzer
24a913988b Version 0.1.4 2014-04-30 01:19:48 +02:00
Markus Unterwaditzer
a1063b0e06 Make flake8 for Python 3 shut up 2014-04-30 01:04:08 +02:00
Markus Unterwaditzer
4c492c06f3 Flake8 2014-04-30 00:41:51 +02:00