From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by sourceware.org (Postfix) with ESMTPS id 5120B3858C83 for ; Sun, 25 Sep 2022 07:08:39 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 5120B3858C83 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1664089718; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type; bh=FCc/ZQwTQGKoG/EgBb35MXIEn43RLv+/rMFJA93UY/8=; b=A43sTdFn6wbI3kBOPJjwZQUognpy/T8Gi+9vnendYUIcXfM0peFxCq9ga3bfvEumlupjIL ZcSsyBEKP72tZHNT1u4F3AWRozLwPPzejRdrIHkrTqBQKDevwDDHbO5hMyTzn/CieNoZHh ci0KwFWYoYRU4g796tNDWsJQjX3ZrYY= Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-581-CkTWdaIWOD2zR0sMUU02Hw-1; Sun, 25 Sep 2022 03:08:37 -0400 X-MC-Unique: CkTWdaIWOD2zR0sMUU02Hw-1 Received: by mail-qk1-f200.google.com with SMTP id u20-20020a05620a455400b006ce5151968dso2823488qkp.11 for ; Sun, 25 Sep 2022 00:08:37 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:user-agent:message-id:date:organization:subject:to :from:x-gm-message-state:from:to:cc:subject:date; bh=FCc/ZQwTQGKoG/EgBb35MXIEn43RLv+/rMFJA93UY/8=; b=QTfeXmnMSDYmGcTVDofJR7adMJws/kbKDFGmi/W0H3NrNHm1yFHHe6K1ZSkqScmU8a 24CatkyfL0ydQE/joHoC5D56gBPBtBo/hYMshZEe4UIf48GCipSwnTr+dqT7msvnmKmn z5/GSVglX8cA0QVy6+5eOy+VGJc8hTKno3Xc6VojJIZPaQsTxRv4+fG8G6mL8r4haJlw dveZW/t10+nV90Rk1xwFFF8mha1dIT0XodR4xDhNjp5us5DBMo9TjGSYOcwo1801MNJ/ cE0JX9q2NHu5ZkjIMOW0Q6TOmZb//Np2rlVoYmo1CRrQM7J7VPmoUHxofY790B3vfSrN Pkiw== X-Gm-Message-State: ACrzQf0qAC9scNH88yEJ5hQCbwcQT58thimumFf1CNVx99cM+HjDBCJA pnoVg+af/SY2H7SAV4L3YixlR/6V0yCzP6YBA0GJ7tfdhmy90ApbuHTVZx7NlWDMeJFkrlC6InD cVnv7iU37XUs94R/PZ7SeDaFvBK3zHihEeVZ39SzIHYrxPNK2e2LxhJzu2Vt8sNSuSKwN X-Received: by 2002:a05:622a:315:b0:35c:f6b2:f740 with SMTP id q21-20020a05622a031500b0035cf6b2f740mr13463173qtw.521.1664089716956; Sun, 25 Sep 2022 00:08:36 -0700 (PDT) X-Google-Smtp-Source: AMsMyM5L+gw/4Ay8LIYkoLt40xEWczLyF2LVCVTG2V1IPhp0+hT4idgumKAzBbNqlCbJJZ5a3HSMCA== X-Received: by 2002:a05:622a:315:b0:35c:f6b2:f740 with SMTP id q21-20020a05622a031500b0035cf6b2f740mr13463152qtw.521.1664089716470; Sun, 25 Sep 2022 00:08:36 -0700 (PDT) Received: from localhost ([88.120.130.27]) by smtp.gmail.com with ESMTPSA id x6-20020ac84d46000000b0035a65bb6c1asm8400460qtv.85.2022.09.25.00.08.35 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 25 Sep 2022 00:08:36 -0700 (PDT) Received: by localhost (Postfix, from userid 1000) id 9FC6B581C2F; Sun, 25 Sep 2022 09:08:33 +0200 (CEST) From: Dodji Seketeli To: libabigail@sourceware.org Subject: libabigail 2.1 is out! Organization: Red Hat / France X-Operating-System: Fedora 38 X-URL: http://www.redhat.com Date: Sun, 25 Sep 2022 09:08:33 +0200 Message-ID: <87wn9s2aoe.fsf@redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain X-Spam-Status: No, score=-6.2 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_SHORT,RCVD_IN_DNSWL_LOW,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hello, So, Libabigail 2.1 has been released. You can download it at http://mirrors.kernel.org/sourceware/libabigail/libabigail-2.1.tar.gz. 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 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. With this release, Libabigail now supports the Compact C Type format, (a.k.a CTF[1]) alongside the DWARF debug info format. Another highlight of the release is the support the for Linux kernel symbol namespaces. Of course, this release also contains a lot of bug fixes, as usual. Below is a summary of the significant changes brought to you in this new release: Ben Woodard (7): Fix typo in abipkgdiff manpage Add an option ignore SONAME differences in libraries Add github actions to support workflows abicompat: Add missing space abidiff: Remove redundant code abicompat: Support reading CTF and abixml Bug 28669 - Increment Library version David Cantrell (1): Include in tools/abisym.cc for basename(3) David Seifert (1): Find fts-standalone on musl Dodji Seketeli (90): Fix tarball upload directory Update libabigail web page for 2.0 release Bump to 2.1 version Improve type (de)serialization instability debugging Add --enable-debug-type-canonicalization to configure tests/Makefile.am: Fix warning ir: Avoid canonicalizing types that are not meant to writer: Don't forget to emit types referenced by function types writer: Don't forget when emitting array subrange types writer: Don't forget that a naming typedef is referenced Bug 28364 - libwiretap fails self comparison Add debug info package for wireshark-cli-3.4.9-1.fc36.x86_64.rpm Update licensing information on the web page after 2.0 PR28365 - Assert on empty typedef on webkit2gtk3-jsc-2.32.3-1.fc34.x86_64 Bug 28450 - Fix cloned member function handling in DWARF abidw: Add --abixml-version abg-config.{cc,h}: Misc comment cleanups Bug 28584 - Don't drop global variables that lack DW_AT_external test-utils: Define colors for test status messages test-utils: Define test status reporting functions ctf-reader: Remove useless parameter from fill_ctf_section suppression: Fix has_data_member_inserted_between = {offset_of(), offset_of()} reader: Build array types with their element type "a priori" suppression: Fix compilation warning on el7 Bug 28319 - re-fix of rhbz1951526 - SELF CHECK FAILED for 'gimp-2.10' writer: small compilation error fix symtab-reader: Fix typo in comment symtab-reader: Remove an over-agressive assertion Bug 26646 - unexpected declaration-only types configure: Remove use of obsolete AC_CONFIG_HEADER abilint: add the --show-type-use option abilint --show-type-use: Show results for global decls that have no symbols reader: Fix a compilation warning ir: Remove obsolete comment from enumerator equal operator Bug 26646 - unexpected declaration-only types (part 2) dwarf-reader: Don't propagate canonical type upon aggregate redundancy Bug 28013 - Acknowledge variadic parameter type is not canonicalized comparison: Describe the "generic view" of a diff node comparison: Factorize the code that inserts diff nodes to the graph comparison: Avoid sorting diff nodes with wrong criteria comparison: Fix leaf report summary Bug 29144 - abidiff doesn't report base class re-ordering abicompat: Properly guard inclusion of abg-ctf-reader.h ir, test-read-ctf: Remove uncertainty in sorting anonymous types Add better error messaging to several tests test-read-dwarf: Use abidw rather than using the library abidw, dwarf-reader: Add an option to debug DIE canonicalization dwarf-reader: compare_dies sometimes compares empty formal parms Canonicalize DIEs w/o assuming ODR & handle typedefs transparently dwarf-reader: Fix DWARF string comparison optimization reporter-priv: Passing a string parm by reference Update year in copyright notice ir: Make canonicalization stable wrt typedefs in fn return types test-alt-dwarf: Add missing dwz alt-debug file dwarf-reader: Avoid long comparisons when resolving C++ decl-only classes dwarf-reader: Don't consider top-level types as private Bug 29303 - Cache the result of structural aggregate comparison ir: Add some debugging facilities for the comparison machinery dwarf-reader,ir: Don't canonicalize enums too early & too naively Bug 29302 - Don't edit fn linkage name when not appropriate dwarf-reader: Fix a thinko when building vars Better Handle naming typedefs on anonymous enums dwarf-reader: Support DWARF incomplete class types tests-diff-{filter,pkg,pkg-ctf}: Fix tests broken by the previous commit ir: Make pointers name stable wrt decl-only-ness of pointed-to types ir: Disambiguate sorting of array element types dwarf-reader: Remove redundant qualifiers from qualified types ir: Consider integral types of same kind and size as equivalent writer: Make sorting referenced typedefs types stable in abixml ir: Don't consider different int types of same kind and size as equivalent Update test-read-ctf reference output dwarf-reader: Better handle the absence of a die->parent map Add test-abidiff-exit/ld-2.28-21{0,1}.so to source distribution ir: Don't overdo canonical type propagation control when comparing classes ir: translation_unit::is_empty should work without environment. dwarf-reader: Simplify the canonicalization decision of types added to IR Bug PR29443 - Global variables not emitted to abixml in some cases test-annotate: Don't emit architecture data Fix butchered tests/data/Makefile.am dwarf-reader: Revamp the canonical type DIE propagation algorithm Allow restricting analyzed decls to exported symbols Fix IR comparison result caching and canonical type propagation tracking ir, writer: Go back to canonicalizing typedefs in the IR test-read-ctf: Update test output files after typedef canonicalization comparison: Ensure that fn parms with basic types can't be redundant Better support for golang programs ir: Support cloning data members of unions dwarf-reader: Accept SHT_PROGBITS sections in .dynamic segment ir: Avoid cancelling a "confirmed" propagated canonical type Update ChangeLog for 2.1 release. Frederic Cambus (1): Fix numbering error in the abidiff manual. George Rawlinson (1): Bug 28663 - generate man page for kmidiff Giuliano Procida (22): Tweak clang-format configuration Bug 28191 - Interpret DWARF 5 addrx locations symtab reader: fix up alternative addresses DWARF reader: use size_t for DWARF expression length abidiff: include ABI XML versions when reporting a mismatch abidiff: include ABI XML versions when reporting a mismatch cont. XML writer: remove type_hasher and remaining comment XML writer: drop write_elf_symbols_table variable emitted_syms XML writer: improve slightly emission of top-level declarations XML writer: do not create extra temporary referenced type shared_ptr symtab: refactor ELF symbol value tweaks symtab: fix up 64-bit ARM address which may contain tags test-annotate.cc: ignore whitespace during diff XML writer: unify type emission tracking limit repeated DIE comparisons crc_changed: eliminate copying of shared_ptr values optional: minor improvements Linux symbol CRCs: support 0 and report presence changes add Linux kernel symbol namespace support abidw: fix --stats output for resolved classes and enums abidw: remove always true test in resolve_declaration_only_classes abidw: resolve declaration-only enums the same as classes Guillermo E. Martinez (20): ctf-reader: Use argument by reference reading the context ctf-reader: Make create_read_context return a smart pointer. ctf-reader: Use ABG_ASSERT instead of assert ctf-reader: Fix memory leak reported by valgrind ctf-reader: Fix length in dynamic array definition Add regression tests for ctf reading ctf-reader: Assert on ir::hash_as_canonical_type_or_constant ctf-reader: Add support to undefined forward declaration types tools-utils: `entry_of_file_with_name' returns incorrect result ctf-reader: Fix multiple var-decl in anonymous struct/uninons ctf-reader: Add support to read CTF information from the Linux Kernel ctf-reader: shows incomplete summary changes ctf-reader: CTF debug info for some symbols is not found abipkgdiff: Add support to compare packages with CTF debug format ctf-reader: add support to looking debug information in external path kmidiff: Add CTF support to comparing Kernel trees Add regression tests for abipkgdiff using ctf info ctf-reader: add support to looks for debug information to extract kABI ctf-reader: looks for debug information in out-of-tree modules ctf-reader: Lookup debug info for symbols in a non default archive member Jose E. Marchesi (7): Add support for the CTF debug format to libabigail. ctf: make libabigail::ctf_reader::read_corpus reentrant elf_helpers: new utility function find_strtab_for_symtab_section abg-ctf-reader: use the right string table for CTF data Move dwarf_reader::status facilities to an abigail::elf_reader namespace ctf: ctf_reader::read_corpus now sets a status abidw: add support for CTF Mark Wielaard (4): dwarf-reader: Workaround libdw dwarf_location_expression bug DWARF reader: use size_t for DWARF expression length cont. symtab-reader: Setup aliases before checking ppc64 opd function entries Handle zero sh_entsize in get_soname_of_elf_file Matthias Maennich (8): XML writer: adjust tracking of emitted declarations XML writer: use consistent type pointers for type ids and emission tracking XML writer: use exemplar types for tracking referenced types XML writer: track emitted types by bare pointer XML writer: map type ids by bare pointer XML writer: resolve declaration-only enum definitions abidiff: improve whitespace generation in symbol diff report tests: Update Catch2 library to v2.13.9 Randy MacLeod (1): Improve some grammar Thomas Schwinge (13): Better highlight 'make distcheck-fast' CONTRIBUTING: Move "Coding language and style" section configure: Tune fedabipkgdiff dependencies detection Add '.mailmap' Further update 'make distcheck-fast' configure: Instead of for rpm 4.15+ version, test actual rpm/zstd support abipkgdiff: Respect 'create_abi_file_path' interface abipkgdiff: Use 'convert_path_to_relative' in 'create_abi_file_path' fedabipkgdiff: Enable testing without proper Koji installation Replace use of deprecated Python 'imp' module with 'importlib' fedabipkgdiff: Also accept MIME type 'application/x-redhat-package-manager' for RPM files Replace Python 'import importlib' with 'import importlib.machinery' Handle several variants of Python 'imp', 'importlib' modules Vanessa Sochat (2): Fixing incorrect symbol Adding missing newline to build-container workflow Xiaole He via Libabigail (1): abg-reader: fix comment of function tangmeng (8): Fix trivial typo when printing help information abilint: fix trivial typo when using abilint abicompat: Add prompt message for abnormal operation Fix trivial typo when printing message abilint: Add prompt message for abnormal operation abicompat: Add prompt message for abnormal operation test-abicompat: Make the test output more pleasant Standardize and improve the output of several tests Vannesa Sochat (1): Add Logic to detect file type by extension 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! [1]: CTF introduction: https://lwn.net/Articles/795384/ -- Dodji