librpminspect-devel-1.12.1-1.el7> 6 6`d63!}|J^>j/5,de(@ j/5,d!dke(]YQ ۿabt/z]4eGD_N` vj~c0f҄RY?>ObXPfY!Mbo?]oʉL2x;D/2=}+8c~O`ڂ4@M_#"3 oZc`4"㈙3*cL11:#c6w+d"p>P@%cYGZ |k[$AMݫL8/B#hcOsϦ$ԄJ\Q=TOb48d1f33ee13ce96fbf20d6e1cd853958c1b3ffa43!}|J^>j/5,de(@ j/5,d,@h!'8>K`/ B]ٸY^UDF4},Є*b@Lu/ [O UUmF>Ul'D eFWaX5 Vq|}267~!R2ϠsO5olZ$->A~W Z"`Uޚ'`XfRQCh= exi``?&!lKsO4}uCruXdZD"b_ Nv3|'xQ`H_sg@=Ydߤp,Hۗ6P8x-UY\! ëodP5lVJ n1B'=oU/v%RϠu6<QR2nEv(`2)xh>%Jy|OpR`+?✡:vՂIFtݯx2JwwweW|qU f\I %VmKӶ !^ڪa1/6b fOҶv4mOvG׹i 0v >:~?nd # \  4 P l  r Xx(89: TG(H`IܘXܨYܰ\]^ݭb(d޿efltuvTwxy<@DClibrpminspect-devel1.12.11.el7Header files and development libraries for librpminspectThe header files and development library links required to build software using librpminspect.e(:buildvm-x86-31.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(:e(,ab8d8b006e5fdc95e9473baec4c0718e98a5612f2dcee5cded2a5f6d5fbd5e42a15b62cf2f97ea364611cadb9547f7e8b61a7d9c224a730f48a80467fc168d64413efe5ce83686c85c285f77b0bdd3d739bc4887ecbf7aca523dcb2ecda888a72bc962144d411774b59827a4dd81d04f32f1660aba1e6bf686c8b0562fc37d9f113b0879485c6d52a1fa526c8befaf1166c0ab1e8e1d1df6820aed84a0e3daea628f18a1cc233628ee3199862b99a33a174b164334de9b4a2d79951431c11c0839c43691992fb663450dc831888c1b331aa605f36bc704ed62b7ff267ef53f1a470ac349878199345bfd94953c89d686d9e0a3a52784c1101160f82ba437312bf8af3d768ab0117925a9ffd3bf50759c51e10b26a9311678e7af128a358ee51920ad5213c1a4f1a20648f9dbef8b55240809eaeb705f5cc7a15f72295d1ce17ae3a994d82e644b03a792a930f574002658412f62407f5fee083f2555c5f23118librpminspect.so.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrpminspect-1.12.1-1.el7.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.el73.0.4-14.6.0-14.0-15.2-14.11.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.el71.12.1-1.el7librpminspectconstants.hinit.hinspect.houtput.hreadelf.hresults.hrpminspect.hsecrules.htypes.huthash.hlibrpminspect.solibrpminspect-devel-1.12.1COPYING.LIB/usr/include//usr/include/librpminspect//usr/lib64//usr/share/licenses//usr/share/licenses/librpminspect-devel-1.12.1/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=genericcpioxz2x86_64-redhat-linux-gnudirectoryASCII textC source, ASCII text, with very long linesC source, ASCII textASCII text, with very long linesRhttps://bugz.fedoraproject.org/rpminspect?`7zXZ !#,2] b2u jӫ`(y/&f;%}hmP bO}GanB.O<{$;p``FfҙFckv.// EM &%)=f~=Ƹ^B`o]tϤrG7 eI||,wN,-{>w -$U#s}PB&T!J׍CnrڃR"ؖ!1}+0Fu O<5~ћFQB:,-Pmˆm4:5Ppto>MV!""71\hd=@L^#%]oHR:]gq ){BkZIdr_ᕪg Asu3X?>ޠDuw 煺*xE-Zu;} mүb4H@ $\*. MO7In}-Bod RoVY^%"V:l kF7~>R "R #Ш֑ 'B"%z7X?ͷZ3.ha^ Rx[[qʾ?M cv1+TIϒ:ݗ\`T,(+ di" =τ)otaCAmr$w;wUG54dԛ>XK˙ր1YaWCIb"ROփaX1j5YE\ iILׂFX,E`_[}W\P QjV(,x<Udd1ht%Qrqp`¹zvbf% :2N΍s:ZYi06*,)u_=Ӳ#iG^uCW %T/ 3 }3YyGUyj~Zxd3.M'ܼ" lN`+09}v+We!Ͷ} D"'~G^ we F45 ,!knxޒfH#C(Ip`&4r/o#y'@%KmR? K2hBќ5XfP;^νCcH9;zTan&7/O+d ֲG.(Vܻ.;z]ϩBW˫ALGވX7/;Z;ܳT߸y_,%( J)O7«)s 5+P6yVDXZ<7$ I^CbuۚUs=[l&^:GBUvG!{8KA\ׅYJH!rLrq&4=_*;iOV|+;3/3ņ2N#'Czr/Dhoe<AYLE=XO8Nm< 3݌;gXUhH0H pU}Na;T6o9>c)xCne='xg5TR-}x(ovW麽`qۡ}auJekĀ\+4A꼀E"PHdn5=bߞa4ux2 oqFZ.Do܂dBTbIސY{qKAEV%Om#f4'BSݙBнHcy_D/YstsI$益Z2+hX8= 2\ɿ7b[2+l*ۨ!t@Taa ڌX.˲{v%ЫTh {d*z"z(,z.|fb!I.oh#1cPS֖Z~-"I8L snۡWW]ȅrLy7PT9(b BZ?ilX2f[1CAJ$>-ʃ@rC^+[w%OO'%^8 .`!?Z?v=ǀLUn؊(:Yשx&6La?+)iGl[Ik==5X6AI6$GyB^\,P-%dJDkdIBG)dß 7i{6W_\B6p[lH\i *5;FD[\JjmnM'y: _R,оJv6{E0X JPH-r\Њ{(mw,XWG(tK,gn6lS"B֬ 4딷,R#_MmέM{@wܳ"k"1 F>렊e֥/TT?q)k5dxW4bҠMS{mDi>er.@m$Z@]S[uX-)ʂt@!\2|V5c&$xw >aΖQid`re`qXY{ly_"e4z'9u>FpkZZER}[*wCSs/ ,G| ;'bY0u"{PZJȨLJ[*7aTihSr)ՠԑȄc2я=Jm䏊* . 9^r h0]6fZ/}x@K>ՐD `F8+A$;C:*FÁdEۣt-;Q](jl"%N_~4D N tWj^ݒa{ 7dT U8AkZB ZUkn(`+L|d'i@f0*GuV`;.Pcթ`Gn":#JaػqB{7ZuFr  ¼$p_B`ڕP xߞ`Y}-'P\ɪ/ T9w@sp(8wLTǦ;'e9.-I/i؃J=C 0 I1/*<,(̆wʝZUz e韆IJ7juxyQ^oO1BJ@jז$~SU1@~[e91ۢ( Je)M9#?}FɯwwY5^?u)x̘j^ХiWp?x_}Y~87~x NfBE3-u$?|O>c%:`$T])5Lp?z~s\u P+qs&V1جV6軹ZG98cX`ԶgSY[|x ~5vO64 ^/qXEŔ6 AQLw9ϧ0VPoczi, |K6#fҽˇCZqE&M&rHuQɊJqnӣ,]Nt]4$TDWQY#0+A ([WeZ^{X/f䘆R<|]sF?2Tٜ8=^Ru 貌z(젳&*^bzjbj6Z巾ktï-'vm=7cMFLe-?%P``̺;_))J`tQOxY6n&ЭhQ)+; 0{?h?u(MԚ1+R"(6n۳8I`q6w(F׃ɆNu70 d8ij0,SƇXtU#C+ *o@6fȠXq Ǚ%2B5g!boffg:>NiyXLE@iP${AJu[GxRfI@Ŷhg1T[~ԥ+M .˧ s uS^Sݪ&ϻ+ U[v .<ΪK^@=`GuUHapc3˶Wf3불oxVWP" TuD1ųGw}RIjrդg ZgBM :t L|/7v\߮tU j_eE%=ka"TɯZQi4_`Gq /3&9 |52~kݰ|T@ꮈimpXQ'u+{D!=ʵ82 w9!0-^Yv]>FeRztX{P?gȲ)B%DX k B% 7dAdz53 ŪNb|K"UhqSK (W !>#ՕZ/0#"⋾Ix‚_%$.i4@t C֨/Huye{˙xU@e/">"j10YC qDJImEf LZܺ,<{ٚÇL`iTMo^(/n7b1Ku]/MzC{,Y{eZe3wjUV]C)^̼]rKqV53EIsG6fFO;vbPJjRts/vc" 44EW֜"O{͵V?d0#rn. IHiOsM 0E}ߧh 5gEZE:j~vTV&7{&T8^tȟKt-FP!ܺiqI*:n?&AT-kF9], `3Y> ,"ƂQTuCz!Q/2, `31+#2ϱ>Qed%/_0T0 3iO1͐C"<KښKw:GP'68 %ʙBDf pQ187;D,Vy@@55s&2)EOIfʕ;?,i1wS% Cb_o|՘EV]V57tۻ#-VD&RXZ'f%N]/cYCǻu@rSYu[!MT!Cuh}lT|^ݟnHwɡzhMq u7 )I[t؞8Қ~^ё姳ڟm|NR6&ӛ(I,uOs7:3AHʈ0@* U?sC`ɛm g yd*/Ͻa|ƭv&4#4WM;': L0P=xODeJ$i~ġF2Rך۸ed? DN׆U)7 >:bg6x0LSQ+JsP"^"+OW]t\6l AYƸџ =D8)* 8f|Rꮺd^jԛ~b/5\\$9bRCnfJwu <xLŀOyu%mz@]s /F +X:+f0joqqlA\j' 8{MVߠ%}NAP/)2.UN@tOܥIO@œ._ ynΩq.Qf7ɠCCJA` Ȯ6~ GVx7 )Kjʍ]b~GdF4w7L):`w Rr mISVD~[L=2Ưt瘡}?;\aBbֺHaxyta"EP%={f7@_>2c'M"U*,cթ兯D)Fu%IL@ CF\c"!?tv[Hwzq<^ aβP}c`Q!>4{ `t֏7|0U0u[Q>$]5MNߐ'Aq:*X r8?k=F=_5e0ܘi zn&z\v\qWwD ` u_&ՆL%˹?﹇C%B0} ޢAIաE<\gof zpẀTJB?/'!\ZT&6*̒W{l+Uzӥ3r< ? 8ƛ^ޮJ#Rpfi Yբ>yN{E(Š|8@fSGOJ`ql"bS2rU!sSW'{=HTD<\`.BGZw޴ :UGv`4 =a [֜0^H)b[ 61ńP6El 5~X?8h҅øf +SLtĿ~ r2D̊Cd_/|Eˢ)m7zK%,jqNࡨ^S=œ$tY452`缟&v/lWD1^̾"e)ͷ I\%/5GIb*ZǪ=O|3hAKS)}pZtDRsW?LP@==dI!ZfuT93hc4@n3O\MoPt֫RqG`УHokHTPѐ ~LgOWh*EYnsߘk)]mtqr?]s'ܬ[JD`a]1=!T^ḍ,gWJ73Q0̷xcxO$bZdC^♣z QYe=yL9TWV>$)ۡ|9JeG{ʱl UVA|`nj>yܹk@kG"S ;ka~%UB c,Ba_nXZδ^Qrcn^?phf #`{m Y_Sc6m=U(k@Mm(\#!4)Getb QońՎe%F5R -.Zm4 \AgP@/|+] D'몕ܫȱrnV|x$V_SӼ SmlG ^: F@wapOe{!|F<]t_`ZhX9ʒx8KBn*tD`4= "1zSzS|=Α~ #YI7xwo볮6cZ٫s˴LI;6V>>u轈t ʼnr;njI,|+(~r:wm] m6R'"SfЦ%ɝI !"4I&sPBU':\W5;7U}nR]vOnwĮ{OPIyc4,戸JGZbw[T1Aa!{&)#h[ ?HOm @:U>W0~n`Pm.vaK6u&0dU)swJA<-5':%9"oURטё*h xF GTnPExfڌ]Me[%= 4EU|Wfէ~O%Dgi&- s38\QK]-ytF 2ΜGp+7frD{R/6r:gyحOaM y+Ʋ*bRuS"U VD_}eLS#3δl[ox8K9$|l*j/?N"/to/xVyG`~Gd<7xϚ J-l<1oHhhcd.Di"G0T\w> {WTk7Qb Y BP|ob+.UjVl@Ӕ@ETg 1<$m m_ .ij5jx1HYCD4{^!t vҒJcƍEePРP#Ӂ 1[6[Xg2<* ohқ>`ݶy0Cx # =Ն&Lu12[$C_Ш&鞱+Xk Ĕ6,lb\_vL:NS}2+(]/&:f\c'PY7"ꪂFBq/b5F}ylz1b[>bn ]dɫ@U8 o;%} aJ >^ig?18;LkX6w:8Fs(ʅƓ~Ǧu<'W~< HRTAAS3u$oN7P,):0D6#$L.k<)pV~=sT@7|&6 ߷զ#/6==SPf3)K N6O{- KDg܁j@վ}ic?!zi5U(]N`ҷDo}hI(hX"l-'<@,&D̥,!iYv~ϧ2 z+3=y?{J/nI.1l!FSJ\|-oԏ6n6s/@O{.1IbQS6^p:d` 2]OvMy143Oo/9"6?pĸs[cVakX(QJ+LXf۲L3!A2\Ca\W޾<# OV2;YsO ȎBK*.hlQU/gL\Y$,y]1v䜴BP]ځ|tuSQ@eGCIM #NO̟sDwupou$uA~6 ? ƋQ! L kO|=]ΫwZ+*!T6ٲD{LrGua`mDNhGzh䀼 2zbBz& !}_< lJP`@f%~UQKx3At i4 rNzQBЧU*ۮ}U*8G!Z=!IkRH7RYYWQ9HP @d =jpmQ9tw&gӊXd&DdoRSv'Ѝx_a I,>t*MѤh{l $S$[k)>. F&"ՃQDPO2>$4WLL}PBWl[e4|EsöWH2ɔ=UAY@;\H1|OaձuEQkEH>LnZ[&F2I%*[nSl"~;)A$n+XNf/*!r|{! ]nU'88ߋF$6X@?qn7g[ݗ#;:g™b#Ņryߪyj[yRtvG(0yjixe[oL<&RUe1ar*VQ29적Y[ZS0noM K<^ |,l] i?&6zף|AoxdlIl6]Q bɶKc?nxX+j]<EB i WB`bPk P^q/~f)hhy D=ҬN;bw÷E獤שIH=CsVXc:: ߩ:T vz0p)ELZ`~x_q +n` ? b;u*HTIq2pcApWL&ê[SPQa?mKB ;G* | ob[mUzd.E鉟X|Ju;S v"N/_R{Z?P^ez1/)4~sfF6\><<`&{^dbNJl'Imc ׸NLu!X8H?b^(IqgD/h:<*D!CXw24aof`-jFPqmVIsFF }S;X)mp.f%2g7"~w3* s,7 !+/#kZE.?t# 5}m ܻ7viQwGtjp-v;tY,܋e.89,!U^-LӺ\2%>i LVtH&Mu6ڃbEm0w9u]e EP F͞]zͅ v~n0r2̎w =đro"7>P^Zi]Xl)OYt 5xޞ g y+zgUbK\X_Syp7-, b(_*7HܔVpg0WBln t++@ζJZg8Ige*0}[Q#(=E躹hǨxqrg.-p]!z$<9\I^"o'B+A/ X<;/Vx=&FvL $ِW\ nZt-_h~z89&kMHl,IWt47 ΢ZqANbX1-ґ+됊naJ˽8L ["~?wM,9+`e7LeOz-UA E]6I 0+:s\Y(|"|1'+OTVuJ"n/}'a e/糾Ǖ/H&sdeXv&\#@]ОφS)~)sy-n M' ID=߼_L"vC+ZDs /ύK` /?XkYRtc@N#'iUd#1~X,9;^!#[t]ib3> 3ï ۗ4#zH[k t戆 x "X^nxBejdT#ǧ plZ҅S`+AD>C3AO,w1C4Zq&7q 8Ь4/P,JJԺZGb!v8)8kڙ"&F(E/jƋ&Lo )Qf~ M|oŭSy Zv 0Tү 0DE죯dt 3ͥeI'`C<ޜH,lr)" ё^ k(YOM)˥3Hoc01x`} n tH~~joI-}{VQ@"(r'ZhC =:,PH>DQp[x )u:nY{S=Iɝl7 s,ǂeʳ`zg^]&+ݰ%mݚWɱF S7ܑq^!&,OS(*ʈ9xE42@^]|-0 >lA/k"Q >,u5\ݩ@KoP1Q;ʲhבblwЈЦƛ)Z9X!zD{E+ c=Z,BWymorlHx dPb(,/;`wz侭}#FJ628%3<&ˏP#؏%+ s-C6.fŜ;#a5PYY G2>3`Qq̢U@u]mqVv&-t!5q`h)#TFZ '/+.={V#I;4Wi!L-z%h`"~Q}_pg¦ U lBC8Um^@ܒqv-nC2 Ʉc8 +HPm}=Y'@µ&d#1ԗG؜6AS7"u[Bόtm*0"ܒ){Pݩ垏U+قVDW&`JS=Y0Xmͭh=!{P|$P<;|ITZz +i|{B%qeދ`1lo߰K!==]ZpB-k ``~jԐt}{Q+%Vk]?$cjY 8wszsG4jCr3vOYf|vjfdjᶊ;[,\gcgZ{utdw44ʲVBKȆum R՛Ju~H?|.]c@v>)zTpLh$̀@\Z:珴2Ccy7NrD͗>90}!y`4P蜫n`x[Dd]1eI$azt3{:!(VC^~Z SP6rJfPh<)lCu<y5G%`[c:ìf 򙎳 ȚΉ4 Ȍ yMPڶ -kѸFѡ9KaKZSxX@j5YOY娿ے}\NXEGØH1Mvyϣļa[#1FaZIŠδx:R"ZWjh?2t RȚf{%C齌Md}pVWy.8釺[{ Šrc/!SDJLe%,2ԮQeX4iGmh;`*Ȱ ~j϶mu6\e'8?{_ `GuΗk}UR5in:H'U^|[p*ROy!mKhM! 1jLSNkes =O$+ 'IT@]_zJE 76J?%E<1\y u*x#z!Ujphqz40b8V ဆ@TNTa7br2CipК7d1ԡnOa(c@Zb0Q.ݷ±^@/ n.GRuy<_ 2П AhPNdE-ryRyYzJW`$,Ҫ5h8N )Mߣ3 ǰ_A0ȕqcS)ü$JdTD5(M Ä2>w#-o)5NAE@л9[3Z?DXr1>Sx9E4J5UTN-{/)97GTo[PQ\+16e[Sbm}_9f(uR SdTݢ60ϫ+XIe4L'{?nFB^cѬ ARMc_P&c@A?}HjD5I)25"n,ɋ,7zk 8jBTa T#a1dZ'HfPrHn,KUИuI;YWB~5qj\t᠌W"-,̣"A4& MgvG>|@K۔K p?ن Wx3F+L[ 1[_/?FNxK8|G`negeȔ!ViDvo9 P96xGzQ {!w]t(Cx+!ZܚL鎞L;_ܭW:o$) JV ڌ\UPBJS]i@9'w[O,ʻL|wio0EaN*׀ ?%NDjDobc-œSRnL%Ւ1 qC4Ө"(`[]~bsK]/q zD -*h` "uˆi>VlU@2@lkP*¢^{?>  ^=ax2{ s֊?8ɤ^#<r$*\܇ r8&%j 9#;tgoxbW9$/31ޘОq0i )gXΊk<ˠ;'Tbahfv~45IC}+cEHU#0ŕ1$%Ƒ_MX̲v`|@uNNCCN@\ hrCnV4#Ie]TBMEwv!Ṯt̑~\{|pV';I4{-jn+"Zh@>!%ϥU*.pg6) uW]oYg`.SP޶"ml$z_+?Z0R"v ч^v6! ̀Nɽ˻4pQez>$Rpj&#X 1&$5K#H$?L|C!]$+"d95yGome/~ph X~ &%V7N2}^+ns/9.2˷0xHd[$ c:WfN^AıqD{p{tW>jU!Y!u(!;$>>NX?U,K?]Rg]wy=+)ȳu,*Gx.}n`rJڢ7YH6&%p"xBTWf<"dz5&*b`$43 q2O <rlWQh\f'MaYCH?zKϨU򼍩Hm/5YAOo5EF; у)!*Qv-jE\x:q%#n\W!2N?ϫDKts&Ϳ t+qALѸcdRevbV7vdj\B^BAdgVKfJhB*uWhYDXA3քvu'i}k,R?qA %-},͌G)@l9\!wIԃb޵soE$|.n(1jӇڶÔ@XulA;6P Et6/}ի;9:8MIq0\m(Iu(qNްV, ~!pA IOA7(̩ZjYl\71%DLZ us7[ƣ U*_ S&~ZFC,t:n{utWcv踯c/Ἅrs]M7[v1o׌ (U3RbI yEr;GLа_?ԃG[g\/8s=–luRnd 1m\uXKH\1h)7sBhK5WkPU]& Zw|ٙ`FwdA65Na3>`=ČȆEV{vWb~bc#['RMD?1Oots}Q#V岂Қ4 X2:ubyazN qZ7NdAxvz)@hivƦE֖bkc1_Ҧ_^ӟ)9l* -2M8O6K;¦O$q`ʁ\V7Q2 D-odiv&\DBs)Ӕr#m1`=WWmcl?^^(¨=CoD"T/ؔ,ܺBbHҾ{) DB9` `W h= fPRn$!IAl^{@.npB$m+iW4ͯň^ͽwh P ] `nQo *Z8u勉K$!#]]n:k?x*Ak-zs߬ߗ'APuNlEG6@p s :򖻺%D,NV'$]Ren+a3~K Av1 肒DpZv-q3-_-]ɐNLY9*Q#'K>K 2pI/cw[RHnK$ ALUR.8A[D"@VQ1s0c.p:zp{!ժ%Q_7, nHR2>(7ʿF2jlx0ێT}n֫k.WCY:sKP{y_$MKm.:x,v&l_\%6&Qi_[cVj+qn.&EAİ༵DV u*6psZ5OiO2P 椺Jd0-[&t# HD'8(+h[H[TtP WhV˦a2/^ g-%% 88Лp" &qG8:oʗQIW4-"ƥay,UOfxDJO:6%[RfLjbv 1]Dv|vk`h#=|DZ/ւ䢜g;g-oNv:Ytu5ޥWl &7f^9Pg*hEM;xNI6Qv2zhd]IE`y 2ewOŲQn.lQ )VUjQ3bPIg٬`}0K70bǻI28F.LF_e],Q_d82g"ȌZL\7~}t+Eu b"zG$Z#߽L;K.a-En!0s{ 6V[B"wiWDxBL&q"ro+xtՆ_ A~fSopA w۔f{!AAHNqtM[4f8u?#NyUzL,ۗ* ttz-kdi jeRu"n"/EmRE7q;* ;D+EXPRRUv#?f+4Uhj -޵u "ghu<;H -W./ $ Z nXMQ?GO5IP?!]&+bbz5u^i&د$fVb_'!2!("kX#.m8'3_ֿ:l-U%[&T{@)7: ͻӶ .&9>h8.2]c~ |^1vhi++f,#(_STNӞE 0[#i FP1LmJ!Y!%̞P`*3q5 bQZ>R.7'(`*>ryӆ]!V|p%w8rt'A`.]SƁ;j "d.[ujۘ@b-b)~vG'Pei$/Ƙ&^̏s|`#@W<܉(+?WƤM6R$DWIc](4uB$tU n 5Ob# GUKIɈ|:Wl7`B`#9}1D#b3)zkaFbBOP|< qfe]CNX9HF,B<1WAG(Euch7R,7]' 6䣁}M%1gsZ~=.|a##?i zߏK<+Q =Ln[JݕzoJIXs.PB CKZDl AT:`) I+54 ֬o50D]2q"QK ˹ۃqq,X遃I^+Uȝq$X 1&DžIz8UBJO8ɇ6T$?l5,r8E| 3 1;Mt 3c9o~C~Emp\CFGN&d>uNoQ/˳˲7㈲lh~Md"EًbSsj{\XYT~)Q*T9< \F@Y{Y^ IUߜq , נmԹdu%H+S$4HI(xj9J!6f9cX™ToMH8}Ǹ^lY%xn;iP`,Zr;Ϸ%sš3jq՗໡p:5ڽrU/Ih#Q]X}f#'$Ӽ3<8ő`w߾Ҭ~\a3,|Y9'%)Ȣ[. 夈ӵg ˅7M,( ڗz4G2IW gԋZfJOSGڧoA!R Q:c<{ҜPǝ*-['¼1/ y!GA,VSD=cJG6:D$UMD:&)*ХKl"+KM e3S^r 4AMXSvDd,D=؎x8Z>7/2Kݕ9w,ɎHe^QW+{WI:q>2d Tb> TfI̿LoX={=a0qgLP3~iv{>:džus;_|п.xhT]A`.G$rZm"j⢑J1DgS+\ɧΨ #P=2:SNVV'Уc|0[Z&tb /9Uz20-ȶ-O#hou%͍qE5@(SH ڰaUm|uT#`Π.cà vZsA'@H!_QV,I`@3o9su.q(Xc84@#qNLKmvzkԔkZ[8}=۞3/v"P}i 9avfa+ I-Z+ f+ԧHd%e QcEAOHq-:N\`Jhڿn.iK6)r7vYKlZ!rhv22]i?Hp06m(j%B75M̳@v<$-s@]diw6{=rZ\0xQRc=y'C9@S2pm76wf$erJm.m4kQ4v8g'e+eu2k4h.Sģֱt\εa:WÉ-$4b9w6&˦ h; f<󬿍 E#\W^ր-āT k~yZi^.UW9L:9ƇĂl"ʲ1 XAȡMI q#J&Lmֺ5fYhB]隷WXy|!K$w"cBtpxJ:*h=\r }9nn˭K4:2b5U7}.4%S@ȤyA} ,#\'a & D" |W6Z~KPDZ$UQ35n4#Uzژ)}öh&^p}QE3 &-W8Ưn1CM%ri~'!jhzQHEG?m܉f'4okT-Lbѐ۷M.zp<39I>0 lg]`k@ʄ" 4ɭ/ty_ bِ@ՉaG 쓆`sfEettjfxcBm-geߋN5M"^#yPFqۆortT Qdz;2@4JM87j.2`=E]%`O/vgg7t7veide 4'qG/\Bgȧ  >$7o\qq^[8*iuvhr`X#zrzCʿz#\vҰc/]AW枘V0ڦLMbt^^uo1]0n&obƚ(/U$XLY{]Gz 7< *NdH1t#5ׇ2)sӟ{7u,eBj rѩtبZnM:g[cF54%g&["i|Pe6Ƞy!"\9VA@ZXCǸbRhTQ(+FlO,xv,1i! 4|-wpI}?R9SϪn (.`{2a܏a*0eH2:9Ku!˝\M\6!r*.f+&EiHЕkD^΂3]Yx3|nuxX NxwK@>H^6bæ7K}ֽTӔ]yl-mdǷ?Xʜ7 peਮ8LZsm.Z #BWxo7bb0?8 Re"{U'_ d@ޏd7 >ע^,eOe% Vs1`xr%LLjx$ex9 cR;;aBb LlTOr_ŻAyLY#ߍ3zNpFܠu~d ^c^fάS ,'wK ė}ngBy;{L.};[:XF,M*48A < D?B\\~p"sC6"۲xaB-+Q_:.1BYkзE%x%ʚb --Ic49#Ye"RxY5 Fcԫ@prG- {]~{$*V-|e_FK x%D[g"r&z$H_^ .(<,k6?ˢFrectgL=ۑHlTzVG4iA$??Rǹh"s@{Vk`;ASc-KXDVkFjG%|hMz,#Y\xHyܨG+582u|bMN{Cʬ3`=8qSbb0 Gqv4R&9ԤYL\MPbaf*x)p+ql\" o\DHxu,/]0 P 磑Hք.xW#!ZYՁmiXH_ f3JqIGװ y:ghVj.# uU8FdVC"9M_{<`=!pz8ؔVrUZr5II2nh*K3bз<;WWEgpĥ$X{6)- {>ñ6@ef ^2 ] yvm]V3[ꗡ#Wn,J@ojvЊ+iŸԬx20wŒ\8UWp N*nZ;~LVk\qbs9ysz9?opIJԳhy5UϪ@!<# wSG+k2C|r,(}U]aUw8rZi扂5?j!C6t D{ҰxLd 3>+fJЈãwd!T,ոq hG`zv'Zv\Nim+hbNԍc%ҩR4F)g47]8M2Or / r8>r "څi7;hq.wG)p`Q?X!n4?[<5gDg*o8 M$xR?$15vO^qqdqm:ըf Zȏ/A鐅X˷NPG3 -u o֖vߛ)NҴ)S&㊕[aB*|lUV<87FG)]+r:9(Z=G>,@Wcvt=J[;ז~dS6\&j] G}}w~Xp+DE9CFOnx#+Hs{] e wpBg0[&~t.[Z"[:H{qCxB[+Xn@:4e燢3Fwq$\ S Kf Cڪ+<>Ws_t D@# iOeiKG/%\$Hu6|DV8vlL\~̀? :\jlg:6Z6MVd&2|+o,^0L3˙KW͵L޶xpF\^/SF 5 v#Z*tڼ5t?smO2cL厕S>Z|.>eLR2TR͏I[X&ppx@2n3:gG9!,`oZ XI(0qjTcézR (eK96uFp#At<5Vf?V oI۔+7H_m: 1W?YS='d>X<4uq -S<GiUuhZr16ץXQ &8-K]0 vwʆJ@^) @Qg2_ur.Ms 2 I:)15{Ryg*G1O48^瘻8-N2]x-Swv.;*(MSd8Ec(Tdy*n4Jh.(Nݙ:dJWt?@#Dn $١,"FiLdc ^2؈HtsGdA@nò;sr?QHy'ҳ{{NYqAyx/W~.'<{Qnow!;R# >HeI橃&~=~BSȃWxe_pusWZU;=>VXRYǯA<.^6h+̧KKIdH} Gv*?I֍859` 1] mǹqp{RUdiv P) g .Q[nTQlB#8Il`!`ܴEoa 9e~u`Xg["bNY%"GՍ tS,fZfw8ߊrw~2FW3XuyD%;vJ:;a{4α5{ GJkIʧ~F9!Cg_V*C j'`r@j̼]آ\FM'=NetĻzDdłPZ"nDl` $H7pR;%{HN(QBdf!A|bP3vv>Lb{i =v2~[{~ȗS-rWdzQ UXlUZ`5MYKۘ m931BͨϕC{$|߯^3gs)<ߙ~Nyr85&A6hsUa Mr\p|x%UۉVOVX~GAifV'BVOk)my"\Y@(Fw] p]Fb=e9]4'yAqd!г!k/Iɾ +?bt^mC`pMoR=^B8fN2︡fWyPc7f?P;?N~UT iʪyݳ:om7rf>WYsaJ&~pAǧVi8:&#_b3!v\M ;8hKWw{~#_o-? 7n9M`/PI?7BHn0tU{X-%dCz>ؖZ]x L.ڢjt$GUc\5ڪG|5ʓO(5>{q)aDc*սSj:ۂO˛t'/kpإ6w<7Dj{Yhu:@' c!Tz"5' JF(vi3r RUV`< ˂A< !X-!L" q1~/줫>OAcgY .SGeBJ=(dF+X6pm" r$#y+ZTѷ2MMЈ 1U"UeLY$Fu愽)eGM9I[ ,2/AFyǧb?/ܦbf 5 ow3pX.ZBmXK[č-r0S2FUv~Ru%@;-ړ@c Sgj1 zTv~gJ`~NC)E%?#u&ZP53>ce%SAk0  KUV$Q'䝰FBe_ Gݑhv®I bbНSa cJ9y?lK(Sټҁ,, A' +]NB0`rյaeqL :l !J *\7ܯsӱی^#>E5Y3Z*T+gIrUf"4l&7إwus^N `v*5;'S|Kn9, OM`v:JݢVɤ4zNQ%e˶h"TMhrW7%닟Z\J H U2]`bʸ9$d=ʓVU-]y]6C8`j uKN!wxe [8t4$P%iϢY. MhOQLC185w͙wBax˚'aC# ;`$29s!:q=nSTݧ `o ]U6':[E0;~v9l/]$!9:Wy*;Uco/dE&l$LXYZHc:%idXy\-% =&선`t\7EԜ]H=wno{d92"(Q[.zc$QvׅWox0KEo߿FSİ}>LL^x cVA]E*e2e@6' kļ|5QH9Kƾl}mXwIA)& *}M<P!WBs&mU l>B]e]2}t M'YE#p+Wy0ܮ GfK!}&Tj$̯ 2+d:ݔ PFs c.z"Xٽ+Ds,kwgBqڇ̕:{#07g>OsdҞq ,8NEwX.8U$3 ?(^cSϧ 1Ya^F.MGXgA0aq!`$K8|Xi"8}6结 ̄e03K]^@ ևe7t]Og(6,=g[%S;;8⅋iuzH:dc ( CEB *ifgMhOH@}8i '8V­͍8ꇧI=`X5pFfsl@^IYYCQFX\d<ILv>>E F %+Y[կSib.͢1u=9%B,b[j韫L.Ǯ, (t:t(Kl-4iub VֹQfY2/oi,!sr~*: 9SUW$Uع6 - [dӛE=lDo1a`F 4ʷJw(US/LG~`1a>zJ72J]Q~P?o;0.qb Bk /$h>XW-hh {e]RJY?ʮ 9LօY5儬/7&tj+ ?;ϕqBq +щhi,eǩ<̴ǤN1C0Д-K@ k0EKJ6`BȬ943Ubl7=U_s F: !?J{0ʋd |̶'oQSh=8v [ن)fdH77jVjQUPULSgAJ9 !JaqjON W> Ux9uTVI80`|;jQf@y"P otS~dhA8Ί:(.g.f.F_Bhn{8a/=N~v{BPZ6RzqFvuӎAypb*(@mnT<'G~(9Tw#,.ve#a Bβ̻ۙaR-kB=.Эv?h$}X5([%_VLz3(ޣmX`)ǢKܩ Y: ޷ z a)w|ƾs,ٻ;=R1:k!AW*^m'Id/%mJ7 ˘wMU9Av)<ίVYuIM`eqՒxm_ V3+Lgb翑fNSͦ!J83,B(PJzJir`Cc3~Z>Xr\TVԣ^g$-G^=42G'LuƒZX~Eg@N]M6jO"pgxUd3,V$F`A0HƗ5"y J9ȱ)/nvi$rY@iY2N:ֱ6~p^؃sÌ$ \3Xz`o 0LI=Cwlqʼ a5AbI~_tJ_`&ubGxFJl>33b(쀳k^CaZ6a堃Ʈ"Ib-įPb4p0*V(6/H!5ˈrYH kB)^aZ|(!fp6]0}"~+ Nc,!jM yf1c(0̪ē*e]g1Kl96r!,FUޡekHCGIM J5?\˴r`T<{\)u&&]1T+r(ՠlMBjX$d(bIXCb"=l=ZW=O>\X H}eȺ,/u!׸4Q˒17cqʯí? ./?]֓6┲Zb[ܻry1lB?ؼJ 93O8|S?eFgaypl?L?خ O}"!SiyP鈑Eہ~XTiX o_W+6sbeRiJpޮ5fj9%䆁EYp|Prn!jf$[E r`&وgtoQ2=Џ,BA5Ѿq=KC܋%T1ZZ0Qܱ;ztj`Oq|լ?Alw*l- m}Q,]qfWgդJYK? i(룖Z zt*lϘ5ltIoE%(,HĜ[mxi5^~+IЦLpnQ\E, f.N D5 L,5@""G&'Foo)(5ll|~qԫrhT/[tFL4C#?qd&P5suT>z3~[S"JTf0 }c D|[=8 r/8 BKkn^3^Vyݐ9A 4JNY` `pO>62 <\g86e)%v=YyFppw5!Ú FgvgPÂe/q!ջ&$5G Orf+'liEHzEX" \5o(:(xZw0K +Wx!Wg P42{kEG)9O뀚ܻCC` *y&Ė{$},ܼ*a`̪y;@p_1PS9RYACyV ^vjVA svN<ܷ&y!UkqFXc?u`Gαf>9L;x)=Gmz`N;"zAG/+S~ko_f0ǯ2wURƙuyODcq31#Tԩ\S"1@K = "Ek3)͵z +Kۛ_&Ŵ #_d8̢4=wC=b3@Usr 2ek7s^r#՚JwS<\0=*0Ћ&pᴃ0WW_71zj$5ځ,5j#?7k}Ax[P-Yl_%٠QXZWBc1YN}m'ˠI$`R^8 ;^_*tؠyJ.V\g4w=n)}xxJ .akH_O!$a$˂p :h$mefbpGܧ_D k ^v#gdU^3-PFҗ yȞ@NC/=[l%OiRy 8A˿l_ :珏[,\@jpJFt$ݻr(w+uvdsw,bþ¡O12n(.IhmSeOFJ$۾@.J 0oe@{1b,̸M`V#|6'\_FքO\CH};FhȰ:bl@ͱ^^.efb+"Bv0'ȭ>Q:w"[:ÌK+. Qcf[ >6/e{?:iR;$* &o;{m#KU JP1I򳝦4odTJ_')0SńognHQDg"ڂP& no2C$?\KlC]C7O/Kwq"~F!apKTrň.\_=)dCj˚P/Tef>u,c 2 WgFA1bg35j:p!o @TiIo$±ۓH='~Q5fE\1>mT5[YW|?UᏄ"ԴNs]X>R&E~^|U/c-sts4ct*_ȹ205H?ȈsMa~sM VN^\QǠ Sr(h:ogEd.DMxTutg&2tF^VkIZm.m¢8-'vHwe]l}[ H^4tAZ'NE eP0#'mr]Z!cols %jܧ4( IUDpەNN F6( 0 Pa}V&١͇KPKBKmxj ь?^3G_if8z.xP^AzA6潋L_(#I\}PÐ6Ez 'x]fE< 8=)rȶ*2&HӗwfuCf-A)V>EwHlY7mJ}sg$we+ (NX &Ġ>`v](d@  o}*B~:?B,Ws/y֎.}1G!qpŹOUŽ/ 4s]@)p(\o= X+䄅j1_[&ׯݨFe$=".Qn Nx9{.@B81SdtktˎyT-DHjLOQe2nB.E 0F$]DcW_ ZmqV˥.у Ixa"-{Hk2%7UY^tS Pl8w'f1|7h6J:kDX2[{V ^pVi+r9XA?4KG]_r`ރQ mg%,):(1#W/7Zo[۹`H\b,KVK+_a<1ncB/ ̃ۏ#ɓAౚsŬxnOj}[Uў{DU@n2~S*O7 !7Ee2ٱh#cdz3[`NX:\ ?āLb.됙mvbDaCkj|1.>=)5kPQAm@z`/q ZIXMW k%E|rHz sX^o"eM鿂#a%\308BcPVoa[G5#8 ;XR:9,y?] T_$V*Q2`C llc~H)-_=;F4;"83aT9wX?:9A$i4Ђ =;¯z 0A5.¨9zxFku\TNUnk5Kx'? QC&Re#̩XeԽOăK:s{eN|ʪ,e;.B8/=dz6Fy/`ŸzPoOש1V6{f5ϰU0 %:c߹ Hf#s_9o6ԛOԕjp9 ڦ$(p/ Tr}:2W>>@!EvDAKl-Z;:]cB~¸*^GjZCDBA3%F˩+$j [C=Q0_avM~`}2#~R #d.PUlL TȃfBcÈ=)'Cؤg`*PNHRd'P1WߑѮ?e91Lgk'phɘALЃ{K_=yۅH?Q_ N䟃z:R~eCTM"*땮tc%RwPQC(=0 ݟ2q!\P.FL4^Z($b+MV-z߾WeQsAriÀY=a<%z/zNx|PnՈlp-v'J$ȕj?]gooC|2=pX5@}A1VUא[D/UFآhA KH.D8/_7&3,CuX!c}ya7>()&dGFBUœ }XF~IpAZ…LI!sB~L %ȱq0'\'I0aa$a7+oh+끣9k$ `BuPe $ZX|oӁkJS R=vXʋ{CXlEC0oHQU #©y N7yaS8vY.}BHT q#U=P>!gqXPACI4H"IȚk[#P݋.\!Iy(_-v(`jO;qh01 I(7ю+n#>KPxvKŦ'[A5mj{O5K@GwY(sgUq P "nH#AFKcGmseW$yb@53//=|W^*4ڐE$x3p:bx|-&|'pMeR 1MKzjͽak9f)oDGEC߫P9}"V٩!0g: $?fn-PC@:*QOI]?J(呖'Oj b> 7tf-_c} biVo *N)q,T`uoJXixVw%o2rV3@ ʰ 8>ob@qY?ߨ욉ȗyEOE֠ywucve;ڛpH8'Dǻvc7m~i}1XJ j8&i'uG̀(x-^N%^M)`B8 PrՔwG{>8cZBR i"'x0$' |t‰sR3wmLRp*626дikI\Rt _8cɖ^AYڎQ-&{Nlr5` Kz1޵C#F sj{vZ7c?Il։u\]g-#SMZU s:쬝l6l05iZq/A3O3{vrv0F%tXKAc tCLf7Y_%3CT'k%Nv-{I\δZ]n=uchiz:vDlyU'8\!:͡MO,?wVJzו<:gel>}HP(lo#9 T#p?#^C-/RP#΂a8qȌ L"Zx$Җ&mߞ5Bp9((!rz"hƯB\2lvzK &Sjp?f3*R8vv?ցX}j .c`ODg(c a.z.fvܥHM$Z>ʕxF$u  9L<PRxWW>*e=(yo(hcWwj)#ඨ<,A\ #Accɱ5Qdd϶] dߪv=y8z5~[]/--Wj'HPk@Tp7S c{`ȼvgj(uޕM6o'Et&i*rm×)!EQ$XuD p0"y^R[j0C`fE$n!ײ|eKl^D]e*5Ы}mYqVet})LL'TOϊ( h4^OүP0/YЛ$ϒ]k+?/xMKj9A +apD GT E솇#`d!sfM*2 7s<*>Ռ?Ʋ<=l01Ps:=vM!Qq{h:Zل"YCRr?zl71XAGᵣnD:h]:jȲ6k)xު²7s/a~LY{.U^JN<-AI#fWYPϪΣD=#vL 9z2[UD_m:M tp'Be9i'h"`ڤ?quF/B2^N#R5729hD͒mt8 9{;|]] D`4߻-y[)o&_=Ƶ$ W`iv!g)zqІf ҬgM%zyKCB2P8+ŧ?. g7ƥNNM"f}̨ WFfc #wv?gO {$ս0KY>gޙ/Wtf nr&@(\$RX~fB&5UZZg+hb=DW|N:Wb"%*e^=mkRuXmbF~/2Y;r9HSѦDVX wẽ\Z HlK= iM $oeOttnf{b1 T**0NkAG\6J[C[R b:",i@bv- Uډ |R` RCLj`F?+ l%ȮC~wɍYǓ{t*Ytu  lD22,bV:n/CܘFCC.4| {`rWI[6Jt@Ն -`2h;T>ݧ3 sΥ7i-@ {J_%ye4)/*g }KvR9ΐ6Pk_3hyE-ߜ(:ئ6.B+Ձ4$N;6Ȣ )!XBlc[GRN䨵I]7m%DWnUAZ+d䤕#+Hlta$J8f[h].Yڸ(v" SkR%l~`d֔~XE!>vF8A=yU")vz v߶T-ykZ|Q, *#~B\/HW  G\Y.Cw.oxwb_<NJ]-Y76ց\򄃺/J2:i媍AE$Fn?a_9a$=AWqz-f0.GKPFacS,epmDm,\?\ Gcf̝=1Ycr~ ݶ#>Dcqб 6C{fkڋQG `[C|=[h~dZ>F`QEnl-s~;$WmCx|E uPRi^"6qOFxc2⎹x@jwi-eMQ<,\+3L e՛#?nZ-v+Z<0/]PUoǦ[@GСFmD5ӍɎz1ȷ1<-@IāO$>=`JPL?T guXsޕ 72=&I\`(R8;U U&ɼe:+Cl{3~pyoPvj2/;MFQ.4sTŜJt<0>{Q)(קARF+@|CJغAl$!w3 YZ