Skip to content

Commit 17f24e4

Browse files
committed
Merge pull request ReactiveX#208 from ReactiveX/jw/there-can-be-only
Update documentation for 1.0.
2 parents f471473 + fade61f commit 17f24e4

File tree

3 files changed

+60
-48
lines changed

3 files changed

+60
-48
lines changed

CHANGES.md

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,35 @@
1-
# RxJava Releases #
1+
# RxAndroid Releases #
2+
3+
### Version 1.0.0 - August 5th 2015 ####
4+
5+
Initial stable release!
6+
7+
In order to provide a library that no project using RxJava would hesitate to depend on, the decision
8+
was made to remove the APIs which were not absolutely fundamental to all apps. That is what's
9+
contained in this release.
10+
11+
Functionality which was previously part of this library is being explored in separate, modular
12+
libraries:
13+
14+
* `LifecycleObservable`: https://github.com/trello/RxLifecycle
15+
* `ViewObservable` and `WidgetObservable`: https://github.com/JakeWharton/RxBinding
16+
17+
This allows for a simpler process of design, development, and experimentation for the
18+
best ways to provide features like hooks into the lifecycle, binding to UI components, and
19+
simplifying interaction with all of Android's API. Not only can these projects now have their own
20+
release schedule, but it allows developers to pick and choose which ones are appropriate for your
21+
application.
22+
23+
Applications using the various APIs which were previously in this library do not need to update
24+
immediately. Due to the number of APIs removed, switching to 1.0 and the use of these third-party
25+
libraries should be done gradually.
26+
27+
Breaking changes:
28+
29+
* `AndroidSchedulers.handlerThread()` is now `HandlerScheduler.from()`.
30+
* **All other APIs have been removed** aside from `AndroidSchedulers.mainThread()`,
31+
`RxAndroidPlugins`, and `RxAndroidSchedulersHook`.
32+
233

334
### Version 0.25 - June 27th 2015 ###
435

@@ -29,6 +60,7 @@ This release adds a number of new operators:
2960
* [Pull 22](https://github.com/ReactiveX/RxAndroid/pull/22) Add view state event types to streamline ViewObservable
3061
* [Pull 20](https://github.com/ReactiveX/RxAndroid/pull/20) Add OperatorAdapterViewOnItemClick to observe OnItemClick events in AdapterViews
3162

63+
3264
### Version 0.21 – October 1st 2014 ###
3365

3466
Initial release outside the RxJava core project, no changes.

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ When submitting code, please make every effort to follow existing conventions an
66

77
## License
88

9-
By contributing your code, you agree to license your contribution under the terms of the APLv2: https://github.com/ReactiveX/RxJava/blob/master/LICENSE
9+
By contributing your code, you agree to license your contribution under the terms of the APLv2: https://github.com/ReactiveX/RxAndroid/blob/master/LICENSE
1010

1111
All files are released with the Apache 2.0 license.
1212

@@ -26,4 +26,4 @@ If you are adding a new file it should have a header like this:
2626
* See the License for the specific language governing permissions and
2727
* limitations under the License.
2828
*/
29-
```
29+
```

README.md

Lines changed: 25 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -2,57 +2,31 @@
22

33
Android specific bindings for [RxJava](http://github.com/ReactiveX/RxJava).
44

5-
This module adds a number of classes to RxJava that make writing reactive components in
6-
Android applications easy and hassle free. More specifically, it
5+
This module adds the minimum classes to RxJava that make writing reactive components in Android
6+
applications easy and hassle-free. More specifically, it provides a `Scheduler` that schedules an
7+
on the main UI thread or any given `Handler`.
78

8-
- provides a `Scheduler` that schedules an `Observable` on a given Android `Handler` thread, particularly the main UI thread
99

1010
## Communication
1111

1212
Since RxAndroid is part of the RxJava family the communication channels are similar:
1313

14-
- Google Group: [RxJava](http://groups.google.com/d/forum/rxjava)
15-
- Twitter: [@RxJava](http://twitter.com/RxJava)
16-
- [GitHub Issues](https://github.com/ReactiveX/RxAndroid/issues)
14+
- Google Group: [RxJava][list]
15+
- Twitter: [@RxJava][twitter]
16+
- StackOverflow: [rxandroid][so]
17+
- [GitHub Issues][issues]
1718

18-
# Versioning
19-
20-
RxAndroid 0.21 and beyond are published under the `io.reactivex` GroupID and depend on RxJava 1.0.x. Versions 0.20 and earlier were `rxjava-android` and published along with `rxjava-core` under the `com.netflix.rxjava` GroupID.
21-
22-
RxAndroid is staying on the 0.x versioning for now despite RxJava hitting 1.0 as it is not yet felt that the RxAndroid APIs are stabilized.
23-
24-
All usage of 0.20.x and earlier under `com.netflix.rxjava` should eventually be migrated to RxJava 1.x and `io.reactivex`. This was done as part of the migration of the project from `Netflix/RxJava` to `ReactiveX/RxJava` and `ReactiveX/RxAndroid`.
25-
26-
During the transition it will be possible for an application to resolve both the `com.netflix.rxjava` and `io.reactivex` artifacts. This is unfortunate but was accepted as a reasonable cost for adopting the new name as we hit version 1.0.
27-
28-
The RxJava 0.20.x branch is being maintained with bug fixes on the `com.netflix.rxjava` GroupId until version 1.0 Final is released to allow time to migrate between the artifacts.
2919

3020
# Binaries
3121

32-
Binaries and dependency information for Maven, Ivy, Gradle and others can be found at [http://search.maven.org](http://search.maven.org/#search%7Cga%7C1%7Crxandroid).
33-
34-
<a href='http://search.maven.org/#search%7Cga%7C1%7Crxandroid'><img src='http://img.shields.io/maven-central/v/io.reactivex/rxandroid.svg'></a>
35-
36-
Example for Maven:
37-
38-
```xml
39-
<dependency>
40-
<groupId>io.reactivex</groupId>
41-
<artifactId>rxandroid</artifactId>
42-
<version>0.25.0</version>
43-
</dependency>
22+
```groovy
23+
compile 'io.reactivex:rxandroid:1.0.0'
4424
```
4525

46-
and for Ivy:
26+
<a href='http://search.maven.org/#search%7Cga%7C1%7Crxandroid'><img src='http://img.shields.io/maven-central/v/io.reactivex/rxandroid.svg'></a>
4727

48-
```xml
49-
<dependency org="io.reactivex" name="rxandroid" rev="0.25.0" />
50-
```
28+
Additional binaries and dependency information for can be found at [http://search.maven.org](http://search.maven.org/#search%7Cga%7C1%7Crxandroid).
5129

52-
and for Gradle:
53-
```groovy
54-
compile 'io.reactivex:rxandroid:0.25.0'
55-
```
5630

5731
## Build
5832

@@ -64,15 +38,15 @@ $ cd RxAndroid/
6438
$ ./gradlew build
6539
```
6640

67-
Futher details on building can be found on the RxJava [Getting Started](https://github.com/ReactiveX/RxJava/wiki/Getting-Started) page of the wiki.
41+
Futher details on building can be found on the RxJava [Getting Started][start] page of the wiki.
6842

69-
<a href='https://travis-ci.org/ReactiveX/RxAndroid/builds'><img src='https://travis-ci.org/ReactiveX/RxAndroid.svg?branch=0.x'></a>
43+
<a href='https://travis-ci.org/ReactiveX/RxAndroid/builds'><img src='https://travis-ci.org/ReactiveX/RxAndroid.svg?branch=master'></a>
7044

7145

7246
# Sample usage
7347

74-
We are working on a samples project which provides runnable code samples that demonstrate common Rx patterns and
75-
their use in Android applications.
48+
A sample project which provides runnable code examples that demonstrate uses of the classes in this
49+
project is available in the `sample-app/` folder.
7650

7751
## Observing on the UI thread
7852

@@ -83,7 +57,6 @@ to be observed on the main thread:
8357

8458
```java
8559
public class ReactiveFragment extends Fragment {
86-
8760
@Override
8861
public void onCreate(Bundle savedInstanceState) {
8962
super.onCreate(savedInstanceState);
@@ -99,7 +72,7 @@ This will execute the Observable on a new thread, and emit results through `onNe
9972
## Observing on arbitrary threads
10073
The previous sample is merely a specialization of a more general concept, namely binding asynchronous
10174
communication to an Android message loop using the `Handler` class. In order to observe an `Observable`
102-
on an arbitrary thread, create a `Handler` bound to that thread and use the `AndroidSchedulers.handlerThread`
75+
on an arbitrary thread, create a `Handler` bound to that thread and use the `HandlerScheduler.from`
10376
scheduler:
10477

10578
```java
@@ -109,7 +82,7 @@ new Thread(new Runnable() {
10982
final Handler handler = new Handler(); // bound to this thread
11083
Observable.just("one", "two", "three", "four", "five")
11184
.subscribeOn(Schedulers.newThread())
112-
.observeOn(AndroidSchedulers.handlerThread(handler))
85+
.observeOn(HandlerScheduler.from(handler))
11386
.subscribe(/* an Observer */)
11487

11588
// perform work, ...
@@ -124,7 +97,8 @@ shall suffice to illustrate the idea.)
12497

12598
## Bugs and Feedback
12699

127-
For bugs, questions and discussions please use the [Github Issues](https://github.com/ReactiveX/RxAndroid/issues).
100+
For bugs, feature requests, and discussion please use [Github Issues][issues].
101+
For general usage questions please use the [mailing list][list] or [StackOverflow][so].
128102

129103

130104
## LICENSE
@@ -142,3 +116,9 @@ See the License for the specific language governing permissions and
142116
limitations under the License.
143117

144118

119+
120+
[list]: http://groups.google.com/d/forum/rxjava
121+
[so]: http://stackoverflow.com/questions/tagged/rx-android
122+
[twitter]: http://twitter.com/RxJava
123+
[issues]: https://github.com/ReactiveX/RxAndroid/issues
124+
[start]: https://github.com/ReactiveX/RxJava/wiki/Getting-Started

0 commit comments

Comments
 (0)