librpminspect-devel-1.12.1-1.el8 > 6 6_6 3!y덏%!E/֡e(@ !E/֡O,은z-o yzLf{5wM5t8M3=qՐArVYT%ږaf [ ճ5!-=yk<+z-wgt_#S!aT%obS"1,K%a-i#%ORbr9Yo{!Qe^2( =9%g8 m90,(fR+gR~!ɜŻ:qO,YJ^PD : f*MfXo$B3Y|3zY| _{}TnE?o\5W+$DCum-N!8zWVW0IEk'T. WAͪeb~t f;,|ܚmHJm%XT2aXCA5?l@H[-.F5Bz(or6c7e1ee274be7165ade0a39ee92d2b50713dfc4c809975b45e995a83c7594840505638508b720b0f62797d8506d3dae51ed36acb3!y덏%!E/֡e(@ !E/֡1EASA05MHUm4 =4>30<\םu¨Ƭ M@a+oE\) aZUFoOS_[ ]դqu7=WXcd~MoEMX5S29󹁂LS!S0VbrQWf'HY"͉QC՚͔'([VC (S LB|O z'RabεOyHC.H9I)XHgE-U*M_8d [AV2ײx?5;hTӋ|ǷqA TS(2^_0 KnM_q;w웡4GY B-u>p=T?Dd # \  4 P l  r Xx(89: TG(H`IܘXܨYܰ\]^ݦbdjeofrlttߌuvwTxy@Clibrpminspect-devel1.12.11.el8Header files and development libraries for librpminspectThe header files and development library links required to build software using librpminspect.e(;1buildhw-x86-12.iad2.fedoraproject.org9Fedora 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/rpminspectlinuxx86_64MD2)s6KQ~ A큤A큤e(;/e(,e(,e(,e(,e(,e(,e(,e(,e(,e(,e(;/e(;0e(,ab8d8b006e5fdc95e9473baec4c0718e98a5612f2dcee5cded2a5f6d5fbd5e42a15b62cf2f97ea364611cadb9547f7e8b61a7d9c224a730f48a80467fc168d64413efe5ce83686c85c285f77b0bdd3d739bc4887ecbf7aca523dcb2ecda888a72bc962144d411774b59827a4dd81d04f32f1660aba1e6bf686c8b0562fc37d9f113b0879485c6d52a1fa526c8befaf1166c0ab1e8e1d1df6820aed84a0e3daea628f18a1cc233628ee3199862b99a33a174b164334de9b4a2d79951431c11c0839c43691992fb663450dc831888c1b331aa605f36bc704ed62b7ff267ef53f1a470ac349878199345bfd94953c89d686d9e0a3a52784c1101160f82ba437312bf8af3d768ab0117925a9ffd3bf50759c51e10b26a9311678e7af128a358ee51920ad5213c1a4f1a20648f9dbef8b55240809eaeb705f5cc7a15f72295d1ce17ae3a994d82e644b03a792a930f574002658412f62407f5fee083f2555c5f23118librpminspect.so.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrpminspect-1.12.1-1.el8.src.rpmlibrpminspect-devellibrpminspect-devel(x86-64)@    librpminspect(x86-64)librpminspect.so.0()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.12.1-1.el83.0.4-14.6.0-14.0-15.2-14.14.3e'e'd@bb\@aW@a@a0`@`\{@`7@`7@`U_@_@_@_@_[fDavid Cantrell - 1.12.1-1David Cantrell - 1.12-1David Cantrell - 1.11-1David Cantrell - 1.10-1David Cantrell - 1.9-1David Cantrell - 1.8-1David Cantrell - 1.7-1David Cantrell - 1.6-1David Cantrell - 1.5-1David Cantrell - 1.4-1David Cantrell - 1.3.1-1David Cantrell - 1.3-2Fedora Release Engineering David Cantrell - 1.2-1David Cantrell - 1.2-1David Cantrell - 1.2-1David Cantrell - 1.2-1David Cantrell - 1.1-1- Upgrade to rpminspect-1.12.1- Upgrade to rpminspect-1.12- Upgrade to rpminspect-1.11- Upgrade to rpminspect-1.10- Upgrade to rpminspect-1.9- Upgrade to rpminspect-1.8- Upgrade to rpminspect-1.7- Upgrade to rpminspect-1.6- Begin work on version 1.5 - Use llabs() instead of labs() in the filesize inspection - Improve has invalid execstack flags reporting - Use long unsigned int to report size changes in patches - Fix some errors in the changedfiles inspection - Update the changedfiles test cases - Check DT_SONAME in is_elf_shared_library() - Skip debuginfo and debugsource files in abidiff - Make sure abidiff test cases add a DT_SONAME to the test lib - Report INFO level for patches findings by default - Python black fixes in test/test_abidiff.py - Update the test/test_patches.py cases for patches changes - Generate regular changelog in utils/srpm.h - Skip branches without targets in submit-koji-builds.sh - Fedora and CentOS systems in ci need diffstat - opensuse-leap CI job requires diffstat - Fix the Debian CI jobs in GitHub Actions - Fix and enable the Ubuntu extra-ci job in GitHub Actions - Use pip instead of pip3 for the Ubuntu command - Use apt-get -y install in - Enable the opensuse-tumbleweed GHA job again - Make sure the Gentoo GHA job has diffstat - Get the Arch Linux GHA job working again - Use ubuntu:latest for the ubuntu GHA image - Simplify the utils/determine-os.sh script - Update license table in README.md - Allow any number of builds specified for fetch only mode - Handle old or broken versions of libmagic in changedfiles - Update GitHub Action status badges in README.md - Fix $(OS) check in the Makefile - Fix the ubuntu GitHub Actions extra-ci job - Make sure the centos8 job has git available before cloning - Change strappend() to work as a variadic function - Use json_tokener_parse_ex() to get better error reporting - Fix reading of the javabytecode block in the config file - Catch missing/losing -fPIC correctly on .a ELF objects (#352) - Refactor elf_archive_tests() and its helper functions - Followup fix for find_no_pic, find_pic, and find_all - Install cpp-coveralls using pacman on Arch Linux - Install cpp-coveralls using pip on Arch Linux - Install cpp-coveralls in pre.sh on Arch Linux - Install required Python modules in pre.sh on Arch Linux - Do not upgrade pip on Arch Linux, go back to using pip.txt - Drop DEBUG_PRINT from source generated by pic_bits.sh - Do not run apt-get update as a second time on Debians systems - The lost PIC tests need to invoke gcc with -fno-PIC - Update the OpenSUSE Tumbleweed files, but disable it anyway - Define inspection_ignores in struct rpminspect - Clean up the config file section reading code - Add add_ignore() to init.c - Fix fetch only mode download directory - Stub out libcurl download progress callback function - Perform symbolic owner and group matching in ownership (#364) - Restrict download_progress() to systems with CURLOPT_XFERINFOFUNCTION - Read per-inspection ignore lists from the config file. - Add commented out per-inspection ignore blocks - Implement per-inspection path ignore support (#351) - Report annocheck failures correctly in librpminspect. - Note all regular expression settings use regex(7) syntax - Allow size_threshold: info in the config file (#261) - Check ignore list in files for path prefixes to ignore (#360) - Support a list of expected empty RPMs in the config file (#355) - Call mparse_reset() before mparse_readfd() - Do not crash with the -c option specifies a non-existent file - Update TODO list - Make sure brp-compress is disabled in test_manpage.py - Require/Recommend /usr/bin/annocheck - Note size_threshold can be the keyword info - Ensure ctxt->lastError.message is not NULL before strdup (#382) - Handle corrupt compressed files in changedfiles (#382) - Disable debugging output for the ignore lists in init.c - Drop debugging output in the xml inspection - Remove what working directories we can - Correctly find icons for desktop files in subpackages (#367) - Followup to the Icon= check in the desktop inspection (#367) - BuildRequires libmandoc-devel >= 1.14.5 - Manually install mandoc on centos7 for now- Start work on the 1.4 release - Trim git commit summary prefix from changelog lines - Report the program version number in the results (#309) - Handle compressed but otherwise empty man pages (#308) - Flake8 fixes for test_manpage.py - s/self.rpm/self.after_rpm/ in two test_manpage.py tests - Disable broken ELF heurisitic and size limit in libclamav - Modify dump_cfg() to write valid YAML to stdout (#306) - Migrate more code off hsearch and to uthash - Replace hsearch() with uthash in the kmod inspection - Update TEST_METADATA status in TODO and MISSING - Restrict style checks to specific directories - Replace hsearch() with uthash in the abidiff inspection - Change tsearch/twalk use to uthash - Correct misuse of entry with hentry variables (#321) - Normalize copyright boilerplates in source files - Use hentry->key over hentry->value in pathmigration - Adjust lib/meson.build for Fedora rawhide - Drop gate.yml and begin non-x86_64 arches in ci.yml - Add armv7, aarch64, and s390x to the other_arches job - Change init.c error reporting over to err/warn functions - Modify file triggers and matrix use in ci.yml - Split 32-bit osdeps out to post.sh scripts in osdeps/ - Split style.yml in to shellcheck.yml and python.yml - Rewrite extra-ci.yml to use the matrix strategy method for GHA - Move the emulated CI jobs to extra-ci.yml - s/pkg/pki/ for the centos jobs - Debian and Ubuntu fixes for CI - Python pip on Debian is called pip - Try to fix just debian:stable - Enable debian:testing in extra-ci.yml - Enable centos8 in extra-ci.yml again - Enable centos7 in extra-ci.yml again - Enable opensuse-leap and gentoo in extra-ci.yml again - Run each test script individually on emulated targets - Try a different syntax for the emulated matrix jobs - Install s390 glibc headers on s390x fedora systems - Detect 32-bit and musl presence in test_elf.py - Skip lost -fPIC tests if gcc lacks -m32 support - Add stretch and buster to the emulated targets list - Drop Debian buster from the emulated targets - Install gcc-multilib only on Debian x86_64 and s390x systems - libc-dev:i386 -> libc6-dev:i386 - Disable Debian targets in extra-ci temporarily - s/AUR/git/g in osdeps/arch/post.sh - In read_cfgfile(), keep track of block depth correctly (#329) - A few more yaml parsing fixes for block vs group - Recommend or Require libabigail >= 1.8.2 - Finish normalizing all the error reporting statements - Advertise of rpminspect-report in the contrib README. - Report libclamav version and CVD versions (#258) - Ensure first argument of warn(3) is a format string. - Enable werror=true and warning_level=3 in default_options - Update the translation template file - Get rid of invalid free() in get_product_release() - Add inspection_id() to librpminspect - Update the po/rpminspect.pot template - Improve mkannounce.sh to handle stable and devel releases- Remove duplicate elf_end() call in init_elf_data() (#303) - Update translation template- Small change to the way Koji builds are submitted - Move the master branch to version 1.3 - Drop DEBUG_PRINT in process_table() - Add doc/git.md to explain source control conventions - Change Suggests to Recommends in the spec file - Add kmidiff and politics to the inspections section of generic.yaml - Update TODO list - Use warn() for non-fatal errors in mkdirp() - Require libabigail >= 1.8 in rpminspect.spec.in - Enable multiple --headers-dir1 and --headers-dir2 args in abidiff - Swap out some more fprintf()/fflush() reporting with warn() - #include in peers.c and rmtree.c - On fedora-rawhide CI jobs, install gcc-c++ and gcc-plugin-devel - Disable fedora-rawhide GitHub Action for now - Correctly handle the -w option on rpminspect(1) (#256) - Drop the relative path handling for the -w option - Build and install rc from source on opensuse-leap - Update doc/git.md on how to track upstream - Add .github/ and osdeps/ directories to extra-ci.yml - Build and install rc from source on opensuse-tumbleweed - Adjust curl(1) command line used for rc in opensuse CI jobs - Trying to figure out why the opensuse jobs produce curl errors - Another slight change to post.sh for the opensuse-leap CI job - s/PowerTools/powertools/g in the centos8 PKG_CMD definition - The output of html2text on opensuse systems is different - Rename HEADER_MAN to HEADER_MANPAGE (#264) - Add inspection_header_to_desc() to librpminspect (#264) - Add xunit output format support (#264) - Support the new output function call syntax (#264) - Move init_elf_data() to readelf.c, move data to struct rpminspect - Update inspect_elf.c unit tests for librpminspect changes - Remove check_ipv6() from inspect_elf.c - Create the badfuncs inspection - Update po/ translation files. - Add badfuncs test cases - Forgot to commit test_badfuncs.py. - Fix flake8 and black errors with test_badfuncs.py - Skip debug packages in filesize, display changes correctly - Fix spurious execstack failure - Fix YAML config file reading for BLOCK_INSPECTIONS - Expand dump_config() to cover all config file settings - Minor spelling fixes in strfuncs.c and making code explicit - Simplify list_to_string() so it handles 1-elements lists right - Add abspath() to canonicalize path strings - In the doc inspection, only show diff(1) output for text files (#254) - Add strxmlescape() to strfuncs.c in librpminspect (#264) - Output the system-out xunit portion as CDATA (#264) - Slightly change how strxmlescape() works - Add the runpath inspection to librpminspect - Rename test/data/lto.c to test/data/mathlib.c - Handle the empty string case in abspath() - Expand dump_cfg() to show runpath settings - Fix block handling problems in the YAML config reader - Note single builds cannot be rebases in is_rebase() - Hook up the driver for the runpath inspection - Install patchelf for tests on fedora and centos - Update TODO and README.md files - Pass -D to rpminspect in the test suite - Add integration tests for the runpath inspection - Python flake8 and black fixes in test_runpath.py - Fixes for GitHub Actions on Debian and Ubuntu - Disable Rust support in pip modules, more extra-ci fixes - Update pip and setuptools on debian and ubuntu CI jobs - Make sure pip is updated on debian, centos7, and centos8 - Fixes for extra-ci on arch, centos7, centos8, and debian - Adjust docker image names for opensuse and arch - Add Gentoo Linux to the Extra CI set - extra-ci.yml typo fix for the gentoo job - Use gentoo/stage3 as the container for the gentoo CI job - Disable opensuse-tumbleweed and archlinux CI jobs - Make sure util/determine-os.sh picks up Gentoo Linux - In the runpath inspection, fail if DT_RPATH and DT_RUNPATH exist - Use pip install for PIP_CMD on gentoo - Set PIP_CMD to pip install -user for gentoo - Handle a NULL from list_to_string() in abspath() - Do not match path prefixes in the runpath inspection - Python black fixes for test_runpath.py - Stop doing an emerge --sync on the gentoo CI job - Replace emerge --sync with a manual portage sync - Use emerge-webrsync to update portage on gentoo - Add uthash and move the file matching code to it. - Typo fix in README.md - Fix some memory leaks found by valgrind - Create mkannounce.sh to help make release announcements easier - shellcheck fixes for mkannounce.sh- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- For BUILDTYPE=release, generate the correct type of changelog - Minor logic error in submit-koji-builds.sh - Fix reading existing spec file in submit-koji-builds.sh - Bump development build version to 1.2 - Use is_rebase() in the 'upstream' inspection - Use rpmtdSetIndex() and rpmtdGetString() in get_header_value() - Add get_rpmtag_fileflags() to files.c and call from extract_rpm() - Use correct Version and Release values in download_build() - #include -> #include - Add the 'config' inspection to librpminspect - Rephrase reporting messages in the 'config' inspection - Add the 'doc' inspection to librpminspect - Update TODO list - Minor updates to try and make gate.sh more reliable - Add config and doc to the inspections list in generic.yaml - Rename the '%files' inspection to 'files' (#194) - Modify baseclass.py to allow 'before' and 'after' NVR tuples - Use the after tuple to override the NVR in test_abidiff.py - Use the after tuple to override the NVR in test_upstream.py - Write rpminspect output to a file in the test suite - Add 28 test cases for the 'config' inspection - Fix the errors in the 'config' inspection found by the test suite - Fix Python problems in the test suite reported by black and flake8 - Add Makefile targets for black and flake8 - One more formatting issue reporting by Python black in test_config.py - More 'python black' formatting errors reported for test_config.py - https://mandoc.bsd.lv -> http://mandoc.bsd.lv - Add a -D/--dump-config option to rpminspect(1) - Use global reported variable in 'config' inspection - Fix reporting errors in the 'doc' inspection - Add test_doc.py with 'doc' inspection test cases - Ignore flake8 W291 in test_doc.py where we explicitly want whitepsace. - Add init_rebaseable() to librpminspect - Check the rebaseable list in is_rebase() in librpminspect - Update TODO list - Define a new GitHub Action using utils/gate.sh - Update the README.md file - shellcheck fixes for utils/gate.sh - Use utils/find-ninja.sh to determine what ninja-build command to use - Install fedora-packager for the gate.yml GitHub Action - Remove before and after variables from gate.sh; unused - Remove unnecessary basename() calls in inspect_upstream.c - Do not assume an or bn contain strings in is_rebase() (#196) - Adjust what things run during with GitHub Actions - Add get_rpm_header_string_array() to librpminspect - Replace init_source() with get_rpm_header_string_array() in inspect_upstream.c - free() allocated output string in inspect_changelog.c on errors - s/10240/16384/ in archive_read_open_filename() call in unpack.c - Add the 'patches' inspection to librpminspect - Add uncompress_file() to librpminspect - Add filecmp() and use that in place of zcmp/bzcmp/xzcmp - README.md updates - Restrict some GitHub Actions to source code and test suite changes. - Only enable lz4 compression if ARCHIVE_FILTER_LZ4 is defined - Go ahead and wrap the rest of the libarchive compression filters - s/class Test/class /g - Make sure uncompress_file() supports xz compression - Handle more compressed file MIME types. - Add test_changedfiles.py to the test suite. - Add test_patches.py with test cases for the 'patches' inspection - flake8 fixes in the test suite - Python format fixes for test_changedfiles.py - Python format fixes in test_patches.py - More Python format fixes for test_patches.py - Remove unnecessary 'a' in DESC_PATCHES - Better explanation as to why the EmptyLicenseTag tests are skipped. - Test suite cleanup; add rebase= and same= to TestCompareSRPM - Black formatting fixes for the test suite. - Remove unused imports in test_upstream.py - Revert black fixes for test_config.py - Fix my email address in test suite source files. - Support single package URLs for before and after builds (#190) - Handle invalid/missing RPMs in get_product_release() - Use warnx(), errx(), and err() in src/rpminspect.c - Modify submit-koji-builds.sh to pick up all pkg-git branches. - Update the rpminspect.1 man page to reflect current status. - Update translation template files in po/ - Support relative directory paths for the -w option (#188) - Implement the 'virus' inspection and add test cases for it. - Update po/ template files - Python formatting fixes for test_virus.py - Update the osdeps/*/reqs.txt files. - More osdeps updates for the clamav needs - Install 'xz' for the 'style' GitHub Action - Fix a variety of small memory leaks in librpminspect - Stop the freshclam service for the Ubuntu gate job - Support slightly older versions of libclamav in inspect_virus.c - Add the 'politics' inspection to librpminspect. - In tearDown() in the test suite, call rpmfluff clean() methods - Add test_politics.py with 'politics' inspection test cases - Python black format fixes for test_politics.py - 'it should added' -> 'it should be added' - Increase the runtime timeout for test_virus.py - Install the timeout decorator on all OSes in our GitHub Actions - Install timeout-decorator with pip, not timeout - Expand librpminspect with support for SHA-224, SHA-384, and SHA-512 - Define DEFAULT_MESSAGE_DIGEST in constants.h and use that. - Replace some fprintf()/fflush() calls with warn()/warnx() calls - Rename the 'DT_NEEDED' inspection to 'dsodeps' - Rename 'LTO' inspection to 'lto' - Update translation template and fix two incorrect error strings. - Note all valid message digests in data/politics/GENERIC - Improve reporting in the patches inspection - Only fail 'changedfiles' for VERIFY and higher results - If 'removedfiles' only reports INFO messages, pass the inspection - If 'addedfiles' only reports INFO results, pass the inspection - If 'patches' only reports INFO results, pass the inspection - No need to check value of allowed in permissions_driver() - Do not let INFO results fail the 'doc' inspection. - Do not let all INFO results in 'upstream' fail the inspection - Fix RPMFILE_FLAGS handling for %config files (#221) - Still report file changes in the 'config' inspection for rebases - Correctly check RPMFILE_DOC flags in the 'doc' inspection - Include rpm/rpmfi.h insted of rpm/rpmfiles.h - Only check regular files and symlinks in the 'doc' inspection - Remove unnecessary assert() statements in filecmp() - Remove incorrect warnx() reportings based on filecmp() return value - Exclude man pages from the 'doc' inspection - Honor the -a command line option for downloads as well as runtime (#233) - Allow optional 'commands' block in the config file - Fix assorted non-critical memory leaks - Remove unnecessary warn() after a failed stat() - Additional memory fixes for the abidiff inspection (#244) - Free ELF symbol names list in find_lto_symbols() before return - Followup to the memory fixes for read_abi() and free_abi() - Prevent invalid pointer dereferencing in invalid result in 'patches' (#245) - Avoid reusing the same abi_pkg_entry_t struct in read_abi() - Allow a set of excluded path prefixes in 'pathmigration' - Fix the YAML parsing for the pathmigration block - Document the BRANCHES variable for 'make koji' - Include the .asc file when submitting new Koji builds (#191) - Include the .asc file in the spec file- Formatting fixes in Makefile help output - Begin config file restructuring starting with rpminspect-data-generic - Support multiple configuration files. - Docs work in progress. - Only fail the annocheck inspection for RESULT_VERIFY. - Read debuginfo if available when running the 'annocheck' inspection. - Add the '%files' inspection to librpminspect - Add __attribute__((__sentinel__)) to the run_cmd() prototype - Add test suite cases for the '%files' inspection. - Added the 'types' inspection to compare MIME types between builds. - Update TODO file - Update the MISSING file - s/rpminspect.yaml/generic.yaml/ in the Makefile and README - Skip debuginfo and debugsource packages in the 'types' inspection - Add test_types.py to the test suite - Note the 'types' inspection generic.yaml - Modify add_entry() in init.c to skip duplicate entries - Start GitHub Action workflow files for rpminspect. - Install meson in ci-ubuntu.yml - Change 'nls' option in meson_options.txt to a boolean - Install gettext for ci-ubuntu - Add more build dependencies to ci-ubuntu.yml - Drop the 'method' parameter from dependency() lines in meson.build - Split xmlrpc libs to separate dependency() lines in meson.build - More xmlrpc updates for meson.build and lib/meson.build - Try to support systems with xmlrpc-c without the pkgconfig file. - Changes to build on Ubuntu, specifically the GitHub Actions system - Syntax error in ci-ubuntu.yml - Add ci-fedora.yml for GitHub Action CI on Fedora - Fix errors in ci-fedora.yml - Put all of the ci-ubuntu.yml steps in ci-ubuntu.yml - Remove install-libmandoc.sh and ubuntu-pkgs.sh helper scripts. - Install python3-setuptools in ci-ubuntu.yml - Install rpm-build in ci-fedora.yml - Install libxmlrpc-core-c3-dev in ci-ubuntu.yml - Disable ci-ubuntu.yml for now, enable code coverage in ci-fedora.yml - Remove Travis-CI files. - coverage fixes for ci-fedora.yml - Install git in ci-fedora.yml - Enable manual dispatching of the CI on Fedora tests - Remove actionspanel thing for GitHub Actions, drop Coveralls block - Comment the ci-fedora-yaml file - Fix the 'elf' inspection and test_elf.py on Ubuntu - Enable the ci-ubuntu GitHub Action again - Check all return values of getcwd() - Ignore installed Python modules with pip3 in ci-ubuntu.yml - Build 'execstack' test program with -Wl,-z,lazy - Add ci-centos8.yml to enable CI on CentOS 8 as a GitHub Action - s/centos8:latest/centos8/g - Trying 'container: centos:centos8' - Drop 'sudo' from ci-centos8.yml - Rename README to README.md - Enable GitHub Action for CI on CentOS 7 - Drop -I from the pip install line in ci-centos7.yml - Use the 'make instreqs' target for install test suite deps. - Add back 'dnf -y install 'dnf-command(builddep)'' to ci-fedora.yml - Nope, that doesn't do it. Just install make in ci-fedora.yml first - More 'make instreqs' fixes. - s/scripts/utils/g in the Makefile - s/TOPDIR/topdir/g in the Makefile - Install make in ci-centos7.yml - Move REQS and PIP lists out of the Makefile to files in osdep/ - '^$$' -> '^$' - Slightly different sourcing of the osdep/ files - Set OS using := in the Makefile - Make the reqs.txt files in osdep/ contain all deps - linux-headers -> linux-headers-$(uname -r) for Ubuntu - Remove html401-dtds from osdep/centos8/reqs.txt - Use `` instead of $() since this list goes through make(1) - Does $(shell uname -r) work in this case? - More osdep/ work and simplification. - Rename 'osdep' to 'osdeps' - meson patches for opensuse - Move mandoc installation to post.sh in osdep/ubuntu - Add GitHub Action for CI on OpenSUSE - opensuse:latest -> opensuse/leap:latest - Install tar in ci-opensuse.yml - Install gzip in ci-opensuse.yml - More fixes for ci-opensuse.yml - Small fixes to determine-os.sh - ci: Add Python linting jobs - ShellCheck fixes for the regress/ scripts - ci: Add ShellCheck to lint shell scripts - Adjust how the Makefile reports unknown operating system. - Just check $ID in determine-os.sh for opensuse - Use pip for PIP_CMD on opensuse-leap - Update the centos images before doing anything else. - Install curl in opensuse-leap - Get 'rc' from Fedora on opensuse and copy it to /usr/local - Install kernel-default-devel for opensuse CI - Move the 'uses' part of the centos CI jobs to the first step - ShellCheck fixes for the utils/ scripts. - Some flake8 fixes in test/, using yapf - Combine all of the GitHub Actions CI runs in to ci.yml - Manually install rpmfluff on CentOS 7; pip is failing here - Use rpmfluff-0.5.7 explicitly for centos7 - Use rpmfluff-0.5.6 on centos7 - OK, let's try rpmfluff-0.5 for centos7 - Last try, rpmfluff-0.5.4.1 for centos7 - Back to trying to manually install rpmfluff for centos7 - Style the Python code with Black - Add the Black formatting commit to blame revision ignore list - OK, just copy rpmfluff.py in place - Make sure to manually install rpmfluff-0.5.7.1 for centos7 - Don't assume we have a header or even a list of files (#161) - python: flake8: drop * imports - python: flake8: wrap long lines to less than 100 characters - python: flake8: drop unused imports - python: flake8: remove unused local variables - python: flake8: add PEP8 whitespace - python: flake8: mark in-line bash scripts as raw strings - python: rename several duplicate test cases - ci: merge style workflows - Adjust rpminspect.spec.in for file moves and default changes. - Return the reallybadword to the metadata tests - Adjust test_metadata.LosingVendorCompareKojiBuild to expect VERIFY - The shared libmandoc check should not look for a static libmandoc - Update the AUTHORS file - Rename ipv6_blacklist to forbidden_ipv6_functions - Rename stat-whitelist to fileinfo - Rename 'caps_whitelist' to 'caps' and drop the use of 'whitelist' - Rename abi-checking-whitelist/ to abi/ in /usr/share/rpminspect - Rename 'version-whitelist/' to 'rebaseable/' in /usr/share/rpminspect - Rename "political-whitelist/" to "politics/" in /usr/share/rpminspect - Drop unnecessary method re-definitions in base test classes - Use super() rather than explicitly calling the parent class - Call configFile() on object instance rather than using the parent class - Upload coverage report to codecov - Improve the error reporting for test result checking - Convert to AUTHORS.md file, add Makefile target to generate it. - Introduce the 'movedfiles' inspection and a lot of other fixes (#155) - AUTHORS -> AUTHORS.md in rpminspect.spec.in - Add basic tests for the filesize inspection - Multiply the file size difference before dividing - Update README.md - Update README.md (more Markdown changes) - Update POTFILES and rpminspect.pot - chmod 0755 test_filesize.py - tests: optionally check the result message - tests: add further filesize tests for shrinking files - inspect_filesize: drop extra - from the message about file shrinkage - Enable 'permissions' inspect for single build analysis. - Add 24 new test cases to cover the 'permissions' inspection. - chmod 0755 test_permissions.py - Make sure all RESULT_INFO results are set to NOT_WAIVABLE - Fix some specific problems with the 'permissions' inspection. - Pass "-r GENERIC" to rpminspect in the TestCompareKoji class - Add 12 more permissions test cases for setuid file checks - Update TODO list - Update test_symlink.py tests for new waiver_auth values - Add a fedora-rawhide job and renamed 'fedora' to fedora-stable - Update the rpminspect.pot translation template - Relicense librpminspect (lib/ and include/) as LGPL-3.0-or-later - Ignore .tox/ subdirectory - License the rpminspect-data-generic subpackage as CC-BY-4.0 - Add a copy of the Apache 2.0 license for the 5 files in librpminspect - Update the License tag in the spec file and the %license lines - Add debian-testing as a CI workflow; add missing osdeps files. - Update determine-os.sh to handle Fedora stable and rawhide - Drop the use of 'sudo' in ci.yml - sudo required for Ubuntu CI job, install make for debian-testing - See what $ID is set to in determine-os.sh - Workaround a bug in meson 0.55.0 for Fedora CI jobs - Add 'debian' catch to utils/determine-os.sh - Rename 'osdeps/debian-testing/' to 'osdeps/debian/' - Add opensuse-tumbleweed to the CI job list - Add libmagic-dev to osdeps/debian/reqs.txt - Fix memory corruption in init_rpminspect - Add comment clarifying the License tag in the spec file. - If check_results() raises AssertionError, dump the JSON output - Fix test_changelog.py test cases that are failing. - Fix UnbalancedChangeLogEditCompareKoji - Handle rpm versions with x.y.z.w version numbers in test_symlinks.py - Fix mandoc build problems in opensuse-tumbleweed CI job - Install gcovr using pip on opensuse-tumbleweed - Handle systems that lack pkg-config files for libelf and libcap - Add archlinux CI job in GitHub Actions - Forgot --noconfirm on the 'pacman -Syu' line. - Add missing DESC_MOVEDFILES block to inspection_desc() - More minor fixes to the Arch Linux CI job. - Install gcovr with pip for the Arch Linux CI job. - Support building on systems that lack - Add detection for to meson.build - Ensure an int is used for snprintf() in inspect_manpage_path() - WIP: 'abidiff' inspection - Only report permissions change if there is a mode_diff (#181) - Fix -Werror failures in inspect_abidiff.c - Add sl_run_cmd() to librpminspect. - Add get_arches() to librpminspect - WIP: abidiff inspection - Some minor edits to the README.md file - More minor updates to the README.md file - Replace get_arches() with init_arches() - Add test_addedfiles.py to the integration test suite - Expand find_one_peer() to soft match versioned ELF shared libraries - Add the beginnings of the 'abidiff' inspection code. - Report out findings in the abidiff inspection. - Update the test suite to cover rpmfluff 0.6 - libmandoc configure workaround needed on Debian too - shellcheck fixes for the scripts in utils/ - Add abi.c, the code that reads in the ABI compat level files (#144) - Be sure to close the open file before exiting init_fileinfo() - Python formatting cleanups - Add --diff to the Python format checker - Add new setting to abidiff section of the config file - Add -n/--no-rebase command line option to disable rebase detection - Store size_threshold as a long int rather than a char * - Check abidiff(1) results against the ABI compat level definitions (#144) - Add 'apt-get -y install libgcc-s1:i386' to pre.sh for Debian - Add integration test cases for the abidiff inspection (#144) - Add 'dpkg --configure -a' to pre.sh for debian - Install libterm-readline-perl-perl for debian CI - Install libabigail for Fedora and CentOS CI jobs - libgcc-s1:i386 -> lib32gcc-s1 for debian CI - Install libabigail for opensuse-leap, opensuse-tumbleweed, and arch CI - Install libabigail for debian and ubuntu CI - Install libabigail-dev for debian and ubuntu, not libabigail - Install libabigail-tools on opensuse-leap and opensuse-tumbleweed - Install libabigail-git for arch linux CI - Move free_argv_table() to runcmd.c - Install 'abigail-tools' for debian-testing and ubuntu CI - Install libabigail using the Arch User Repo on arch CI - Explain the osdeps/ subdirectory. - No, just clone libabigail from git and build it manually on arch - Add beginning of kmidiff inspection, put ABI functions in abi.c - Read list of possible kernel executable filenames from the config file. - Drop abidiff_ and kmidiff_ from extra_args; add kernel_filenames - Just call the abidiff and kmidiff extra args settings "extra_args" - Define 'kmi_ignore_pattern' in the config file. - Handle builds that lack all debuginfo packages (#186) - Do not assume peer->after_hdr exists (#187) - Store copy of original pointer in strsplit() to free at the end. - Use mmap() and strsplit() in read_file() rather than a getline() loop - Fix memory leaks in abi.c functions - open() failure in readfile() is not fatal, just return NULL - Add utils/gate.sh - Have check_abi() pass back the ABI compat level found - Update descriptions for abidiff and kmidiff inspections - Hook up the kmidiff inspection. - Use read_file() in init_fileinfo() and init_caps() - Use read_file() in validate_desktop_contents() - Use read_file() in disttag_driver() - Adjust how init_fileinfo() and init_caps() iterate over file contents - Fix 'tox -e format' style problems found. - Avoid comparing elf files that are not shared libraries - Support --kmi-whitelist in the kmidiff inspection - Trim worksubdir from paths in reported abidiff and kmidiff commands - Remove the kmi_ignore_pattern setting for the config file. - Create include/queue.h to replace the _COMPAT_QUEUE blocks everywhere - Update AUTHORS.md - Report metadata changes for rebased packages as INFO - Do not fail the specname inspection when given a non-SRPM - For passing upstream inspections, do not report a remedy string. - Do not fail the lostpayload inspections if it only gives INFO messages - Clarify unapproved license message in the license inspection - Use FOPEN_MAX for nopenfd parameter in nftw() calls - Make sure to close open file descriptors from get_elf() calls. - Include 'src' architecture in the rpminspect runs in gate.sh - Make sure kmidiff is listed in the spec file - TODO updates - Update rpminspect.pot and POTFILES for translations 1.12.1-1.el81.12.1-1.el8librpminspectconstants.hinit.hinspect.houtput.hreadelf.hresults.hrpminspect.hsecrules.htypes.huthash.hlibrpminspect.solibrpminspect-develCOPYING.LIB/usr/include//usr/include/librpminspect//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 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protectioncpioxz2x86_64-redhat-linux-gnudirectoryC source, ASCII textC source, ASCII text, with very long linesASCII textRhttps://bugz.fedoraproject.org/rpminspectutf-8db2e0d866cbf86d777093e4b32daaaaf53fed9fddd7c8bc8527d5627be8272b6?07zXZ !#,(] b2u jӫ`(y/&g\ކХi (g$l? \w` wWP|¶Kһ1' ʴCПuǺ𐭈QF!^cǜ%?ZŅCfT5#9V45'ZJo7'—vHVSP^._yĮf? RpPRLŚM"xͫpe\䮒rÝ듒s>+Yo/[ad @&!6=_ƝaY˜XVq&cs =l'̽ؗ L*"0"փ"T<6x"N< }bz![Hju5(@l$N%q2P٬h;qDh5\3r8t.rL^Mq:W#̰fݹ8:!kP -1xo~ʉRB d'|- L.20l5v_m<`F:W9jZuyd{zF餃u2辢a;Ѻ,`zHj1Hl= rέɹ>;_c(\njt[TVoF?\ԓwV3 x6{;Fz2`Kg㟮oX ,7x)N&܏vY܊zD +wwLcQq#Z91SE13dr]yܘtUj񺊟JBn6 d. a$K~;m=jO\[ 8n Y( 5žΈ|߮8% @cYu┐HpXQ\ ٛ4>s)3ܘPm9)*ޤ53uۮ#M9anp-`KNa@hZ4R^?I'ofa9S;aXG2pa {|tJB3nLdR1;l/NhYdx$CH޺ 1֝:*y7/"QD'N)-EA egӿgOC5 7y㰧ٳ]QzGu yX EcQͿ2w (YxtXmՌ?q,R\'8(#OIȌ):>ZT̀qon|_j|gᅔ!h N(`y 2N &M˧9vDPYT+)yb$`t$\c$Ji>Yi~ O_9?_`5x\M)IPbn 'IuǞ5YVYW=$j`I'1=.;gxT\QrJW0PE3lxkrr)ٓj8CjzB}ٍ 38"pc#%l.z55/6Y /*j?Z{tmVTVon 1o҄(I91ON9VWl""G0j Dj$$Lӳ_ˎzg5;J<᢫fSmkm"Vr_c n~'ٿE ~Q\kmSI(>#4K?xkֲaU^BG"zuj?O) ` st3Jzɘ`C+ӱ m](=%NNn-@w" 7HY7HQ:VmwzxB;bh4ʦZB-Zp@ldD78޹5r;Y&1*m :- F\-1\W|`hݻ@qIދ-jݐ B ;4b;1=R6&sc8w b&\R{ O_3ܦ֬k{sЕIA/~6| e}F2[Yu&unNaDnhk]@5wfrbBgf(l=1%w¤iۭ O8YAhfկH >36aNIJ@]n' 16(F l'}Wq@ݭ(!ewDg~u Q_%,RT>FwRiۿZ?| [|emH*Wv'V3Uƫg&xiL-i\XfuCBV{/ Z~ ʗON=5 KJej'`/`Rc\=G;NWѴ-dMï΁8)Uc% mdp=VQk90PW|D箐:wYN:0bCbB.b1 ס}-̴;. UO*Sͧvd7Eݚ8֞ Q/x #&=eO9f}R˿7&Z~Bsv8l1_8X]/'fƒ떚-%Dg> y Qƽv6X.{hcOZPk@aBkSK8-fDO#yhwkXLXY)b o,R%-`q1AA0C=Is贘V⠭2/JIiz(vեS~oښjBʹu+ߺ€hp? |+]'(](*/󎸿K8B 3u)%i9IjǞIo?:G*1͐zc@.}ĘTi?(i^{U` " HbRX?;H˽sa%gYxpc{X# H?l;5è70y'y䷋N[ * :H$jbg@WlxeB*"rp~ z:L^/0=׊->B؛Iʙen&/W-;X:ώ@RB~nȪ~J?<\hrKr>)ǐdߞri@Q#{3fJ9}4sMI=^紫8pZ1OL;:r))l6G=Ei,=X:݊,z~QA9B,6TۛT(??zjP(0ٚ*8>TgwԓĽxշO $F9J?yP2IP3 }n8 |VTsZ:[, eE3(G. oƹ4=`yz1 EK5pEsx5'c;;y~X^nɘP_R~P =[W ҍ_7rR w Q;:ymo'Bis|cA:\-fTX')^瘌IvAU۾<֣NPEYh̟e'BUёOBzIE hղvRb5 SMMD1e/i[XV'/M%8}PP1U >5xDŽ cRۣ`b$2bG.چX2-tDa Y~B#7jޗU]kV{5T:6Mw!h}rKw MN43Q /&B`ϯB!l}s(U~r7[XnOCY/7;8^g+SSP!(h5)NH;Ly2`Zl'Rf,|Y÷Feȶ*늻 '-i2Ia߈6S,CJms=pL _r4^_{TlXyQS[9;N f6-PihoNGr0U񹃾*88i͢(7f- WRAԕ?MUQnBbصA`Hӌb ~Π` nn'sVGy_!)GOD]/ϒ[/ǵp0坩e6@Rn/[e|L^\^P۬&zUhT:K挠zj#N[~t!F%鯈~dĔPۘj_<~ͯUWߴ1wݟ'ۤ''- 0عP){,3@ 9(} L^HJ0("3lt2v&pb(қђBkzY-/ydͧ5rlmCP{ ƅlG攀 MӰ;:{f~*!@YaMibg\Glc2"}a#U_BWZ;%_B-a7ZEaQŒ[14_ L 0N%eٲ5ʊ] $//Z:O5t^ ihM[1?cgx]˱0?"LQ) );ʭH&|AVSH#0 !W U0>߆ȭߙ"z8K'pV-{ssn5[kepj o MVE-{IdY ϡ<@?`S^dJ$>_;;*KԾPu/r1%&PjjpR$EkX|4$7IZq/t^nt0?đ*s1ڪgq&9/wJK9Dvq )m6Y IxYh!rfaT1]HwGm\AOɇy^fVFŸd@]+ g=N*uU r6&ab<>?6rŎYjyJI6ɸ!>ѤJ|ɭ%_/xLF?x5ya>yãl԰A:?m+$ԝ-q3' \)Vz&G3l3b2px 9l腶JIxU7p.oAέ_t9yt u/at{l^O^) +;ʯ#0_; #U^ZJgM~V:C zHu!wi4c\U[ w 8K!W'E=[+J56m!X%]:D݂`mVy8DO5 Tdt&zi9ɛMv6*'XR*hMqy3H۝P)55gc-"*64W&}#n0rz 1zJڤn@g17OU"ZZ^'nf09X;#f`9@fn0KqYJ˚%}18o.X{brYÆ /L[fO/~ɏ*FR[_-1+bT0DDLal%p]LVv"VWV ~*W qSTArVz MWT-+Y,pzΘBrmߔRϗlWԾb%.#W؍?c搾)7{wqip80 ^yƔ`(p {>1+49zZBH] D, fĄBgߩ,ˆe[: Fw$cl~lZl@u+c;J3 y5])!qhZsH/131gig֋)L$9M3zGʱKL/g$4$ Gy9|)fDx\S~ y1F3~9cӢd@T95WmiFL %F4^M@հ!&>ѥ0B W63O50jV`y~aVەAh(RRrdY˿DT5U6,3a}{I$C }h1@*^s8Ѱca?qKP7+P_ AO@lo.mZ|oW@HXUrΤ.*y]tYxrOA bלa+}%7v#Ex^ 5Dԥ^P4/^0 hoETvހ^V۞pGh^R:W+29%0+iŢgs=ZvR| -ZфvI:_J|n\G>Z˛=$q53_7~@:0=@1ѿ\~+(x0/GCjXk'ң\F?xs]J ןӫ9CBS݌̇@9aQip70[1B.Im/XJIhŵ. B [C)2U/QOW-4'k3nuUVfв/YosEN9}E>fPcA tغǻȋS5 aOQHo4{pv?zJ+SM׶j޶;x8$:{> \;0I،Yz~&nJGXG%Mb,+p&k",U&5ͯG_M|9U|/,] .3 +hbtKxyVdl "S[os[e =wVޖ#鿥*(R 7vEpxI,8AG!(2:mnBuB/cbv{9g 3sзt΀t#9mv%~AV{#}$LEK30vt3KJ*!]t <\y 9=ct!:mT*vړ@N€x-#KOr@ Wn,XXk}Z׈aY]A2*8O2dc/(]?'[@jg.! +nrc×??ʌ*T4b MufO9nӬ;I{ M|@O;1 FU4_7IKNnoDm |Nܣ,2XPl+Mg,H{ *:MaAܲ䶡;{ZO5m%~*Ȩhp9G  `zx p*~j.IZR:4EqWDw:WC %U*ֻ[ΝSlF'"J.|""=X46~Q`U)pjTϩ)|ߥ"$ES ?探vb1^hLWzq/PbKR$l:EA{~R7@ۇ|Ɩ8z[Çi_U LQP9;tʕ`M!{*@uu ' 'U.<[mqvs/}Ei!Xpr=1*.!Z>_cKv[ar`LquSQ-&7c]gro@`3J'{3~-.à7ZsJ%L(lM[ϺU`Z%z`t!Tq:+(kNm<䨮G u>ݴ[4f}'qgj>0 /F]hu|bێt0gÖ!o -R+ku뷷|(c]cpeI.pwPDDߟDNb/'ܶ= 쯙/cӃ{c"Q}^;=;k):{V#j8MB䃅 ~^^xJ7nU~ :?N<2ěG%ͯ~В^H`\"@&Z ̩ K: !`cˆv NoC`U=9kH颙3gD`A>mAs8t+~KNso1SO-^4riP:"pSw47)dl&I<輧=Mu]-5酪\AjC3<莥*6A5H(^ǐD |O˒ c u@sY AvaUfRɇq=>V`X SXTk}ϮOxPC1*{FLVXH ^Df_ejg\SLV\@ $#S1Ԡzya^FKYq1 \XNfp˸Aո_bVt``tgi6!Lbfq8հv%/ӅDD&1_k HFygrS4w17g+X?\+F;FwS!I5'餥^g^hIo汇%BGl7ɓ]pUc;L'VлH*qyo-kRhi:YQ~«o,hp_`kֹWE2_$,ќZUDv)w}[iFhr>m)=, cLc"gBuO #PyEDmw?êQ`7IozY=7#WӸ9{U =+y?1ߗTKL7aw@A51CP _|DNwȷ塍$l.^!9ű"kGFQ`+"EsHsϜvX}»lx(X!-;˻6~Dm<<{Wh$DF-0}x']i57>%[+SGIS-WG!9gqE4VS0R}&Ki=^+͉dҶU *}%n A4QDé5Ne'>QhGm Z"OZ#}Yskh;243!04HM鳽rXN;D8R}DvB7.  V2:u${)EfBJg jVUhS%T.߳ N>[iI8/kAPǠ?\W54 }f;L4L:BiH8O|^0jno Ǯ#u&jv|?+zկyۡ)^PkxPVS<}L(/ཹu}j-3C{]\7@nD-bWM @]J!HUkr:orGW#.GhAd\`K#GgS§ }>9U=@?fNħM=>o;Ƽִ^>⺓}ftVUD Q*Ɵ#E9C%1>> CJpk.nu^3S ~7yW^k#| tAALk/ B-ncGh^wQXdD9Fa_?f~y:2W'Ed9Ӏ5]R~A'}gz:靅1m"5 zr߰20i"yq!?c> g61>eU U?qsA:'`?=*6[qp 03JnӓԬo}jt8LE뽏ѪWjl*4gSkG>fQ[gb~'VB٧N`;JY%diغ&SaIt:e |jvX3wXiN!΢%+",Fxrj MlzOE c|T./GMP9\ei6BTB@z\G-*pnJuzMnj;ϱE$ '}~9;LY+骸 TWM`UeT#2kKH:BH֦֍ pi :ر SrG/PU;:5iq7p(uPЋ[҉ߢ #fp WCT{hi9HC_^ ,lp:qABfջ5*!8h:XPɐ/}{ݢ^(e Qvh]LqcqQ0 ;FHv&\Bs} g6No.ۼ hŽ'M& ծ%у<ʇDnbމ)>g:):JC[Pom9 7&$kz54x{~~@\_q7g~J_i3 0aEbcYs7ǂ&ే{2](z;?CEH̼) eY8Zq\=GPXv8h,ߚ /g{.ط!MȚ9U ncgT,;1_Woa[(cd՟@+v2:Bl:vUm^?t̸,xns+sxruu3b1F-91ty:2M5m0vYuQP<EHfc;C\hjed_'y}Ģ(K# #kݏ{ZXXF4cC{f\{/#fc/.t-Q?7әVy' \i~e$mqTTfCjg0Q4h?i\ͦ<0q .{K$f Wд]P(h*ӑ9ۃ?BYx~*y#(EHfH(LXaL @Q6ԪjEV6A:# ?PZ[q v q1-0b,7`u!<fŝ" |ȩb FLQpg(-9B9qH;$ss]z=S $bTF R YwjZp BS5ݚ88xrX?s,;5Ǿ=":c4ԪX :DDj΄oR[02Z RωhxK,&Kіh>|gd~x.Vy;=6xI*$<ԕ9f`f%/mWfECΝn`Y .wM.Tkx/)$hcs7&;" ZQ.\s2Y4YaA;:%m̞#fstCĻN.,!:X.[Uo#Y< IZMXQ~QBtGPNZؾ @26S"D%S;C+,&9xAjg}ۍnExƜ /`o\tڮ2Jadjߡln 48p)䡛-7cB\8L=`/f%Ah!ͫT{B Hh$Poh]@O/J/?ށ25Zgy5۷x]1h 8kVTdhFRA0K:ѽ/ʙk^W369Cvo߽ۥ9A=* -TNÉ(R E4 2RpNZU /+Vnp?+a1a2j+uܐ% per:*O3i$g''im[M2 ?h|)v@͏^O-+EaUz|x0'=vJ\v夥ǹ_sNb(_ZȀ˔Z18T*К{9s)봅 Ohu&f߳ Dh3ɗSz_0Rp7:$M{*G 6ߟCSڨ|"oVv =d;FxV4=Q .LJN_jݶA|P] tsdI8vz 1T!]"2\M5CҰ?ܝ0S kHɈzWT 3Ks5n~z[8m2uvm'=ƪOg@BZ4kWˬ4 o{ʹ^ſ)j:vy5xp'}<#<#?MpC$GLmΫ`GQbgv O@Ðu!]A#cu ~8?C)MHd' k7-H1J3L%"V0rhvUメ AYr[07צ#ئq82:Ԑ!r;qqpdWȹM^8,7kWixh8 %Vئj5Ҏ R&c=&nOpb9L-64BG$#ňˣBdF5(I'.})8&(կCCN-5r_*sq=/3yE59m%A pQţ^+wqL{ki.xBB Jڶ >@q)t=iA1Yf΍b[5&q\y>` <9d+فՍ+WI8`: -hҍ -MϜ@I gDTTZS,3 Bgl$"0IO9).!6dk͸7?N|g7g]]Z)T4!2a.ݑqR3W9D5"Gp&f:q/P}Uc-6q6>e}Jk_7ο>_w{#Q\tB!:\qZ$Fmժl;B3btx÷~!˩)KZw cJ!\)$4[?4p l3dz 0gf# ("ݾ]Rr@gGe L:9;#C%ze.ߌ+MS;m %tH`S 76A5g=2htC\nϗFCdonIu,OzI$i<.GmAm$}|^B]Tp58F}|:lo.QXD.ΐѦ|׫=ey.,"yKՇ[#Xb][ kn+Q䤷?\x#/Sxn^c[Ѷ҄]t\zpY5 A6{ !ϛͯRtdc=O89i?3V71Ɩ,i1 4aCndpXߢ*?_iG1>+a)cZ:bs(BoswHΕ.F5p%䋽F#W t;OgVGVRpHA;1<ȷTgl6(gʎC,26-1gZV4.D_9ZmyD[$j@füλc\Yg4%Ȱ~@k}DSP-X'UN|%1DԘ6I$g1+h3}&rd)}Y^"AN/)5XhAg"a&"ۖ;lj:Rd{jbLPԸQag} _it^‹@l"\a ߜ^iYe?+ny  ͎:yaߞ1!! WO_=TK[X+|&9t2tCJU8_Հ4Qcd/ ΊBA Gb:u O%eQ)&*`,^(᠀x.X)FS#sA9?1 1>ˣVMtF.9b}6.E,wJnY)^NimI#A| ΞQ8R jK s 9)֚ LXXk/LiF{`i k3*Vj!H9Plj$6x\mty`O)uhYSسahعr* & d9ƅnE` S3 aR\@syI=I*AV$ƴE @&Dy~s o8~iIss˷gUDYӟ*4_\*ͣO&DZ`B zn*&+7; K~ #p?f{eaE34cL-`w*]h>!z=4Ѧs2U"x70; ]Mxrƃn-ӯ9sG c"&A$۞>@o01\ bh AtT晌m&`C+ |Ң6N?83-0s@*Y6Gmc_~& ²MS_ZPY-@MG<]p7@aۥpTva"ۃIdQimJz^2FY"_ gr,Ǘr{$g~z~,4ϬN |쏐 ߬7.wO7M48V'5tT][j "pRbWM qP>O, :-|) "9lq͍ZLy*EI4jZ2[acGPgŠG[sfaVܹ9jyNחN M&6wnB9!D$D:8ET]WW95{QYGvQAN Ă-djwB$6ybU9Jq1OB{vcdB6=EݞF7n RwNr5p7ŷ!>S=$yWunYan*/hDy4YLl եlW/i%vf=/Akr Sp0N|ɫBs!.?F3cҮloAh]"ʜ uoGz9&KSIP=ĹC`3pz(bpU_tXN{QIfo]ra3ϫmM1fnuYJ]Hs|OcTMޘe{"VLDS!h.03gN*"6~dfSe$ =% mmNv:@!v aLνh}?O(ڇS 6vȶ"K!DYN͑y}Z\9nV/9[8s@&Fk{|KpVYQ u"' #e{iT" ;S@HZ>>b:6f{h8]?4/J~&6)w>2DtŽ%>&dq,jk]"n=s38:r/)Y@A|,n_e-o4"{!bwkx$fC rmz Q]P?tșuЪK0m Nӥ_a]6twRJ`aٽkZ9ǩz|^I2b S߇r#[( &r[Zu I_'>K& UAc1®qig=TwБxCT&f7xCpңBK務/?\Cm%P (ڮr=}|8*T?~:;{QGʁHt$Rj K]sw`Ook.#w\G҈t4XYx(4(1X=|kы[xFFJ3X-ve;<(U^@O$ɷ,'튶azI.Y cm S =d90O@##MmD @mfMoTQ ʠVdۡ?4Àܚ gJDe~VkӺ8t.1p7gG)BbA~I'/t.FV@ hsgVxf:=)ɲU™RJ( 6oP/rMwmg`+$`6cќ/q3x`}ق2j/㊗f(ڤ'k guK9U|8oo[l7pvXjѹb MwTM~uibpŰE*P+/P "P>PVj;w8+b=~]ȨNUݩZكێ`sG5!o"kϝ1[q7ɒp9]ONLm[E`4Bs[,TzkiRO ʃ*/$$"S?Q?,sr?B id<-y,Fx\Q@λ"צWN|8D&l]u'@[(Ym(!ȲW|$lmL`Go㧖?+Ғr;yŌfu=uM3D;5qkvCFl@Aק (I\^ ;q_`+8*0 % ,wz)EDl"K 5["|oyٽ $c 4w?;%igM,km^%+$+q7vGX1lI#|L ޻9'Gq8S5~ku8c~waS#1kRN\co*4UWl(+/V&f  :Ew$ٝTWd 0: m[f`.P@?yR@ ~1rӑX^uyCt'Znyo1q~g.d¢ |^{3wykulIn=]_)/~H3- qgi/n`ԙޙp/!LNNv*6{>f3XM{goRwg%|Ƽ,W,`OBvM6bc.G+'7 ,+q*5a؁ (ͷElӊ́VWriJ(5F*(sĜB_"]soVh`%e`V|xH+َp݊7;" ={~p5@0Bڟ6Wi+l}v*Wq@+f3[{Y8"WקQ>l|%^^y j2O+Z9m{w/诞X?Fq’Bʮ}0^e|N-O"M?hYaFpFT=1ܕaP@MegYƽ-LMk M$1uS,@ T+*CbpyYvjOsz1f0miYI>'kY9t aX&>]uB˙yzpŀaͱfUQ.'Yh<,[4619GOE9,X֪ Qy?g ):1\Dr& 2.^N! H\ 0ESRaO b`noփ6P<|˂;oC Pϔ!H4);0;ж wZƔPWzDfQ7dFA2.&r!C" =7jdQ|U\dj6tD2* +?8;;hT"T~z7}ump02"CpӺ,CԜf]2^\as*j|NKו&Dϖ@D:Ϟl3gnڅеW17k4ۉ 2HCɃ#7{]Ns(n wrM $F~8# 5dmL+J˧xh,oBq J(k{a_n|NC4pn29_4fdI5u8~|X(0<[]w?j#,A=n` ,D%'J| ~8_d4` T#u/5NK!!hQ@K-H1/Xt XJbGYǮUxFw暖as%g}2)|މ?~_ߩ DJA#2?;Dq];V쫿#gWf" xo~{D|11SWvM%3 FE2H JlM5ڸ)[_3U1JG{A[zҬA/}(Pۛ !V)zhށ[$BV"ظ/1Lh\$og!![0p?>@==Zv> 2QEZEΫCc7=74+)SVGG6db^1;5sK>6S y\LW*ǃOT;Q$]yCmEcJ*\<_L1P!]e} lꅆ6^JiĮ'm :57{mժ8Uڻ?8^tͼDZ{[GVH#鳧W=؇}sCDRKGĴ,,S궕2aV2):-cRK*C~-²%ii9 5jG 71w$]@f,usw/Ƃ1Yw5m/]Hr-ԡnR;SGY1e&@;߭~DV;[b6~5z> ' @H]IiPCy)Sv[+ftս0Qm"N_)k6߯xT%4|ۿղ,s>ח&4+"5'$ڠ)U~ͯfUYű.CP|"&FI4`ɬfǫK-Gٺ+eWfgWbÃ:YeahPvQbwm*I]g듬Ik+o,IBxfq Ѥb2a$v}-I|`I;/PKj35 >RDK{l<}ʪՠbxciR PճOR-q%=)P p+Us/G{:}bX' *MńmĨ,ڶ\<>Jyzxȱ54n!` r+( 9,wfE%dGDy{r|ţڀjCˮ6aD l}q..EGH浴zm76K)k0d+L | &6 Q3.GSzMp͌?7)_"D 72媻uPJGw ׆?`XaR9ba8jBn2q<`}\ 8upt-Npʈ_B~>U(5 ;QcjgF3ܢ>,S@sFa2P` &5sIQNj IA"+Ϛ1:qg϶WtÊw?7t(7S2-ٷ$m J/.śz<(,# yhK |E O\a;՗59&$cW_'kZZ-7||2*UI~#`N3O73Կy}"2 e P^$PSlqcxǡ76P4W[=-9gHh|R8 tcIBYxO6eVѹ0UF˹`cD2p)˺EpMG$ 7BdZ2m7P@zK̫cvZ綘6*Ph,rqt2c+fE?yҤ `p:^R3Kr޼ӯ KTx"Q54j٢m!E~)t\_QZ"A%J:aH?NV)xΏ{:sʉ&tBǑxo;['ΪH 1%~վ xNBpѝ?İ>,ef EL¨c>m\nx~#@t3.d!|݃0;ҏѴy5x\i4Ď9Űd;'PR'rx `/g'@6Dm:lĘ?d=[i>\?&_vЋ2S1SшE˝Q¬C5܍w9p.zPvd*7ح$*?k90(;0ͳ ¿#O!S.1`&gI7<3Ny.: _c}-0W-SDyh ":~'YӼwqutѻ !r1Ar\T3ٕ[C`1,lXG8?݀O緃Εe^!?PArBb{"͍Vm3BhZK{6k 9u$o&~xM7)%Ne!7Cĩ^Ȏt$4^-j}L+3ʹ?L1 rN6oX%2;Q,ɮT*ڑ:Ru} s < &vlҏKr wl4?J;,yzId_x*1Q ^9ft? X[3="B7m (4­56GQィCK㰄hioZc͋f(#r%*VD=gsqf!.3N%.U>dWΧ?bf8glUsNjL}m2 \AR%G w(3QDbrf l ,W'*"cvdXWu'*3\aHqK4 TZ|lx\X+6ȄtTc/UYXV_nW6gk̙? MNC_C1aKXt0? :|~ƴvp90$|5`CZr!_ѭz5˔>+rߓIiS))Zpz3 ߁W9$I`FKSZGS 4(b**75Xǟ9LJb} ؤߨ찞T, a0N 3`C%{Dg oT}r 0L~ILZl'24R3-T+C1܅PÄ\nH-ְɆbm} _4r]E_(hNQ`| AJH|WNbܝ YA+ ]'E\| rZ<84C z_,7I_j&| j{eR MvBY?g%R,Hz.Y!C ]t4m&V2_07^旗t{! rHǩ,חNӹr kdڒF[/!gl='/܈.!$,ѝÆblmff%eqY滄~h{}r<& 9vq@6c%KlMS48%;pĹ9G&G'~cHioY&\yj(eEgl o3!e7)0; qUV7ж[o=kf @vhЩBP =̉ғ7kE7ϞӃyL|dfgnCJ:b|[vOwz;E| ~olfo abиSܶO{&@JƔ-z2ؽ9N1`NpKAnG i͢Ίg1r ~Rq 8➎ YezI[$JzyBЖٙ[D4Xn7̲JToe?ckԪYQƜ^-(W G8 06ťۣ 5Q>~]/Bh^AJ7H J}M(42ZtuoT9P]9fl6pٔ~"Wy. X z:Ƭ|OG=Ť$yswtPjst /IbJ* b4]Y1ڮt{)tea%  d^ `=hDBkIvS(4^&]ѹ@OeB"N#W=Sǖ- FhK-AitadhO8$pfa|DȪOT,g/eɡ&'OzyA_Pʹyi_?fܜ ܦ{>(3t :-RKЍ$ (_P/8>}rƀ4՜܉dhBT8yЪꠝhn(G.#ZrTp5[0w ޽$vx·?=F ؾЉM6`0L+ BYt; Ytc*g]fy<i9d> C/jnuGw@HkNlW#gp0>T_nf 0.~0wF[ {gk{&-t]A~9:ȩO.;Wٿ'vRRJx L<4mو$E6TbIPTlOQGwhbM"nY4UqʞUKp7Hrcva)Ypp SPӨLL&=ܗnLsLZqwY7.V&#!In+(-@ew%; 0&x^n"8UXT-프oS5REu,cEqvv_W>j_QS:{g7& .v P^ s\YfעEZ7ok{]LzSlHW$C/:77`s„~X-$pU_d7M0kP džb.R^0FBi5gtą fL8Vq7r;O7mAS|UN\AMr ǍKRT֨tɬ-&8|al1@IEa&(ِj$J,_L\eQѢή04>cX_b1:A 2޲L.B)^h?[٭xQR}JVEH'SP omx@azC^ypN(IGytVk:OM]ҩE\?Dln/#uU >'@o]NSW+$`KVqkе!Mk:1DBX'I z^@VerVO-q/^!K6䆨WK'`}d MJgB D pGu3Hp'mWt `jZ 0*-fi^ %ȃTIQH8KuXuh2s cR9 ^G%?H,CЫT`@\>R+̞'$(ýܔa.f3~!8>髉dgy5>mShG fYEJXVzYj \v-<{DhWQZzl0d_~G೐ hF'ȜfPllG ^b"C`՟VF3zտXpfA?~9"q4v2; 5FcK˙ev{[WV0*ȼeܬ#<6҄&V*fiVhvt1 0Mʰ/"m/J45%k1h[~ C`YouO} Q'~P|,)9}'nD93CEn}]  P7@ɥX-t1Zk>n@KP|up2aG+ C1+׹UՅޞJ6 ǝ06l)UL Ñ4 -蛑Ϭ^Rѽv|TstmNGgꓗFlKǤV͍4m̶ƀ"=K~Neb ӊp/6K"YuJ#fXA M=6Z|*{bYM\L40ED*_y8D$\!-kCks! M+hGmFK P*V0 r  n(4+che۸zWOFv8)fB()O?c9/._(bgNU'42)Y0> >i&!$]oU˺&Ӟp 9sMXzSޕm8T^v h[ؗQE[loJ2x_ЊccR C7%z&gFDfN߽o:G 2A*2bˣ2Vv+ZAE!^_-R (2b#4L/x"ɮ2۱]_N8]3.MU0usWXˬF#>͑l$K`zPY3X -&8<#SpgX&y9|ԔY̿ sTЯ` \U3琠:{.k'ŵD6xLBIL26 %iȑI$KTUga >}=s5iv:OS,ˤ9`Sf&-GٰfJ" +bEc(3I a% N(Ql @~B5sURΦF^- СV\43ވDp? P 3DZ+p旆nns$5\g{6v]*WQ>*WP%k(ӗk);}sȍ7w(ˆ%uZ 6QP;)[b&LMݬҋ*\a0QCInMIJ{DɔW2-v͜v%`7PB,I"t(w.qMe[WNE9}_YOJ ]n}`_@By"7qh>F(R\8#~@OWDHeo"%D2l>&!R9-4Ԭ-@]`gYǔN,8.[Wfh {K3)W*Ov'1)Q̡Ai- ,q 2$s!;yc%f086(y4V@]tb۾Y 620_Qڴ$=5Jxhp!8f/gVl8i3]:Zj88 中0e0,Yskt\^K g*- EenMSYK.p؆3׏6pC^,bQ>$IV=@$% Kd9d#S`'ݩe>S‰pN@^q˾A |k}_p+(>?Gܽo}-=[mHw!rWxl70S$"*_9Va^I e@Ahc/fxX~\twXn+S,jBF h5֪o7 h?pG+I| ;\$/#G*[e,x9,>3<+z\Bꋧ̃9/dGRS=Y|"p?t_!b<0e ܦ>݃ ڿJ⅟I͹!DIOE4i,`_ ᠑zKQP (\*Sɉ%B{ ʒ)ejW.UNJ|Rrۇ"D޾a:~g/kY,'Z!c:_ů "*fldPr#/ۺ2RG?h`@N,@EFK5>VvކVUT*^4ET:;]lB9&L.P;hHr FT>rdj<,/K# cnHFDXQ mHyg&#+Ÿg_6"f0m`5܃}+'`}B) N%o61D뛰ƷȇDtSĶ@G#e:ԭi.o'$\w{5OWǍuP")XԔw _w|*qo%%*٦Fာ; ou5 sV9K-sy-/ű~e? ta|\Gb`R2) B8mS"#ТE?*.>~Lвk6nf CɋȪ%D6sUUcٛ`m-6grp=&نm+_@+Qf we+[. 5_ g6e9R6~A@tdMhcPD$\z ] *mpl";7vUi}`[!aWkhj̮p(;7^q C1A;(d q[/lcZLOeO5o-5Jys@ ~㼄_SwwG”n s=3AJMo@~! [bwyeǷ c$jx"v"p2|6k _VdO`JjNZ5^Zj.qpsC 9Юǖ:xt5 ԎTp 0`Ra*E p;bqT [f\V0lh6ۜixDPzfm- ֺƺC҉lVB.-z[}$"&OQ螪}w7YcbD8|I/2AϙGCfS|$ڸ~ yߢ)oR1H˅Qg8+׌<:O*բn'?9޶C]21r|{ $=kZ$`陓:`y JN􎺔>%fi,WgS] vXi sgaw,օ!κ ŧ4-Pf tMpVZ#gkpF1@[yj*^ B*Iɓzm7d mA歑4GnMv{֡dbx6izM#6}c7z0$ђիS>>Ufg{M9FNnRL;PF,Ŀ'72 `@5 h.Nדuؕ6eg=ıސV6<0F,о1R~\|NP^CЩޫ&_X$lf$ÜJ>@T ݾY 0d{cEjĂBU}AIIpD0QXByà$|_;eف_ﴪBLP!(^kKE|5KЦ$s~p}Z6! 7[ߖ!e}2Vq*?f[96JCh"C۶pD08Z+IKbV>]>ܵ@t'9۝Jg#J1EG?1-iZ`.OLS@e[Nr)A'h:a)1 _T5/䗓%Jy" Y(s7? Pk?`K|l6d:Oz}?%ɦ( /[ڀ5Ib]!0zQ[=N{1UG3o)Af RnD$up`#1Β bR3'JV=5]Kwaޘ'ڑ -Z}faTҩ!m9Wd؋UIS(k+,D]k|&r̂rSmZ'I@Ql-`u?4-dum3RO`3'{{=/ DxNy-pRèCY9pugQG ]byGL6*%ǥ}~褄eRatUsyI(hbYե8S26@o̸x], yxYL*YƱ+q ZMT1q۩U%aN!Moj6'm>1/;TɯS#+dq.+ʕؼ87Evk?"bVCp*x'~<;[HH ;m۴SyfXVp a C{Թ;|nzG?m7ci5LAߧdފѽ@!&nu@E xk*Z _c1?*za-=5V/FsWbc7=3v%vit+oy`>O1/"QD6l7?;Lr)1&!wn4~zG?DOT:4T_hj.% "Ƣz42vgv*%\J3w.Yɪ7z vy{8" "h`n$L K@V߁V?5#Tɟ 6xɋ{h6`& GvطʺzBg'X[mCh8=i; NƦ3?P 0 YAČl%K}Bq%!saZ}NPMi #!m hXK89yHJMbK?BJl"p;4QGvM 7'QC#Bm'`>^DV6SY/F1-oLr/Xg:|+$8@4߂`Sr9d):'ocH'梒3_*/mxlsA}q`S{jŎm?KUʛn8x|Pjŕ Ai}<#xp8 ij?FtRԄyi7%@\+-f=/sqڿ]\!@ +đQ!R>lA~j02)ͧbV/m68l+1;}\:~YAFSct3VĥѾw3fĘ @fƥ+2sϨd1[2~©6ՠ#R =!2uým]SF.'VFT 4}Bmn54%ٟ&2c0kF^.S(ZhUYN+i<=#j`G 0"u{Cs+w++inSWqpICDC҇؅?-3G&z;Ma+)u`*S{* ւu3BVnJ!ݎ@kQ1<M `;]\&<.51M"G>Q٘Pirr1sBAd=)ũ0=x@tg{@bp *~Qc01_=f˓JF$L@U3ϓ#˹-/b}; đ!PWQf܆K bT,7|$ޯ?)6o4NӂJXu%*Իj* {(/D޵<;_٠#.Ɲ8XP͌PlOw_HBUPfDMk߆gÌI'>~BTc֯ 9FJ~9(m^Y6q%%2фdhj֕0U"3H]S %2X#{y7|ɫT|^8(Q+JbS۬QoIbhڵ'GG,|)k/:0"ƒd)_>Yen"-DΝ/#Um @t99;Lh:^E+v4b }+s4+,Sw庣?$cIDnS^g E4JwɥBбedҺ3 ]PpK4F^W]mF}baR{%'xRfҜW$댑 UBX-(?mAz4Jz@]eUh9Yo8ƌh@e@{"w[X{Q6Ѕ`XnӑlHW86)1r5U/!kSIqze]T]nJC9j8>Fluy!G3\GYM:QZrD^&a#6 %[6@[`GT-3I;bδhK mJ{TJ'[ٙWl 1.V4_ w@8NܵqOuW_(iKu?YUQ˸wonc]pzzb ΔUePByYţ|7WNo6(ݕ3>bTc @O/Q,s6K_v7c $w34wS#A* Pd^8++s}ٴ#vs y$g_!efYPSz‡p';uvd 1]dwI')ݛv=x n*:߀BU6ƲAvLb5E]e()fc.|ZotBU.SE2̤t?z=WuKOJ*&=B{=HRAA57O 0u5#մ ߠ\2骣hb[k$if(FbW*[&@ϫVϗ.J?o6N=sHEͷFT Br\B[aLc~ &pX'h{tbdp?;33`*]j{Z쾂I}MO UvnܮkfڞJAw5-j8Zɉ"# (dBU‰j tp ={$~2ń~"G\$+k6Wꇁ>9@&~PyTc|{ar/]F3|Defٞh\RŊT9TUXZ2ӠF+Ps=Yy#iQ~=۲Vb$Ͻ#s@cgS0uRzC%>;ZrdPm![H8s"-foZvb;KN?%pV53Ya}?I) xeAbn`uls G a+Th`q+f3}lY2|î1A*xA%pnCjm8D,Cfb/*qCP鲖-ߪaZ=z6KWIVwg`awJ[!`a$ɳS9]+ou1Eqdw'AxEGYĎ9 IB V'6r1i)4^[OPeI% ".qr)!Nh }E&aC췏T rB?{ Ȕs[Lz4h˿el W~{T."U+cMo*VVQCvo฿a/lPvZbnZ  !N8R/\N:dM:kR ANBJapC5pk̍«/vblvLا *_lIqgV#Rb8Ar bc(a!MΰQ֣Kdў3kPnUPA60]-clDw>ci>p&7[,b(kSB } BW>]J=a!w6lN&>,I~@Fn# _gweؖ5/n:g/OdGx;dj?S6+冠!_̕tҐ$T559acI`=}ĠT1m€{i;{%- )=ARn4휫}mB5lRQ0=hQ7A=^NTe9ex 0ӯp7&"eU# u 󩒕I;#iPq3!f%xЈ^o*iWywQ"ɒ9t L{n[fJJ*n^Dl+F8,# v>R۫ac6D-N!1 Ʃ Nz6 K;NÂ3@)X0\L*fql'dOwp_Gpʋ%UAhf]pjx\ͷKlF\.RD%p?+\䍰nf`g`758d]9%ZBREN4e!εܴ̍¦Ҟ ClleЖak:-ըVBe$NL,Y OR67[lnbrN.RڙTW ~ ((@S џ$t\|ޯmJ.T}Jj;謬YdM 'F2 0LdpűxN8E<`D^9"x/V8'b&$_?i.֍ƈ l MMK}˶0/=G[܉.I\=.S$`:sQRH yk RCdvNL=aЍK]tb4AQXts)_gIM%JҪԘ0fɖKAo ̑ZIZ5H].i|X"zlSpD+7H̬++ %S; 0n$vj>Z2wZqRf'zNWFXӔ>&wٴ;DM*,)7BD9d!%'ȗ>Tx:Gq5kI.Mi Jrh$#.7iksp_5rVnW! IEʯY4~Ir+E3^*^ajeEkFp86 !B$xxwV\lGy]ԑ}l[ntȴ,pr845x90Ð u62Ll_k)`U:z!щ@(){8`ȢsrH!w7go޾mrF4sY4O)ȸfJNmmf"p sCM_N!&H h2*ռ:Cmw>]܈`H ѹIm.ǜQ)zZ>_՚OAG.rIn`\jB A|.O{2}#,Vc/6Xd@9 Z3 gWuNE!`lH n!j?_Y$SJVSͯjB=jnb"W>,&2DpHŒ9)&'-osASÛj%] HyF*տ?gn>V _W}.M\SN9H践,ݽQq^AhD:C3QH'ac37^RZtEep/9HyVΘhWJ9"vv*'r P.Okʹ8mbO"*_'د{Mcoètj&G19EARA|uTk|Ɋ~Bں|6)źw+OtXgkekf5:7;OCM|3xgBMﬠ!*y=r*7I! #iwLBW\@=HSˊW" Ad0 #hP)iDdm)Lb~hD>lW'ӣ0[&Q_V܎eH YZ