Commit Graph

1665 Commits

Author SHA1 Message Date
Vedran Pavic
fc81049cbe Upgrade Logback to 1.4.4 2022-10-17 15:05:24 -05:00
Vedran Pavic
fbb94b40e8 Fix Spring Security XML config 2022-10-17 15:05:24 -05:00
Vedran Pavic
009cb5b592 Fix max inactive interval setters backwards compatibility
This commit restores integer based max inactive interval setters across all session repositories, that were migrated to java.time in 6d74cf5f.

This change caused problems building our Spring Boot based samples, as Spring Boot auto-configuration has move to session repository customizer based approach and is therefore using max inactive interval setters directly on session repository implementations.
2022-10-07 07:56:25 -05:00
Vedran Pavic
525b841ad6 Build against Project Reactor 2022.0.0-RC1 snapshots 2022-10-06 21:52:31 -05:00
Vedran Pavic
185ea87ff4 Build against Spring Security 6.0.0-RC1 snapshots 2022-10-06 21:52:31 -05:00
Vedran Pavic
aebe5ece6f Build against Spring Data 2022.0.0-RC1 snapshots 2022-10-06 21:52:31 -05:00
Vedran Pavic
30b8e68c67 Build against Spring Framework 6.0.0-RC1 snapshots 2022-10-06 21:52:31 -05:00
Vedran Pavic
c2f8428df9 Upgrade Logback to 1.4.1 2022-10-06 10:28:41 -05:00
Vedran Pavic
b5197b8665 Polish RedisIndexedSessionRepository
This commit addresses code warnings due to nullability of return values.
2022-10-06 10:28:11 -05:00
Vedran Pavic
2406ec8302 Fix SessionCreatedEvent handling in RedisIndexedSessionRepository
At present, RedisIndexedSessionRepository publishes a SessionCreatedEvent backed by an empty MapSession instance. This happens because session delta has been cleared before publishing a message to the session created channel.

Fixes gh-1338
2022-10-06 10:28:11 -05:00
Vedran Pavic
6d74cf5f35 Use java.time in all session repositories and configurations
This commit reworks all session repository implementations and their respective configurations to use java.time for managing maxInactiveInterval and other temporal values.
2022-10-06 10:26:50 -05:00
Vedran Pavic
da8e5fbbac Ensure configuration classes can be used with @Import
This commit adds tests that verify that all Spring Session configuration classes can be used with @Import, and fixes JDBC and Hazelcast HttpSession configurations and Redis WebSession configuration.
2022-09-26 09:01:09 -05:00
Vedran Pavic
4b34f35b82 Replace JSR-250 annotations with standard Spring lifecycle callbacks 2022-09-26 08:59:06 -05:00
Vedran Pavic
954a40f5d1 Simplify expired session cleanup jobs
At present, RedisIndexedHttpSessionConfiguration and JdbcHttpSessionConfiguration include [at]EnableScheduling annotated inner configuration classes that configure expired session cleanup jobs. This approach silently opts in users into general purpose task scheduling support provided by Spring Framework, which isn't something a library should do. Ideally, session cleanup jobs should only require a single thread dedicated to their execution and also one that doesn't compete for resources with general purpose task scheduling.

This commit updates RedisIndexedSessionRepository and JdbcIndexedSessionRepository to have them manage their own ThreadPoolTaskScheduler for purposes of running expired session cleanup jobs.

Closes gh-2136
2022-09-23 15:23:29 -05:00
Vedran Pavic
fb66cf3150 Remove @Configuration meta-annotation from @Enable*Session annotations
Closes gh-1361
2022-09-22 16:13:16 -05:00
Vedran Pavic
a23090e7e5 Fix "Find by Username" sample
Spring Boot's auto-configuration support for Spring Session now uses RedisSessionRepository as the default Redis session repository, so applications that rely on indexed session repository need to opt into the previous default. One such example is our "Find by Username" sample.

This commit fixes "Find by Username" sample by opting into the indexed repository type using newly introduced spring.session.redis.repository-type property.
2022-09-22 14:33:52 -05:00
Rob Winch
beaca53d44 Fix major/minor segments 2022-09-21 14:47:06 -05:00
Marcus Da Coregio
baed403a6a Polish SessionJdbcRuntimeHints
Issue gh-2103
2022-09-21 09:12:24 -03:00
Rob Winch
cd51c36dc0 Next Development Version 2022-09-20 14:59:00 -05:00
Rob Winch
7144e626cc Release 3.0.0-M4 2022-09-20 14:57:53 -05:00
Rob Winch
0e0d0007e6 Next Development Version 2022-09-20 14:52:18 -05:00
Rob Winch
573424f2a1 Release 3.0.0-M3 2022-09-20 14:43:52 -05:00
Rob Winch
8e6e9dec53 Allow snapshot repository for samples
When a release is published Spring Boot has not been released, so
it can be beneficial to allow the samples to use the snapshot
repository. This is determined based on the springBootVersion property.
2022-09-20 14:42:49 -05:00
Rob Winch
8216be69cc Upgrade to org.postgresql:postgresql:42.5.0
Closes gh-2161
2022-09-20 14:02:52 -05:00
Rob Winch
0e1914b380 Update to org.mongodb 4.7.1
Closes gh-2162
2022-09-20 14:02:06 -05:00
Rob Winch
ec32a825d9 Upgrade to org.mariadb.jdbc:mariadb-java-client:3.0.7
Closes gh-2159
2022-09-20 14:00:45 -05:00
Rob Winch
8319435f7c Upgrade to org.hsqldb:hsqldb:2.7.0
Closes gh-2158
2022-09-20 13:59:59 -05:00
Rob Winch
45448c3075 Upgrade to org.assertj:assertj-core:3.23.1
Closes gh-2157
2022-09-20 13:59:12 -05:00
Rob Winch
efd18a9fe9 Upgrade to mysql:mysql-connector-java:8.0.30
Closes gh-156
2022-09-20 13:58:40 -05:00
Rob Winch
8cf71b27f9 Update to Upgrade to io.lettuce:lettuce-core:6.2.0.RELEASE
Closes gh-2155
2022-09-20 13:57:56 -05:00
Rob Winch
0ea5ed709d Upgrade to com.oracle.database.jdbc:ojdbc8:21.7.0.0
Closes gh-2153
2022-09-20 13:57:05 -05:00
Rob Winch
a57774bff6 Upgrade to com.microsoft.sqlserver:mssql-jdbc:11.2.1.jre17
Closes gh-2152
2022-09-20 13:55:06 -05:00
Rob Winch
106848fcf7 Upgrade to com.ibm.db2:jcc:11.5.7.0
Closes gh-2151
2022-09-20 13:54:09 -05:00
Rob Winch
a1b87ce1e9 Upgrade to com.h2database:h2:2.1.214
Close gh-2150
2022-09-20 13:53:33 -05:00
Rob Winch
cb75ee603d Upgrade to ch.qos.logback:logback-core:1.2.11
Closes gh-2149
2022-09-20 13:52:57 -05:00
Rob Winch
2eb10a6e58 Upgrade to org.aspectj:aspectjweaver:1.9.9.1
Closes gh-2148
2022-09-20 13:52:21 -05:00
Rob Winch
5bdf5ed780 Upgrade to com.hazelcast:hazelcast:5.1.3
Closes gh-2147
2022-09-20 13:47:14 -05:00
Rob Winch
1ccd1a1eea Upgrade to org.mockito:mockito-bom:4.8.0
Closes gh-2146
2022-09-20 13:46:49 -05:00
Rob Winch
27e90b2e59 Update to spring-security-bom:6.0.0-M7
Closes gh-2145
2022-09-20 13:36:33 -05:00
Rob Winch
b8d660712e Update to spring-data-bom:2022.0.0-M4
Closes gh-2144
2022-09-20 13:35:17 -05:00
Rob Winch
f65f84a129 Update to spring-framework-bom:6.0.0-M6
Closes gh-2143
2022-09-20 13:33:49 -05:00
Rob Winch
0a0e34e248 Update to junit-bom:5.9.0
Closes gh-2142
2022-09-20 13:32:35 -05:00
Rob Winch
bb8b9444e6 Update to jackson-bom:2.13.4
Closes gh-2141
2022-09-20 13:30:19 -05:00
Rob Winch
da1fc676ae Update to reactor-bom:2022.0.0-M6
Closes gh-2140
2022-09-20 13:29:14 -05:00
Vedran Pavic
cb6f5c9588 Align dependency versions in samples
This commit aligns dependency versions used across different samples application by leveraging Spring Boot's BOM, rather than manually managing dependency versions for samples that are not Spring Boot based.
2022-09-20 10:58:05 -05:00
Vedran Pavic
4e311939c2 Use Spring Security auto-configuration in MongoDB samples 2022-09-20 10:58:05 -05:00
Vedran Pavic
e050a92fad Restructure Redis HttpSession configuration support
This commit restructures configuration support for Redis-backed
HttpSession with aim to enable users to easily select the
SessionRepository implementation they prefer to use.

This is achieved by introducing [at]EnableRedisIndexedHttpSession
annotation that can be used to configure RedisIndexedSessionRepository,
while the existing [at]EnableRedisHttpSession will going forward
configure RedisSessionRepository as the SessionRepository implementation
used by Spring Session.

Additionally, this also introduces AbstractRedisHttpSessionConfiguration
as the base configuration class that manages common aspects of
Redis-backed HttpSession support, which is then extended by more
specific configuration classes that provide specific SessionRepository
implementation.

Closes gh-2122
2022-09-07 09:46:55 -05:00
Vedran Pavic
0c1dbc7355 Revert "Use simple Redis repository by default"
This reverts commit 8582b970

See gh-2122
2022-09-07 09:46:55 -05:00
Vedran Pavic
8e8de48614 Fix deprecation warnings 2022-09-06 15:27:53 -05:00
Rob Winch
8c49d5993f Fix antora-playbook.yml
When 3.0.x was renamed to main the antora playbook should have been copied
from 2.7.x to 3.0.x.

Closes gh-2135
2022-08-30 23:04:34 -05:00