github spring-projects/spring-batch 5.0.0-M1
v5.0.0-M1

latest releases: v5.2.0-M1, v5.1.2, v5.0.6...
pre-release2 years ago

This is the first milestone of Spring Batch 5.0. This milestone contains a number of breaking changes. Please refer to the migration guide for more details about upgrade instructions.

🚀 Enhancements

  • Remove the unconditional exposure of the transaction manager as a bean #3981
  • SQL Server Auto-generated Schema - TEXT data type deprecated: #864
  • Deprecate support classes implementing interfaces with default methods #3925
  • Add default methods in interfaces #3924
  • JobParameter must not accept null values #3913
  • FlatFileItemWriter now uses charset to determine default encoding #3910
  • FlatFileItemReader and FlatFileItemWriter don't have the same default encoding #1154
  • Avoid string conversion in ExecutionContextSerializer tests #3986
  • Make ScopeConfiguration publicly accessible #3958
  • In JOB_PARAMS table DATE_VAL column is updated incorrectly Like "1/1/1970 1:00:00.000000 AM" instead to the current date #1577
  • Use default methods in TestExecutionListener #3909
  • refactor: simplify boolean expression #3945
  • Remove Reflection from StepScopeTestExecutionListener #3908
  • Replace deprecated TransactionSynchronizationAdapter #3874
  • Remove double brace initialization #3868
  • Fix some raw types #3803
  • Don't call wrapper constructors directly #3800
  • Replace Assert.assertThat with MatcherAssert.assertThat #3804
  • Replace #initMocks with MockitoRule #3805
  • Refactor deprecated extractDatabaseMetaData #3873
  • Simplify GET_LAST_STEP_EXECUTION #3997
  • Make countStepExecutions access batch_job_execution only once #3876
  • Adjust h2 schema to work with v2.0.x #4043
  • Adjust H2PagingQueryProvider to work with v2.x #4047
  • Require spring-jdbc in core module #4048
  • Rename setJobIncrementer to setJobInstanceIncrementer in JdbcJobInstanceDao #3929

⭐ Features

  • Upgrade minimum Java version to 17 #3994
  • Add setter with a strongly typed parameter for the transaction isolation level type #4032
  • Add getDataSource method to DefaultBatchConfigurer #3872

🐞 Bug fixes

  • StepExecution counts integer overflow #3650
  • Deadlock accessing creating a job on sqlserver when multiple jobs start at once #1448
  • Oracle Error on creating new Batch Job #1127
  • Oracle clustered environment with cached sequences can lead to Spring Batch thinking new job already exists #2000
  • Batch sequences generate unordered ids, which results in unordered instances returned by JobExplorer #1422
  • DefaultBatchConfigurer warns about the lack of TransactionManager provided, yet offers no way to supply it #763
  • No pom.xml for published artifacts for 5.0.0-SNAPSHOT #4028
  • Map.of() cannot be deserialized #4036

🔨 Tasks

  • Favour jakarta over javax components #3656
  • Upgrade Spring dependencies to major versions #4027
  • Deprecate support for Neo4j #3956
  • Update maven wrapper version to 3.8.2 #3978
  • Clean up schema versions in XML files #913
  • Remove deprecated APIs #3836
  • Remove usage of deprecated APIs #3838
  • Remove SQLFire support #3839
  • Remove JSR-352 implementation #3894
  • Updated graceful shutdown sample by removing deprecated code #3916
  • Replaces deprecated interfaces #3971
  • Remove some deprecated APIs from tests #3962
  • CI builds against various database platforms #3092
  • OptimisticLockingFailureTests.testAsyncStopOfStartingJob fails intermittently #1121
  • Intermittent failure in ConcurrentTransactionTests on windows #3851
  • Intermittent failure in AsynchronousTests on windows #3852
  • FaultTolerantExceptionClassesTests testNoRollbackTaskletRollbackException fails intermittently #1117
  • Rename master branch to main #3879
  • Update build process to use Maven #3820

🔨 Dependency Upgrades

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

📔 Documentation

  • Editing of the job edit changes #3918
  • Add EPUB output in documentation #3920
  • Restore the dynamic ToC #4019

❤️ Contributors

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

Don't miss a new spring-batch release

NewReleases is sending notifications on new releases.