Releases: loghub-me/api
Releases · loghub-me/api
v0.11.1
v0.11.0
Changelog v0.10.1..v0.11.0
4fcf09arefactor(search): Replace ParadeDB FTS operator from ||| to &&& by @gymynnymec6f21afix(star): Add missing validate published before add star by @gymynnym248b07arefactor(search): Rollback from ParadeDB to PGroonga by @gymynnyme2c4985feat(user): Add follow system by @gymynnym6b077d4feat(user): Add follower and following counts to user stats by @gymynnym609dederefactor(user): Prevent self-follow with validation and DB constraint by @gymynnym0daabc7test(user): Add UserFollowService by @gymynnymcd89076fix(user): Validate followee existence and update security config by @gymynnym9ef04ebfeat(notification): Add async event-based follower notifications by @gymynnym54fe711test: Verify event publishing on post creation by @gymynnymedfc9c1test(article): Replace getReferenceById with findById in ArticleStarServiceTest.AddStarTest by @gymynnym992a973refactor(user): Rename followerCount and handle follow stats update on service by @gymynnymdd624b3test(user): Update UserFollowServiceTest by @gymynnymce326a8chore(deps): Bump Spring Boot and update dependencies by @gymynnymb3e7a62refactor(user): Rename increment/decrement methods from *ById to *ByUser by @gymynnym1965abechore(user): Add indexes for user_follows by @gymynnym48eef39fix(star): Move published check before conflict check by @gymynnym
Full Changelog: v0.10.1..v0.11.0
v0.10.1
Changelog v0.10.0..v0.10.1
d097d57chore(redis): Replace deprecated serializer and disable repository scan by @gymynnym17bd439refactor(trending): Introduce TrendingScoreService interface by @gymynnymf2d0600refactor(entity): Replace id!! with persistedId accessor by @gymynnym984ac29refactor(rate-limit): Replace hardcoded magic strings by @gymynnym2094c8arefactor(search): Migrate from PGroonga to ParadeDB by @gymynnym6957290fix(search): Wrap ParadeDB FTS conditions with parentheses by @gymynnymaf27878docs: Update README.md by @gymynnym7c0dc13fix(user): Use strict match instead of contains for GitHub URL vertification by @gymynnymc1ea042refactor(rate-limit): Replace ZSet operations with Lua script for atomic rate limiting by @gymynnym
Full Changelog: v0.10.0..v0.10.1
v0.10.0
Changelog v0.9.1..v0.10.0
2dc6a2cfix(user): Add missing published only filter in topic usage query by @gymynnym0c970cafix(answer): Clear cooldown when answer generation throw FeignException by @gymynnym5e9a495refactor(auth): handle all exceptions during access token authentication by @gymynnymeb271e3refactor(notification): Implement persistent notification system with SSE streaming by @gymynnym4d0d6eftest(notification): Add NotificationService test by @gymynnyma454711fix(notification) Add missing @component to NotificationStreamEventListener by @gymynnymd140425fix(notification): Fix typo in repository and remove unused enum by @gymynnym4d54c9erefactor(trending): Move trending score logic from aspects to services by @gymynnymfc6212etest(trending): Update service tests to verify trending score updates by @gymynnymb99415bfix(trending): Remove Redis cleanup from aspects by @gymynnym
Full Changelog: v0.9.1..v0.10.0
v0.9.1
Changelog v0.9.0..v0.9.1
9fc6d69fix(series): Add missing decrease chapter count when delete chapter by @gymynnym
Full Changelog: v0.9.0..v0.9.1
v0.9.0
Changelog v0.8.8..v0.9.0
b17cb6ctest: Add ArticleServiceTest by @gymynnym1ef2938test(article): Replace integration tests with unit tests by @gymynnyme6cb3b6test(series): Replace integration tests with unit tests by @gymynnym119da81test(question): Replace integration tests with unit tests by @gymynnym6a1b70dtest(user): Replace integration tests with unit tests by @gymynnymfbfac62test(auth): Add unit tests for auth services by @gymynnym4e368e9test(article): Add missing @test and verify slug uniqueness by @gymynnymf3ec835chore: Bump Spring Boot version to 4.0.3 by @gymynnymb3285a8refactor(config): Inject ClientConfig instead of using static fields by @gymynnym0ae18effeat(auth): Add email block flow by @gymynnym7ae0795test(auth): Add EmailBlockService and update JoinServiceTest by @gymynnym8e16d97fix(auth): Add missing handler for LockedFieldException by @gymynnyme579d4drefactor(auth): Clarify naming by persistence semantics by @gymynnym05912c9refactor(slug): Rename slug generator to build semantics by @gymynnym7b5f4cfrefactor(config): Replace config classes with @ConfigurationProperties data classes by @gymynnym638961brefactor(mail): Introduce EmailService interface with profile-based implementations by @gymynnymfed32f4refactor(auth): Use EmailBlockDTO request body for email block API by @gymynnym2184741refactor(star): Rename IStarService to StarService by @gymynnym
Full Changelog: v0.8.8..v0.9.0
v0.8.8
Changelog v0.8.7..v0.8.8
b834fcbfeat(user): Add recent user posts API by @gymynnym1fe6f94chore(repository): Remove unused queries by @gymynnymbb392b9chore(config): Increase multipart upload size to 10MB by @gymynnym
Full Changelog: v0.8.7..v0.8.8
v0.8.7
Changelog v0.8.6..v0.8.7
a2f0fb4feat(topic): Add pageable and sortable topic posts APIs by @gymynnym
Full Changelog: v0.8.6..v0.8.7
v0.8.6
Changelog v0.8.5..v0.8.6
526fb87fix(user): Correct native queries and clean up topic converter by @gymynnym6e7f2a6fix(series): Prevent race-condition when create/import chapters by @gymynnymffa7f53refactor: Remove unnecessary clearAutomatically and flushAutomatically from @Modifying by @gymynnym48f5710refactor(series): Remove reviewCount from SeriesStatsDTO by @gymynnym
Full Changelog: v0.8.5..v0.8.6
v0.8.5
Changelog v0.8.4..v0.8.5
33bde84fix: Correct topic usage serialization by @gymynnym
Full Changelog: v0.8.4..v0.8.5