Marvin Froeder
10ce9cb66b
prepare release 12.1
2 years ago
dependabot[bot]
a8f889a3c3
build(deps-dev): bump spring-context from 5.3.23 to 5.3.24 ( #1846 )
...
Bumps [spring-context](https://github.com/spring-projects/spring-framework ) from 5.3.23 to 5.3.24.
- [Release notes](https://github.com/spring-projects/spring-framework/releases )
- [Commits](https://github.com/spring-projects/spring-framework/compare/v5.3.23...v5.3.24 )
---
updated-dependencies:
- dependency-name: org.springframework:spring-context
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
Marcin Grzejszczak
72f379a03d
Micrometer Observations ( #1760 )
...
* WIP on Micrometer Observations
* Added verification that metrics are measured
* Fixed formatting
* Fixed wrong status code method call
* Converted to using around
* Fixed compilation issues
* prepare release 11.10
* [ci skip] updating versions to next development iteration 11.11-SNAPSHOT
* Preparing for next development version
* build(deps): bump json from 20220320 to 20220924 (#1768 )
Bumps [json](https://github.com/douglascrockford/JSON-java ) from 20220320 to 20220924.
- [Release notes](https://github.com/douglascrockford/JSON-java/releases )
- [Changelog](https://github.com/stleary/JSON-java/blob/master/docs/RELEASES.md )
- [Commits](https://github.com/douglascrockford/JSON-java/commits )
---
updated-dependencies:
- dependency-name: org.json:json
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Updated to latest micrometer changes
* Enriches via clientInterceptors
* Fixed the error in the DEFAULT instance
* Reverts enriching of CLientInterceptor to achieve observability
* build(deps): bump slf4j.version from 2.0.2 to 2.0.3 (#1769 )
Bumps `slf4j.version` from 2.0.2 to 2.0.3.
Updates `slf4j-simple` from 2.0.2 to 2.0.3
- [Release notes](https://github.com/qos-ch/slf4j/releases )
- [Commits](https://github.com/qos-ch/slf4j/compare/v_2.0.2...v_2.0.3 )
Updates `slf4j-nop` from 2.0.2 to 2.0.3
- [Release notes](https://github.com/qos-ch/slf4j/releases )
- [Commits](https://github.com/qos-ch/slf4j/compare/v_2.0.2...v_2.0.3 )
Updates `slf4j-api` from 2.0.2 to 2.0.3
- [Release notes](https://github.com/qos-ch/slf4j/releases )
- [Commits](https://github.com/qos-ch/slf4j/compare/v_2.0.2...v_2.0.3 )
Updates `slf4j-jdk14` from 2.0.2 to 2.0.3
- [Release notes](https://github.com/qos-ch/slf4j/releases )
- [Commits](https://github.com/qos-ch/slf4j/compare/v_2.0.2...v_2.0.3 )
---
updated-dependencies:
- dependency-name: org.slf4j:slf4j-simple
dependency-type: direct:development
update-type: version-update:semver-patch
- dependency-name: org.slf4j:slf4j-nop
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.slf4j:slf4j-api
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.slf4j:slf4j-jdk14
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump kotlin.version from 1.7.10 to 1.7.20 (#1771 )
Bumps `kotlin.version` from 1.7.10 to 1.7.20.
Updates `kotlin-stdlib-jdk8` from 1.7.10 to 1.7.20
- [Release notes](https://github.com/JetBrains/kotlin/releases )
- [Changelog](https://github.com/JetBrains/kotlin/blob/v1.7.20/ChangeLog.md )
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.7.10...v1.7.20 )
Updates `kotlin-reflect` from 1.7.10 to 1.7.20
- [Release notes](https://github.com/JetBrains/kotlin/releases )
- [Changelog](https://github.com/JetBrains/kotlin/blob/v1.7.20/ChangeLog.md )
- [Commits](https://github.com/JetBrains/kotlin/compare/v1.7.10...v1.7.20 )
Updates `kotlin-maven-plugin` from 1.7.10 to 1.7.20
---
updated-dependencies:
- dependency-name: org.jetbrains.kotlin:kotlin-stdlib-jdk8
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin:kotlin-reflect
dependency-type: direct:production
update-type: version-update:semver-patch
- dependency-name: org.jetbrains.kotlin:kotlin-maven-plugin
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump asm from 9.3 to 9.4 (#1777 )
Bumps asm from 9.3 to 9.4.
---
updated-dependencies:
- dependency-name: org.ow2.asm:asm
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Applied latest changes of Micrometer
* Polish
* Upgraded Micrometer to 1.10.0'
* Alternative micrometer observation using capability
* Ban 'repositories'
* Applied my own review suggestions ;)
* Polish
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Marvin Froeder <marvin.froeder@dovetailstudios.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marvin Froeder <marvin.froeder@police.govt.nz>
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Donghyeon Kim
8a68acef6a
Refactor method signature of MethodHandler.Factory.create ( #1822 )
...
* Add parameters to constructor of MethodHandler.Factory
* Refactor method signature of MethodHandler.Factory.create
* Remove necessary parameters from constructor of ParseHandlerByName
2 years ago
Donghyeon Kim
45cff0673a
Refactor reflective feign ( #1821 )
...
* Extract ParseHandlersByName.createMethodHandler
Extract the function so that the ParseHandlersByName.apply function is easy to understand.
* Refactor ReflectiveFeign.newInstance
Extract the function so that the ReflectiveFeign.newInstance function is easy to understand.
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Donghyeon Kim
d09b88efb6
Support retry cancel feature fully for AsyncFeign ( #1801 )
...
* Support retry cancel feature for AsyncFeign
* Support retry cancel feature fully for AsyncFeign
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Marvin Froeder
88f3d9e039
[ci skip] updating versions to next development iteration 12.1-SNAPSHOT
2 years ago
Marvin Froeder
d4b0282624
prepare release 12.0
2 years ago
Jared Komoroski
3806c67b4c
Add Unit Test For Json Literals Being Passed as Header Values ( #1800 )
...
Fix Formatting
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Donghyeon Kim
853ae4cffb
Fix false negative test case for AsyncFeign Retry feature ( #1795 )
...
False negative test case is added in PR #1757
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Donghyeon Kim
2b141a00ec
Eliminates unnecessary overhead ( #1786 )
...
* Refactor AsyncResponseHandler
* Extract ResponseHandler from AsyncResponseHandler
* Use ResponseHandler on SynchronousMethodHandler
Eliminates unnecessary overhead caused by CompletableFutre on synchronous operation.
* Modify `AsyncResponseHandler.handleResponse` method signature
* Fix code format
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
Co-authored-by: Marvin Froeder <marvin.froeder@dovetailstudios.com>
2 years ago
Donghyeon Kim
542312e616
Refactor AsyncFeign ( #1789 )
...
* Refactor to supply defaultContext on ReflectiveFeign
* Move target specification verification logic
* Refactor TargetSpecificationVerifier
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Donghyeon Kim
f8c57dabe4
Change some access modifier ( #1784 )
...
Revert the public access modifier changed in PR #1706
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Donghyeon Kim
6378ae2e83
Remove the unused code from the MethodInfo ( #1785 )
...
The MethodInfo.configKey field is not more used since PR #1757 removing AsyncInvocation
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Artur Magomedov
caa30649c0
Issue #1606 Customize the length of the body in FeignException builder ( #1767 )
...
Co-authored-by: Witalij Berdinskich <radio_rogal@keemail.me>
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Donghyeon Kim
368818ab9a
Add retry feature to async feign ( #1757 )
...
* Define MethodHandler.Factory interface
* Extract AsynchronousMethodHandler from SynchronousMethodHandler
* Genericize AsynchronousMethodHandler for receive requestContext
* Pass requestContext to AsynchronousMethodHandler
* Add retry feature to AsyncFeign
* Remove ReflectiveAsyncFeign
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Jared Komoroski
a39c0ea9c3
Implement a Regex based Check on Expressions ( #1776 )
...
Co-authored-by: Kevin Davis <kdavisk6@gmail.com>
2 years ago
Alexey Venderov
b596abe348
Set empty request body if it was null ( #1778 )
...
Co-authored-by: Kevin Davis <kdavisk6@gmail.com>
2 years ago
Kevin Davis
92b2f511a9
[GH-1464] Add appendHeader that supports Literals ( #1781 )
...
This change adds a new `appendHeader` internal method to `RequestTemplate`
allowing for already resolved headers to be added to the resolved `RequestTemplate`
preventing duplicate expression processing by using another new method
`HeaderTemplate.literal` and `HeaderTemplate.appendLiteral` respectively.
I chose this route as it isolates the change to be applied only after the
original `HeaderTemplate` has been resolved. While it does expose new
public `HeaderTemplate` APIs, I feel that is an OK trade off, allowing
a new escape-hatch for situations where URI template processing is not
acceptable for Header values.
2 years ago
Marvin Froeder
45fe10a0e3
Preparing for next development version
2 years ago
Marvin Froeder
cd242693a9
[ci skip] updating versions to next development iteration 11.11-SNAPSHOT
2 years ago
Marvin Froeder
b0c5db0ddf
prepare release 11.10
2 years ago
Donghyeon Kim
7d1cf7ced7
Refactor async feign ( #1755 )
...
* Add MethodInfoResolver to customize MethodInfo creation logic
* Add methodInfoResolver setter to AsyncBuilder
* Refactor CoroutineFeign to use AsyncFeignBuilder instead of FeignBuilder
* Deprecate CoroutineFeign.coBuilder
* Change AsyncFeign to not inherit Feign
* Deprecate AsyncFeign.asyncBuilder
* Refactor AsyncBuilder to build Feign directly
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
dependabot[bot]
333782514b
build(deps-dev): bump spring-context from 5.3.22 to 5.3.23 ( #1753 )
...
Bumps [spring-context](https://github.com/spring-projects/spring-framework ) from 5.3.22 to 5.3.23.
- [Release notes](https://github.com/spring-projects/spring-framework/releases )
- [Commits](https://github.com/spring-projects/spring-framework/compare/v5.3.22...v5.3.23 )
---
updated-dependencies:
- dependency-name: org.springframework:spring-context
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
Donghyeon Kim
39ed8ef2a7
Support kotlin coroutines ( #1706 )
...
* Support kotlin coroutines
Resolves : #1565
Inspired by https://github.com/PlaytikaOSS/feign-reactive/pull/486
## TODO
- [ ] Separate Kotlin support module
- [ ] Enhance test case
- [ ] Refactoring
- [ ] Clean up pom.xml
* Apply optional dependency to kotlin support related dependency
* Seperate Kotlin support module
* Remove unused code from ClassUtils.java
* Remove unused code from ClassUtils.java
* Refactor KotlinDetector
* Move ClassUtils location into KotlinDetector
* Move KotlinDetector location
* Format code
* First attempt to move kotlin work to it's own isolated module
* Coroutine Feign using AyncFeign
* Coroutine Feign using AyncFeign
* Refactor suspending function detect logic
- Remove KotlinDetector.java
- Add Method.isSuspend extension function
* Cleanup CoroutineFeignTest test code format
* Fix suspend function contract parsing error when using http body
* Rename test names to be meaningful
* Add Github Example With Coroutine
- Copy of GithubExample
* Remove unnecessary dependency
https://github.com/OpenFeign/feign/pull/1706/files#r965389041
Co-authored-by: Marvin Froeder <velo.br@gmail.com>
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
dependabot[bot]
c4fba10993
build(deps): bump mockito-core from 4.6.1 to 4.7.0 ( #1724 )
...
* build(deps): bump mockito-core from 4.6.1 to 4.7.0
Bumps [mockito-core](https://github.com/mockito/mockito ) from 4.6.1 to 4.7.0.
- [Release notes](https://github.com/mockito/mockito/releases )
- [Commits](https://github.com/mockito/mockito/compare/v4.6.1...v4.7.0 )
---
updated-dependencies:
- dependency-name: org.mockito:mockito-core
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update pom.xml
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Witalij Berdinskich
f07c484b7a
Proof that clients support gzip and deflate compression ( #1713 )
...
* Proof that clients support gzip and deflate compression
* Remove unused private methods
2 years ago
Marvin Froeder
b4491b5a77
Preparing for next development version
2 years ago
Marvin Froeder
7d288b8761
[ci skip] updating versions to next development iteration 11.9.2-SNAPSHOT
2 years ago
Marvin Froeder
0a3dbeff39
prepare release 11.9.1
2 years ago
Marvin Froeder
8b7cf81bba
Preparing for bugfix release of 11.9
2 years ago
dependabot[bot]
a1a875775d
build(deps-dev): bump spring-context from 5.3.21 to 5.3.22 ( #1692 )
...
Bumps [spring-context](https://github.com/spring-projects/spring-framework ) from 5.3.21 to 5.3.22.
- [Release notes](https://github.com/spring-projects/spring-framework/releases )
- [Commits](https://github.com/spring-projects/spring-framework/compare/v5.3.21...v5.3.22 )
---
updated-dependencies:
- dependency-name: org.springframework:spring-context
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
Marvin Froeder
39f1d1378d
Restore bytcode compatibility ( #1689 )
2 years ago
dependabot[bot]
3435d6240f
build(deps-dev): bump spring-context from 5.2.14.RELEASE to 5.3.21 ( #1671 )
...
Bumps [spring-context](https://github.com/spring-projects/spring-framework ) from 5.2.14.RELEASE to 5.3.21.
- [Release notes](https://github.com/spring-projects/spring-framework/releases )
- [Commits](https://github.com/spring-projects/spring-framework/compare/v5.2.14.RELEASE...v5.3.21 )
---
updated-dependencies:
- dependency-name: org.springframework:spring-context
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2 years ago
Marvin Froeder
5c96c8f270
Use enforcer plugin to garantee core is free from dependencies ( #1655 )
2 years ago
Marvin Froeder
78d7e845a9
[ci skip] updating versions to next development iteration 12.0-SNAPSHOT
2 years ago
Marvin Froeder
0cbd577237
prepare release 11.9
2 years ago
Marvin Froeder
a259a729a8
Alternative ResponseInterceptor attempt ( #1634 )
...
* add ResponseInterceptor support #1126
* Add the license header.
Add the license header.
Co-authored-by: Dewald de Jager <DewaldDeJager@users.noreply.github.com>
* small fix for license header
* fix format issue
* combine before and after method to one aroundDecode method
* Change ResponseInterceptor to use InvocationContext
Co-authored-by: Fei,Yanke <yanke.fei@mosi-tech.com>
Co-authored-by: feiyanke <feiyanke@126.com>
Co-authored-by: Dewald de Jager <DewaldDeJager@users.noreply.github.com>
2 years ago
Eduard Dudar
75a3c1cf6f
Support of capabilities for AsyncFeign ( #1626 )
...
* Support of capabilities for AsyncFeign
* Removed SyncBased interface, added todo for stageExecution, and adopted micrometer client to be async as well.
* Added internal builder flag similar to 'forceDecoding' but for client enrichment
* Added async client enrichment to Dropwizard5 capability
* Added async client enrichment to Dropwizard5 capability + code formatting
* Progress with tests; added decoder condition similar to the client one
* Fixed javadoc
* A different take on skipping enrichment and delagation
* Switcharoo
* Relaxed casting requirements and check it during execution phase
* Create class to hold common Builder fields
* Make sure capabilities are applied to all relevant fields
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
Co-authored-by: Marvin Froeder <velo.br@gmail.com>
2 years ago
Eduard Dudar
3042e521b9
Advanced parametrized type resolution for AsyncFeign ( #1623 )
...
* Advanced parametrized type resolution for AsyncFeign
* Formatting fix
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
mroccyen
d27d385e1a
fix:issue 1420 ( #1620 )
2 years ago
mroccyen
7230f7c6ee
Stream decoder optimize ( #1590 )
...
* Optimize StreamDecoder
* Optimize StreamDecoder
* add license header
* add license header
* Optimize StreamDecoder
* Optimize StreamDecoder
* Optimize StreamDecoder
* Optimize StreamDecoder
* add license header
* add license header
* Optimize StreamDecoder
* Optimize StreamDecoder
* Optimize StreamDecoder
* Optimize StreamDecoder
* Optimize StreamDecoder
* add license header
* add license header
* Optimize StreamDecoder
* Optimize StreamDecoder
* Optimize StreamDecoder
* Optimize StreamDecoder
* add license header
* Optimize StreamDecoder
* Optimize StreamDecoder
* Optimize StreamDecoder
* add some example
* Optimize StreamDecoder
* add a section of README for stream decoder
* Update StreamDecoder.java
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
2 years ago
Kevin Davis
e1a70289cd
[GH-1319] Add Support for Path Style Parameter Expansion ( #1537 )
...
* [GH-1319] Add Support for Path Style Parameter Expansion
Fixes #1319
This change adds limited Path Style support to Feign URI template-style
templates. Variable expressions that start with a semi-colon `;`
are now expanded in accordance to [RFC 6570 Section 3.2.7](https://datatracker.ietf.org/doc/html/rfc6570#section-3.2.7 )
with the following modifications:
* Maps and Lists are expanded by default.
* Only Single variable templates are supported.
Examples:
```
{;who} ;who=fred
{;half} ;half=50%25
{;empty} ;empty
{;list} ;list=red;list=green;list=blue
{;keys} ;semi=%3B;dot=.;comma=%2C
```
* Export Path Style Expression as an Expander for use with custom contracts
* Added example to ReadMe
* Additional Test Cases.
3 years ago
Witalij Berdinskich
55b35f711d
Deprecate QueryMap.encode, remove processing of the "encode" parameter ( #1551 )
...
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
3 years ago
Witalij Berdinskich
04a85e6961
All decoders follow rule: if a status is 404 it returns empty or null value ( #1597 )
...
* All decoders follow rule: if status 404 it returns empty or null value
* Replace decode404 with dismiss404
3 years ago
mroccyen
a6fc182d45
fix: Undefined value in @QueryMap params works not as described ( #1585 )
...
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
3 years ago
selectee
7146e358e5
Add ability use case insensitive headers for default Client ( #1586 )
...
* Add ability use case insensitive headers for default Client
* Add ability use case insensitive headers for default Client
Co-authored-by: Alexander Zadvinskiy <azadvinskiy@it-one.ru>
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
3 years ago
BestWishes
afba674800
Add support for the parameter type corresponding to headerMapIndex for user object ( #1581 )
...
* feat: add support for the parameter type corresponding to headerMapIndex for user object
* feat: add a resolution of the user pojo object
* feat: add a resolution of the user pojo object
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
3 years ago
jizhuozhi
8bbc2600dc
fix: field of enum must be final ( #1577 )
3 years ago
myifeng
057caadf0d
Remove deprecated method. ( #1545 )
...
* Remove deprecated method.
Replace JUnit ExpectedException with assertThrows.
Replace JUnit Assert.assertThat with TestCase.assertEquals.
Fix assertEquals parameter position.
* Fix license
* format code
* Replace JUnit assertThat with Hamcrest.
* Replace TestCase.assertEquals with Assert.assertEquals
Co-authored-by: liqf7 <liqf7@lenovo.com>
Co-authored-by: Marvin Froeder <velo@users.noreply.github.com>
3 years ago