Releases: puniverse/comsat
0.7.0
New integrations
The comsat-shiro
module contributed by @roded (thanks!) through #53 allows custom implementations of Shiro Realms to perform fiber-blocking calls when invoked by fibers (see the docs for details).
Improvements
- Many dependencies have been upgraded both in the Java and Clojure modules.
- Other minor improvements, some from the community (like @andreiursan's 57cff66, thanks!)
Closed issues
0.6.0
New integration modules
comsat-kafka
provides a Kafka Producer with an asynchronous send
method that will return a Quasar SettableFuture
. A SettableFuture
can block fibers in addition to threads. Contributed by Tim Brooks. Thanks!
Improvements
comsat-actors-undertow
,comsat-actors-netty
andcomsat-servlet
have been performance-optimized and allow more tuning (see the docs for more details).- Many dependencies have been upgraded both in the Java and Clojure modules.
Breaking changes
The WebHandler.Context
interfaces in comsat-actors-undertow
and comsat-actors-netty
have changed to allow greater control and optimization.
They are used only when selecting request-serving web actor instances manually with the Undertow and Netty backends (rather than by scanning the classpath for @WebActor
annotations).
See the docs for more details.
Closed issues
0.5.0
0.4.0
New integration modules:
comsat-okhttp
– OkHttp 2.4 HTTP/SPDY client integration.comsat-httpkit
– HTTP Kit client integration (thehttp-kit
client API is a subset of clj-http); thanks to Nir Rubinstein for his preliminary investigation and work on this one
Breaking changes:
- The
FiberDBI(IDBI jdbi, ExecutorService es)
constructor has been removed because JDBI is now a fully transparent integration on top of JDBC's and doesn't need an executor on its own: executors passed to other constructors will be used for the underlying JDBC integration
Improvements:
comsat-dropwizard
upgraded to the recently released Dropwizard 0.8.1.comsat-spring-boot
and the newcomsat-spring-boot-security
module introduce convenient configuration annotations, resp.FiberSpringBootApplication
andFiberSecureSpringBootApplication
.comsat-spring
upgraded to Spring Boot 1.2.4, Spring Framework 4.1.6 and Spring Security 4.0.1 (and more tests ported).comsat-jooq
has been improved and updated to jOOQ 3.6.2comsat-jdbi
has been improved and updated to JDBI 2.62comsat-jdbc
is now completely wrapped and fiber-blocking (see #27 below)comsat-actors-servlet
now includes an HTTP/SSE/WebSocket test with Undertow as well- Quasar and several other dependencies upgraded
Closed issues:
0.3.0
New integration modules:
comsat-spring-webmvc
– Spring Framework Web MVC fiber-blocking controller methods integration.comsat-spring-boot
– Spring Boot auto-configuration support for Web MVC controllers.comsat-spring-security
– Spring Security configuration support for fibers.comsat-ring-jetty9
– Clojure Ring fiber-blocking adapter based on Jetty 9.
Breaking changes:
comsat-servlet
is now fully aligned to the standard Servlet API and allows using@WebServlet
annotations. To port code to the new version, removethrows SuspendExecution
from fiber-blocking servlets and replace it with a@Suspendable
annotation. Method bodies that throwSuspendExecution
will compile after wrapping them with:
try {
// ... method body
} catch(SuspendExecution e) {
throw new AssertionError(); // shouldn't happen
}
Improvements:
comsat-loader-tomcat
andcomsat-loader-tomcat-jdk8
now work in standalone server mode too (verified with Tomcat 7.0.56 and 8.0.15).comsat-servlet
now dispatches exceptions back to a servlet container's thread where they are re-thrown, so they can be handled correctly and reach the client.- Several dependencies upgraded.
0.2.0
New integration modules:
comsat-dropwizard
– Dropwizard integration including Jersey, ApacheHttpClient and JDBI.comsat-retrofit
– Retrofit integration.comsat-jdbi
– JDBI integration for using the JDBI API in fibers.comsat-jdbc
– JDBC integration for using the JDBC API in fibers.comsat-jooq
– jOOQ integration for using the jOOQ API in fibers.comsat-mongodb-allanbank
– MongoDB integration for using the allanbank API -- contributed by Fabio Tudone