-
Notifications
You must be signed in to change notification settings - Fork 3k
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
RxAndroid Build #2
Comments
How do the other modules do it, like RxScala? Don't really have an opinion on this beyond it being consistent across the Rx* family of libraries. |
The languages will be RxLanguage. Non-language modules are up for debate. Some small ones should likely just be rxjava-[name] as they are just extensions that didn't belong in core. I think RxAndroid is good, similar to RxNetty. |
👍 |
Related, sort of: how are releases managed? If RxAndroid has a life-cycle of its own, where will the releases be hosted (Sonatype OSS?) and are we able to push new versions ourselves? |
As a committer on this project you'll be free to release to Maven Central whenever you choose. @quidryan and I are working through the final issues and decisions right now with RxJava and will then finish it on all other projects. Currently we are using CloudBees+Jenkins and then Bintray/Sonatype to get to JCenter and Maven Central. I really do not like CloudBees+Jenkins though so am seriously looking at TravisCI which I'm liking far better so far. Either way though it will involve Bintray/Sonatype which the Gradle plugin from @quidryan takes care of. We have all the credentials, IDs etc in place ... just getting the minutiae all figured out (for example, I released 1.0.0-rc.2 of RxJava last night but it is not on Maven Central yet ... something wrong along the flow). |
Is the Right now all I see is |
Currently familiarizing myself with new build tool chain. I wonder what the best way is to install a non-SNAPSHOT build to my local Maven cache? Some context: Long story short, I need to create a compile time dependency to RxAndroid, but it needs to be able to point to pre-release builds, otherwise we wouldn't be able to run these tests before actually releasing something. I looked at the Nebula RxJava plugin sources and spotted a publish plugin which appears to be used for that? I then tried to Any ideas? |
|
I tried to create it as a submodule first, and it would then fail the entire build. It might have been a different problem, I can investigate more.
To clarify, this is what I see in my Maven repo after running
|
On the submodule thing. As soon as I try to add an Android application project (which the acceptance tests are) to the RxAndroid project as a submodule, the build fails with this message:
i.e. it suddenly cannot find the |
Did you create the submodule version in a branch that I could look at? One thing the rxjava-project plugin does is insist that a multi-module build a "root" project and any concrete projects are below. E.g.
I'm unsure what would happen if you just put rxandroid-acceptance below rxandroid. |
I just pushed this: #10 |
I fixed the RxAndroid version to 0.1 for now. That's just so I have something to work with. Happy to switch to any version scheme Netflix is suggesting. That PR does not add the tests as a submodule. But as soon as you |
(the version will be calculated from the git tag history, you shouldn't need a version) I made a multi-project out of your branch, and I see the error concerning the Java plugin. That comes from the performance code in rx projects. And that's because it uses the shadow plugin that forces the Java Plugin, so clearly that's the source of the problem. I'll see what I can do to disable that plugin. |
I just didn't apply the rxjava project plugin and everything looks fine. Would you like me to push to your branch or another one? |
Oh okay. I assumed applying the rxjava project plugin was mandatory for the contrib projects? Haven't looked to closely at what it does, but it appears to inject config for release builds. |
Push away :-) |
It's primarily for publishing, and I'm assuming that you don't need to On Tue, Sep 9, 2014 at 8:20 AM, Matthias Käppler notifications@github.com
|
👍 |
Thanks @quidryan ! For some reason the project import now always fails with an obscure Gradle error (that's in IntelliJ 13)
I searched the web for the problem, and there was a similar issue being reported and supposedly fixed in a newer version of IntelliJ. I installed that, but it's still giving me this error. Reading the issue tracker, it seems to be originating in conflicting versions of Guava being used in the Android Gradle plugin and the Gradle tool APIs that ship with IntelliJ? What IDE are you using? |
Pushed and visible on #10. I haven't actually tested with the Android SDK (still downloading). This might also affect publishing, but we can deal with that later. |
Here's the ticket: http://youtrack.jetbrains.com/issue/IDEA-127374 It's the only relevant reference I could find for this error message. |
For this I'm not using an IDE. I typically use IntelliJ. I'll try loading it into an IDE later today. |
Thanks! Really appreciate your help with all this! |
Actually, it fails on the command line too (for me)
I'll keep digging around for more info on this problem. |
Yeah, it's most likely a problem with plugin interop. The error disappears as soon as I take out Any ideas as to what could be causing the friction? Could it be the same issue as reported against IntelliJ, i.e. a conflicting version of Guava used in both the Nebula plugins and the Android Gradle plugin? |
Once I download the SDK, I get that error. Should be straight-forward to work around, just have to find the right version of guava. |
So, this is getting weird. I tried to exclude the Guava dependency from the Android Gradle plugin, but that didn't help. I then double checked whether it would even depend on Guava, and it seems like it doesn't? I looked at https://bintray.com/bintray/jcenter/com.android.tools.build:builder and https://bintray.com/bintray/jcenter/com.android.tools.build:gradle but neither depend on Guava. So either one of these pulls Guava in as a 3rd level dependency, or the problem is elsewhere. |
@austynmahoney yes |
@quidryan Just following up to check if you had time to look into this? I'm kind of stuck. |
@benjchristensen are you okay with me removing the |
If you prefer |
I was going to publish RxAndroid but see that there is a bunch of stuff going on with the other branch. That branch isn't working, and even when I comment out the "acceptance-tests" project the artifact names for rxandroid seem wrong:
|
I think we can go ahead with master for now Ben. The branch introduced This shouldn't stop the project from moving forward, however, so feel free |
Ok. I'll proceed then as RxAndroid 0.21.0 to carry on from rxjava-android 0.20. |
RxAndroid 0.21 has been released. https://github.com/ReactiveX/RxAndroid/releases/tag/v0.21.0 |
Should the Jar be named rxjava-android-x.y.z.jar or rxandroid-x.y.z.jar ?
The text was updated successfully, but these errors were encountered: