rpminspect-2.0-1.el8$>[G("Z'JCcҦ>=h?Xd   D@Dpt+ :Lu{    P a )~ ,  , ( X8 `#9 #:n#GDHIXY\]@^ bd!e&f)l+tDuvw<xy TCrpminspect2.01.el8Build deviation analysis and compliance toolBuild deviation and compliance tool. This program runs a number of tests against one or two builds of source RPM files. The built artifacts are inspected and compared to report changes and validate policy compliance against the defined parameters.fbuildvm-ppc64le-30.iad2.fedoraproject.org\Fedora ProjectFedora ProjectGPL-3.0-or-later AND LGPL-3.0-or-later AND LGPL-2.1-or-later AND Apache-2.0 AND MIT AND AND BSD-1-Clause AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0Fedora ProjectDevelopment/Toolshttps://github.com/rpminspect/rpminspectlinuxppc64leg,hRgӜ^AAA큤A큤f f f f f fҹfҹfҹfҹfҹfҹfҹf fҹfҹf fҹ8a8aab2ec683b5da1a37da2ed0cdfae54d5d6333994f9b29f55e1111dc14b574fa8c0b4571b365b09362c42f4b6478e6c13b5686c5b704dc9ac31b7612a5789b8aa0afaa4963f34ef01d76c6cfc3eb155df3ac53223f6cb604cfa15218e9747ec89faf3d54735635766a8f4733a5de5424a39cb06a8acd2115da239d08d203082ee61831629c88a705316c4c7ae3e5efdf3e3ba7eb0b5f8cd18af66a5ba52fca6428c78bcb8e138f505eb3ad25020f03fea9a09c52f87cf9c713dcee22e36c1d56744a64f09d51de59f7750dff9b79fc2d7532d4abd6ff5ebcc2db02dc91baed10629119702eb1986e3bfdaab2c2d69aec0aa3d9d00d5e381c4ac0c5a11ccc32dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551b379d826115c3344b669b862550664562a060a92e32f237b230429cbf5f3b8131c870234259a01b13a2f3c8ece6bcb952bec6fb316c1016b72a6be2f6cf8abb0751f4abde88f86d8e158f189782d916f561a6fa662956b0ff7f9780a6b515419../../../../usr/bin/rpminspectrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrpminspect-2.0-1.el8.src.rpmrpminspectrpminspect(ppc-64)@@@@@    @libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)librpm.so.8()(64bit)librpminspect(ppc-64)librpminspect.so.0()(64bit)librpmio.so.8()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rtld(GNU_HASH)2.0-1.el83.0.4-14.6.0-14.0-15.2-14.14.3fٝ@eeedkY@d@c%@b@bbb\@bb[@a@aW@a@a@a@a@a0a0`@``@`\{@`\{@`\{@`7@`7@`U_@_@_@_@_[fDavid Cantrell - 2.0-1Pete Walter - 1.12.1-2Stephen Gallagher - 1.11-4David Cantrell - 1.11-3Michal Domonkos - 1.11-2David Cantrell - 1.11-1Orion Poplawski - 1.10-4Frantisek Zatloukal - 1.10-3Fedora Release Engineering - 1.10-2David Cantrell - 1.10-1David Cantrell - 1.9-1David Cantrell - 1.8-4David Cantrell - 1.8-3Fedora Release Engineering - 1.8-2David Cantrell - 1.8-1David Cantrell - 1.7-2David Cantrell - 1.7-1David Cantrell - 1.6-3Sahana Prasad - 1.6-3David Cantrell - 1.6-2David Cantrell - 1.6-1Fedora Release Engineering Björn Esser David Cantrell - 1.5-1David Cantrell - 1.4-2David Cantrell - 1.4-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-2.0- Rebuild for ICU 74- Use rpm_macro(autorelease) for %rpmautorelease dependency- Use xmlSetGenericErrorFunc() rather than initGenericErrorDefaultFunc()- Use RPMTAG_NOT_FOUND macro instead of -1 (for RPM 4.19)- Upgrade to rpminspect-1.11- Rebuild for clamav 1.0.0- Rebuilt for ICU 71.1- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild- Upgrade to rpminspect-1.10- Upgrade to rpminspect-1.9- Rebuild (related #2046952)- Fix invalid free() usage (#2046952)- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild- Upgrade to rpminspect-1.8- Fix missing %changelog entries in the package spec file- Upgrade to rpminspect-1.7- Upgrade to rpminspect-1.6- Rebuilt with OpenSSL 3.0.0- Use %gpgverify in %prep- Upgrade to rpminspect-1.6- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild- Rebuild for versioned symbols in json-c- 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- ExcludeArch %{ix86} and %{arm}- 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- 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 ru2.0-1.el82.0-1.el8 rpminspect.build-idd4882b5094e4bc0cfbb0b5b1853faf354c6f01ecrpminspectAUTHORSAUTHORS.mdCHANGES.mdREADMEREADME.mdREADME.rpminspectTODOrpminspectCOPYINGLICENSErpminspect.morpminspect.1.gz/usr/bin//usr/lib//usr/lib/.build-id//usr/lib/.build-id/d4//usr/share/doc//usr/share/doc/rpminspect//usr/share/licenses//usr/share/licenses/rpminspect//usr/share/locale/ru_RU/LC_MESSAGES//usr/share/man/man1/-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 -mcpu=power8 -mtune=power8 -funwind-tables -fstack-clash-protectiondrpmxz2ppc64le-redhat-linux-gnuELF 64-bit LSB shared object, 64-bit PowerPC or cisco 7500, version 1 (SYSV), dynamically linked, interpreter /lib64/ld64.so.2, for GNU/Linux 3.10.0, BuildID[sha1]=d4882b5094e4bc0cfbb0b5b1853faf354c6f01ec, strippeddirectoryASCII textUTF-8 Unicode textC source, ASCII texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)RRRRRR https://bugz.fedoraproject.org/rpminspectutf-824367dfbf93c315f4347ef2fe8a59301199437f78f3af2ea3d80762e3c8ab713?07zXZ !#,CaU]"k%rW_Pf&v_ Ъ1]LavhP>d )ĶA:XCx4mH0KZ2_~ NK)S/V GgQWZ /hX\}{ꎆ>Gdy!%L?ҬU"p] A+͏>  38%^h:ɦ =h 6 Q5t;E&3\WE\/EMoowml4W$W9E3%V]v%,zP^c=;YУwd۫!G+кCϗ#zf*[V.@>|WM3zKSH6Pxs):5Vkv`{grL_yZ@.2d'FYFTHbʍQRAqUi '[4/aU{K>Z󱒁x !x%,ݫq#JWfP?y(!Z·-z.ƳM#`H+Iw wEjg܍2L ?ZqPPnCIKOI:AЏ, @Θl CJ/JaqiycMrg-dp6޽7 E&Uaݦ֎ Y_;0Q@[`%3<&DPji(E<+c18wFsF_gWZXUSLge}+LF3DvmHOxɘC,H߳Zؚz `έYvfƝQu^FH,W07qjĂW/c7r_WyLow0!Ky#f%@gmf^b` `s5|4fC !^{7$a,EHV Jk!02A J ud@#VHAWK\D~ϻ|v‚sT8[@Zlie& I4/.LYxFáovF%CAayvwi~T c8$UD.;& ~販m0V%Vrkw7at&.I? Yt(k9ntRZsܪ;c޽mmF`6 LJ#\^WQBwbX'(j"˘2ZӕХݸbK*[1D8΋/TCZv.m$*a))|{l8j8'h^hi)#-k}?F+ \fPcPTDؤG k4G F7¹?}8g@^WIGcn9K7+ iW~/A`b822[5T?F #,b >#trVK% ŶvτkT9<)vCb;֡`9 7hܙ2XLkp w.F 9MkV$7u N2QWSL&mo( )G10&2]n't0 hXGRB߭\^X(DRb5Y]kƆi9]֛O{#Ӊ@NSowV]Xo֐,׎{ vM1dS/LIC+.gF[;mayUmjm皡/R?Z $og &v`] F9Od-:nRԕc0Xt9yqujOfPp\X$%i jwc o"6ۜ`T4\|}(WҦ2*@ݴq^MH.AKe$1V~R͏9}{Co@ujmkN@L]OKc]c r#gz~QE#rT!7O~g WsG d%#YV/L՜Q[>kw&`Bӯvg~H͙zZ<@ߛ?2 [O? C**b0)Ofâ^#_ 9͸ϣܷԶԦ2o*6 ?t2 tqnb⩌S6Of<Ήgc/VNo"FϔLhaBvY"ۻNoS(~x8O*y?uTR5ǡaDe#n*AgpC'!.t{-U' d"ISbD_Idsved̓)_,|ŏ- ?kΚ$bTH3S0\*1wg4/m!j#k(B lYWa|_ꖧp'ƍb(#͔ТP{8 ,F'$lѽV!^X8W$ xK8Q q=7V}{v 3}qB+8nw`OvAl{ՙYGvKhn1T@i7A&WX`Tې Rc3 \G 8MaP,1H<$:hLjiV `V f[VN$m-}%vKuf79F_\1vBj-kՂſvu @`6Й] +[Jo!qL2po m8es("ߙcѬm~CXqPBMESErg+ziSaаVIqo+g f뜱Aa[Y֧⪉ܐpy|Bi2 䕋{c.K=m%3āDiEŸ#л_72UiS 9%Y?j.H"eF>S6RIa[ŁLPေ@.GRo:WG&I[.ExGI-U9(|d&fޚ0Ȯ+ ^dXa*ŲΒy٥=I =ѦwCgJUҁ]s3\P̘(yN59uܧ P:wBͨXlV1 $Ĭ.y^1I1R-U7ّ;#~ݵQj62҆F k;#XPJ'ထ?μ-T#C<$%-O}XD<Q`lo]2hKY,o3֓.ͪj6hPm 9Ԥ4vQ/(6Up-~^C{ӊ&+8E#3衧ktͥ6%(,ٞMm0embH!,)<ߥ },faWs!q|cw_;u=%W91rjɄ.xL'-:*1idOt{PKFSb4Yvًm~EX$}5#nLd҄.- -{.UTN5pF!ϫ/ ѾC[*i; I=9.|V{q;auYoCkh/+و8ϙZ$S<<[.sb<( ЉEУ w=;8hY HR6cw3F\ÿ>򌳪$4]: ;C(@.,FczG{Oj&$$vd#v(il(^FN/ٰo4$1>>ѩGW I&Ojk( Z$g֫9'Gc)i?wT1 jW&U'@[ͽ[*QK34[qCGbBli:L`zZ .2i's'@Ա,G,h΍g'f~M<$ag~b-^:K2ҵ/88ƝS+@;{J׉B@]EIee$ I:.&@ Lay3nyq؄o-QV ܘj5AX˯ G5^V,PxeM~c|\vXzkYHY'?'=Zrɸd M ۹b@ya]+OAl^vQC0/~*vKYAd8g.x;?ERΕ|+C)!SYyf>Y-*L; qŷqjhJ,YWLRLP& dWEcF*ц˼hiVSia#.$,jhZAx%e=!dIjԧѳx O&r[8!\^q ᷸oGz!sDy'j!(YrN./4uN1/|_hS\N'3SlOBf?l}kIf$֡5~j8hLI79FE ep5$JW*ϳr(Q_`;HS>ˉm$P7J*HiϏk" H)~^`# ! cC?%x+mQ.L{-ÝՎlPN vDm@^6uה>L ? ?ԥo}gWQ}2k)H|b}&t as*smu:E#JA/R[: xD Ӣ/wlн KXwk),$:H վ\acZMlQp^ᲤdΉrgo( M<]>^&_!vՊid3u`'Lh!e`$庾8T4O&/A._ _5MOo@M7"~*%~6ǜw\T%4TE HHƒlh~ #c"ޜlɺ:דw,Nqot($' t,7W7?As`ee]>dRUDg滖/UՈ|uq)kV6Dd!o+z yƥ{C2*G hYWr%׍1ꯁ\&pm'xT`=]zzt~Ps.+n49AX8nr4P2XWN a4v;ywY6pU*HA )Hϸ1*#Ua(ܗIr ÙCzұ1RHD‚W?)$ǿ9?,BdyYOۼloTi'i䡿:|w)Lw3H`bi|}x +9}QPOIRr>D3@z -C!-YA:dSoB\2ϤeYHUt}+J62XE潞2"Ćsߴnr3|.e]2AU/^0h_lҁvstiqL4]'LO@t+t$'P_ݢ?o7 8bw\YehVJpVȵ;?fc8on}tk-eN! _R/͂28pVS16"?8?x֣7?L׌Ĩ Xy3th02U5?Tꡱmet:YS40n2{HuٰOI>`%ߩ׭Up:J^m?)؄wXΖ7 ^1lũ@A ߻UK)]J2C`B@[B>Knd4K oGaKD(OO(:] [9c}j .>Ηdx%S*;VGd|ת̥'!Vp}X#4/O?2q75@)DI[_s6v @ƐaHU'k{ E9G~7ĊZ کOh$$L{A^MnpԚ, &=ߣ R4gw*AȲ5dN߂ |U_Rl)Q=Ɂ#p@Iu(M|4;7+Ɣ:q"Vk'>] &SM^s/uC-2 y0t7[6^@Q['P)0~@#̂Z#c])0vP q8T_ֹǪ-86,E8dZ\~[3z`CN䮯cXL|>l x>~8S 1(\E9en4!j[(<7tm('p`JՒ:rD<*>Ǘ璗 %XVƈ3@XMm^5jJ@?Bu_ tnMTn].E<)|fzE˶=p{Y߱c?E}Hȵ>CV^+qeAEIP׼ZAISfx2/j,楑BރOrA&>bgedEdqd*98ٙrϻ͒5M融~iC."ٙ q\5wƅJmWO@hXʑh 6Yq&ф&w|B2;@,UQ¹4Ďvh_Z".Oq`cHeի \pFI0x8J7]E`Q;T 2'm_Tre &rvoͨ줐nN&q_w읦D7k8#IRfU>sߏ!L{n @@7+ȎeyH`2ږN#!}" L/Lzn7/Un+*PGEŠ{ydW bYwnʟΩ% vRʹm7qD}ݔq5؜Uby2ax'9g+Td\$ر=nwE?ɋb u yVPĀ׋Ǩ6X>v_+9a fwR@fRPVicC;R:V)KüTƼBtX1݅쎤Vw;'#2-qi*0ANNWaXjȅ벢~ЙG3HqHv2 <=Xp.3%G +8*ƥɁJݧ6`-T:԰G3A $4M60ux!~,7%G%]&Nlj#5%Ba*LAm&o3I `ڕ<b^_s,|D;4e΂0K*-՘G΋ՐƤ*a"%@5˞뀱˟qm/;5*9'HCL zh6b_]V{Sn s|nחye>:X`8%TGU\h%-ߢWKݴ 5UwO2rk;)[)!M]-SĠ~(Fxț n6Bxlmž{tz3uh kKy3)]a#"6p'FH?HDy S2F1ǒix~B%P k `?Ok7JэNҙH uT0ȩ~@>lTs<+O̓ڏ\y-{p"FPtTotf9ßsa! ;N"NhӜ^d"&xleW Jp"̠2ۺ6O63Yhッ:*C% A㎴ꆞ\C$lG;.:t!ƥ2B z;NvW%ReKzcC*\wr聮Vz߽yeXsthHL ѶFm|J PjӵKE!} TF_:\]?-{ =jHJ,4Z*S%}u&1=n$Dv.0>["KsmMDͲ(,~<ޭ;)!!ZTؙ]eq$ p~ߤ,v%ۣ&لAc#@VdI~/zW; -#~LPsTW⸎Nܧ;'[dV}nY"Fksbn@)7Hm -i=qȱDvG,ᯟ? Va747 7ㆋcA r3x_ekўI" y;y&Ï!HLhai-/H'ϗ<P2Cxem<bo㒀[eU>} Wz?B#0e|˺4åCxgO+Ve^dG\7*ň[{>~(?ߛ1 UFOPFDEO^P5_g>(=˻hǭ[\qDODG?d ~7^Cg ?rC};MO_kgS: *'P8>`zSeoi ^eV Cky&vL>?C1vNΉ;18 mX"'__dDӟjr-o?h߄6+l}*;@jcY  we#jL\cۢtj%ns d gIuT)MN)|,'%cO꟨"tT=E0؁NiX w~~ ܰ\͛ʟpm0U(?4Yg.VG.ނVH'ut6SU,Ѽ{|)?@#z/KV#Mt`|_]cS*At^ď ?gY}V )RA)RH^譏4ye< 1[A٣&l0Ӕ(*JVj{emwk\HHHۓ/q@,=*/*Kft`6,_EI&y`@ 3b6^N/VwzIR4([^B zP1~`[H|XzhHiijLD3Ѯ!@5?VN¯orz⮭J#z}r g! X bBz3B&mm-)u!MIQe"fhiR>@SMB a?y+ci% 5,{|W0L/Q1UQ-9Se6Z~ izX{"_p^'/RM#{-/H~ǶE8fo!Ct])"gvy^$2f޳T`m *7φ'(`2"ǽm i?O8DOuPs ߼<ٽ?J>R]R&u'2^:`҈ _@-6ibh:HxazfvuC3.[=A tfuXXw,OzȈ/žT)BVh*"(w7t,="^.)x*DÞYUG^a7Jc̈Ң5c#*T{\O ~x_(GYAu !] a,ӇZSƧù&I* at.8(:훛Q vͿB`2]][}H7X,yK8͡Q9w.'mj+6JbkXe6ޛM62WllLZ; C/ZeU] Zb2i>:b;+6bTd(2fCU*g)^d}ls$4NyV+7F'/`*mj2AXmhi{&1R{.T B:V\kGEoKӰ4YJhq`mDU.! X0kgys|K{]XQG4&f*k 9z!1d[+0c0F_g/qr ChZpw)V90dE/LS Xt (ESV*XDEqKA@&DFi0'>b'[3s@DO[=%+'&Mh~5j7NH!M*K)R٥EQ@שs߮KѲ6`Pi#g~X;ǒMUf j+WCkD\k2lmYM'zD)eiebƐ%WNhh G*;=L:~KAӣn%޶;rlNgּʸun!YK^laR׻}4h~ <~P,wMO%V恖xN8AU|.6RB_L5Ak #[Ʒ0*kE8R[(>XYxh@EH-<}v.K] \-?޹?I*5 Tގ#M ǘ˔,_2 ";Ԃ*(چ{=)NȭYz\=k_Az_+8<4~0.\~qb=*$d6%܁m5g, 7,TEE󇑒 m@.* 3O_.<kZ,@2}5r~z*viHՊTh5uۈÇ[|YN7ZRA+r>]+G׏*#k: ÄT J.17QAFG͇]3EPuqZGdb9Zs f5F:+u[g KΧ, iΣۯ=lV5zsbuÈŷ`>Yڦ 2ߕNd2549 ci-hDZv[Oշ_Em/I5wv}bk~r qJ1Yi#ޏkPFpbLyۍyo ip~'tؙ*砌A''Fn,9XNP"vX" Ɓ#Q"f+T"o`cA_aG=ř)ȏ5f:n*TH=޼>ӟ.$)0o}+}Цc5'#[=v@6y U٩07Ekd첔Ih#cuqpy)`fR q>jr܆3 m~OsYzx%[Jd׺lO9H>dUdr9Ah0[JB.\]4MǪ`h:.i-{av ϼln<4l%ow9߰L^3㇍x s}kD8>tV`v6,NRVԤPCPorbQyF| r32!Ic27<ثFD@lI^͆}^w]e*Fv*KxYMa|${{q%bf&sqd@2(njP9# cKn~0׬|l&rM] fwg'/ r"غbq|VF%V?]lox%i n+8TJ7/U Xes Z%8:8Lv]T %&|5GgP s-ߨ[+YÉPWGr[qɪ2M`>ODYh({ɠb3F&JƆ}OiU[ԩWs# R Gw C'z^t'!ށ"{ pw=d-Cs8*q'@ZN("[ |K*n-6jejȯ.œ ­ !<\̗~"G\MCnc&m[.yV֕K+.0#QyAo3owniŗbeóg 9e8E*\o0+%-j{תUq=fj/̐-ԧAnO#=gu/5Xyh=$?P/Dyjk.j?<5..h> `{U d /(a"~LuānjM=LH,JKt|̅o[lzǠWe0<|Gj0 \So:W[fs!Xh&r]CѢi*&m:j"-_84{0~UEӵ?=祇wR6b_OR!2,d7z$`{gWX*q[i)%ϛ f}e )8gP=7;M=S<ja({gn)D#/oFcqV;zY\aqgHs7)⢰]}J"1\Rae9$ռ3I'aN^=H=d{I;t_g-gxkUc.۹$Q\@\\Z c{?iƥnO ìF^n|tnCBCBA|^^?HYR|MGf2!V/`NJcRi-٧?.Ѽ6dN&Rs[6kKL;.L!o'fp}Qv]GљԂ}~{J[X߂T4MT OE-s-?:wpD0K[]h4>7k̈́ Qq!OH&Xfz]9 ҫ /)76ݽ-%q@UaBtrS=*ww 4W0U:/B:iZ9)qitdJ{ЪLU֦,S՜y-ƚwH5>]R=se:G\tyV{ +~"D,4VMNgꔋUd ^`!5mpw~[Tp~trFl M4Te›i/$KA nAT"%|`2dזy½7Q(խ&v/-P@mb#܇B4m ¾8 C( |kJȿq9sx"gτsq V??D@ɡpjxI/0KqQuc`ly@?bfphTUOCνVtȒC ʰ,.Ԟ}E LIq_h"g{ڋ]Јo@w6$Yx1㍺q7}QleSI+OZ'WMY_s\]W9utfL@gQ>)BN\1Yq6SJyGOmbE7 Liy꾓^Xճo/3 1* L[&pЬNYg=Eym)YLKm}>qJTgek&t򺏒J7ԤIQj3ԜxAqkex 7/۪_ ;Uz|/&hC05^l&,:w@`Ԋ| 6ihn&{ KLXlZu{Hdt}v4wuZ njh^1k NH'E;㢨QL~(%?,ɟ^3o~'zu_p֮B)ύL޽=5XjZre5(&}yg‡3+V/!Rayf=~^3Sp~:5r~SeNV LoX̃~O[Nʂw$|J/6RPJC3Eƕ׉jo} #*[{uKhA:7:A 5iiNG&QtS>HfƗ8ou8fMCM5ezӆӛ/$\< {W'9}ʬ_>dF2+ib bj6&T$ S-Ns$Mq$h 0uu<͘VR%O_}}VY[60! Pl@dJ\*vӎ<%)3| hV$=4*9*3KB|eQ"c=I ܩDdU\~48dR8fx=Cѿ[WvzW~g*UIm IaG]3 G˂(/^QPtH$ߨ$bo4)*eU]㖺w?4@\Ԛ}ԩr8p)*%LKfqzi?j pmRlӞ& dA< 8x;CEE0{NOPK7މLX7# ׺h {t8ȝ YmtsMMfG؇;r@tړ^ Q8LL<Qzz#({e] UX58෫w9 ~"l$c%5PdDS`LКᏗ.Ӝ_?w "Ճ~`=R):鶹Y^3Ek#Tqn&wV&-E/ĥŵ?٤h5NsCPZdIAC[`/pӣr:two^QKCQTxxFǾ7O6l]i4ҥ#k,,O$HfgX"=f\06BtT~dtԤv6sDM?egWe"')fz=ZN6KBX {]FibXBۖ~`NiSZByzP>Eیa[ >C(o1Fny VNLtAdkt!oI˚iA\]ȊNϟ[BBQ^ݘ TUܪ# ;&3B]PͰ$_#Qx}!nj8ٝʚqϏo`1/9/>dHBT}@fH*RW7H kTݳF*FN2οeM>/BaʴdnX|C "-hK;;6;7[0A6C75gSnFDFܘE+lV.,w-xv53vM s"vQ_<؍)._["oW*MŽ[N=%KE0T9(S5D wc>êG q 0>NU+sC 7*/z *hޙ] Ee ޿F^rbNWFfĀ8>&$~NJP\wM|mE\?Zxlvo{c|B:LY#dL^6¯Gt[)LF$."uXj32=TyYҦn>DL"a%BPZh wY{k!?VywU؁r a]6vڟ.dY U*bك[|[HBT*w0>E/-0UhJ[E)@z;Z&5>_ ֬mQeL\JuJړȓv?Td>AˡL[v>+HoٷUJƋ87Q=%5ڈc90ѱU)s{AAr#BDH } c2R qM t0I?{[T>zFiLd6W4;1ae̔!9q1$\Uho;+\pZZ/O" ?;jR9Lz{C@F1f77̀`wew&R.$jW%MΛ$ukH0!"W5n`&"3=8W20z WLvGGu#9t܆TdL(k[Mt/!ʒ[?,(%e?l@>r&E/>o^r+I9T؉*=7/`-ۑ<  JY!74F >3A\}y', Ga`a9{uNaDRlU{:ަa\#j5z NI ;$TOiQYrߖ !MH9ϲt鷹V+oإ!/]q3K` p.xHuA b1g~ ?,isq0j™a ͫlI5M3muUc&=[A6O+ŭodTlz@_.~I[bެDkn:8cϚtԞpWXϸ@h4=3b\ 2)r*I %=Rqk^WpQTݸmLn-o.υUHaM %I6H<ÆBcҟ$ &לy 2Ubϭ}/rZ|mHOer. LS)8| ͜?I3'c^E:-O1ynm 2(G_",jvhKgiBߢPxo9/ YΪj4|_a)Ҋ-R0(v+s lOǩ\iEt W9D($Y +QUW闢]|N n@:(#-&Qg<|w_c ^h;N~caܱhouiPk49Dn //5߱׳zu2mAtγ*?rs 1Lݣ)#ڶ YZ