Fixed
Status Update
Comments
yb...@google.com <yb...@google.com>
ne...@gmail.com <ne...@gmail.com> #2
I should probably elaborate on that a bit more here :P. The ideal case would be that data classes written in other modules work the same when consumed. A standard data class (no secondary constructors, `val` properties) works fine when in the same module. The errors produced are also pretty confusing. They'll usually give what they read from the bytecode (constructor params called "var0" or the like) and reports missing setters for fields without names of said fields.
fl...@google.com <fl...@google.com>
fl...@google.com <fl...@google.com>
fl...@google.com <fl...@google.com> #3
I can confirm the bug and the workaround. The same problem arises when you use a data-class from a library with @Embedded
ne...@gmail.com <ne...@gmail.com> #5
given that log, looks like kotlin again not generating proper parameter names for methods.
bo...@gmail.com <bo...@gmail.com> #6
so turns out this is not about kotlin.
does not work w/ javac either because parameter names are not part of the class signature unless compiled w/ debug.
We will need to add a new annotation to support this.
does not work w/ javac either because parameter names are not part of the class signature unless compiled w/ debug.
We will need to add a new annotation to support this.
yb...@google.com <yb...@google.com> #7
True on the javac bit, but for kotlin you should be able to read the parameter names from the `@Metadata` annotations (since the param names are part of the public API in kotlin). There's no public API around this today though admittedly :/
Description
Version used: 1.0.0-alpha2
Looking at the source of LiveDataReactiveStreams.fromPublisher() the Publisher that is passed in is never unsubscribed. This means that the underlying Publisher has no opportunity for releasing resources and stopping work which may result in memory leaks and other bugs. I would have expected the Publisher to be unsubscribed in LiveData onInActive() callback and subscribed in onActive() as this signals that there are consumers interested in the LiveData.
Alternatively I think the publisher should at least be unsubscribed then the associated LifecycleOwner goes away (when the Lifecycle moves to destroyed).