From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 88309 invoked by alias); 22 Nov 2017 14:14:00 -0000 Mailing-List: contact libabigail-help@sourceware.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Id: List-Subscribe: Sender: libabigail-owner@sourceware.org Received: (qmail 88298 invoked by uid 89); 22 Nov 2017 14:14:00 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.99.2 on sourceware.org X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.2 required=5.0 tests=AWL,BAYES_20,KB_WAM_FROM_NAME_SINGLEWORD,SPF_PASS autolearn=no version=3.3.2 spammy=comprehensive, artifacts, tarball, koji X-Spam-Status: No, score=-0.2 required=5.0 tests=AWL,BAYES_20,KB_WAM_FROM_NAME_SINGLEWORD,SPF_PASS autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on sourceware.org X-Spam-Level: X-HELO: ms.seketeli.net Received: from seketeli.net (HELO ms.seketeli.net) (94.23.218.202) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 22 Nov 2017 14:13:56 +0000 Received: from localhost (torimasen.com [88.120.68.215]) by ms.seketeli.net (Postfix) with ESMTPSA id A23AF2360054 for ; Wed, 22 Nov 2017 15:13:53 +0100 (CET) Received: by localhost (Postfix, from userid 1000) id 7D8065802E4; Wed, 22 Nov 2017 15:13:52 +0100 (CET) From: Dodji Seketeli To: libabigail@sourceware.org Subject: Libabigail 1.0 is out! Organization: Me, myself and I X-Operating-System: Fedora 28 X-URL: http://www.seketeli.net/~dodji Date: Sun, 01 Jan 2017 00:00:00 -0000 Message-ID: <87ine2e6zk.fsf@seketeli.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-IsSubscribed: yes X-SW-Source: 2017-q4/txt/msg00030.txt.bz2 Hello, Libabigail 1.0 has been released. One particular new feature of this version is the support of comparing the binary interface between the Linux kernel and its modules. This can be done using a new tool named "kmidiff", where KMI stands for "Kernel Module Interface". There is still work to be done to better filter out some kind of reported changes, but we nonetheless consider this release stable enough to label it 1.0. You can download it at http://mirrors.kernel.org/sourceware/libabigail/libabigail-1.0.tar.gz. Please find below the usual comprehensive information about the release. Libabigail is a library which aims at constructing, manipulating, serializing and de-serializing ABI-relevant artifacts. It also comes with a set of associated command line tools to compare the interfaces of ELF binaries resulting from the compilation of C or C++ programs. Typical use cases of libabigail tools include detecting ABI incompatible changes across several releases of shared libraries or, starting with this release, detecting incompatible changes in the interface between a Linux kernel and its modules, for instance. Users can of course write their own tools using the library. The library comes with extensive API documentation available online at https://sourceware.org/libabigail/apidoc. The tools are documented online as well at https://sourceware.org/libabigail/manual/libabigail-tools.html. Below is a summary of the significant changes brought to you in this new release: Ben Woodard: Fix some clang compile problems Fix more clang build warnings Chenxiong Qi: More document for local RPMs comparison Follow moved packages when download Read Koji config via Koji API Warn properly when cannot find peer RPM Fix wrong variable name Bug 20380 - Compare two local RPMs Bug 20087 - Clean cache before or after ABI comparison Dodji Seketeli: Forgot to consider libtest33-v{0,1}.so in test-diff-suppr.cc A suppressed diff node implies suppressing all equivalent nodes too Make bash completion files non-executable Allow pretty printing function decls for internal purposes Setup per-corpus type maps indexed by type names Implement de-duplication for types and decls at DWARF loading time Support naming typedef and use them to speed up type canonicalization Fix pretty representation of array types Introduce on-the-fly type canonicalization Very light speed improvements Add tests/data/test-diff-suppr/test33-report-0.txt to tarball Rename tests/update-test-read-dwarf-output.py Fix aborting when reading .foo symbols from a ppc64 binary Fix template_decl::hash::operator() Don't early-canonicalize function types when reading abixml Naming typedefs of classes are not read properly from abixml make is_anonymous_type work for unions and classes Misc style cleanup Make abg-fwd.h use *_sptr typedefs Handle per translation unit and per corpus types maps [dwarf-reader] Handle per translation-unit type de-duplication Update tests/data/test-read-write/test27.xml Update tests/data/test-diff-pkg/libICE-1.0.6-1.el6.x86_64.rpm--libICE-1.0.9-2.el7.x86_64.rpm-report-0.txt Fix a typo in method name computation Cleanup ODR-based type canonicalization optimization gating logic Fix qualified name caching for some types [dwarf-reader] Don't early canonicalize function types [abixml writer] Fix comparison of pointer to types [abixml writer] Make sure all function types are emitted Update tests/data/test-diff-dwarf-abixml/test0-pr19026-libvtkIOSQL-6.1.so.1.abi Update tests/data/test-read-dwarf/*.abi files Avoid unnecessary updates to type lookup maps Speedup set_member_is_static Misc comments and apidoc fixes Misc style fixes [apidoc] Allow brief description at the top of class description pages Update copyright year on a bunch of files Adjust some reference outputs of the test-read-dwarf test harness Better de-duplicate classes, unions, enums in non-odr contexts Add debug routines to dump locations to a stream Support Linux Kernel binaries Support Linux Kernel ABI whitelist files Remove unused functions from abg-ir.cc Update copyright notice for abg-fwd.h, abg-ir.h and test-abidiff.cc Fix performance regression while analyzing libjvm.so Add missing deep comparison operators for {function, method}_decl_sptr Speed up pretty representing (function) types Handle several virtual member functions having the same vtable offset [dwarf reader] Fix pretty printing static methods from DWARF [dwarf reader] Do not over de-duplicate function *definitions* [dwarf reader] Allow updating and de-duplicating member functions [dwarf reader] properly separate function decls and types in lookup [dwarf reader] Don't abort when trying to canonicalize a non-type [comparison engine] Don't crash when the context is null Support virtual member functions with vtable offset not yet set Fix some include logic in abg-suppression.cc Fix suppression category propagation in diff node graph Add --harmless option to abipkgdiff Fix test-diff-pkg after commit 2dcc606 Make abidw --headers-dir work with the --out-file option Fix help string for --header-dirs Adjust reference output of test-annotate Fix indentation in src/abg-writer.cc Misc style fixes Fix silent failure of tests/runtestfedabipkgdiff.py Add missing new line to an error message of runtestfedabipkgdiff.py Add missing tests input files to distribution files fedabipkgdiff refuses to compare packages with the same release number Fix typo in help string of abipkgdiff Several fixes and enhancements to abigail::workers Add a "make check-valgrind-helgrind-recursive" target Do not ignore valgrind checks returning an error Make abipkgdiff.cc use the abigail::workers interface Display the command that failed the runtestfedabipkgdiff.py test Move test-read-dwarf.cc to abigail::workers Make the helgrind suppressions less specific Silence Helgrind reports about exception stack unwinding More Helgrind suppressions Make Helgrind suppressions less specific to libgcc_s version Fix virtual members sorting to unbreak the build on EL6 Consider file path when sorting virtual member functions Fix data race on worker::queue::priv::bring_workers_down Shut down a helgrind false positive in the "system" libc call Launch fedabipkgdiff tests first Fix some random deadlock while running fedabipkgidiff in tests Fix a race condition in queue::priv::do_bring_workers_down Fix buffer overrun in 'equals' function for arrays Fix array subranges (wrongly) having the same lower bound Ensure build_qualified_type can return non-qualified types Remove useless overloads of is_type Invalidate function and variable ID cache when invoking ::set_symbol Rename fn_parm_diff::get_type_diff into fn_parm_diff::type_diff Don't consider changes to basic types as being redundant Misc cleanups in abg-writer.cc Update the description of what abipkgdiff does Speedup comparison of decl-only classes Speed up access to the definition of a class declaration-only type Avoid building DIE -> parent DIE map when analyzing a C binary Do not forget to erase temporary directories in abipkgdiff Avoid comparing kernel.img file from the grub2 package Fix some typos in abidiff.cc Create a Corpus Group API extension Initial support to lookup types per location Support loading and comparing two kernel trees Avoid loading a translation unit twice from abixml Make abipkgdiff compare two kernel packages Make abidw support the --kmi-whitelist option Introduce the --kmi-whitelist option to abidiff Update the reference output of regression tests after kabidiff work Rename write_corpus_to_native_xml into write_corpus Avoid emitting duplicated decls in abixml Avoid emitting some empty translation units to abixml Fix indentation glitch before the tag in abixml Adjust test reference outputs after changes in abg-writer.cc Initial support of the serialization of the KMI of a Linux Kernel Tree Initial support of de-serializing the KMI of a Linux Kernel Tree Speedup access to unreferenced symbols when loading corpus_group Avoid de-duplicating different C types that have identical name Allow selective resolution of class declaration Speedup DIE representation computing esp function signature in C Do not report about voffset when it's not set in debug info Fix innacurate test condition when reading an enum type from abixml Cache function type name computation results Add --vmlinux{1,2} option to abidw and kmidiff Allow re-using the ELF/DWARF read_context when loading a corpus group Add documentation for the kmidiff tool Allow selective resolution of class declaration Do not report about voffset when it's not set in debug info Filter top cv qualifier changes on function parameter types Support ELF symbol visibility property Symbols with the same zero value are not aliases Fix doc glitch in abidiff.rst Misc style fixes Don't add empty translation unit to corpus Better handle decl-only classes being different from their definition Fix a typo when reporting size change wrt a decl-only class Fix typo in comments speed up class type lookup in a corpus Replace --lkaw with -w and --lkaw-pkg with --wp Add missing space in abipkgdiff error message Use shorter lines in abipkgdiff.cc Fix support of the --wp option of abipkgdiff Support up to two --wp options for abipkgdiff Avoid crashing when the elf file could not be read Fix some make distcheck failures Misc style fixes Finer detection of local changes of var_decl type Avoid adding the same data member twice in the DWARF reader Don't crash on classes that differ in their virtual member fn count 22160 - Annotate state flag unitialized in abidw Add missing newlines to kmidiff's usage strings Renamed offset_offset_map type name into offset_offset_map_type Remove redundant (useless) typedef declaration Use an unordered map for canonical DIE offsets [abixml writer] Store pointers to emitted types rather than type-ids [abixml writer] Use an unordered set when appropriate Initialize naked canonical type Misc style fixes in abg-writer.cc Add missing comment to type declaration Update copyright year to tools/abidiff.cc Allow several kinds of reports to be emitted Initial implementation of a --leaf-changes-only option to abidiff Add a --leaf-changes-only option to abipkgdiff Add --full-impact option to kmidiff Add --impacted-changes option to kmidiff Cleanup a switch-case logic to avoid a GCC 7.2.1 warning Fix a indentation warning from GCC 7.2.1 Handle exceptions when global_config is not yet set in fedabipkgdiff Add a --suppressions option to fedabipkgdiff Remove useless vertical space from src/abg-writer.cc Allow setting options to instances of xml_writer::write_context Wire the --no-show-locs option to abidw Support systems where fts.h can't be used with _FILE_OFFSET_BITS set Bug 20670 - abipkgdiff aborts if $XDG_CACHE_HOME does not exist Bug 20887 - Show relative change of offsets Bug 20927 - Segfault when $HOME is not set Bug 21058 - abipkgdiff wrongly drops non-public types Bug 20476 - Compare virtual member functions when comparing classes Bug 21228 - Handle cloning union member functions Bug 21296 - Reporting diff of const ref against non-const ref aborts Bug 21567 - Fedabipkgdiff matches build distro names too tightly Bug 21627 - Libabigail doesn't consider translation unit compile dir Bug 21629 - equivalent DIEs must be of the same DIE source Bug 21630 - A this pointer DIE can be const Bug 21631 - Forgot a "break" statement in stv_to_elf_symbol_visibility Bug 21153 - abipkgdiff reports undetermined interface subtype changes Bug 21644 - abipkgdiff does not emit diagnostics about comparison errors Bug 21730 - Make abipkgdiff compare Linux Kernel packages as expected Bug 22015 - Failing to return global scope of a DIE in certain cases Bug 22122 - Fail to represent 'const array' Bug 22190 - crash in read_context::get_or_compute_canonical_die Bug 22438 - Emit a clear message when debug info is not found Mark Wielaard: Declare eval_last_constant_dwarf_sub_expr with [u]int64_t not [s]size_t. readdir_r() is deprecated, use readdir(). Fix -Wmisleading-indentation warning in abg-leaf-reporter.cc. Bug 22075 - data_member_diff_comp forgets data members names Ondrej Oprala: Fix a few remarks made by cppcheck abipkgdiff doesn't mention --no-default-suppression in help Check --enable-rpm dependencies more rigorously Properly report missing files for abipkgdiff Fix comparison used instead of an assignment Clean up scripts/* Fix cppcheck error: "Same iterator is used with different containers" cppcheck: mitigate performance warnings Bug 19272 - abipkgdiff doesn't report arch change Bug 18754 - Add the "--no-added-syms" option to abidiff Bug 20970 - Add a --annotate option to abidw Sinny Kumari: Add --self-compare option in fedabipkgdiff Check if return_codes list is empty in fedabipkgdiff Slava Barinov: Fix types in header to meet sources Many thanks to those who contributed to this release with bug reports, comments or code. Happy Hacking and may all significant binary interface changes of your libraries be noticed! -- Dodji