BernieO / calcardbackup

calcardbackup: moved to https://codeberg.org/BernieO/calcardbackup
GNU Affero General Public License v3.0
69 stars 5 forks source link

old contacts can be exported but not reimported #25

Closed zanglerecke closed 4 years ago

zanglerecke commented 4 years ago

thank you for your tool... was working great....

but: as i want to export and reimport into a fresh new instance, some old contacts were exported as Version2.1, others as V3.0.... maybe 4.0 but i have not checked that.

those v2.1 vCards cannot be imported...

is it possible to add a feature to check those files before saving them? a tool to convert is e.g. https://github.com/jowave/vcard2to3

BernieO commented 4 years ago

First please notice that I am gonna archive this repository on 17th January 2020. Commenting this issue or opening new issues here on GitHub will then not be possible any more. The repo including this and all other issues is going to move to https://codeberg.org/BernieO/calcardbackup. Commenting on issues or opening new issues then needs to be done there.


Regarding your issue:

Unfortunately Nextcloud does not support importing contacts in vCard Version 2.1 anymore (I am not sure, if Nextcloud ever did) due to the javascript library Nextcloud is using (which is ical.js): But it looks, like they are working on it:

  I assume a client did sync that contact in old v2.1 format to your Nextcloud server. As far as I know, Nextcloud does not convert v2.1 contacts - they are stored as they are in the database.

calcardbackup creates a backup of what is in the database. So if there is a vCard in Version 2.1 stored in the database, calcardbackup will backup that without converting it. Since calcardbackup is meant to be a backup tool and not a converter, I don't think it makes sense to add a converting function.

is it possible to add a feature to check those files before saving them?

Yes, that should be possible. I'll add a check and print a notice, if any vCard 2.1 contacts are found in one of the next versions of calcardbackup (probably v1.1). Converting is then a different task which needs to be done from a different software (imho it would actually be easiest to import the .vcf-file to a caldav client and let the client then sync the contacts to a server).

I am a bit curious: do you have an idea where these old vCards version 2.1 come from? It is quite amazing that there are still vCard 2.1 contacts around (vCard3.0 (RFC2426) was published in September 1998!). Nextcloud supports vCard-3.0 from the very beginning (as well as ownCloud did before (at least from version 5.0 or even earlier)).

Another question: are the old contacts in v2.1 format displayed in the contacts app of Nextcloud? I did some testing and I managed to store a vCard 2.1 in the database of a testing instance - but Nextclouds' contacts-app complained about an syntax error and was not able to display the vCard 2.1 contact...

BernieO commented 4 years ago

is it possible to add a feature to check those files before saving them?

a check for vCard 2.1 is added in commit 66613c96 (only available in the new repository at codeberg.org)

Closing this here. If needed, feel free to reopen this issue at codeberg.org