CombineExt provides a collection of operators, publishers and utilities for Combine, that are not provided by Apple themselves, but are common in other Reactive Frameworks and standards.
I've been using CombineExt extensively in my projects and found it incredibly valuable.
Recently, I encountered a memory leak issue with PassthroughRelay. Upon replacing it with PassthroughSubject, the retain cycle disappeared.
It appears that PassthroughRelay fails to release its subscriptions upon receiving completion, as similarly described in this PR #85.
I've come up with a potential solution for this issue and confirmed its resolution in my project, but I'm not fully proficient with Combine. So, any comments or suggestions would be greatly appreciated.
Hello everyone,
I've been using CombineExt extensively in my projects and found it incredibly valuable. Recently, I encountered a memory leak issue with
PassthroughRelay
. Upon replacing it withPassthroughSubject
, the retain cycle disappeared.It appears that
PassthroughRelay
fails to release its subscriptions upon receiving completion, as similarly described in this PR #85.I've come up with a potential solution for this issue and confirmed its resolution in my project, but I'm not fully proficient with Combine. So, any comments or suggestions would be greatly appreciated.
Original
Subscription
’scancel
method:Solution: