Markus Unterwaditzer
b0c498f70a
Don't require current-user-principal
...
See #498
2016-09-12 18:58:02 +02:00
Markus Unterwaditzer
1846b392fa
Fix encoding bug with http data
2016-09-08 14:09:56 +02:00
Markus Unterwaditzer
b20fc996a2
Refactor config parsing
...
Fix #459
2016-09-08 13:34:34 +02:00
Markus Unterwaditzer
18d8bb9fc2
Remove Python 2 support ( #499 )
...
* Discontinue Python 2.
See #219
* Remove Python 2 config option
* Remove coerce_native
* Remove PY2 variable
* s/text_type/str/g
* Flake8 fixes
* Remove str = str
* s/to_native/to_unicode/g
* Remove to_unicode = to_unicode
* Remove iteritems
* Remove itervalues
* Remove str import, flake8 fixes
* Remove urlparse compat code
* Remove with_metaclass
* Remove unused PY2 variable
* Remove getargspec_ish
* Remove to_bytes
* Remove compat module
* Remove Python 2 from Travis
* fixup! Remove urlparse compat code
* fixup! Remove urlparse compat code
* fixup! Remove compat module
2016-09-08 12:18:36 +02:00
Markus Unterwaditzer
696e53dc1f
Fix up http storage example
...
Fix #497
2016-09-06 11:32:13 +02:00
Markus Unterwaditzer
b6f009e79e
Fix identconflict handling
...
See #495
2016-09-02 18:23:42 +02:00
Markus Unterwaditzer
540713f006
Replace with slightly less clever code
2016-08-26 16:58:06 +02:00
Markus Unterwaditzer
d89ec31168
Fix bug in Component.__del__
2016-08-26 10:36:42 +02:00
Markus Unterwaditzer
5ae2d27b66
Refactor IGNORE_PROPS
2016-08-26 00:46:53 +02:00
Markus Unterwaditzer
902d914db6
Remove = from reserved chars
...
See #491
2016-08-19 20:05:14 +02:00
Markus Unterwaditzer
e1c2e1b5d8
Fix bug in URL normalization
2016-08-19 20:05:14 +02:00
Markus Unterwaditzer
f238a58c85
DAV: Don't violate Storage API ( #492 )
...
The implementation of #476 is problematic as it returns None.
`vdirsyncer.sync` has internal assertions that this is a string, which
is why we get a crash like this:
error: Unknown error occured for cal/markus@unterwaditzer.net:
error: Use `-vdebug` to see the full traceback.
debug: File "/home/untitaker/projects/vdirsyncer/vdirsyncer/cli/tasks.py", line 66, in sync_collection
debug: force_delete=force_delete
debug: File "/home/untitaker/projects/vdirsyncer/vdirsyncer/sync.py", line 228, in sync
debug: action(a_info, b_info, conflict_resolution)
debug: File "/home/untitaker/projects/vdirsyncer/vdirsyncer/sync.py", line 276, in inner
debug: assert isinstance(dest_etag, (bytes, text_type))
Discovered in #467
2016-08-19 19:58:38 +02:00
Markus Unterwaditzer
214ec10826
Add CREATED to ignored properties
2016-08-19 17:36:17 +02:00
Markus Unterwaditzer
a54999ff17
Introduce collections for singlefile storage ( #488 )
...
Fix #485
2016-08-17 17:41:40 +02:00
Markus Unterwaditzer
e9185324ae
Fix up links for new docs URL
2016-08-15 20:44:45 +02:00
Martin Zimmermann
48d72aa7a1
fully resolve well-known URI ( #481 )
...
Currently, `find_dav` only resolves a single redirect. When using
Baïkal behind a proxy with HTTPS, this becomes an issue:
1. dav.example.com/.well-known/caldav (Apache rewrite to http)
2. dav.example.com/dav.php (http)
3. dav.example.com/dav.php (https)
The Apache configuration is provided by Baïkal, hence it is also
possible to fix it server-side:
-RewriteRule /.well-known/carddav /dav.php [R,L]
+RewriteRule /.well-known/carddav https://dav.example.com/dav.php [R,L]
-RewriteRule /.well-known/caldav /dav.php [R,L]
+RewriteRule /.well-known/caldav https://dav.example.com/dav.php [R,L]
2016-07-26 21:49:17 +02:00
Markus Unterwaditzer
d8a1fb4a62
Always use string header values
...
Preparing for https://github.com/kennethreitz/requests/issues/3386
2016-07-25 04:58:10 +02:00
Markus Unterwaditzer
140af81ead
Fix XML querying bug
...
Fix #480
2016-07-25 04:58:10 +02:00
Markus Unterwaditzer
e4a0afcf00
Make auth = basic the default again ( #477 )
...
Fix #461
Fix #457
2016-06-17 14:35:06 +02:00
Markus Unterwaditzer
3228e22621
DAV: Fix behavior when PUT doesn't return ETag ( #476 )
...
Thanks to @evert for pointing this out in the #sabredav IRC channel.
2016-06-16 21:40:18 +02:00
Markus Unterwaditzer
403a683e70
Cosmetic improvements
2016-06-16 15:10:03 +02:00
Markus Unterwaditzer
8c1ae4f099
Kill special codepath for null-collection
2016-06-16 15:10:03 +02:00
Markus Unterwaditzer
f289437e46
Fix validation bugs for collections parameter
2016-06-15 17:17:07 +02:00
Markus Unterwaditzer
a8c79ed1fc
Merge pull request #466 from pimutils/collections-null-google
...
Improve error for unsupported collections = null
2016-06-10 10:38:10 +02:00
Evgeni Golov
eb2c25ee76
it has to be note:: otherweise sphinx won't render the paragraph at all ( #465 )
2016-06-10 00:20:24 +02:00
Markus Unterwaditzer
f892389806
Fix traceback output
2016-06-10 00:17:21 +02:00
Markus Unterwaditzer
0fb27cc391
Improve error for unsupported collections = null
2016-06-10 00:15:37 +02:00
Markus Unterwaditzer
3cb03a55e4
Fix race conditions in Google storage ( #460 )
...
Fix #456
Fix #404
2016-06-09 23:57:27 +02:00
Markus Unterwaditzer
1b31f1449e
Slightly improved error messages
2016-05-30 23:38:43 +02:00
Markus Unterwaditzer
252f634c81
Hide tracebacks from default output
2016-05-30 23:28:10 +02:00
Markus Unterwaditzer
b3d70a7a93
Use os.fstat wherever possible
2016-05-26 20:03:01 +02:00
Markus Unterwaditzer
d24f3835ef
Replace text/icalendar with text/calendar
...
Fix #455
2016-05-25 19:23:25 +02:00
Markus Unterwaditzer
b806f1b827
Remove outdated comment
2016-05-19 20:43:16 +02:00
Markus Unterwaditzer
c0aee14acf
setup.py: Refer to packaging.rst
2016-05-19 18:07:29 +02:00
Markus Unterwaditzer
4742ea61bc
Nicer error message for InvalidResponse
...
See #448
2016-05-12 18:40:15 +02:00
Markus Unterwaditzer
e72dc441a5
Simplify main help text
2016-05-04 21:04:20 +02:00
Markus Unterwaditzer
a1532f36f6
Remove old code for deprecations
2016-04-29 20:33:06 +02:00
Markus Unterwaditzer
fc0eca0eb8
Another nocover branch
2016-04-29 20:27:25 +02:00
Markus Unterwaditzer
5749986b54
Don't require coverage for internal assertions
2016-04-29 20:23:02 +02:00
Markus Unterwaditzer
ea17f2ac01
Show error for Python 2 users ( #441 )
...
* Show error for Python 2 users
The error can be disabled with a config option.
See #219
2016-04-28 16:44:17 +02:00
Markus Unterwaditzer
632b884e54
New domain for readthedocs
2016-04-28 01:30:56 +02:00
Markus Unterwaditzer
41c59f4c47
Make discovery explicit ( #439 )
...
* Make discovery explicit
Fix #438
2016-04-27 02:17:16 +02:00
Markus Unterwaditzer
f1d03e6380
Refactor UX of discovery ( #437 )
...
* Refactor UX of discovery
- The new `--list` option for `vdirsyncer discover`, enabled by default,
makes vdirsyncer list all collections before saving the configuration.
It is not enabled when vdirsyncer tries to discover when invoked via
`vdirsyncer sync`. Fix #424
- There are no duplicate collections anymore. Fix #419 .
- `vdirsyncer discover` is running with one worker by default now, to
avoid broken output. See also #404 .
2016-04-27 00:35:30 +02:00
Markus Unterwaditzer
90fa9f7f5f
Fix XML creation bug
2016-04-23 14:04:46 +02:00
Markus Unterwaditzer
ec2f743ffa
Replace LXML with stdlib XML
...
Just because the XML module is already there, and suits our needs as
well. DoS concerns should be irrelevant as we trust the server to that
extent.
2016-04-22 23:08:32 +02:00
Markus Unterwaditzer
be8df955e9
Ability to sync differently named collections with each other ( #423 )
...
* Ability to sync differently named collections
* Fixes
* Fixes
* Add example
2016-04-10 12:36:51 +02:00
Markus Unterwaditzer
777eb35898
Merge pull request #412 from pimutils/remove-google-oauth-creds
...
Remove default client ID for Google
2016-04-08 00:20:44 +02:00
Markus Unterwaditzer
2386f1c1bc
Merge pull request #415 from pimutils/issue-414
...
Py2: If file doesn't exist, IOError will be raised
2016-04-08 00:20:36 +02:00
Markus Unterwaditzer
46639ff65e
Py2: If file doesn't exist, IOError will be raised
...
Fix #414
2016-04-08 00:03:03 +02:00
Markus Unterwaditzer
374a4921b7
Fix bug in storage init errorhandler
...
If there are no defaults, spec.args would be sliced like
`spec.args[1:0]` which always produces an empty slice.
2016-04-07 23:22:04 +02:00