-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[image_picker] Copy exif tags in categories II and III #4738
Conversation
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!). If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the contribution!
- I read and followed the relevant style guides and ran the auto-formatter. (Unlike the flutter/flutter repo, the flutter/packages repo does use
dart format
.)
The CI format check is failing; please ensure that the Java is auto-formatted as well.
- I added new tests to check the change I am making, or this PR is test-exempt.
This change is not exempt, so will need tests before we can proceed with the review.
...mage_picker_android/android/src/main/java/io/flutter/plugins/imagepicker/ExifDataCopier.java
Outdated
Show resolved
Hide resolved
Thanks for adding tests! I'll take a look this afternoon 🙂 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the contribution! This change mostly LGTM, but do you have a link to documentation on where Exif tags are broken into categories? I couldn't find anything clear just by searching.
Also, would you mind adding documentation to copyExif
explaining why we select this subset of Exif tags? It probably should have some documentation covering that, and this change seems like a good time to add it.
Thanks for the review. https://www.cipa.jp/std/documents/download_e.html?DC-008-Translation-2023-E here you can download the standard. On page 234 there is a table explaining categories and on page 238 is a table matching tags to categories. I will add the explanation regarding tags chosen later today. |
FYI couple of tags are missing eg. WaterDepth because |
39a91d1
to
0435d3f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This LGTM! @stuartmorgan do you want to do secondary review or shall I find another reviewer?
@tarrinneal is the ecosystem team codeowner for this plugin, so would probably be the best person to do the secondary review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm, thanks for putting this together!
It looks like this just needs conflicts resolved, then we can land it. |
0435d3f
to
6d05396
Compare
I've rebased and resolved the conflicts. I think we are ready to merge |
auto label is removed for flutter/packages/4738, due to This PR has not met approval requirements for merging. Changes were requested by {stuartmorgan}, please make the needed changes and resubmit this PR.
|
flutter/packages@ef0c65e...e04ba88 2023-09-12 stuartmorgan@google.com [tool] Add a package inclusion filter (flutter/packages#4904) 2023-09-12 me@nils.re [flutter_markdown] Fix changelog regarding minimum supported SDK version (flutter/packages#4851) 2023-09-12 stuartmorgan@google.com [ios_platform_images] Add integration tests (flutter/packages#4899) 2023-09-12 robert@odrowaz.dev [image_picker] Copy exif tags in categories II and III (flutter/packages#4738) 2023-09-11 233583+mossmana@users.noreply.github.com [google_maps_flutter_android] Fix for testToggleInfoWindow persistently flaky (flutter/packages#4768) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages-flutter-autoroll Please CC flutter-ecosystem@google.com,rmistry@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
* main: (83 commits) go_router_builder: support the latest pkg:analyzer (flutter#4921) Replace collection type lints with more general lint (flutter#4912) Roll Flutter from 219efce to 4e7a07a (30 revisions) (flutter#4910) [camerax] Implement `startVideoCapturing` and `onVideoRecordedEvent` (flutter#4815) [tool] Add a package inclusion filter (flutter#4904) [flutter_markdown] Fix changelog regarding minimum supported SDK version (flutter#4851) [ios_platform_images] Add integration tests (flutter#4899) [image_picker] Copy exif tags in categories II and III (flutter#4738) [google_maps_flutter_android] Fix for testToggleInfoWindow persistently flaky (flutter#4768) Roll Flutter from 7c28e8e to 219efce (16 revisions) (flutter#4901) [url_launcher] migrating iOS tests from objc to swift (flutter#4758) Roll Flutter from da676f7 to 7c28e8e (20 revisions) (flutter#4879) Bump actions/upload-artifact from 3.1.2 to 3.1.3 (flutter#4863) Roll Flutter from aea4552 to da676f7 (28 revisions) (flutter#4874) [webview_flutter_android] Added the functionality to fullscreen html5 video (flutter#3879) [tool] Add Android dependency (gradle) option to update dependencies command (flutter#4757) [camerax] Implement resolution configuration (flutter#3799) Manual roll Flutter from 685ce14 to aea4552 (64 revisions) (flutter#4870) [rfw, ci] Regenerate goldens, manually roll flutter#4835 (flutter#4862) Bump actions/checkout from 3.6.0 to 4.0.0 (flutter#4845) ...
Added all exif tags from Category II and Category III (excluding ones that don't have consts in
ExifInterface
WaterDepth etc.). Those tags include data not related to the structure of the file itself so resizing definitely doesn't invalidate them and thus they should be copied over.I've also switched from list of raw strings to consts provided be the
ExifInterface
I'm not sure show to handle
TAG_ISO_SPEED_RATINGS
deprecation in this case. The const is deprecated and the tag itself is deprecated in the standard however it would be reasonable to copy it as well to handle legacy files which include it. It was also being copied in the previous versions of this package.List which issues are fixed by this PR. You must list at least one issue.
flutter/flutter#132827
If you had to change anything in the flutter/tests repo, include a link to the migration guide as per the breaking change policy.
Pre-launch Checklist
dart format
.)[shared_preferences]
pubspec.yaml
with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.CHANGELOG.md
to add a description of the change, following repository CHANGELOG style.///
).If you need help, consider asking for advice on the #hackers-new channel on Discord.