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
Support for tvOS Top Shelf Extensions #2793
Conversation
Hey @rmnblm π Thanks for the PR - moving the discussion from the issue here.
My first guess is here. Generally, you should be fine by looking at where eg Also, could you modify |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @rmnblm. Thanks a lot for taking on the task of adding support for tvOS. As @fortmarek mentioned, I'd add an acceptance test that ensures that we can compile a TV app with an extension and framework, and library dependencies. I'd also update the CHANGELOG to list your changes.
@all-contributors add @rmnblm for code |
@pepibumur I've put up a pull request to add @rmnblm! π |
@fortmarek I finally found some time to work on this. During my implementation, I found a rather small bug in the XcodeProj package. Please take a look here. Running the current state of implementation causes the top shelf to crash with the message:
Hence, the PR in the XcodeProj package must be merged before merging this one here. I will work on the tests now and change the state from Draft to Merge later. So long, |
I added a new Running the acceptance test is successful:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @fortmarek I made changes to this PR according to tuist/XcodeProj#609 (comment). I intentionally left out the I hope this is fine. Cheers, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Small nits but otherwise seems solid to me, thanks for the contribution @rmnblm π
Added an issue to implement |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice work π thanks for working on this @rmnblm!
Left some minor suggestions and bits I spotted which don't match Xcode's defaults.
projects/tuist/fixtures/tvos_app_with_extensions/TopShelfExtension/ContentProvider.swift
Show resolved
Hide resolved
I implemented all your suggestions @kwridan. I think this time it is ready to merge, what do you think? π |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome, thanks for the updates @rmnblm!
* main: (95 commits) fix typo on tuist graph command option --skip-test-targets Bump normalize-url from 4.5.0 to 4.5.1 in /projects/docs (tuist#3068) [Dependencies.swift] Generate `DependenciesGraph` for `Carthage` dependencies. (tuist#3043) Fix manifest loading when using Swift 5.5 (tuist#3062) Update project.md (tuist#3063) Add release name Bundle libProjectAutomation.dylib Support for tvOS Top Shelf Extensions (tuist#2793) Fix tuist and tuistenv release mismatch Version 1.44.0 Bump version to 1.44.0 Bump gatsby-plugin-theme-ui from 0.8.4 to 0.9.1 in /projects/website (tuist#3046) Bump autoprefixer from 10.2.5 to 10.2.6 in /projects/website Bump gatsby-plugin-sharp from 3.5.0 to 3.6.0 in /projects/website Bump react-spring from 9.1.2 to 9.2.1 in /projects/website Bump gatsby-redirect-from from 0.3.0 to 0.4.1 in /projects/website Bump @theme-ui/color from 0.8.4 to 0.9.1 in /projects/website Bump tailwindcss from 2.1.2 to 2.1.4 in /projects/website Bump ws from 6.2.1 to 6.2.2 in /projects/docs Remove stickers and shop link ... # Conflicts: # CHANGELOG.md
Resolves #2791
Short description π
As discussed in #2791, this PR uncomments everything related to
.tvExtension
.Checklist β
CHANGELOG.md
has been updated to reflect the changes. In case of a breaking change, it's been flagged as such.