Skip to content

Releases: spring-projects/spring-batch

v5.0.0-M8

13 Oct 10:39
Compare
Choose a tag to compare
v5.0.0-M8 Pre-release
Pre-release

⭐ New Features

  • Improve testability of SystemCommandTasklet #3955
  • String array command with SystemCommandTasklet #752

🚀 Enhancements

  • Change DefaultExecutionContextSerializer to produce Base64 #4122
  • Revisit the default configuration of ExecutionContextSerializer with EnableBatchProcessing #4140

🔨 Dependency Upgrades

  • Upgrade to Spring Framework 6.0.0-RC1
  • Upgrade to Spring Data 2022.0.0-M6
  • Upgrade to Spring Integration 6.0.0-M5
  • Upgrade to Spring AMQP 3.0.0-M4
  • Upgrade to Spring for Apache Kafka 3.0.0-M6
  • Upgrade to Spring Retry 2.0.0-M1
  • Upgrade to Micrometer 1.10.0-RC1

Deprecations and API changes

  • Deprecate throttle limit in favour of using similar features in TaskExecutor implementations #2218

❤️ Contributors

We'd like to thank all the contributors who worked on this release!


Full Change log: 5.0.0-M7...5.0.0-M8

v5.0.0-M7

05 Oct 04:25
Compare
Choose a tag to compare
v5.0.0-M7 Pre-release
Pre-release

⭐ New Features

  • Parameter types improvement #2122
  • Support Java 8 Dates for Job Parameters #1035

🚀 Enhancements

  • Revisit the default behaviour of job parameters conversion #3960

🔨 Dependency Upgrades

  • Upgrade to Spring Framework 6.0.0-M6
  • Upgrade to Spring Data 2022.0.0-M6
  • Upgrade to Spring Integration 6.0.0-M5
  • Upgrade to Spring AMQP 3.0.0-M4
  • Upgrade to Spring for Apache Kafka 3.0.0-M6
  • Upgrade to Spring Retry 2.0.0-M1
  • Upgrade to Micrometer 1.10.0-M6

📔 Documentation

  • Fix minor example in job.adoc #4199
  • Incorrect reference to SimpleJdbcTemplate in reference documentation #4197
  • Improve documentation of scoped beans definition #1502

Deprecations and API changes

  • Remove ParameterType enumeration #3960
  • Deprecate JobParameters#toProperties #3960
  • Deprecate JobParametersBuilder#addParameter #3960
  • The method JobParameter#getType now returns T instead of Object

❤️ Contributors

We'd like to thank all the contributors who worked on this release!


Full Change log: 5.0.0-M6...5.0.0-M7

v4.3.7

22 Sep 07:26
Compare
Choose a tag to compare

🐞 Bug fixes

  • Unable to register an annotation-based StepExecutionListener in a fault-tolerant step #4137
  • Unable to read XML data without spring-tx in the classpath #4132
  • Add missing initialized flag set to FlowJob #4142
  • Fix non-nullable columns in MySQL migration for Spring Batch 4.3 #4145

🚀 Enhancements

  • Declare dependency on jettison as optional #4196

📔 Documentation

  • Improve documentation of scoped beans definition #1502
  • Incorrect reference to SimpleJdbcTemplate in reference documentation #4197

🔨 Dependency Upgrades

  • Spring Framework: 5.3.23
  • Spring Retry: 1.3.3
  • Spring AMQP: 2.3.16
  • Spring Data: 2.5.12
  • Spring Integration: 5.5.15
  • Spring Kafka: 2.7.14
  • Spring LDAP: 2.3.8.RELEASE
  • Micrometer: 1.8.10

❤️ Contributors

We would like to thank all contributors who helped in shipping this release!

v5.0.0-M6

21 Sep 19:23
Compare
Choose a tag to compare
v5.0.0-M6 Pre-release
Pre-release

⭐ New Features

  • Add support to customize transaction attributes #4195
  • Add support to configure the transaction manager in SimpleJobOperator #1078
  • Add support to configure the transaction manager in SimpleJobExplorer #1307
  • Revisit the configuration of infrastructure beans with @EnableBatchProcessing #3942
  • Add native-image support for AbstractJobRepositoryFactoryBean #4144
  • Add native hints for Spring Batch #4187

🚀 Enhancements

  • Can't wrap JobRepository in a tracing representation #3899
  • Improve JobBuilder and StepBuilder APIs with regards to setting mandatory properties #4192
  • Deprecate Job/Step builder factories #4188

🐞 Bug Fixes

  • Incorrect transaction manager configuration in BatchConfigurer #4191
  • Inconsistent transaction manager configuration between XML and Java config styles #4130

🔨 Dependency Upgrades

  • Upgrade to Spring Framework 6.0.0-M6
  • Upgrade to Spring Data 2022.0.0-M6
  • Upgrade to Spring Integration 6.0.0-M5
  • Upgrade to Spring AMQP 3.0.0-M4
  • Upgrade to Spring for Apache Kafka 3.0.0-M6
  • Upgrade to Spring Retry 2.0.0-M1
  • Upgrade to Micrometer 1.10.0-M5

Deprecations and API changes

  • Deprecate JobBuilderFactory and StepBuilderFactory support #4188
  • Removal of BatchConfigurer and DefaultBatchConfigurer #3942
  • Removal of SimpleBatchConfiguration and ModularBatchConfiguration #3942

❤️ Contributors

We'd like to thank all the contributors who worked on this release!


Full Change log: 5.0.0-M5...5.0.0-M6

v5.0.0-M5

24 Aug 18:01
Compare
Choose a tag to compare
v5.0.0-M5 Pre-release
Pre-release

🚀 Enhancements

  • Migrate tests to JUnit Jupiter #4166
  • Remove the dependency to JUnit in AssertFile #4112

🐞 Bug Fixes

  • JobRepositoryTestUtils should work against the JobRepository interface #4070
  • The test datasource should not be autowired in JobRepositoryTestUtils #4178
  • The job under test should not be autowired in JobLauncherTestUtils #1237
  • RepositoryItemReader#setRepository is broken in 5.0.0-M4 #4164
  • Fix non-nullable columns in MySQL migration for Spring Batch 4.3 #4145

🔨 Dependency Upgrades

  • Upgrade to Spring Framework 6.0.0-M5
  • Upgrade to Spring Data 2022.0.0-M5
  • Upgrade to Spring Integration 6.0.0-M4
  • Upgrade to Spring AMQP 3.0.0-M3
  • Upgrade to Spring for Apache Kafka 3.0.0-M5
  • Upgrade to Micrometer 1.10.0-M4
  • Upgrade to Hibernate 6.1.2.Final

📔 Documentation

  • Update reference documentation to use the Spring Asciidoctor Backend #3865

Deprecations and API changes

  • Deprecate Hibernate support #4150
  • Deprecate AssertFile #4181
  • Use the Chunk API consistently #3954

❤️ Contributors

We'd like to thank all the contributors who worked on this release!


Full Changelog: 5.0.0-M4...5.0.0-M5

v5.0.0-M4

21 Jul 09:04
Compare
Choose a tag to compare
v5.0.0-M4 Pre-release
Pre-release

⭐ New Features

  • Add FunctionalInterface annotation where appropriate #4107
  • Add FieldExtractor implementation for Java records #4159
  • Configure the right FieldExtractor based on the type of items in FlatFileItemWriterBuilder #4161
  • Configure the right FieldSetMapper based on the type of items in FlatFileItemReaderBuilder #4160
  • Change transaction manager type to JdbcTransactionManager in default batch configuration #4126

🚀 Enhancements

  • Replace deprecated IntegrationFlows #4155
  • Rename SimpleJobLauncher to TaskExecutorJobLauncher #4123
  • Reduce use of deprecated APIs #4120

🐞 Bug Fixes

  • Unable to build the project without an internet connection #4152
  • Add missing initialized flag set to FlowJob #4142
  • Unable to register an annotation-based StepExecutionListener in a fault-tolerant step #4137
  • Fix tests catching nested exceptions #4136
  • Unable to read XML data without spring-tx in the classpath #4132
  • Maven surefire uses wrong provider for Spring Batch Core #4121
  • Lost transactionAttribute when using chaining StepBuilder #3686
  • ItemReadListener not being correctly registered after adding a StepExecutionListener #773
  • Cannot subclass final class com.sun.proxy.$Proxy202 #793
  • StepBuilderFactory Only Supports Listener Annotations, Not Listener Interfaces #1098

🔨 Dependency Upgrades

  • Upgrade to Spring Framework 6.0.0-M5
  • Upgrade to Spring Data 2022.0.0-M5
  • Upgrade to Spring Integration 6.0.0-M4
  • Upgrade to Spring AMQP 3.0.0-M3
  • Upgrade to Spring for Apache Kafka 3.0.0-M5
  • Upgrade to Micrometer 1.10.0-M3
  • Upgrade to Hibernate 6.1.1.Final

📔 Documentation

  • Add package-info.java to integration #4141
  • Editing pass #4163
  • Javadoc editing #4158
  • Improve Javadocs #4129

❤️ Contributors

We'd like to thank all the contributors who worked on this release!


Full Changelog: 5.0.0-M3...5.0.0-M4

v5.0.0-M3

19 May 01:54
Compare
Choose a tag to compare
v5.0.0-M3 Pre-release
Pre-release

⭐ Features

  • Create Maven BOM for Spring Batch modules #1097
  • Allow Lambdas to be passed as item processors in Java DSL #4061
  • Best to distinguish CreateTime and StartTime in StepExecution #4049
  • Make charset configurable in JdbcExecutionContextDao #795

🚀 Enhancements

  • Add @Nullable where appropriate in JobExecution and StepExecution #4077
  • Change default encoding to UTF-8 in JdbcExecutionContextDao #3983
  • Add java.util.UUID to the trusted classes list in Jackson2ExecutionContextStringSerializer #4110
  • AbstractFileItemWriter should support java.nio #756
  • Make JUnit4 dependency optional in spring-batch-test #4033

🐞 Bug fixes

  • FixedLengthTokenizer wrong tokenization with UTF-8 extended characters #3714
  • Inconsistent default encoding in FlatFileItemReader and FlatFileItemWriter #1154
  • StaxEventItemWriter.unclosedHeaderCallbackElements prevents new job execution #4044
  • Circular reference error when autowiring JobBuilderFactory #3991
  • NPE when creating MongoItemReader using a builder without specifying sorting #4082

🔨 Dependency Upgrades

  • Upgrade to Spring Framework 6.0.0-M4
  • Upgrade to Spring Data 2022.0.0-M4
  • Upgrade to Spring Integration 6.0.0-M3
  • Upgrade to Spring AMQP 3.0.0-M3
  • Upgrade to Spring for Apache Kafka 3.0.0-M4
  • Upgrade to Micrometer 1.10.0-M2

📔 Documentation

  • Incorrect documentation in "4.6.6 Abort a job" section #4037
  • Editing pass for Javdocs #4096 #4090
  • Editing pass for reference docs #4083
  • Fix Javadoc of SpringBatchTest annotation #4102

❤️ Contributors

We'd like to thank all contributors who helped in making this release possible!


Full Changelog: 5.0.0-M2...5.0.0-M3

v4.3.6

18 May 15:55
Compare
Choose a tag to compare

🐞 Bug fixes

  • Incorrect job restart with null parameters of type long/double #4087
  • SqlSyntaxErrorException when creating table BATCH_JOB_EXECUTION with db2 v9 #4001
  • StaxEventItemWriter.unclosedHeaderCallbackElements prevents new job execution #4044
  • NPE when creating MongoItemReader using a builder without specifying sorting #4082

🚀 Enhancements

  • Add @Nullable where appropriate in JobExecution and StepExecution #4077
  • Add java.util.UUID to the trusted classes list in Jackson2ExecutionContextStringSerializer #4110

📔 Documentation

  • Incorrect documentation in "4.6.6 Abort a job" section #4037
  • Fix Javadoc of SpringBatchTest annotation #4102
  • Wrong size for BATCH_JOB_INSTANCE.JOB_KEY in Appendix A #4071

🔨 Dependency Upgrades

  • Spring Framework: 5.3.20
  • Spring Retry: 1.3.3
  • Spring AMQP: 2.3.16
  • Spring Data: 2.5.11
  • Spring Integration: 5.5.12
  • Spring Kafka: 2.7.14
  • Spring LDAP: 2.3.8.RELEASE
  • Micrometer: 1.7.12

❤️ Contributors

We would like to thank all contributors who helped in shipping this release!

v5.0.0-M2

23 Mar 12:51
Compare
Choose a tag to compare
v5.0.0-M2 Pre-release
Pre-release

⭐ Features

  • Add Micrometer Observation API usage #4065
  • Integrate SAP Hana as supported Spring Batch database #1087

🚀 Enhancements

  • Rename schema-oracle10g to schema-oracle #1057
  • Constructors with var args/Lists #686
  • Remove benign [WARNINGS] from batch build #4066
  • MongoItemReader#setSort check its argument #4014
  • Collection's empty data check using CollectionUtils.isEmpty #4021
  • Add @Nullable to StepExecution::endTime #4034
  • Remove SQLLite Batch database tables before starting tests #4063

🔨 Dependency Upgrades

  • Upgrade to Spring Framework 6.0.0-M3
  • Upgrade to Spring Data 2022.0.0-M3
  • Upgrade to Spring Integration 6.0.0-M2
  • Upgrade to Spring AMQP 3.0.0-M2
  • Upgrade to Spring for Apache Kafka 3.0.0-M3
  • Upgrade to Micrometer 2.0.0-M2

📔 Documentation

  • Added missing docs for batch.core and batch.core.configuration packages #4068
  • Wrong size for BATCH_JOB_INSTANCE.JOB_KEY in Appendix A #4071
  • Fix typos in documentation #4010
  • Fix Javadoc of FaultTolerantChunkProvider #4029

❤️ Contributors

We'd like to thank all contributors who helped in making this release possible!

v4.3.5

23 Feb 16:29
Compare
Choose a tag to compare

🐞 Bug fixes

  • Adjust h2 schema to work with v2.0.x #4043
  • Adjust H2PagingQueryProvider to work with v2.x #4047

🚀 Enhancements

  • Simplify GET_LAST_STEP_EXECUTION #3997
  • Make countStepExecutions access batch_job_execution only once #3876
  • Add @Nullable to StepExecution::endTime #4034
  • Collection's empty data check using CollectionUtils.isEmpty #4021
  • Check arguments of MongoItemReader#setSort #4014

📔 Documentation

  • Add example for in-memory repository, with no deprecated classes #4016
  • Document default types of beans registered by EnableBatchProcessing annotation #3993
  • Fix Javadoc of FaultTolerantChunkProvider #4029
  • Fix typos in documentation #4010