Skip to content

Bridge between Reactive-Streams and JDK 9 Flow API #296

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

Merged
merged 6 commits into from
Sep 30, 2017
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 25 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,35 @@
language: java
sudo: required
dist: trusty
#group: edge

script:
- ./gradlew check
cache:
directories:
- $HOME/.gradle
jdk:
- oraclejdk8
- openjdk6

before_install:
- export GRADLE_OPTS=-Xmx1024m

matrix:
include:
- jdk: openjdk7
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we may be OK not running against 6, but let's see what others say hm

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not much option here I think, JDK 6 is less and less supported by Gradle/Travis. As long as the compile target is 6, we should be okay.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

- jdk: oraclejdk8 # JDK 1.8.0_131-b11
- jdk: oraclejdk9 # JDK 9-ea+174 provided by Travis will be replaced by 9+177 in "before_install"
before_install:
- cd ~
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is no longer needed on Travis, jdk: oraclejdk9 switches to 9b181 == GA

- wget http://download.java.net/java/jdk9/archive/177/binaries/jdk-9+177_linux-x64_bin.tar.gz
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI, looks like this has been deleted and needs to be updated whenever there is a newer JDK build.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If HTTP only supported redirects! ;)

- tar -xzf jdk-9+177_linux-x64_bin.tar.gz
- export JAVA_HOME=~/jdk-9
- PATH=$JAVA_HOME/bin:$PATH
- cd -

# Don't let Travis CI execute './gradlew assemble' by default
install:
# Display Gradle, JVM and other versions
- ./gradlew -version

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copied from my PR, could attribute as commit?
#383

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay.

env:
global:
- TERM=dumb
Expand Down
6 changes: 3 additions & 3 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ subprojects {
apply plugin: "osgi"

group = "org.reactivestreams"
version = "1.0.1-RC2"
version = "1.0.0"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

why?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For back releasing we'd do so separately if needed

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The original PR predated 1.0.1-RC2. I'll restore the version number.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah I see, thanks :)


sourceCompatibility = 1.6
targetCompatibility = 1.6
Expand Down Expand Up @@ -42,11 +42,11 @@ subprojects {
instructionReplace "Bundle-Vendor", "Reactive Streams SIG"
instructionReplace "Bundle-Description", "Reactive Streams API"
instructionReplace "Bundle-DocURL", "http://reactive-streams.org"
instructionReplace "Bundle-Version", "1.0.1-RC2"
instructionReplace "Bundle-Version", "1.0.0"
}
}

if (name in ["reactive-streams", "reactive-streams-tck", "reactive-streams-examples"]) {
if (name in ["reactive-streams", "reactive-streams-tck", "reactive-streams-examples", "reactive-streams-flow-bridge"]) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not to start a bikeshedding exercise, but are we on board with the naming of this artifact?

Options are things like "reactive-streams-flow-compat", "reactive-streams-jdk9-compat", "reactive-streams-jdk9-interop" and the like.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Heh yeah did not want to open that bikeshed as I've bikeshedded quite a lot here already.
Only precedent for such a library would be the https://github.com/scala/scala-java8-compat library I think, and the inclusion of the number there perhaps is sub optimal. So out of the ones you proposed I like reactive-streams-flow-compat I guess, or reactive-streams-java-flow-compat.

It's not super important to me though I guess, so would be interesting to hear or do a quick vote I guess?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about reactive-streams-jsr266-interop?

apply plugin: "maven"
apply plugin: "signing"

Expand Down
1 change: 1 addition & 0 deletions flow-bridge/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/bin
9 changes: 9 additions & 0 deletions flow-bridge/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
description = 'reactive-streams-flow-bridge'

dependencies {
compile project(':reactive-streams')

testCompile project(':reactive-streams-tck')
testCompile group: 'org.testng', name: 'testng', version: '5.14.10'
}
test.useTestNG()
Loading