nextcloud / server

☁️ Nextcloud server, a safe home for all your data
https://nextcloud.com
GNU Affero General Public License v3.0
27.37k stars 4.06k forks source link

[Bug]: iOS contacts can't set default *list* #39302

Open patzm opened 1 year ago

patzm commented 1 year ago

⚠️ This issue respects the following points: ⚠️

Bug description

I am using iOS 16.5.1 with CalDAV set up for my NextCloud instance. The NC instance has multiple Contact Groups. On iOS, these Contact Groups translate to lists (iOS lingo). See the following screenshot:

To avoid confusion: It is possible to set the default account in the iOS settings by navigating Settings > Contacts > Default account. However, it is not possible to set the default list / Contacts Group.

New contacts are always being added to one group, but not the main All Contacts group. Now you may ask: why open an issue in nextcloud/server? Well, I don't think iOS will magically and easily change. So I think it makes sense to first understand whether some server settings / code affect the default contact placement.

Steps to reproduce

  1. set up CalDAV sync on an iOS device
  2. create multiple contact groups in NextCloud
  3. sync
  4. create a new contact on iOS and observe that it is added in one of the Contact Groups

Expected behavior

it gets added to the All Contacts group.

Installation method

Community Docker image

Nextcloud Server version

27

Operating system

Debian/Ubuntu

PHP engine version

PHP 8.1

Web server

Apache (supported)

Database engine version

MariaDB

Is this bug present after an update or on a fresh install?

None

Are you using the Nextcloud Server Encryption module?

Encryption is Disabled

What user-backends are you using?

Configuration report

{
    "system": {
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "tempdirectory": "\/data\/tmp",
        "supportedDatabases": [
            "sqlite",
            "mysql",
            "pgsql"
        ],
        "logtimezone": "Europe\/Berlin",
        "logdateformat": "Y-m-d H:i:s",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "apps_paths": [
            {
                "path": "\/var\/www\/apps",
                "url": "\/apps",
                "writable": false
            },
            {
                "path": "\/data\/userapps",
                "url": "\/userapps",
                "writable": true
            }
        ],
        "default_locale": "de",
        "default_phone_region": "DE",
        "mail_smtpmode": "smtp",
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "cloud.patz.app"
        ],
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "27.0.0.8",
        "overwriteprotocol": "https",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_sendmailmode": "smtp",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpauthtype": "LOGIN",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "587",
        "debug": false,
        "loglevel": 2,
        "maintenance": false,
        "app_install_overwrite": [
            "occweb",
            "drawio",
            "extract",
            "gpxpod",
            "electronicsignatures",
            "files_markdown",
            "files_mindmap",
            "socialsharing_email",
            "maps"
        ],
        "theme": "",
        "allow_local_remote_servers": true,
        "overwrite.cli.url": "https:\/\/cloud.patz.app",
        "mail_smtpauth": 1,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***"
    }
}

List of activated Apps

Enabled:
  - activity: 2.19.0
  - admin_audit: 1.17.0
  - calendar: 4.4.3
  - circles: 27.0.0
  - cloud_federation_api: 1.10.0
  - comments: 1.17.0
  - contacts: 5.3.2
  - cospend: 1.5.10
  - dav: 1.27.0
  - deck: 1.10.0
  - drawio: 2.1.1
  - electronicsignatures: 2.0.5
  - extract: 1.3.6
  - federatedfilesharing: 1.17.0
  - federation: 1.17.0
  - files: 1.22.0
  - files_accesscontrol: 1.17.0
  - files_automatedtagging: 1.17.0
  - files_markdown: 2.4.1
  - files_mindmap: 0.0.28
  - files_pdfviewer: 2.8.0
  - files_rightclick: 1.6.0
  - files_sharing: 1.19.0
  - files_trashbin: 1.17.0
  - files_versions: 1.20.0
  - files_zip: 1.4.0
  - firstrunwizard: 2.16.0
  - forms: 3.3.1
  - gpxpod: 5.0.12
  - groupfolders: 15.0.0
  - integration_google: 2.0.2
  - integration_openproject: 2.3.7
  - logreader: 2.12.0
  - lookup_server_connector: 1.15.0
  - mail: 3.2.3
  - maps: 1.1.0
  - nextcloud_announcements: 1.16.0
  - notifications: 2.15.0
  - oauth2: 1.15.0
  - onlyoffice: 8.1.0
  - password_policy: 1.17.0
  - photos: 2.3.0
  - previewgenerator: 5.3.0
  - privacy: 1.11.0
  - provisioning_api: 1.17.0
  - recommendations: 1.6.0
  - related_resources: 1.2.0
  - serverinfo: 1.17.0
  - settings: 1.9.0
  - sharebymail: 1.17.0
  - socialsharing_email: 2.6.0
  - spreed: 17.0.1
  - support: 1.10.0
  - survey_client: 1.15.0
  - suspicious_login: 5.0.0
  - systemtags: 1.17.0
  - tasks: 0.15.0
  - text: 3.8.0
  - theming: 2.2.0
  - twofactor_backupcodes: 1.16.0
  - twofactor_totp: 9.0.0
  - updatenotification: 1.17.0
  - user_oidc: 1.3.3
  - user_status: 1.7.0
  - viewer: 2.1.0
  - weather_status: 1.7.0
  - workflowengine: 2.9.0
Disabled:
  - bruteforcesettings: 2.7.0 (installed 2.4.0)
  - contactsinteraction: 1.8.0 (installed 1.7.0)
  - dashboard: 7.7.0 (installed 7.0.0)
  - encryption: 2.15.0
  - files_external: 1.19.0 (installed 1.16.1)
  - user_ldap: 1.17.0

Nextcloud Signing status

no errors have been found

Nextcloud Logs

-

Additional info

-

joshtrichards commented 1 year ago

I'm not up to speed on the protocol/file formats involved, but this sounds like nextcloud/contacts#213 and nextcloud/contacts#609 (and some other intersecting ones possibly).

patzm commented 1 year ago

Thanks @joshtrichards, great links. I think they might be related, but not 100% identical. On macOS, I can't even see the other groups. So I guess I am affected by those issues, but this is slightly different as it is iOS specific. But if you have the permissions, maybe move (transfer) this issue to the contacts repo. It probably fits better there.

tjay commented 5 months ago

As long as this issue is not closed there is a workaround: IOS uses the last in nexcloud created writeable address book as default list. To achieve this, you can export the address books and then recreate them in the correct order and import them again.

bamaas commented 2 months ago

Ever found a solution to this issue? Im facing it too.