Knot.x 2.1.0
Release Notes
knotx-dependencies
- PR-30 - Upgrade to Vert.x
3.8.4
.
knotx-launcher
- PR-19 - Remove deprecated API usage, Vert.x 3.8.1.
knotx-junit5
- PR-39 - Fixed missing content-type header for ClasspathResourcesMockServer files
knotx-server-http
- PR-35 - Vert.x upgrade to 3.8.1. Cookie Handler was deprecated: cookies are enabled by default and
cookieHandler
handler is not required anymore.
knotx-fragments
- PR-62 - It introduces task & graph node factories. It is connected with issue #49.
- PR-51 - Introduces extendable task definition allowing to define different node types and custom task providers. Marks the
actions
task configuration entry as deprecated, introducessubtasks
instread. - PR-56 - Makes composite node identifiers changeable. Renames
ActionNode
toSingleNode
. - PR-55 - Action log mechanism implementation. Renames
ActionFatalException
toNodeFatalException
.
knotx-data-bridge
- PR-58 - HTTP response body validation for content-type
knotx-template-engine
- PR-18 -
com.github.jknack
Handlebars updated to4.1.2
.
knotx-stack
- PR-68 - Fix unit tests with custom wiremock instance.
- PR-62 - Configure task and node factories in Fragments Handler module.
- PR-64 - Add Unit tests for default stack configuration files.
- PR-59 - Remove cookie handler, it is not required from Vert.x 3.8.1.
knotx-starter-kit
Upgrade notes
Task & node factories configuration changes
In 2.0
tasks { # tasks here }
actions { # actions here }
In 2.1
taskFactories = [
{
factory = default
config {
tasks = tasks { # tasks here }
nodeFactories = [
{
factory = action
config.actions = { # actions here }
}
{
factory = subtasks
}
]
}
}
]
Rename actions
to subtasks
In 2.0
tasks {
books-and-authors-listing {
actions = [
{
...
},
{
...
}
]
onTransitions {
...
}
}
}
In 2.1
tasks {
books-and-authors-listing {
subtasks = [
{
...
},
{
...
}
]
onTransitions {
...
}
}
}
HTTP response body validation for content-type (HTTP Action)
If you wish to leave the previous behaviour (when non-json response is returned, exception is thrown), just configure responseOptions in your action config like this:
responseOptions {
predicates = [JSON]
forceJson = false
}
Remove cookieHandler
from server common handlers list:
In 2.0
config.server {
handlers.common {
request = [
{
name = cookieHandler
},
{
name = bodyHandler
},
// ...
]
}
}
In 2.1
config.server {
handlers.common {
request = [
{
name = bodyHandler
},
//...
]
}
}
Build ZIP distribution with Knot.x Starter Kit
Remove:
tasks.named("build") {
dependsOn("runTest")
}
and add:
tasks.named("build") {
dependsOn("build-stack")
}
tasks.register("build-docker") {
group = "docker"
dependsOn("runTest")
}
tasks.register("build-stack") {
group = "stack"
// https://github.com/Knotx/knotx-gradle-plugins/blob/master/src/main/kotlin/io/knotx/distribution.gradle.kts
dependsOn("assembleCustomDistribution")
mustRunAfter("build-docker")
}
in build.gradle.kts
when Knot.x Starter Kit used.