-
Notifications
You must be signed in to change notification settings - Fork 595
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
Add Stream#compileInterruptible
to guarantee use of Concurrent compiler
#2678
Conversation
Another option would be a no-op |
Of the two options, I prefer |
I see this as both an upside and a downside - adding this doesn't automatically provide any extra safety, but it lets users decide if they're concerned enough to opt in to it. (And doing so just requires a simple find/replace). It seems at least worth providing that option.
I lean in favour of that approach but it comes at the cost if inconveniencing users - it could be made more ergonomic, though, by having a separate compile method ( |
That's an interesting idea. If we go that route, I'd try to convince doobie to add an implicit Now that we've merged #2657, can we come up with some sample expressions which exhibit unexpected / undesirable behavior? I'm curious if there are any left. |
Wouldn't that just result in |
Yep. |
Another approach is to use a scalafix rule to lint for use of the sync compiler - we did this for http4s in http4s/http4s#5536 |
This is a big problem for me because it raises the learning curve of the library and it provides another point where a scala dev is forced to make a decision that both 1) requires them to have a very firm grasp of library details (this is hard for onboarding) and 2) the result of the decision in many cases just doesn't matter I'm not a fan of adding this method. |
I think we have rough consensus to not add this API at this point. Closing this for now but let's reopen if we learn more -- in particular, if we find any examples with surprising behavior as a result of using a sync constraint. |
No description provided.