Bug #625

New image formats and improved makernote support should not break ABI

Added by Andreas Huggel over 8 years ago. Updated almost 7 years ago.

Status:ClosedStart date:06 Apr 2009
Priority:NormalDue date:
Assignee:Andreas Huggel% Done:

100%

Category:design
Target version:0.21

Description

Changes which should not require incompatible ABI changes

  • Adding supported image formats
  • Adding a new makernote or updating makernote support

Related issues

Related to Exiv2 - Feature #719: Remove makernote classes and pretty-print functions from ... Closed 08 Aug 2010
Related to Exiv2 - Feature #721: Remove IfdId from the published interface Closed 20 Aug 2010

History

#1 Updated by Gilles Caulier over 8 years ago

Andreas Huggel wrote:

Changes which should not require incompatible ABI changes

  • Adding supported image formats
  • Adding a new makernote or updating makernote support

Andreas,

To wrap around this problem, Exiv2 must ue everywhere d private internal classes to store private methods and members, to preverve binary compatibility.

Look how it's implemented in libkexiv2 :

http://websvn.kde.org/trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2private.h?revision=917062&view=markup
http://websvn.kde.org/trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2private.cpp?revision=908099&view=markup

Gilles Caulier

#2 Updated by Andreas Huggel over 8 years ago

Gilles,

I agree, that's also necessary. Bug #510 is for this, I've implemented a few cases so far, see eg, r1155

In this case however, the issue was with an enum in the public interface. Some redesign is needed.

Andreas

#3 Updated by Andreas Huggel almost 7 years ago

  • Status changed from New to Resolved
  • Assignee set to Andreas Huggel
  • Target version changed from 1.0 to 0.21
  • % Done changed from 0 to 100

With #719 and #721 I believe this is taken care of.

#4 Updated by Andreas Huggel almost 7 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF

Redmine Appliance - Powered by TurnKey Linux