exiftool_vendored 13.06.0 → 13.08.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 (56) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Changes +29 -3
  3. data/bin/META.json +1 -1
  4. data/bin/META.yml +1 -1
  5. data/bin/README +2 -2
  6. data/bin/exiftool +6 -5
  7. data/bin/lib/Image/ExifTool/AIFF.pm +1 -1
  8. data/bin/lib/Image/ExifTool/APE.pm +1 -1
  9. data/bin/lib/Image/ExifTool/ASF.pm +1 -1
  10. data/bin/lib/Image/ExifTool/BuildTagLookup.pm +4 -3
  11. data/bin/lib/Image/ExifTool/Canon.pm +19 -1
  12. data/bin/lib/Image/ExifTool/DJI.pm +1 -1
  13. data/bin/lib/Image/ExifTool/Exif.pm +2 -2
  14. data/bin/lib/Image/ExifTool/FITS.pm +2 -2
  15. data/bin/lib/Image/ExifTool/FLIF.pm +2 -2
  16. data/bin/lib/Image/ExifTool/FlashPix.pm +11 -11
  17. data/bin/lib/Image/ExifTool/Font.pm +1 -1
  18. data/bin/lib/Image/ExifTool/HP.pm +1 -1
  19. data/bin/lib/Image/ExifTool/ID3.pm +3 -3
  20. data/bin/lib/Image/ExifTool/IPTC.pm +2 -2
  21. data/bin/lib/Image/ExifTool/InDesign.pm +1 -1
  22. data/bin/lib/Image/ExifTool/Jpeg2000.pm +6 -6
  23. data/bin/lib/Image/ExifTool/M2TS.pm +39 -9
  24. data/bin/lib/Image/ExifTool/MXF.pm +2 -2
  25. data/bin/lib/Image/ExifTool/Matroska.pm +1 -1
  26. data/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
  27. data/bin/lib/Image/ExifTool/PDF.pm +15 -15
  28. data/bin/lib/Image/ExifTool/PLIST.pm +1 -1
  29. data/bin/lib/Image/ExifTool/PNG.pm +4 -4
  30. data/bin/lib/Image/ExifTool/Panasonic.pm +1 -1
  31. data/bin/lib/Image/ExifTool/PhaseOne.pm +3 -3
  32. data/bin/lib/Image/ExifTool/Photoshop.pm +63 -3
  33. data/bin/lib/Image/ExifTool/Protobuf.pm +4 -4
  34. data/bin/lib/Image/ExifTool/QuickTime.pm +23 -14
  35. data/bin/lib/Image/ExifTool/QuickTimeStream.pl +336 -91
  36. data/bin/lib/Image/ExifTool/README +4 -1
  37. data/bin/lib/Image/ExifTool/RIFF.pm +3 -3
  38. data/bin/lib/Image/ExifTool/RTF.pm +1 -1
  39. data/bin/lib/Image/ExifTool/Ricoh.pm +3 -3
  40. data/bin/lib/Image/ExifTool/Sony.pm +2 -2
  41. data/bin/lib/Image/ExifTool/TagInfoXML.pm +4 -3
  42. data/bin/lib/Image/ExifTool/TagLookup.pm +6979 -6970
  43. data/bin/lib/Image/ExifTool/TagNames.pod +26 -5
  44. data/bin/lib/Image/ExifTool/VCard.pm +2 -2
  45. data/bin/lib/Image/ExifTool/Validate.pm +3 -3
  46. data/bin/lib/Image/ExifTool/WriteExif.pl +2 -2
  47. data/bin/lib/Image/ExifTool/WriteQuickTime.pl +4 -4
  48. data/bin/lib/Image/ExifTool/WriteXMP.pl +2 -2
  49. data/bin/lib/Image/ExifTool/Writer.pl +16 -16
  50. data/bin/lib/Image/ExifTool/XMP.pm +9 -9
  51. data/bin/lib/Image/ExifTool/ZIP.pm +1 -1
  52. data/bin/lib/Image/ExifTool.pm +58 -57
  53. data/bin/lib/Image/ExifTool.pod +1 -1
  54. data/bin/perl-Image-ExifTool.spec +1 -1
  55. data/lib/exiftool_vendored/version.rb +1 -1
  56. metadata +2 -2
@@ -29,7 +29,7 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes
29
29
  %jpegMarker %specialTags %fileTypeLookup $testLen $exeDir
30
30
  %static_vars $advFmtSelf);
31
31
 
32
- $VERSION = '13.06';
32
+ $VERSION = '13.08';
33
33
  $RELEASE = '';
34
34
  @ISA = qw(Exporter);
35
35
  %EXPORT_TAGS = (
@@ -1142,6 +1142,7 @@ my @availableOptions = (
1142
1142
  [ 'ListJoin', ', ', 'join lists together with this separator' ],
1143
1143
  [ 'ListSep', ', ', '[deprecated, use ListSplit and ListJoin instead]', 1 ],
1144
1144
  [ 'ListSplit', undef, 'regex for splitting list-type tag values when writing' ],
1145
+ # LigoGPSScale - undocumented scale for unfuzzing LIGO GPS: 1,2,3 for standard scales (1 default), or scale value
1145
1146
  [ 'MakerNotes', undef, 'extract maker notes as a block' ],
1146
1147
  [ 'MDItemTags', undef, 'extract MacOS metadata item tags' ],
1147
1148
  [ 'MissingTagValue', undef, 'value for missing tags when expanded in expressions' ],
@@ -1173,7 +1174,7 @@ my @availableOptions = (
1173
1174
  [ 'UserParam', { }, 'user parameters for additional user-defined tag values' ],
1174
1175
  [ 'Validate', undef, 'perform additional validation' ],
1175
1176
  [ 'Verbose', 0, 'print verbose messages (0-5, higher # = more verbose)' ],
1176
- [ 'WindowsLongPath', undef, 'enable support for long pathnames (enables WindowsWideFile)' ],
1177
+ [ 'WindowsLongPath', 1, 'enable support for long pathnames (enables WindowsWideFile)' ],
1177
1178
  [ 'WindowsWideFile', undef, 'force the use of Windows wide-character file routines' ], # (see forum15208)
1178
1179
  [ 'WriteMode', 'wcg', 'enable all write modes by default' ],
1179
1180
  [ 'XAttrTags', undef, 'extract MacOS extended attribute tags' ],
@@ -1265,7 +1266,9 @@ my %systemTagsNotes = (
1265
1266
  Use the -a or L<Duplicates|../ExifTool.html#Duplicates> option to see all warnings if more than one
1266
1267
  occurred. Minor warnings may be ignored with the -m or L<IgnoreMinorErrors|../ExifTool.html#IgnoreMinorErrors>
1267
1268
  option. Minor warnings with a capital "M" in the "[Minor]" designation
1268
- indicate that the processing is affected by ignoring the warning
1269
+ indicate that the processing is affected by ignoring the warning. Multiple
1270
+ identical warnings are indicated by a count after the warning message, eg.
1271
+ "[x2]" if the same warning occurred twice
1269
1272
  },
1270
1273
  },
1271
1274
  Comment => {
@@ -2661,7 +2664,7 @@ sub ExtractInfo($;@)
2661
2664
  my $fast = $$options{FastScan} || 0;
2662
2665
  my $req = $$self{REQ_TAG_LOOKUP};
2663
2666
  my $reqAll = $$options{RequestAll} || 0;
2664
- my (%saveOptions, $reEntry, $rsize, $zid, $type, @startTime, $saveOrder, $isDir);
2667
+ my (%saveOptions, $reEntry, $rsize, $zid, $type, @startTime, $saveOrder, $isDir, $i);
2665
2668
 
2666
2669
  # check for internal ReEntry option to allow recursive calls to ExtractInfo
2667
2670
  if (ref $_[1] eq 'HASH' and $_[1]{ReEntry} and
@@ -2718,7 +2721,7 @@ sub ExtractInfo($;@)
2718
2721
  if ($$req{processingtime} or $reqAll) {
2719
2722
  eval { require Time::HiRes; @startTime = Time::HiRes::gettimeofday() };
2720
2723
  if (not @startTime and $$req{processingtime}) {
2721
- $self->WarnOnce('Install Time::HiRes to generate ProcessingTime');
2724
+ $self->Warn('Install Time::HiRes to generate ProcessingTime');
2722
2725
  }
2723
2726
  }
2724
2727
 
@@ -2729,12 +2732,12 @@ sub ExtractInfo($;@)
2729
2732
  if (require Digest::SHA) {
2730
2733
  $$self{ImageDataHash} = Digest::SHA->new($1);
2731
2734
  } else {
2732
- $self->WarnOnce("Install Digest::SHA to calculate image data SHA$1");
2735
+ $self->Warn("Install Digest::SHA to calculate image data SHA$1");
2733
2736
  }
2734
2737
  } elsif (require Digest::MD5) {
2735
2738
  $$self{ImageDataHash} = Digest::MD5->new;
2736
2739
  } else {
2737
- $self->WarnOnce('Install Digest::MD5 to calculate image data MD5');
2740
+ $self->Warn('Install Digest::MD5 to calculate image data MD5');
2738
2741
  }
2739
2742
  }
2740
2743
  ++$$self{FILE_SEQUENCE}; # count files read
@@ -2774,7 +2777,7 @@ sub ExtractInfo($;@)
2774
2777
  $path =~ tr/\\/\// if $^O eq 'MSWin32'; # return forward slashes
2775
2778
  $self->FoundTag('FilePath', $path);
2776
2779
  } elsif ($$req{filepath}) {
2777
- $self->WarnOnce('The Perl Cwd module must be installed to use FilePath');
2780
+ $self->Warn('The Perl Cwd module must be installed to use FilePath');
2778
2781
  }
2779
2782
  }
2780
2783
  # get size of resource fork on Mac OS
@@ -3113,6 +3116,15 @@ sub ExtractInfo($;@)
3113
3116
  # and as such it can't be used in user-defined Composite tags
3114
3117
  @startTime and $self->FoundTag('ProcessingTime', Time::HiRes::tv_interval(\@startTime));
3115
3118
 
3119
+ # add numbers to warnings with multiple occurrences
3120
+ if (%{$$self{WAS_WARNED}}) {
3121
+ my ($tag, $val) = ( 'Warning', $$self{VALUE} );
3122
+ for ($i=1; $$val{$tag}; ++$i) {
3123
+ my $n = $$self{WAS_WARNED}{$$val{$tag}};
3124
+ $$val{$tag} .= " [x$n]" if $n and $n > 1;
3125
+ $tag = "Warning ($i)";
3126
+ }
3127
+ }
3116
3128
  # restore original options
3117
3129
  %saveOptions and $$self{OPTIONS} = \%saveOptions;
3118
3130
 
@@ -4252,7 +4264,7 @@ sub Init($)
4252
4264
  $$self{PROCESSED} = { }; # hash of processed directory start positions
4253
4265
  $$self{DIR_COUNT} = { }; # count various types of directories
4254
4266
  $$self{DUPL_TAG} = { }; # last-used index for duplicate-tag keys
4255
- $$self{WARNED_ONCE}= { }; # WarnOnce() warnings already issued
4267
+ $$self{WAS_WARNED} = { }; # number of times each warning was issued
4256
4268
  $$self{WRITTEN} = { }; # list of tags written (selected tags only)
4257
4269
  $$self{FORCE_WRITE}= { }; # ForceWrite lookup (set from ForceWrite tag)
4258
4270
  $$self{FOUND_DIR} = { }; # hash of directory names found in file
@@ -4626,13 +4638,14 @@ sub SplitFileName($)
4626
4638
  sub EncodeFileName($$;$)
4627
4639
  {
4628
4640
  my ($self, $file, $force) = @_;
4641
+ return 0 if $file eq '-'; # special case for stdin pipe
4629
4642
  my $enc = $$self{OPTIONS}{CharsetFileName};
4630
4643
  my $hasSpecialChars;
4631
4644
  if ($file =~ /[\x80-\xff]/) {
4632
4645
  $hasSpecialChars = 1;
4633
4646
  if (not $enc and $^O eq 'MSWin32') {
4634
4647
  if (IsUTF8(\$file) < 0) {
4635
- $self->WarnOnce('FileName encoding must be specified') if not defined $enc;
4648
+ $self->Warn('FileName encoding must be specified') if not defined $enc;
4636
4649
  return 0;
4637
4650
  } else {
4638
4651
  $enc = 'UTF8'; # assume UTF8
@@ -4649,7 +4662,7 @@ sub EncodeFileName($$;$)
4649
4662
  $_[1] = $self->Decode($file, $enc, undef, 'UTF16', 'II') . "\0\0";
4650
4663
  return 1;
4651
4664
  }
4652
- $self->WarnOnce('Install Win32API::File for Windows wide/long file name support');
4665
+ $self->Warn('Install Win32API::File for Windows wide/long file name support');
4653
4666
  } elsif ($enc ne 'UTF8') {
4654
4667
  # recode as UTF-8 for other platforms if necessary
4655
4668
  $_[1] = $self->Decode($file, $enc, undef, 'UTF8');
@@ -4697,13 +4710,13 @@ sub WindowsLongPath($$)
4697
4710
  $debug and print $out "WindowsLongPath input : $path$suffix\n";
4698
4711
 
4699
4712
  for (;;) { # (cheap goto)
4700
- ($longPath = $path) =~ tr(/)(\\); # convert slashes to backslashes
4713
+ ($longPath = $path) =~ tr(/)(\\); # convert slashes to backslashes
4701
4714
  last if $longPath =~ /^\\\\\?\\/; # already a device path in the format we want
4702
-
4715
+
4703
4716
  unless ($k32GetFullPathName) { # need to import (once) GetFullPathNameW
4704
4717
  last if defined $k32GetFullPathName;
4705
4718
  unless (eval { require Win32::API }) {
4706
- $self->WarnOnce('Install Win32::API to use WindowsLongPath option');
4719
+ $self->Warn('Install Win32::API to use WindowsLongPath option');
4707
4720
  last;
4708
4721
  }
4709
4722
  $k32GetFullPathName = Win32::API->new('KERNEL32', 'GetFullPathNameW', 'PNPP', 'I');
@@ -4713,13 +4726,13 @@ sub WindowsLongPath($$)
4713
4726
  last;
4714
4727
  }
4715
4728
  }
4716
- my $enc = $$self{OPTIONS}{CharsetFileName};
4717
- my $encPath = $self->Encode($longPath, 'UTF16', 'II', $enc);# need to encode to UTF16
4729
+ my $enc = $$self{OPTIONS}{CharsetFileName} || 'UTF8';
4730
+ my $encPath = $self->Decode($longPath, $enc, undef, 'UTF16', 'II');# need to encode to UTF16
4718
4731
  my $lenReq = $k32GetFullPathName->Call($encPath,0,0,0) + 1; # first pass gets length required, +1 for safety (null?)
4719
4732
  my $fullPath = "\0" x $lenReq x 2; # create buffer to hold full path
4720
4733
  $k32GetFullPathName->Call($encPath, $lenReq, $fullPath, 0); # fullPath is UTF16 now
4721
4734
  $longPath = $self->Decode($fullPath, 'UTF16', 'II', $enc);
4722
-
4735
+
4723
4736
  last if length($longPath) <= 247 - length($suffix);
4724
4737
 
4725
4738
  if ($longPath =~ /^\\\\/) {
@@ -4916,9 +4929,9 @@ sub GetFileTime($$)
4916
4929
  # on Windows, try to work around incorrect file times when daylight saving time is in effect
4917
4930
  if ($^O eq 'MSWin32') {
4918
4931
  if (not eval { require Win32::API }) {
4919
- $self->WarnOnce('Install Win32::API for proper handling of Windows file times', 1);
4932
+ $self->Warn('Install Win32::API for proper handling of Windows file times', 1);
4920
4933
  } elsif (not eval { require Win32API::File }) {
4921
- $self->WarnOnce('Install Win32API::File for proper handling of Windows file times', 1);
4934
+ $self->Warn('Install Win32API::File for proper handling of Windows file times', 1);
4922
4935
  } else {
4923
4936
  # get Win32 handle, needed for GetFileTime
4924
4937
  my $win32Handle = eval { Win32API::File::GetOsFHandle($file) };
@@ -5494,28 +5507,21 @@ sub AddCleanup($)
5494
5507
  sub Warn($$;$)
5495
5508
  {
5496
5509
  my ($self, $str, $ignorable) = @_;
5497
- my $noWarn = $self->Options('NoWarning');
5510
+ my $noWarn = $$self{OPTIONS}{NoWarning};
5498
5511
  if ($ignorable) {
5499
5512
  return 0 if $$self{OPTIONS}{IgnoreMinorErrors};
5500
5513
  return 0 if $ignorable eq '3' and $$self{OPTIONS}{Validate};
5501
5514
  return 1 if defined $noWarn and eval { $str =~ /$noWarn/ };
5502
5515
  $str = $ignorable eq '2' ? "[Minor] $str" : "[minor] $str";
5503
5516
  }
5504
- $self->FoundTag('Warning', $str) unless defined $noWarn and eval { $str =~ /$noWarn/ };
5505
- return 1;
5506
- }
5507
-
5508
- #------------------------------------------------------------------------------
5509
- # Add warning tag only once per processed file
5510
- # Inputs: 0) ExifTool object reference, 1) warning message, 2) true if minor
5511
- # Returns: true if warning tag was added
5512
- sub WarnOnce($$;$)
5513
- {
5514
- my ($self, $str, $ignorable) = @_;
5515
- return 0 if $ignorable and $$self{OPTIONS}{IgnoreMinorErrors};
5516
- unless ($$self{WARNED_ONCE}{$str}) {
5517
- $self->Warn($str, $ignorable);
5518
- $$self{WARNED_ONCE}{$str} = 1;
5517
+ unless (defined $noWarn and eval { $str =~ /$noWarn/ }) {
5518
+ # add each warning only once but count number of occurrences
5519
+ if ($$self{WAS_WARNED}{$str}) {
5520
+ ++$$self{WAS_WARNED}{$str};
5521
+ } else {
5522
+ $self->FoundTag('Warning', $str);
5523
+ $$self{WAS_WARNED}{$str} = 1;
5524
+ }
5519
5525
  }
5520
5526
  return 1;
5521
5527
  }
@@ -6246,7 +6252,7 @@ sub Decode($$$;$$$)
6246
6252
  }
6247
6253
 
6248
6254
  #------------------------------------------------------------------------------
6249
- # Encode string with specified encoding
6255
+ # Encode string (in Charset encoding) to specified encoding
6250
6256
  # Inputs: 0) ExifTool object ref, 1) string, 2) destination character set name,
6251
6257
  # 3) optional destination byte order (2-byte and 4-byte fixed-width sets only)
6252
6258
  # Returns: string in specified encoding
@@ -7590,13 +7596,13 @@ sub ProcessJPEG($$;$)
7590
7596
  my ($size, $off) = unpack('x67N2', $$segDataPt);
7591
7597
  my $guid = substr($$segDataPt, 35, 32);
7592
7598
  if ($guid =~ /[^A-Za-z0-9]/) { # (technically, should be uppercase)
7593
- $self->WarnOnce($tip = 'Invalid extended XMP GUID');
7599
+ $self->Warn($tip = 'Invalid extended XMP GUID');
7594
7600
  } else {
7595
7601
  my $extXMP = $extendedXMP{$guid};
7596
7602
  if (not $extXMP) {
7597
7603
  $extXMP = $extendedXMP{$guid} = { };
7598
7604
  } elsif ($size != $$extXMP{Size}) {
7599
- $self->WarnOnce('Inconsistent extended XMP size');
7605
+ $self->Warn('Inconsistent extended XMP size');
7600
7606
  }
7601
7607
  $$extXMP{Size} = $size;
7602
7608
  $$extXMP{$off} = substr($$segDataPt, 75);
@@ -7605,7 +7611,7 @@ sub ProcessJPEG($$;$)
7605
7611
  # (delay processing extended XMP until after reading all segments)
7606
7612
  }
7607
7613
  } else {
7608
- $self->WarnOnce($tip = 'Invalid extended XMP segment');
7614
+ $self->Warn($tip = 'Invalid extended XMP segment');
7609
7615
  }
7610
7616
  } elsif ($$segDataPt =~ /^QVCI\0/) {
7611
7617
  $dumpType = 'QVCI';
@@ -7628,7 +7634,7 @@ sub ProcessJPEG($$;$)
7628
7634
  }
7629
7635
  if (defined $flirCount) {
7630
7636
  if (defined $flirChunk[$chunkNum]) {
7631
- $self->WarnOnce('Duplicate FLIR chunk number(s)');
7637
+ $self->Warn('Duplicate FLIR chunk number(s)');
7632
7638
  $flirChunk[$chunkNum] .= substr($$segDataPt, 8);
7633
7639
  } else {
7634
7640
  $flirChunk[$chunkNum] = substr($$segDataPt, 8);
@@ -7648,7 +7654,7 @@ sub ProcessJPEG($$;$)
7648
7654
  undef $flirCount; # prevent reprocessing
7649
7655
  }
7650
7656
  } else {
7651
- $self->WarnOnce('Invalid or extraneous FLIR chunk(s)');
7657
+ $self->Warn('Invalid or extraneous FLIR chunk(s)');
7652
7658
  }
7653
7659
  } elsif ($$segDataPt =~ /^PARROT\0(II\x2a\0|MM\0\x2a)/) {
7654
7660
  # (don't know if this could span multiple segments)
@@ -7693,7 +7699,7 @@ sub ProcessJPEG($$;$)
7693
7699
  }
7694
7700
  if (defined $iccChunkCount) {
7695
7701
  if (defined $iccChunk[$chunkNum]) {
7696
- $self->WarnOnce('Duplicate ICC_Profile chunk number(s)');
7702
+ $self->Warn('Duplicate ICC_Profile chunk number(s)');
7697
7703
  $iccChunk[$chunkNum] .= substr($$segDataPt, 14);
7698
7704
  } else {
7699
7705
  $iccChunk[$chunkNum] = substr($$segDataPt, 14);
@@ -7716,7 +7722,7 @@ sub ProcessJPEG($$;$)
7716
7722
  undef $iccChunkCount; # prevent reprocessing
7717
7723
  }
7718
7724
  } else {
7719
- $self->WarnOnce('Invalid or extraneous ICC_Profile chunk(s)');
7725
+ $self->Warn('Invalid or extraneous ICC_Profile chunk(s)');
7720
7726
  }
7721
7727
  } elsif ($$segDataPt =~ /^FPXR\0/) {
7722
7728
  next if $fast > 1; # skip processing for very fast
@@ -8060,7 +8066,7 @@ sub ProcessJPEG($$;$)
8060
8066
  my $type = substr($$segDataPt, 12, 4);
8061
8067
  # a Microsoft bug writes $len and $type incorrectly as little-endian
8062
8068
  if ($type eq 'bmuj') {
8063
- $self->WarnOnce('Wrong byte order in C2PA APP11 JUMBF header');
8069
+ $self->Warn('Wrong byte order in C2PA APP11 JUMBF header');
8064
8070
  $type = 'jumb';
8065
8071
  $len = unpack('x8V', $$segDataPt);
8066
8072
  # fix the header
@@ -8737,23 +8743,18 @@ sub GetTagTable($)
8737
8743
  # try to load module for this table
8738
8744
  if ($tableName =~ /(.*)::/) {
8739
8745
  my $module = $1;
8740
- if (eval "require $module") {
8746
+ if (not eval "require $module") {
8747
+ $@ and warn $@;
8748
+ } elsif (not %$tableName) {
8741
8749
  # load additional modules if required
8742
- if (not %$tableName) {
8743
- if ($module eq 'Image::ExifTool::XMP') {
8744
- require 'Image/ExifTool/XMP2.pl';
8745
- } elsif ($tableName eq 'Image::ExifTool::QuickTime::Stream') {
8746
- require 'Image/ExifTool/QuickTimeStream.pl';
8747
- }
8750
+ if ($module eq 'Image::ExifTool::XMP') {
8751
+ require 'Image/ExifTool/XMP2.pl';
8752
+ } elsif ($tableName eq 'Image::ExifTool::QuickTime::Stream') {
8753
+ require 'Image/ExifTool/QuickTimeStream.pl';
8748
8754
  }
8749
- } else {
8750
- $@ and warn $@;
8751
8755
  }
8752
8756
  }
8753
- unless (%$tableName) {
8754
- warn "Can't find table $tableName\n";
8755
- return undef;
8756
- }
8757
+ %$tableName or warn("Can't find table $tableName\n"), return undef;
8757
8758
  }
8758
8759
  no strict 'refs';
8759
8760
  $table = \%$tableName;
@@ -2563,7 +2563,7 @@ ICC-chrm, ICC-clrt, ICC-header, ICC-meas, ICC-meta, ICC-view, ICC_Profile,
2563
2563
  ICC_Profile#, ID3, ID3v1, ID3v1_Enh, ID3v2_2, ID3v2_3, ID3v2_4, IFD0, IFD1,
2564
2564
  IPTC, IPTC#, ISO, ITC, InfiRay, Insta360, InteropIFD, ItemList, JFIF, JFXX,
2565
2565
  JPEG, JPEG-HDR, JPS, JSON, JUMBF, JVC, Jpeg2000, KDC_IFD, Keys, Kodak,
2566
- KodakBordersIFD, KodakEffectsIFD, KodakIFD, KyoceraRaw, LNK, Leaf,
2566
+ KodakBordersIFD, KodakEffectsIFD, KodakIFD, KyoceraRaw, LIGO, LNK, Leaf,
2567
2567
  LeafSubIFD, Leica, Lyrics3, Lytro, M-RAW, M2TS, MAC, MIE-Audio, MIE-Camera,
2568
2568
  MIE-Canon, MIE-Doc, MIE-Extender, MIE-Flash, MIE-GPS, MIE-Geo, MIE-Image,
2569
2569
  MIE-Lens, MIE-Main, MIE-MakerNotes, MIE-Meta, MIE-Orient, MIE-Preview,
@@ -1,6 +1,6 @@
1
1
  Summary: perl module for image data extraction
2
2
  Name: perl-Image-ExifTool
3
- Version: 13.06
3
+ Version: 13.08
4
4
  Release: 1
5
5
  License: Artistic/GPL
6
6
  Group: Development/Libraries/Perl
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ExiftoolVendored
4
- VERSION = Gem::Version.new('13.06.0')
4
+ VERSION = Gem::Version.new('13.08.0')
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exiftool_vendored
3
3
  version: !ruby/object:Gem::Version
4
- version: 13.06.0
4
+ version: 13.08.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthew McEachen
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-12-05 00:00:00.000000000 Z
12
+ date: 2024-12-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: exiftool