-
-
Notifications
You must be signed in to change notification settings - Fork 6
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
Extract SpeziConsent from SpeziOnboarding #59
base: main
Are you sure you want to change the base?
Conversation
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.
Thank you for the improvements; I like the separation @pauljohanneskraft!
I had a few comments along the way. The major element would be to explore if the changes could even be structured in a way that they are backward compatible as described in the comments.
Apart from this I am happy to see this merged once the comments are resolved; let me know if you have any follow-up questions.
Sources/SpeziConsent/ConsentView/ConsentDocument+ExportConfiguration.swift
Outdated
Show resolved
Hide resolved
@pauljohanneskraft Just wanted to follow up on this PR: Would be great to get this merged soon (if the PR is not combined with some larger changes, e.g. moving functionality out from Onboarding to Views), looks like a great split-up to me! 🚀 |
Agree with @philippzagar; wondering what the best order or merges between #52 #58 and this PR is? I would leave it up to you @philippzagar to identify a best order but it seems like all of them are close to be merged and might need a few pushed to get them across the finish line. I suspect that we will need to tag a major release anyways (we should old off on this a bit after the PRs are merged but can tag beta tags) as we might also use them to properly split up the targets as breaking changes & even remove some of the older constraints. |
I would definitely go for #58 first, then probably #52 and this PR last (resolving quite some conflicts within this PR/branch then). |
I agree that we'll need a major release version bump when all of these PRs are merged. |
Sounds good. #52 should be ready to be merged, all the tests are passing and it resolves some of the visionOS test issues that we see in #58. Wondering if we should reverse that order as #52 is also an external PR & we might not want to drag out additional development in the fork for a longer time? I think extracting the OnboardingStack would make sense; it could be generalized beyond its onboarding use case and could be useful in a few other places as well 👍 |
Sounds good, then I'll do a final review of #52 and merge it soon! After that, I'll go for #58. |
Sounds good, I'll create an issue for that and will tackle it soon! |
Sounds amazing; thank you @philippzagar! |
@PSchmiedmayer Created a small issue and assigned it to myself: #61 |
Thank you 👍 |
If we are to actually make a major release anyways, should we maybe revert that change that inverts the dependencies of SpeziConsent and SpeziOnboarding? Then, some apps would need to adapt their Package.swift file to include SpeziConsent, as they would otherwise not be able to access that part of the code anymore, but it would further not include the dependency for current users of SpeziOnboarding that don't rely on it. @PSchmiedmayer @philippzagar |
Agree, we can split the targets on the Package.swift level with a major release; would be fine with me + would probably also be nice to avoid building the PDF framework if one only wants to use the simple onboarding views. |
Extract SpeziConsent from SpeziOnboarding
♻️ Current situation & Problem
SpeziOnboarding contains mostly consent related information, this PR extracts that code into its own target, so that it can be separately linked on demand.
⚙️ Release Notes
📚 Documentation
Please ensure that you properly document any additions in conformance to Spezi Documentation Guide.
You can use this section to describe your solution, but we encourage contributors to document your reasoning and changes using in-line documentation.
✅ Testing
Please ensure that the PR meets the testing requirements set by CodeCov and that new functionality is appropriately tested.
This section describes important information about the tests and why some elements might not be testable.
📝 Code of Conduct & Contributing Guidelines
By submitting creating this pull request, you agree to follow our Code of Conduct and Contributing Guidelines: