Tagging of releases for better support of SPM for iOS development
- Dominant language
- JavaScript
- Stars
- 2.2k
- Forks
- 1k
- Avg merge
- 12h 11m
- Merged PRs (30d)
- 18
Description
# Bug Report
## Problem
We use Cordova-ios in an iOS app, the Package is imported via SPM.
We need to update cordova-ios from version 8.0.0 to version 8.0.1 (at least) to fix an issue reported on 8.0.0
When using cordova-ios through SPM, we need to specify the versions in format x.x.x, version 8.0.1 cannot be found by SPM.
### What is expected to happen?
I set Package Cordova-ios to exact version 8.0.1, SPM finds the package from the repository, the package is updated.
I set Package Cordova-ios to "Up to next Major version" with version 8.0.0, SPM resolves Cordova-ios to the latest version (8.1.1 at the time of writing this)
### What does actually happen?
SPM cannot find Package version 8.0.1, nor 8.1.1
## Information
SPM uses tags to reference versions in the repositories, SPM expects the tags to have exact format x.x.x, the "core" of semver, without suffix, nor prefix.
On Cordova-ios, version 8.0.0 commit [5d98b86](https://github.com/apache/cordova-ios/commit/5d98b865a0619ca64d0101dc2b0484ad7294be22) has two tags: "rel/8.0.0", "8.0.0", hence SPM can find that version through the tag 8.0.0.
But when trying to update to 8.0.1, SPM looks for a tag "8.0.1" and cannot find it, because the repo only has a tag "rel/8.0.1"
This inconsistent tagging prevents reliably using SPM's .upToNextMinor(from:) and .upToNextMajor(from:) to specify supported versions.
### Command or Code
-
### Environment, Platform, Device
Xcode 26.6, iOS application development
### Version information
cordova-ios 8.0.0 8.0.1 8.1.1
## Checklist
- [x] I searched for existing GitHub issues
- [x] I updated all Cordova tooling to most recent version
- [x] I included all the necessary information above
Contributor guide
Research direction
Inspect the repository's existing release tags, especially 8.0.0, 8.0.1, and 8.1.1, and review how Cordova iOS releases are published. Verify the tags against Swift Package Manager's version-resolution requirements; done means supported releases have matching x.x.x tags and SPM can resolve exact and range-based versions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ios, javascript
- Domain
- mobile-dev, release
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100