Improve resolver safety and docs#25
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Resolver behavior and public API documentation needed clarification, and README/test hygiene had small inconsistencies.
Solution
Testing
Test Suite 'SwiftEnvironmentPackageTests.xctest' started at 2026-01-15 07:28:11.457.
Test Suite 'IntegrationTests' started at 2026-01-15 07:28:11.457.
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenConnectedInjection_whenGet_shouldAlwaysReturnSameValue]' started.
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenConnectedInjection_whenGet_shouldAlwaysReturnSameValue]' passed (0.003 seconds).
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenConnectedInjection_whenGet_shouldReturnDefault]' started.
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenConnectedInjection_whenGet_shouldReturnDefault]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenSendableInjection_whenGet_shouldAlwaysReturnNewValue]' started.
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenSendableInjection_whenGet_shouldAlwaysReturnNewValue]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenThreeConnectedInjection_whenGet_shouldAlwaysReturnSameValue]' started.
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenThreeConnectedInjection_whenGet_shouldAlwaysReturnSameValue]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenTransientInjection_whenGet_shouldAlwaysReturnNewValue]' started.
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenTransientInjection_whenGet_shouldAlwaysReturnNewValue]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenTwoConnectedInjection_whenGet_shouldAlwaysReturnSameValue]' started.
Test Case '-[SwiftEnvironmentTests.IntegrationTests test_givenTwoConnectedInjection_whenGet_shouldAlwaysReturnSameValue]' passed (0.000 seconds).
Test Suite 'IntegrationTests' passed at 2026-01-15 07:28:11.461.
Executed 6 tests, with 0 failures (0 unexpected) in 0.004 (0.005) seconds
Test Suite 'MacroTests' started at 2026-01-15 07:28:11.461.
Test Case '-[SwiftEnvironmentTests.MacroTests test_givenBasicEntry_whenExpanded_shouldUseBasicExpansion]' started.
Test Case '-[SwiftEnvironmentTests.MacroTests test_givenBasicEntry_whenExpanded_shouldUseBasicExpansion]' passed (0.017 seconds).
Test Suite 'MacroTests' passed at 2026-01-15 07:28:11.479.
Executed 1 test, with 0 failures (0 unexpected) in 0.017 (0.017) seconds
Test Suite 'SingletonInstanceResolverTests' started at 2026-01-15 07:28:11.479.
Test Case '-[SwiftEnvironmentTests.SingletonInstanceResolverTests test_givenQueue_whenResolve_shouldDoItInGivenQueue]' started.
Test Case '-[SwiftEnvironmentTests.SingletonInstanceResolverTests test_givenQueue_whenResolve_shouldDoItInGivenQueue]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.SingletonInstanceResolverTests test_givenResolver_whenResolve_shouldReturnSameInstance]' started.
Test Case '-[SwiftEnvironmentTests.SingletonInstanceResolverTests test_givenResolver_whenResolve_shouldReturnSameInstance]' passed (0.001 seconds).
Test Case '-[SwiftEnvironmentTests.SingletonInstanceResolverTests test_givenValue_whenResolveWrongType_shouldReturnNil]' started.
Test Case '-[SwiftEnvironmentTests.SingletonInstanceResolverTests test_givenValue_whenResolveWrongType_shouldReturnNil]' passed (0.000 seconds).
Test Suite 'SingletonInstanceResolverTests' passed at 2026-01-15 07:28:11.480.
Executed 3 tests, with 0 failures (0 unexpected) in 0.001 (0.001) seconds
Test Suite 'TransientInstanceResolverTests' started at 2026-01-15 07:28:11.480.
Test Case '-[SwiftEnvironmentTests.TransientInstanceResolverTests test_givenQueue_whenResolve_shouldDoItInGivenQueue]' started.
Test Case '-[SwiftEnvironmentTests.TransientInstanceResolverTests test_givenQueue_whenResolve_shouldDoItInGivenQueue]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.TransientInstanceResolverTests test_givenResolver_whenResolve_shouldReturnDifferentInstance]' started.
Test Case '-[SwiftEnvironmentTests.TransientInstanceResolverTests test_givenResolver_whenResolve_shouldReturnDifferentInstance]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.TransientInstanceResolverTests test_givenValue_whenResolveWrongType_shouldReturnNil]' started.
Test Case '-[SwiftEnvironmentTests.TransientInstanceResolverTests test_givenValue_whenResolveWrongType_shouldReturnNil]' passed (0.000 seconds).
Test Suite 'TransientInstanceResolverTests' passed at 2026-01-15 07:28:11.480.
Executed 3 tests, with 0 failures (0 unexpected) in 0.000 (0.000) seconds
Test Suite 'WeakInstanceResolverTests' started at 2026-01-15 07:28:11.481.
Test Case '-[SwiftEnvironmentTests.WeakInstanceResolverTests test_givenQueue_whenResolve_shouldDoItInGivenQueue]' started.
Test Case '-[SwiftEnvironmentTests.WeakInstanceResolverTests test_givenQueue_whenResolve_shouldDoItInGivenQueue]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.WeakInstanceResolverTests test_givenResolver_whenResolve_shouldReturnSameInstance]' started.
Test Case '-[SwiftEnvironmentTests.WeakInstanceResolverTests test_givenResolver_whenResolve_shouldReturnSameInstance]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.WeakInstanceResolverTests test_givenValue_whenResolveAfterReleased_shouldReturnNewInstance]' started.
Test Case '-[SwiftEnvironmentTests.WeakInstanceResolverTests test_givenValue_whenResolveAfterReleased_shouldReturnNewInstance]' passed (0.000 seconds).
Test Case '-[SwiftEnvironmentTests.WeakInstanceResolverTests test_givenValue_whenResolveWrongType_shouldReturnNil]' started.
Test Case '-[SwiftEnvironmentTests.WeakInstanceResolverTests test_givenValue_whenResolveWrongType_shouldReturnNil]' passed (0.000 seconds).
Test Suite 'WeakInstanceResolverTests' passed at 2026-01-15 07:28:11.481.
Executed 4 tests, with 0 failures (0 unexpected) in 0.000 (0.001) seconds
Test Suite 'SwiftEnvironmentPackageTests.xctest' passed at 2026-01-15 07:28:11.481.
Executed 17 tests, with 0 failures (0 unexpected) in 0.023 (0.025) seconds
Test Suite 'All tests' passed at 2026-01-15 07:28:11.481.
Executed 17 tests, with 0 failures (0 unexpected) in 0.023 (0.026) seconds
Test run started.
Testing Library Version: 1501
Target Platform: arm64e-apple-macos14.0
Test run with 0 tests in 0 suites passed after 0.001 seconds.
Docs