Skip to content
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

Feat/gradle 6 #2

Merged
merged 7 commits into from
Jan 13, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
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
61 changes: 25 additions & 36 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,77 +1,66 @@
# DurianRx releases

### Version 3.1.0-SNAPSHOT - TBD ([javadoc](http://diffplug.github.io/durian-rx/javadoc/snapshot/) [snapshot](https://oss.sonatype.org/content/repositories/snapshots/com/diffplug/durian/durian-rx/))

### Version 3.0.1 - November 12th 2019 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/3.0.1/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/3.0.1/view))
## [Unreleased]

## [3.0.1] - 2019-11-12
* RxExecutor is now more consistent about failure - if the `onSuccess` throws an exception, it will always be passed to the `onFailure` handler as a `CompletionException`.

### Version 3.0.0 - August 1st 2018 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/3.0.0/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/3.0.0/view))

## [3.0.0] - 2018-08-01
* `DisposableEar`'s final name is `Chit`.
* Added `Rx.sync(RxBox<T> a, RxBox<T> b)`.
* Added `MultiSelectModel` for a UI-independent multi-selection model.

### Version 3.0.0.BETA2 - March 8th 2017 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/3.0.0.BETA2/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/3.0.0.BETA2/view))

## [3.0.0.BETA2] - 2017-03-08
* Got rid of the `RxListener.IsLogging` marker interface.
* Made `RxListener.isLogging()` public, and added `RxListener.onErrorDontLog(Throwable)`.
+ Combined, these methods make it possible for an external framework to detect and hijack logging for a specific listener.
+ Used by the Agent framework in DiffPlug 2+
+ Combined, these methods make it possible for an external framework to detect and hijack logging for a specific listener.
+ Used by the Agent framework in DiffPlug 2+
* Added `CasBox.getAndSet()`.
* `DispoableEar.Settable` now allows `dispose()` to be called multiple times, to comply with the `Disposable` contract.
* An `RxJavaCompat` layer for turning `Single` and `Maybe` into `CompletionStage`.

### Version 3.0.0.BETA - February 7th 2017 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/3.0.0.BETA/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/3.0.0.BETA/view))

## [3.0.0.BETA] - 2017-02-07
* Added `DisposableEar` and `GuardedExecutor`.
* Fixed a bug in `ForwardingBox.modify()`.
* `RxExecutor` now exposes the underlying `Executor`, `Scheduler`, and `RxTracingPolicy`.

### Version 3.0.0.ALPHA - November 11th 2016 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/3.0.0.ALPHA/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/3.0.0.ALPHA/view))

## [3.0.0.ALPHA] - 2016-11-11
* Bumped RxJava to 2.0, and incorporated `RxTracingPolicy` into `RxJavaPlugins`.
* Fixed a bug in `ForwardingBox.modify()`.
* `RxExecutor` now exposes the underlying `Executor`, `Scheduler`, and `RxTracingPolicy`.

### Version 2.0.0 - July 13th 2016 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/2.0.0/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/2.0.0/view))

## [2.0.0] - 2016-07-13
* `Immutables` has moved to `com.diffplug.durian:durian-collect`.
* Removed collections-specific classes.
+ `RxOptional` -> `RxBox<Optional>`
+ `RxSet` -> `RxBox<ImmutableSet>`
+ This makes it possible to mix-and-match RxBox implementations and collection implementations.
+ `RxOptional` -> `RxBox<Optional>`
+ `RxSet` -> `RxBox<ImmutableSet>`
+ This makes it possible to mix-and-match RxBox implementations and collection implementations.
* `Box` and `RxBox` had poorly defined behavior around race conditions. It is now implemented by the following well-defined classes:
+ `RxBox.of(initialValue)` makes no atomicity guarantees.
+ `CasBox` supports compare-and-swap atomic modifications.
+ `LockBox` supports mutex-based atomic modifications.
+ `RxLockBox` supports mutex-based atomic modification with RxJava-based notifications.
+ `RxBox.of(initialValue)` makes no atomicity guarantees.
+ `CasBox` supports compare-and-swap atomic modifications.
+ `LockBox` supports mutex-based atomic modifications.
+ `RxLockBox` supports mutex-based atomic modification with RxJava-based notifications.
* Broke the overly crowded `Rx` class into serveral pieces:
+ `Rx` is now only a collection of utility methods.
+ `RxListener` is now the listener interface for `Observer<T> & FutureCallback<T>`.
+ `Rx.RxExecutor` is now `RxExecutor`, and `Rx.HasRxExecutor` is `RxExecutor.Has`.
+ `RxGetter` no longer enforces `distinctUntilChanged`.
+ `Rx` is now only a collection of utility methods.
+ `RxListener` is now the listener interface for `Observer<T> & FutureCallback<T>`.
+ `Rx.RxExecutor` is now `RxExecutor`, and `Rx.HasRxExecutor` is `RxExecutor.Has`.
+ `RxGetter` no longer enforces `distinctUntilChanged`.
* Adopted Durian and its new `ConverterNonNull`.
* Added `OrderedLock`, which takes multiple locks in a guaranteed lock-free way.
* Added `Breaker`, for temporarily breaking a connection between observable values.

### Version 1.3.0 - February 9th 2016 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/1.3.0/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/1.3.0/view))

## [1.3.0] - 2016-02-09
* Ditched Guava for DurianGuava.

### Version 1.2.0 - November 18th 2015 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/1.2.0/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/1.2.0/view))

## [1.2.0] - 2015-11-18
* Added support for `CompletionStage` (and therefore `CompletableFuture`), with the same behavior as `ListenableFuture`.

### Version 1.1.0 - October 19th 2015 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/1.1.0/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/1.1.0/view))

## [1.1.0] - 2015-10-19
* Changed OSGi metadata Bundle-SymbolicName to `com.diffplug.durian.rx`.
* OSGi metadata is now auto-generated using bnd.

### Version 1.0.1 - July 27th 2015 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/1.0.1/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/1.0.1/view))

## [1.0.1] - 2015-07-27
* Gah! MANIFEST.MF still had -SNAPSHOT version. Fixed now. Would be really nice if we could get MANIFEST.MF generation working.

### Version 1.0 - May 13th 2015 ([javadoc](http://diffplug.github.io/durian-rx/javadoc/1.0/), [jcenter](https://bintray.com/diffplug/opensource/durian-rx/1.0/view))

## [1.0] - 2015-05-13
* First stable release.
7 changes: 2 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
# Contributing to Durian

Pull requests are welcome, preferably against `master`.

Every successful Travis CI build on branch `master` is automatically published to [`https://oss.sonatype.org/content/repositories/snapshots`](https://oss.sonatype.org/content/repositories/snapshots/com/diffplug/), and its javadoc are published [here](http://diffplug.github.io/durian-rx/javadoc/snapshot/).

## Build instructions

It's a bog-standard gradle build.
Expand All @@ -26,13 +23,13 @@ By contributing your code, you agree to license your contribution under the term
All files are released with the Apache 2.0 license as such:

```
Copyright 2015 DiffPlug
Copyright 2020 DiffPlug

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0
https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
Expand Down
30 changes: 14 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,28 +2,26 @@

<!---freshmark shields
output = [
link(shield('Maven artifact', 'mavenCentral', '{{group}}:{{name}}', 'blue'), 'https://bintray.com/{{org}}/opensource/{{name}}/view'),
link(shield('Latest version', 'latest', '{{stable}}', 'blue'), 'https://github.com/{{org}}/{{name}}/releases/latest'),
link(shield('Javadoc', 'javadoc', 'OK', 'blue'), 'https://javadoc.io/doc/com.diffplug.durian/durian-rx/{{stable}}/'),
link(shield('License Apache', 'license', 'Apache', 'blue'), 'https://tldrlegal.com/license/apache-license-2.0-(apache-2.0)'),
'',
link(shield('Changelog', 'changelog', '{{version}}', 'brightgreen'), 'CHANGES.md'),
link(image('Travis CI', 'https://travis-ci.org/{{org}}/{{name}}.svg?branch=master'), 'https://travis-ci.org/{{org}}/{{name}}'),
link(shield('Live chat', 'gitter', 'live chat', 'brightgreen'), 'https://gitter.im/diffplug/durian')
].join('\n');
link(shield('Maven central', 'mavencentral', 'com.diffplug.durian:durian-rx', 'blue'), 'https://search.maven.org/artifact/com.diffplug.durian/durian-rx'),
link(shield('Apache 2.0', 'license', 'apache-2.0', 'blue'), 'https://tldrlegal.com/license/apache-license-2.0-(apache-2.0)'),
'',
link(shield('Changelog', 'changelog', versionLast, 'brightgreen'), 'CHANGES.md'),
link(shield('Javadoc', 'javadoc', 'yes', 'brightgreen'), 'https://javadoc.io/doc/com.diffplug.durian/durian-rx/{{versionLast}}/'),
link(shield('Live chat', 'gitter', 'chat', 'brightgreen'), 'https://gitter.im/diffplug/durian'),
link(image('JitCI', 'https://jitci.com/gh/diffplug/durian-rx/svg'), 'https://jitci.com/gh/diffplug/durian-rx')
].join('\n');
-->
[![Maven artifact](https://img.shields.io/badge/mavenCentral-com.diffplug.durian%3Adurian--rx-blue.svg)](https://bintray.com/diffplug/opensource/durian-rx/view)
[![Latest version](https://img.shields.io/badge/latest-3.0.1-blue.svg)](https://github.com/diffplug/durian-rx/releases/latest)
[![Javadoc](https://img.shields.io/badge/javadoc-OK-blue.svg)](https://javadoc.io/doc/com.diffplug.durian/durian-rx/3.0.1/)
[![License Apache](https://img.shields.io/badge/license-Apache-blue.svg)](https://tldrlegal.com/license/apache-license-2.0-(apache-2.0))
[![Maven central](https://img.shields.io/badge/mavencentral-com.diffplug.durian%3Adurian--rx-blue.svg)](https://search.maven.org/artifact/com.diffplug.durian/durian-rx)
[![Apache 2.0](https://img.shields.io/badge/license-apache--2.0-blue.svg)](https://tldrlegal.com/license/apache-license-2.0-(apache-2.0))

[![Changelog](https://img.shields.io/badge/changelog-3.0.1-brightgreen.svg)](CHANGES.md)
[![Travis CI](https://travis-ci.org/diffplug/durian-rx.svg?branch=master)](https://travis-ci.org/diffplug/durian-rx)
[![Live chat](https://img.shields.io/badge/gitter-live_chat-brightgreen.svg)](https://gitter.im/diffplug/durian)
[![Javadoc](https://img.shields.io/badge/javadoc-yes-brightgreen.svg)](https://javadoc.io/doc/com.diffplug.durian/durian-rx/3.0.1/)
[![Live chat](https://img.shields.io/badge/gitter-chat-brightgreen.svg)](https://gitter.im/diffplug/durian)
[![JitCI](https://jitci.com/gh/diffplug/durian-rx/svg)](https://jitci.com/gh/diffplug/durian-rx)
<!---freshmark /shields -->

<!---freshmark javadoc
output = prefixDelimiterReplace(input, 'https://javadoc.io/doc/com.diffplug.durian/durian-rx/', '/', stable);
output = prefixDelimiterReplace(input, 'https://javadoc.io/static/com.diffplug.durian/durian-rx/', '/', versionLast);
-->
DurianRx unifies RxJava's [Observable](http://reactivex.io/documentation/observable.html) with Guava's [ListenableFuture](https://code.google.com/p/guava-libraries/wiki/ListenableFutureExplained). If you happen to be using SWT as a widget toolkit, then you'll want to look at [DurianSwt](https://github.com/diffplug/durian-swt) as well.

Expand Down
Loading