Skip to content

Latest commit

 

History

History
61 lines (39 loc) · 2.99 KB

CHANGELOG.md

File metadata and controls

61 lines (39 loc) · 2.99 KB

2.2.3 (2022-03-11)

Bug Fixes

  • support all libexif versions since v0.6.21.

2.2.2 (2022-03-11)

Features

2.1.0 (2017-10-20)

Features

  • support objects which has #read implemented (641a42a), closes #13

2.0.1 (2017-10-02)

Bug Fixes

2.0.0 (2017-09-12)

Bug Fixes

Features

  • add Data#[] (9fbf4d7)
  • add Data#ifds (648841f)
  • alias #ifds to #to_h (5e2c876)
  • make Exif::Data#new accept either String or IO instance (d6af39a)
  • make fd0's priority higher than fd1 when same tag being used by both (1db5274)
  • support undefined type (1c8e4e8)
  • typecast all tags (95c1185)

BREAKING CHANGES

  • All top-level APIs will seek ifd0 tags first instead of ifd1, to retrieve tags from ifd1, use Exif::Data#[], for example:

    # to retrieve image width of ifd0
    data.image_width
    data[:ifd0][:image_width]
    # to retrieve image width of ifd1
    data[:ifd1][:image_width]
  • Passing String to Data#new is no longer treated as a file path, instead, it loads as binary data. Therefore, Data.new(path) has to be changed to Data.new(File.open(path)) or Data.new(IO.read(path)).

  • Instead of returning String, all tags are now typecasted according to TIFF tag. Tags for time like DateTimeOriginal is nolonger typecasted to Time object. To convert to Time object, use Time::strptime instea, for example:

    ```ruby
    Time.strptime(data.date_time_original, '%Y:%m:%d %H:%M:%S')
    ```