diff --git a/pom.xml b/pom.xml
index 69f6c4f8a..53f67f51e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -47,6 +47,7 @@
ribbon
sax
slf4j
+ spring
spring4
soap
soap-jakarta
@@ -643,30 +644,34 @@
license-maven-plugin
${license-maven-plugin.version}
-
- ${main.basedir}/src/etc/header.txt
-
- .travis.yml
- .editorconfig
- .gitattributes
- .gitignore
- .mvn/**
- mvnw*
- etc/header.txt
- **/.idea/**
- **/target/**
- LICENSE
- NOTICE
- OSSMETADATA
- **/*.md
- **/*.asciidoc
- **/*.iuml
- bnd.bnd
- travis/**
- src/test/resources/**
- src/main/resources/**
- .circleci/**
-
+
+
+
+ ${main.basedir}/src/etc/header.txt
+
+ .travis.yml
+ .editorconfig
+ .gitattributes
+ .gitignore
+ .mvn/**
+ mvnw*
+ etc/header.txt
+ **/.idea/**
+ **/target/**
+ LICENSE
+ NOTICE
+ OSSMETADATA
+ **/*.md
+ **/*.asciidoc
+ **/*.iuml
+ bnd.bnd
+ travis/**
+ src/test/resources/**
+ src/main/resources/**
+ .circleci/**
+
+
+
true
SLASHSTAR_STYLE
diff --git a/spring/README.md b/spring/README.md
new file mode 100644
index 000000000..877d71533
--- /dev/null
+++ b/spring/README.md
@@ -0,0 +1,40 @@
+# Feign Spring
+This module overrides OpenFeign/feign annotation processing to instead use standard ones supplied by the spring annotations specification.
+
+
+## Currently Supported Annotation Processing
+Feign only supports processing java interfaces (not abstract or concrete classes).
+
+ISE is raised when any annotation's value is empty or null. Ex. `Path("")` raises an ISE.
+
+Here are a list of behaviors currently supported.
+### Type Annotations
+#### `@RequestMapping`
+Appends the ```value``` to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
+The ```method``` sets the request method.
+The ```produces``` adds the first value as the `Accept` header.
+The ```consume``` adds the first value as the `Content-Type` header.
+### Method Annotations
+#### `@RequestMapping`
+Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
+The method sets the request method.
+#### `@GetMapping`
+Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
+Sets the `GET` request method.
+#### `@PostMapping`
+Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
+Sets the `POST` request method.
+#### `@PutMapping`
+Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
+Sets the `PUT` request method.
+#### `@DeleteMapping`
+Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
+Sets the `DELETE` request method.
+#### `@PatchMapping`
+Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
+Sets the `PATCH` request method.
+### Parameter Annotations
+#### `@PathVariable`
+Links the value of the corresponding parameter to a template variable declared in the path.
+#### `@RequestParam`
+Links the value of the corresponding parameter to a query parameter. When invoked, null will skip the query param.
diff --git a/spring/pom.xml b/spring/pom.xml
new file mode 100644
index 000000000..b6d60a466
--- /dev/null
+++ b/spring/pom.xml
@@ -0,0 +1,60 @@
+
+
+
+ 4.0.0
+
+
+ io.github.openfeign
+ parent
+ 13.3-SNAPSHOT
+
+
+ feign-spring
+ Feign Spring
+ Feign Contracts for Spring
+
+
+ ${project.basedir}/..
+
+ 5.3.34
+
+
+
+
+ ${project.groupId}
+ feign-core
+
+
+ org.springframework
+ spring-web
+ ${spring.version}
+
+
+
+
+ ${project.groupId}
+ feign-mock
+ test
+
+
+ ${project.groupId}
+ feign-jackson
+ test
+
+
+
+
diff --git a/spring4/src/main/java/feign/spring/SpringContract.java b/spring/src/main/java/feign/spring/SpringContract.java
similarity index 99%
rename from spring4/src/main/java/feign/spring/SpringContract.java
rename to spring/src/main/java/feign/spring/SpringContract.java
index d0685ff8e..461ddb469 100755
--- a/spring4/src/main/java/feign/spring/SpringContract.java
+++ b/spring/src/main/java/feign/spring/SpringContract.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2012-2023 The Feign Authors
+ * Copyright 2012-2024 The Feign Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
diff --git a/spring4/src/test/java/feign/spring/Data.java b/spring/src/test/java/feign/spring/Data.java
similarity index 94%
rename from spring4/src/test/java/feign/spring/Data.java
rename to spring/src/test/java/feign/spring/Data.java
index a2f240bdb..230d228c0 100755
--- a/spring4/src/test/java/feign/spring/Data.java
+++ b/spring/src/test/java/feign/spring/Data.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2012-2023 The Feign Authors
+ * Copyright 2012-2024 The Feign Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
diff --git a/spring4/src/test/java/feign/spring/SpringContractTest.java b/spring/src/test/java/feign/spring/SpringContractTest.java
similarity index 99%
rename from spring4/src/test/java/feign/spring/SpringContractTest.java
rename to spring/src/test/java/feign/spring/SpringContractTest.java
index 3e89ac1fe..7ec7496bb 100755
--- a/spring4/src/test/java/feign/spring/SpringContractTest.java
+++ b/spring/src/test/java/feign/spring/SpringContractTest.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2012-2023 The Feign Authors
+ * Copyright 2012-2024 The Feign Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
diff --git a/spring4/README.md b/spring4/README.md
index 877d71533..351e01133 100644
--- a/spring4/README.md
+++ b/spring4/README.md
@@ -1,40 +1,3 @@
-# Feign Spring
-This module overrides OpenFeign/feign annotation processing to instead use standard ones supplied by the spring annotations specification.
+# Feign Spring4
-
-## Currently Supported Annotation Processing
-Feign only supports processing java interfaces (not abstract or concrete classes).
-
-ISE is raised when any annotation's value is empty or null. Ex. `Path("")` raises an ISE.
-
-Here are a list of behaviors currently supported.
-### Type Annotations
-#### `@RequestMapping`
-Appends the ```value``` to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
-The ```method``` sets the request method.
-The ```produces``` adds the first value as the `Accept` header.
-The ```consume``` adds the first value as the `Content-Type` header.
-### Method Annotations
-#### `@RequestMapping`
-Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
-The method sets the request method.
-#### `@GetMapping`
-Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
-Sets the `GET` request method.
-#### `@PostMapping`
-Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
-Sets the `POST` request method.
-#### `@PutMapping`
-Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
-Sets the `PUT` request method.
-#### `@DeleteMapping`
-Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
-Sets the `DELETE` request method.
-#### `@PatchMapping`
-Appends the value to `Target.url()`. Can have tokens corresponding to `@PathVariable` annotations.
-Sets the `PATCH` request method.
-### Parameter Annotations
-#### `@PathVariable`
-Links the value of the corresponding parameter to a template variable declared in the path.
-#### `@RequestParam`
-Links the value of the corresponding parameter to a query parameter. When invoked, null will skip the query param.
+The module was moved to [spring](../spring) and renamed to **Feign Spring**.
\ No newline at end of file
diff --git a/spring4/pom.xml b/spring4/pom.xml
index 8e8b9cac7..d4b77c2ee 100644
--- a/spring4/pom.xml
+++ b/spring4/pom.xml
@@ -24,7 +24,7 @@
feign-spring4
- Feign spring
+ Feign Spring4
Feign Contracts for Spring4
@@ -33,28 +33,9 @@
4.3.30.RELEASE
-
-
- ${project.groupId}
- feign-core
-
-
- org.springframework
- spring-web
- ${spring.version}
-
-
-
-
- ${project.groupId}
- feign-mock
- test
-
-
- ${project.groupId}
- feign-jackson
- test
-
-
-
+
+
+ feign-spring
+
+
diff --git a/src/docs/overview-mindmap.iuml b/src/docs/overview-mindmap.iuml
index ee3b26633..9167ed798 100644
--- a/src/docs/overview-mindmap.iuml
+++ b/src/docs/overview-mindmap.iuml
@@ -17,7 +17,7 @@
*** JAX-RS
*** JAX-RS 2
*** JAX-RS 3 / Jakarta
-*** Spring 4
+*** Spring 5
*** SOAP
*** SOAP Jakarta
*** Spring boot (3rd party)