XcodesOrg / XcodesOrg/XcodesApp

Add management of Swift development toolchain snapshots

Open
#486 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Swift
Stars
8.6k
Forks
387
Avg merge
6d 7h
Merged PRs (30d)
3

Description

I'd love for Xcodes to be configurable to automatically download and install Swift development toolchain snapshots from https://www.swift.org/download/.

For example, I have a project running in Swift 5.9 that could be enhanced using features from Swift 5.10, which is still in development. I would like to keep Xcodes running in the background and have it automatically download and install the latest Swift 5.10 toolchain so that I always have the latest snapshot available for testing 5.10 builds of my project.

Implementing this feature would probably involve parsing the Swift downloads page to locate the section headings such as "Trunk Development (main)", "Swift 5.10 Development", and "Swift 5.9 Development". The Xcodes UI would then let me select one or more of these sections, and see the toolchains from that section that are already installed or available to be installed. There would also be an option to install the latest snapshot and delete older snapshots automatically. Perhaps there would also be an option to "pin" a snapshot so that it would not be deleted.

A feature like this would make working with prerelease versions of Swift as easy as working with prerelease versions of Xcode.

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 reviewing the Swift downloads page sections named in the issue, including Trunk Development (main) and Swift 5.10 Development. Then trace the Xcodes UI and existing toolchain installation flow to determine how section selection, latest-snapshot installation, cleanup, and pinning would fit; the issue names no files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
macos, swift
Domain
desktop, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.