Skip to content

JDK9 artifact/converter naming #401

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

Closed
viktorklang opened this issue Oct 31, 2017 · 10 comments
Closed

JDK9 artifact/converter naming #401

viktorklang opened this issue Oct 31, 2017 · 10 comments

Comments

@viktorklang
Copy link
Contributor

viktorklang commented Oct 31, 2017

Hey,

so we just now merged the "final bits" for the JDK9 Flow bridge/adapter jar as well as the TCK for java.util.concurrent.Flow.

Now, there are some open questions that we need to lock down now, before we cut the releases:

  1. Naming conventions on converters:
    Current scheme: toX (toSubscriber, toPublisher, toProcessor) and toFlowX (toFlowSubsriber, toFlowPublisher, toFlowProcessor)
    Current rationale: harmonizes with the types: X and Flow.X
  2. Naming of converter class.
    Current name: The converters are currently located in a class named org.reactivestreams.ReactiveStreamsFlowBridge
  3. Naming of converter jar
    Current artifact name is reactive-streams-flow-bridge
    Current rationale: it is intended to bridge implementations in both directions

@reactive-streams/contributors I'd like for us to settle the naming swiftly and with resolve (can we aim for within a week?), so if you have counter proposals, please speak now of forever hold your peace. :)

@viktorklang
Copy link
Contributor Author

viktorklang commented Oct 31, 2017

One possible proposal is:

  1. keep toX, toFlowX
  2. Rename converter class to org.reactivestreams.Adapt
  3. Rename converter jar to reactive-streams-flow-adapter

Rationale: Since it is located in the org.reactivestreams-package it seems like it would be good to keep the name of the class short and to the point. The jar would then be named after what it does.

@shenghaiyang
Copy link
Contributor

Maybe like this? :)

<dependency>
  <groupId>org.reactivestreams</groupId>
  <artifactId>adapter-flow</artifactId>
</dependency>

@viktorklang
Copy link
Contributor Author

@shenghaiyang All the other artifacts start with reactive-streams so it would seem asymmetric to change that. :)

@ktoso
Copy link
Contributor

ktoso commented Nov 1, 2017

  1. The toPublisher / toFlowPublisher are idea, it's good to have the name in there and that plays well with the Flow mnemonic, it's also short. The alternatives were with including "ReactiveStreams" or "RS" which is a bit weird.

  2. In Java I'm usually a bit afraid to take "the good names" (Adapt), since conflicting in names is a pain in Java (no import renames like Scala etc). Those methods are likely to be used via a static import anyway I think, so the name does not matter too much. Sure it reads nice and fluently, but that's not really what this lib is about. Would rather use a boring name like ReactiveStreamsAdapters or something like that, also easier to find using autocompletion or searching-for-classname.

  3. Module name sounds good, should align with the above, but that's likely good. -adapters I guess would be my preferred, it's not a single adapter, but each for each type. Other ideas would be -compat but that's perhaps meh, and does not really explain what exacly it is, so -adapters win AFAICS.

Hope this helps :)

@viktorklang
Copy link
Contributor Author

@ktoso I agree with your point number 2. I'm fine with pluralizing adapter in the jarname.

@ktoso
Copy link
Contributor

ktoso commented Nov 1, 2017

👍

@viktorklang
Copy link
Contributor Author

@ktoso Would org.reactivestreams.FlowAdapters make sense?

@ktoso
Copy link
Contributor

ktoso commented Nov 2, 2017

Nice idea, reads great 👍

@viktorklang
Copy link
Contributor Author

@reactive-streams/contributors I created #402 as a concrete proposal of name changes. Please provide some counter proposals, or 👍's so we can ship the JDK9 TCK and interop pieces as soon as possible. (Would be nice with an RC1 within a week or so)

@viktorklang
Copy link
Contributor Author

Closing as changes were merged without additional comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants