21 Commits

Author SHA1 Message Date
ACX
ab13a4b17f fix: enable compact object headers (Project Lilliput) to reduce heap usage (#2755) 2026-02-14 17:58:03 -07:00
ACX
bc7ba8b933 Remove nginx and serve Angular directly from Spring Boot (#2662)
* feat: remove nginx and serve Angular directly from Spring Boot

* fix: handle null values in EnabledFields deserialization from persisted JSON

* fix(migration): auto-repair failed Flyway migrations on startup

* fix(migration): replace DB triggers with app-level orphan cleanup

* fix: restore default port to 6060 for backwards compatibility

* fix: align all port references to 6060 and add OPDS compression MIME types

* fix: resolve NG0101 recursive tick error in book browser selection

---------

Co-authored-by: acx10 <acx10@users.noreply.github.com>
2026-02-08 15:02:25 -07:00
Balázs Szücs
108d94c0f7 feat(api, build): Upgrade to Java 25, Gradle 9, and Spring Boot 4, Jackson 3 (#2597)
* refactor: simplify RestTemplate and ObjectMapper configurations, add no-args constructors to progress classes

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* chore: update Gradle and Java versions in Docker configuration and build files

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* test: enhance header assertions in tests and add spring-boot-test-autoconfigure dependency

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor(tests): migrate to SpringBootTest and update entity management in test cases

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* test: update test property configurations for H2 database in Healthcheck and BookOpds repository tests

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* test: clean up HealthcheckControllerTest by removing unnecessary whitespace and comments

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* test: remove unnecessary whitespace in HealthcheckControllerTest

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* chore: downgrade Flyway version from 12.0.0 to 11.14.1 in build.gradle

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* chore: downgrade Flyway version from 12.0.0 to 11.14.1 in build.gradle

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add @DependsOn annotation for Flyway in MultipartConfig

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add @DependsOn annotation for Flyway in LibraryService

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add test configuration for Flyway in HealthcheckControllerTest
chore: remove unused path variable in deleteLibrary method of LibraryService

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: configure Flyway migration and update test configuration

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: enable remote debugging in bootRun configuration

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: update Flyway version and enhance ObjectMapper configuration

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: remove @DependsOn annotation for Flyway in MultipartConfig and LibraryService

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add NoArgsConstructor and AllArgsConstructor annotations to DTO classes

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add NoArgsConstructor and AllArgsConstructor annotations to FileProcessResult, MetadataUpdateContext, and MetadataUpdateWrapper classes

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add DependsOnDatabaseInitialization annotation to MultipartConfig, AppSettingService, LibraryService, and JwtSecretService classes

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add DependsOnDatabaseInitialization annotation to MultipartConfig and CronService classes

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: implement lazy initialization and thread safety for JWT secret retrieval

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add Flyway dependency and update LibraryService initialization to use ApplicationReadyEvent

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor: remove outdated comments from JwtSecretService class

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor: migrate from com.fasterxml.jackson to tools.jackson for JSON processing

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor: remove unused ObjectMapper bean and related imports from JacksonConfig

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: configure async support with VirtualThreadTaskExecutor in WebMvcConfig

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: enhance application performance with virtual threads and HTTP/2 support

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add JsonSetter annotation to skip null values for triggeredByCron field

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: add triggeredByCron field to TaskCreateRequest and initialize in task management

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* feat: enable Spring Data web support with DTO serialization in WebMvcConfig

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor(UserDefaultsService): simplify class structure and remove unused methods

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor(BookOpdsRepositoryDataJpaTest): simplify test setup and use TestEntityManager

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor(BookOpdsRepositoryDataJpaTest): update test configuration and simplify entity persistence

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor: update Jackson dependencies and migrate to Jackson 3

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor(build.gradle): update jackson-annotations dependency to use Jackson 3 BOM

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor(BookOpdsRepositoryDataJpaTest): remove unused ObjectMapper bean definition

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

* refactor(LibraryService): simplify library deletion logic

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>

---------

Signed-off-by: Balázs Szücs <bszucs1209@gmail.com>
2026-02-08 10:15:16 -07:00
ACX
5bd26b9aa7 Change the official domain from booklore.dev to booklore.org (#2046)
Co-authored-by: acx10 <acx10@users.noreply.github.com>
2025-12-29 19:42:10 -07:00
ACX
f602137bc7 Speed up CI builds by introducing dependency caching (#1874)
Co-authored-by: acx10 <acx10@users.noreply.github.com>
2025-12-14 11:35:40 -07:00
Aditya Chandel
132e3e3f92 Fix build (#1697) 2025-11-30 18:15:03 -07:00
Trevor Swanson
f8270d7f90 ci: Add OCI Image Specification Labels to Dockerfile (#1636)
* ci: Add OCI labels to Dockerfile

Added OCI labels for metadata and documentation.

* ci: Add APP_VERSION and APP_REVISION arguments

Added ARG directives for application version and revision to Dockerfile.

* ci: Add APP_REVISION build argument to Docker build
2025-11-26 17:47:52 -07:00
Aditya Chandel
7133ef1a69 Upgrade project environment to Java 25 and Gradle 9 (#1277) 2025-10-06 12:53:34 -06:00
Aditya Chandel
dedc21f0fb Fix NPM timeout errors (#1193) 2025-09-22 19:39:21 -06:00
Márk Gulyás
7604fa7fa0 Adding USER_ID and GROUP_ID to specify permission without making breaking change (#882)
* fixing permissions to be able to run springboot with given UID and GID

* Adding USER_ID and GROUP_ID to specify permission without making breaking change

* move su exec to start.sh

---------

Co-authored-by: Aditya Chandel <8075870+adityachandelgit@users.noreply.github.com>
2025-09-05 23:00:48 -06:00
Alexander Puzynia
c18692ae13 Fix docker build tests (#1005)
* build(docker): skip test during docker build

* build(gha): do test directly on GHA instead of docker build

* build(gha): publish test results

* build(gha): publish docker build to personal docker hub and GH registry
2025-08-27 21:56:06 -06:00
aditya.chandel
6e6861b329 Kobo Phase 1: Enable Book Transfer/Sync 2025-08-22 22:57:03 -06:00
aditya.chandel
7cd6dc0688 Revert: fixing permissions to be able to run springboot with given UID and GID (#864) 2025-08-10 23:14:56 -06:00
Márk Gulyás
43b4e6cb7a fixing permissions to be able to run springboot with given UID and GID (#864)
Co-authored-by: Aditya Chandel <8075870+adityachandelgit@users.noreply.github.com>
2025-08-10 11:36:49 -06:00
Oleh Astappiev
4c01561f1b feat: Remote Auth 2025-04-23 17:23:48 -06:00
adityachandelgit
70a4360207 Implement version info endpoint and update version display in UI 2025-04-16 15:33:13 -06:00
adityachandelgit
1c5ebea70f Display Git Version in Angular UI via Build-Time Injection 2025-04-15 23:44:34 -06:00
adityachandelgit
4aa024ab52 Force install dependencies 2025-04-15 13:34:48 -06:00
aditya.chandel
0a19696f20 Use jre to save lots of space 2025-01-22 19:53:01 -07:00
aditya.chandel
156e2439aa Fix pdf viewer when opening in docker.
Have envs for angular.
2025-01-22 18:30:28 -07:00
aditya.chandel
494aba24c6 WIP: Dockerize 2025-01-22 16:05:47 -07:00