getsidetrack / action-xcodeproj-spm-update Goto Github PK
View Code? Open in Web Editor NEWUpdate your Xcode project with the latest Swift Package dependencies
License: MIT License
Update your Xcode project with the latest Swift Package dependencies
License: MIT License
When running the action we can see a warning saying: The set-output
command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
I have a project with SPM and Cocoapods dependencies and I have the action running in order to check for outdated SPM:
name: Xcode Dependencies
on:
schedule:
- cron: '0 6 * * 1' # Monday at 06:00 UTC
permissions:
contents: write
pull-requests: write
jobs:
dependencies:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Disable cleaning old versions @ brew
run: export HOMEBREW_NO_INSTALL_CLEANUP=true
- name: Resolve Dependencies
id: resolution
uses: GetSidetrack/action-xcodeproj-spm-update@main
with:
forceResolution: true
failWhenOutdated: false
- name: Create Pull Request
if: steps.resolution.outputs.dependenciesChanged == 'true'
uses: peter-evans/create-pull-request@v4
with:
branch: 'dependencies/ios'
delete-branch: true
commit-message: 'Bump SPM dependencies versions'
title: 'Bump SPM dependencies versions'
And I get the following error:
Run GetSidetrack/action-xcodeproj-spm-update@main
[6](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:6)
Run brew install md5sha1sum
[9](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:9)
==> Downloading https://ghcr.io/v2/homebrew/core/md5sha1sum/manifests/0.9.5_1
[10](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:10)
==> Downloading https://ghcr.io/v2/homebrew/core/md5sha1sum/blobs/sha256:c3ce2a7048d5e035493c2f637249da99f726109a9a643498576441c4c9ec7d58
[11](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:11)
==> Downloading from https://pkg-containers.githubusercontent.com/ghcr1/blobs/sha256:c3ce2a7048d5e035493c2f637249da99f726109a9a643498576441c4c9ec7d58?se=2022-05-09T06%3A15%3A00Z&sig=SGX47H8hyDKyGVXVatxJckMzuvU8e2DeqiUGCZpWo0U%3D&sp=r&spr=https&sr=b&sv=2019-12-12
[12](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:12)
==> Pouring md5sha1sum--0.9.5_1.big_sur.bottle.tar.gz
[13](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:13)
๐บ /usr/local/Cellar/md5sha1sum/0.9.5_1: 8 files, 74.6KB
[14](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:14)
==> Running `brew cleanup md5sha1sum`...
[15](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:15)
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
[16](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:16)
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
[17](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:17)
Run echo "/Users/runner/work/_actions/GetSidetrack/action-xcodeproj-spm-update/main" >> $GITHUB_PATH
[20](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:20)
Run entrypoint.sh -a "." -b "true" -c "false"
[23](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:23)
shasum: ./SwiftPackages/Sourcery/Package.resolved
[24](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:24)
./Blueground.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
[25](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:25)
./Blueground.xcworkspace/xcshareddata/swiftpm/Package.resolved
[26](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:26)
./Danger-Swift/Package.resolved: No such file or directory
[27](https://github.com/bluegroundltd/guest-app-ios/runs/6346686732?check_suite_focus=true#step:4:27)
Error: Process completed with exit code 1.
But the file ./Danger-Swift/Package.resolved
exists.
First, thank you very much for creating this super useful action!!
Maybe I'm biased because I saw first https://github.com/marketplace/actions/swift-package-dependencies-check, but I think it would be super useful being able to get access to updated packages release notes in the PR description. So, before merging, you can check if you really want to merge those package updates or not.
It's a nice to have, but really nice ๐
The action, as it is now, doesn't work for workspaces.
I understand the solution would be adding the option to set workspace name and scheme as input parameters.
I was able to make it work hardcoding workspace and scheme but I didn't know how to add them as parameters. I'm bad at shell scripts...
Leaving this here for a reference.
This package uses macos-latest
image of github, which currently stands on macOS 11 and Xcode 13.2.1.
Xcode 13.2.1 generates a Package.resolved
file version: 1
because it uses Swift 5.5.
Xcode 13.3 generates a Package.resolved
file version: 2
because it uses Swift 5.6.
Thus running this action against a project being developed in Xcode 13.3 always generates a PR with Package.resolved
completely changed back to version 1.
As far as I can see there is no easy workaround at this moment.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.