abi-compliance-checker | checking backward API/ABI compatibility | Cryptocurrency library

 by   lvc Perl Version: 2.3 License: LGPL-2.1

kandi X-RAY | abi-compliance-checker Summary

kandi X-RAY | abi-compliance-checker Summary

abi-compliance-checker is a Perl library typically used in Blockchain, Cryptocurrency, Ethereum applications. abi-compliance-checker has no bugs, it has no vulnerabilities, it has a Weak Copyleft License and it has low support. You can download it from GitHub.

The tool analyzes changes in API/ABI (ABI=API+compiler ABI) that may break binary compatibility and/or source compatibility: changes in calling stack, v-table changes, removed symbols, renamed fields, etc. The tool can create and compare ABI dumps for header files and shared objects of a library. The ABI dump for a library can also be created by the ABI Dumper tool (if shared objects include debug-info. The tool is intended for developers of software libraries and Linux maintainers who are interested in ensuring backward compatibility, i.e. allow old applications to run or to be recompiled with newer library versions. The tool is a core of the ABI Tracker and Upstream Tracker projects: The tool is developed by Andrey Ponomarenko.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              abi-compliance-checker has a low active ecosystem.
              It has 546 star(s) with 76 fork(s). There are 38 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 56 open issues and 39 have been closed. On average issues are closed in 94 days. There are 6 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of abi-compliance-checker is 2.3

            kandi-Quality Quality

              abi-compliance-checker has no bugs reported.

            kandi-Security Security

              abi-compliance-checker has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              abi-compliance-checker is licensed under the LGPL-2.1 License. This license is Weak Copyleft.
              Weak Copyleft licenses have some restrictions, but you can use them in commercial projects.

            kandi-Reuse Reuse

              abi-compliance-checker releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of abi-compliance-checker
            Get all kandi verified functions for this library.

            abi-compliance-checker Key Features

            No Key Features are available at this moment for abi-compliance-checker.

            abi-compliance-checker Examples and Code Snippets

            No Code Snippets are available at this moment for abi-compliance-checker.

            Community Discussions

            Trending Discussions on abi-compliance-checker

            QUESTION

            What is the extended option in abi-compliance-checker used for?
            Asked 2017-Nov-29 at 19:24

            abi-compliance-checker is a perl program that can check ABI of libraries on linux (https://lvc.github.io/abi-compliance-checker/)

            The tool has a -extended option, and here is what the manual says about it:

            If your library A is supposed to be used by other library B and you want to control the ABI of B, then you should enable this option. The tool will check for changes in all data types, even if they are not used by any function in the library A. Such data types are not part of the A library ABI, but may be a part of the ABI of the B library. The short scheme is: app C (broken) -> lib B (broken ABI) -> lib A (stable ABI)

            Even after trying checking ABI with and without the option, I still don't really understand the meaning option and how it changes the results I get.

            Here is a snippet of the results I have without the option:

            ...

            ANSWER

            Answered 2017-Aug-15 at 14:25

            By default the tool checks data types that are used (as parameter, return value or field of parameter or return value, etc.) by exported symbols of the analyzed binary. Unused data types are not checked by default. In -extended mode the tool will check all data types including unused.

            In your example I see that the number of checked symbols is different in the extended mode, but it should be the same according to the description of the option. Detection of added/removed _SymbolDefinedInStaticInitOnly* looks like a regression bug in the tool for me.

            For now, the -extended option enables the -headers-only option implicitly, that enables analysis of all inline symbols in headers. I think we should not enable -headers-only option in this case.

            Looks like -extended option doesn't work as expected for now. We need to fix it.

            Source https://stackoverflow.com/questions/45595723

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install abi-compliance-checker

            GCC C++ (3.0 or newer). ABI Dumper (1.1 or newer).
            Perl 5
            GCC C++ (3.0 or newer)
            GNU Binutils
            Ctags
            ABI Dumper (1.1 or newer)
            Linux
            Mac OS X
            Windows

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link