nextcloud / nextcloud/notes-ios

Notes app fails with VersionParserError on server with 4-component version string (34.0.2.1)

Open
#205 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Swift
Stars
73
Forks
22
PR merge metrics
No merged PRs in 30d

Description

How to use GitHub
  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Steps to reproduce
  1. Connect the Notes app to a Nextcloud server reporting version "34.0.2.1" (a 4-component version string, from a hotfix release)
  2. Create or edit a note
  3. Try to save the note
Expected behaviour

The note should save successfully, and the server version string should parse correctly regardless of whether it has 3 or 4 dot-separated components.

Actual behaviour

Saving fails with the following error:

Error updating note
Request retry failed with retry error: Request retry failed with retry error: URLRequest creation failed with error: The operation couldn't be completed. (Version.VersionParserError error 2.), original error: URLRequest creation failed with error: The operation couldn't be completed. (Version.VersionParserError error 2.), original error: Request retry failed with retry error: URLRequest creation failed with error: The operation couldn't be completed. (Version.VersionParserError error 2.), original error: URLRequest creation failed with error: The operation couldn't be completed. (Version.VersionParserError error 2.)

The error is wrapped through multiple retry layers, suggesting the version parsing failure cascades into a URLRequest creation failure.

Screenshot attached.

Server configuration

Nextcloud version: 34.0.2.1

status.php output for reference:

{"installed":true,"maintenance":false,"needsDbUpgrade":false,"version":"34.0.2.1","versionstring":"34.0.2","edition":"","productname":"Nextcloud","extendedSupport":false}

Note: versionstring is already in standard 3-component format ("34.0.2"), while version has an extra 4th (hotfix) component. This looks like the likely root cause — the client's version parser may expect exactly 3 components and fails on the 4th.

Client (iOS app)

App: Nextcloud Notes
App version: 33.0.1
iOS version: 18.7.7
Device: iPhone 15 Pro Max

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the Swift version parser used during URLRequest creation and trace how the server's version value reaches it. Reproduce against a server reporting version 34.0.2.1, then verify that saving a note succeeds for both three- and four-component versions.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
mobile
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
66/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.