From 195896ac7ac2bc79396ff824e6b3aacc5f528ab9 Mon Sep 17 00:00:00 2001 From: Bennett Date: Sat, 15 Aug 2026 14:40:23 +0300 Subject: [PATCH 1/2] release: Remove circular dependency --- .../core/config/PasswordEncoderConfig.java | 15 +++++++++++++++ .../flextuma/core/security/SecurityConfig.java | 9 +-------- .../core/security/SecurityConfigTest.java | 6 ++++-- 3 files changed, 20 insertions(+), 10 deletions(-) create mode 100644 src/main/java/com/flexcodelabs/flextuma/core/config/PasswordEncoderConfig.java diff --git a/src/main/java/com/flexcodelabs/flextuma/core/config/PasswordEncoderConfig.java b/src/main/java/com/flexcodelabs/flextuma/core/config/PasswordEncoderConfig.java new file mode 100644 index 0000000..0009ff2 --- /dev/null +++ b/src/main/java/com/flexcodelabs/flextuma/core/config/PasswordEncoderConfig.java @@ -0,0 +1,15 @@ +package com.flexcodelabs.flextuma.core.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; +import org.springframework.security.crypto.password.PasswordEncoder; + +@Configuration +public class PasswordEncoderConfig { + + @Bean + public PasswordEncoder passwordEncoder() { + return new BCryptPasswordEncoder(); + } +} diff --git a/src/main/java/com/flexcodelabs/flextuma/core/security/SecurityConfig.java b/src/main/java/com/flexcodelabs/flextuma/core/security/SecurityConfig.java index c90d42b..6d966b4 100644 --- a/src/main/java/com/flexcodelabs/flextuma/core/security/SecurityConfig.java +++ b/src/main/java/com/flexcodelabs/flextuma/core/security/SecurityConfig.java @@ -7,8 +7,6 @@ import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.config.http.SessionCreationPolicy; -import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; -import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.web.SecurityFilterChain; import org.springframework.security.web.util.matcher.RegexRequestMatcher; import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession; @@ -38,11 +36,6 @@ public SecurityConfig(CustomSecurityExceptionHandler securityExceptionHandler, this.authenticatedUserCaptureFilter = authenticatedUserCaptureFilter; } - @Bean - public PasswordEncoder passwordEncoder() { - return new BCryptPasswordEncoder(); - } - @Bean public CookieSerializer cookieSerializer() { DefaultCookieSerializer serializer = new DefaultCookieSerializer(); @@ -59,7 +52,7 @@ public SecurityFilterChain securityFilterChain(HttpSecurity http) { .authorizeHttpRequests(auth -> auth .requestMatchers("/api/login").permitAll() .requestMatchers("/api/register").permitAll() - .requestMatchers(org.springframework.http.HttpMethod.POST, "/api/webhooks/*").permitAll() + .requestMatchers(org.springframework.http.HttpMethod.POST, "/api/webhooks/*").permitAll() .requestMatchers("/").permitAll() .requestMatchers("/assets/**").permitAll() .requestMatchers(new RegexRequestMatcher("^/(?!api(?:/|$)).*", null)).permitAll() diff --git a/src/test/java/com/flexcodelabs/flextuma/core/security/SecurityConfigTest.java b/src/test/java/com/flexcodelabs/flextuma/core/security/SecurityConfigTest.java index 2d655fa..698bdac 100644 --- a/src/test/java/com/flexcodelabs/flextuma/core/security/SecurityConfigTest.java +++ b/src/test/java/com/flexcodelabs/flextuma/core/security/SecurityConfigTest.java @@ -17,6 +17,8 @@ import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.session.web.http.CookieSerializer; + +import com.flexcodelabs.flextuma.core.config.PasswordEncoderConfig; import org.springframework.session.web.http.DefaultCookieSerializer; import org.springframework.test.util.ReflectionTestUtils; @@ -31,7 +33,7 @@ class SecurityConfigTest { @Test void passwordEncoder_shouldReturnBCryptPasswordEncoder() { - PasswordEncoder encoder = securityConfig.passwordEncoder(); + PasswordEncoder encoder = new PasswordEncoderConfig().passwordEncoder(); assertNotNull(encoder); assertInstanceOf(BCryptPasswordEncoder.class, encoder); @@ -39,7 +41,7 @@ void passwordEncoder_shouldReturnBCryptPasswordEncoder() { @Test void passwordEncoder_shouldEncodePasswords() { - PasswordEncoder encoder = securityConfig.passwordEncoder(); + PasswordEncoder encoder = new PasswordEncoderConfig().passwordEncoder(); String rawPassword = "testPassword123"; String encoded = encoder.encode(rawPassword); From da7cd489614fc6b72395f4b31fb128fde905107e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 15 Aug 2026 11:40:59 +0000 Subject: [PATCH 2/2] Release v0.0.40 [skip ci] --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index 881f51f..1904f2d 100644 --- a/build.gradle +++ b/build.gradle @@ -8,7 +8,7 @@ plugins { } group = 'com.flexcodelabs' -version = '0.0.39' +version = '0.0.40' description = 'Flextuma App' java {