You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
1.8 KiB
29 lines
1.8 KiB
7 months ago
|
# Coroutines integration
|
||
|
|
||
|
This directory contains modules that provide integration with various asynchronous callback- and future-based libraries.
|
||
|
Module name below corresponds to the artifact name in Maven/Gradle.
|
||
|
|
||
|
## Modules
|
||
|
|
||
|
* [kotlinx-coroutines-jdk8](kotlinx-coroutines-jdk8/README.md) -- integration with JDK8 `CompletableFuture` (Android API level 24).
|
||
|
* [kotlinx-coroutines-guava](kotlinx-coroutines-guava/README.md) -- integration with Guava [ListenableFuture](https://github.com/google/guava/wiki/ListenableFutureExplained).
|
||
|
* [kotlinx-coroutines-slf4j](kotlinx-coroutines-slf4j/README.md) -- integration with SLF4J [MDC](https://logback.qos.ch/manual/mdc.html).
|
||
|
* [kotlinx-coroutines-play-services](kotlinx-coroutines-play-services) -- integration with Google Play Services [Tasks API](https://developers.google.com/android/guides/tasks).
|
||
|
|
||
|
## Contributing
|
||
|
|
||
|
Follow the following simple guidelines when contributing integration with your favorite library:
|
||
|
|
||
|
* Keep it simple and general. Ideally it should fit into a single file. If it does not fit, then consider
|
||
|
a separate GitHub project to host this integration.
|
||
|
* Follow the example of other modules.
|
||
|
Cut-and-paste [kotlinx-coroutines-guava](kotlinx-coroutines-guava) module as a template.
|
||
|
* Write tests and documentation, include top-level `README.md` with short overview and example.
|
||
|
* Reference the new module from all the places:
|
||
|
* List of modules in this document.
|
||
|
* List of modules in top-level [`settings.gradle`](../settings.gradle).
|
||
|
* List of modules at the root of documentation site in [`site/docs/index.md`](../site/docs/index.md).
|
||
|
* List of integrations in the root [README.md](../README.md).
|
||
|
* Update links to documentation website as explained [here](../knit/README.md#usage).
|
||
|
* Squash your contribution to a single commit and create pull request to `develop` branch.
|