rpminspect-debuginfo-1.8-1.el8 > 6 6_6 3!y덏%!E/֡a !E/֡D֑ʆ ~gfDQๆܳjjF}??qƜ3%{0( -nmG_r])M8). KƻLW2,D[?]|uN .KSnFuoUh³Y.eVtXI6 H.p**/>]PlLynoFN9DŽj[H.ēǨ(|7 ZΖ 9+j# c39w!k |c`Nn=Utr]Jm eӪ̮КTdیc9vEKvxzyiKlu[s}pY\pҴ{cwE|eªLX!/<Z%@DQJgxGkkئCނQE>6uIq`k岸^2vr8&QD'2%Mpl dFU@9مGO7ӧz]Q_Sw 8Gqp //IRd89aa2e2cb46415b4453ec5eea8cbf41705577fcedd72deaaefd84232509aa22af6ab87552174545fafc18604c4a0b139dbe03e9W3!y덏%!E/֡a !E/֡8hMQg-kNp>BA)MH-^V,zez A4@ٴ&wӒE~gF]. Qȡ!\%7%^ߊLGLE¹)R>귕+4@7+嶷BA6]}#/3tyC8+uy\ ,e{AJVRy#}OѻXDHVZ/uqv[*&'K_H3lܭyaR8/!S,_uփ!h.& 60!:s6Ռ827=4)6b1+p6Ѯ*=JhBVܵ%~}V`χezv#Q :a ).Ap 1/0rN|m$q<3To2/nYȪ3fXgM_[? }*RK8 Hb+#`ctRE}p@4?$d ! J(,;J{      $  L    d    8(8 9L : G H I@ XLYX\ؘ ] ^rbdTeYf\l^tx u۠ vw( xP yx|݀ݪ Crpminspect-debuginfo1.81.el8Debug information for package rpminspectThis package provides debug information for package rpminspect. Debug information is useful when developing applications that use this package or when debugging this package.a|buildhw-x86-16.iad2.fedoraproject.orgFedora ProjectFedora ProjectGPLv3+ and LGPLv2+ and ASL 2.0 and MIT and CC-BYFedora ProjectDevelopment/Debughttps://github.com/rpminspect/rpminspectlinuxx86_64<FhAAAA큤AA큤a{a|a|a|a|a{a{a{a{a{8e16fd0ffbe289a4aaa0297d828904c6fefc7d55e2aad5da2e64548ed7102dad4b04333d1259e84f22b4225be794cba9fea618be272ef0957be5390b88d17046../../../.build-id/67/343f521d583a7c6559452f9d2dcae9d143979b../../../../../usr/lib/debug/usr/bin/rpminspect-1.8-1.el8.x86_64.debugrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrpminspect-1.8-1.el8.src.rpmdebuginfo(build-id)rpminspect-debuginforpminspect-debuginfo(x86-64)    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3aW@a@a0`@`\{@`7@`7@`U_@_@_@_@_[fDavid Cantrell - 1.8-1David Cantrell - 1.7-1David Cantrell - 1.6-1David Cantrell - 1.5-1David Cantrell - 1.4-1David Cantrell - 1.3.1-1David Cantrell - 1.3-2Fedora Release Engineering David Cantrell - 1.2-1David Cantrell - 1.2-1David Cantrell - 1.2-1David Cantrell - 1.2-1David Cantrell - 1.1-1- Upgrade to rpminspect-1.8- Upgrade to rpminspect-1.7- Upgrade to rpminspect-1.6- Begin work on version 1.5 - Use llabs() instead of labs() in the filesize inspection - Improve has invalid execstack flags reporting - Use long unsigned int to report size changes in patches - Fix some errors in the changedfiles inspection - Update the changedfiles test cases - Check DT_SONAME in is_elf_shared_library() - Skip debuginfo and debugsource files in abidiff - Make sure abidiff test cases add a DT_SONAME to the test lib - Report INFO level for patches findings by default - Python black fixes in test/test_abidiff.py - Update the test/test_patches.py cases for patches changes - Generate regular changelog in utils/srpm.h - Skip branches without targets in submit-koji-builds.sh - Fedora and CentOS systems in ci need diffstat - opensuse-leap CI job requires diffstat - Fix the Debian CI jobs in GitHub Actions - Fix and enable the Ubuntu extra-ci job in GitHub Actions - Use pip instead of pip3 for the Ubuntu command - Use apt-get -y install in - Enable the opensuse-tumbleweed GHA job again - Make sure the Gentoo GHA job has diffstat - Get the Arch Linux GHA job working again - Use ubuntu:latest for the ubuntu GHA image - Simplify the utils/determine-os.sh script - Update license table in README.md - Allow any number of builds specified for fetch only mode - Handle old or broken versions of libmagic in changedfiles - Update GitHub Action status badges in README.md - Fix $(OS) check in the Makefile - Fix the ubuntu GitHub Actions extra-ci job - Make sure the centos8 job has git available before cloning - Change strappend() to work as a variadic function - Use json_tokener_parse_ex() to get better error reporting - Fix reading of the javabytecode block in the config file - Catch missing/losing -fPIC correctly on .a ELF objects (#352) - Refactor elf_archive_tests() and its helper functions - Followup fix for find_no_pic, find_pic, and find_all - Install cpp-coveralls using pacman on Arch Linux - Install cpp-coveralls using pip on Arch Linux - Install cpp-coveralls in pre.sh on Arch Linux - Install required Python modules in pre.sh on Arch Linux - Do not upgrade pip on Arch Linux, go back to using pip.txt - Drop DEBUG_PRINT from source generated by pic_bits.sh - Do not run apt-get update as a second time on Debians systems - The lost PIC tests need to invoke gcc with -fno-PIC - Update the OpenSUSE Tumbleweed files, but disable it anyway - Define inspection_ignores in struct rpminspect - Clean up the config file section reading code - Add add_ignore() to init.c - Fix fetch only mode download directory - Stub out libcurl download progress callback function - Perform symbolic owner and group matching in ownership (#364) - Restrict download_progress() to systems with CURLOPT_XFERINFOFUNCTION - Read per-inspection ignore lists from the config file. - Add commented out per-inspection ignore blocks - Implement per-inspection path ignore support (#351) - Report annocheck failures correctly in librpminspect. - Note all regular expression settings use regex(7) syntax - Allow size_threshold: info in the config file (#261) - Check ignore list in files for path prefixes to ignore (#360) - Support a list of expected empty RPMs in the config file (#355) - Call mparse_reset() before mparse_readfd() - Do not crash with the -c option specifies a non-existent file - Update TODO list - Make sure brp-compress is disabled in test_manpage.py - Require/Recommend /usr/bin/annocheck - Note size_threshold can be the keyword info - Ensure ctxt->lastError.message is not NULL before strdup (#382) - Handle corrupt compressed files in changedfiles (#382) - Disable debugging output for the ignore lists in init.c - Drop debugging output in the xml inspection - Remove what working directories we can - Correctly find icons for desktop files in subpackages (#367) - Followup to the Icon= check in the desktop inspection (#367) - BuildRequires libmandoc-devel >= 1.14.5 - Manually install mandoc on centos7 for now- Start work on the 1.4 release - Trim git commit summary prefix from changelog lines - Report the program version number in the results (#309) - Handle compressed but otherwise empty man pages (#308) - Flake8 fixes for test_manpage.py - s/self.rpm/self.after_rpm/ in two test_manpage.py tests - Disable broken ELF heurisitic and size limit in libclamav - Modify dump_cfg() to write valid YAML to stdout (#306) - Migrate more code off hsearch and to uthash - Replace hsearch() with uthash in the kmod inspection - Update TEST_METADATA status in TODO and MISSING - Restrict style checks to specific directories - Replace hsearch() with uthash in the abidiff inspection - Change tsearch/twalk use to uthash - Correct misuse of entry with hentry variables (#321) - Normalize copyright boilerplates in source files - Use hentry->key over hentry->value in pathmigration - Adjust lib/meson.build for Fedora rawhide - Drop gate.yml and begin non-x86_64 arches in ci.yml - Add armv7, aarch64, and s390x to the other_arches job - Change init.c error reporting over to err/warn functions - Modify file triggers and matrix use in ci.yml - Split 32-bit osdeps out to post.sh scripts in osdeps/ - Split style.yml in to shellcheck.yml and python.yml - Rewrite extra-ci.yml to use the matrix strategy method for GHA - Move the emulated CI jobs to extra-ci.yml - s/pkg/pki/ for the centos jobs - Debian and Ubuntu fixes for CI - Python pip on Debian is called pip - Try to fix just debian:stable - Enable debian:testing in extra-ci.yml - Enable centos8 in extra-ci.yml again - Enable centos7 in extra-ci.yml again - Enable opensuse-leap and gentoo in extra-ci.yml again - Run each test script individually on emulated targets - Try a different syntax for the emulated matrix jobs - Install s390 glibc headers on s390x fedora systems - Detect 32-bit and musl presence in test_elf.py - Skip lost -fPIC tests if gcc lacks -m32 support - Add stretch and buster to the emulated targets list - Drop Debian buster from the emulated targets - Install gcc-multilib only on Debian x86_64 and s390x systems - libc-dev:i386 -> libc6-dev:i386 - Disable Debian targets in extra-ci temporarily - s/AUR/git/g in osdeps/arch/post.sh - In read_cfgfile(), keep track of block depth correctly (#329) - A few more yaml parsing fixes for block vs group - Recommend or Require libabigail >= 1.8.2 - Finish normalizing all the error reporting statements - Advertise of rpminspect-report in the contrib README. - Report libclamav version and CVD versions (#258) - Ensure first argument of warn(3) is a format string. - Enable werror=true and warning_level=3 in default_options - Update the translation template file - Get rid of invalid free() in get_product_release() - Add inspection_id() to librpminspect - Update the po/rpminspect.pot template - Improve mkannounce.sh to handle stable and devel releases- Remove duplicate elf_end() call in init_elf_data() (#303) - Update translation template- Small change to the way Koji builds are submitted - Move the master branch to version 1.3 - Drop DEBUG_PRINT in process_table() - Add doc/git.md to explain source control conventions - Change Suggests to Recommends in the spec file - Add kmidiff and politics to the inspections section of generic.yaml - Update TODO list - Use warn() for non-fatal errors in mkdirp() - Require libabigail >= 1.8 in rpminspect.spec.in - Enable multiple --headers-dir1 and --headers-dir2 args in abidiff - Swap out some more fprintf()/fflush() reporting with warn() - #include in peers.c and rmtree.c - On fedora-rawhide CI jobs, install gcc-c++ and gcc-plugin-devel - Disable fedora-rawhide GitHub Action for now - Correctly handle the -w option on rpminspect(1) (#256) - Drop the relative path handling for the -w option - Build and install rc from source on opensuse-leap - Update doc/git.md on how to track upstream - Add .github/ and osdeps/ directories to extra-ci.yml - Build and install rc from source on opensuse-tumbleweed - Adjust curl(1) command line used for rc in opensuse CI jobs - Trying to figure out why the opensuse jobs produce curl errors - Another slight change to post.sh for the opensuse-leap CI job - s/PowerTools/powertools/g in the centos8 PKG_CMD definition - The output of html2text on opensuse systems is different - Rename HEADER_MAN to HEADER_MANPAGE (#264) - Add inspection_header_to_desc() to librpminspect (#264) - Add xunit output format support (#264) - Support the new output function call syntax (#264) - Move init_elf_data() to readelf.c, move data to struct rpminspect - Update inspect_elf.c unit tests for librpminspect changes - Remove check_ipv6() from inspect_elf.c - Create the badfuncs inspection - Update po/ translation files. - Add badfuncs test cases - Forgot to commit test_badfuncs.py. - Fix flake8 and black errors with test_badfuncs.py - Skip debug packages in filesize, display changes correctly - Fix spurious execstack failure - Fix YAML config file reading for BLOCK_INSPECTIONS - Expand dump_config() to cover all config file settings - Minor spelling fixes in strfuncs.c and making code explicit - Simplify list_to_string() so it handles 1-elements lists right - Add abspath() to canonicalize path strings - In the doc inspection, only show diff(1) output for text files (#254) - Add strxmlescape() to strfuncs.c in librpminspect (#264) - Output the system-out xunit portion as CDATA (#264) - Slightly change how strxmlescape() works - Add the runpath inspection to librpminspect - Rename test/data/lto.c to test/data/mathlib.c - Handle the empty string case in abspath() - Expand dump_cfg() to show runpath settings - Fix block handling problems in the YAML config reader - Note single builds cannot be rebases in is_rebase() - Hook up the driver for the runpath inspection - Install patchelf for tests on fedora and centos - Update TODO and README.md files - Pass -D to rpminspect in the test suite - Add integration tests for the runpath inspection - Python flake8 and black fixes in test_runpath.py - Fixes for GitHub Actions on Debian and Ubuntu - Disable Rust support in pip modules, more extra-ci fixes - Update pip and setuptools on debian and ubuntu CI jobs - Make sure pip is updated on debian, centos7, and centos8 - Fixes for extra-ci on arch, centos7, centos8, and debian - Adjust docker image names for opensuse and arch - Add Gentoo Linux to the Extra CI set - extra-ci.yml typo fix for the gentoo job - Use gentoo/stage3 as the container for the gentoo CI job - Disable opensuse-tumbleweed and archlinux CI jobs - Make sure util/determine-os.sh picks up Gentoo Linux - In the runpath inspection, fail if DT_RPATH and DT_RUNPATH exist - Use pip install for PIP_CMD on gentoo - Set PIP_CMD to pip install -user for gentoo - Handle a NULL from list_to_string() in abspath() - Do not match path prefixes in the runpath inspection - Python black fixes for test_runpath.py - Stop doing an emerge --sync on the gentoo CI job - Replace emerge --sync with a manual portage sync - Use emerge-webrsync to update portage on gentoo - Add uthash and move the file matching code to it. - Typo fix in README.md - Fix some memory leaks found by valgrind - Create mkannounce.sh to help make release announcements easier - shellcheck fixes for mkannounce.sh- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- Formatting fixes in Makefile help output - Begin config file restructuring starting with rpminspect-data-generic - Support multiple configuration files. - Docs work in progress. - Only fail the annocheck inspection for RESULT_VERIFY. - Read debuginfo if available when running the 'annocheck' inspection. - Add the '%files' inspection to librpminspect - Add __attribute__((__sentinel__)) to the run_cmd() prototype - Add test suite cases for the '%files' inspection. - Added the 'types' inspection to compare MIME types between builds. - Update TODO file - Update the MISSING file - s/rpminspect.yaml/generic.yaml/ in the Makefile and README - Skip debuginfo and debugsource packages in the 'types' inspection - Add test_types.py to the test suite - Note the 'types' inspection generic.yaml - Modify add_entry() in init.c to skip duplicate entries - Start GitHub Action workflow files for rpminspect. - Install meson in ci-ubuntu.yml - Change 'nls' option in meson_options.txt to a boolean - Install gettext for ci-ubuntu - Add more build dependencies to ci-ubuntu.yml - Drop the 'method' parameter from dependency() lines in meson.build - Split xmlrpc libs to separate dependency() lines in meson.build - More xmlrpc updates for meson.build and lib/meson.build - Try to support systems with xmlrpc-c without the pkgconfig file. - Changes to build on Ubuntu, specifically the GitHub Actions system - Syntax error in ci-ubuntu.yml - Add ci-fedora.yml for GitHub Action CI on Fedora - Fix errors in ci-fedora.yml - Put all of the ci-ubuntu.yml steps in ci-ubuntu.yml - Remove install-libmandoc.sh and ubuntu-pkgs.sh helper scripts. - Install python3-setuptools in ci-ubuntu.yml - Install rpm-build in ci-fedora.yml - Install libxmlrpc-core-c3-dev in ci-ubuntu.yml - Disable ci-ubuntu.yml for now, enable code coverage in ci-fedora.yml - Remove Travis-CI files. - coverage fixes for ci-fedora.yml - Install git in ci-fedora.yml - Enable manual dispatching of the CI on Fedora tests - Remove actionspanel thing for GitHub Actions, drop Coveralls block - Comment the ci-fedora-yaml file - Fix the 'elf' inspection and test_elf.py on Ubuntu - Enable the ci-ubuntu GitHub Action again - Check all return values of getcwd() - Ignore installed Python modules with pip3 in ci-ubuntu.yml - Build 'execstack' test program with -Wl,-z,lazy - Add ci-centos8.yml to enable CI on CentOS 8 as a GitHub Action - s/centos8:latest/centos8/g - Trying 'container: centos:centos8' - Drop 'sudo' from ci-centos8.yml - Rename README to README.md - Enable GitHub Action for CI on CentOS 7 - Drop -I from the pip install line in ci-centos7.yml - Use the 'make instreqs' target for install test suite deps. - Add back 'dnf -y install 'dnf-command(builddep)'' to ci-fedora.yml - Nope, that doesn't do it. Just install make in ci-fedora.yml first - More 'make instreqs' fixes. - s/scripts/utils/g in the Makefile - s/TOPDIR/topdir/g in the Makefile - Install make in ci-centos7.yml - Move REQS and PIP lists out of the Makefile to files in osdep/ - '^$$' -> '^$' - Slightly different sourcing of the osdep/ files - Set OS using := in the Makefile - Make the reqs.txt files in osdep/ contain all deps - linux-headers -> linux-headers-$(uname -r) for Ubuntu - Remove html401-dtds from osdep/centos8/reqs.txt - Use `` instead of $() since this list goes through make(1) - Does $(shell uname -r) work in this case? - More osdep/ work and simplification. - Rename 'osdep' to 'osdeps' - meson patches for opensuse - Move mandoc installation to post.sh in osdep/ubuntu - Add GitHub Action for CI on OpenSUSE - opensuse:latest -> opensuse/leap:latest - Install tar in ci-opensuse.yml - Install gzip in ci-opensuse.yml - More fixes for ci-opensuse.yml - Small fixes to determine-os.sh - ci: Add Python linting jobs - ShellCheck fixes for the regress/ scripts - ci: Add ShellCheck to lint shell scripts - Adjust how the Makefile reports unknown operating system. - Just check $ID in determine-os.sh for opensuse - Use pip for PIP_CMD on opensuse-leap - Update the centos images before doing anything else. - Install curl in opensuse-leap - Get 'rc' from Fedora on opensuse and copy it to /usr/local - Install kernel-default-devel for opensuse CI - Move the 'uses' part of the centos CI jobs to the first step - ShellCheck fixes for the utils/ scripts. - Some flake8 fixes in test/, using yapf - Combine all of the GitHub Actions CI runs in to ci.yml - Manually install rpmfluff on CentOS 7; pip is failing here - Use rpmfluff-0.5.7 explicitly for centos7 - Use rpmfluff-0.5.6 on centos7 - OK, let's try rpmfluff-0.5 for centos7 - Last try, rpmfluff-0.5.4.1 for centos7 - Back to trying to manually install rpmfluff for centos7 - Style the Python code with Black - Add the Black formatting commit to blame revision ignore list - OK, just copy rpmfluff.py in place - Make sure to manually install rpmfluff-0.5.7.1 for centos7 - Don't assume we have a header or even a list of files (#161) - python: flake8: drop * imports - python: flake8: wrap long lines to less than 100 characters - python: flake8: drop unused imports - python: flake8: remove unused local variables - python: flake8: add PEP8 whitespace - python: flake8: mark in-line bash scripts as raw strings - python: rename several duplicate test cases - ci: merge style workflows - Adjust rpminspect.spec.in for file moves and default changes. - Return the reallybadword to the metadata tests - Adjust test_metadata.LosingVendorCompareKojiBuild to expect VERIFY - The shared libmandoc check should not look for a static libmandoc - Update the AUTHORS file - Rename ipv6_blacklist to forbidden_ipv6_functions - Rename stat-whitelist to fileinfo - Rename 'caps_whitelist' to 'caps' and drop the use of 'whitelist' - Rename abi-checking-whitelist/ to abi/ in /usr/share/rpminspect - Rename 'version-whitelist/' to 'rebaseable/' in /usr/share/rpminspect - Rename "political-whitelist/" to "politics/" in /usr/share/rpminspect - Drop unnecessary method re-definitions in base test classes - Use super() rather than explicitly calling the parent class - Call configFile() on object instance rather than using the parent class - Upload coverage report to codecov - Improve the error reporting for test result checking - Convert to AUTHORS.md file, add Makefile target to generate it. - Introduce the 'movedfiles' inspection and a lot of other fixes (#155) - AUTHORS -> AUTHORS.md in rpminspect.spec.in - Add basic tests for the filesize inspection - Multiply the file size difference before dividing - Update README.md - Update README.md (more Markdown changes) - Update POTFILES and rpminspect.pot - chmod 0755 test_filesize.py - tests: optionally check the result message - tests: add further filesize tests for shrinking files - inspect_filesize: drop extra - from the message about file shrinkage - Enable 'permissions' inspect for single build analysis. - Add 24 new test cases to cover the 'permissions' inspection. - chmod 0755 test_permissions.py - Make sure all RESULT_INFO results are set to NOT_WAIVABLE - Fix some specific problems with the 'permissions' inspection. - Pass "-r GENERIC" to rpminspect in the TestCompareKoji class - Add 12 more permissions test cases for setuid file checks - Update TODO list - Update test_symlink.py tests for new waiver_auth values - Add a fedora-rawhide job and renamed 'fedora' to fedora-stable - Update the rpminspect.pot translation template - Relicense librpminspect (lib/ and include/) as LGPL-3.0-or-later - Ignore .tox/ subdirectory - License the rpminspect-data-generic subpackage as CC-BY-4.0 - Add a copy of the Apache 2.0 license for the 5 files in librpminspect - Update the License tag in the spec file and the %license lines - Add debian-testing as a CI workflow; add missing osdeps files. - Update determine-os.sh to handle Fedora stable and rawhide - Drop the use of 'sudo' in ci.yml - sudo required for Ubuntu CI job, install make for debian-testing - See what $ID is set to in determine-os.sh - Workaround a bug in meson 0.55.0 for Fedora CI jobs - Add 'debian' catch to utils/determine-os.sh - Rename 'osdeps/debian-testing/' to 'osdeps/debian/' - Add opensuse-tumbleweed to the CI job list - Add libmagic-dev to osdeps/debian/reqs.txt - Fix memory corruption in init_rpminspect - Add comment clarifying the License tag in the spec file. - If check_results() raises AssertionError, dump the JSON output - Fix test_changelog.py test cases that are failing. - Fix UnbalancedChangeLogEditCompareKoji - Handle rpm versions with x.y.z.w version numbers in test_symlinks.py - Fix mandoc build problems in opensuse-tumbleweed CI job - Install gcovr using pip on opensuse-tumbleweed - Handle systems that lack pkg-config files for libelf and libcap - Add archlinux CI job in GitHub Actions - Forgot --noconfirm on the 'pacman -Syu' line. - Add missing DESC_MOVEDFILES block to inspection_desc() - More minor fixes to the Arch Linux CI job. - Install gcovr with pip for the Arch Linux CI job. - Support building on systems that lack - Add detection for to meson.build - Ensure an int is used for snprintf() in inspect_manpage_path() - WIP: 'abidiff' inspection - Only report permissions change if there is a mode_diff (#181) - Fix -Werror failures in inspect_abidiff.c - Add sl_run_cmd() to librpminspect. - Add get_arches() to librpminspect - WIP: abidiff inspection - Some minor edits to the README.md file - More minor updates to the README.md file - Replace get_arches() with init_arches() - Add test_addedfiles.py to the integration test suite - Expand find_one_peer() to soft match versioned ELF shared libraries - Add the beginnings of the 'abidiff' inspection code. - Report out findings in the abidiff inspection. - Update the test suite to cover rpmfluff 0.6 - libmandoc configure workaround needed on Debian too - shellcheck fixes for the scripts in utils/ - Add abi.c, the code that reads in the ABI compat level files (#144) - Be sure to close the open file before exiting init_fileinfo() - Python formatting cleanups - Add --diff to the Python format checker - Add new setting to abidiff section of the config file - Add -n/--no-rebase command line option to disable rebase detection - Store size_threshold as a long int rather than a char * - Check abidiff(1) results against the ABI compat level definitions (#144) - Add 'apt-get -y install libgcc-s1:i386' to pre.sh for Debian - Add integration test cases for the abidiff inspection (#144) - Add 'dpkg --configure -a' to pre.sh for debian - Install libterm-readline-perl-perl for debian CI - Install libabigail for Fedora and CentOS CI jobs - libgcc-s1:i386 -> lib32gcc-s1 for debian CI - Install libabigail for opensuse-leap, opensuse-tumbleweed, and arch CI - Install libabigail for debian and ubuntu CI - Install libabigail-dev for debian and ubuntu, not libabigail - Install libabigail-tools on opensuse-leap and opensuse-tumbleweed - Install libabigail-git for arch linux CI - Move free_argv_table() to runcmd.c - Install 'abigail-tools' for debian-testing and ubuntu CI - Install libabigail using the Arch User Repo on arch CI - Explain the osdeps/ subdirectory. - No, just clone libabigail from git and build it manually on arch - Add beginning of kmidiff inspection, put ABI functions in abi.c - Read list of possible kernel executable filenames from the config file. - Drop abidiff_ and kmidiff_ from extra_args; add kernel_filenames - Just call the abidiff and kmidiff extra args settings "extra_args" - Define 'kmi_ignore_pattern' in the config file. - Handle builds that lack all debuginfo packages (#186) - Do not assume peer->after_hdr exists (#187) - Store copy of original pointer in strsplit() to free at the end. - Use mmap() and strsplit() in read_file() rather than a getline() loop - Fix memory leaks in abi.c functions - open() failure in readfile() is not fatal, just return NULL - Add utils/gate.sh - Have check_abi() pass back the ABI compat level found - Update descriptions for abidiff and kmidiff inspections - Hook up the kmidiff inspection. - Use read_file() in init_fileinfo() and init_caps() - Use read_file() in validate_desktop_contents() - Use read_file() in disttag_driver() - Adjust how init_fileinfo() and init_caps() iterate over file contents - Fix 'tox -e format' style problems found. - Avoid comparing elf files that are not shared libraries - Support --kmi-whitelist in the kmidiff inspection - Trim worksubdir from paths in reported abidiff and kmidiff commands - Remove the kmi_ignore_pattern setting for the config file. - Create include/queue.h to replace the _COMPAT_QUEUE blocks everywhere - Update AUTHORS.md - Report metadata changes for rebased packages as INFO - Do not fail the specname inspection when given a non-SRPM - For passing upstream inspections, do not report a remedy string. - Do not fail the lostpayload inspections if it only gives INFO messages - Clarify unapproved license message in the license inspection - Use FOPEN_MAX for nopenfd parameter in nftw() calls - Make sure to close open file descriptors from get_elf() calls. - Include 'src' architecture in the rpminspect runs in gate.sh - Make sure kmidiff is listed in the spec file - TODO updates - Update rpminspect.pot and POTFILES for translations 67343f521d583a7c6559452f9d2dcae9d143979b1.8-1.el81.8-1.el8debug.build-id67343f521d583a7c6559452f9d2dcae9d143979b343f521d583a7c6559452f9d2dcae9d143979b.debug.dwzrpminspect-1.8-1.el8.x86_64usrbinrpminspect-1.8-1.el8.x86_64.debug/usr/lib//usr/lib/debug//usr/lib/debug/.build-id//usr/lib/debug/.build-id/67//usr/lib/debug/.dwz//usr/lib/debug/usr//usr/lib/debug/usr/bin/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protectioncpioxz2x86_64-redhat-linux-gnudirectoryELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), BuildID[sha1]=d9a3032be6e4b96f955497f840245877a2e5c601, with debug_info, not strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter \004, for GNU/Linux 3.2.0, BuildID[sha1]=67343f521d583a7c6559452f9d2dcae9d143979b, with debug_info, not strippedPhttps://bugz.fedoraproject.org/rpminspectrpminspect-debugsource(x86-64)1.8-1.el8utf-847d9877e38a919969c17c861fbae9a42931f5e776cf77ec8cd9ee91a5c309bd2?7zXZ !#,Wu] b2u jӫ`(y-$t=-1Rοlbzmiex*d0HYDxKfxY~MQ72qs"Q]IUυ Tx3c' kdw- }ܨ#֩$]ͤ|EuC}+aP'wx8~xb, ,.±.Iaa ~AIxBĉ#7+శq̈́3( dYݍ#6DlAPZF\td[GLL7H.zn#C$|')F^swka,+MzUDE2ޭ|ْ`ttH%z]C7\ .D;޷JU6.H ܙӸH*˶ȻZ? ϲb‰& {rZK^ B<&2UzU VҙO"h9++Şˮ n#02T9-f˅ bR]NKH= ;Dz⛬#B6j+ň8*T?zB\ԩFϏ&ݕkZfoMmTwDT&S F|FӠ% kx@h%R튯+`gZDN53nf/zu:m?Ztgo~EpGyr`vX D–ˁo㶺aH,t%*t}W)z>2fI[^ӶZ>ܲT edDyeEQ+{(f4g;&״-A78X RSyLeRҕ,Ɇ6jj> G!;-kv@; Y3?izxr'JgR7"jlck/lCB,B雥Y]qߘ΍U]#yB 1C'@a 3yĢOq ڑ߹()|NWQj<O':Dp n8,C"huK^18$.1 M*X'T9UPZ.aֲl {ht~1/j/˦|zG0>7bTR#I^Hܓ3"lqT2 8i[Jf,\hg☤+nr[T,db"01xVGa!(9[Ž(R,[A+/n?sdxTἏ9 ;& Z$?<44 /C-],%u$ JS [N~¥ums\WvPЕyM%a%R&mkb!R~rWy7i/ϖ[Moh$%Li/;%(F'ďF f`DV2!+x+JhkvFҾ9B37p 9'"&18 W7D2mԶ{Y1LAnjfvPHsKj01-?trq=A4p$]1Y#Az %SFԇIen Mn5™y.ĸ0W|W#o D]5 x7`PW ;ϓP aypOjm :^5=0 ">z !ZGJq9E@uD \HC[dg̏RL`Fd L- I-!n qH\yCkm;3Dh4kܨPDґ-SѠ`qOuxt-"x"يRK2Q1m SHS^(ov>oy$ў-A[;#;_}xiOcy_A\LrƊe؊3]m,n?D׬[_ۛk3 Fں A6U3U! HmᇴA$y_ksf^(xķ_ЩZ~*?:ʔ8=њ7QkrX~P+j x,>!^mk38wr 1)H!Ge&3:('״E&%B0t4:|3@v!Awrx=ǝի\ۻXYtcv= A\ W`8ON;]FDP>$Em4iشs4Y,f1j" ےFsEթ b|k? |]],#D9H #X8:`ÌqP-uVР'x{!.{oZܵ: Mu٤voI 9K %ԥ[ jf[,8EW;ER&KtSK'$OTL{iUgk ];  u]W ͣvydTR~[XCs3~AYP0!_,(bw`, ?Я#̭FaCs#Ark[>J1AQG:6,ETZ9Ps"͗phlԇ -5d9*|론"e< 1uw? mvQÇ+KrP*ÜݒFGaC?v.J"_'0Od.N5b33#,?/.^_JiD?.5LԲى0 f$<TEq:^Mn 1˝Gl|kBoa %?JD1LKIU@NB$m9JX[ y : vىCv+ LyXw'RxkAu!*+[RFAϊm%@_mHe7LTYx$qrwAmBr ,Ê`q(%vzP(@|j(f!6R8C+z \_AS6<S2~Fn6{%I@e]YP#a-fHzOp# +# _7P#?nnkW@7:eI6HÔ H3g+֬'I4ඝ kc>nmgY c`tLdzdޗ}H7-/N{RXn=2#ayÔSzwl`1C;\5A%"hXqrҪ>/GLVJɪ8݀2/4W X4}n<^oxA RI0ԑ 9ZEUօ6Ger5.+K^Y3lK11$?Mfvt}PȉzE?eOT *tTHGz(UZb~622֢BL6w9}T>G ʚNp*RcSя<-We$ǖvZ'x"S$Qu0mB17ٍ[nOoNj~C d&'O`N@5 d3 c75ފ',b9S]#tf P&?,"‘5sR7}\x_Sύ mPݒ+@dviKoP~;"Lg+K,.4n:jA!F4T4(1HsvFu"Kn-۽n/}?/Vi耜ͨh 8[$1V1.',:QC是8)Xߋع67}ymlaPʀx{.D&fM&\!K,/]['|xmh-VPS'S._vJ^ϋe[97h Ew,]q $Y@M틤N%DzW.Ђg[}TąD̓ )}%YCEz"UbMߘ)uYzGm,)J%T-S'DY7y&m ý::tj48>šqv>E5?S(S]U|9:+SOrCCV{+)C+Lme(y&-i~K }VDh죾Do0N6m~a>5ڻPl?yxYTº@<ʻȊVzmчmΐe Ͷ74+oCv~F!e vSyKV]eB-{8_AO|tgK=/sG&>4Xp]@&\LH y8-[|nRv5xibW? [(؍-,h :B漏 a|MT";vy^ot {\LJΩD J*@K͗$rܦC_tm~VYifr{_EnݥNjN}塚H>j7DD9C8dC''^&f$F'X  04a{ϞDݜC0H̉1X=Vi'Q} OtYïcˉn#x؀ev.ٱՄu LBF;e -3pڬR >Z)bc\F/~֦J_lyawwh{g'Ұ(rH+}4b\F判cnQ&+tV,\7wǷmQOIM4_M;Ϋ\R'F zHg0a|k|SWhƢ ʩwCQ`S  lk{EvxzM >ƻegk!#' 䛷Va#* C!5X_goȹ} 4%F;{#N%Ix5:‚q['l"bu a]6u.W]“"{V45j}щ{\Fb3'ҪL]Ŏ>xemBOfpzkH7<^"DLx|o%Y[j`+^ 4ǞkvMW-Z69mc]mW{= !B(b:ş;V xj^V:e5LԚh0c(nzGnV.4S3Ts@a{mTg`at4)tAQ#:u,٤#eE34EP0sP>_M&i3hVi`J&nhnGiMWgL d<<լ>؇\Ц&12oOInJ Y*'.r/Đ,-wAa7pLyTd>S.Մ^˖c]!xmAl|/lʤ c7Lͣ'^6Ԛ0%v&S47~`haxe0>$D˂S3bγL6_{$+MSHJY^ nFغRXS۲M'k|/o]\2OȕZy8`J%R W阍%0dq/pmE lŠ_Cb%KVOMmZ 3 7_E/oÃJ~uOPw⍯ ezo[q 1V:b֫s82yZ&fd::jd+qeJE]Cy|IDYOO+ݣa9K d|k&!0 3sql_-U\ ep틼cV퍒E )Qİށ~s ?e 4? "L6cx EyLAw=nϭR6~>@Ǩdd X><1ZscpfS>w쳡m̤\KTb$Z4~8|%r9>#!,i0ڊG>1#j-_yVaI]wRdvbI (6a#빔[K{e(2 b;'Vw-abc;w;E5do~FHZ?)`Y!󍏷OkQ Y`#4rq`Ðӭvn }26SDyW%0*jG)yP@|moQ._7`<6 _/(1CnB mo T8_{ mʲ9 3䰰2 /vVkvs̵Zѭo7ew5`mtSġrn3k'.W{8ՂgM-9@D1xdX6TKpo:F/$ qѬ#Kh{Vlj*p4:&;F|UbTFi4cFYa/OI#?K?&жr _4N:yuArb|#xPIȋN f:^,qR}VHM5;}nC3.Uesݑp .@0c#Ǟ>GEok^Mv2"$o1/bBkL{A^9t'7ĽoU]}ah-ʚ"FSjXYb"bL`Z(>% 3̹޿#OHB)U}R-PL7q1hIj"(vM7E'mS+</KEá>:|F%=`Kұ\V1!>QQTғ<K0Ox4Jfl›+k9ǜtw0,-%13zfE NN"#9#> GA96Q =h? )q[ CTtKw*ɷiL}} GEwXWcR뢗=U/w0\F 5h]F' j+V_@0'`o®ecSu#qSloD-̢M)다m_=qBA 3F_dƑ2<[8uadjY0F?͆` ]sS 7IbBm&zN>~0YԗuڠN ,ޔJn҃<=64'gh)9oȅ%S4CKr\m" 4Ր$lm\7wVF=!6]cbi=!Gs9>,(`zy'ʇ(`\ړKFĮMd: aſM6lG'QrǤy5tشBk!r蟲9 !K]FvT&h@뼩bvQۍ|a=RN bgmhjMo\kJeۨ补aE etג5y[a] ;u'pH*ߪ%OܷTf9N ~H@aBth z 24N57 JA'oGyS~ f+G c9Gyqi9C2b藞Z{&i4|yIޤ~h|1]4?G.>Pb碊rgCk^V7,c`.ȣT`s7 A ^:Y@'A-SB$L=9PZR`g-HOа ' {>zMoO"}__4|5N ^wN% G&(҆l4G&*#bԄƺ746sxzi>-dI3< wW1)Yub`>тk],IYJON7Kk?쳔_oc~8ÈWuh[ᒌpQ74c53ԓ GwL\r l&6)&<}<30F6߫8DdUxw<mR+_Lo#=ʖbn%Օ bv:nfiM7^p.x @-(%X8h.Ӹ$PY\|͡ HBPopˏM0Dbf= z) )W] py*%a+L@˭xęT lS?a6hcCIav:6Lr\jByÌDUtً!|1Pq9Ѹ4c>f6լyT-ϛ!bJhEL47;q/^%a4 ,l1\ϻmb͊J=?j)Mql!=o0#~)^HOo7c$&г5 b|?Q/` E@Evæ~qBl8Ǵr`TOa(C5lyQ}܎}dR=ۃ4muЅT׶Zn OC}f< ^9C $G1IQW&X9t KN_`kw81YhB* c2I6 _.PO5WY})8)RwEVIo՞%B[EE٧Nōrv=Mm\ÚSy,AOj3!\5I2w!i)${/u=pvԞAWZQt 傠`QC}K0f}Rd8h!8i:*0f=nEM2QqdbpfUb^^En_zyzyj˞I?'v Rf/by3 G3U5?T1qRjfZ4)vM<԰ bγn^h~a[:A>18:E!s沎0_qCZʛAZlme{Ў#-IKcj=0+{~Ri XK<ي*)]~8VLԓȇ?9VQ9-[0P@#n44qcBDJL1Sk;YaK@qxB)/6[Bq,~!5 S2ן\DMZ5h.GAѨ1,)W'S{0hUX<]L8]Tw{/Ɠ]$J EҚ5\c Vni"Cg~)m:{zQ_3=`VD‡?O|qHbNs 24/jmغAşVF51hC1i@9+hҰ T&IZG'R~ZG൧ dEBwG^ח)áNCL{jmمTE~a :MIS_ha.@C-l^ l?6u@}GLe/l@vTϬN~s.:O(:ʲe򖣊MG6Je!fE~@v,Sd7D`#LnĿ4ԯh< nAioW.iiDp„dDܛtټnɸMET?nccJ7wm*qen[P?~C@fVBo؍Hk^F WTdPp,C.ST9A-_v+2Dܗq!ݗ Y, .U'IBR'$OĜ]CaŽUDpw%~N8jG2 ©u4c@9v6a'Դ`Ԧ{\> >84 YGG nH@~RSf"lCvN@xƍ$ 7dA cbjcbՉGslWjNiB%4 oqv Y@ NLy-“6;n]9zf5sh6Քo?~ ɧbar 3_ w.4J*Ӝk {V 2xDeqT^4EVDw¨zc^1J.ەRoՠ[)q}}1A&_xTSZʘ%[oqdoI H}Τs:IsOq˙W$ձefhy]a., bм^r.33gԂf'&TVǽVF'0Ym@9;{v<W8as;wI8bpR* bfxa:SWmKr %Lj}Nk$e*ax&b4rAWUh6~[ M)xc9+T')v 3Jv8i >| -ŭL{uz3 bOI E覨.d+8)wvJ-KpuUV xںܕQL(sl|O_݄,G}vF26#<(JL! #58uB %2+.^ Y㧭V)h?MnM,S:{5fK y;㨡.`\<5VNi 9z`AɕxlD7i}5Y'l5F 1'RRDagܰKLHFBw+q)+OvT ʮ^2 ,@nl1Ę1yymMyvGe2,F@d3`*BL1QFf}G۟N&G&6UD-U!*ۆQ,pikl"q*ƺnqZ:uAK6 е{~*hƘ C`SJ ֌ӭ&f`#?h%u}&#3]>b8 &NO{$^T.^ Px/?v17f_Pk3i"VY0QtMx[96g\ C9ҥhTYʑGȾBR}9[hpЅ.IvlkŵDc >b"3'.7y/=M ~(<{:4!!m] .#DMIY%*O6Ͳ HC|ڽIG郲v r!`wZ١#RህnRQQ =p;?û_${U. Cat DVZIZ-/j!:[ 4Ѽt8uejjksix.9.QvYxÌ2q{+1*-raSYK{jO1q⢻.VZN(TGʀ- FtJ{UU쵓!N!<\BkkjK\ŭ M K xZH2fryDn lTGIC[شwJ5v3$(«tdbJP} B]pB 'dluWM'~U۲ˉL}mM~l;$/@rW[mSA@oQWNz *MnO7̢]UI2=gHĽC| ܭs3Լ ˜Eb6&.<Np>z.m {;^hR+zGsf8Luo\@(9j(M[#+?K'qֱG}{a'Bޠ*ȬV@ۅ^ifН$+:g5v<>^eh2ţ\9̯[9K5=cbj%Ec"2 a/z|^djEZ&= eFG& W<Ƭ\B/uyU|%k\71 476on1DܡcgE)/C$ j& j`!#8u&3VlpS@v3&y*SIEgM)&-Ov"+Ssw)%)w>$H>}';p\FԁƶriH'cypVڋg7=. G{O9?iӴ&4Dǚ5khP>iW4ZʙW9ӕYl6^br%RB+,It:/ Y'=_Ewg}BbH5PtU선 1}>נbrq/yN^!Ir9"sB,[H'7"znpO8_7+ RwPiż)p73b RAo}TNƳ 72D~u/ң9ED [.㣯E\nJH PV̸B*RWq4rd:޺Rqoy/6<`f2 $ZMlA8cuW^q. ꢂmbDo OMljײ`3+-VټQ qdVn44!"㰫=s1pר~[G2:-ǻfd&'lJ/d'?OZ΀# / %e5'J6&u[@]^z_jSJf=A%ei;PG͒.Ǔ1$YK#l)]% ]})ݖ\e_bZc0϶. AJ ±!& Jj|PEoXX]ItD綡ٶ/e3j衿A~[9BlV^2E(ʲos*bX5c{KzWad}tyUw Hl)vlU(PwXƾDZAǵQ{+{'F$neOK@X;Ry:J,-[H"?5.Ν}N◱$z%%J[Nȯ9`Rl/-%0XhADACE4 ,OZͅgԛY"ҮW)ULO?T3>VC+&`:ƨ.$ Ҕr߀h0}*Qi&U-SK .[vbǰE]|̗/-_}?Y0bkbLMB@1.Iţ4wx95j2)0`hZ_Lo 9 ~RO95@`<˥$ vڦ X/R1hbC٬pZS5~_/Տ6>n8u)[BqV`ƓXIF,J+J?Nx\|6ޥO q,<m6 g9~\>$;%Ј < ߸&*JLN JKgFܲS^N0D %Lzon)MwgU;.R&7dE36fʱf3(W& GH5lE'_@V@y"DsY@'#еTP 0kyn|CN^`*_ב ? Ҳ V}0什cqOX{b_U='&[[>uiFoETP2՜iei>xpT|\8SVaÆ~4<^DKݔOB!i2\ue N?T)Mm P` zPg@IQ:Q 7nwIjy !ƣ.ۢjXj>`yLRE5{҈Ε31|g]`*zX~IpHxOϩ#W*n XȵxĔoANu*_&E%-ǚ%뒧:J{PxM $0SCmْ-p p,DoBHp (s(S+˧GT!'Sx)Z"\ѰlGd>ח"ϳp_e?cJ/1X40% Xd [9FΎ IWbέ'Sm H{༹3u >y3dzbO>9C}n4Duw륋Ј?\| EB+L( ߥ̱t)wҘ$I $gѠi"84TK~03 ֶpFԻISo߉R]`{,qPj[PHVM{&).-@[ -d_r^}`FoqM̳:zhAvShY!C*?};qFܪ^'ҀKK'gcRlo|z瓚2d&>y0Ǒw'@C|8^}c+$! &>mU+k?#Ԟ-D]L|ojEXX+#y>4T14V$Qٖi]1EB#%}'zy{xnͻ QېŬ(?g]YS8s>PiuգJq$6k8Y=von[qjüF6 R=;?E1ob-f0zix1$A>i6mD.@GڤPn`>-[mXwɠ=Jh-Ԕ%j"2/Է"X(k5_2l7x%W)UVA3r% ߨ9:e_H-OQ1}&Ea6,Ǎ"?H Q]\{ 0d"F*ִ7AfD~@+\ < Hf=ݓuC+s;(i$E{׳/6#_2cX\IwZ!Ӛ2J#v#hO\HNp}6>q~'"5-w, >7+c$6iZ񥿼+qcHD# D0ϜdoMOb2?zڬṅ7]ʸbK- W4k,UK~&̴:yFzĚ*< x@׹7쌸W>xu M43/edA[ZX_VshzM߮ X.Y|u3\u= &n+8PlZEwv]YI#U`ۮz~X$sQhr^‘=&hh,(zJ9zMg3R {#̳S0} oǁ{_m 5I>:US}s}zDNC+ox HeF v9Y JI#bb'F ;T{FT`^^f"Kd ZGꯜbTv7["3ܸ`ޜ2#UbP%*!џ=p%^曋! t7@i7#se]yY&u l ̾?#^ȯW>)h=; *_5ejE}>>b>=ql' {h-zss n_r-O;I7)bP QfH# GU]7uգ g=v/E~t ԝEjFJПv3ZF Wȫ0BkQ)2nV"%(1tx7d#XP1l,`#׿S&Ǥn⶿lTidW{8yu/f?8:B_$e:6-3u/HC1r68hQXAo3c,jtؤl$M>tyYU`_*uU((YiBЏ?w*oಽžO鱧e'gf`5qOM껄|QQ,9q f{ Q5^5_5'+ L33bNTY#En_4UR#h1I޿ݸܼKZO.e6*HBM[s)ěuRpTn7QF~"ЙS./La=J!IddDI>IB[5j9f;%>Lx$OХ_!/Om}=mtK.(a3-LTav;L.Y*VdOM*!24F&7}'p.[\BY;cJvrJsaqtU($PfF?^KϨXmf0/7xC\u/CD2+ l #CW'JM^Tϊ*K饳~b|LK Շ4iZs !~$LEXL.tOORyf{&WV(Yܤii{9)+vY [g+ѷ5xOIYd o?M@33k ./`M6p ?9kV< BjwVQVcuZYUtE;W3Rw3 }-yC?jՒs}!ȫ1}N.a>\XjpZ&=Bȵ H&AMȑ4 ZKр`R,²ʘQj\Bnu$t%Cݚj!0Xs[e]Uvni4k˵jb׋wxQ_` (F5\dB3q=U:"IԭڎΝ$ӽ̎FGM(eyƖ {n3._nj0EJx\οYZ"U,9h\C҆QC$:Tgڄ T#-Xʳ[lr6Of&J ˌ gx3&o)y҄F3ldR/b8 jQ9ӬG_W]К$5TA7vn\:5$R5|GAo V]6̩Dc8is TϩEuUc4TT]63Zٍ}?v1❫Uޒ!(ΦB,2 cVuH2v .{&cClzL=S?2~C(KLj|#|xaz%򱽾3f! TQ=ʾГ-FsV&<:{lҔ퍰.:̆f` Fur WdQpcH"3DAkAo EղG* LS8&X1<v󛲊/JId77'Vwmc(ç&=B,sa@#U㳾@HT_=ɜ|vRcm>S59@h?$+R,qoV+mqDW4ǡ:;:[Mi@o'4ƀg b<so_>#Ee;|mIR%_]e&_TG~5H'bO#햽C3"k-|82N~{Y tgԳ;angiV$ R4ۼ=x͋$z4JUHɹ,"Ϗ0AcZx_t`Y#[P0id!YM^²/;k#6Qk8ԄRRxe_тsxQhm{^$Kr5n"#FXYgVo=ICys9n)7LN6Π ހkLYC?2TZ.0mOT2 ?*&vVAA@Qە1ټk;e(D1;jgˍ|akh(%)3G֗r뒢h4q3)\H?Y'`/LYħ1 E9? AyX`4&絲&Xh]b/b3'P:PSa#QN1оd,8̝ǧs6\̗ZKmx-ϟ[C=\.J#V@w7iO`{)7@%9^DFaֽ O$׬rE80ݮ ?*-G=Y.0*# @ݻ^ .Q : r߭`(3 %`[DS;H?SR_DpD{C0{j{FyIg*OIYP#~ԲLyᬰ۳%稜R=1-d;O&F֗a?n#ł|{|Sbuy{t5b$`^SOs8Ώ#Bsg!y1:x-ݧ"BΗw<(+X7h!`\ !/t{ RJ{. so%\^/ն 6N)ܐ^j j(~ߑ9:b "r_:UK %!lZ;" Tm?ϗFj Weςd01fYXu#$_[EP7$D4FB ;[im=zl=7à:7qxkK?IxHFhQky#%#5c|B|ﶽi&yBH\!$"(Ayz'h@I^ S$g徍ݐD{\b63zwB$# mOs/\\;&[7] Xřlitܖ[Jٹ2~pɡ^':wɶ=~{9%Hx"ʻ aSQlqM: Sg)^pد2LZv=Rݼr Exۑ"XZ!H lCRP޲,Puo(QDP2x^m򚶵^5tROl5%X@ 2"w3`mVF;w|'Gg$yq IS৪8N·H:[ n֥ Oz@pB"A b6RevMWpm}9<f-X ݰchM6{n3e"H㒓@]ƣȥ|st+e8&gH 4V뎫CL}A螗z\R59VN4|;sD=5hzA5Nh̒Hàz_YA2Ia:4!dIyj[u#4¬)I1d=w&lNiLxqMn i¥f`^+VһDEEצ_ jmj@]'[痿?W5iRFrMr6kZv!zFWsՐo xPg8~ 0SI_S0 G:ꆾa)U/mdhĥX=R7*Jo ~i"zYEG$qv5V^m5lԇH\%Wgg]VMY, HP.\ExTV5+% evWk~V*+X]'ռߧD{ؘeƶ YZ