|
1 |
| -[[upgrading-2.0]] |
2 |
| -= Upgrading to 2.x |
| 1 | +[[upgrading-3.0]] |
| 2 | += Upgrading to 3.x |
3 | 3 |
|
4 | 4 | With the new major release version, the Spring Session team took the opportunity to make some non-passive changes.
|
5 | 5 | The focus of these changes is to improve and harmonize Spring Session's APIs as well as remove the deprecated components.
|
6 | 6 |
|
7 | 7 | == Baseline Update
|
8 | 8 |
|
9 |
| -Spring Session 2.0 requires Java 8 and Spring Framework 5.0 as a baseline, since its entire codebase is now based on Java 8 source code. |
| 9 | +Spring Session 3.0 requires Java 17 and Spring Framework 6.0 as a baseline, since its entire codebase is now based on Java 17 source code. |
10 | 10 | See https://github.com/spring-projects/spring-framework/wiki/Upgrading-to-Spring-Framework-5.x[Upgrading to Spring Framework 5.x] for more on upgrading Spring Framework.
|
11 | 11 |
|
12 |
| -== Replaced and Removed Modules |
13 |
| - |
14 |
| -As a part of the project's splitting of the modules, the existing `spring-session` has been replaced with the `spring-session-core` module. |
15 |
| -The `spring-session-core` module holds only the common set of APIs and components, while other modules contain the implementation of the appropriate `SessionRepository` and functionality related to that data store. |
16 |
| -This applies to several existing modules that were previously a simple dependency aggregator helper module. |
17 |
| -With new module arrangement, the following modules actually carry the implementation: |
18 |
| - |
19 |
| -* Spring Session for MongoDB |
20 |
| -* Spring Session for Redis |
21 |
| -* Spring Session JDBC |
22 |
| -* Spring Session Hazelcast |
23 |
| - |
24 |
| -Also, the following were removed from the main project repository: |
25 |
| - |
26 |
| -* Spring Session Data GemFire |
27 |
| -** https://github.com/spring-projects/spring-session-data-geode[`spring-session-data-geode`] |
28 |
| - |
29 | 12 | == Replaced and Removed Packages, Classes, and Methods
|
30 | 13 |
|
31 | 14 | The following changes were made to packages, classes, and methods:
|
32 | 15 |
|
33 |
| -* `ExpiringSession` API has been merged into the `Session` API. |
34 |
| -* The `Session` API has been enhanced to make full use of Java 8. |
35 |
| -* The `Session` API has been extended with `changeSessionId` support. |
36 |
| -* The `SessionRepository` API has been updated to better align with Spring Data method naming conventions. |
37 |
| -* `AbstractSessionEvent` and its subclasses are no longer constructable without an underlying `Session` object. |
38 |
| -* The Redis namespace used by `RedisOperationsSessionRepository` is now fully configurable, instead of being partially configurable. |
39 |
| -* Redis configuration support has been updated to avoid registering a Spring Session-specific `RedisTemplate` bean. |
40 |
| -* JDBC configuration support has been updated to avoid registering a Spring Session-specific `JdbcTemplate` bean. |
41 |
| -* Previously deprecated classes and methods have been removed across the codebase |
| 16 | + |
42 | 17 |
|
43 | 18 | == Dropped Support
|
44 | 19 |
|
45 |
| -As a part of the changes to `HttpSessionStrategy` and its alignment to the counterpart from the reactive world, the support for managing multiple users' sessions in a single browser instance has been removed. |
46 |
| -The introduction of a new API to replace this functionality is under consideration for future releases. |
| 20 | + |
0 commit comments