exiftool_vendored 13.06.0 → 13.08.0

Sign up to get free protection for your applications and to get access to all the features.
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