wimdeblauwe / error-handling-spring-boot-starter

Spring Boot starter for configurable REST API error handling
https://wimdeblauwe.github.io/error-handling-spring-boot-starter/
Apache License 2.0
422 stars 51 forks source link
spring-boot

= Error Handling Spring Boot Starter :toc: macro :toclevels: 3

ifdef::env-github[] :tip-caption: :bulb: :note-caption: :information_source: :important-caption: :heavy_exclamation_mark: :caution-caption: :fire: :warning-caption: :warning: endif::[]

image:https://github.com/wimdeblauwe/error-handling-spring-boot-starter/actions/workflows/build.yml/badge.svg[]

image:https://maven-badges.herokuapp.com/maven-central/io.github.wimdeblauwe/error-handling-spring-boot-starter/badge.svg["Maven Central",link="https://search.maven.org/search?q=a:error-handling-spring-boot-starter"]

toc::[]

== Goal

The goal of the project is to make it easy to have proper and consistent error responses for REST APIs build with Spring Boot.

== Documentation

See https://wimdeblauwe.github.io/error-handling-spring-boot-starter for the extensive documentation.

If you are new to the library, check out https://foojay.io/today/better-error-handling-for-your-spring-boot-rest-apis/[Better Error Handling for Your Spring Boot REST APIs] for an introductory overview.

NOTE: Documentation is very important to us, so if you find something missing from the docs, please create an issue about it.

== Spring Boot compatibility

|=== |error-handling-spring-boot-starter |Spring Boot|Minimum Java version|Docs

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/4.4.0[4.4.0] |3.3.x |17 |https://wimdeblauwe.github.io/error-handling-spring-boot-starter/4.4.0/[Documentation 4.4.0]

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/4.3.0[4.3.0] |3.x |17 |https://wimdeblauwe.github.io/error-handling-spring-boot-starter/4.3.0/[Documentation 4.3.0]

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/4.2.0[4.2.0] |3.x |17 |https://wimdeblauwe.github.io/error-handling-spring-boot-starter/4.2.0/[Documentation 4.2.0]

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/4.1.3[4.1.3] |3.x |17 |https://wimdeblauwe.github.io/error-handling-spring-boot-starter/4.1.3/[Documentation 4.1.3]

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/4.0.0[4.0.0] |3.0.x |17 |https://wimdeblauwe.github.io/error-handling-spring-boot-starter/4.0.0/[Documentation 4.0.0]

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/3.4.1[3.4.1] |2.7.x |11 |https://wimdeblauwe.github.io/error-handling-spring-boot-starter/3.4.1/[Documentation 3.4.1]

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/3.3.0[3.3.0] |2.7.x |11 |https://wimdeblauwe.github.io/error-handling-spring-boot-starter/3.3.0/[Documentation 3.3.0]

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/3.2.0[3.2.0] |2.5.x |11 |N/A

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/2.1.0[2.1.0] |2.5.x |11 |N/A

|https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/tag/1.7.0[1.7.0] |2.2.x |8

|===

== Articles

Blogs and articles about this library:

== Release

To release a new version of the project, follow these steps:

  1. Update pom.xml with the new version (Use mvn versions:set -DgenerateBackupPoms=false -DnewVersion=<VERSION>)
  2. Commit the changes locally.
  3. Tag the commit with the version (e.g. 1.0.0) and push the tag.
  4. Create a new release in GitHub via https://github.com/wimdeblauwe/error-handling-spring-boot-starter/releases/new
    • Select the newly pushed tag
    • Update the release notes. This should automatically start the release action.
  5. Merge the tag to master so the documentation is updated.
  6. Update pom.xml again with the next SNAPSHOT version.
  7. Close the milestone in the GitHub issue tracker.