Skip to content

Commit

Permalink
Release Spring Fu 0.3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
sdeleuze committed May 27, 2020
1 parent 6aa8874 commit e670615
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 31 deletions.
6 changes: 3 additions & 3 deletions README.adoc
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
image:https://ci.spring.io/api/v1/teams/spring-fu/pipelines/spring-fu/badge["Build Status", link="https://ci.spring.io/teams/spring-fu/pipelines/spring-fu"]

Spring Fu is an incubator for https://github.com/spring-projects-experimental/spring-fu/tree/master/jafu[Jafu] (Java DSL)
and https://github.com/spring-projects-experimental/spring-fu/tree/master/kofu[Kofu] (Kotlin DSL) designed to configure
Spring Fu is an incubator for https://github.com/spring-projects-experimental/spring-fu/tree/master/jafu[JaFu] (Java DSL)
and https://github.com/spring-projects-experimental/spring-fu/tree/master/kofu[KoFu] (Kotlin DSL) designed to configure
Spring Boot explicitly with code in a declarative way with great discoverability thanks to auto-complete.
It provides fast startup (40% faster than regular auto-configuration on a minimal Spring MVC app), low memory consumption
and is a good fit with https://www.graalvm.org/docs/reference-manual/native-image/[GraalVM native] thanks to its (almost) reflection-less approach.

== Native images

If you are interested in running Spring applications (including Jafu and Kofu ones) as GraalVM native images,
If you are interested in running Spring applications (including JaFu and KoFu ones) as GraalVM native images,
see the https://github.com/spring-projects-experimental/spring-graalvm-native[spring-graalvm-native] project and its https://github.com/spring-projects-experimental/spring-graalvm-native/tree/master/spring-graalvm-native-samples/jafu[jafu] and https://github.com/spring-projects-experimental/spring-graalvm-native/tree/master/spring-graalvm-native-samples/jafu-webmvc[jafu-webmvc] samples.

== Status
Expand Down
2 changes: 1 addition & 1 deletion build.sh
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env bash

./gradlew -x javadoc build publishToMavenLocal
./gradlew -x javadoc -x dokka build publishToMavenLocal
cd samples
./gradlew build
8 changes: 4 additions & 4 deletions jafu/README.adoc
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
:spring-fu-version: 0.3.0.M5
:spring-fu-version: 0.3.0
:jafu-javadoc-url: http://repo.spring.io/milestone/org/springframework/fu/spring-fu-jafu/{spring-fu-version}/spring-fu-jafu-{spring-fu-version}-javadoc.jar!
:framework-javadoc-url: https://docs.spring.io/spring-framework/docs/5.3.x/javadoc-api

image:https://img.shields.io/badge/Jafu%20documentation-blue.svg["Jafu documentation", link="{jafu-javadoc-url}/index.html"]

== Jafu DSL for Spring Boot
== JaFu DSL for Spring Boot

Jafu (for **Ja**va and **fu**nctional) is an alternative way of configuring explicitly your Spring Boot application,
JaFu (for **Ja**va and **Fu**nctional) is an alternative way of configuring explicitly your Spring Boot application,
different from regular auto-configuration, using a Java DSL. It is based on Spring Boot infrastructure, but
https://github.com/spring-projects/spring-fu/tree/master/autoconfigure-adapter[used via functional bean definitions]
instead of JavaConfig.

=== API reference

An overview of Jafu DSL is provided bellow with the related {jafu-javadoc-url}/index.html[API documentation].
An overview of JaFu DSL is provided bellow with the related {jafu-javadoc-url}/index.html[API documentation].
Be aware that a few static imports will be needed.

=== Getting started
Expand Down
28 changes: 5 additions & 23 deletions kofu/README.adoc
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
:spring-fu-version: 0.3.0.M5
:spring-fu-version: 0.3.0
:kofu-kdoc-url: http://repo.spring.io/milestone/org/springframework/fu/spring-fu-kofu/{spring-fu-version}/spring-fu-kofu-{spring-fu-version}-javadoc.jar!
:framework-kdoc-url: https://docs.spring.io/spring-framework/docs/5.3.x/kdoc-api
:framework-kdoc-url: https://docs.spring.io/spring-framework/docs/5.2.x/kdoc-api

image:https://img.shields.io/badge/Kofu%20documentation-blue.svg["Kofu documentation", link="{kofu-kdoc-url}/kofu/org.springframework.fu.kofu/-application-dsl.html"]

== Kofu DSL for Spring Boot
== KoFu DSL for Spring Boot

Kofu (for **Ko**tlin and **fu**nctional) is an alternative way of configuring explicitly your Spring Boot application,
KoFu (for **Ko**tlin and **Fu**nctional) is an alternative way of configuring explicitly your Spring Boot application,
different from regular auto-configuration, using a Kotlin DSL. It is based on Spring Boot infrastructure, but
https://github.com/spring-projects/spring-fu/tree/master/autoconfigure-adapter[used via functional bean definitions]
instead of JavaConfig.
Expand Down Expand Up @@ -67,24 +67,6 @@ To use WebFlux.fn instead
* Use `spring-boot-starter-webflux` starter instead of `spring-boot-starter-web`
* Use `coRouter { }` instead of `router { }` if you want to use Coroutines instead of Reactor API

=== Dependencies

Kofu is technically just a dependency you add to your Spring Boot project.

```kotlin
repositories {
mavenCentral()
maven("https://repo.spring.io/milestone")
}

dependencies {
implementation("org.springframework.fu:spring-fu-kofu:0.3.0.M5")

implementation("org.springframework.boot:spring-boot-starter-web")
testImplementation("org.springframework.boot:spring-boot-starter-webflux")
}
```

=== Getting started

* Go to https://start.spring.io/#!type=gradle-project&language=kotlin[start.spring.io]
Expand Down Expand Up @@ -114,5 +96,5 @@ fun main() {
See also sample projects https://github.com/spring-projects/spring-fu/tree/master/samples[here].

You can now also benefits of
https://docs.spring.io/spring/docs/5.3.x/spring-framework-reference/[Spring Framework reference documentation]
https://docs.spring.io/spring/docs/5.2.x/spring-framework-reference/[Spring Framework reference documentation]
which is now available with Kotlin code samples.

0 comments on commit e670615

Please sign in to comment.