-
Notifications
You must be signed in to change notification settings - Fork 943
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Swift Package Manager Support? #1245
Comments
We'd love to add spm support. Are there any docs and/or example |
here is the documentation on spm https://github.com/apple/swift-package-manager/tree/master/Documentation and here is the example of package file https://github.com/vapor/vapor/blob/master/Package.swift |
also here is the dockerfile for test or developement in case FROM ubuntu:18.04
RUN export DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true && apt-get -q update && \
apt-get -q install -y \
libatomic1 \
libbsd0 \
libcurl4 \
libxml2 \
tzdata \
&& rm -r /var/lib/apt/lists/*
ARG SWIFT_PLATFORM=ubuntu18.04
ARG SWIFT_BRANCH=swift-5.0.1-release
ARG SWIFT_VERSION=swift-5.0.1-RELEASE
ENV SWIFT_PLATFORM=$SWIFT_PLATFORM \
SWIFT_BRANCH=$SWIFT_BRANCH \
SWIFT_VERSION=$SWIFT_VERSION
RUN SWIFT_URL=https://swift.org/builds/$SWIFT_BRANCH/$(echo "$SWIFT_PLATFORM" | tr -d .)/$SWIFT_VERSION/$SWIFT_VERSION-$SWIFT_PLATFORM.tar.gz \
&& curl -fSsL $SWIFT_URL -o swift.tar.gz \
&& export GNUPGHOME="$(mktemp -d)" \
&& tar -xzf swift.tar.gz --directory / --strip-components=1 \
&& rm -r "$GNUPGHOME" swift.tar.gz \
&& chmod -R o+r /usr/lib/swift
# Print Installed Swift Version
RUN swift --version |
Gonna add my voice to those calling for Swift Package Manager support in Dependabot. |
Where is SPM hook for pushing updatedeps commit to git repo? Where is a bot here? Or dependabot is little bit more advanced yet powerful? |
Any progress here? Would be great to have SPM soon.... |
Cc @feelepxyz and @asciimike for awareness. I know the Dependabot team are heads down on some other features and not planning to expand to new ecosystems imminently - they'll have the latest, though. |
Xref #3772 |
Bumping for SPM vote |
up ! |
Is there any update or any roadmap on this? Speaking as a GitHub Enteprise customer that will get this months behind the .com version so the delay in announcing anything for the regular versions are even more painful :/. |
Related: #5562 We are starting to get a little more caught up on our backlog / infra tasks as a team, so I expect in the not too distant future we'll start looking at adding ecosystems again. But I'm afraid we don't have anything specific to share just yet. In the meantime, if Swift support is important to you, please 👍 the original issue... it helps us gauge the popularity of different ecosystems that are requested. No need to add a comment, that just spams the folks following this issue for updates. |
@jeffwidman any news to share here - we're looking at picking this up to get the support over the line so interested to know if it's worth spending the effort on |
Any update on this? |
Interested to have updates too :) |
Putting myself down as interested in SwiftPM support! |
I'm waiting for it! 🔎 |
Same, can we add support please |
Please, if your comment is just a reaction to show support for this feature, do use reactions! See https://github.com/dependabot/dependabot-core#no-1-comments. |
Hei! Just some heads up that we're actively working on this and plan to ship Swift support during this quarter. |
@deivid-rodriguez Thank you! Wonderful news. |
@deivid-rodriguez please note that there's a difference in the way Swift Libraries/Executables and Swift Apps deal with SwiftPM: Swift Libraries/Executables (Libraries, Command Line Tools, Server-side Swift)
Swift Apps (iOS, macOS)
Adding support to Swift Libraries/Executables should be trivial, but supporting Swift Apps doesn't look easy to automate. If you could confirm what kind of support is being worked on, that could help some of us to set our expectations in terms of use cases. |
Yes, we're only working in the first case as of now. |
I think you can automate this part as well by using the |
Hello! We have enabled beta testing for Swift Package Manager version updates. To opt-in to it, you need to specify the version: 2
enable-beta-ecosystems: true
updates:
- package-ecosystem: "swift"
directory: "/"
schedule:
interval: "weekly" Feel free to try it out and report any issues you find. Note that there's a known issue with a specific Swift dependency where we end up adding some unnecessary changes to the Thanks! |
Have you completed the Xcode project file version or only the Package.swift version, as outlined above? For what it's worth, I think MOST users will integrate through the Xcode project file and not through the Package.swift file |
Only through |
Supporting Xcode apps is going to be hard, if not impossible. There's a resolved file, but the location of it is liable to move on any Xcode update. The manifest itself is stored in a the |
Hopefully Apple will make the Xcode version better in the future. I don't see any reason why they can't just use a Package.swift |
I can't recommend this, but as a potential workaround, it seems to me |
I can't speak for Apple but given the new package format introduced in playgrounds for iPad to build 'real' apps I suspsect we'll get there but it's going to be a slow process to migrate everyone and all all the additional features required to SwiftPM |
@deivid-rodriguez Where would you like bug reports for this beta release — here, or in another issue? We've been struggling to get this to run without crashing on our iOS app. The stacktrace from Dependabot is currently:
In our repo, there is indeed a The error itself looks to be coming from SPM. The logic here in Dependabot appears to only be writing the dependency files, which I'm guessing might only be the Locally, going into
Is this expected behaviour? |
Hi @timdawborn, thanks for digging into this! I think a new issue is better, can you copy this to a new issue? If you can also create a small public repository that reproduces it, it would be perfect. In principle, it seems unexpected because the full clone of the repo should be present at |
I'm trying @pyrtsa approach, it sort of works but I need to manually edit every Dependabot PR to make sure both Package.swift and .xcodeproj files point to the same version, every time. I found this ruby gem that can read and write .xcodeproj bundles, this could help Dependabot deal with the Xcode projects. Gem: https://github.com/CocoaPods/Xcodeproj Hopefully this helps the implementation to cater for a wider user base! |
@timdawborn I ended up being able to reproduce your issue and has been fixed at #7674. Try again and hopefully should just work now. For everyone else, we've just released Swift support for Version & Security Updates, so let me close this ticket since this has been implemented 🎉. I'll make sure to open separate feature requests for the things that we left out of this release, and please do report any issues you find. Cheers! |
@deivid-rodriguez Thanks! It's now working like a charm for us 🎉 ![]() |
Glad to hear that! 🎉 |
@deivid-rodriguez could you link here the additional issues you created for things left out of this release? Especially the support for using |
I had not yet opened that issue, there you go! #7694 |
Is there any special configuration needed to use updates to internal private packages published on Github via SPM? We have several libraries that depend upon other smaller internal libraries, just as private repos in our organization. These are specified via HTTPS URLs in our Eagerly awaiting support for the app project file itself as well in #7694 :) |
I guess configure a git registry. |
Is there any plans for spm support?, some of the following details may help
Package.swift
infile_fetcher
.package(url: "https://github.com/abc/abc.git", from: "1.0.0)
for dependency infile_parser
Listing Dependency using Command Line (exec)
For Package Metadata
I don't know much ruby, but I can help in creating specific dependency updater for package file.
The text was updated successfully, but these errors were encountered: