Binary compatibility report for the Raul library between 0.6.0 and 0.7.0 versions on x86
Test Info
Library Name | Raul |
Version #1 | 0.6.0 |
Version #2 | 0.7.0 |
CPU Architecture | x86 |
GCC Version | 4.5 |
Test Results
Total Header Files | 35 |
Total Shared Libraries | 1 |
Total Symbols / Types | 64 / 71 |
Verdict | Incompatible (23.44%) |
---|
Problem Summary
| Severity | Count |
---|
Added Symbols | - | 18 |
Removed Symbols | High | 4 |
Problems with Data Types | High | 1 |
Medium | 0 |
Low | 4 |
Problems with Symbols | High | 0 |
Medium | 0 |
Low | 1 |
Problems with Constants | Low | 0 |
Other Changes | - | 0 |
Added Symbols (18)
Configuration.hpp,
libraul.so.9.0.0
namespace Raul
Configuration::add ( std::string const& name, char letter, std::string const& desc, Atom::Type const type, Atom const& value )
[ symbol: _ZN4Raul13Configuration3addERKSscS2_NS_4Atom4TypeERKS3_ ]
Configuration::option ( std::string const& long_name )
[ symbol: _ZN4Raul13Configuration6optionERKSs ]
Configuration::parse ( int argc, char** argv )
[ symbol: _ZN4Raul13Configuration5parseEiPPc ]
Configuration::print ( std::ostream& os, std::string const mime_type ) const
[ symbol: _ZNK4Raul13Configuration5printERSoSs ]
Configuration::print_usage ( std::string const& program, std::ostream& os )
[ symbol: _ZN4Raul13Configuration11print_usageERKSsRSo ]
log.hpp,
libraul.so.9.0.0
namespace Raul
debug [data]
[ symbol: _ZN4Raul5debugE ]
error [data]
[ symbol: _ZN4Raul5errorE ]
info [data]
[ symbol: _ZN4Raul4infoE ]
LogBuffer::colour ( LogBuffer::Colour c )
[ symbol: _ZN4Raul9LogBuffer6colourENS0_6ColourE ]
LogBuffer::plain ( )
[ symbol: _ZN4Raul9LogBuffer5plainEv ]
warn [data]
[ symbol: _ZN4Raul4warnE ]
Path.hpp,
libraul.so.9.0.0
namespace Raul
Path::is_path ( URI const& uri ) [static]
[ symbol: _ZN4Raul4Path7is_pathERKNS_3URIE ]
Path::Path [in-charge] ( char const* cpath )
[ symbol: _ZN4Raul4PathC1EPKc ]
Path::Path [in-charge] ( std::basic_string<char>const& path )
[ symbol: _ZN4Raul4PathC1ERKSs ]
Path::Path [not-in-charge] ( char const* cpath )
[ symbol: _ZN4Raul4PathC2EPKc ]
Path::Path [not-in-charge] ( std::basic_string<char>const& path )
[ symbol: _ZN4Raul4PathC2ERKSs ]
Path::root ( ) [static]
[ symbol: _ZN4Raul4Path4rootEv ]
Path::set_root ( URI const& uri ) [static]
[ symbol: _ZN4Raul4Path8set_rootERKNS_3URIE ]
to the top
Removed Symbols (4)
Path.hpp,
libraul.so.3.0.0
namespace Raul
Path::prefix [data]
[ symbol: _ZN4Raul4Path6prefixE ]
Path::prefix_len [data]
[ symbol: _ZN4Raul4Path10prefix_lenE ]
Path::root_uri [data]
[ symbol: _ZN4Raul4Path8root_uriE ]
Path::scheme [data]
[ symbol: _ZN4Raul4Path6schemeE ]
to the top
Problems with Data Types, High Severity (1)
Thread.hpp
namespace Raul
[+] class Thread (1)
| Change |
Effect |
1 | Size of this class has been increased from 24 bytes to 44 bytes. | 1) An object of this class can be allocated by the applications and old size will be hardcoded at the compile time. Call of any exported constructor will break the memory of neighbouring objects on the stack or heap. 2) The memory layout and size of subclasses will be changed. |
[+] affected symbols (8)
Thread::_run ( )This method is from 'Thread' class.
Thread::get ( ) [static]Return value (reference) has base type 'Thread'.
Thread::set_scheduling ( int policy, unsigned int priority )This method is from 'Thread' class.
Thread::start ( )This method is from 'Thread' class.
Thread::stop ( )This method is from 'Thread' class.
Thread::Thread [in-charge] ( std::string const& name )This constructor is from 'Thread' class.
Thread::Thread [in-charge] ( pthread_t thread, std::string const& name )This constructor is from 'Thread' class.
Thread::~Thread [in-charge] ( )This method is from 'Thread' class.
to the top
Problems with Data Types, Low Severity (4)
Symbol.hpp
namespace Raul
[+] class Symbol (1)
| Change |
Effect |
1 | Base class std::basic_string<char> has been removed. | Possible incorrect access of applications to the memory occupied by the base classes. |
[+] affected symbols (2)
Symbol::is_valid ( std::basic_string<char>const& path ) [static]This method is from 'Symbol' class.
Symbol::symbolify ( std::basic_string<char>const& str ) [static]This method is from 'Symbol' class.
Thread.hpp
namespace Raul
[+] class Thread (2)
| Change |
Effect |
1 | Field _contexts 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 | Field _context has been removed from this type. | Size of the inclusive type has been changed. |
[+] affected symbols (8)
Thread::_run ( )This method is from 'Thread' class.
Thread::get ( ) [static]Return value (reference) has base type 'Thread'.
Thread::set_scheduling ( int policy, unsigned int priority )This method is from 'Thread' class.
Thread::start ( )This method is from 'Thread' class.
Thread::stop ( )This method is from 'Thread' class.
Thread::Thread [in-charge] ( std::string const& name )This constructor is from 'Thread' class.
Thread::Thread [in-charge] ( pthread_t thread, std::string const& name )This constructor is from 'Thread' class.
Thread::~Thread [in-charge] ( )This method is from 'Thread' class.
URI.hpp
namespace Raul
[+] class URI (1)
| Change |
Effect |
1 | Base class std::basic_string<char> has been removed. | Possible incorrect access of applications to the memory occupied by the base classes. |
[+] affected symbols (13)
Path::base ( ) constThis method is from derived class 'Path'.
Path::is_child_of ( Path const& parent ) constThis method is from derived class 'Path'.
Path::is_parent_of ( Path const& child ) constThis method is from derived class 'Path'.
Path::is_valid ( std::basic_string<char>const& path ) [static]This method is from derived class 'Path'.
Path::nameify ( std::basic_string<char>const& str ) [static]This method is from derived class 'Path'.
Path::pathify ( std::basic_string<char>const& str ) [static]This method is from derived class 'Path'.
Path::prefix [data]This method is from derived class 'Path'.
Path::prefix_len [data]This method is from derived class 'Path'.
Path::replace_invalid_chars ( std::string& str, size_t start, bool replace_slash ) [static]This method is from derived class 'Path'.
Path::root_uri [data]This method is from derived class 'Path'.
Path::scheme [data]This method is from derived class 'Path'.
URI::str ( ) constThis method is from 'URI' class.
URI::substr ( size_t start, size_t end ) constThis method is from 'URI' class.
to the top
Problems with Symbols, Low Severity (1)
Symbol.hpp,
libraul.so.3.0.0
namespace Raul
[+] Symbol::is_valid ( std::basic_string<char>const& path ) [static] (1)
changed to:Symbol::is_valid ( std::basic_string<char>const& symbol ) [static]
| Change | Effect |
---|
1 | 1st parameter path has been renamed to symbol. | Renaming of a parameter may indicate a change in its semantic meaning. |
to the top
Header Files (35)
Array.hpp
Atom.hpp
AtomicInt.hpp
AtomicPtr.hpp
AtomLiblo.hpp
Command.hpp
Deletable.hpp
DoubleBuffer.hpp
EventRingBuffer.hpp
List.hpp
ListImpl.hpp
Maid.hpp
midi_events.h
midi_names.h
MIDISink.hpp
Path.hpp
PathTable.hpp
Process.hpp
Quantizer.hpp
RingBuffer.hpp
Semaphore.hpp
SharedPtr.hpp
Slave.hpp
SMFReader.hpp
SMFWriter.hpp
SRMWQueue.hpp
SRSWQueue.hpp
Symbol.hpp
Table.hpp
TableImpl.hpp
Thread.hpp
TimeSlice.hpp
TimeStamp.hpp
URI.hpp
WeakPtr.hpp
to the top
Shared Libraries (1)
libraul.so.3.0.0
to the top