http4k

The Functional toolkit for Kotlin HTTP applications. http4k provides a simple and uniform way to serve, consume, and test HTTP services.

APACHE-2.0 License

Stars
2.5K
Committers
151

Bot releases are visible (Hide)

http4k - 5.6.2.0

Published by github-actions[bot] about 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions
  • http4k-security-oauth : [Fix] In-memory request tracking for FakeOAuthServer now supports full AuthRequest.
http4k - 5.6.1.0

Published by github-actions[bot] about 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-serverless-core : Add some filters for Serverless functions.
http4k - 5.6.0.0

Published by github-actions[bot] about 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-core : Added nonBlank() to set of standard BiDiMappings. H/T @dmcg
  • http4k-core : [Unlikely break: Fix #956] Lenses don't really work for optional fields in HTML form parsing. Form-fields are now filtered for values which are not blank. This means that you may need to change form lenses to be optional and default to an empty string if they are missing.
http4k - 5.5.0.0

Published by github-actions[bot] about 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-cloudnative - Add support for enums in EnvironmentKey
  • http4k-testing-tracerbullet : [Breaking] Fixed SequenceDiagrams for Mermaid to be formatted correctly. This may break approval files for any tests.
http4k - 5.4.1.0

Published by github-actions[bot] about 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-client-helidon : API changes from Helidon alpha to M1
  • http4k-server-helidon : API changes from Helidon alpha to M1
  • http4k-contract : [Fix #750] JacksonFieldMetadataRetrievalStrategy is incompatible with kotlinx.serialization @Serializable classes. H/T @krissrex
  • http4k-realtime-core : [Fix #951] Add filters to initialise request context for SSE and WS.
  • http4k-realtime-core : [Fix #885] Accept websocket subprotocols. Note that not all servers are currently supported
  • http4k-server-jetty : [Fix #885] Support subprotocols for Websockets
http4k - 5.4.0.0

Published by github-actions[bot] over 1 year ago

Changelog:

http4k - 5.3.0.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions, including Kotlin to 1.9.0.
  • http4k-core : Surface root error messages in Body lenses when failure occurs on deserialisation.
  • http4k-template-thymeleaf : [Unlikely Break] Use HTML rendering mode and .html suffix by default for Thymeleaf templates. H/T @mikaelstaldal
http4k - 5.2.1.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-core : [Fix #939] Override all Request and Response mutators for routed messages. H/T @kwydler
http4k - 5.2.0.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-contract-jsonschema : [New module] Extracted this so we can reuse in non-OpenAPI scenarios
  • http4k-contract : [Deprecation] Repackaging of JSON schema classes. Should only affect users if they have explicitly used/extended the standard behaviour.
http4k - 5.1.2.1

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-serverless-lambda* : [Fix #936] AWS SQS null deserialization issues
http4k - 5.1.2.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-security-oauth* : Remove dependency on Kotlin-reflect by adding custom adapters. H/T
http4k - 5.1.1.1

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-serverless-lambda* : [Fix #933] AWS SQS deserialization issue when md5OfMessageAttributes is null. H/T @ashcor
http4k - 5.1.1.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-realtime-core* : Readd test client methods for SSE and WS
http4k - 5.1.0.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-server-realtime-core* : [Breaking - Fix #931] Change Websocket and SSE interfaces to return WsResponse and SseResponse objects. This makes it easier to set response headers and control if a connection is made from the incoming request as it is no-longer hidden (it is exposed at the top level instead of being hidden in the SSE and Websocket objects). It also means that the interfaces for the protocols follow the same pattern.
  • http4k-server-jetty* : As above
  • http4k-server-undertow* : As above
  • http4k-core* : [Fix #930] Update content-length header after GZipping it. H/T @bjornbugge
http4k - 5.0.0.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-* : [Breaking] Remove all previous deprecations from all modules for v4. To upgrade cleanly, first upgrade to v4.48.0.0 and then re-upgrade to v5.0.0.0. This will ensure that you only have to deal with Deprecations between the major versions.
  • http4k-templates-dust: [Breaking] Nashorn is finally removed, so we are dropping support for this module. If you are on-pre Java 19 you can continue to use the old module version with no breaking changes.
  • http4k-*: [Breaking] http4k is now built with Java 20. We are still compiling for older Java versions. New major versions will now be incoming with every major JDK release in order to track new and retired JVM features (6 month cycle).
  • http4k-server-jetty: New Server Backend JettyLoom, based on Loom VirtualThreads. Requires Java >=19 to use. Standard Jetty remains usable with any Java version.
  • http4k-core: New Server Backend SunHttpLoom, based on Loom VirtualThreads. Requires Java >=19 to use. Standard SunHttp remains usable with any Java version.
  • http4k-server-helidon: [New Module] Helidon is a Loom-first rewrite of the popular server. Requires Java >= 19 to use.
  • http4k-server-websocket: [New Module] A lightweight Websocket server built on TooTallNate/Java-Websocket. H/T @oharaandrew314
  • http4k-client-helidon: [New Module] An HTTP client build from the ground up to take advantage of project Loom. Requires Java >= 19 to use.
  • http4k-format-kondor-json: [New Module] Support for KondorJson , the reflection-free JSON library.
  • http4k-testing-tracerbullet: [New Module] TracerBullet allows you to hook into the http4k Events implementation to visually document your applications through testing. See example in reference guide.
  • http4k-contract: Allow RouteMetaDsl to be marked as hidden H/T @oharaandrew314
http4k - 4.48.0.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions, including Kotlin to 1.8.22.
http4k - 4.47.2.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-incubator Further simplifications of tracing algorithm
http4k - 4.47.1.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-core Make it easy to propagate or update trace spans in ZipkinStorage
  • http4k-incubator Further simplifications of tracing algorithm
http4k - 4.46.0.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-core : Added status lookup by code. H/T @jhult
  • http4k-core : [Unlikely break] Client request tracing now sets and resets the ThreadLocal containing the current Zipkin traces. Possible break
    if you were relying on Zipkin state in a downstream handler. This change will allow better in-memory testing as traces will be reported correctly inside the context of the filter.
  • http4k-incubator : [Break] Changes to improve how we create Tracing trees, and this the signature of the Tracer to take EventNode which is a tree node.
    http4k-server-format-kondor-json: [New Module] Support for KondorJson~~~~
http4k - 4.45.0.0

Published by github-actions[bot] over 1 year ago

Changelog:

  • http4k-* : Upgrade some dependency versions.
  • http4k-core: [Breaking] Fix #912 - CatchLensFailure filter now can pass the Request object into the receiver. H/T
    @mikaelstaldal
  • http4k-server-format-moshi: Add support for Sets
  • http4k-security-oauth: [Breaking] AccessTokens create method took an unnecessary duplicate parameter. To fix, just
    remove the authorizationCode parameter from your implementations and use the code from the tokenRequest