Uh oh!
There was an error while loading. Please reload this page.
Added image_set for correct file pulling on the front end image calls - #490
Conversation
Replace Ecto add_if_not_exists with raw SQL DO block that checks information_schema before adding the column, avoiding FK constraint conflicts when the migration runs against an existing schema. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Allow searching media files by UUID in addition to file name, enabling quick lookup of files by their identifier. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add break-all and overflow constraints to the filename, title, and description fields in the media detail info panel to prevent long unbroken strings from overflowing the sidebar. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Display width×height and file size on each variant download button so users can quickly see the size details of each variant. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Fall back to the main file record's size and dimensions when the original file instance lacks them. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add alternative_formats field to storage dimensions so admins can configure additional output formats (WebP, AVIF) per dimension. The variant generator creates extra file instances for each alternative format alongside the primary. Add <.image_set> component that renders a <picture> element with <source> tags per format and srcset with width descriptors, letting browsers pick the best supported format and optimal size. - V97 migration adds alternative_formats column - Dimension schema validates alternative formats - Variant generator expands dimensions with alternatives - Admin UI: checkbox group on dimension form, badges on list - VariantNaming utility for parsing variant names - Storage helpers for bulk-loading variant data - Component groups by actual mime_type to handle failed conversions Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
When a different user uploads a file with the same checksum, clone the File record and instances to reuse the existing storage path instead of re-storing. On deletion, only remove physical files when no other File records share the same path. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
ddon
left a comment
There was a problem hiding this comment.
Pincer review — Approve (with one item to confirm)
Clean, production-quality PR. The responsive <.image_set> component, VariantNaming utility, V97 migration, and V95 idempotency fix are all well-implemented. Blocking issue is minor.
Confirm before merging:
Storage.list_image_set_variants/1is referenced inImageSet.load_variants/1but doesn't appear in this diff. If it's missing, the component will silently return no variants for every auto-load call. Please confirm it exists (or is being added in a companion commit).
Non-blocking notes:
Enum.map_joinindimensions.html.heexproduces"JPEG +WEBP +AVIF"with a leading+separator — check the rendered output matches intent. Switching toEnum.join(..., " + ")with the+outside themap_joinwould read more cleanly.prefix_str/1in V97 is duplicated from other migrations — pre-existing pattern, just flagging for future cleanup.- PNG
<source>entries: all browsers support PNG natively, so a<source type="image/png">is redundant. Low priority but worth knowing.
Ready to merge once list_image_set_variants/1 is confirmed.
Add an All Files button in the sidebar that shows every file across all folders in a flat grid/list without folder cards. Rename the previous All Files button to Root for clarity. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
ddon
commented
Apr 14, 2026
Hi @alexdont — thanks for the updates! Reviewed again and it looks like no new commits have landed since our last round of feedback in
The rest of the PR looks great — migration idempotency, component design, and |
Pass the current folder UUID when reloading files after upload so the view stays in the current folder and new files appear there. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
ddon
commented
Apr 15, 2026
@alexdont waiting for your fixed and and now looks like there are conflicts as well to resolve |
- Fix stray separator in dimensions table format display - Move alternative_formats template computation into LiveView assigns - Omit PNG from <picture><source> entries (keep as <img> fallback) - Guard empty srcset case when fallback_variants is empty - Bump migration from V97 to V98 with V97 as reserved placeholder Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
alexdont
commented
Apr 15, 2026
fixed the issues |
- Bump version 1.7.96 → 1.7.97 - CHANGELOG: remove duplicate 1.7.96 block, add 1.7.97 entry covering V97 per-item markup, V98 alternative_formats, ImageSet component, VariantNaming, multi-format variants, V95 idempotency fix, UI polish - Add PR #490 follow-up review section confirming all prior findings resolved Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
No description provided.