feat(frame)!: replace shutter_speed entity with seconds + bulb columns #40

Merged
eliott merged 1 commit from feat/aperture-shutter-rings into develop 2026-05-08 23:47:50 +02:00
Owner

Drop the shutter_speed lookup table and rewrite frame.shutterSpeed (FK)
into two new columns: shutter_speed_seconds (real, nullable) and bulb
(boolean, NOT NULL DEFAULT false). The migration backfills existing
frames by parsing each shutter_speed.value label ('B', '30"', '1/125', ...)
into the new shape, then drops the FK and the lookup table.

Frame DTOs, service, shoot service, import (legacy v1-v4 label parsing)
and export (v5) all updated. The /shutter-speed module and seed data are
removed entirely.

BREAKING CHANGE: /shutter-speed endpoints removed. CreateFrameDto.shutterSpeed
replaced by shutterSpeedSeconds + bulb. Frame responses no longer carry
shutterSpeedValue. Export bumps to version 5; v1-v4 archives still import.

Bumps to v8.0.0; seeds the v7.0.0 changelog entry the front matches.

Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com

Drop the shutter_speed lookup table and rewrite frame.shutterSpeed (FK) into two new columns: shutter_speed_seconds (real, nullable) and bulb (boolean, NOT NULL DEFAULT false). The migration backfills existing frames by parsing each shutter_speed.value label ('B', '30"', '1/125', ...) into the new shape, then drops the FK and the lookup table. Frame DTOs, service, shoot service, import (legacy v1-v4 label parsing) and export (v5) all updated. The /shutter-speed module and seed data are removed entirely. BREAKING CHANGE: /shutter-speed endpoints removed. CreateFrameDto.shutterSpeed replaced by shutterSpeedSeconds + bulb. Frame responses no longer carry shutterSpeedValue. Export bumps to version 5; v1-v4 archives still import. Bumps to v8.0.0; seeds the v7.0.0 changelog entry the front matches. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
feat(frame)!: replace shutter_speed entity with seconds + bulb columns
All checks were successful
tests / test (pull_request) Successful in 2m4s
75b702dcf5
Drop the shutter_speed lookup table and rewrite frame.shutterSpeed (FK)
into two new columns: shutter_speed_seconds (real, nullable) and bulb
(boolean, NOT NULL DEFAULT false). The migration backfills existing
frames by parsing each shutter_speed.value label ('B', '30"', '1/125', ...)
into the new shape, then drops the FK and the lookup table.

Frame DTOs, service, shoot service, import (legacy v1-v4 label parsing)
and export (v5) all updated. The /shutter-speed module and seed data are
removed entirely.

BREAKING CHANGE: /shutter-speed endpoints removed. CreateFrameDto.shutterSpeed
replaced by shutterSpeedSeconds + bulb. Frame responses no longer carry
shutterSpeedValue. Export bumps to version 5; v1-v4 archives still import.

Bumps to v8.0.0; seeds the v7.0.0 changelog entry the front matches.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
eliott merged commit ec14e3d2ca into develop 2026-05-08 23:47:50 +02:00
eliott deleted branch feat/aperture-shutter-rings 2026-05-08 23:47:50 +02:00
Sign in to join this conversation.
No reviewers
No labels
run-ci
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
RollNote/rollnote-api!40
No description provided.