Closed ehuff700 closed 2 days ago
Hi! Thanks for opening your first issue here! :smile:
Hi, I guess one way is to detect this specific scenario and do not warn if it happens (since it is not a problem). However, I may not have enough time to immediately work on it, since it just prints a warning and does not cause big troubles - but if it causes real bugs feel free to ping me!
Hi @fzyzcjy, like you said this is just a warning and I don't think there are any bugs so this is really a small issue. I could make a PR for it, do you have any pointers on how we would detect a hot reload?
@ehuff700 Hi, thanks for the interest of PR! However, I am not sure whether there is an easy exact way to detect hot restart without any false positives. If there are scenarios when something really goes wrong but we do not realize today and make it non-warning, then we will lose a real warning and thus makes people hard to debug.
Describe the bug
Hey, thank you so much for this project.
I ran into a small issue with flutter hot restart when using a static StreamSink. Essentially on every hot restart the app will print out a "Fail to post message to Dart" message.
The reason why this happens is because when StreamSink is dropped, it calls the
Drop
implementation of the _closer field in it'sStreamSinkBase
struct.My guess is that the infrastructure used to pass the close message is "down" or something along those lines, because the
send_or_warn
consistently fails everytime.I am making this issue to discuss whether the error from
send
should simply be ignored in that specific context, since it doesn't make much sense to usesend_or_warn
(in my opinion).MRE available here: https://github.com/ehuff700/frb-bug-mre.git
Steps to reproduce
Clone the MRE above and run with
flutter run
, observe the error message on hot restart. After debugging I tracked it down to the send_or_warn method in that specificDrop
implementation.Logs
Expected behavior
No response
Generated binding code
No response
OS
No response
Version of
flutter_rust_bridge_codegen
flutter_rust_bridge_codegen 2.0.0-dev.31
Flutter info
No response
Version of
clang++
No response
Additional context
No response