Skip to content
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

SPM packages and Test Plans #606

Closed
ethanjdiamond opened this issue Jun 29, 2019 · 12 comments
Closed

SPM packages and Test Plans #606

ethanjdiamond opened this issue Jun 29, 2019 · 12 comments

Comments

@ethanjdiamond
Copy link

ethanjdiamond commented Jun 29, 2019

Hi! I was wondering if XcodeGen was going to support two new features I'd like to try out with Xcode 11.

I think I saw that xcodeproj support packages now.

@yonaskolb
Copy link
Owner

Yeah I've been working a bit on SPM packages in my spare time. Here's a preview

Screen Shot 2019-06-30 at 1 54 28 pm

Screen Shot 2019-06-30 at 1 55 09 pm

Test Plans first needs XcodeProj support

@kdubb
Copy link

kdubb commented Jun 30, 2019

@yonaskolb Any thoughts on a alpha/beta release with SPM support. This solves a lot of issues for us.

On a general note... kudos to you for creating and maintaining this project. Once discovered we've found it completely indispensable. Thank you!

@AlexisQapa
Copy link

Started using Xcode 11 with SPM thinking this is great but it will be hard to forget XcodeGen and then I saw this issue.

@bonkey
Copy link

bonkey commented Jul 4, 2019

Wonderful! :)

@rvanmelle
Copy link

rvanmelle commented Jul 5, 2019

Yeah ... thanks. Funny, also was playing around and had a working prototype locally, very similar syntax, but I think I like yours better:

packages:
  Yams:
    package: https://github.com/jpsim/yaml
    version: 2.0.0 < NextMajor
  Yams:
    package: https://github.com/jpsim2/yaml
    version: 2.0.0 < NextMinor
  Yams:
    package: https://github.com/jpsim2/yaml
    version: 2.0.0 < 3.0.0
  Yams:
    package: https://github.com/jpsim2/yaml
    version: 2.0.0
  Yams:
    package: https://github.com/jpsim2/yaml
    branch: feature/cool
  Yams:
    package: https://github.com/jpsim2/yaml
    commit: afqwerqwefasdf

@zdnk
Copy link

zdnk commented Jul 10, 2019

What about the issue with resolving packages since Package.resolved file is inside the generated xcodeproj?

@rvanmelle
Copy link

One part that I haven't figured out properly yet either is support for local packages --- they kind of appear automagically if the source directory is listed (i.e. xcode recognizes them as a package etc.), but I don't have the the associated framework being linked properly against the targets. I was kind of working with a methodology of not needing to explicitly declare local packages in the toplevel package section...

@ethanjdiamond
Copy link
Author

Could we do any folder with a Package.swift file in it? That's roughly what's going on with Xcode.

@yonaskolb
Copy link
Owner

Swift Package support has been added here #624

Please test it out on your projects.

@yonaskolb
Copy link
Owner

yonaskolb commented Aug 13, 2019

@zdnk:

What about the issue with resolving packages since Package.resolved file is inside the generated xcodeproj?

the Package.resolved file gets created by Xcode here: Project.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
If you want to check that file in selectively you can do so, without checking in the actual .pbxproj.

@rvanmelle:

One part that I haven't figured out properly yet either is support for local packages --- they kind of appear automagically if the source directory is listed (i.e. xcode recognizes them as a package etc.), but I don't have the the associated framework being linked properly against the targets. I was kind of working with a methodology of not needing to explicitly declare local packages in the toplevel package section...

@ethanjdiamond

Could we do any folder with a Package.swift file in it? That's roughly what's going on with Xcode.

What you are seeing is opening a Package.swift or it's directory directly in Xcode, which is another form of SPM integration that Xcode provides. What we are aiming to do with XcodeGen though is to generate an Xcode project that can utilise Swift packages, which is the other form of integration. This is required because iOS projects for example can't be defined with just a simple Package.swift as SPM doesn't yet have support for bundles and resources and all the complexities that come with iOS app.

@smeshko
Copy link

smeshko commented Sep 19, 2019

@yonaskolb, awesome work with SPM! Have there been any updates about test plans support?

@yonaskolb
Copy link
Owner

Closing this in favour of #684

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants