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

Components, Modules, and Dependencies #5

Merged
merged 6 commits into from
Oct 26, 2022
Merged

Conversation

PSchmiedmayer
Copy link
Member

Components, Modules, and Dependencies

♻️ Current situation & Problem

Components can be configured using the CardinalKit configuration. Different components might rely on each other to provide functionality. These dependencies need to be defined by components.

💡 Proposed solution

The PR adds a way to define the dependencies between different components.

⚙️ Release Notes

  • Introduced the Module type combining multiple requirements for Components
  • Introduces DependingComponent as a protocol that can be used to define dependencies between different CardinalKit components.

Code of Conduct & Contributing Guidelines

By submitting creating this pull request, you agree to follow our Code of Conduct and Contributing Guidelines:

@codecov-commenter
Copy link

codecov-commenter commented Oct 25, 2022

Codecov Report

Merging #5 (dceeab7) into main (2ca5369) will decrease coverage by 4.09%.
The diff coverage is 94.12%.

❗ Current head dceeab7 differs from pull request most recent head 0ee7ec2. Consider uploading reports for the commit 0ee7ec2 to get more accurate results

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff             @@
##              main       #5      +/-   ##
===========================================
- Coverage   100.00%   95.92%   -4.08%     
===========================================
  Files           12       18       +6     
  Lines          167      318     +151     
===========================================
+ Hits           167      305     +138     
- Misses           0       13      +13     
Impacted Files Coverage Δ
...rdinalKit/CardinalKit/CardinalKitAppDelegate.swift 100.00% <ø> (ø)
...ces/CardinalKit/CardinalKit/View+CardinalKit.swift 100.00% <ø> (ø)
...dule/Capabilities/Lifecycle/LifecycleHandler.swift 100.00% <ø> (ø)
...s/ObservableObject/ObservableObjectComponent.swift 100.00% <ø> (ø)
Sources/CardinalKit/Helper/Assert.swift 25.00% <25.00%> (ø)
.../Capabilities/Dependencies/DependencyManager.swift 95.66% <95.66%> (ø)
Sources/CardinalKit/CardinalKit/CardinalKit.swift 100.00% <100.00%> (ø)
...t/CardinalKit/Infrastructure/TypedCollection.swift 100.00% <100.00%> (ø)
...urces/CardinalKit/Configuration/AnyComponent.swift 100.00% <100.00%> (ø)
Sources/CardinalKit/Configuration/Component.swift 100.00% <100.00%> (ø)
... and 8 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 2ca5369...0ee7ec2. Read the comment docs.

@PSchmiedmayer PSchmiedmayer marked this pull request as ready for review October 25, 2022 23:41
@PSchmiedmayer PSchmiedmayer changed the title Add component dendencies and modules Components, Modules, and Dependencies Oct 26, 2022
@PSchmiedmayer PSchmiedmayer merged commit 9dafa15 into main Oct 26, 2022
@PSchmiedmayer PSchmiedmayer deleted the packagedependencies branch October 26, 2022 00:10
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

Successfully merging this pull request may close these issues.

2 participants