apple / apple/sample-cloudkit-sync-engine

var listID: String

Ouverte
#10 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Swift
Étoiles
270
Forks
15
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

### In ContactsList.swift extension Contact

`// In order for the list to update properly when fetch changes from the cloud, we need to use something other than the contact ID for the list item ID.`
`var listID: String { "\(self.id)\(Self.listIDSeparator)\(self.name)" }`

The problem with this approach is when you start adding more fields to Contact. Your approach doesn't guarantee updates when changes are fetched.

I propose changing to the following:
`var listID: String { "\(self.id)\(Self.listIDSeparator)\(self.userModificationDate)" }`

In my testing, this solves all update issues regardless of adding fields to Contact.

Thoughts?

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Ouvrez ContactsList.swift et examinez l’extension de Contact ainsi que l’implémentation actuelle de listID. Mettez à jour l’identifiant de la liste comme proposé, puis vérifiez que les modifications récupérées depuis le cloud mettent à jour les éléments de la liste lorsque des champs autres que le nom du contact changent.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
swift
Domaine
mobile-dev
Type d'issue
Bug
Difficulté
1/5
Temps estimé
Moins d'une heure
Activité
À l'abandon
Clarté
Clairement spécifiée
Accessibilité débutants
42/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.