exiftool-vendored.exe 12.65.0 → 12.69.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/bin/exiftool_files/Changes +60 -2
  2. package/bin/exiftool_files/README +7 -7
  3. package/bin/exiftool_files/exiftool.pl +35 -25
  4. package/bin/exiftool_files/lib/Image/ExifTool/Apple.pm +6 -2
  5. package/bin/exiftool_files/lib/Image/ExifTool/Canon.pm +55 -13
  6. package/bin/exiftool_files/lib/Image/ExifTool/DNG.pm +25 -2
  7. package/bin/exiftool_files/lib/Image/ExifTool/Exif.pm +95 -13
  8. package/bin/exiftool_files/lib/Image/ExifTool/FujiFilm.pm +20 -1
  9. package/bin/exiftool_files/lib/Image/ExifTool/Geotag.pm +17 -12
  10. package/bin/exiftool_files/lib/Image/ExifTool/Nikon.pm +47 -11
  11. package/bin/exiftool_files/lib/Image/ExifTool/PLUS.pm +19 -4
  12. package/bin/exiftool_files/lib/Image/ExifTool/PNG.pm +14 -7
  13. package/bin/exiftool_files/lib/Image/ExifTool/Panasonic.pm +13 -9
  14. package/bin/exiftool_files/lib/Image/ExifTool/Pentax.pm +8 -1
  15. package/bin/exiftool_files/lib/Image/ExifTool/PhotoMechanic.pm +2 -1
  16. package/bin/exiftool_files/lib/Image/ExifTool/QuickTime.pm +62 -52
  17. package/bin/exiftool_files/lib/Image/ExifTool/README +7 -3
  18. package/bin/exiftool_files/lib/Image/ExifTool/RIFF.pm +8 -2
  19. package/bin/exiftool_files/lib/Image/ExifTool/Sony.pm +66 -21
  20. package/bin/exiftool_files/lib/Image/ExifTool/TagLookup.pm +6881 -6709
  21. package/bin/exiftool_files/lib/Image/ExifTool/TagNames.pod +454 -37
  22. package/bin/exiftool_files/lib/Image/ExifTool/Validate.pm +18 -16
  23. package/bin/exiftool_files/lib/Image/ExifTool/WriteCanonRaw.pl +2 -2
  24. package/bin/exiftool_files/lib/Image/ExifTool/WriteExif.pl +14 -4
  25. package/bin/exiftool_files/lib/Image/ExifTool/WriteQuickTime.pl +2 -0
  26. package/bin/exiftool_files/lib/Image/ExifTool/WriteRIFF.pl +22 -3
  27. package/bin/exiftool_files/lib/Image/ExifTool/Writer.pl +53 -11
  28. package/bin/exiftool_files/lib/Image/ExifTool/XISF.pm +185 -0
  29. package/bin/exiftool_files/lib/Image/ExifTool/XMP.pm +67 -2
  30. package/bin/exiftool_files/lib/Image/ExifTool/XMP2.pl +36 -1
  31. package/bin/exiftool_files/lib/Image/ExifTool.pm +45 -20
  32. package/bin/exiftool_files/lib/Image/ExifTool.pod +20 -10
  33. package/package.json +2 -2
@@ -1063,7 +1063,7 @@ my %prismPublicationDate = (
1063
1063
  NOTES => q{
1064
1064
  PRISM Rights Language 2.1 namespace tags. These tags have been deprecated
1065
1065
  since the release of the PRISM Usage Rights 3.0. (see
1066
- L<http://www.prismstandard.org/>)
1066
+ L<https://www.w3.org/submissions/2020/SUBM-prism-20200910/prism-image.html>)
1067
1067
  },
1068
1068
  geography => { List => 'Bag' },
1069
1069
  industry => { List => 'Bag' },
@@ -1873,6 +1873,10 @@ my %sSubVersion = (
1873
1873
  ValueConv => 'Image::ExifTool::XMP::DecodeBase64($val)',
1874
1874
  ValueConvInv => 'Image::ExifTool::XMP::EncodeBase64($val)',
1875
1875
  },
1876
+ HdrPlusMakernote => {
1877
+ ValueConv => 'Image::ExifTool::XMP::DecodeBase64($val)',
1878
+ ValueConvInv => 'Image::ExifTool::XMP::EncodeBase64($val)',
1879
+ },
1876
1880
  );
1877
1881
 
1878
1882
  # Google creations namespace (ref PH)
@@ -2037,6 +2041,37 @@ my %sSubVersion = (
2037
2041
  },
2038
2042
  );
2039
2043
 
2044
+ # Google container tags (ref https://developer.android.com/guide/topics/media/platform/hdr-image-format)
2045
+ # NOTE: Not included because these namespace prefixes conflict with Google's depth-map Device tags!
2046
+ # (see ../pics/GooglePixel8Pro.jpg sample image)
2047
+ # %Image::ExifTool::XMP::Container = (
2048
+ # %xmpTableDefaults,
2049
+ # GROUPS => { 1 => 'XMP-Container', 2 => 'Image' },
2050
+ # NAMESPACE => 'Container',
2051
+ # NOTES => 'Google Container namespace.',
2052
+ # Directory => {
2053
+ # Name => 'ContainerDirectory',
2054
+ # FlatName => 'Directory',
2055
+ # List => 'Seq',
2056
+ # Struct => {
2057
+ # STRUCT_NAME => 'Directory',
2058
+ # Item => {
2059
+ # Namespace => 'Container',
2060
+ # Struct => {
2061
+ # STRUCT_NAME => 'Item',
2062
+ # NAMESPACE => { Item => 'http://ns.google.com/photos/1.0/container/item/'},
2063
+ # Mime => { },
2064
+ # Semantic => { },
2065
+ # Length => { Writable => 'integer' },
2066
+ # Label => { },
2067
+ # Padding => { Writable => 'integer' },
2068
+ # URI => { },
2069
+ # },
2070
+ # },
2071
+ # },
2072
+ # },
2073
+ # );
2074
+
2040
2075
  # Getty Images namespace (ref PH)
2041
2076
  %Image::ExifTool::XMP::GettyImages = (
2042
2077
  %xmpTableDefaults,
@@ -29,15 +29,15 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes
29
29
  %jpegMarker %specialTags %fileTypeLookup $testLen $exeDir
30
30
  %static_vars);
31
31
 
32
- $VERSION = '12.65';
32
+ $VERSION = '12.69';
33
33
  $RELEASE = '';
34
34
  @ISA = qw(Exporter);
35
35
  %EXPORT_TAGS = (
36
36
  # all public non-object-oriented functions:
37
37
  Public => [qw(
38
- ImageInfo GetTagName GetShortcuts GetAllTags GetWritableTags
39
- GetAllGroups GetDeleteGroups GetFileType CanWrite CanCreate
40
- AddUserDefinedTags
38
+ ImageInfo AvailableOptions GetTagName GetShortcuts GetAllTags
39
+ GetWritableTags GetAllGroups GetDeleteGroups GetFileType CanWrite
40
+ CanCreate AddUserDefinedTags
41
41
  )],
42
42
  # exports not part of the public API, but used by ExifTool modules:
43
43
  DataAccess => [qw(
@@ -149,8 +149,8 @@ sub ReadValue($$$;$$$);
149
149
  FLAC Ogg Vorbis APE APE::NewHeader APE::OldHeader Audible MPC MPEG::Audio
150
150
  MPEG::Video MPEG::Xing M2TS QuickTime QuickTime::ImageFile QuickTime::Stream
151
151
  QuickTime::Tags360Fly Matroska Matroska::StdTag MOI MXF DV Flash Flash::FLV
152
- Real::Media Real::Audio Real::Metafile Red RIFF AIFF ASF WTV DICOM FITS MIE
153
- JSON HTML XMP::SVG Palm Palm::MOBI Palm::EXTH Torrent EXE EXE::PEVersion
152
+ Real::Media Real::Audio Real::Metafile Red RIFF AIFF ASF WTV DICOM FITS XISF
153
+ MIE JSON HTML XMP::SVG Palm Palm::MOBI Palm::EXTH Torrent EXE EXE::PEVersion
154
154
  EXE::PEString EXE::MachO EXE::PEF EXE::ELF EXE::AR EXE::CHM LNK Font VCard
155
155
  Text VCard::VCalendar VCard::VNote RSRC Rawzor ZIP ZIP::GZIP ZIP::RAR
156
156
  ZIP::RAR5 RTF OOXML iWork ISO FLIR::AFF FLIR::FPF MacOS MacOS::MDItem
@@ -193,10 +193,11 @@ $defaultLang = 'en'; # default language
193
193
  @fileTypes = qw(JPEG EXV CRW DR4 TIFF GIF MRW RAF X3F JP2 PNG MIE MIFF PS PDF
194
194
  PSD XMP BMP WPG BPG PPM RIFF AIFF ASF MOV MPEG Real SWF PSP FLV
195
195
  OGG FLAC APE MPC MKV MXF DV PMP IND PGF ICC ITC FLIR FLIF FPF
196
- LFP HTML VRD RTF FITS XCF DSS QTIF FPX PICT ZIP GZIP PLIST RAR
197
- 7Z BZ2 CZI TAR EXE EXR HDR CHM LNK WMF AVC DEX DPX RAW Font RSRC
198
- M2TS MacOS PHP PCX DCX DWF DWG DXF WTV Torrent VCard LRI R3D AA
199
- PDB PFM2 MRC LIF JXL MOI ISO ALIAS JSON MP3 DICOM PCD ICO TXT);
196
+ LFP HTML VRD RTF FITS XISF XCF DSS QTIF FPX PICT ZIP GZIP PLIST
197
+ RAR 7Z BZ2 CZI TAR EXE EXR HDR CHM LNK WMF AVC DEX DPX RAW Font
198
+ RSRC M2TS MacOS PHP PCX DCX DWF DWG DXF WTV Torrent VCard LRI
199
+ R3D AA PDB PFM2 MRC LIF JXL MOI ISO ALIAS JSON MP3 DICOM PCD ICO
200
+ TXT);
200
201
 
201
202
  # file types that we can write (edit)
202
203
  my @writeTypes = qw(JPEG TIFF GIF CRW MRW ORF RAF RAW PNG MIE PSD XMP PPM EPS
@@ -545,6 +546,7 @@ my %createTypes = map { $_ => 1 } qw(XMP ICC MIE VRD DR4 EXIF EXV);
545
546
  X3F => ['X3F', 'Sigma RAW format'],
546
547
  XCF => ['XCF', 'GIMP native image format'],
547
548
  XHTML=> ['HTML', 'Extensible HyperText Markup Language'],
549
+ XISF => ['XISF', 'Extensible Image Serialization Format'],
548
550
  XLA => ['FPX', 'Microsoft Excel Add-in'],
549
551
  XLAM => [['ZIP','FPX'], 'Office Open XML Spreadsheet Add-in Macro-enabled'],
550
552
  XLS => ['FPX', 'Microsoft Excel Spreadsheet'],
@@ -798,6 +800,7 @@ my %fileDescription = (
798
800
  WTV => 'video/x-ms-wtv',
799
801
  X3F => 'image/x-sigma-x3f',
800
802
  XCF => 'image/x-xcf',
803
+ XISF => 'image/x-xisf',
801
804
  XLA => 'application/vnd.ms-excel',
802
805
  XLAM => 'application/vnd.ms-excel.addin.macroEnabled.12',
803
806
  XLS => 'application/vnd.ms-excel',
@@ -994,6 +997,7 @@ $testLen = 1024; # number of bytes to read when testing for magic number
994
997
  WTV => '\xb7\xd8\x00\x20\x37\x49\xda\x11\xa6\x4e\x00\x07\xe9\x5e\xad\x8d',
995
998
  X3F => 'FOVb',
996
999
  XCF => 'gimp xcf ',
1000
+ XISF => 'XISF0100',
997
1001
  XMP => '\0{0,3}(\xfe\xff|\xff\xfe|\xef\xbb\xbf)?\0{0,3}\s*<',
998
1002
  ZIP => 'PK\x03\x04',
999
1003
  );
@@ -1133,6 +1137,7 @@ my @availableOptions = (
1133
1137
  [ 'UserParam', { }, 'user parameters for additional user-defined tag values' ],
1134
1138
  [ 'Validate', undef, 'perform additional validation' ],
1135
1139
  [ 'Verbose', 0, 'print verbose messages (0-5, higher # = more verbose)' ],
1140
+ [ 'WindowsWideFile', undef, 'force the use of Windows wide-character file routines' ], # (see forum15208)
1136
1141
  [ 'WriteMode', 'wcg', 'enable all write modes by default' ],
1137
1142
  [ 'XAttrTags', undef, 'extract MacOS extended attribute tags' ],
1138
1143
  [ 'XMPAutoConv', 1, 'automatic conversion of unknown XMP tag values' ],
@@ -1580,6 +1585,7 @@ my %systemTagsNotes = (
1580
1585
  ImageHeight => { Notes => 'the height of the image in number of pixels' },
1581
1586
  XResolution => { Notes => 'the horizontal pixel resolution' },
1582
1587
  YResolution => { Notes => 'the vertical pixel resolution' },
1588
+ NumPlanes => { Notes => 'number of color planes' },
1583
1589
  MaxVal => { Notes => 'maximum pixel value in PPM or PGM image' },
1584
1590
  EXIF => {
1585
1591
  Notes => q{
@@ -1843,7 +1849,7 @@ my %systemTagsNotes = (
1843
1849
  Geotime => {
1844
1850
  Writable => 1,
1845
1851
  WriteOnly => 1,
1846
- AllowGroup => '(exif|gps|xmp|xmp-exif)',
1852
+ AllowGroup => '(exif|gps|xmp|xmp-exif|quicktime|keys|itemlist|userdata)',
1847
1853
  Notes => q{
1848
1854
  this write-only tag is used to define a date/time for interpolating a
1849
1855
  position in the GPS track specified by the Geotag tag. Writing this tag
@@ -4305,6 +4311,7 @@ sub EncodeFileName($$;$)
4305
4311
  {
4306
4312
  my ($self, $file, $force) = @_;
4307
4313
  my $enc = $$self{OPTIONS}{CharsetFileName};
4314
+ $force = 1 if $$self{OPTIONS}{WindowsWideFile};
4308
4315
  if ($enc) {
4309
4316
  if ($file =~ /[\x80-\xff]/ or $force) {
4310
4317
  # encode for use in Windows Unicode functions if necessary
@@ -4740,13 +4747,16 @@ sub CopyAltInfo($$$)
4740
4747
  # Notes: index lists are returned in increasing order
4741
4748
  sub SetFoundTags($)
4742
4749
  {
4750
+ local $_;
4743
4751
  my $self = shift;
4744
4752
  my $options = $$self{OPTIONS};
4745
4753
  my $reqTags = $$self{REQUESTED_TAGS} || [ ];
4746
4754
  my $duplicates = $$options{Duplicates};
4747
4755
  my $exclude = $$options{Exclude};
4748
4756
  my $fileOrder = $$self{FILE_ORDER};
4749
- my @groupOptions = sort grep /^Group/, keys %$options;
4757
+ my @groupOptions;
4758
+ # ignore empty group options
4759
+ $$options{$_} and push @groupOptions, $_ foreach sort grep /^Group/, keys %$options;
4750
4760
  my $doDups = $duplicates || $exclude || @groupOptions;
4751
4761
  my ($tag, $rtnTags, @byValue, @wildTags);
4752
4762
 
@@ -4911,7 +4921,6 @@ sub SetFoundTags($)
4911
4921
  $groupList = [ $$options{$groupOpt} ];
4912
4922
  }
4913
4923
  foreach (@$groupList) {
4914
- next unless defined $_;
4915
4924
  # groups have priority in order they were specified
4916
4925
  ++$wantOrder;
4917
4926
  my ($groupName, $want);
@@ -7471,7 +7480,8 @@ sub ProcessJPEG($$)
7471
7480
  my $hdr = $1;
7472
7481
  $dumpType = 'JUMBF';
7473
7482
  SetByteOrder('MM');
7474
- my $seq = Get32u($segDataPt, 4) - 1; # (start from 0)
7483
+ # (sequence should start from 1, but some software incorrectly writes 0)
7484
+ my $seq = Get32u($segDataPt, 4);
7475
7485
  my $len = Get32u($segDataPt, 8);
7476
7486
  my $type = substr($$segDataPt, 12, 4);
7477
7487
  my $hdrLen;
@@ -7481,14 +7491,13 @@ sub ProcessJPEG($$)
7481
7491
  } else {
7482
7492
  $hdrLen = 8;
7483
7493
  }
7484
- $jumbfChunk{$type} or $jumbfChunk{$type} = [ ];
7494
+ $jumbfChunk{$type} or $jumbfChunk{$type} = [ '' ];
7485
7495
  if ($len < $hdrLen) {
7486
7496
  $self->Warn('Invalid JUMBF segment');
7487
- } elsif ($seq < 0) {
7488
- $self->Warn('Invalid JUMBF sequence number');
7489
- } elsif (defined $jumbfChunk{$type}[$seq]) {
7497
+ } elsif (defined $jumbfChunk{$type}[$seq] and length $jumbfChunk{$type}[$seq]) {
7490
7498
  $self->Warn('Duplicate JUMBF sequence number');
7491
7499
  } else {
7500
+ $seq or $self->Warn('Incorrect JUMBF sequence numbering (should start from 0, not 1)');
7492
7501
  # add to list of JUMBF chunks
7493
7502
  $jumbfChunk{$type}[$seq] = substr($$segDataPt, 8 + $hdrLen);
7494
7503
  # check to see if we have a complete JUMBF box
@@ -7712,6 +7721,19 @@ sub ProcessTIFF($$;$)
7712
7721
  return $rtnVal;
7713
7722
  }
7714
7723
 
7724
+ #------------------------------------------------------------------------------
7725
+ # Process TIFF as a sub-document
7726
+ # Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) optional tag table ref
7727
+ # Returns: 1 if this looked like a valid EXIF block, 0 otherwise, or -1 on write error
7728
+ sub ProcessSubTIFF($$;$)
7729
+ {
7730
+ my ($self, $dirInfo, $tagTablePtr) = @_;
7731
+ $$self{DOC_NUM} = ++$$self{DOC_COUNT};
7732
+ my $rtnVal = $self->ProcessTIFF($dirInfo, $tagTablePtr);
7733
+ delete $$self{DOC_NUM};
7734
+ return $rtnVal;
7735
+ }
7736
+
7715
7737
  #------------------------------------------------------------------------------
7716
7738
  # Process TIFF data
7717
7739
  # Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) optional tag table ref
@@ -7936,6 +7958,9 @@ sub DoProcessTIFF($$;$)
7936
7958
  }
7937
7959
  if ($$self{TIFF_TYPE} eq 'TIFF') {
7938
7960
  $self->FoundTag(PageCount => $$self{PageCount}) if $$self{MultiPage};
7961
+ } elsif ($$self{TIFF_TYPE} eq 'NRW' and $$self{VALUE}{NEFLinearizationTable}) {
7962
+ # fix NEF type if misidentified as NRW
7963
+ $self->OverrideFileType($$self{TIFF_TYPE} = 'NEF');
7939
7964
  }
7940
7965
  if ($$self{ImageDataHash} and $$self{A100DataOffset} and $raf->Seek($$self{A100DataOffset},0)) {
7941
7966
  $self->ImageDataHash($raf, undef, 'A100');
@@ -8077,8 +8102,8 @@ sub DoProcessTIFF($$;$)
8077
8102
  # check DNG version
8078
8103
  if ($$self{DNGVersion}) {
8079
8104
  my $ver = $$self{DNGVersion};
8080
- # currently support up to DNG version 1.6
8081
- unless ($ver =~ /^(\d+) (\d+)/ and "$1.$2" <= 1.6) {
8105
+ # currently support up to DNG version 1.7
8106
+ unless ($ver =~ /^(\d+) (\d+)/ and "$1.$2" <= 1.7) {
8082
8107
  $ver =~ tr/ /./;
8083
8108
  $self->Error("DNG Version $ver not yet tested", 1);
8084
8109
  }
@@ -102,11 +102,11 @@ supported by ExifTool (r = read, w = write, c = create):
102
102
  DCP r/w | ICO r | MPG r | PSB r/w | WV r
103
103
  DCR r | ICS r | MPO r/w | PSD r/w | X3F r/w
104
104
  DFONT r | IDML r | MQV r/w | PSP r | XCF r
105
- DIVX r | IIQ r/w | MRC r | QTIF r/w | XLS r
106
- DJVU r | IND r/w | MRW r/w | R3D r | XLSX r
107
- DLL r | INSP r/w | MXF r | RA r | XMP r/w/c
108
- DNG r/w | INSV r | NEF r/w | RAF r/w | ZIP r
109
- DOC r | INX r | NKSC r/w | RAM r |
105
+ DIVX r | IIQ r/w | MRC r | QTIF r/w | XISF r
106
+ DJVU r | IND r/w | MRW r/w | R3D r | XLS r
107
+ DLL r | INSP r/w | MXF r | RA r | XLSX r
108
+ DNG r/w | INSV r | NEF r/w | RAF r/w | XMP r/w/c
109
+ DOC r | INX r | NKSC r/w | RAM r | ZIP r
110
110
  DOCX r | ISO r | NRW r/w | RAR r |
111
111
 
112
112
  Meta Information
@@ -391,12 +391,14 @@ ExifTool may be returned:
391
391
  Get/set ExifTool options. This function can be called to set the default
392
392
  options for an ExifTool object. Options set this way are in effect for
393
393
  all function calls but may be overridden by options passed as arguments
394
- to some functions. Option names are not case sensitive.
394
+ to some functions. Option names are not case sensitive, but option values
395
+ are.
395
396
 
396
397
  The default option values may be changed by defining a
397
398
  %Image::ExifTool::UserDefined::Options hash. See the ExifTool_config file
398
- in the full ExifTool distribution for examples. A default of undef has the
399
- same behaviour as a value of 0 for numerical options.
399
+ in the full ExifTool distribution for examples. Unless otherwise noted, a
400
+ default of undef has the same effect as a value of 0 for options with
401
+ numerical values.
400
402
 
401
403
  # exclude the 'OwnerName' tag from returned information
402
404
  $exifTool->Options(Exclude => 'OwnerName');
@@ -1081,6 +1083,14 @@ details about the tags. Level 3 adds a hex dump of the tag data, but with
1081
1083
  limits on the number of bytes dumped. Levels 4 and 5 remove the dump limit
1082
1084
  on tag values and JPEG segment data respectively.
1083
1085
 
1086
+ =item WindowsWideFile
1087
+
1088
+ Force the use of wide-character Windows I/O functions when the
1089
+ L</CharsetFileName> option is used. This may be necessary when files are on
1090
+ a network drive and the current directory name contains Unicode characters.
1091
+ By default, the wide-character functions are used only if the specified file
1092
+ path contains Unicode characters.
1093
+
1084
1094
  =item WriteMode
1085
1095
 
1086
1096
  Set tag write/create mode. Value is a string of one or more characters from
@@ -1155,7 +1165,7 @@ ExtractEmbedded, FastScan, FixBase, HtmlDump, HtmlDumpBase,
1155
1165
  IgnoreMinorErrors, IgnoreTags, Lang, LargeFileSupport, MakerNotes,
1156
1166
  MDItemTags, NoPDFList, Password, QuickTimeUTC (enforced 1904 time zero),
1157
1167
  RequestAll, RequestTags, SaveFormat, SavePath, ScanForXMP, Struct, TextOut,
1158
- Unknown, Verbose, XAttrTags and XMPAutoConv.
1168
+ Unknown, Verbose, WindowsWideFile, XAttrTags and XMPAutoConv.
1159
1169
 
1160
1170
  =item Return Value:
1161
1171
 
@@ -1294,7 +1304,7 @@ The following ExifTool options are effective in the call to L</WriteInfo>:
1294
1304
 
1295
1305
  ByteOrder, Charset, CharsetEXIF, CharsetFileName, CharsetIPTC, Compact,
1296
1306
  Compress, FixBase, IgnoreMinorErrors, NoMultiExif, NoPDFList, Password,
1297
- QuickTimeHandler, QuickTimePad, Verbose and WriteMode.
1307
+ QuickTimeHandler, QuickTimePad, Verbose, WindowsWideFile and WriteMode.
1298
1308
 
1299
1309
  =head2 GetTagList
1300
1310
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "exiftool-vendored.exe",
3
- "version": "12.65.0",
3
+ "version": "12.69.0",
4
4
  "description": "Vendored win32 ExifTool for Node.js",
5
5
  "main": "./index.js",
6
6
  "homepage": "https://github.com/mceachen/exiftool-vendored.exe#readme",
@@ -43,6 +43,6 @@
43
43
  "devDependencies": {
44
44
  "mocha": "^10.2.0",
45
45
  "prettier": "^3.0.3",
46
- "release-it": "^16.1.5"
46
+ "release-it": "^16.2.1"
47
47
  }
48
48
  }