29 lines
1.7 KiB
Markdown
29 lines
1.7 KiB
Markdown
# Changelog
|
|
|
|
## 2025-12-26 - Date/Time Handling & Comment Pagination
|
|
|
|
### Problem
|
|
- Comment infinite scroll pagination failed: older comments weren't loading
|
|
- Root cause: Backend used `LocalDateTime` (no timezone info), frontend's JavaScript `Date` interpreted it as local time, then converted to UTC when sending back - causing a 1-hour timezone shift
|
|
|
|
### Solution
|
|
- Migrated all date fields from `LocalDateTime` to `Instant` across all entities (Comment, ApplicationForm, Notification, User, ApplicationFormVersion)
|
|
- `Instant` represents a point in time in UTC and is:
|
|
- Supported by JPA's `@CreatedDate`/`@LastModifiedDate` annotations (unlike `OffsetDateTime`)
|
|
- Serialized by Jackson as ISO-8601 with `Z` suffix (e.g., `2025-12-26T08:13:48.608921Z`)
|
|
- Correctly parsed by JavaScript as UTC, ensuring round-trip consistency
|
|
|
|
## 2025-11-23 - Pipeline
|
|
- Gitea pipeline seems not to be stable enough yet. Jobs don't get assigned runners consistently. Especially the backend job.
|
|
- Switch to local nektos act runner also led to issues
|
|
- metadata-action not working properly: https://github.com/docker/metadata-action/issues/542
|
|
- Failing connection to gradle daemon during frontend job
|
|
- Finally switched to simple shell scripts for CI/CD
|
|
|
|
## 2025-11-02 - Form Element Management API
|
|
|
|
- New input field with title and text needed to be added to application forms
|
|
- Adding new form elements to existing application forms caused type conflicts: frontend needed to add `CreateFormElementDto` (without ID) to arrays of `FormElementDto` (with ID)
|
|
- Implemented separate endpoint for adding form elements: `POST /application-forms/{applicationFormId}/sections/{sectionId}/form-elements`
|
|
|