Re: Importing issue within AddressManager

Patrick Cardona <[email protected]>
Newsgroups gmane.comp.lib.gnustep.general
Message-ID <49c2e2d6fb8cc148b92ca1be6f4e414d@pi400>
Hi Riccardo,

First of all, thank you for the time spent to fix these issues.

One maybe important think I noted: the French UI is not functioning like the English one.
For example, I can use the menu command "Person > Delete (#d)" in the English UI while the French command "Effacer" is grayed. I guess the French translated UI is outdated.

On 2025-10-28 12:30:52 +0100 Riccardo Mottola <[email protected]> wrote:

(...)

> 
> As written yesterday, I hope the birthday issue was fixed.

I built again the Framework and the App from the subversion revision 4072.
I tried again with the French UI and these steps:

(1) a new person created within AddressManager
(2) Then this person exported to a vcard by AddressManager itself
(3) Imported as a modified new person (alias name -bis).
(4) Then exported again.
(5) Imported again (alias name -ter)
(6) Exported again

What I noted :

Step (2) - first export
The 'bday' date format (that was shown as 'dd/mm/yyyy' as expected in the French format) in AddressManager became 'yyyy-dd-mm' in the exported vcard. See below:

BEGIN:VCARD
VERSION:2.1
X-GENERATOR:Addresses for GNUstep pre-1.0
N:Cardona;Patrick;;;
BDAY:1962-09-07
TEL;WORK;VOICE;X-GNUSTEPLABEL=WorkPhone;X-GNUSTEPID=1;1:0605040302
TEL;HOME;VOICE;X-GNUSTEPLABEL=HomePhone;X-GNUSTEPID=2;2:0203040506
ADR;HOME;X-GNUSTEPLABEL=HomeAddr;X-GNUSTEPID=1;1:BP 34;LE POLE;RUE DU POLE;POLE;Hérault;34000;FRANCE
ADR;WORK;X-GNUSTEPLABEL=WorkAddr;X-GNUSTEPID=2;2:;Rue de des Abeilles;Lycée Pasteur;Utopia;;;France
URL:https://patrick.cardona.example.fr
EMAIL;INTERNET;WORK;X-GNUSTEPLABEL=WorkEmail;X-GNUSTEPID=1;1:[email protected]
EMAIL;INTERNET;HOME;X-GNUSTEPLABEL=HomeEmail;X-GNUSTEPID=2;2:[email protected]
NOTE:Une note avec des caractères accentués.
END:VCARD

Step (3) - The modified vcard before reimport as alias BIS

N:Cardona-BIS;Patrick;;;

In AddressManager, after import, the BDAY date became:
06/09/1962
The 'home' tag became 'work' in each related case.

Step (4)
Exported as:

BEGIN:VCARD
VERSION:2.1
X-GENERATOR:Addresses for GNUstep pre-1.0
N:Cardona-BIS;Patrick;;;
BDAY:1962-06-09
TEL;WORK;VOICE;X-GNUSTEPLABEL=WorkPhone;X-GNUSTEPID=1;1:0605040302
TEL;WORK;VOICE;X-GNUSTEPLABEL=WorkPhone;X-GNUSTEPID=2;2:0203040506
ADR;WORK;X-GNUSTEPLABEL=WorkAddr;X-GNUSTEPID=1;1:BP 34;LE POLE;RUE DU POLE;POLE;Hérault;34000;FRANCE
ADR;WORK;X-GNUSTEPLABEL=WorkAddr;X-GNUSTEPID=2;2:;Rue de des Abeilles;Lycée Pasteur;Utopia;;;France
URL:https://patrick.cardona.example.fr
EMAIL;INTERNET;WORK;X-GNUSTEPLABEL=WorkEmail;X-GNUSTEPID=1;1:[email protected]
EMAIL;INTERNET;WORK;X-GNUSTEPLABEL=WorkEmail;X-GNUSTEPID=2;2:[email protected]
NOTE:Une note avec des caractères accentués.
END:VCARD

Step (5) - Name alias is TER

Vcard before import:
BEGIN:VCARD
VERSION:2.1
X-GENERATOR:Addresses for GNUstep pre-1.0
N:Cardona-TER;Patrick;;;
BDAY:1962-06-09
TEL;WORK;VOICE;X-GNUSTEPLABEL=WorkPhone;X-GNUSTEPID=1;1:0605040302
TEL;WORK;VOICE;X-GNUSTEPLABEL=WorkPhone;X-GNUSTEPID=2;2:0203040506
ADR;WORK;X-GNUSTEPLABEL=WorkAddr;X-GNUSTEPID=1;1:BP 34;LE POLE;RUE DU POLE;POLE;Hérault;34000;FRANCE
ADR;WORK;X-GNUSTEPLABEL=WorkAddr;X-GNUSTEPID=2;2:;Rue de des Abeilles;Lycée Pasteur;Utopia;;;France
URL:https://patrick.cardona.example.fr
EMAIL;INTERNET;WORK;X-GNUSTEPLABEL=WorkEmail;X-GNUSTEPID=1;1:[email protected]
EMAIL;INTERNET;WORK;X-GNUSTEPLABEL=WorkEmail;X-GNUSTEPID=2;2:[email protected]
NOTE:Une note avec des caractères accentués.
END:VCARD

In AddressManager:
- The date became: 08/06/1962

Step (6) - Last export:

BEGIN:VCARD
VERSION:2.1
X-GENERATOR:Addresses for GNUstep pre-1.0
N:Cardona-TER;Patrick;;;
BDAY:1962-08-06
TEL;WORK;VOICE;X-GNUSTEPLABEL=WorkPhone;X-GNUSTEPID=1;1:0605040302
TEL;WORK;VOICE;X-GNUSTEPLABEL=WorkPhone;X-GNUSTEPID=2;2:0203040506
ADR;WORK;X-GNUSTEPLABEL=WorkAddr;X-GNUSTEPID=1;1:BP 34;LE POLE;RUE DU POLE;POLE;Hérault;34000;FRANCE
ADR;WORK;X-GNUSTEPLABEL=WorkAddr;X-GNUSTEPID=2;2:;Rue de des Abeilles;Lycée Pasteur;Utopia;;;France
URL:https://patrick.cardona.example.fr
EMAIL;INTERNET;WORK;X-GNUSTEPLABEL=WorkEmail;X-GNUSTEPID=1;1:[email protected]
EMAIL;INTERNET;WORK;X-GNUSTEPLABEL=WorkEmail;X-GNUSTEPID=2;2:[email protected]
NOTE:Une note avec des caractères accentués.
END:VCARD


> Did you notice any other issues in email, phones, addresses or Notes?

See above the 'home' tag that became 'work' in step 3.

> 
> I did some tests with an old file and a more recent VCF file, both generated 
> by Addresses on Mac. So not a broad format test.
> I noticed the following:
> First, Phone/Email/Addresses were not classified correctly: they resulted 
> always of type "Work". While there is a lot of code there to handle that, I 
> believe it could never have worked - at least on the Apple format which is 
> coherent with vCard specifications. Types were not correctly extracted and 
> Matched. I extensively rewrote parsing. Could you test on your file?
> You should see Phones assined to Home/Work/Mobile, Address and Email to 
> Home/Work. Of course only if your orifinal file contains specifications to 
> e.g. TEL or EMAIL. I left in some debug logs to spit them out so you can see

It seems the distinction between work and home email is lost after the first export.

> 
> Second, some characters were escaped badly. I rewrote that code totally. It 
> work sin my case but needs to be checked. It works for my test files very 
> well, including images.

I successfully tested with UTF-8 accented characters in the "note" field.
Not tested with an image.

I guess I do not need to test within English UI because you already tested it. 

Patrick

-- 
Patrick Cardona - Pi400 - GNU/Linux aarch64 (Debian 13.1) 
Xorg (1:7.7+24) - libcairo2 (1.18.4-1+rpt1 arm64)
Window Maker (0.96.0) - GWorkspace (1.1.0 - 02 2025) - Theme: AGNOSTEP - MUA: GNUMail (1.4.0)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.