Artem Bilan <abilan@vmware.com>: Author Summary

Builds triggered by Artem Bilan <abilan@vmware.com>

Builds triggered by an author are those builds which contains changes committed by the author.
179
55 (31%)
124 (69%)

Breakages and fixes

Broken means the build has failed but the previous build was successful.
Fixed means that the build was successful but the previous build has failed.
21 (12% of all builds triggered)
39 (22% of all builds triggered)
18
Build Completed Code commits Tests
INT › MASTERSPRING40 › #1167 11 hours ago
Simplify complexity in ZeroMqChannel constructor
* Upgrade to Spring AMQP `2.3.0-M2`
Upgrade to SK `2.6.0-M1`; prepare for release
Add `zeromq.adoc` to index files
* Fix Sonar smells for new ZeroMQ components
* Upgrade to Spring Data `2020.0.0-M2`
1 of 4902 failed
INTSAMPLES › NIGHTLY › #3278 12 hours ago
Upgrade dependencies; fix compatibility
Add IDEA `/out` dir to ignore
97 passed
INT › SONAR › #3305 12 hours ago
Upgrade to SK `2.6.0-M1`; prepare for release
Simplify complexity in ZeroMqChannel constructor
* Upgrade to Spring AMQP `2.3.0-M2`
Testless build
INTSAMPLES › SONG › #1837 12 hours ago
Upgrade dependencies; fix compatibility
Add IDEA `/out` dir to ignore
Testless build
INT › MASTER › #2137 21 hours ago
Upgrade to SK `2.6.0-M1`; prepare for release
5135 passed
INT › MASTER › #2136 23 hours ago
Simplify complexity in ZeroMqChannel constructor
* Upgrade to Spring AMQP `2.3.0-M2`
5135 passed
INT › MASTER › #2135 23 hours ago
Add `zeromq.adoc` to index files
* Fix Sonar smells for new ZeroMQ components
* Upgrade to Spring Data `2020.0.0-M2`
5135 passed
INT › SONAR › #3304 23 hours ago
Add `zeromq.adoc` to index files
* Fix Sonar smells for new ZeroMQ components
* Upgrade to Spring Data `2020.0.0-M2`
Testless build
INT › MASTERSPRING40 › #1166 1 day ago
INT-3045: Add `ZeroMqChannel` support (#3355)
* INT-3045: Add `ZeroMqChannel` support

JIRA: INT-3045">https://jira.spring.io/browse/INT-3045

Provide a `SubscribableChannel` implementation for ZeroMQ

The general idea is to let to have a distributed channel implementation
where every client can connect to a single server backed by the channel.

The logic in the channel is fully transparent for end-user and there is just
enough to send message to it and subscribe for receiving on the other side.
If PUB/SUB model is used, all the subscribes (even over the network) going to
receive the same published message.
In case of PUSH/PULL only one subscriber in the whole cluster is going to get
the published message

* Use Reactor for better threading control
* JeroMQ is not interruptible-friendly: use control sockets to stop proxy loop
* Name Reactor's schedulers to avoid daemon threads

* * Use try-catch-with-resource to close sockets automatically
* Fix Checkstyle violations
* Use `Mono.handle()` to receive data from the socket

* * Optimize local for just a couple of PAIR sockets
* Implement TCP binding
* Add PUB/SUB tests

* * Fix subscriber scheduler name
* Optimize socket create logic
* Add PUSH/PULL over TCP test

* * Fix subscriber scheduler name
* Optimize socket create logic
* Add PUSH/PULL over TCP test
* Implement PUB/SUB over TCP

* * Introduce `ZeroMqProxy` - Spring-friendly component to configure and manage ZeroMq proxy
* Use this `ZeroMqProxy` logic as an external component for `ZeroMqChannel` testing

* * Fix Checkstyle
* Apply docs polishing
* Expose a capture socket on the proxy
* Implement `DisposableBean` in the `ZeroMqProxy` to destroy an internal executor service
* Add JavaDocs to `ZeroMqChannel`
* Add one more `ZeroMqChannel` to TCP test to be sure that proxy distribution works well

* * Add `hamcrest-core` dependency for Awatility

* * Add more JavaDocs to `ZeroMqProxy` and `ZeroMqChannel`
* Expose `ZeroMqChannel.setZeroMqProxy()` option for easier
configuration within the same application context
* Make `ZeroMqChannel` sockets configuration and connection
dependant on provided `ZeroMqProxy` (if any)
* Add `Consumer<ZMQ.Socket>` configuration callbacks to the `ZeroMqChannel`
* Expose `ZeroMqChannel.consumeDelay` option

* * Add docs for ZeroMQ
* Some additions into a `reactive-streams.adoc`
* Fix typo in the `xmpp.adoc`

* * Add `optional` `jackson-databind` since `ZeroMqChannel` uses it by default
* More words into docs

* * Fix language in docs according review

* Fix language in docs according review

Co-authored-by: Gary Russell <grussell@vmware.com>

* Apply suggestions from code review

Co-authored-by: Oliver <oli-ver@users.noreply.github.com>

* * Fix threading using a `publishOn()` for specific scheduler after `cache()`

* * Remove unused import

* * Change proxy port check from static `Mono.just()` to `Mono.fromCallable()`
to really evaluate the current port state on every repeat
* Add finite `100` repeat number to avoid infinite blocking when proxy is not started at all
* Add `doOnError()` for proxy `Mono` to log `ERROR` when repeat is exhausted

* * Fix Checkstyle violation

Co-authored-by: Gary Russell <grussell@vmware.com>
Co-authored-by: Oliver <oli-ver@users.noreply.github.com>
Add NOSONAR to IntReactiveUtils#emitNext() loop
Upgrade dependencies to the latest milestones
5272 passed
INT › SONAR › #3303 1 day ago
INT-3045: Add `ZeroMqChannel` support (#3355)
* INT-3045: Add `ZeroMqChannel` support

JIRA: INT-3045">https://jira.spring.io/browse/INT-3045

Provide a `SubscribableChannel` implementation for ZeroMQ

The general idea is to let to have a distributed channel implementation
where every client can connect to a single server backed by the channel.

The logic in the channel is fully transparent for end-user and there is just
enough to send message to it and subscribe for receiving on the other side.
If PUB/SUB model is used, all the subscribes (even over the network) going to
receive the same published message.
In case of PUSH/PULL only one subscriber in the whole cluster is going to get
the published message

* Use Reactor for better threading control
* JeroMQ is not interruptible-friendly: use control sockets to stop proxy loop
* Name Reactor's schedulers to avoid daemon threads

* * Use try-catch-with-resource to close sockets automatically
* Fix Checkstyle violations
* Use `Mono.handle()` to receive data from the socket

* * Optimize local for just a couple of PAIR sockets
* Implement TCP binding
* Add PUB/SUB tests

* * Fix subscriber scheduler name
* Optimize socket create logic
* Add PUSH/PULL over TCP test

* * Fix subscriber scheduler name
* Optimize socket create logic
* Add PUSH/PULL over TCP test
* Implement PUB/SUB over TCP

* * Introduce `ZeroMqProxy` - Spring-friendly component to configure and manage ZeroMq proxy
* Use this `ZeroMqProxy` logic as an external component for `ZeroMqChannel` testing

* * Fix Checkstyle
* Apply docs polishing
* Expose a capture socket on the proxy
* Implement `DisposableBean` in the `ZeroMqProxy` to destroy an internal executor service
* Add JavaDocs to `ZeroMqChannel`
* Add one more `ZeroMqChannel` to TCP test to be sure that proxy distribution works well

* * Add `hamcrest-core` dependency for Awatility

* * Add more JavaDocs to `ZeroMqProxy` and `ZeroMqChannel`
* Expose `ZeroMqChannel.setZeroMqProxy()` option for easier
configuration within the same application context
* Make `ZeroMqChannel` sockets configuration and connection
dependant on provided `ZeroMqProxy` (if any)
* Add `Consumer<ZMQ.Socket>` configuration callbacks to the `ZeroMqChannel`
* Expose `ZeroMqChannel.consumeDelay` option

* * Add docs for ZeroMQ
* Some additions into a `reactive-streams.adoc`
* Fix typo in the `xmpp.adoc`

* * Add `optional` `jackson-databind` since `ZeroMqChannel` uses it by default
* More words into docs

* * Fix language in docs according review

* Fix language in docs according review

Co-authored-by: Gary Russell <grussell@vmware.com>

* Apply suggestions from code review

Co-authored-by: Oliver <oli-ver@users.noreply.github.com>

* * Fix threading using a `publishOn()` for specific scheduler after `cache()`

* * Remove unused import

* * Change proxy port check from static `Mono.just()` to `Mono.fromCallable()`
to really evaluate the current port state on every repeat
* Add finite `100` repeat number to avoid infinite blocking when proxy is not started at all
* Add `doOnError()` for proxy `Mono` to log `ERROR` when repeat is exhausted

* * Fix Checkstyle violation

Co-authored-by: Gary Russell <grussell@vmware.com>
Co-authored-by: Oliver <oli-ver@users.noreply.github.com>
Upgrade dependencies to the latest milestones
Add NOSONAR to IntReactiveUtils#emitNext() loop
Testless build
Build Completed Code commits Tests
INT › MASTERSPRING40 › #1167 11 hours ago
Simplify complexity in ZeroMqChannel constructor
* Upgrade to Spring AMQP `2.3.0-M2`
Upgrade to SK `2.6.0-M1`; prepare for release
Add `zeromq.adoc` to index files
* Fix Sonar smells for new ZeroMQ components
* Upgrade to Spring Data `2020.0.0-M2`
1 of 4902 failed
INT › MASTER › #2133 1 day ago
INT-3045: Add `ZeroMqChannel` support (#3355)
* INT-3045: Add `ZeroMqChannel` support

JIRA: INT-3045">https://jira.spring.io/browse/INT-3045

Provide a `SubscribableChannel` implementation for ZeroMQ

The general idea is to let to have a distributed channel implementation
where every client can connect to a single server backed by the channel.

The logic in the channel is fully transparent for end-user and there is just
enough to send message to it and subscribe for receiving on the other side.
If PUB/SUB model is used, all the subscribes (even over the network) going to
receive the same published message.
In case of PUSH/PULL only one subscriber in the whole cluster is going to get
the published message

* Use Reactor for better threading control
* JeroMQ is not interruptible-friendly: use control sockets to stop proxy loop
* Name Reactor's schedulers to avoid daemon threads

* * Use try-catch-with-resource to close sockets automatically
* Fix Checkstyle violations
* Use `Mono.handle()` to receive data from the socket

* * Optimize local for just a couple of PAIR sockets
* Implement TCP binding
* Add PUB/SUB tests

* * Fix subscriber scheduler name
* Optimize socket create logic
* Add PUSH/PULL over TCP test

* * Fix subscriber scheduler name
* Optimize socket create logic
* Add PUSH/PULL over TCP test
* Implement PUB/SUB over TCP

* * Introduce `ZeroMqProxy` - Spring-friendly component to configure and manage ZeroMq proxy
* Use this `ZeroMqProxy` logic as an external component for `ZeroMqChannel` testing

* * Fix Checkstyle
* Apply docs polishing
* Expose a capture socket on the proxy
* Implement `DisposableBean` in the `ZeroMqProxy` to destroy an internal executor service
* Add JavaDocs to `ZeroMqChannel`
* Add one more `ZeroMqChannel` to TCP test to be sure that proxy distribution works well

* * Add `hamcrest-core` dependency for Awatility

* * Add more JavaDocs to `ZeroMqProxy` and `ZeroMqChannel`
* Expose `ZeroMqChannel.setZeroMqProxy()` option for easier
configuration within the same application context
* Make `ZeroMqChannel` sockets configuration and connection
dependant on provided `ZeroMqProxy` (if any)
* Add `Consumer<ZMQ.Socket>` configuration callbacks to the `ZeroMqChannel`
* Expose `ZeroMqChannel.consumeDelay` option

* * Add docs for ZeroMQ
* Some additions into a `reactive-streams.adoc`
* Fix typo in the `xmpp.adoc`

* * Add `optional` `jackson-databind` since `ZeroMqChannel` uses it by default
* More words into docs

* * Fix language in docs according review

* Fix language in docs according review

Co-authored-by: Gary Russell <grussell@vmware.com>

* Apply suggestions from code review

Co-authored-by: Oliver <oli-ver@users.noreply.github.com>

* * Fix threading using a `publishOn()` for specific scheduler after `cache()`

* * Remove unused import

* * Change proxy port check from static `Mono.just()` to `Mono.fromCallable()`
to really evaluate the current port state on every repeat
* Add finite `100` repeat number to avoid infinite blocking when proxy is not started at all
* Add `doOnError()` for proxy `Mono` to log `ERROR` when repeat is exhausted

* * Fix Checkstyle violation

Co-authored-by: Gary Russell <grussell@vmware.com>
Co-authored-by: Oliver <oli-ver@users.noreply.github.com>
1 of 3719 failed
INT › MASTER › #2125 2 days ago
MessagingGW: replace MonoProcessor with Sinks.One
The `MonoProcessor.create()` is deprecated in the Reactor in favor of `Sinks.one()`
179 passed
INT › MASTERSPRING40 › #1161 6 days ago
Fix new Sonar smells
Remove usage of removed SF deprecated classes
Related to https://github.com/spring-projects/spring-framework/issues/25548
1 of 3970 failed
INT › MASTER › #2098 1 week ago
Upgrade Gradle and plugins
5108 passed
INT › SI51X › #141 2 weeks ago
Add gauges for queue channel size (#3349)
* Add gauges for queue channel size

The `QueueChannel` provides a current size and remaining capacity metrics

* Add Micrometer gauges into `QueueChannel` to expose the current values
of the size and remaining capacity

**Cherry-pick to 5.3.x, 5.2.x & 5.1.x**

* * Revert `@SuppressWarnings("unchecked")` for test
* Document new gauges for queue channel

* * Fix IntegrationManagementConfigurer for NPE on `metricsCaptor`

* Fix wording in meter descriptions

Co-authored-by: Michel Jung <michel.jung89@gmail.com>

Co-authored-by: Michel Jung <michel.jung89@gmail.com>
Testless build
INT › MASTER › #2091 2 weeks ago
Add gauges for queue channel size (#3349)
* Add gauges for queue channel size

The `QueueChannel` provides a current size and remaining capacity metrics

* Add Micrometer gauges into `QueueChannel` to expose the current values
of the size and remaining capacity

**Cherry-pick to 5.3.x, 5.2.x & 5.1.x**

* * Revert `@SuppressWarnings("unchecked")` for test
* Document new gauges for queue channel

* * Fix IntegrationManagementConfigurer for NPE on `metricsCaptor`

* Fix wording in meter descriptions

Co-authored-by: Michel Jung <michel.jung89@gmail.com>

Co-authored-by: Michel Jung <michel.jung89@gmail.com>
1 of 3968 failed
INT › SI51X › #136 3 weeks ago
Improve Kryo Codec for registrations
# Conflicts:
#        spring-integration-core/src/test/java/org/springframework/integration/codec/kryo/KryoCodecTests.java
Fix typo in KryoCodecTests
(cherry picked from commit 5e45b09cd5a0e7f7a22a99c697d10613585ee05d)
1 of 3815 failed
INT › SI43X › #370 3 weeks ago
Improve Kryo Codec for registrations
# Conflicts:
#        spring-integration-core/src/test/java/org/springframework/integration/codec/kryo/KryoCodecTests.java

# Conflicts:
#        spring-integration-core/src/main/java/org/springframework/integration/codec/kryo/AbstractKryoCodec.java
#        spring-integration-core/src/test/java/org/springframework/integration/codec/kryo/CompositeCodecTests.java
#        spring-integration-core/src/test/java/org/springframework/integration/codec/kryo/KryoCodecTests.java
92 passed
INT › WIP53 › #80 3 weeks ago
Improve Kryo Codec for registrations
136 passed
Build Completed Code commits Tests
INTSAMPLES › NIGHTLY › #3278 12 hours ago
Upgrade dependencies; fix compatibility
Add IDEA `/out` dir to ignore
97 passed
INTSAMPLES › SONG › #1837 12 hours ago
Upgrade dependencies; fix compatibility
Add IDEA `/out` dir to ignore
Testless build
INT › MASTER › #2134 1 day ago
Upgrade dependencies to the latest milestones
5135 passed
INT › MASTER › #2132 2 days ago
Add NOSONAR to IntReactiveUtils#emitNext() loop
5131 passed
INT › BSP32 › #59 2 days ago
Fix compatibility with Reactor & Spring Data
Add diagnostics into StompServerIntegrationTests
Fix Checkstyle violation
Disable STOMP test until the fix reactor-netty
* Fix new Sonar smells * Remove redundant `@SuppressWarnings("deprecation")` * Add `Duration.ofSeconds(10)` to `StepVerifier.verify()` to avoid infinite wait and lose failing text context on the hang CI build
Fix IntReactiveUtils for the proper emission
* Enable `MessageChannelReactiveUtilsTests.testOverproducingWithSubscribableChannel()` back
* Disable `StompServerIntegrationTests` again since build on CI is stalled again
Fix unused import
* Fix new Sonar smells
MessagingGW: replace MonoProcessor with Sinks.One
The `MonoProcessor.create()` is deprecated in the Reactor in favor of `Sinks.one()`
Downgrade Lettuce version to 5.3.2
Revert some dependencies to be sure in build
Enable STOMP test back to check the solution
* Remove more `ManageableSmartLifecycle` from non-channel adapter components
Fix Checkstyle issues; upgrade some dependencies
Fix STOMP integration test to close stompClient
The `ReactorNettyTcpStompClient` is based on the `ReactorNettyTcpClient`
which uses a `Schedulers.newParallel()` which has to be shut downed in the end
* Migrate all the STOMP tests to JUnit 5
Remove usage of removed SF deprecated classes
Related to https://github.com/spring-projects/spring-framework/issues/25548
Fix new Sonar smells
4 passed
INT › MASTER › #2129 2 days ago
Fix unused import
* Fix new Sonar smells
5130 passed
INT › MASTER › #2127 2 days ago
Fix IntReactiveUtils for the proper emission
* Enable `MessageChannelReactiveUtilsTests.testOverproducingWithSubscribableChannel()` back
* Disable `StompServerIntegrationTests` again since build on CI is stalled again
5125 passed
INT › MASTERSPRING40 › #1164 3 days ago
Enable STOMP test back to check the solution
* Remove more `ManageableSmartLifecycle` from non-channel adapter components
5262 passed
INT › MASTER › #2122 4 days ago
Disable STOMP test until the fix reactor-netty
5124 passed
INT › MASTERSPRING40 › #1160 1 week ago
Fix compatibility with Reactor & Spring Data
5266 passed