-
Notifications
You must be signed in to change notification settings - Fork 7.6k
Upgrade Gradle & Build-Time dependencies to allow building with JDK 11 #6585
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
Comments
Upgrading Gradle has the risk of breaking the release process. The current setup works well. There are separate repositories of mine,
which specify a build matrix for further testing. |
How can we test this properly?
Unless you try gradle composite builds, e.g.:
This error is caused by AnimalSniffer; here, gradle 5.5.1 is forced by the application project (RxTest). If JDK 11 is required by the application, we can't build it that way. Of course, one can always build RxJava separately and import the JAR file, but that's less comfortable. If RxJava could be built with JDK 11, both projects can be comfortably compiled by IDEs (e.g. IDEA) as a composite build just by importing them. Or is there another way? |
You can't. I'd have to prepare a new release over and over. Also the OSGi parts (that Why do you want to build it with Java 11? A proper release requires CI, which works right now so no reason to upgrade there. Do you use custom compiled builds of RxJava? |
Okay, sorry, wasn't aware of that. My modifications looked harmless enough...
Mostly to allow composite builds, and in order to not have to specify JDK 8 every time :)
Yes, I'm trying to improve the error handling - if/when I get it to work, is there interest in a PR? |
What kind of improvements? Error handling is delicate and what may seem working for you locally could cause problems in general. |
I noticed :) As asked on SO, there appears to be no consistent way of freeing resources (e.g. files) associated with items. For example, |
That level of resource awareness is not part of RxJava and requires a completely different architecture. I've experimented with it separately and it was extremely tedious. |
Hm, what is it part of? How can the example on SO be made to work, short of avoiding concurrency altogether? |
You have to bring the computation to the resource so its lifecycle is serialized with operations to be performed on it. It can get quite complicated. |
Okay... I might try to put something together just because. In the meantime, I may have found another bug... |
Closing via #6632 |
I would like to propose updating some build-time dependencies to their respective recent versions:
This would allow us to run builds on JDK 11. Unlike #6317, the target/source compatibility versions could be kept, keeping backwards compatibility of the built library. However, we couldn't build on JDK 7 anymore, since Gradle 5.5.1 requires at least JDK 8.
The text was updated successfully, but these errors were encountered: