Repository navigation
Develop: user profile endpoints, Traefik proxy and Google Books fixes - #27
Merged
Merged
Conversation
…e account) - GET/PUT/DELETE /users/me and PUT /users/me/password - Edit name without password; email change requires current password - Delete account requires current password; DB cascade via @onDelete - Implement UserGateway findById/update/deleteById - Fix GoogleBooksGatewayImpl CGLIB proxying for integration tests - Update CORS front.url to localhost
- gateway now sends the configured GOOGLE_BOOKS_API_KEY as the key query param (anonymous quota is 0/day, so every search returned 429) - apply google.books.timeout-ms to the RestClient (connect/read) - use google.books.max-results instead of hardcoded 10 - map 429 to a 503 response with a clear message instead of a generic 500 that was swallowed without logging - log unexpected exceptions in RestExceptionHandler - update gateway test stubs for the new onStatus handlers and uri form
Native 'assert' statements are disabled unless the JVM runs with -ea, so the verifications could silently never execute. Using JUnit Assertions (assertEquals/assertTrue) also satisfies the SonarCloud reliability rule S5961.
Setting build-mode: none enables buildless Java extraction and
silences the overlay warning ('build-mode is set to undefined instead
of none'). The Autobuild step is no longer needed with this mode.
Also re-enabled the workflow, which GitHub had disabled due to
inactivity (it only ran on schedule against main with the old
actions/cache@v4 + codeql-action@v3 versions).
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Summary
Features
Fixes — Google Books search
GOOGLE_BOOKS_API_KEYas thekeyquery param (the anonymous quota is0/day, so every search returned429)google.books.timeout-ms(connect/read) andgoogle.books.max-resultsto the RestClient — previously ignored429 Too Many Requestsis now mapped to a 503 with a clear message instead of a generic silent500RestExceptionHandlerlogs unexpected exceptions (was swallowing them without any log)ExternalApiExceptionnow has a dedicated handler mapping its status codeTests / CI
Validation
mvn checkstyle:check→ 0 violations200with volumes; without key → clean503quota message