synchrone / sandstorm-radicale

A calendars and contacts app for Sandstorm.io
https://apps.sandstorm.io/app/8kr4rvyrggvzfvc160htzdt4u5rfvjc2dgdn27n5pt66mxa40m1h
13 stars 3 forks source link

Importing contacts does not accept .vcf files #16

Closed np closed 8 years ago

np commented 8 years ago

The upload dialog mentions the iCal format. Sending a .vcf file which already works with radicale is refused. Sending a calendar file works but does nothing interesting.

synchrone commented 8 years ago

Refused with which exact message? File format being wrong or a generic error?

Also, please attach your grain debug log.

I would ask to attach the file itself, so that I could check why is it not recognized, but since it's personal info ... would you consider sharing the file with me privately, or trying to cut the file to a minimal contact set, that reproduces the issue and then anonymizing the fields?

np commented 8 years ago

The message is An error occurred, here is the stack trace:

Exception on /import [POST]
Traceback (most recent call last):
  File "/opt/app/env/lib/python3.4/site-packages/flask/app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()
  File "/opt/app/env/lib/python3.4/site-packages/flask/app.py", line 1477, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/opt/app/env/lib/python3.4/site-packages/flask/app.py", line 1381, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/opt/app/env/lib/python3.4/site-packages/flask/_compat.py", line 33, in reraise
    raise value
  File "/opt/app/env/lib/python3.4/site-packages/flask/app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()
  File "/opt/app/env/lib/python3.4/site-packages/flask/app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/opt/app/importapp/__init__.py", line 10, in post_import
    imported = handle_import(select_collection(get_path()))
  File "/opt/app/importapp/__init__.py", line 49, in handle_import
    fileContents = importFile.stream.getvalue().decode('utf-8')
AttributeError: '_io.BufferedRandom' object has no attribute 'getvalue'
np commented 8 years ago

Could it be the size of the file my contacts.vcf is 592K and I've cut it in two parts separately they get accepted but not together.

synchrone commented 8 years ago

v11 has the fix, waiting for appstore approval.

np commented 8 years ago

Thanks