Binary compatibility report for the kyotocabinet library between 1.0.4 and 1.1.1 versions on x86
Test Info
Library Name | kyotocabinet |
Version #1 | 1.0.4 |
Version #2 | 1.1.1 |
CPU Type | x86 |
GCC Version | 4.6.1 |
Test Results
Total Header Files | 14 |
Total Shared Libraries | 1 |
Total Symbols / Types | 467 / 170 |
Verdict | Incompatible (0.9%) |
Problem Summary
| Severity | Count |
---|
Added Symbols | - | 39 |
Removed Symbols | High | 4 |
Problems with Data Types | High | 0 |
Medium | 0 |
Low | 2 |
Problems with Symbols | High | 2 |
Medium | 0 |
Low | 1 |
Problems with Constants | Low | 0 |
Other Changes in Symbols | - | 1 |
Added Symbols (39)
kccompress.h,
libkyotocabinet.so.3.4.0
namespace kyotocabinet
Zlib::calculate_crc ( void const* buf, size_t size, uint32_t seed ) [static]
[symbol: _ZN12kyotocabinet4Zlib13calculate_crcEPKvjj]
Zlib::compress ( void const* buf, size_t size, size_t* sp, Zlib::Mode mode ) [static]
[symbol: _ZN12kyotocabinet4Zlib8compressEPKvjPjNS0_4ModeE]
Zlib::decompress ( void const* buf, size_t size, size_t* sp, Zlib::Mode mode ) [static]
[symbol: _ZN12kyotocabinet4Zlib10decompressEPKvjPjNS0_4ModeE]
kcdirdb.h,
libkyotocabinet.so.3.4.0
namespace kyotocabinet
DirDB::accept ( char const* kbuf, size_t ksiz, DB::Visitor* visitor, bool writable )
[symbol: _ZN12kyotocabinet5DirDB6acceptEPKcjPNS_2DB7VisitorEb]
DirDB::begin_transaction ( bool hard )
[symbol: _ZN12kyotocabinet5DirDB17begin_transactionEb]
DirDB::begin_transaction_try ( bool hard )
[symbol: _ZN12kyotocabinet5DirDB21begin_transaction_tryEb]
DirDB::clear ( )
[symbol: _ZN12kyotocabinet5DirDB5clearEv]
DirDB::close ( )
[symbol: _ZN12kyotocabinet5DirDB5closeEv]
DirDB::count ( )
[symbol: _ZN12kyotocabinet5DirDB5countEv]
DirDB::cursor ( )
[symbol: _ZN12kyotocabinet5DirDB6cursorEv]
DirDB::Cursor::accept ( DB::Visitor* visitor, bool writable, bool step )
[symbol: _ZN12kyotocabinet5DirDB6Cursor6acceptEPNS_2DB7VisitorEbb]
DirDB::Cursor::db ( )
[symbol: _ZN12kyotocabinet5DirDB6Cursor2dbEv]
DirDB::Cursor::jump ( )
[symbol: _ZN12kyotocabinet5DirDB6Cursor4jumpEv]
DirDB::Cursor::jump ( char const* kbuf, size_t ksiz )
[symbol: _ZN12kyotocabinet5DirDB6Cursor4jumpEPKcj]
DirDB::Cursor::jump ( std::string const& key )
[symbol: _ZN12kyotocabinet5DirDB6Cursor4jumpERKSs]
DirDB::Cursor::step ( )
[symbol: _ZN12kyotocabinet5DirDB6Cursor4stepEv]
DirDB::Cursor::~Cursor [in-charge-deleting] ( )
[symbol: _ZN12kyotocabinet5DirDB6CursorD0Ev]
DirDB::Cursor::~Cursor [in-charge] ( )
[symbol: _ZN12kyotocabinet5DirDB6CursorD1Ev]
DirDB::end_transaction ( bool commit )
[symbol: _ZN12kyotocabinet5DirDB15end_transactionEb]
DirDB::error ( ) const
[symbol: _ZNK12kyotocabinet5DirDB5errorEv]
DirDB::iterate ( DB::Visitor* visitor, bool writable )
[symbol: _ZN12kyotocabinet5DirDB7iterateEPNS_2DB7VisitorEb]
DirDB::open ( std::string const& path, uint32_t mode )
[symbol: _ZN12kyotocabinet5DirDB4openERKSsj]
DirDB::path ( )
[symbol: _ZN12kyotocabinet5DirDB4pathEv]
DirDB::set_error ( FileDB::Error::Code code, char const* message )
[symbol: _ZN12kyotocabinet5DirDB9set_errorENS_6FileDB5Error4CodeEPKc]
DirDB::size ( )
[symbol: _ZN12kyotocabinet5DirDB4sizeEv]
DirDB::status ( std::map<std::string, std::basic_string<char> >* strmap )
[symbol: _ZN12kyotocabinet5DirDB6statusEPSt3mapISsSsSt4lessISsESaISt4pairIKSsSsEEE]
DirDB::synchronize ( bool hard, FileDB::FileProcessor* proc )
[symbol: _ZN12kyotocabinet5DirDB11synchronizeEbPNS_6FileDB13FileProcessorE]
DirDB::~DirDB [in-charge-deleting] ( )
[symbol: _ZN12kyotocabinet5DirDBD0Ev]
DirDB::~DirDB [in-charge] ( )
[symbol: _ZN12kyotocabinet5DirDBD1Ev]
kcfile.h,
libkyotocabinet.so.3.4.0
namespace kyotocabinet
DirStream::close ( )
[symbol: _ZN12kyotocabinet9DirStream5closeEv]
DirStream::DirStream [in-charge] ( )
[symbol: _ZN12kyotocabinet9DirStreamC1Ev]
DirStream::DirStream [not-in-charge] ( )
[symbol: _ZN12kyotocabinet9DirStreamC2Ev]
DirStream::open ( std::string const& path )
[symbol: _ZN12kyotocabinet9DirStream4openERKSs]
DirStream::read ( std::string* path )
[symbol: _ZN12kyotocabinet9DirStream4readEPSs]
DirStream::~DirStream [in-charge] ( )
[symbol: _ZN12kyotocabinet9DirStreamD1Ev]
DirStream::~DirStream [not-in-charge] ( )
[symbol: _ZN12kyotocabinet9DirStreamD2Ev]
File::read_file ( std::string const& path, int64_t* sp, int64_t limit ) [static]
[symbol: _ZN12kyotocabinet4File9read_fileERKSsPxx]
File::synchronize_whole ( ) [static]
[symbol: _ZN12kyotocabinet4File17synchronize_wholeEv]
File::write_file ( std::string const& path, char const* buf, int64_t size ) [static]
[symbol: _ZN12kyotocabinet4File10write_fileERKSsPKcx]
to the top
Removed Symbols (4)
kccompress.h,
libkyotocabinet.so.3.2.0
namespace kyotocabinet
Zlib::compress ( Zlib::Mode mode, void const* buf, size_t size, size_t* sp ) [static]
[symbol: _ZN12kyotocabinet4Zlib8compressENS0_4ModeEPKvjPj]
Zlib::decompress ( Zlib::Mode mode, void const* buf, size_t size, size_t* sp ) [static]
[symbol: _ZN12kyotocabinet4Zlib10decompressENS0_4ModeEPKvjPj]
ZLIBDEFLCOMP [data]
[symbol: _ZN12kyotocabinet12ZLIBDEFLCOMPE]
ZLIBGZIPCOMP [data]
[symbol: _ZN12kyotocabinet12ZLIBGZIPCOMPE]
to the top
Problems with Symbols, High Severity (2)
kccompress.h,
libkyotocabinet.so.3.2.0
namespace kyotocabinet
[+] Zlib::compress ( Zlib::Mode mode, void const* buf, size_t size, size_t* sp ) [static] (1)
changed to:Zlib::compress ( void const* buf, size_t size, size_t* sp, Zlib::Mode mode ) [static]
[symbol: _ZN12kyotocabinet4Zlib8compressENS0_4ModeEPKvjPj]
| Change | Effect |
---|
1 | Parameters list has been changed. | The name of the appropriate symbol for this function on binary level has been changed from _ZN12kyotocabinet4Zlib8compressENS0_4ModeEPKvjPj to _ZN12kyotocabinet4Zlib8compressEPKvjPjNS0_4ModeE. This may cause "undefined reference" linker error in old client applications. |
[+] Zlib::decompress ( Zlib::Mode mode, void const* buf, size_t size, size_t* sp ) [static] (1)
changed to:Zlib::decompress ( void const* buf, size_t size, size_t* sp, Zlib::Mode mode ) [static]
[symbol: _ZN12kyotocabinet4Zlib10decompressENS0_4ModeEPKvjPj]
| Change | Effect |
---|
1 | Parameters list has been changed. | The name of the appropriate symbol for this function on binary level has been changed from _ZN12kyotocabinet4Zlib10decompressENS0_4ModeEPKvjPj to _ZN12kyotocabinet4Zlib10decompressEPKvjPjNS0_4ModeE. This may cause "undefined reference" linker error in old client applications. |
to the top
Problems with Data Types, Low Severity (2)
kcpolydb.h
namespace kyotocabinet
[+] class PolyDB (2)
| Change |
Effect |
1 | Field zcomp_ has been added to this type. | Size of the inclusive type has been changed. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. |
2 | Size of this type has been changed from 16 bytes to 20 bytes. | The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
[+] affected symbols (18)
PolyDB::accept ( char const* kbuf, size_t ksiz, DB::Visitor* visitor, bool writable )This method is from 'PolyDB' class.
PolyDB::begin_transaction ( bool hard )This method is from 'PolyDB' class.
PolyDB::begin_transaction_try ( bool hard )This method is from 'PolyDB' class.
PolyDB::clear ( )This method is from 'PolyDB' class.
PolyDB::close ( )This method is from 'PolyDB' class.
PolyDB::count ( )This method is from 'PolyDB' class.
PolyDB::cursor ( )This method is from 'PolyDB' class.
PolyDB::Cursor::db ( )Return value (pointer) has base type 'PolyDB'.
PolyDB::end_transaction ( bool commit )This method is from 'PolyDB' class.
PolyDB::error ( ) constThis method is from 'PolyDB' class.
PolyDB::iterate ( DB::Visitor* visitor, bool writable )This method is from 'PolyDB' class.
PolyDB::open ( std::string const& path, uint32_t mode )This method is from 'PolyDB' class.
PolyDB::path ( )This method is from 'PolyDB' class.
PolyDB::set_error ( FileDB::Error::Code code, char const* message )This method is from 'PolyDB' class.
PolyDB::size ( )This method is from 'PolyDB' class.
PolyDB::status ( std::map<std::string, std::basic_string<char> >* strmap )This method is from 'PolyDB' class.
PolyDB::synchronize ( bool hard, FileDB::FileProcessor* proc )This method is from 'PolyDB' class.
PolyDB::~PolyDB [in-charge] ( )This method is from 'PolyDB' class.
to the top
Problems with Symbols, Low Severity (1)
kccompress.h,
libkyotocabinet.so.3.2.0
namespace kyotocabinet
[+] ZLIBRAWCOMP [data] (1)
[symbol: _ZN12kyotocabinet11ZLIBRAWCOMPE]
| Change | Effect |
---|
1 | Type of this global data has been changed from ZlibRawCompressor to ZlibCompressor<(Zlib::Mode)0>. | Replacement of data type may indicate a change in semantic meaning. |
to the top
Other Changes in Symbols (1)
kcfile.h,
libkyotocabinet.so.3.2.0
namespace kyotocabinet
[+] File::status ( std::string const& path, File::Status* buf ) [static] (1)
[symbol: _ZN12kyotocabinet4File6statusERKSsPNS0_6StatusE]
| Change | Effect |
---|
1 | The default argument 0 of 2nd parameter buf has been added. | No effect. |
to the top
Header Files (14)
kccachedb.h
kccommon.h
kccompare.h
kccompress.h
kcdb.h
kcfile.h
kchashdb.h
kclangc.h
kcmap.h
kcpolydb.h
kcprotodb.h
kcthread.h
kctreedb.h
kcutil.h
to the top
Shared Libraries (1)
libkyotocabinet.so.3.2.0
to the top