exiftool-vendored.exe 12.82.0 → 12.84.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 (270) hide show
  1. package/README.md +6 -0
  2. package/bin/exiftool.exe +0 -0
  3. package/bin/exiftool_files/Changes +37 -0
  4. package/bin/exiftool_files/Licenses_Strawberry_Perl.zip +0 -0
  5. package/bin/exiftool_files/README +3 -2
  6. package/bin/exiftool_files/build_geolocation +872 -0
  7. package/bin/exiftool_files/config_files/example.config +2 -2
  8. package/bin/exiftool_files/exiftool.pl +28 -6
  9. package/bin/exiftool_files/fmt_files/gpx.fmt +2 -1
  10. package/bin/exiftool_files/fmt_files/gpx_wpt.fmt +2 -1
  11. package/bin/exiftool_files/lib/Archive/Zip/Archive.pm +399 -65
  12. package/bin/exiftool_files/lib/Archive/Zip/DirectoryMember.pm +1 -1
  13. package/bin/exiftool_files/lib/Archive/Zip/FileMember.pm +1 -1
  14. package/bin/exiftool_files/lib/Archive/Zip/Member.pm +499 -195
  15. package/bin/exiftool_files/lib/Archive/Zip/NewFileMember.pm +1 -1
  16. package/bin/exiftool_files/lib/Archive/Zip/StringMember.pm +2 -2
  17. package/bin/exiftool_files/lib/Archive/Zip/ZipFileMember.pm +79 -20
  18. package/bin/exiftool_files/lib/Archive/Zip.pm +179 -29
  19. package/bin/exiftool_files/lib/AutoLoader.pm +453 -0
  20. package/bin/exiftool_files/lib/B/Deparse.pm +209 -137
  21. package/bin/exiftool_files/lib/B.pm +1 -1
  22. package/bin/exiftool_files/lib/Benchmark.pm +1123 -0
  23. package/bin/exiftool_files/lib/Class/Struct.pm +2 -2
  24. package/bin/exiftool_files/lib/Compress/Raw/Bzip2.pm +14 -9
  25. package/bin/exiftool_files/lib/Compress/Raw/Lzma.pm +982 -0
  26. package/bin/exiftool_files/lib/Compress/Raw/Zlib.pm +91 -86
  27. package/bin/exiftool_files/lib/Compress/Zlib.pm +105 -100
  28. package/bin/exiftool_files/lib/Config.pm +9 -9
  29. package/bin/exiftool_files/lib/Config_heavy.pl +36 -33
  30. package/bin/exiftool_files/lib/CryptX.pm +2 -82
  31. package/bin/exiftool_files/lib/Data/Dumper.pm +2 -2
  32. package/bin/exiftool_files/lib/Digest/MD5.pm +12 -9
  33. package/bin/exiftool_files/lib/Digest/Perl/MD5.pm +1 -191
  34. package/bin/exiftool_files/lib/Digest/base.pm +26 -20
  35. package/bin/exiftool_files/lib/DynaLoader.pm +7 -4
  36. package/bin/exiftool_files/lib/Encode.pm +3 -3
  37. package/bin/exiftool_files/lib/Errno.pm +13 -13
  38. package/bin/exiftool_files/lib/Exporter/Heavy.pm +2 -2
  39. package/bin/exiftool_files/lib/Exporter.pm +1 -1
  40. package/bin/exiftool_files/lib/ExtUtils/Command/MM.pm +323 -0
  41. package/bin/exiftool_files/lib/ExtUtils/Command.pm +382 -0
  42. package/bin/exiftool_files/lib/File/Find.pm +1 -1
  43. package/bin/exiftool_files/lib/File/Glob.pm +1 -8
  44. package/bin/exiftool_files/lib/File/GlobMapper.pm +2 -2
  45. package/bin/exiftool_files/lib/File/HomeDir/Darwin/Carbon.pm +2 -40
  46. package/bin/exiftool_files/lib/File/HomeDir/Darwin/Cocoa.pm +2 -34
  47. package/bin/exiftool_files/lib/File/HomeDir/Darwin.pm +2 -28
  48. package/bin/exiftool_files/lib/File/HomeDir/Driver.pm +2 -35
  49. package/bin/exiftool_files/lib/File/HomeDir/FreeDesktop.pm +2 -62
  50. package/bin/exiftool_files/lib/File/HomeDir/MacOS9.pm +2 -53
  51. package/bin/exiftool_files/lib/File/HomeDir/Test.pm +2 -43
  52. package/bin/exiftool_files/lib/File/HomeDir/Unix.pm +2 -53
  53. package/bin/exiftool_files/lib/File/HomeDir/Windows.pm +2 -69
  54. package/bin/exiftool_files/lib/File/HomeDir.pm +5 -416
  55. package/bin/exiftool_files/lib/File/Path.pm +3 -3
  56. package/bin/exiftool_files/lib/File/Spec/Win32.pm +2 -2
  57. package/bin/exiftool_files/lib/File/Temp.pm +70 -35
  58. package/bin/exiftool_files/lib/File/Which.pm +1 -240
  59. package/bin/exiftool_files/lib/File/stat.pm +3 -2
  60. package/bin/exiftool_files/lib/IO/Compress/Adapter/Bzip2.pm +16 -17
  61. package/bin/exiftool_files/lib/IO/Compress/Adapter/Deflate.pm +19 -20
  62. package/bin/exiftool_files/lib/IO/Compress/Base/Common.pm +5 -5
  63. package/bin/exiftool_files/lib/IO/Compress/Base.pm +35 -26
  64. package/bin/exiftool_files/lib/IO/Compress/Brotli.pm +159 -0
  65. package/bin/exiftool_files/lib/IO/Compress/Bzip2.pm +50 -25
  66. package/bin/exiftool_files/lib/IO/Compress/Gzip/Constants.pm +6 -6
  67. package/bin/exiftool_files/lib/IO/Compress/Gzip.pm +58 -32
  68. package/bin/exiftool_files/lib/IO/Compress/RawDeflate.pm +63 -38
  69. package/bin/exiftool_files/lib/IO/Compress/Zlib/Extra.pm +20 -20
  70. package/bin/exiftool_files/lib/IO/Dir.pm +1 -1
  71. package/bin/exiftool_files/lib/IO/File.pm +1 -1
  72. package/bin/exiftool_files/lib/IO/Handle.pm +1 -21
  73. package/bin/exiftool_files/lib/IO/Pipe.pm +1 -1
  74. package/bin/exiftool_files/lib/IO/Seekable.pm +1 -1
  75. package/bin/exiftool_files/lib/IO/Select.pm +16 -2
  76. package/bin/exiftool_files/lib/IO/Socket/INET.pm +14 -9
  77. package/bin/exiftool_files/lib/IO/Socket/UNIX.pm +17 -1
  78. package/bin/exiftool_files/lib/IO/Socket.pm +474 -126
  79. package/bin/exiftool_files/lib/IO/String.pm +425 -0
  80. package/bin/exiftool_files/lib/IO/Uncompress/Adapter/Inflate.pm +13 -14
  81. package/bin/exiftool_files/lib/IO/Uncompress/Base.pm +142 -132
  82. package/bin/exiftool_files/lib/IO/Uncompress/Brotli.pm +119 -0
  83. package/bin/exiftool_files/lib/IO/Uncompress/Gunzip.pm +43 -37
  84. package/bin/exiftool_files/lib/IO/Uncompress/RawInflate.pm +49 -43
  85. package/bin/exiftool_files/lib/IO.pm +2 -2
  86. package/bin/exiftool_files/lib/Image/ExifTool/Apple.pm +51 -7
  87. package/bin/exiftool_files/lib/Image/ExifTool/BuildTagLookup.pm +5 -2
  88. package/bin/exiftool_files/lib/Image/ExifTool/CanonVRD.pm +18 -5
  89. package/bin/exiftool_files/lib/Image/ExifTool/DJI.pm +29 -0
  90. package/bin/exiftool_files/lib/Image/ExifTool/Exif.pm +19 -2
  91. package/bin/exiftool_files/lib/Image/ExifTool/GM.pm +17 -8
  92. package/bin/exiftool_files/lib/Image/ExifTool/Geolocation.dat +0 -0
  93. package/bin/exiftool_files/lib/Image/ExifTool/Geolocation.pm +163 -101
  94. package/bin/exiftool_files/lib/Image/ExifTool/Geotag.pm +18 -10
  95. package/bin/exiftool_files/lib/Image/ExifTool/Nikon.pm +7 -6
  96. package/bin/exiftool_files/lib/Image/ExifTool/QuickTime.pm +6 -1
  97. package/bin/exiftool_files/lib/Image/ExifTool/QuickTimeStream.pl +5 -0
  98. package/bin/exiftool_files/lib/Image/ExifTool/Sony.pm +15 -6
  99. package/bin/exiftool_files/lib/Image/ExifTool/TagLookup.pm +18 -9
  100. package/bin/exiftool_files/lib/Image/ExifTool/TagNames.pod +24 -5
  101. package/bin/exiftool_files/lib/Image/ExifTool/WriteQuickTime.pl +2 -1
  102. package/bin/exiftool_files/lib/Image/ExifTool/Writer.pl +165 -132
  103. package/bin/exiftool_files/lib/Image/ExifTool/XMP2.pl +3 -0
  104. package/bin/exiftool_files/lib/Image/ExifTool.pm +45 -23
  105. package/bin/exiftool_files/lib/Image/ExifTool.pod +23 -14
  106. package/bin/exiftool_files/lib/List/Util.pm +97 -8
  107. package/bin/exiftool_files/lib/MIME/Base64.pm +5 -5
  108. package/bin/exiftool_files/lib/MIME/Charset/_Compat.pm +106 -0
  109. package/bin/exiftool_files/lib/MIME/Charset.pm +1303 -0
  110. package/bin/exiftool_files/lib/Math/BigFloat.pm +444 -27
  111. package/bin/exiftool_files/lib/Math/BigInt/Calc.pm +296 -313
  112. package/bin/exiftool_files/lib/Math/BigInt/FastCalc.pm +1 -1
  113. package/bin/exiftool_files/lib/Math/BigInt/GMP.pm +2 -115
  114. package/bin/exiftool_files/lib/Math/BigInt/LTM.pm +2 -24
  115. package/bin/exiftool_files/lib/Math/BigInt/Lib.pm +61 -32
  116. package/bin/exiftool_files/lib/Math/BigInt.pm +292 -107
  117. package/bin/exiftool_files/lib/POSIX.pm +1 -1
  118. package/bin/exiftool_files/lib/PerlIO/scalar.pm +41 -0
  119. package/bin/exiftool_files/lib/PerlIO.pm +397 -0
  120. package/bin/exiftool_files/lib/Portable/CPAN.pm +94 -94
  121. package/bin/exiftool_files/lib/Portable/Config.pm +94 -94
  122. package/bin/exiftool_files/lib/Portable/FileSpec.pm +180 -180
  123. package/bin/exiftool_files/lib/Portable/HomeDir.pm +110 -110
  124. package/bin/exiftool_files/lib/Portable/LoadYaml.pm +430 -430
  125. package/bin/exiftool_files/lib/Portable/minicpan.pm +55 -55
  126. package/bin/exiftool_files/lib/Portable.pm +246 -320
  127. package/bin/exiftool_files/lib/Scalar/Util.pm +9 -4
  128. package/bin/exiftool_files/lib/Socket.pm +16 -12
  129. package/bin/exiftool_files/lib/Storable.pm +1444 -1441
  130. package/bin/exiftool_files/lib/TAP/Base.pm +133 -0
  131. package/bin/exiftool_files/lib/TAP/Formatter/Base.pm +467 -0
  132. package/bin/exiftool_files/lib/TAP/Formatter/Color.pm +116 -0
  133. package/bin/exiftool_files/lib/TAP/Formatter/Console/ParallelSession.pm +201 -0
  134. package/bin/exiftool_files/lib/TAP/Formatter/Console/Session.pm +205 -0
  135. package/bin/exiftool_files/lib/TAP/Formatter/Console.pm +100 -0
  136. package/bin/exiftool_files/lib/TAP/Formatter/File/Session.pm +95 -0
  137. package/bin/exiftool_files/lib/TAP/Formatter/File.pm +56 -0
  138. package/bin/exiftool_files/lib/TAP/Formatter/Session.pm +220 -0
  139. package/bin/exiftool_files/lib/TAP/Harness/Beyond.pod +426 -0
  140. package/bin/exiftool_files/lib/TAP/Harness/Env.pm +215 -0
  141. package/bin/exiftool_files/lib/TAP/Harness.pm +1054 -0
  142. package/bin/exiftool_files/lib/TAP/Object.pm +155 -0
  143. package/bin/exiftool_files/lib/TAP/Parser/Aggregator.pm +414 -0
  144. package/bin/exiftool_files/lib/TAP/Parser/Grammar.pm +584 -0
  145. package/bin/exiftool_files/lib/TAP/Parser/Iterator/Array.pm +100 -0
  146. package/bin/exiftool_files/lib/TAP/Parser/Iterator/Process.pm +378 -0
  147. package/bin/exiftool_files/lib/TAP/Parser/Iterator/Stream.pm +116 -0
  148. package/bin/exiftool_files/lib/TAP/Parser/Iterator.pm +162 -0
  149. package/bin/exiftool_files/lib/TAP/Parser/IteratorFactory.pm +339 -0
  150. package/bin/exiftool_files/lib/TAP/Parser/Multiplexer.pm +194 -0
  151. package/bin/exiftool_files/lib/TAP/Parser/Result/Bailout.pm +62 -0
  152. package/bin/exiftool_files/lib/TAP/Parser/Result/Comment.pm +60 -0
  153. package/bin/exiftool_files/lib/TAP/Parser/Result/Plan.pm +119 -0
  154. package/bin/exiftool_files/lib/TAP/Parser/Result/Pragma.pm +62 -0
  155. package/bin/exiftool_files/lib/TAP/Parser/Result/Test.pm +271 -0
  156. package/bin/exiftool_files/lib/TAP/Parser/Result/Unknown.pm +48 -0
  157. package/bin/exiftool_files/lib/TAP/Parser/Result/Version.pm +62 -0
  158. package/bin/exiftool_files/lib/TAP/Parser/Result/YAML.pm +61 -0
  159. package/bin/exiftool_files/lib/TAP/Parser/Result.pm +297 -0
  160. package/bin/exiftool_files/lib/TAP/Parser/ResultFactory.pm +183 -0
  161. package/bin/exiftool_files/lib/TAP/Parser/Scheduler/Job.pm +127 -0
  162. package/bin/exiftool_files/lib/TAP/Parser/Scheduler/Spinner.pm +61 -0
  163. package/bin/exiftool_files/lib/TAP/Parser/Scheduler.pm +448 -0
  164. package/bin/exiftool_files/lib/TAP/Parser/Source.pm +381 -0
  165. package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/Executable.pm +184 -0
  166. package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/File.pm +136 -0
  167. package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/Handle.pm +124 -0
  168. package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/Perl.pm +370 -0
  169. package/bin/exiftool_files/lib/TAP/Parser/SourceHandler/RawTAP.pm +130 -0
  170. package/bin/exiftool_files/lib/TAP/Parser/SourceHandler.pm +191 -0
  171. package/bin/exiftool_files/lib/TAP/Parser/YAMLish/Reader.pm +332 -0
  172. package/bin/exiftool_files/lib/TAP/Parser/YAMLish/Writer.pm +254 -0
  173. package/bin/exiftool_files/lib/TAP/Parser.pm +1931 -0
  174. package/bin/exiftool_files/lib/Test/Builder/Formatter.pm +107 -0
  175. package/bin/exiftool_files/lib/Test/Builder/IO/Scalar.pm +659 -0
  176. package/bin/exiftool_files/lib/Test/Builder/Module.pm +182 -0
  177. package/bin/exiftool_files/lib/Test/Builder/Tester/Color.pm +51 -0
  178. package/bin/exiftool_files/lib/Test/Builder/Tester.pm +675 -0
  179. package/bin/exiftool_files/lib/Test/Builder/TodoDiag.pm +68 -0
  180. package/bin/exiftool_files/lib/Test/Builder.pm +2653 -0
  181. package/bin/exiftool_files/lib/Test/Harness.pm +618 -0
  182. package/bin/exiftool_files/lib/Test/More.pm +1997 -0
  183. package/bin/exiftool_files/lib/Test/Simple.pm +220 -0
  184. package/bin/exiftool_files/lib/Test/Tester/Capture.pm +241 -0
  185. package/bin/exiftool_files/lib/Test/Tester/CaptureRunner.pm +79 -0
  186. package/bin/exiftool_files/lib/Test/Tester/Delegate.pm +45 -0
  187. package/bin/exiftool_files/lib/Test/Tester.pm +695 -0
  188. package/bin/exiftool_files/lib/Test/Tutorial.pod +618 -0
  189. package/bin/exiftool_files/lib/Test/use/ok.pm +64 -0
  190. package/bin/exiftool_files/lib/Text/ParseWords.pm +303 -0
  191. package/bin/exiftool_files/lib/Tie/StdHandle.pm +2 -2
  192. package/bin/exiftool_files/lib/Time/HiRes.pm +73 -68
  193. package/bin/exiftool_files/lib/Time/Local.pm +82 -35
  194. package/bin/exiftool_files/lib/Time/Piece.pm +19 -4
  195. package/bin/exiftool_files/lib/Time/Seconds.pm +1 -1
  196. package/bin/exiftool_files/lib/UNIVERSAL.pm +203 -0
  197. package/bin/exiftool_files/lib/Unicode/GCString.pm +60 -0
  198. package/bin/exiftool_files/lib/Unicode/LineBreak/Constants.pm +68 -0
  199. package/bin/exiftool_files/lib/Unicode/LineBreak.pm +248 -0
  200. package/bin/exiftool_files/lib/Win32/API/Struct.pm +1 -177
  201. package/bin/exiftool_files/lib/Win32/API/Type.pm +1 -100
  202. package/bin/exiftool_files/lib/Win32/API.pm +1 -830
  203. package/bin/exiftool_files/lib/Win32/FindFile.pm +2 -123
  204. package/bin/exiftool_files/lib/Win32.pm +213 -89
  205. package/bin/exiftool_files/lib/Win32API/File.pm +1 -1
  206. package/bin/exiftool_files/lib/auto/B/B.xs.dll +0 -0
  207. package/bin/exiftool_files/lib/auto/Compress/Raw/Bzip2/Bzip2.xs.dll +0 -0
  208. package/bin/exiftool_files/lib/auto/Compress/Raw/Lzma/Lzma.xs.dll +0 -0
  209. package/bin/exiftool_files/lib/auto/Compress/Raw/Lzma/autosplit.ix +3 -0
  210. package/bin/exiftool_files/lib/auto/Compress/Raw/Zlib/Zlib.xs.dll +0 -0
  211. package/bin/exiftool_files/lib/auto/CryptX/CryptX.xs.dll +0 -0
  212. package/bin/exiftool_files/lib/auto/Cwd/Cwd.xs.dll +0 -0
  213. package/bin/exiftool_files/lib/auto/Data/Dumper/Dumper.xs.dll +0 -0
  214. package/bin/exiftool_files/lib/auto/Digest/MD5/MD5.xs.dll +0 -0
  215. package/bin/exiftool_files/lib/auto/Digest/SHA/SHA.xs.dll +0 -0
  216. package/bin/exiftool_files/lib/auto/Encode/Encode.xs.dll +0 -0
  217. package/bin/exiftool_files/lib/auto/Fcntl/Fcntl.xs.dll +0 -0
  218. package/bin/exiftool_files/lib/auto/File/Glob/Glob.xs.dll +0 -0
  219. package/bin/exiftool_files/lib/auto/IO/Compress/Brotli/Brotli.xs.dll +0 -0
  220. package/bin/exiftool_files/lib/auto/IO/IO.xs.dll +0 -0
  221. package/bin/exiftool_files/lib/auto/List/Util/Util.xs.dll +0 -0
  222. package/bin/exiftool_files/lib/auto/MIME/Base64/Base64.xs.dll +0 -0
  223. package/bin/exiftool_files/lib/auto/Math/BigInt/FastCalc/FastCalc.xs.dll +0 -0
  224. package/bin/exiftool_files/lib/auto/Math/BigInt/GMP/GMP.xs.dll +0 -0
  225. package/bin/exiftool_files/lib/auto/POSIX/POSIX.xs.dll +0 -0
  226. package/bin/exiftool_files/lib/auto/PerlIO/scalar/scalar.xs.dll +0 -0
  227. package/bin/exiftool_files/lib/auto/Socket/Socket.xs.dll +0 -0
  228. package/bin/exiftool_files/lib/auto/Storable/Storable.xs.dll +0 -0
  229. package/bin/exiftool_files/lib/auto/Time/HiRes/HiRes.xs.dll +0 -0
  230. package/bin/exiftool_files/lib/auto/Time/Piece/Piece.xs.dll +0 -0
  231. package/bin/exiftool_files/lib/auto/Unicode/LineBreak/LineBreak.xs.dll +0 -0
  232. package/bin/exiftool_files/lib/auto/Win32/API/API.xs.dll +0 -0
  233. package/bin/exiftool_files/lib/auto/Win32/FindFile/FindFile.xs.dll +0 -0
  234. package/bin/exiftool_files/lib/auto/Win32/Win32.xs.dll +0 -0
  235. package/bin/exiftool_files/lib/auto/Win32API/File/File.xs.dll +0 -0
  236. package/bin/exiftool_files/lib/auto/mro/mro.xs.dll +0 -0
  237. package/bin/exiftool_files/lib/auto/re/re.xs.dll +0 -0
  238. package/bin/exiftool_files/lib/feature.pm +49 -17
  239. package/bin/exiftool_files/lib/mro.pm +4 -20
  240. package/bin/exiftool_files/lib/overload.pm +15 -15
  241. package/bin/exiftool_files/lib/parent.pm +10 -2
  242. package/bin/exiftool_files/lib/re.pm +91 -33
  243. package/bin/exiftool_files/lib/warnings.pm +17 -6
  244. package/bin/exiftool_files/libgcc_s_seh-1.dll +0 -0
  245. package/bin/exiftool_files/liblzma-5__.dll +0 -0
  246. package/bin/exiftool_files/libstdc++-6.dll +0 -0
  247. package/bin/exiftool_files/libwinpthread-1.dll +0 -0
  248. package/bin/exiftool_files/perl.exe +0 -0
  249. package/bin/exiftool_files/perl532.dll +0 -0
  250. package/package.json +6 -4
  251. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/cs.pm +0 -978
  252. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/de.pm +0 -1975
  253. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/en_ca.pm +0 -44
  254. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/en_gb.pm +0 -124
  255. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/es.pm +0 -2921
  256. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/fi.pm +0 -1116
  257. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/fr.pm +0 -3171
  258. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/it.pm +0 -2750
  259. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/ja.pm +0 -10256
  260. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/ko.pm +0 -4499
  261. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/nl.pm +0 -1270
  262. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/pl.pm +0 -3019
  263. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/ru.pm +0 -18220
  264. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/sk.pm +0 -441
  265. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/sv.pm +0 -714
  266. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/tr.pm +0 -452
  267. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/zh_cn.pm +0 -2225
  268. package/bin/exiftool_files/lib/Image/ExifTool/GeoLang/zh_tw.pm +0 -72
  269. package/bin/exiftool_files/libgcc_s_dw2-1.dll +0 -0
  270. package/bin/exiftool_files/perl530.dll +0 -0
@@ -0,0 +1,303 @@
1
+ package Text::ParseWords;
2
+
3
+ use strict;
4
+ require 5.006;
5
+ our $VERSION = "3.30";
6
+
7
+
8
+ use Exporter;
9
+ our @ISA = qw(Exporter);
10
+ our @EXPORT = qw(shellwords quotewords nested_quotewords parse_line);
11
+ our @EXPORT_OK = qw(old_shellwords);
12
+ our $PERL_SINGLE_QUOTE;
13
+
14
+
15
+ sub shellwords {
16
+ my (@lines) = @_;
17
+ my @allwords;
18
+
19
+ foreach my $line (@lines) {
20
+ $line =~ s/^\s+//;
21
+ my @words = parse_line('\s+', 0, $line);
22
+ pop @words if (@words and !defined $words[-1]);
23
+ return() unless (@words || !length($line));
24
+ push(@allwords, @words);
25
+ }
26
+ return(@allwords);
27
+ }
28
+
29
+
30
+
31
+ sub quotewords {
32
+ my($delim, $keep, @lines) = @_;
33
+ my($line, @words, @allwords);
34
+
35
+ foreach $line (@lines) {
36
+ @words = parse_line($delim, $keep, $line);
37
+ return() unless (@words || !length($line));
38
+ push(@allwords, @words);
39
+ }
40
+ return(@allwords);
41
+ }
42
+
43
+
44
+
45
+ sub nested_quotewords {
46
+ my($delim, $keep, @lines) = @_;
47
+ my($i, @allwords);
48
+
49
+ for ($i = 0; $i < @lines; $i++) {
50
+ @{$allwords[$i]} = parse_line($delim, $keep, $lines[$i]);
51
+ return() unless (@{$allwords[$i]} || !length($lines[$i]));
52
+ }
53
+ return(@allwords);
54
+ }
55
+
56
+
57
+
58
+ sub parse_line {
59
+ my($delimiter, $keep, $line) = @_;
60
+ my($word, @pieces);
61
+
62
+ no warnings 'uninitialized'; # we will be testing undef strings
63
+
64
+ while (length($line)) {
65
+ # This pattern is optimised to be stack conservative on older perls.
66
+ # Do not refactor without being careful and testing it on very long strings.
67
+ # See Perl bug #42980 for an example of a stack busting input.
68
+ $line =~ s/^
69
+ (?:
70
+ # double quoted string
71
+ (") # $quote
72
+ ((?>[^\\"]*(?:\\.[^\\"]*)*))" # $quoted
73
+ | # --OR--
74
+ # singe quoted string
75
+ (') # $quote
76
+ ((?>[^\\']*(?:\\.[^\\']*)*))' # $quoted
77
+ | # --OR--
78
+ # unquoted string
79
+ ( # $unquoted
80
+ (?:\\.|[^\\"'])*?
81
+ )
82
+ # followed by
83
+ ( # $delim
84
+ \Z(?!\n) # EOL
85
+ | # --OR--
86
+ (?-x:$delimiter) # delimiter
87
+ | # --OR--
88
+ (?!^)(?=["']) # a quote
89
+ )
90
+ )//xs or return; # extended layout
91
+ my ($quote, $quoted, $unquoted, $delim) = (($1 ? ($1,$2) : ($3,$4)), $5, $6);
92
+
93
+
94
+ return() unless( defined($quote) || length($unquoted) || length($delim));
95
+
96
+ if ($keep) {
97
+ $quoted = "$quote$quoted$quote";
98
+ }
99
+ else {
100
+ $unquoted =~ s/\\(.)/$1/sg;
101
+ if (defined $quote) {
102
+ $quoted =~ s/\\(.)/$1/sg if ($quote eq '"');
103
+ $quoted =~ s/\\([\\'])/$1/g if ( $PERL_SINGLE_QUOTE && $quote eq "'");
104
+ }
105
+ }
106
+ $word .= substr($line, 0, 0); # leave results tainted
107
+ $word .= defined $quote ? $quoted : $unquoted;
108
+
109
+ if (length($delim)) {
110
+ push(@pieces, $word);
111
+ push(@pieces, $delim) if ($keep eq 'delimiters');
112
+ undef $word;
113
+ }
114
+ if (!length($line)) {
115
+ push(@pieces, $word);
116
+ }
117
+ }
118
+ return(@pieces);
119
+ }
120
+
121
+
122
+
123
+ sub old_shellwords {
124
+
125
+ # Usage:
126
+ # use ParseWords;
127
+ # @words = old_shellwords($line);
128
+ # or
129
+ # @words = old_shellwords(@lines);
130
+ # or
131
+ # @words = old_shellwords(); # defaults to $_ (and clobbers it)
132
+
133
+ no warnings 'uninitialized'; # we will be testing undef strings
134
+ local *_ = \join('', @_) if @_;
135
+ my (@words, $snippet);
136
+
137
+ s/\A\s+//;
138
+ while ($_ ne '') {
139
+ my $field = substr($_, 0, 0); # leave results tainted
140
+ for (;;) {
141
+ if (s/\A"(([^"\\]|\\.)*)"//s) {
142
+ ($snippet = $1) =~ s#\\(.)#$1#sg;
143
+ }
144
+ elsif (/\A"/) {
145
+ require Carp;
146
+ Carp::carp("Unmatched double quote: $_");
147
+ return();
148
+ }
149
+ elsif (s/\A'(([^'\\]|\\.)*)'//s) {
150
+ ($snippet = $1) =~ s#\\(.)#$1#sg;
151
+ }
152
+ elsif (/\A'/) {
153
+ require Carp;
154
+ Carp::carp("Unmatched single quote: $_");
155
+ return();
156
+ }
157
+ elsif (s/\A\\(.?)//s) {
158
+ $snippet = $1;
159
+ }
160
+ elsif (s/\A([^\s\\'"]+)//) {
161
+ $snippet = $1;
162
+ }
163
+ else {
164
+ s/\A\s+//;
165
+ last;
166
+ }
167
+ $field .= $snippet;
168
+ }
169
+ push(@words, $field);
170
+ }
171
+ return @words;
172
+ }
173
+
174
+ 1;
175
+
176
+ __END__
177
+
178
+ =head1 NAME
179
+
180
+ Text::ParseWords - parse text into an array of tokens or array of arrays
181
+
182
+ =head1 SYNOPSIS
183
+
184
+ use Text::ParseWords;
185
+ @lists = nested_quotewords($delim, $keep, @lines);
186
+ @words = quotewords($delim, $keep, @lines);
187
+ @words = shellwords(@lines);
188
+ @words = parse_line($delim, $keep, $line);
189
+ @words = old_shellwords(@lines); # DEPRECATED!
190
+
191
+ =head1 DESCRIPTION
192
+
193
+ The &nested_quotewords() and &quotewords() functions accept a delimiter
194
+ (which can be a regular expression)
195
+ and a list of lines and then breaks those lines up into a list of
196
+ words ignoring delimiters that appear inside quotes. &quotewords()
197
+ returns all of the tokens in a single long list, while &nested_quotewords()
198
+ returns a list of token lists corresponding to the elements of @lines.
199
+ &parse_line() does tokenizing on a single string. The &*quotewords()
200
+ functions simply call &parse_line(), so if you're only splitting
201
+ one line you can call &parse_line() directly and save a function
202
+ call.
203
+
204
+ The $keep argument is a boolean flag. If true, then the tokens are
205
+ split on the specified delimiter, but all other characters (including
206
+ quotes and backslashes) are kept in the tokens. If $keep is false then the
207
+ &*quotewords() functions remove all quotes and backslashes that are
208
+ not themselves backslash-escaped or inside of single quotes (i.e.,
209
+ &quotewords() tries to interpret these characters just like the Bourne
210
+ shell). NB: these semantics are significantly different from the
211
+ original version of this module shipped with Perl 5.000 through 5.004.
212
+ As an additional feature, $keep may be the keyword "delimiters" which
213
+ causes the functions to preserve the delimiters in each string as
214
+ tokens in the token lists, in addition to preserving quote and
215
+ backslash characters.
216
+
217
+ &shellwords() is written as a special case of &quotewords(), and it
218
+ does token parsing with whitespace as a delimiter-- similar to most
219
+ Unix shells.
220
+
221
+ =head1 EXAMPLES
222
+
223
+ The sample program:
224
+
225
+ use Text::ParseWords;
226
+ @words = quotewords('\s+', 0, q{this is "a test" of\ quotewords \"for you});
227
+ $i = 0;
228
+ foreach (@words) {
229
+ print "$i: <$_>\n";
230
+ $i++;
231
+ }
232
+
233
+ produces:
234
+
235
+ 0: <this>
236
+ 1: <is>
237
+ 2: <a test>
238
+ 3: <of quotewords>
239
+ 4: <"for>
240
+ 5: <you>
241
+
242
+ demonstrating:
243
+
244
+ =over 4
245
+
246
+ =item 0Z<>
247
+
248
+ a simple word
249
+
250
+ =item 1Z<>
251
+
252
+ multiple spaces are skipped because of our $delim
253
+
254
+ =item 2Z<>
255
+
256
+ use of quotes to include a space in a word
257
+
258
+ =item 3Z<>
259
+
260
+ use of a backslash to include a space in a word
261
+
262
+ =item 4Z<>
263
+
264
+ use of a backslash to remove the special meaning of a double-quote
265
+
266
+ =item 5Z<>
267
+
268
+ another simple word (note the lack of effect of the
269
+ backslashed double-quote)
270
+
271
+ =back
272
+
273
+ Replacing C<quotewords('\s+', 0, q{this is...})>
274
+ with C<shellwords(q{this is...})>
275
+ is a simpler way to accomplish the same thing.
276
+
277
+ =head1 SEE ALSO
278
+
279
+ L<Text::CSV> - for parsing CSV files
280
+
281
+ =head1 AUTHORS
282
+
283
+ Maintainer: Alexandr Ciornii <alexchornyATgmail.com>.
284
+
285
+ Previous maintainer: Hal Pomeranz <pomeranz@netcom.com>, 1994-1997 (Original
286
+ author unknown). Much of the code for &parse_line() (including the
287
+ primary regexp) from Joerk Behrends <jbehrends@multimediaproduzenten.de>.
288
+
289
+ Examples section another documentation provided by John Heidemann
290
+ <johnh@ISI.EDU>
291
+
292
+ Bug reports, patches, and nagging provided by lots of folks-- thanks
293
+ everybody! Special thanks to Michael Schwern <schwern@envirolink.org>
294
+ for assuring me that a &nested_quotewords() would be useful, and to
295
+ Jeff Friedl <jfriedl@yahoo-inc.com> for telling me not to worry about
296
+ error-checking (sort of-- you had to be there).
297
+
298
+ =head1 COPYRIGHT AND LICENSE
299
+
300
+ This library is free software; you may redistribute and/or modify it
301
+ under the same terms as Perl itself.
302
+
303
+ =cut
@@ -4,7 +4,7 @@ use strict;
4
4
 
5
5
  use Tie::Handle;
6
6
  our @ISA = 'Tie::Handle';
7
- our $VERSION = '4.5';
7
+ our $VERSION = '4.6';
8
8
 
9
9
  =head1 NAME
10
10
 
@@ -48,7 +48,7 @@ sub TELL { tell($_[0]) }
48
48
  sub FILENO { fileno($_[0]) }
49
49
  sub SEEK { seek($_[0],$_[1],$_[2]) }
50
50
  sub CLOSE { close($_[0]) }
51
- sub BINMODE { binmode($_[0]) }
51
+ sub BINMODE { &CORE::binmode(shift, @_) }
52
52
 
53
53
  sub OPEN
54
54
  {
@@ -11,46 +11,46 @@ our @ISA = qw(Exporter);
11
11
  our @EXPORT = qw( );
12
12
  # More or less this same list is in Makefile.PL. Should unify.
13
13
  our @EXPORT_OK = qw (usleep sleep ualarm alarm gettimeofday time tv_interval
14
- getitimer setitimer nanosleep clock_gettime clock_getres
15
- clock clock_nanosleep
16
- CLOCKS_PER_SEC
17
- CLOCK_BOOTTIME
18
- CLOCK_HIGHRES
19
- CLOCK_MONOTONIC
20
- CLOCK_MONOTONIC_COARSE
21
- CLOCK_MONOTONIC_FAST
22
- CLOCK_MONOTONIC_PRECISE
23
- CLOCK_MONOTONIC_RAW
24
- CLOCK_PROCESS_CPUTIME_ID
25
- CLOCK_PROF
26
- CLOCK_REALTIME
27
- CLOCK_REALTIME_COARSE
28
- CLOCK_REALTIME_FAST
29
- CLOCK_REALTIME_PRECISE
30
- CLOCK_REALTIME_RAW
31
- CLOCK_SECOND
32
- CLOCK_SOFTTIME
33
- CLOCK_THREAD_CPUTIME_ID
34
- CLOCK_TIMEOFDAY
35
- CLOCK_UPTIME
36
- CLOCK_UPTIME_COARSE
37
- CLOCK_UPTIME_FAST
38
- CLOCK_UPTIME_PRECISE
39
- CLOCK_UPTIME_RAW
40
- CLOCK_VIRTUAL
41
- ITIMER_PROF
42
- ITIMER_REAL
43
- ITIMER_REALPROF
44
- ITIMER_VIRTUAL
45
- TIMER_ABSTIME
46
- d_usleep d_ualarm d_gettimeofday d_getitimer d_setitimer
47
- d_nanosleep d_clock_gettime d_clock_getres
48
- d_clock d_clock_nanosleep d_hires_stat
49
- d_futimens d_utimensat d_hires_utime
50
- stat lstat utime
51
- );
52
-
53
- our $VERSION = '1.9760';
14
+ getitimer setitimer nanosleep clock_gettime clock_getres
15
+ clock clock_nanosleep
16
+ CLOCKS_PER_SEC
17
+ CLOCK_BOOTTIME
18
+ CLOCK_HIGHRES
19
+ CLOCK_MONOTONIC
20
+ CLOCK_MONOTONIC_COARSE
21
+ CLOCK_MONOTONIC_FAST
22
+ CLOCK_MONOTONIC_PRECISE
23
+ CLOCK_MONOTONIC_RAW
24
+ CLOCK_PROCESS_CPUTIME_ID
25
+ CLOCK_PROF
26
+ CLOCK_REALTIME
27
+ CLOCK_REALTIME_COARSE
28
+ CLOCK_REALTIME_FAST
29
+ CLOCK_REALTIME_PRECISE
30
+ CLOCK_REALTIME_RAW
31
+ CLOCK_SECOND
32
+ CLOCK_SOFTTIME
33
+ CLOCK_THREAD_CPUTIME_ID
34
+ CLOCK_TIMEOFDAY
35
+ CLOCK_UPTIME
36
+ CLOCK_UPTIME_COARSE
37
+ CLOCK_UPTIME_FAST
38
+ CLOCK_UPTIME_PRECISE
39
+ CLOCK_UPTIME_RAW
40
+ CLOCK_VIRTUAL
41
+ ITIMER_PROF
42
+ ITIMER_REAL
43
+ ITIMER_REALPROF
44
+ ITIMER_VIRTUAL
45
+ TIMER_ABSTIME
46
+ d_usleep d_ualarm d_gettimeofday d_getitimer d_setitimer
47
+ d_nanosleep d_clock_gettime d_clock_getres
48
+ d_clock d_clock_nanosleep d_hires_stat
49
+ d_futimens d_utimensat d_hires_utime
50
+ stat lstat utime
51
+ );
52
+
53
+ our $VERSION = '1.9764';
54
54
  our $XS_VERSION = $VERSION;
55
55
  $VERSION = eval $VERSION;
56
56
 
@@ -67,8 +67,8 @@ sub AUTOLOAD {
67
67
  die "$error at $file line $line.\n";
68
68
  }
69
69
  {
70
- no strict 'refs';
71
- *$AUTOLOAD = sub { $val };
70
+ no strict 'refs';
71
+ *$AUTOLOAD = sub { $val };
72
72
  }
73
73
  goto &$AUTOLOAD;
74
74
  }
@@ -76,17 +76,17 @@ sub AUTOLOAD {
76
76
  sub import {
77
77
  my $this = shift;
78
78
  for my $i (@_) {
79
- if (($i eq 'clock_getres' && !&d_clock_getres) ||
80
- ($i eq 'clock_gettime' && !&d_clock_gettime) ||
81
- ($i eq 'clock_nanosleep' && !&d_clock_nanosleep) ||
82
- ($i eq 'clock' && !&d_clock) ||
83
- ($i eq 'nanosleep' && !&d_nanosleep) ||
84
- ($i eq 'usleep' && !&d_usleep) ||
85
- ($i eq 'utime' && !&d_hires_utime) ||
86
- ($i eq 'ualarm' && !&d_ualarm)) {
87
- require Carp;
88
- Carp::croak("Time::HiRes::$i(): unimplemented in this platform");
89
- }
79
+ if (($i eq 'clock_getres' && !&d_clock_getres) ||
80
+ ($i eq 'clock_gettime' && !&d_clock_gettime) ||
81
+ ($i eq 'clock_nanosleep' && !&d_clock_nanosleep) ||
82
+ ($i eq 'clock' && !&d_clock) ||
83
+ ($i eq 'nanosleep' && !&d_nanosleep) ||
84
+ ($i eq 'usleep' && !&d_usleep) ||
85
+ ($i eq 'utime' && !&d_hires_utime) ||
86
+ ($i eq 'ualarm' && !&d_ualarm)) {
87
+ require Carp;
88
+ Carp::croak("Time::HiRes::$i(): unimplemented in this platform");
89
+ }
90
90
  }
91
91
  Time::HiRes->export_to_level(1, $this, @_);
92
92
  }
@@ -114,7 +114,7 @@ Time::HiRes - High resolution alarm, sleep, gettimeofday, interval timers
114
114
  =head1 SYNOPSIS
115
115
 
116
116
  use Time::HiRes qw( usleep ualarm gettimeofday tv_interval nanosleep
117
- clock_gettime clock_getres clock_nanosleep clock
117
+ clock_gettime clock_getres clock_nanosleep clock
118
118
  stat lstat utime);
119
119
 
120
120
  usleep ($microseconds);
@@ -143,7 +143,7 @@ Time::HiRes - High resolution alarm, sleep, gettimeofday, interval timers
143
143
  getitimer ($which);
144
144
 
145
145
  use Time::HiRes qw( clock_gettime clock_getres clock_nanosleep
146
- ITIMER_REAL ITIMER_VIRTUAL ITIMER_PROF
146
+ ITIMER_REAL ITIMER_VIRTUAL ITIMER_PROF
147
147
  ITIMER_REALPROF );
148
148
 
149
149
  $realtime = clock_gettime(CLOCK_REALTIME);
@@ -221,8 +221,8 @@ Sleeps for the number of microseconds (millionths of a second)
221
221
  specified. Returns the number of microseconds actually slept.
222
222
  Can sleep for more than one second, unlike the C<usleep> system call.
223
223
  Can also sleep for zero seconds, which often works like a I<thread yield>.
224
- See also C<Time::HiRes::usleep()>, C<Time::HiRes::sleep()>, and
225
- C<Time::HiRes::clock_nanosleep()>.
224
+ See also L<C<Time::HiRes::sleep()>|/sleep ( $floating_seconds )>, and
225
+ L<C<clock_nanosleep()>|/clock_nanosleep ( $which, $nanoseconds, $flags = 0)>.
226
226
 
227
227
  Do not expect usleep() to be exact down to one microsecond.
228
228
 
@@ -232,8 +232,10 @@ Sleeps for the number of nanoseconds (1e9ths of a second) specified.
232
232
  Returns the number of nanoseconds actually slept (accurate only to
233
233
  microseconds, the nearest thousand of them). Can sleep for more than
234
234
  one second. Can also sleep for zero seconds, which often works like
235
- a I<thread yield>. See also C<Time::HiRes::sleep()>,
236
- C<Time::HiRes::usleep()>, and C<Time::HiRes::clock_nanosleep()>.
235
+ a I<thread yield>. See also
236
+ L<C<Time::HiRes::sleep()>|/sleep ( $floating_seconds )>,
237
+ L<C<Time::HiRes::usleep()>|/usleep ( $useconds )>, and
238
+ L<C<clock_nanosleep()>|/clock_nanosleep ( $which, $nanoseconds, $flags = 0)>.
237
239
 
238
240
  Do not expect nanosleep() to be exact down to one nanosecond.
239
241
  Getting even accuracy of one thousand nanoseconds is good.
@@ -250,7 +252,7 @@ ualarm(0) will cancel an outstanding ualarm().
250
252
 
251
253
  Note that the interaction between alarms and sleeps is unspecified.
252
254
 
253
- =item tv_interval
255
+ =item tv_interval
254
256
 
255
257
  tv_interval ( $ref_to_gettimeofday [, $ref_to_later_gettimeofday] )
256
258
 
@@ -356,7 +358,7 @@ delivered when the timer expires. C<SIGPROF> can interrupt system calls.
356
358
  The semantics of interval timers for multithreaded programs are
357
359
  system-specific, and some systems may support additional interval
358
360
  timers. For example, it is unspecified which thread gets the signals.
359
- See your C<setitimer()> documentation.
361
+ See your L<C<setitimer(2)>> documentation.
360
362
 
361
363
  =item getitimer ( $which )
362
364
 
@@ -404,8 +406,10 @@ default to zero but C<TIMER_ABSTIME> can specified (must be exported
404
406
  explicitly) which means that C<$nanoseconds> is not a time interval
405
407
  (as is the default) but instead an absolute time. Can sleep for more
406
408
  than one second. Can also sleep for zero seconds, which often works
407
- like a I<thread yield>. See also C<Time::HiRes::sleep()>,
408
- C<Time::HiRes::usleep()>, and C<Time::HiRes::nanosleep()>.
409
+ like a I<thread yield>. See also
410
+ L<C<Time::HiRes::sleep()>|/sleep ( $floating_seconds )>,
411
+ L<C<Time::HiRes::usleep()>|/usleep ( $useconds )>, and
412
+ L<C<Time::HiRes::nanosleep()>|/nanosleep ( $nanoseconds )>.
409
413
 
410
414
  Do not expect clock_nanosleep() to be exact down to one nanosecond.
411
415
  Getting even accuracy of one thousand nanoseconds is good.
@@ -515,7 +519,7 @@ Returns the number of files successfully changed.
515
519
  # get seconds and microseconds since the epoch
516
520
  ($s, $usec) = gettimeofday();
517
521
 
518
- # measure elapsed time
522
+ # measure elapsed time
519
523
  # (could also do by subtracting 2 gettimeofday return values)
520
524
  $t0 = [gettimeofday];
521
525
  # do bunch of stuff here
@@ -524,7 +528,7 @@ Returns the number of files successfully changed.
524
528
  $t0_t1 = tv_interval $t0, $t1;
525
529
 
526
530
  $elapsed = tv_interval ($t0, [gettimeofday]);
527
- $elapsed = tv_interval ($t0); # equivalent code
531
+ $elapsed = tv_interval ($t0); # equivalent code
528
532
 
529
533
  #
530
534
  # replacements for time, alarm and sleep that know about
@@ -650,9 +654,10 @@ gnukfreebsd seems to have non-functional futimens() and utimensat()
650
654
 
651
655
  Perl modules L<BSD::Resource>, L<Time::TAI64>.
652
656
 
653
- Your system documentation for C<clock>, C<clock_gettime>,
654
- C<clock_getres>, C<clock_nanosleep>, C<clock_settime>, C<getitimer>,
655
- C<gettimeofday>, C<setitimer>, C<sleep>, C<stat>, C<ualarm>.
657
+ Your system documentation for L<C<clock(3)>>, L<C<clock_gettime(2)>>,
658
+ L<C<clock_getres(3)>>, L<C<clock_nanosleep(3)>>, L<C<clock_settime(2)>>,
659
+ L<C<getitimer(2)>>, L<C<gettimeofday(2)>>, L<C<setitimer(2)>>, L<C<sleep(3)>>,
660
+ L<C<stat(2)>>, L<C<ualarm(3)>>.
656
661
 
657
662
  =head1 AUTHORS
658
663