Files
Stefan Ceriu 0ff55d2d34 feat: add XcodeGen manager for Swift package dependencies in project.yml files (#41889)
* feat: add XcodeGen manager for Swift package dependencies in project.yml files

* chore(xcodegen): inline project.yml fixture

* fix(xcodegen): use semver instead of swift versioning

* fix(xcodegen): use glob syntax for manager file pattern

* tests(xcodegen): expect logger is called on invalid packages

* tests(xcodegen): better assert extracted package contents

* chore(xcodegen): simplify regex usage

* chore(xcodegen): log projects without dependencies

* chore(xcodegen): simplify dependency resolving and remove regular expressions in favor of the `detectPlatform` helper function

* chore(xcodegen): use `coerceString` on package versions to simplify testing and improve coverage

* chore(xcodegen): address PR review comments.

---------

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2026-04-15 15:13:04 +00:00

758 B

Extracts Swift package dependencies from XcodeGen project.yml files.

The default project.yml file name is used for file matching, but users can extend the managerFilePatterns config option to match custom file names.

Supported version specifiers:

  • from / majorVersion (major version constraint)
  • minorVersion (minor version constraint)
  • exactVersion / version (fixed version)

The following version specifiers are detected but not supported for updates:

  • branch (branch reference)
  • revision (Git SHA)
  • minVersion / maxVersion (range constraints)

Local packages (specified with path) are ignored.

Both url and github shorthand are supported for specifying the package source.