Skip to content

Commit 189cac4

Browse files
authored
Wip 1.0.2 √ (#30)
* Work-in-progress of release notes for 1.0.2 * Adding javadoc archives for 1.0.2-RC2 * Adding 1.0.2 final javadoc * Updating index to reflect 1.0.2
1 parent 20ce8a7 commit 189cac4

File tree

729 files changed

+472371
-8
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

729 files changed

+472371
-8
lines changed

Diff for: _includes/announce-1.0.2.md

+141
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
Reactive Streams 1.0.2 is here!
2+
===============================
3+
4+
We—the Reactive Streams Special Interest Group—are happy to announce the immediate availability of `Reactive Streams version 1.0.2`.
5+
6+
When we released 1.0.1, we promised that after JDK9 had shipped, we'd release a compatibility/conversion library to seamlessly convert between the `java.util.concurrent.Flow` and the `org.reactivestreams` namespaces.
7+
8+
Not only have we done that in this release—we have also shipped a TCK for implementations of the `java.util.concurrent.Flow` interfaces, so that they now can be verified without having to manually adapt/convert to the `org.reactivestreams` interfaces.
9+
10+
As usual, `1.0.2` is binary, and semantically, compatible with the previous 1.0.x releases of Reactive Streams.
11+
12+
The artifacts, documentation and specifications are released under [Creative Commons Zero](http://creativecommons.org/publicdomain/zero/1.0) into the Public Domain.
13+
14+
Documentation
15+
-------------
16+
17+
* [Specification](https://github.com/reactive-streams/reactive-streams-jvm/tree/v1.0.2#specification)
18+
* [Java API Documentation](http://www.reactive-streams.org/reactive-streams-1.0.2-javadoc)
19+
[Flow Adapters Java API Documentation](http://www.reactive-streams.org/reactive-streams-flow-adapters-1.0.2-javadoc)
20+
* [TCK README](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.2/tck/README.md)
21+
* [Flow TCK README](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.2/tck-flow/README.md)
22+
23+
Artifacts
24+
---------
25+
26+
* *the Reactive Streams interfaces*
27+
* `org.reactivestreams:reactive-streams:1.0.2`
28+
29+
* *the Reactive Streams interfaces*
30+
* `org.reactivestreams:reactive-streams-flow-adapters:1.0.2`
31+
32+
* *the Reactive Streams TCK*
33+
* `org.reactivestreams:reactive-streams-tck:1.0.2`
34+
35+
* *the Reactive Streams Flow TCK*
36+
* `org.reactivestreams:reactive-streams-tck-flow:1.0.2`
37+
38+
* *Example implementations—documented & verified—to draw inspiration from*
39+
* `org.reactivestreams:reactive-streams-examples:1.0.2`
40+
41+
Credits
42+
-------
43+
44+
We'd like to thank everyone involved, all contributors and everyone who has given feedback during the development of this project.
45+
46+
## Highlights:
47+
48+
- Specification
49+
+ Glossary term added for `Thread-safe`
50+
+ No breaking/semantical changes
51+
+ Rule [clarifications](#specification-clarifications-102-rc1)
52+
- Interfaces
53+
+ No changes
54+
- Technology Compatibility Kit (TCK)
55+
+ Improved [coverage](#tck-alterations-102-rc1)
56+
* Supports Publishers/Processors which do [coordinated emission](http://www.reactive-streams.org/reactive-streams-tck-1.0.2-javadoc/org/reactivestreams/tck/PublisherVerification.html#doesCoordinatedEmission--).
57+
+ Improved JavaDoc
58+
- Examples
59+
+ New example [RangePublisher](http://www.reactive-streams.org/reactive-streams-examples-1.0.2-javadoc/org/reactivestreams/example/unicast/RangePublisher.html)
60+
- Artifacts
61+
+ NEW! [Flow adapters](#flow-adapters)
62+
+ NEW! [Flow TCK](#flow-tck)
63+
+ Java 9 [Automatic-Module-Name](#automatic-module-name) added for all artifacts
64+
65+
## Specification clarifications 1.0.2
66+
67+
## Subscriber Rule 2
68+
69+
**1.0.1:** The intent of this rule is that a Subscriber should not obstruct the progress of the Publisher from an execution point-of-view. In other words, the Subscriber should not starve the Publisher from CPU cycles.
70+
71+
**1.0.2:** The intent of this rule is that a Subscriber should not obstruct the progress of the Publisher from an execution point-of-view. In other words, the Subscriber should not starve the Publisher from receiving CPU cycles.
72+
73+
## Subscriber Rule 8
74+
75+
**1.0.1:** The intent of this rule is to highlight that there may be a delay between calling `cancel` the Publisher seeing that.
76+
77+
**1.0.2** The intent of this rule is to highlight that there may be a delay between calling `cancel` and the Publisher observing that cancellation.
78+
79+
## Flow adapters
80+
81+
An adapter library has been created to convert `org.reactivestreams` to `java.util.concurrent.Flow` and vice versa. Read more about it [here](http://www.reactive-streams.org/reactive-streams-flow-adapters-1.0.2-javadoc)
82+
83+
~~~xml
84+
<dependency>
85+
<groupId>org.reactivestreams</groupId>
86+
<artifactId>reactive-streams-flow-adapters</artifactId>
87+
<version>1.0.2</version>
88+
</dependency>
89+
~~~
90+
91+
## Flow TCK
92+
93+
A TCK artifact has been created to allow for direct TCK verification of `java.util.concurrent.Flow` implementations. Read more about it [here](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.2/tck-flow/README.md)
94+
95+
~~~xml
96+
<dependency>
97+
<groupId>org.reactivestreams</groupId>
98+
<artifactId>reactive-streams-tck-flow</artifactId>
99+
<version>1.0.2</version>
100+
</dependency>
101+
~~~
102+
103+
## Automatic Module Name
104+
105+
* `org.reactivestreams:reactive-streams` => `org.reactivestreams`
106+
* `org.reactivestreams:reactive-streams-examples` => `org.reactivestreams.examples`
107+
* `org.reactivestreams:reactive-streams-tck` => `org.reactivestreams.tck`
108+
* `org.reactivestreams:reactive-streams-flow-adapters` => `org.reactivestreams.flowadapters`
109+
* `org.reactivestreams:reactive-streams-tck-flow` => `org.reactivestreams.tckflow`
110+
111+
## TCK alterations 1.0.2
112+
113+
- Added support for Publisher verification of Publishers who do coordinated emission, i.e. where elements only are emitted after all current Subscribers have signalled demand. ([#284](https://github.com/reactive-streams/reactive-streams-jvm/issues/284))
114+
- The `SubscriberWhiteboxVerification` has been given more user friendly error messages in the case where the user forgets to call `registerOnSubscribe`. (#416)[https://github.com/reactive-streams/reactive-streams-jvm/pull/416]
115+
116+
## Contributors
117+
+ Roland Kuhn [(@rkuhn)](https://github.com/rkuhn)
118+
+ Ben Christensen [(@benjchristensen)](https://github.com/benjchristensen)
119+
+ Viktor Klang [(@viktorklang)](https://github.com/viktorklang)
120+
+ Stephane Maldini [(@smaldini)](https://github.com/smaldini)
121+
+ Stanislav Savulchik [(@savulchik)](https://github.com/savulchik)
122+
+ Konrad Malawski [(@ktoso)](https://github.com/ktoso)
123+
+ Slim Ouertani [(@ouertani)](https://github.com/ouertani)
124+
+ Martynas Mickevičius [(@2m)](https://github.com/2m)
125+
+ Luke Daley [(@ldaley)](https://github.com/ldaley)
126+
+ Colin Godsey [(@colinrgodsey)](https://github.com/colinrgodsey)
127+
+ David Moten [(@davidmoten)](https://github.com/davidmoten)
128+
+ Brian Topping [(@briantopping)](https://github.com/briantopping)
129+
+ Rossen Stoyanchev [(@rstoyanchev)](https://github.com/rstoyanchev)
130+
+ Björn Hamels [(@BjornHamels)](https://github.com/BjornHamels)
131+
+ Jake Wharton [(@JakeWharton)](https://github.com/JakeWharton)
132+
+ Anthony Vanelverdinghe[(@anthonyvdotbe)](https://github.com/anthonyvdotbe)
133+
+ Kazuhiro Sera [(@seratch)](https://github.com/seratch)
134+
+ Dávid Karnok [(@akarnokd)](https://github.com/akarnokd)
135+
+ Evgeniy Getman [(@egetman)](https://github.com/egetman)
136+
+ Ángel Sanz [(@angelsanz)](https://github.com/angelsanz)
137+
+ (new) shenghaiyang [(@shenghaiyang)](https://github.com/shenghaiyang)
138+
+ (new) Kyle Thomson [(@kiiadi)](https://github.com/kiiadi)
139+
140+
*Warm regards,
141+
the Reactive Streams Special Interest Group*

Diff for: _includes/index.md

+27-8
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ Reactive Streams is an initiative to provide a standard for asynchronous stream
44

55
## NEWS: JDK9 `java.util.concurrent.Flow`
66

7-
The interfaces available in JDK9's [java.util.concurrent.Flow](https://docs.oracle.com/javase/9/docs/api/java/util/concurrent/Flow.html), are 1:1 semantically equivalent to their respective Reactive Streams counterparts. Which means that there will be a migratory period, while libraries move to adopt the new types in the JDK, however this period is expected to be short - due to the full semantic equivalence of the libraries, as well as the upcoming Reactive Streams release of a converter library as well as TCK compatible directly with the JDK types.
7+
The interfaces available in JDK9's [java.util.concurrent.Flow](https://docs.oracle.com/javase/9/docs/api/java/util/concurrent/Flow.html), are 1:1 semantically equivalent to their respective Reactive Streams counterparts. This means that there will be a migratory period, while libraries move to adopt the new types in the JDK, however this period is expected to be short - due to the full semantic equivalence of the libraries, as well as the Reactive Streams <-> Flow adapter library as well as a TCK compatible directly with the JDK Flow types.
88

9-
Read [this](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.1/README.md) if you are interested in learning more about `Reactive Streams` for the JVM.
9+
Read [this](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.2/README.md) if you are interested in learning more about `Reactive Streams` for the JVM.
1010

1111
## The Problem
1212

@@ -34,28 +34,47 @@ The basic semantics define how the transmission of stream elements is regulated
3434

3535
This working group applies the basic semantics to a set of programming interfaces whose main purpose is to allow the interoperation of different conforming implementations and language bindings for passing streams between objects and threads within the JVM, using the shared memory heap.
3636

37-
As of *August 9, 2017* we have released version 1.0.1 of Reactive Streams for the JVM, including Java [API](/reactive-streams-1.0.1-javadoc), a textual [Specification](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.1/README.md#specification), a [TCK](/reactive-streams-tck-1.0.1-javadoc) and [implementation examples](/reactive-streams-examples-1.0.1-javadoc). Corresponding code artifacts are available on Maven Central:
37+
As of *December 19th, 2017* we have released version 1.0.2 of Reactive Streams for the JVM, including Java [API](/reactive-streams-1.0.2-javadoc), a textual [Specification](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.2/README.md#specification), a [TCK](/reactive-streams-tck-1.0.2-javadoc) and [implementation examples](/reactive-streams-examples-1.0.2-javadoc).
38+
39+
New in 1.0.2 is the JDK9 [adapter library](reactive-streams-flow-adapters-1.0.2-javadoc) and the JDK9 [TCK for Flow](reactive-streams-tck-flow-1.0.2-javadoc).
40+
41+
Corresponding code artifacts are available on Maven Central:
3842

3943
<dependency>
4044
<groupId>org.reactivestreams</groupId>
4145
<artifactId>reactive-streams</artifactId>
42-
<version>1.0.1</version>
46+
<version>1.0.2</version>
4347
</dependency>
4448
<dependency>
4549
<groupId>org.reactivestreams</groupId>
4650
<artifactId>reactive-streams-tck</artifactId>
47-
<version>1.0.1</version>
51+
<version>1.0.2</version>
52+
</dependency>
53+
<dependency>
54+
<groupId>org.reactivestreams</groupId>
55+
<artifactId>reactive-streams-flow-adapters</artifactId>
56+
<version>1.0.2</version>
57+
</dependency>
58+
<dependency>
59+
<groupId>org.reactivestreams</groupId>
60+
<artifactId>reactive-streams-tck-flow</artifactId>
61+
<version>1.0.2</version>
62+
</dependency>
63+
<dependency>
64+
<groupId>org.reactivestreams</groupId>
65+
<artifactId>reactive-streams-examples</artifactId>
66+
<version>1.0.2</version>
4867
</dependency>
4968

50-
The source code for these is available on [github](https://github.com/reactive-streams/reactive-streams-jvm/tree/v1.0.1). Please use github issues for providing feedback.
69+
The source code for these is available on [github](https://github.com/reactive-streams/reactive-streams-jvm/tree/v1.0.2). Please use github issues for providing feedback.
5170

5271
All artifacts and specifications are released under [Creative Commons Zero](http://creativecommons.org/publicdomain/zero/1.0) into the Public Domain.
5372

54-
Read more about `Reactive Streams 1.0.1` for the JVM [here](announce-1.0.1).
73+
Read more about `Reactive Streams 1.0.2` for the JVM [here](announce-1.0.2).
5574

5675
##### A Note for Implementors
5776

58-
To get started implementing the final specification, it is recommended to start by reading the [README](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.1/README.md) and the [Java API documentation](/reactive-streams-1.0.1-javadoc), then taking a look at the [Specification](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.1/README.md#specification) then taking a look at the [TCK](https://github.com/reactive-streams/reactive-streams-jvm/tree/v1.0.1/tck) and the [example implementations](https://github.com/reactive-streams/reactive-streams-jvm/tree/v1.0.1/examples/src/main/java/org/reactivestreams/example/unicast). If you have an issue with any of the above, please take a look at [closed issues](https://github.com/reactive-streams/reactive-streams-jvm/issues?page=1&state=closed) and then open a [new issue](https://github.com/reactive-streams/reactive-streams-jvm/issues/new) if it has not already been answered.
77+
To get started implementing the final specification, it is recommended to start by reading the [README](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.2/README.md) and the [Java API documentation](/reactive-streams-1.0.2-javadoc), then taking a look at the [Specification](https://github.com/reactive-streams/reactive-streams-jvm/blob/v1.0.2/README.md#specification) then taking a look at the [TCK](https://github.com/reactive-streams/reactive-streams-jvm/tree/v1.0.2/tck) and the [example implementations](https://github.com/reactive-streams/reactive-streams-jvm/tree/v1.0.2/examples/src/main/java/org/reactivestreams/example/unicast). If you have an issue with any of the above, please take a look at [closed issues](https://github.com/reactive-streams/reactive-streams-jvm/issues?page=1&state=closed) and then open a [new issue](https://github.com/reactive-streams/reactive-streams-jvm/issues/new) if it has not already been answered.
5978

6079
This work was performed in the [reactive-streams-jvm](https://github.com/reactive-streams/reactive-streams-jvm/) repository.
6180

Diff for: announce-1.0.2.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
layout: index
3+
---
4+
5+
{% include announce-1.0.2.md %}
+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Manifest-Version: 1.0
2+
+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2+
<!-- NewPage -->
3+
<html lang="en">
4+
<head>
5+
<!-- Generated by javadoc -->
6+
<title>All Classes (reactive-streams 1.0.2-RC2 API)</title>
7+
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
8+
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
9+
<link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
10+
<script type="text/javascript" src="script.js"></script>
11+
<script type="text/javascript" src="jquery/jszip/dist/jszip.min.js"></script>
12+
<script type="text/javascript" src="jquery/jszip-utils/dist/jszip-utils.min.js"></script>
13+
<!--[if IE]>
14+
<script type="text/javascript" src="jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
15+
<![endif]-->
16+
<script type="text/javascript" src="jquery/jquery-1.10.2.js"></script>
17+
<script type="text/javascript" src="jquery/jquery-ui.js"></script>
18+
</head>
19+
<body>
20+
<h1 class="bar">All&nbsp;Classes</h1>
21+
<div class="indexContainer">
22+
<ul>
23+
<li><a href="org/reactivestreams/Processor.html" title="interface in org.reactivestreams" target="classFrame"><span class="interfaceName">Processor</span></a></li>
24+
<li><a href="org/reactivestreams/Publisher.html" title="interface in org.reactivestreams" target="classFrame"><span class="interfaceName">Publisher</span></a></li>
25+
<li><a href="org/reactivestreams/Subscriber.html" title="interface in org.reactivestreams" target="classFrame"><span class="interfaceName">Subscriber</span></a></li>
26+
<li><a href="org/reactivestreams/Subscription.html" title="interface in org.reactivestreams" target="classFrame"><span class="interfaceName">Subscription</span></a></li>
27+
</ul>
28+
</div>
29+
</body>
30+
</html>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2+
<!-- NewPage -->
3+
<html lang="en">
4+
<head>
5+
<!-- Generated by javadoc -->
6+
<title>All Classes (reactive-streams 1.0.2-RC2 API)</title>
7+
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
8+
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
9+
<link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
10+
<script type="text/javascript" src="script.js"></script>
11+
<script type="text/javascript" src="jquery/jszip/dist/jszip.min.js"></script>
12+
<script type="text/javascript" src="jquery/jszip-utils/dist/jszip-utils.min.js"></script>
13+
<!--[if IE]>
14+
<script type="text/javascript" src="jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
15+
<![endif]-->
16+
<script type="text/javascript" src="jquery/jquery-1.10.2.js"></script>
17+
<script type="text/javascript" src="jquery/jquery-ui.js"></script>
18+
</head>
19+
<body>
20+
<h1 class="bar">All&nbsp;Classes</h1>
21+
<div class="indexContainer">
22+
<ul>
23+
<li><a href="org/reactivestreams/Processor.html" title="interface in org.reactivestreams"><span class="interfaceName">Processor</span></a></li>
24+
<li><a href="org/reactivestreams/Publisher.html" title="interface in org.reactivestreams"><span class="interfaceName">Publisher</span></a></li>
25+
<li><a href="org/reactivestreams/Subscriber.html" title="interface in org.reactivestreams"><span class="interfaceName">Subscriber</span></a></li>
26+
<li><a href="org/reactivestreams/Subscription.html" title="interface in org.reactivestreams"><span class="interfaceName">Subscription</span></a></li>
27+
</ul>
28+
</div>
29+
</body>
30+
</html>

0 commit comments

Comments
 (0)