/reboot

Scala wrapper for the Java AsyncHttpClient. Mirror of https://codeberg.org/sciss/reboot

Primary LanguageScalaGNU Lesser General Public License v3.0LGPL-3.0

Note: This branch is a fork off mainline dispatch/reboot, so I can publish an artifact for Scala 2.13. I have given the artifact a new organization and a new version to avoid confusion. These artifacts are published as

"de.sciss" %% "dispatch-<suffix>" % "0.1.1"

where suffix is as usual, core, all etc.

Below is the original README:

Dispatch Reboot

Build Status

Dispatch reboot is a rewrite of the Dispatch library for HTTP interaction in Scala, using async-http-client, commonly called AHC, as its underlying transport. For more info, see the Dispatch documentation site.

Dispatch requires that you use at least Java 8. Our test suite is also run against Java 11 in Travis.

Getting Dispatch

Stable releases of Dispatch are published to Maven Central. As such, you can pull in the current stable release by simply adding a library dependency to your project for the correct version.

To get the latest stable release, 1.0.0, simply add the following to your build.sbt:

libraryDependencies += "org.dispatchhttp" %% "dispatch-core" % "1.0.0"

If Gradle is more your style, you could also use this style:

compile "org.dispatchhttp:dispatch-core_2.12:1.0.0"

Snapshot releases

We irregularly release snapshots to Sonatype snapshots. To use it you'll need to add the snapshots repository to your project and pull the relevant snapshot:

resolvers +=
  "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots"

libraryDependencies += "org.dispatchhttp" %% "dispatch-core" % "0.14.0-SNAPSHOT"

Versioning and Support

Dispatch version numbers loosely follow SemVer. The version number format is:

[major].[minor].[patch]

A distinct (major, minor) combination is called a "release series" or "series" for our purposes.

Two stable series of Dispatch are supported at a time, with one series prior to that receiving "Critical" security updates in Dispatch itself or critical security fixes in AHC that have broken binary compatibility. All earlier versions of Dispatch are officially unsupported and will not receive any fixes or changes.

The next feature release development happens on master.

The following chart outlines what versions of Dispatch support what versions of AHC and Scala and their current support status:

Version AHC Version Scala Versions Support Branch
0.10.0 1.7.11 2.9.3,2.10 None
0.11.2 1.8.10 2.9.3,2.10,2.11 None
0.11.4 1.9.40 2.10,2.11 None
0.12.3 1.9.40 2.11,2.12 None
0.13.3 2.0.38 2.11,2.12 Critical only 0.13.x
0.14.0 2.1.2 2.11,2.12 Full support 0.14.x
1.0.0 2.5.4 2.11,2.12 Full support 1.0.x
1.1.0-SNAPSHOT 2.5.4 2.12 Development master

Because the AsyncHttpClient does not adhere to semantic versioning, and its versions can increment quite quickly at times, beginning with 0.14 Dispatch will only use the latest (major, minor) AHC version that's available at the time its being developed. You may not be able to find a Dispatch version for every version of AHC if AHC went through a quick release clip.

Upon request, we may release a patch version of Dispatch with a newer version of AHC if the new version is binary compatible with the version that series was originally released with.

Getting Help and Contributing

Please see our Contributing Guide for information on how to contribute and get help with Dispatch.