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

Is Carthage no longer supported? #1275

Open
1 task done
soranoba opened this issue Mar 18, 2024 · 8 comments
Open
1 task done

Is Carthage no longer supported? #1275

soranoba opened this issue Mar 18, 2024 · 8 comments

Comments

@soranoba
Copy link

soranoba commented Mar 18, 2024

  • I have read CONTRIBUTING and have done my best to follow them.

What did you do?

I upgraded to xcode15.3, Quick and Nimble.

What did you expect to happen?

Test can be executed.

What actually happened instead?

It failed to compile with Cachege --no-use-binaries option.

missing required module 'CwlCatchExceptionSupport'

Environment

List the software versions you're using:

  • Quick: 7.4.1
  • Nimble: 13.2.1
  • Xcode Version: 15.3 (Open Xcode; In menubar: Xcode > About Xcode)
  • Swift Version: 5.10 (Open Xcode Preferences; Components > Toolchains. If none, use Xcode Default.)

Please also mention which package manager you used and its version. Delete the
other package managers in this list:

  • Carthage: 0.38.0 (Use carthage version in Terminal)

Project that demonstrates the issue

Please link to a project we can download that reproduces the issue. Feel free
to delete this section if it's not relevant to the issue (eg - feature request).

The project should be short, self-contained, and correct example.

@soranoba
Copy link
Author

soranoba commented Mar 18, 2024

If I use these versions and --no-use-binaries, it compile succeeded. 🤔

github "Quick/Nimble" "v13.0.0"
github "Quick/Quick" "v7.3.0"

@soranoba soranoba changed the title Xcode 15.3 / Swift 5.10 is not supported yet. Is Xcode15.3 / Swift 5.10 not supported yet? Mar 18, 2024
@younata
Copy link
Member

younata commented Mar 19, 2024

In Nimble 13.1 (December 2023), we switched to pull in CwlPreconditionTesting transitively using SPM (Quick/Nimble#1108). This works in Carthage 0.39.1 (released in September 2023), and Xcode 15.3:

$ carthage update --no-use-binaries --use-xcframeworks
*** Fetching Nimble
*** Fetching Quick
*** Checking out Quick at "v7.4.1"
*** Checking out Nimble at "v13.2.1"
*** xcodebuild output can be found in /var/folders/_v/6_5lvql10ks78qc_3r52m7500000gn/T/carthage-xcodebuild.60frDa.log
*** Building scheme "Nimble" in Nimble.xcodeproj
*** Building scheme "Quick" in Quick.xcworkspace
$ echo $?
0

I haven't checked if this is broken when using older versions of Carthage, but maybe the older versions of Carthage are unable to deal with SPM-based dependencies?

@soranoba
Copy link
Author

The compile error occurs when I run the test in Xcode. (carthage build successeded)
I will try increasing the version of carthage and check it.

@younata
Copy link
Member

younata commented Mar 19, 2024

Oh. Actually, after trying to embed it in a test app, it looks like there's some bug in... somewhere? Xcode? Carthage? Nimble's configuration? causing CWLPreconditionTesting to not be embedded? You can work around this by adding the CwlPreconditionTesting manually as a swift package to your test's dependencies (the URL is https://github.com/mattgallagher/CwlPreconditionTesting, and you'll need version 2.2.0 or later). What a terrible experience. I'm sorry.

@soranoba
Copy link
Author

I think the reasons is that dependencies are not written in Cartfile.
https://github.com/Quick/Nimble/blob/256e242d294b691103305588cbab176ed617a39e/Cartfile.resolved

@younata
Copy link
Member

younata commented Mar 19, 2024

Yes, because those dependencies no longer support Carthage. Nimble 13 and earlier were using an older version of those testing aids from when they did support Carthage.

@soranoba
Copy link
Author

Oh....

@soranoba soranoba changed the title Is Xcode15.3 / Swift 5.10 not supported yet? Is Carthage no longer supported? Mar 19, 2024
@soranoba
Copy link
Author

The title has been changed.

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

2 participants