Skip to content

Commit 53eabcd

Browse files
committed
Update the "what's new" section for 5.0.0-M3
1 parent b969f2a commit 53eabcd

File tree

1 file changed

+41
-47
lines changed

1 file changed

+41
-47
lines changed

spring-batch-docs/src/main/asciidoc/whatsnew.adoc

Lines changed: 41 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
:toc: left
33
:toclevels: 4
44

5+
This section shows the major highlights of Spring Batch 5 and is not an exhaustive list of changes.
6+
For more details,
7+
please refer to the link:$$https://github.com/spring-projects/spring-batch/wiki/Spring-Batch-5.0-Migration-Guide$$[migration guide].
8+
59
[[whatsNew]]
610
== What's New in Spring Batch 5.0
711

@@ -13,9 +17,6 @@ Spring Batch 5.0 has the following major themes:
1317
* New features
1418
* Pruning
1519

16-
For more details about the changes,
17-
see the link:$$https://github.com/spring-projects/spring-batch/wiki/Spring-Batch-5.0-Migration-Guide$$[migration guide].
18-
1920
=== Java 17 Requirement
2021

2122
Spring Batch follows Spring Framework's baselines for both Java version and third party dependencies.
@@ -33,7 +34,7 @@ Spring Batch 5 is updating the dependencies across the board to the following ve
3334
* Spring Data 3
3435
* Spring AMQP 3
3536
* Spring for Apache Kafka 3
36-
* Micrometer 2
37+
* Micrometer 1.10
3738

3839
This release also marks the migration to Jakarta EE 9 APIs.
3940

@@ -68,69 +69,62 @@ transaction manager bean in the application context.
6869

6970
==== Batch tracing with Micrometer
7071

71-
With the upgrade to Micrometer 2, you can now get batch tracing in addition to batch metrics.
72+
With the upgrade to Micrometer 1.10, you can now get batch tracing in addition to batch metrics.
7273
Spring Batch will create a span for each job and a span for each step within a job. This tracing
7374
meta-data can be collected and viewed on a dahsboard like link:$$https://zipkin.io$$[Zipkin] for example.
7475

7576
==== Support for SAP HANA a job repository in Spring Batch
7677

7778
This release introduces the support of SAP HANA as an additional supported database for the job repository.
7879

80+
==== New Maven Bill Of Materials for Spring Batch modules
81+
82+
This feature has been requested several times and is finally shipped in v5. It is now possible to use the newly
83+
added Maven BOM to import Spring Batch modules with a consistent version number.
84+
85+
==== UTF-8 by default
86+
87+
Several issues related to characters encoding have been reported over the years in different
88+
areas of the framework, like inconsitent default encoding between file-based item readers
89+
and writers, serialization/deserialization issues when dealing with multi-byte characters
90+
in the execution context, etc.
91+
92+
In the same spirit as link:$$https://openjdk.java.net/jeps/400$$[JEP 400] and following the
93+
link:$$http://utf8everywhere.org$$[UTF-8 manifesto], this release updates the default encoding
94+
to UTF-8 in all areas of the framework and ensures this default is configurable as needed.
95+
96+
==== Native support
97+
98+
The effort towards providing support to compile Spring Batch applications as native executables
99+
using the GraalVM native-image compiler has started in v4.2 and was shipped as experimental in v4.3.
100+
101+
In this release, the native support has been improved significantly and is now considered out of beta.
102+
79103
=== Pruning
80104

81105
Spring Batch 5 removes a number of items that are no longer needed, including:
82106

83-
* <<deprecated-apis-removal>>
107+
* <<api-deprecation-and-removal>>
84108
* <<sqlfire-support-removal>>
85109
* <<jsr-352-implementation-removal>>
86110

87-
[[deprecated-apis-removal]]
88-
==== Deprecated APIs Removal
89-
90-
The following APIs were deprecated in previous versions and have been removed in this release:
91-
92-
* Class `org.springframework.batch.core.repository.support.MapJobRepositoryFactoryBean`
93-
* Class `org.springframework.batch.core.repository.dao.MapExecutionContextDao`
94-
* Class `org.springframework.batch.core.repository.dao.MapJobExecutionDao`
95-
* Class `org.springframework.batch.core.repository.dao.MapJobInstanceDao`
96-
* Class `org.springframework.batch.core.repository.dao.MapStepExecutionDao`
97-
* Class `org.springframework.batch.core.explore.support.MapJobExplorerFactoryBean`
98-
* Class `org.springframework.batch.core.repository.dao.XStreamExecutionContextStringSerializer`
99-
* Class `org.springframework.batch.core.configuration.support.ClassPathXmlJobRegistry`
100-
* Class `org.springframework.batch.core.configuration.support.ClassPathXmlApplicationContextFactory`
101-
* Class `org.springframework.batch.core.launch.support.ScheduledJobParametersFactory`
102-
* Class `org.springframework.batch.item.data.AbstractNeo4jItemReader`
103-
* Class `org.springframework.batch.item.database.support.ListPreparedStatementSetter`
104-
* Class `org.springframework.batch.integration.chunk.RemoteChunkingMasterStepBuilder`
105-
* Class `org.springframework.batch.integration.chunk.RemoteChunkingMasterStepBuilderFactory`
106-
* Class `org.springframework.batch.integration.partition.RemotePartitioningMasterStepBuilder`
107-
* Class `org.springframework.batch.integration.partition.RemotePartitioningMasterStepBuilderFactory`
108-
* Class `org.springframework.batch.test.AbstractJobTests`
109-
* Class `org.springframework.batch.item.xml.StaxUtils`
110-
* Enum `org.springframework.batch.item.file.transform.Alignment`
111-
* Method `org.springframework.batch.core.JobExecution#stop()`
112-
* Method `org.springframework.batch.core.JobParameters#getDouble(String key, double defaultValue)`
113-
* Method `org.springframework.batch.core.JobParameters#getLong(String key, long defaultValue)`
114-
* Method `org.springframework.batch.core.partition.support.SimpleStepExecutionSplitter(JobRepository jobRepository, Step step, Partitioner partitioner)`
115-
* Method `org.springframework.batch.core.partition.support.SimpleStepExecutionSplitter#getStartable(StepExecution stepExecution, ExecutionContext context)`
116-
* Method `org.springframework.batch.core.repository.support.AbstractJobRepositoryFactoryBean#getJobRepository()`
117-
* Method `org.springframework.batch.item.database.AbstractCursorItemReader#cleanupOnClose()`
118-
* Method `org.springframework.batch.item.database.HibernateItemWriter#doWrite(HibernateOperations hibernateTemplate, List<? extends T> items)`
119-
* Method `org.springframework.batch.item.database.JdbcCursorItemReader#cleanupOnClose()`
120-
* Method `org.springframework.batch.item.database.StoredProcedureItemReader#cleanupOnClose()`
121-
* Method `org.springframework.batch.item.database.builder.HibernatePagingItemReaderBuilder#useSatelessSession(boolean useStatelessSession)`
122-
* Method `org.springframework.batch.item.file.MultiResourceItemReader#getCurrentResource()`
123-
* Method `org.springframework.batch.integration.config.annotation.BatchIntegrationConfiguration#remoteChunkingMasterStepBuilderFactory()`
124-
* Method `org.springframework.batch.integration.config.annotation.BatchIntegrationConfiguration#remotePartitioningMasterStepBuilderFactory()`
125-
* Method `org.springframework.batch.item.util.FileUtils#setUpOutputFile(File file, boolean restarted, boolean overwriteOutputFile)`
111+
[[api-deprecation-and-removal]]
112+
==== API deprecation and removal
113+
114+
In this major release, all APIs that were deprecated in previous versions have been removed.
115+
Moreover, some APIs have been deprecated in v5.0 and are scheduled for removal in v5.2.
116+
Finally, some APIs have been moved or removed without deprecation for practical reasons.
117+
118+
Please refer to the link:$$https://github.com/spring-projects/spring-batch/wiki/Spring-Batch-5.0-Migration-Guide$$[migration guide]
119+
for more details about these changes.
126120

127121
[[sqlfire-support-removal]]
128122
==== SQLFire Support Removal
129123

130124
SqlFire has been announced to be EOL as of November 1st, 2014. The support of SQLFire as a job repository
131-
was deprecated in version 4.3 and removed in version 5.0.
125+
was deprecated in version v4.3 and removed in version v5.0.
132126

133127
[[jsr-352-implementation-removal]]
134128
==== JSR-352 Implementation Removal
135129

136-
Due to a lack of adoption, the implementation of JSR-352 has been removed from this release.
130+
Due to a lack of adoption, the implementation of JSR-352 has been discontinued in this release.

0 commit comments

Comments
 (0)