wordpress-mobile / wordpress-mobile/release-toolkit

Make `ios_check_beta_deps` validate Swift Package Manager dependencies as well

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

Nobody has claimed this yet.

Dominant language
Ruby
Stars
31
Forks
10
Avg merge
5h 45m
Merged PRs (30d)
2

Description

I looked for mentions of this necessity elsewhere but couldn't find any. I'm surprised this hasn't been tracked yet so I guess I just haven't searched well enough. If that's the case, we can close this and add a link. Otherwise...

As we progressively move from CocoaPods to SwiftPM as the dependency manager for our apps, we ought to update our tooling accordingly. In particular, ios_check_beta_deps should list Swift packages that point to non-stable versions in the same way it lists Pods.

This should be a matter of parsing the Package.resolved JSON looking for entries pointing to branches (for which we also ought to have a dedicated Dangermattic check to prevent this, https://github.com/Automattic/dangermattic/issues/85) or commits.

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 at the ios_check_beta_deps entry point and trace how the existing CocoaPods dependency checks identify non-stable versions. Then inspect Package.resolved JSON entries for branch and commit references. Done means the check lists those Swift packages alongside unstable Pods; no test file is named in the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
ruby, swift
Domain
tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.