Skip to content

Commit ae4d193

Browse files
committed
Preparing release, fixing Maven build
1 parent b441197 commit ae4d193

File tree

2 files changed

+20
-12
lines changed

2 files changed

+20
-12
lines changed

README.md

+3-6
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[![Maven Central](https://img.shields.io/maven-central/v/net.tascalate/net.tascalate.concurrent.svg)](https://search.maven.org/artifact/net.tascalate/net.tascalate.concurrent/0.9.1/jar) [![GitHub release](https://img.shields.io/github/release/vsilaev/tascalate-concurrent.svg)](https://github.com/vsilaev/tascalate-concurrent/releases/tag/0.9.1) [![license](https://img.shields.io/github/license/vsilaev/tascalate-concurrent.svg)](http://www.apache.org/licenses/LICENSE-2.0.txt)
1+
[![Maven Central](https://img.shields.io/maven-central/v/net.tascalate/net.tascalate.concurrent.svg)](https://search.maven.org/artifact/net.tascalate/net.tascalate.concurrent/0.9.2/jar) [![GitHub release](https://img.shields.io/github/release/vsilaev/tascalate-concurrent.svg)](https://github.com/vsilaev/tascalate-concurrent/releases/tag/0.9.2) [![license](https://img.shields.io/github/license/vsilaev/tascalate-concurrent.svg)](http://www.apache.org/licenses/LICENSE-2.0.txt)
22
# tascalate-concurrent
33
The library provides an implementation of the [CompletionStage](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletionStage.html) interface and related classes these are designed to support long-running blocking tasks (typically, I/O bound). This functionality augments the sole Java 8 built-in implementation, [CompletableFuture](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html), that is primarily supports computational tasks. Also, the library helps with numerous asynchronous programing challenges like handling timeouts, retry/poll functionality, orchestrating results of multiple concurrent computations and similar.
44

@@ -12,7 +12,7 @@ New name:
1212
<dependency>
1313
<groupId>net.tascalate</groupId>
1414
<artifactId>net.tascalate.concurrent</artifactId>
15-
<version>0.9.1</version> <!-- Any version above 0.8.0, the latest one is recommended -->
15+
<version>0.9.2</version> <!-- Any version above 0.8.0, the latest one is recommended -->
1616
</dependency>
1717
```
1818
Old Name
@@ -23,9 +23,6 @@ Old Name
2323
<version>0.7.1</version>
2424
</dependency>
2525
```
26-
**IMPORTANT!**
27-
Don't use release 0.9.0, use [0.9.1](https://github.com/vsilaev/tascalate-concurrent/releases/tag/0.9.1) instead -- the previous one is severely broken, see release notes for 0.9.1.
28-
2926
# Why a CompletableFuture is not enough?
3027
There are several shortcomings associated with [CompletableFuture](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html) implementation that complicate its usage for real-life asynchronous programming, especially when you have to work with I/O-bound interruptible tasks:
3128
1. `CompletableFuture.cancel()` [method](https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html#cancel-boolean-) does not interrupt underlying thread; it merely puts future to exceptionally completed state. So even if you use any blocking calls inside functions passed to `thenApplyAsync` / `thenAcceptAsync` / etc - these functions will run till the end and never will be interrupted. Please see [CompletableFuture can't be interrupted](http://www.nurkiewicz.com/2015/03/completablefuture-cant-be-interrupted.html) by Tomasz Nurkiewicz.
@@ -41,7 +38,7 @@ To use a library you have to add a single Maven dependency
4138
<dependency>
4239
<groupId>net.tascalate</groupId>
4340
<artifactId>net.tascalate.concurrent</artifactId>
44-
<version>0.9.1</version>
41+
<version>0.9.2</version>
4542
</dependency>
4643
```
4744
# What is inside?

pom.xml

+17-6
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>net.tascalate</groupId>
88
<artifactId>net.tascalate.concurrent</artifactId>
9-
<version>0.9.2-SNAPSHOT</version>
9+
<version>0.9.2</version>
1010
<packaging>jar</packaging>
1111

1212
<name>Tascalate Concurrent</name>
@@ -69,7 +69,7 @@
6969
<plugin>
7070
<groupId>org.apache.maven.plugins</groupId>
7171
<artifactId>maven-source-plugin</artifactId>
72-
<version>3.0.1</version>
72+
<version>3.2.0</version>
7373
<executions>
7474
<execution>
7575
<id>attach-sources</id>
@@ -82,7 +82,14 @@
8282
<plugin>
8383
<groupId>org.apache.maven.plugins</groupId>
8484
<artifactId>maven-javadoc-plugin</artifactId>
85-
<version>3.0.1</version>
85+
<version>3.2.0</version>
86+
<configuration>
87+
<jdkToolchain>
88+
<version>1.8</version>
89+
<vendor>Oracle</vendor>
90+
</jdkToolchain>
91+
<sourceFileExcludes>module-info.java</sourceFileExcludes>
92+
</configuration>
8693
<executions>
8794
<execution>
8895
<id>attach-javadocs</id>
@@ -156,14 +163,18 @@
156163
<plugin>
157164
<groupId>org.apache.maven.plugins</groupId>
158165
<artifactId>maven-compiler-plugin</artifactId>
159-
<version>3.8.0</version>
166+
<version>3.8.1</version>
160167
<executions>
161168
<execution>
162169
<id>default-compile</id>
163170
<goals>
164171
<goal>compile</goal>
165172
</goals>
166173
<configuration>
174+
<jdkToolchain>
175+
<version>12</version>
176+
<vendor>Oracle</vendor>
177+
</jdkToolchain>
167178
<excludes>
168179
<exclude>module-info.java</exclude>
169180
</excludes>
@@ -181,12 +192,12 @@
181192
<plugin>
182193
<groupId>org.apache.maven.plugins</groupId>
183194
<artifactId>maven-jar-plugin</artifactId>
184-
<version>3.1.1</version>
195+
<version>3.2.0</version>
185196
</plugin>
186197
<plugin>
187198
<groupId>org.apache.maven.plugins</groupId>
188199
<artifactId>maven-surefire-plugin</artifactId>
189-
<version>2.22.1</version>
200+
<version>3.0.0-M5</version>
190201
<configuration>
191202
<includes>
192203
<include>**/*TestSuite.java</include>

0 commit comments

Comments
 (0)