Skip to content

Add a dedicated Directory type#277

Merged
fintelia merged 2 commits intomainfrom
directory-type
Jul 8, 2025
Merged

Add a dedicated Directory type#277
fintelia merged 2 commits intomainfrom
directory-type

Conversation

@197g
Copy link
Member

@197g 197g commented Jul 7, 2025

The key motivation here is the ability to represent the tags within a
directory separate from a file. This allows us to represent directories
that are not image directories, i.e. the EXIF directory, the related GPS
directory, and other sub directories. These are defined by a 'pointer'
value in another tag, an offset into the file. They can then be read
from that immediate location.

Another PR will add methods to turn the entries of a Directory into ifd::Values by using the reader / bigtiff / byte order / limits configuration from a value, which would then be enough to make Exif and GPS directories useful.

The key motivation here is the ability to represent the tags within a
directory separate from a file. This allows us to represent directories
that are not image directories, i.e. the EXIF directory, the related GPS
directory, and other sub directories. These are defined by a 'pointer'
value in another tag, an offset into the file. They can then be read
from that immediate location.
@197g 197g requested a review from fintelia July 7, 2025 20:06
@197g 197g force-pushed the directory-type branch from dd3e50a to d26f6ab Compare July 7, 2025 20:08
@fintelia fintelia merged commit df4e42e into main Jul 8, 2025
15 checks passed
@fintelia fintelia deleted the directory-type branch July 8, 2025 02:59
@197g
Copy link
Member Author

197g commented Jul 8, 2025

Is this repository intentionally setup to use squash merges? That would be different from all the rest of the image-rs repos.

@fintelia
Copy link
Contributor

I probably switched it the last time I made changes to this repository's settings. If you'd rather other merge types (or even just want to use them occasionally) feel free to re-enable them in the settings.

I have a slight preference for squash merges since PRs frequently have a lot of pointless "fix typo" style commits (mine certainly do!) and GitHub's commit history page doesn't let you filter to only merges. By contrast, if you do want to see the individual commits for a merged PR, GitHub saves them even for deleted branches

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants