exiftool_vendored 11.43.0 → 11.44.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of exiftool_vendored might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5d9cae7b421ad7b8045375770a24b04c65218a75
4
- data.tar.gz: 7650bc1a2f5a306e93f8ce7d6c371038d5360ca6
3
+ metadata.gz: 8821d7513aaf314f339b7a91ac998b1899cfa3a3
4
+ data.tar.gz: c460b841e3635d239c4f729c80d35189735f10d2
5
5
  SHA512:
6
- metadata.gz: 32cf511bae70f63dcb621baa662cbf72a6e55d48d4f8d840a9ebb33e76e7592da6111bc688f105981f4b96d13f45fa03f202125204882f8b0349932197319458
7
- data.tar.gz: 965bf2086cfbee87bae6185f982ceec402a938c3227ed2c232fa5f875f2e03c5e313b55f7e4e1735e7f0a020c4b4d35b0e52f55fe5659163dd0432433553d502
6
+ metadata.gz: 7977e9ee35fd78efaf300f0c62c3ed916bb9be1e2fb5b79d453675677c1f04f5a9d80b4bc0469be95fda9bc8d30b6c2592613341b72aba976539f2471717bcc4
7
+ data.tar.gz: 13b09672b1bb4ee71951b5e9fb64170589f4fea3b5ad3fee065d92973ab25f002917eaddafd8c223ba45a31c9f822b7d52dce211b986cc314045b4c3293e2c99
@@ -7,6 +7,14 @@ RSS feed: http://owl.phy.queensu.ca/~phil/exiftool/rss.xml
7
7
  Note: The most recent production release is Version 11.30. (Other versions are
8
8
  considered development releases, and are not uploaded to CPAN.)
9
9
 
10
+ May 21, 2019 - Version 11.44
11
+
12
+ - Added ability to extract XMP as a block from XMP files
13
+ - Prevent ExifIFD from being deleted from any RAW file type
14
+ - Fixed problem where some Canon tags couldn't be written in CR3 files
15
+ - Fixed problem reading QuickTime Keys tags with a space in the tag ID
16
+ - Fixed incorrect family 1 group when reading some QuickTime Keys tags
17
+
10
18
  May 17, 2019 - Version 11.43 - "Write HEIC and CR3"
11
19
 
12
20
  - Added ability to write/create EXIF and write ICC_Profile in HEIC images
@@ -21,7 +29,7 @@ May 17, 2019 - Version 11.43 - "Write HEIC and CR3"
21
29
  - Fixed writing of XMP in HEIC files to conform with the HEIC specification
22
30
  (obviously, Apple couldn't put this XMP in the same place as any other
23
31
  QuickTime-based file format, because Apple is, after all, king of "Let's
24
- re-invent the wheel!")
32
+ reinvent the wheel!")
25
33
  - Fixed problem where API WriteMode option wouldn't always prevent groups from
26
34
  being created when group creation was disabled
27
35
 
@@ -47,5 +47,5 @@
47
47
  }
48
48
  },
49
49
  "release_status" : "stable",
50
- "version" : "11.43"
50
+ "version" : "11.44"
51
51
  }
@@ -28,4 +28,4 @@ recommends:
28
28
  Time::HiRes: 0
29
29
  requires:
30
30
  perl: 5.004
31
- version: 11.43
31
+ version: 11.44
data/bin/README CHANGED
@@ -104,8 +104,8 @@ your home directory, then you would type the following commands in a
104
104
  terminal window to extract and run ExifTool:
105
105
 
106
106
  cd ~/Desktop
107
- gzip -dc Image-ExifTool-11.43.tar.gz | tar -xf -
108
- cd Image-ExifTool-11.43
107
+ gzip -dc Image-ExifTool-11.44.tar.gz | tar -xf -
108
+ cd Image-ExifTool-11.44
109
109
  ./exiftool t/images/ExifTool.jpg
110
110
 
111
111
  Note: These commands extract meta information from one of the test images.
@@ -12,7 +12,7 @@
12
12
  use strict;
13
13
  require 5.004;
14
14
 
15
- my $version = '11.43';
15
+ my $version = '11.44';
16
16
 
17
17
  # add our 'lib' directory to the include list BEFORE 'use Image::ExifTool'
18
18
  my $exeDir;
@@ -5119,7 +5119,7 @@ with this command:
5119
5119
 
5120
5120
  produces output like this:
5121
5121
 
5122
- -- Generated by ExifTool 11.43 --
5122
+ -- Generated by ExifTool 11.44 --
5123
5123
  File: a.jpg - 2003:10:31 15:44:19
5124
5124
  (f/5.6, 1/60s, ISO 100)
5125
5125
  File: b.jpg - 2006:05:23 11:57:38
@@ -27,7 +27,7 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes
27
27
  %mimeType $swapBytes $swapWords $currentByteOrder %unpackStd
28
28
  %jpegMarker %specialTags %fileTypeLookup);
29
29
 
30
- $VERSION = '11.43';
30
+ $VERSION = '11.44';
31
31
  $RELEASE = '';
32
32
  @ISA = qw(Exporter);
33
33
  %EXPORT_TAGS = (
@@ -6907,6 +6907,8 @@ sub DoProcessTIFF($$;$)
6907
6907
  my $ifdName = ($$dirInfo{DirName} and $$dirInfo{DirName} =~ /^(ExifIFD|GPS)$/) ? $1 : 'IFD0';
6908
6908
  if (not $tagTablePtr or $$tagTablePtr{GROUPS}{0} eq 'EXIF') {
6909
6909
  $self->FoundTag('ExifByteOrder', $byteOrder) unless $outfile;
6910
+ } elsif ($$tagTablePtr{GROUPS}{0} eq 'MakerNotes') { # (for writing CR3 maker notes)
6911
+ $ifdName = $$tagTablePtr{GROUPS}{0};
6910
6912
  } else {
6911
6913
  $ifdName = $$tagTablePtr{GROUPS}{1};
6912
6914
  }
@@ -42,7 +42,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
42
42
  use Image::ExifTool::Exif;
43
43
  use Image::ExifTool::GPS;
44
44
 
45
- $VERSION = '2.27';
45
+ $VERSION = '2.28';
46
46
 
47
47
  sub ProcessMOV($$;$);
48
48
  sub ProcessKeys($$$);
@@ -7577,6 +7577,7 @@ sub HandleItemInfo($)
7577
7577
 
7578
7578
  # extract information from EXIF/XMP metadata items
7579
7579
  if ($items and $raf) {
7580
+ push @{$$et{PATH}}, 'ItemInformation';
7580
7581
  my $curPos = $raf->Tell();
7581
7582
  my $primary = $$et{PrimaryItem};
7582
7583
  my $id;
@@ -7675,6 +7676,7 @@ sub HandleItemInfo($)
7675
7676
  delete $$et{DOC_NUM};
7676
7677
  }
7677
7678
  $raf->Seek($curPos, 0); # seek back to original position
7679
+ pop @{$$et{PATH}};
7678
7680
  }
7679
7681
  # process the item properties now that we should know their associations and document numbers
7680
7682
  if ($$et{ItemPropertyContainer}) {
@@ -7965,11 +7967,15 @@ sub ProcessKeys($$$)
7965
7967
  my $groups = $$tagInfo{Groups};
7966
7968
  $$newInfo{Groups} = $groups ? { %$groups } : { };
7967
7969
  $$newInfo{Groups}{$_} or $$newInfo{Groups}{$_} = $$tagTablePtr{GROUPS}{$_} foreach 0..2;
7968
- } elsif ($tag =~ /^[-\w.]+$/) {
7970
+ $$newInfo{Groups}{1} = 'Keys';
7971
+ } elsif ($tag =~ /^[-\w. ]+$/) {
7969
7972
  # create info for tags with reasonable id's
7970
- my $name = $tag;
7971
- $name =~ s/\.(.)/\U$1/g;
7972
- $newInfo = { Name => ucfirst($name) };
7973
+ my $name = ucfirst $tag;
7974
+ $name =~ s/[. ]+(.?)/\U$1/g;
7975
+ $name =~ s/_([a-z])/_\U$1/g;
7976
+ $name =~ s/([a-z])_([A-Z])/$1$2/g;
7977
+ $name = "Tag_$name" if length $name < 2;
7978
+ $newInfo = { Name => $name, Groups => { 1 => 'Keys' } };
7973
7979
  $msg = ' (Unknown)';
7974
7980
  }
7975
7981
  # substitute this tag in the ItemList table with the given index
@@ -521,7 +521,7 @@ sub WriteCRW($$)
521
521
 
522
522
  if ($$et{DEL_GROUP}{MakerNotes}) {
523
523
  if ($type eq 'CCDR') {
524
- $et->Error("Can't delete MakerNotes group in CRW file");
524
+ $et->Error("Can't delete MakerNotes from CRW");
525
525
  return 0;
526
526
  } else {
527
527
  ++$$et{CHANGED};
@@ -1349,7 +1349,7 @@ NoOverwrite: next if $isNew > 0;
1349
1349
  ($$et{DEL_GROUP}{MakerNotes} != 2 or $isNew <= 0))
1350
1350
  {
1351
1351
  if ($et->IsRawType()) {
1352
- $et->WarnOnce("Can't delete MakerNotes from $$et{FileType} file",1);
1352
+ $et->WarnOnce("Can't delete MakerNotes from $$et{FileType}",1);
1353
1353
  } else {
1354
1354
  if ($isNew <= 0) {
1355
1355
  ++$$et{CHANGED};
@@ -775,6 +775,7 @@ sub WriteQuickTime($$$)
775
775
  my %subdirInfo = (
776
776
  Parent => $dirName,
777
777
  DirName => $subName,
778
+ Name => $$tagInfo{Name},
778
779
  DirID => $tag,
779
780
  DataPt => \$buff,
780
781
  DataLen => $size,
@@ -3919,8 +3919,10 @@ sub WriteDirectory($$$;$)
3919
3919
  $delFlag = ($$delGroup{$grp0} or $$delGroup{$grp1}) unless $permanentDir{$grp0};
3920
3920
  # (never delete an entire QuickTime group)
3921
3921
  if ($delFlag) {
3922
- if (($grp0 eq 'MakerNotes' or $grp1 eq 'MakerNotes') and $self->IsRawType()) {
3923
- $self->WarnOnce("Can't delete MakerNotes from $$self{FileType} file",1);
3922
+ if (($grp0 =~ /^(MakerNotes)$/ or $grp1 =~ /^(IFD0|ExifIFD|MakerNotes)$/) and
3923
+ $self->IsRawType())
3924
+ {
3925
+ $self->WarnOnce("Can't delete $1 from $$self{FileType}",1);
3924
3926
  undef $grp1;
3925
3927
  } elsif (not $blockExifTypes{$$self{FILE_TYPE}}) {
3926
3928
  # restrict delete logic to prevent entire tiff image from being killed
@@ -4015,7 +4017,7 @@ sub WriteDirectory($$$;$)
4015
4017
  return '' unless $dataPt or $$dirInfo{RAF}; # nothing to do if block never existed
4016
4018
  # don't allow MakerNotes to be removed from RAW files
4017
4019
  if ($blockName eq 'MakerNotes' and $rawType{$$self{FileType}}) {
4018
- $self->Warn("Can't delete MakerNotes from $$self{VALUE}{FileType} file",1);
4020
+ $self->Warn("Can't delete MakerNotes from $$self{VALUE}{FileType}",1);
4019
4021
  return undef;
4020
4022
  }
4021
4023
  $verb = 'Deleting';
@@ -3877,8 +3877,8 @@ sub ProcessXMP($$;$)
3877
3877
  # extract XMP as a block if specified
3878
3878
  my $blockName = $$dirInfo{BlockInfo} ? $$dirInfo{BlockInfo}{Name} : 'XMP';
3879
3879
  if (($$et{REQ_TAG_LOOKUP}{lc $blockName} or ($$et{TAGS_FROM_FILE} and
3880
- not $$et{EXCL_TAG_LOOKUP}{lc $blockName})) and
3881
- ($$dirInfo{DirName} and $$dirInfo{DirName} eq 'XMP'))
3880
+ not $$et{EXCL_TAG_LOOKUP}{lc $blockName})) and ($$et{FileType} eq 'XMP' or
3881
+ ($$dirInfo{DirName} and $$dirInfo{DirName} eq 'XMP')))
3882
3882
  {
3883
3883
  $et->FoundTag($$dirInfo{BlockInfo} || 'XMP', substr($$dataPt, $dirStart, $dirLen));
3884
3884
  }
@@ -1,6 +1,6 @@
1
1
  Summary: perl module for image data extraction
2
2
  Name: perl-Image-ExifTool
3
- Version: 11.43
3
+ Version: 11.44
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('11.43.0')
4
+ VERSION = Gem::Version.new('11.44.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: 11.43.0
4
+ version: 11.44.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: 2019-05-17 00:00:00.000000000 Z
12
+ date: 2019-05-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: exiftool