librpminspect-devel-2.0-1.el8> 6 6_ ܉3!y덏%!E/֡f !E/֡iqɁ$1 $HӡReY A+`o!pH&יbqL\&| I'ًeBDJvͰ THL: x[3cABM*\quu/~$?8vTИ8zI >/%]_3VUi6,/FBg580c9f982670d0a0a851e4df7307c3ea0edcfd649b822157343d2b411b657673615971c3c6b46dddecaaafd6bca31d141caa6d96DxvyB׏&(Wd >=@?0d  Y L v   I p-  < T ( 8 #9 #:&#GHPIXY\],^ bdefltu\vwx\y,Clibrpminspect-devel2.01.el8Header files and development libraries for librpminspectThe header files and development library links required to build software using librpminspect.fbuildvm-s390x-07.s390.fedoraproject.orgFedora 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/rpminspectlinuxs390xLSN;s*3X2AK* AA큤A큤fffҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfҹfffҹ8b284031772b1ba2035d9b05b24f2cb9b23e7bd324bcccb5e3fcc57d34aafa48e3b1462195137af34a6927a03fbc46865f4ca3b91e41532392e08b8bad83983e75477bacd8cf26f60984545b56bd8a53d8ce6f3c8547a394867261fecea1a143e188c4cafd74624d1683e9a985a48488a38605431c8e723c4549d47f3afe0fe50669bc165c927cce9e532040bbfd08fc93da1ddbac46ada521f35c8c03b8f427b249f5f94554fe8d22763faf1c33909d583465da266139fcf53de79c058cda2ed21db9348caa25c6dd2a80bbd421295f390f2ce95567b2321496f1cfc21679d20f5cd6a9b6525883ebe2df9222cdb72c81ab43517c9681fc1eb8655ddf604e5939f41fdcd2f07d94a6a53147ce576b81185639cded09e5531685921cf3ea586865ed1d51b63fb02166defa77a3e854e24be7424fe072c296507f853ec7f12b7017bc72a3ae72e57dbde636b8944da9b22b5020cb8131622bd1b00b5401618f744aba584d58a22dcda8eeb5a8e25f7e2f4c92aed02f0e47f38a0e5a2ee01c5a3802f517a7fb6166b105f7f29a674db55dd12f8485327f503847c5bde9387cd015b0a323804e5cc811f16d4fe51285a7eae32501f84cc67f7d9f60a4f656b66171c14bcfd4dcd2e75cbc269065d4e6c0e2c9dd3fe8e078f92cc06e70c2834b22c66a34393ea2dde3e938f33d21a3489cf6cb1f3969ae29835570f18e12e9e6a818e3a994d82e644b03a792a930f574002658412f62407f5fee083f2555c5f23118librpminspect.so.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrpminspect-2.0-1.el8.src.rpmlibrpminspect-devellibrpminspect-devel(s390-64)@    librpminspect(s390-64)librpminspect.so.0()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)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 2.0-1.el82.0-1.el8librpminspectcompatqueue.hconstants.hhelpers.hi18n.hinit.hinspect.houtput.hparallel.hparser.hqueue.hreadelf.hremedy.hrpminspect.hsecrules.htypes.huthash.hlibrpminspect.solibrpminspect-develCOPYING.LIB/usr/include//usr/include/librpminspect//usr/include/librpminspect/compat//usr/lib64//usr/share/licenses//usr/share/licenses/librpminspect-devel/-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 -march=z13 -mtune=z14 -fasynchronous-unwind-tables -fstack-clash-protectioncpioxz2s390x-redhat-linux-gnudirectoryC source, ASCII textC source, ASCII text, with very long linesASCII textRhttps://bugz.fedoraproject.org/rpminspectutf-8b81a6c7ec6bf836a71c5a7cd19a2b56bd7bc41eea09c91fc134a15fd2062d94c?07zXZ !#, ] b2u jӫ`(y0LaΪfln?+XiWE*w|;pHru ;NG9*m\E&(TGlG sv8J0 ?KC%pMp:'})\ص>ph F-ײkYKdFEut;SZY:L&,ꑁKȱxˬQrx4Hs2mG. Xb18q@ j92IabJ6SKO)rA*ɟkyWp&f_]_;yy8gAΈ釞d7pM᢬@ w2fe!/^Ax^cﴝ#gS|:B)ؼ3xM:M r Cͫ]Kl%_!WۖJ?H4a&D@q]V7GA[ʍSvqRdw >vSR2#$<,g=zi*$\R6M!Rmve VX9 V_tFb Rąk;g<V\ :0/l.cQ)L{1|{:4Ux3|nFBL!},"ˬ:"zegC5'jn9 w;)09%{ïtQl^g "]U 6f@9*E?7;#&GM9S6?J8J2O&&)M:vhb[tnq'bTժFa9ρf5Ҧ˄N eca8 Qt󫌀!X?!'HXZ^vK8(56[.s< K`9q8Vg } @.=E*i]9/ǡ>Yo6eaT"!K8$^)e fO>ҹ2jd`d}',IńE'D2"gv)~Voڿn'BTq\ġa󈿙J n!xCt\wKxR!(ۖ atFPٙLؑ ӯCA蹪'3H} Ai%'ծl\ v$G~6 @oB))iTj@ٽ&i/>cl9@Л@%K Z۪͐h?E\WP$/4{]*ss]bgם [bw3uZ\6:f{"vMen'[gGgт[ҮXF{Y?1|3-SLJn:l͸5+9tag:٠KXP J.+KHFIaZ^" yQfߡmR~ALMH?#:WձbMu̜`/>%87ՑDuݕ% j%s^4dǏjbQe69 .ӠWny#(K 1y$4L "}tTQoMD<9bH$CJ:{-}5){Pϟ!Zdk*=H.=#ha p%ew k=m@RŸ*'> 4OF!hgag>~'qEMF]]+3ST$ܵQszu\v<벤KYٿٚL,)K-ZM33:^hOo8 3Y43:UJP**[ QkBV}#``#> QB_W{;nog{GLE-]sqUYuĪ\; hb*5R@C~ޡ.!f(- SHyˇNͨԯQ0{Eq{FdQG2<2;;M&A@-!*%NpaY <#5"l GWPf(3R{uYOޔ qVچܖ~}Nr5_ #P^^P\57K3rHqg;PiI؟ˍL~I/oIԪpy'SqlT5cstqLCrv?2QY_H61P,{`6 xvy1cڕM 3넰|P|xs26wawJk}= HħoÜCmhb I44'b.=?Ԁ 2Y\_w4q%rmI=- RB8OXުW*);hL4WϾLԟ 5j1s5bltaO=w_R $0OVH_y?6:vhs>.gmU2 JE% G/q[ѳYMB1ImQ'XZc,_{()zTHwqRS(^/-?JOhmrUyP]~A6-iۏlVf[cCn=.RƩBkmSI wjSƐM1`^ ]R]`~F q7մX۸/a|,CFq>bǮ" Er'J*-RoҺDO^; %p|wg'}7=%%OAbp[BU8|^O/ԲYMA8S\traB1IxH%hԶ*:5d#,kοWV8g)9u*>^[0}+`WpA:yg\ 8|Q!ۚ2݉k y#rBs>Tm5] 񎋔fu%{AI6tl VBWg3O RΒfKPPێ`$=\Qxc88!l%7Μr5Ҁx)Zv0TmTl֪ᴴD7#^fW d>d'?L誘 wRcrJl~PxrÏjӭQ3hؚF!bo5vG$# ekÈ3jؽ>w?,}>&kDgx새[JNhf@.\ Ԥa5Pfart)䬅qλ=Qvz. x ơ3l),:b=bpW)!95K8B>+&w%ՏeIi D!iUzsُ8i1(d'ԣi97W~緾cG=@} l;.k`8C{e*dJ QۅiYbK!̼i 4, QM0YQW(p3x_zsZ01-\Ɲ4Mkkf.ܒn5/z}+7tlwxޒL{J  Jfkr41FMI5X{VrG@}GVAgh dkJ^̵$}'[XڻF|R7"n !?gIp`5\d!rΐjA#߀4S]BB@(7.Ne,!ƣxkԻ2*I_\pMn ➞vĸQGp_,y.ٮV4Ѭ8ԡV\1.BIS[$>*/Ţݜs(9x 墜_\7qQ(jƁ]CQR41 YJYe\]h)$\|@lKJ&\F%QI4 9 *(I' b>L]tYҩ48/[,, 2E(A!:Yk]NwEV\lq|2}*m obs]u>Ji6[K| ],X!]=1~~8)4f ~Vֈv8URARg" f 5|[`n pSgάMC6]%TCeY^`ʫ1zd7EzkHuބm/SSw;v|?c-2;,oW:GI75f < 7yvx* vY5!P8%&#fnRt䷋0jG^7N73h.dЕY Ü:5f cO:j$: nS lⵅOa}4tyWAn"6A5I rXqna 7dv-+ }8Ji|Dz=aZkѾ]U0;ϣJ\ŧ!ovWMMse.I Agucժ"P cMMfUB=jkb^kl+Zk#ύbx_sWS"uF,(BPū`'GW17Hf珋ga8}t xJ?R2W@ar@Z'B%%G'R%um}QM> r痧LJ< [**$5-tEPP,P% Db%A>%^YNge6[+#J0`n\$rn͢I% \5fy#gdebÐ l}#Q?}5F6<Վ3.F&{z4C&;{9Z Vv͘wAr~BoY쀗,Fx(@ wq:VJt,;bMiݺyn5ε|M} U8By#!/_sKҐS̙o#M~w5Ŧ1g.ax H8.q\:2VhX@19D@DH}(n6]ۊܗM~y8/DqAKSbLd$>V[O?z+r:fŨdY@{wQN*0%PK@ZwYko+fYKxluG~,̣JL:solz2zXاGz_r-ħP^b}!B.N㴯"hT*L~L {8,y `C$ѲN/x܇k nC6snuX^m} [ Mi8 恷:*lp#;ѬuT!/bΠz2RvNJ`Wa S)A#&ɢ%KI[utp4uQ$P0Y>Way9)hÙSF\۝- 70fʳEࣞW󇦮.YԜB? a``+TF=NmH^ Ҥ*ufB*gZNWM]K:@]R?ԥjO7F#]z?ȞW;t"k4z;~b2Z ( *?-\!B҈jsT ) 1H#:GyzlԪ>@OmhLr^Y+TzTԚQ>U̹{*:`oLoЖ=B#1Xt,jG& X}v@:vFIL%+-i8)aZn[9c *] \uE/s4DTTjgh$.*/9^p@gd FQʼn?(!r.9cp.U̔z#dj;[\V]z?(rK<(E UrN]P0K>ok[*'?]2]_>|5z^6ꟴC6\3-T ]Я;,_(DF;nQ-Xc9]ʠ8#3QGl*vWܵ'ゼjK-[4WAX=9ji5Уn,C?do!918L]Y 2rBggp8v`Ϙ0j`EZI4""X֓,#ځ1{Ck 9(2!l<+wV$NrbF/kk0P6 $2!4V`Ms0S7Z5U-_Lݿ -.7urKֳ PW{`v!}@BC1L`0WzMmi I- _z`1T\T2#Oc?\q?c،ۧe;oR`\k-4JC8{NMD*ng:`vPdޯI$J/o VcB 8rzj}}4V$n a 皵I=?k鴥5^S}{r03*z@[rq^E'7ͭAZksv:C[}v7dK֩4ؾ~S!gr3ϿrDW ctU*Ł~tiHAh2H&yDE9_)|I}_<)epgȍ8l{ᡝ1*^ 37z5Fʺ@@tΚme>Dw5;[kښ5J5Wǽo&Xph|k8!E>M+7ubJHO-wß#ށCR'ɯ]صhyGI^DA+Wv5C'i.A~(啋=YiPqTr?Y ΠW &+/k4-H77wr´*µ14>t ƠR ]8  Af0vNf Y@/5ldId GV$ rLtpZ)ɮV۔ޖR¡Olh:)ATHe+4,$qiFxdvF*[h x={3[\F A2Lg.׆-C$O&ڮyn.2 [ZzwYƱBt S+3: Na7Q'/l-$a8-+G>ڛ|[_6po~KFkcHV"CyM]ž?-gO vFksvwZr½2p0-[~2o{8x.^a~+fJZX29ל"pFН !uKLkp%q^CgE H01xE'Z飑m_l;b%i+ۙr%w~p6E72/K*QT^*A[m>2~ Y!fI[.&/pmgyaojU}|.i|{OhH̝Ҿ:=C<SW 1J-֛.9݈Ys.~A%o*!;,ē{fF"W7P 2u{f>ņ k`G`2$݃z2d\8Uep+e1׍ۖh(M= _&ݽ-e5p}J'ٝH-N#9vѫ5ԗUӶ/{1#=iccԅ^F{тr}8nV&Z6?^;QraZS ۋCy),7ty7&jqQOLgpɵwWA"xXxxb~wJ+=0у= bkh%'5kk_v/:+vRXI4Ht .v>w2g% F,/3b0@_|!+.Cąlc1 8XB ٪%u.}5[p,LPgC%7 'L$7"|CGH}-!C5K8\ECC ,zV`Rn 3uq; ~С^Avŝ0.zX$I֞SuHaH)塣{K]Y=9JV-%*۫yrW÷,7]Fi5nZM+ ZDžJA[Š` &DR+'˄,M ;ɩk$joL<'R(9y<2tGal/oЏi4N +GuUܛBWe!J"p/I]'m\lˣ&{N34lغ-* B]KMp Wos$=%Ř@\w7B.X]HS+>DwE1ܧJq֝Yz{K IW.`}J${yڣ 3$HWF(;s{5J:.]3ίc0Bxy"wZ"Y(LAx̂o @η,L _k:\OGW"׮oqpىNOk 07BbI -b! ׅhA$E8.xcꨗiCP^#j՟x!* pǐW=G8r63^Eqw9f%m0lpebF@yܗ k A&+;anVZ?Afq`ZbsVtߔkeNGIab`X}ƛiJfgjٞy=+Uf x_n`KeK-~0WXBt@QRo[!'MN½9r֣.q7Y3TKϊh S g4&0{я{nLvǣ;J[< ''᝖HMnAoLGQ\(J$&$ei='$!c,.Rjn:Z<թTc:^C1x N~dF;\imH4;@n'$Lk2g:<*o"^>nFs~^S.“al+ džؕvq:% Ka΅+Q啾:*gO!yP,䙁1:,+i J}W&pXOnw>|l7޼-Ø↾zOtK%,j^TG vb-r  Mڮ S^b4$%95nIce[P<-w7._$o3:FYɢ+vUˍ~^pE2ƛK;ajhd#ê6b6Q0+ _AlB WxB[4KO0uC ]cIXq$SE_|P(͘{9.ɬ2gk|fEtQi8rEږ޼cһ7s\"Yf0o bfJ ~H,Z-w ^]fz66W_0ယzF - E.GAXB1>H?`Ӂc,w,S\D%uHa_>&=cb3mnfYC9Ɛ:# rգ?D#Zh!ĶwWCu8cΐ[OXf \* U_a3^=?.)IhP &M[pW#~ m2]/]+:0ka $35UښBq߮# "x/׵Y*%ΐ:~em.ܱhV +67`5cgc 8؃p`Zwt&tZv\/ׇd&No#LQo*:RYP2G*{P+ƋGB쮾+m1D98eҚ yc:Vv_m,ìz٧؂oZeTmMCſb82HEj q*ZJ(aXЕQ^/WnY^Ω88H2G!1 ;'~M^--BxĀO0q9T"ItetKxg2cN8ۙ`kaơ*&SNU,w }&oGfM]R_[ ;_HN"0ӃRx\>A1Ĩ1NNӺN I+X+\Y]k]Z@[j'vϒ3 y5^Ƀ ?ݵL+ˇEC7Vw*{ ؖ ȣ0VN5-7#YoKxO]et[cd ;`ϴ'E̒b!~^_3ԅMU`.fN䇿RqY}g(R+`ɈQni) A%۴{H@}.g]97lf8No)~< ~W?Ə~5ItRASPScr,SiP+ ˩6Vѳ};"1B[2-oG~fHa,~PYM^{Y|KKXnY>lD-? 6/7gXI i/8WgtjbEF{h[a;D~|ߧUD dNqX5>*LL!zpٓJoNiI`6'>yHC"FJs +frMTQTesbZE/s\Mʟ{yqgc$A4L2'l,!y\O}{A<ņ c`fIn#[c&CNPId]J Tll?zi|fw#uoSSٟ:6[U)`Tb)|++nkaR,9F )2.R<4߹|oO w] EU*Lg^TYi qM=rol:I[v"ۑK_j\д1JWlb(ưORol' qx]6$G-t$&@%J-nYYC6/+'|;T77IuGܴJ 1[pgurG JO\Q@P1extnۡi"t㍚{$F­Go [swQOz,sƇxnH(=,ƫT*%EIA|MB;< ˙RVY㕯5bk}:ddoWhQnN̆e0hp(u D!Ɣh4'dKF@֒4$a,TaU(w0,NO944jIXJW%{)Ei+ ji"),:7x-F$X+5g֮qUR~x<D ms/x^iryʴdU_~٭mʼn/i?,m xϷm}л pdaR&ڬ'nGv2?RZ§ n[2mbqAtq@{⭢4[@o # !1]39ʠ"`QEq?…_$k\aO]TOŲve_2O=["ED>w?XM.wy:4wNDvG$,hǙjt/saۆ[Y@w)Cu-Y`Lx$MC X y YwÂ1eݵx'bZ9b iw{J1_E\zHp@i ORsEfkJ֊0+<ͣL/pBKn*^%Oh a,!O1WjUc$BRˁEj3?}(=Yq{Z|ɳd4_X% oiӾF5RLj?@x~0rDq"֢T 0K20%%ݎ#NJC{UшWT\ꚝTlь2`R%gZ[a(nVཡF:yd| K KT׼f5b{ƒY&KPr p3κ)mZP"-B׷#.ԂGpEs-F}+RZs?9 4w^: it8!TAy7leVthWO(e.TWWosn}! KkPB5n%onB8Nz^_Lv6 T . /K1Tj;2پ50976@l{/̭x\~ZƒW{Q!ɒڃz[/ T{]Pz\Gضovȓ95זrй󡲑6.hEV%@xL۰i9݁ze.evÏ:EIm`-U'A`@Sld,jm8~T72w;oJE&χw&H9bxD[`:cRqjΓ&mXۭ0 p{ IH%U̽)T.If[iv-GȌ\މhW=7=f1Lra@nPemxGNhښb_Yy(R] KՄrlΩ"]ttM=ig|Vt/|xn-.:uHTms0]!,9xjZLzk <3ZtZU?7Q `u{DK!`Ҥ} .r =*7~ ;3rN]ysGRZN04g N{r(:߻,nՠbF*wc۫@urM?Y^Vri  _CQݲu^ĢV2>&".K.~{'slnco 5CfNjlVx$ .A#4,o Yln~_CAH&LT Ak|B{H`.w1[\{(=Ɓ5;r[%$g96\#m^漯pŹXpj^soׯhГܧ$8&ڀpht<U83b(VkJ򓃡&9| Oz5!Rz-/ҳ@6ԢŅ˥H{GoraBOIC~z=Ն M)@0iNQ|SpyL B)b Z*kZZk54=3Ku`'j-s_6Ǻ1x2.[8ť9bh9DJQѠ$RA祂ɼ kK`~NF8 C%.@Jx7^A<=W_ DHwnCπW( ^3|Mkpp􊐼4tz?xA {Ge%P=2tDs1m)ct ,؏D)BKKXX֓Q\&bQ? h*0 uOEIZ,ʟhD@rC;Xp(s jZAupOX6M\&RD93 ԉQ*Z}NF)xŲ%b4mtx4Cjil΢N2Hq1==rHCCxudJBCl3R职ynd.W,'9ny|-PT0ԌϱKy*wݘ6|OEw%{4;α^PWw$d7yQ/3p pF[4 [hRO Fwb'ŁƓk%,oY~GqLH!hFZ9=Yk]&]&dg* ̴0 +)X3t dYc$UV2*_rW˜s:Q)nG[Eun'wQ3ldzs(&es&Ǧ(rQ:rg̗plTYCPOVku-[R0J֡ѧ_js^[<0~?~|}O(Ku{ #8|. hb$WM,),0)6`"'m!(ir>O)f#4Nbݧc  j/(S*{r+}N Q OЂpmm˞0 M\Q Q's:4S/ݹܕ.HDMN̑f-:B(HD,%zS (t8arHX%xr4o3JVO7%BT-&o '/U+=4f ¨/P2& `s=푍%j|%a-E[  ~:\J4e<DWޙF(3P/hU.kX1x!{0.3MZpKΓor#@\Uc{177-d?; =$o)Iℭbkv W7+nx__P9,x~Yչmw|r9+߹liI}1l4 Ql8VpL29N\LgE][.RM :{Tze0lRCWtr^ě TPI6zb&4fX/Nw`NXL_͡ ]RVA/tXn3荺+X&;QKÕ1CaeY.8#eIKI샍=qʋQ`ʧۜ,ɷZQ>vrjB*tXqy/TMh4ܨQ-kPa!::D,.Z#KuC@*"㋌sgǁ$7:+ceA@Zsvg!(Wp/n-hYJ :Wer9 P,#oj ]n"L`b0M_鋵*C5m#)\7? NOuk͋K -! vwH@u҇'%~Ju+V~w&zy_xQC(?? P/3(U:L]x4Wn%󒢗hWM{C ٶ]ƜYvdi\(OvO?ܚtIK1نRFc}BW8R5,>Jmaib8#-lam^B{aT(y yV\E?BXeIe~u?}*ӈ,ِŤMA|STGC0s'A}\ !czGl.TDc=!Ted)eOi͙<(b]܄|e߼G MqTpMsy@Ԟ!Q23{x>b0_]2ܨ{mZv XoZ|FMϮXº=F ؀j&gj57gy?KQeꦂa/@UT{(%<f s[;2:H}oZym\S4 ]0Ai$4fQ )_A5z뱛dc"=1kXF38ʪ<3d[̡3LZu @xoӾ#UOy}Z'B+?,'Srt(bvffԥX$E H_tx5'OAI*VXV] \l"ZMsJk爯3Wo+d[{Ĩʗ,mAZ8}N4\c"'VnDBY&C _*:떕Ѡ3KT\5Њm@)knrzLR|5{Mu.Yzx2WqXd68>KŔƊ c^XNC ,Íj5exתͲ q~^W!C vH7M|#^ڸqeʯKSjҲ"l\*㠁U>q^mAvInѥm087Wc_AMIO(H~"REI\ &$ ޹O6a\gG~^1.5Ѕb ̗k$kB}8^vf>PտAN EE\(+קly&pI[񨼆Ceٶf| hʆ )˹t }NrouWe}+'&bkX;N^t<0bK, <PENfv j_Q–34Gae搽mwVU[)F4HR==S }Y7Hz1!Fb(/"S)-%$ⱳnrx = F,pUMTx{|k'8l Rg+ejcҤ -Iz41%Z{KKHT1ԘL/To[>T~FgT|%AW7),Ө_IJH87a4C7)?^mdHoi7lRotaat:7<Y,U59 ==( n91)Jgw:8yf^N#9suk;=9zieD%Aq F5V,zw*EjjqN\f3fW|(\ʇ~f8L Y5;u{r)W։xE$vCuNMfSd1 N=s`v1YPڢa4i=ݲ8}qim8 QɣMYv;)ש Wi3>FrMs 1.2-hp1A <ۍPhTiǢ/7_1vP( `*Ǚ"+*4҉u'>chIy|ѲYJ eK(Q\fz\1vxy3!W(0@%gYH|˶L8J[K9oE&PaǏ5x.BU `%'s1asxx3r0?1QƎZb(ԃSL3$4@dzU R{D _ZA/cjB2lHK}%ݒgl "r3j[Vi;t,ҡ&PIalɜ4DtaI0hCc%(#`'0S \ʹ~۝Z%nVo(DF&[ridtz}67VaJE[ \~ q䱁 >> E7bjsM$"JC*6!EJ/nocuʆjKqP}[lqH1 4]Jka0A]iK^onYi Jvya0 JCW @ _e"A.1^Zj3O][~O4mO1֓TFV=+~WJijt`g:_i-sWV< ]7xXqf7׉+ͷ#ݛ&~B<|zV(i fU.GPejA:tlQ@&)R="~@= P>lg3tWڥv17gؔ'Z a$2xrSu#Nؽ~.-Z&A_ɢHS: PBv]V< Ãan -IjIQldr-5C5 Y*Ԯ>3Waq:IթF} *Doku]V~^ێ^3/ENޞfX3Tioc2tUO+Ns^gC爮,}>~>2„bslG J Wk?7  $;_U5.aݙ*,ex'' gS;处NL \h\̋X#GbR /椼E (d=?ļ%ʂ"PZ6#{ +_5(" xq35sqdef /BDlljJlڈqq1{rg5^(x1_,${Dt$_b2=^HZOVfG]Yh xcKzӤ#ҥ"/ՐXpGhLIXXl7|c,7~CteDľZ,$de 21!ax]@M*}f 0͡S3?iDs]v TЙIPf}N&EO#^dz jetE.CR{;q%8Y&"WilʉY†@{zSCp2.~݆[ׄ~A>VGvIf3̬1FZ}4,+֡_l1Xa)X;Cx=hqD S̀XpqKF^ˣlD65é!h5wa^C'?>(?")NTZ53He]@R1V -Hj`n Bߺn,^Ntپ ^Gqvn޴ًE˚ϒۺU 隆d;;iۈ::$He$jT%ډ+L~bFg̨Xٗ[GUC57FJ7 xVB$Jeڽ"rd("Lpި#^*#rlCz 4uAF*" ߎe]O.ڮN;2>0Z.F^|<}r!PI_g%";bTuwSW4E\:tOlNJKZt3%ݚ xKxB[ QSFu+K;8A,޼ۅg A ܱWa5f()EQʌ۽edntxDzYJ7~CJfVR$ы1[1zA3N?8.c'g?~zDÉ>N.\ ܭd=uRXJ3u#ptzsE7uSm?" AÓ:-vHd 5 AvD8T@=)㡐6 `hchK%okTnA.DX*1 ouF+J>gi~ JiB@3&zq[xu:K`[NG0Ťéd>曕#7zJ7GYKf}L:#dfW0}Rw!ë_B| <<&pagqe/xIpNeSg^&ήyn/>Yp5 8?/ˌG^v/K;%F ,W16> =f  ?x޽*5xD7Qnzf59JenՒ ɉ\pQ<"}Ft^Ww>GPOЊ lTBżۈ~5YPnf%A iE}Fl@.bjj?ޏ!?ղZc-X牂7j;?|drZu@ [KMN||rӊ`?*jWw7(d_(v-+w^$R,q^ f̥+/vf^LO3K0c3PH/+)vn `MRSZrNGT/J:>9+|[&u\w•wxUsڝؑ+f9ś06zcZOϴjچfsed!VF*BP %mȒAfBZuSz~>0;/9W`&2;]NejayE^}Bd% #pH}vYƭ'r7iB9qtʚmgt 4 `=!e$ 5 ztHw%53,MĴUj)gUSB)nY[&_S@b:Yu;SmMIqOpȱ5$f -={Ior']֦="3'O@jYu<*?uEح갫Ö>=31AVQyExԺH,7A9iDZy'!gp=I;ʇC޳!pLD&aMa@(hA̸oikrcb/gsؽV[Ie\P}+RW{%py+b_v(4GF-J=.=CYt9!А)>y͂+wwsBDȋ稷1ɭ>l,\»(X)m,+HNӺw:O2Dmg~LTdIVy=Bx+hrϾ%0u@"ɣB8B+pU^pX:wQze;y!^qK!jiS}S]# 8 )KzWǼ%2E+ 3+6wUxtWő: n3(J.zIJm1ϝ,j0<[2b ^*n~(e<-ǖ6a ފ-D/sH9{@Xgx2q+`7b_^$ڊePgoήY?:V(D"%^ _rG-[JK.iD+Mt"{z*;?;6L:~5b$f5TD9I˶R#QYUw ?}H;2o鲮JuZ`"=&&5#1^=JlIA+>䒽,  :Y@`x&xq/B\&9踟،uLﶍP]%)1RYt#[u(XRCBjPI0߼n?ZMN_]KiK*kղH_dBc<8d23$LK /:u)jOl/HPփޫTurvvtp"t15Dz$b]D+jgm^? SѪr¡g =T%EcY`}~1eO3N}KاzVo.@qFGĎ@d][jRVuޟY/UgKLHjD6tS2PǴkh24 DlJE5"g] +NҿHH7X"haxA߉ÆyK?`^8 d.ׁCzrfe+iG.piVѡ䝁)J8 s[feWZ L_I[Q&$4^0b>TSiQdُ/më$xH](VkPrg)-o(jH#[PRJȌeXh-ta(!MREG Gw,^HbqDc1iJ QKZknoE'@n*VDž/uL]s>x5;*遣jZ,24'9Tk;ݭ4)@2H<*N>QjƎ_$gD"piVy + -A: Ap}S\?((s]~7—A:9 :kOt,_i}b#ߔyhCyFG<&&xc;`pC,O|.Op|d%#+wNao5T:mo7ӳjhnK$]d : xWU`KHqG0iSO?w@-6,eN+bRViQ_,RiBZm(T nѿ"O#!0W1WOhj641st4@ŗP\& H ]%9F| !Si_k& @vrλ }f4?=٣0!~,ՌET'-ij cO.hPI@9) mg/-3;od g82r8þ%C!tJ3mY~7|:x]ZJJ`īU/X{Z{y߃X+(UfHАq]ekco)!\m< @"u5qSoAa7 tס.Ze|ņI.KBZYS5zr-|gVy&YT=*{ qx1Rg_w7BĉPT?CQ47k y#բC{=ݚyOC%6-XOjsJXc#zXY.ĐTpam._B\&Onَ/9oHz)P0bIpPUuw| FIkY˧\à$, #A@s60Kl&>J$lMȯuTۇI)y":74p*ӫ~jz8gcH+H*2I%}+d}]F3jkvƚ0]]02yhp\3h#3[aq }Ӟ}CP$*Z*/5!*vNTW}b[!c–,VgW%'O 7{Fl*Ohlk糿-3ԔHvN`ږ/#Fo8Z҃ m1yrh]9Iv+V h r-;@x.Կ se%0o*œxy|)vk!RWsXar~s nJh=}ƻ^I^&ڪ70U}0\?fJ#VTt"Ywn}Z*bo')"RWעH;ɰUpQrǷlcCcBޅ^E=Dcåi,uP`.c^C0M^oR8ŴaP,Y0<TWZ[0,jPsT>^+ཀྵ%3 zwEi 7̐}I?)nsl^ P|G:c({kϤQQOG1*_FgVf8G/t@mmz9߇m}i3i1IVk鉈u<"Y3X+w((Y)K}(M!e~!ݩ( }+aGo拡աuIRkfL4ShN R6VmYq[teG6m[- w&g T Իǂ L&G **aW3z1cA5Fl,4S$#-}D,0h[at .7C@1,rId/>:Zϕl owH%XdDgch W5FWGX)_LL! ȏON,`tDSP2ˠ4 fRU! %&!tfy?q? Z aR/_= r$}$?\^gYV}(]U!E}_Z4ʱ$_C2EƁT  48gPg4D)9!j{"eÒ[f,8 y s}Uw!-dH/߮I A(Ɋ1oaϞ/(>! KXt7ph? JG\ !^#Us^7?8} Xͧ44u[E.HobSXhփ6bY_N&?J 13[9!JiV:;Ryϣ!}>IK[: IZTuń2w-zp+Gy6Ί$z%?FäGp(DWxhhGk"t]; 34%Rψ d|uEVHf}6[1-@u C@a,\sU记WһI,sD^Tq=ʕ#̞( հf0$/A# 49l˵GZQ0w>>Lz>5ũQy4!GU}ZmJ-_eXEyz LCfPsX3s*Y-Tھ~M 6cŝ'Hqt:]Hqï뿕o5rdSTnS|XȀuf VW՟FqKW, {gT;γ==PRl`["=e ?M ,o^N&8EyR_c?*YF_e1 `"rFLjkp6HP}wOpd'P҇xF%/-njo#??fNoĹ`kѥ^l ۬B)U ބs/J7MRf@o 1;cґUa+>X+!~gu0L{pk֚pGYYخHb.:"š -9**A˥ǽYIwZ< 6q3J-z+ o8ȗg!i\ZF& I[B忕.R`J-FθH3 5ڙ6pD+ʉ,")Ct[.;U٤Dhbmer`p0Nwݻ͇<]To!A; >SP^֩O e#AS m%k,5|s7q$EspVƬtM e>ZZTMK@7]ƨ*z4>]r̜#Ҡ\;)zH¢Uu޿0z[4bKM%u*QǶoת7䭁֤^ѡa41n+ }|u ;[4T?[]\a7Ccj7}5v[x7. j_{?ϝ5jG4~sHufwYF<Q}Tz/odeZ쬙HiZAݪeΎ`fEPBѫ/3rL-(WJQ7zAvn|<(2K``^r▙-z*UnOHoЯ.}EN5r eӋ*J;?C/Q.' 7*!\kܯL!/Uxn&|y}Y(8LT=D^c(S,V,-1D:W-C}5u>2y85{]4B|_z6cŋ\risNRD]H"<-BR-fhXo2k&ө (OqOIYrYO4?tI: yUh@ǫEIse K^mhKB_e-3Z5#WI9K8TڢwM7s|p:ArCN䊩%Ģp]<5+^@u0J;]nh55Xz%nPnLj$^A 2%ƀMW7%%N :_VkAk] Q[靉;-,O8N;&Rci2y%x-jj2۝^ڤcyZUy]V/ҽ718 M("UxxI2Jl@RG/-U*H)#x)`&ˬՃ #𡳯mNJb 1WwLAv[=LA3|CgB!XȄH}G+2G@봡lw q֍μ~h\NIQjCfҾimNI#DIǑSp$@ cfZڊ˚MWDOb2MOuV4 DhL{$DVfjd7$U-ԔXtq/넧 Fǖ*=MpYtɯyʛe6v*v?5ҬM+^nجɈtZ< ]^;Z,ve0J۞ٲ>`F2 vI6hV ⪊ oeM$ X]眘3{E|!9Lq͓ N7f-緣tY`݊@ {vѓ2 p{&UҺ -lQ'_}''=d_k_ƦLG~bn4'jU_NT;YDz>^Ǐe~w#\ Yzﷴgcń=L3n}Ve R).|s\It]=6u9~X)U-y\ >bMY4Jlv,/UbFw$c4Q[~^FyëT3I :ckkar zz᳞rc֡\ _뤺+"_b%h#SG!‰&#H;,$'hUɛ35SRW]% 88tg3~ eaT ;Uj9r^i7>w2l@T08JO}aι[tMA^m6:Qƒm?Fjs.#eU޼ڵ\+3gQzZ_:40Z%l] |q' -#ȴ%eJhPT8)#~ݒh aK}HL D*p(q V3 W+{PejQZNSLom(kظ5oRxj:=o-}z Vu7(ZmYTAw^~ݭp^^AbEň7:_D| 4Â_j cp;\FS#; ,Ү0߿kZR;IEKb2U{DS*OάBd&rvXd\ӱPp)_Frbz#j 5cz JgjF㮺@+a<1 3R xP#6;n '[KKu,>1 ڇj'~8,BA8ݱ -+A"di•{*Bg\#skŹbҮDݗcxQӓ5?w3}vS#UdT6T|+\Ck}*}g@Y+K}~"ĄKړڽ~_ՊC qk9%ihKL?Ыyo|k8_LT(;VkBFyˁǴ]}+6a?vka>w >B9:3ܩ}n ჼ^obe3UI$+{xc8ȣ7f6FbZ_y,^i >BiZ1#5r b#YёBѦQ#%?crUU~i%)=f0ùm ngӧOuM/ZBTyÀ:& Ytw8C%pYX Uk p#Q3(n@{^+YmP=+쩲N8+_#<x$*gRNʅĦcI/?O;Q340np`nx5hW#6}Sl@7uYkց>p,jYИn˸pyGl77-H}"Y&3'B (ӕYE{%g智{iwo^GHgÑ9:[Z%Pw»lX m&&ƃMVI=s{f}ĈW;wո'K釁v'+ $6yV'DذSC(#r<߳I\ O #=̩ONd6lɟqie8's76k~/®4Ö 'G(t%"_ IOe3]%>?Gg#ƬJʉkeQd8Y;4~,Ø,U1uDM)8)ewr7@6S5Ns 4Flšɹ@jLQm[)!XD _1gE#1OMQV_ѡ{x'vg[ZZ OӡK_qCjtV9Vof8 ˠL;~rO=i\bYe4\j[X"XQo,@SYYdb1&8T3Z툁z !h uvD?`4fag}~aBɜ`&pH͞9?( GQo(e a/u"nWq染*Dַ1 hvI@BM{uӏ@VM"!z!ޭVhjuԇLH1+&fEo+uU$G׏@OHّ2vȳ@FkB!_tiЕ0~%.|RWgjIOas>< Af3B7T ɟ'iljs0_ eq,2$l̰^xܗf\(fXaX^"biyvCRM+=g#ykDž5nv 1${?-$r#筪znħqmFs& kzq+۞¿p x>֟+jد;r&TMa"03vGl/wK7@QLg۪PTܟ"v^:*՜"$la WAuÁfFhL"߈&0ּN";߀WnԲ#=x%? %4J,*&[n{ *?% sl Nf WXa-ް_vPZԊ7 .yyI::1n'7n.po|\*r$W#>̨əKu๓}gCDžS&| =;.FZ;8U(lP# Xę3AkO5֡^!f&~y*ԃE 7dDmspy\J𧔬Ra[3tPK~(Џ3 ?rZ7 }t\AIVډqS9b Gҕ<#4Cx?)!yD̉R4L9 lGI|CQ&lȠ`Ci=]mC$u@\--:+fW ;"DEFԥ>L]HtYH`qA_f/zsi:5>/bsn]\{T5z( 8/+G4ia9_Nڣ0uzӆm+j0R <[ 7vnf6'j| V(DE1$蚻II4ٟENLy&f. G[ښ|, ,xaA_Zj*=Q8٥?i4)K>-{#+glSN;n &!9 jfd5.#O5ݖ Nb誌YM6E*3ΧH- Z#e+]XFc3)+g.aSP,BSY@5NCMMֱGl6K_Q%dAG@IPBl=̘v买63;(,6)N9Yg*|ʌI:=OH3M`\ET3U1f /|Z,c"ęץJRsjhm&qU=Wnp00$%]KWPmQ; wK H@1Q2AVRzz3hv:B\pScmeDq8W!Av!5'y+"]s/xZF|>O4".UG.XwȈʸbBRGo?PӾ-0.jJQoY.ϛ1-i:s 2˩7O{V@C> `LWŕo'P}WM'bM}w-|Bu#6T mEp, 襑RPc6=qt"dw:y8"e9I'zh6iz&zvw5ߎ";qaT Kv8,U%Avwk'vX;]UݳPNPv ;dBvTٲI fa:B)%41`v, B֐3t-rMYkHkZYXo Fc&hO`Ig]z̺hNeot6"l(jTbMruc2t,Tmz*q?gr"<.>mpoVS3TCHA-IS9CX WV8rsExcA3E~*K!c>.ctҫm`D*l t[0b$;[!='W\QoFȤ t#'~OaVH ~GBs)wJ>MOJdtg/LP8?$18?oI=XdM1J"vrތ}=kGArouot}z>&$Z߬\QV HVog̞dÜ-pc#51G3 WbN*X7e{f Y]<($z/DZctkRJ2gm~J\%k~ǜݎ}/pz:"֤鐳=)L\y=(b} 1JVAIp@ vT&4!E [d:nMDyR16uGg*?N- sdR nvP2Rm;9rڥ DZ8ߺ CU&!(+ִE]]0"gQ0߅j<=\Kiw+Wr;b0Fמ/(_ dW8UA\byL6p)Zu&ܡxwI4c0"AfRW'29#m7.jˢ|guWk]Rځ&!"Z߭J*3 g)p p&m$@_nl]`,7Ca:Wz7/!k)g("c9K)ƥX̘rHud;Z=p3A g N=[eUC=Q(ۺ#Gl[W{l]D "Oݤ]oiߢ zF> ʲph}~Nk łr(NI:8ج{AIsyS<7;Uʼ!B&ECck(ZѮ♃_/970y-sTqv00OJQ-jPt#M!ylE-j"?逫_EVMz.\#5˚ʕXh y]FqX ~+ŗ.|.L4v}5|HzmAt^ DHUg<+Wk@s .Ħ\Q˄s2Lir,{ S"R1,t:/IaR k * 7x3[ $FoYTJ?z:6B\q2.e~k*Apvn)OܗDcN0ޤmq^N4ZS~B|]c5_{f%×mJ ln,"P[r?䆢K;|ILܛX^I YZ