librpminspect-devel-1.11-1.el8 > 6 6_6 3!y덏%!E/֡d !E/֡q6z$/|cPw- ǂ`nqur ; zGSjOCcLf XV9HЍeY2inCtm j JE-,& ,e'dA"׍O´h6{_Ә?/5_-&@u-Xյr^n1dK=y#NWQ0핸{H(xk?$װ%AI!vKQx%p(>|tW%5 6ISEl5VF};1=5OHV\9AnlV`(C)m> "otve; nBimgTkNwjy8YbV3<2~ԯ 6} k;eNdE~ΆmSZZ[\+4C9T!A99b2914baf71456e7400245b92236381f740f8d9fda60e642588087ef230e6f2b0039ea43fe628e73ed2a7e87bf934b0a26c70ba3!y덏%!E/֡d !E/֡x$q-"RlP mNm뉻kd|,\-;̽7j7'U9mt -;Vr`MPD&90N1Vrd_Zv VJ:l'n*Cu0e,ð|ݏ tx3CqlM;o2/>0b^rq6:7h'tPgH5'Ll[&=<y:Q Zs}h*+ +HH>&>؂pbh+2QyNd0x;Q1c"C-DBU>8H1}:3iq- ֋Kfł.3,wuV`)zHe,N7)̦I_]TK%@$++B,*126B*-QD% [jbtU^Z lPk)AYBߧ~Α &-Y嶽~qa 7T%:O yD%ޚUuTCv1Z8h>p=$?d ! Z   0  J  d    %  D x   L|)(Q8X9: G HP Iۄ X۔Yۜ\۴ ] ^܃bdGeLfOlQtl uޠ vw, x` yߔߘߜClibrpminspect-devel1.111.el8Header files and development libraries for librpminspectThe header files and development library links required to build software using librpminspect.dbuildvm-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_64Jӕ2:mGy A큤A큤ddMdMdMdMdMdMdMdMdMdddMae67d4a497e8d3543eeed3e73ce8a9ed924614fc1c5691231006437ecbf7bbfe806cfa2afbabed4db7779fe56484a115850cf022d5b789417683ec4c4d5d60582bc962144d411774b59827a4dd81d04f32f1660aba1e6bf686c8b0562fc37d9f1632ae6aa3fc72999edb139d15de6d459add2d1882602b2741d73e48a1c9bb7da146e415ec0b208b5794e5d5f7b8abba786dd8de68bca2799d2fd7832e5ef4d08b105ee9e648107fc76d322c7b97ea7a36c15bb546199ca8b310c2d302e81bede9b598788ca1c0ba7b807f8647aa6919f7ddd991e2573746df0aea7e93e7769a04d3f8141724f261deb09fff3fb958c2fc5f90c9f8d5dd01bf1a3d12f2a2334720ad5213c1a4f1a20648f9dbef8b55240809eaeb705f5cc7a15f72295d1ce17ae3a994d82e644b03a792a930f574002658412f62407f5fee083f2555c5f23118librpminspect.so.0rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrpminspect-1.11-1.el8.src.rpmlibrpminspect-devellibrpminspect-devel(x86-64)@    librpminspect(x86-64)librpminspect.so.0()(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.11-1.el83.0.4-14.6.0-14.0-15.2-14.14.3d@bb\@aW@a@a0`@`\{@`7@`7@`U_@_@_@_@_[fDavid 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.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.11-1.el81.11-1.el8librpminspectconstants.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-8f1fc57ccec9b0c30906635c4fcb90541070fc1ec42bc19ff4cbd522a8bc51163?07zXZ !#,gH] b2u jӫ`(y/&S:Z/ݷWlO*0 s ܐnj1gmύOc=xlF"S* Q𵖰:[ʏݶI̮ʽ065.S{X:ʯe=/ 9^I*jty5 s0(ӋNK[nQ*sџ9Z=ZRݢV%(1~?)m U- coƌ溙>&%M0]=-ϞP4-2'vRk *q,n ߁:Sk' q i#:ĠWײg`sׇUԺWw:>l2LKHA+~X40׌{Tg,2\@OA>VUY}-g Mgfǻ]8 $lZk gz)'Ǫ*6ԣra(dPbSOal0հM#4|qrzn3#@ؘe`٬*3} }_FLt?6py|V㳿8'-6y{~`۶-h{r4z4jme[P}b 0+5hG#y~?|k}C# jWv)NǚxG%05ZάH @q~}%a@o*$z Ԃcު ?u#7TY}Y3ܴh]au7Oɣ\n'ij7@/(vf,G{I:F'-l~\)Z~=M'_tJ*X(C:x2 Cc1:J.d4%!m+l~koיV謽AZIx,7?cHyN`tAu+5DQOe|/ n19OdSl0Vre `L˙%_1$IQ*f5u'kXn0cR[ eA"k出~L Y%,sC#dg3UBd"Y;t@/U }DDN1Y:`ZV,iMA?kR9tY&you/iN!^od<ND|\_.|xhrY7(R*U ޞ 7 0 4>]m z{q,tnFxV [K;3i_L>'0ׂɢ %8*vnybwc^E`hc&`0 0l) tJftxpSrDrw riߺ'$2X0$OF,\NOB5Ӡ|=p2+{ ^'S@y~'Mܻ'_X_𷄆^.ukdwz{QN1aa@ ([{d> yz.;(:ଣ+p_4z7ax(d~qȫ0W;NoK`& L [ y)z"߿F$^mp"ԋbʅ?\w`nHw&"Fqi, Z/09!Ƙji!g,Y7~H-VSH뉀w_n`*Yj&OQd{7q$' o*p8̠DN5$+_ AZud0mO[8Oh޷Þ~FQ*W }?E66\Lse;|Cc56Kg5Wb?( jفΔur'TV=rҁO3k}>_?F06 hDKrRVZsZЈEm\0p rrVtʾ|2rAf|́&ӆ57u}eʶA`#E53^0rء?9.ڢT̙|tRq+ݑQ7X6f%`v@1¡ 'h.=UZY>0Ώ)K=X5Owe/B kdz!1O vF~ܮj U?s\h*ĉ&#\nCqn<e{88b}OXׁBb@ԷXV=s@V,9ar1NvJɵ(W cJɜb0+Fgz5)/۪F'KmH JV 7Re-};+nF{ݨޘOY[|P$FN٨>)(e.HFmbi Эk@U. \}wKE7}4yv?v+E( mVÉozZ#iwIe^knu]gu}P6Qa9(((#B(X=pD@}.<3sst Rэ^,FDxypf-0Scg9L\iKY? )Z(r2(kXVv3IF,\{[Coe3֕[rO¬ '])3ģ_`^⸓qzcqV+5 & h;{5NrC vk%iPyXTD1Cp)HlA h5K38 r K 'o_~zMßT#6΁~NNp"%}XZ{Тe.|,ۘƠX2cY\{M.zX®Y'{fx.؅)勏*YL#0uY9w犣/JDf_x䪜DCM8׏4?QeqqdO׃l 3)u|e`2xODzT6^ܷa;Ł!a{orK4>&p?@ܐtoAx ;r;.뢜KR4oA'"=RJ7 H {_$neuZk-nC҃I`ܢ J[u.fz+%°Mv+6@D<_E5VspF'bT֎C)a)CIyIdwTmլH 'I3-#VMtx$ZN);?|.#DHH#6$ұ Y1̯Ő'ݍ2"9fkdn SM=Ơ :c7j­Ų oZ594RwtI]E_]jA!n(L$o7,qUS;a($U}ШD6gD0S\m0f-=+wI6 "aU/ƊyWY,UqwۤiyqR8ӭ 3rA;pU>qlb{r)1]_;sگ7Jzf{\z M,A6$Bn|})>ua?e0x֣[]|\\^GT{*/K}"fL& 2lh>f|^a.7rfyHVr3ˏla ͑VP ~\gyt_ (8V\/_xz4[4ڢzc.yfFf-?^H:c%₏ps %u3FOAh>YRD$G`5ʗ,S-wn[ $͹gKꇀ#0Xa՞P'RUAEaTC}}:pbF nK&0%?6֫^?Rr"0sjj2M ! r8uTQ0UQZxIz#`M?~[Y=]dB-CeuPYƥòK3e7҈\[dϨ,{q7i;4tA7s^=%ԾϣƄ!Xt>L"s=jVō$u4?Jz' 'j46 aSE ]Mzxa C A^o+E§!9Dr1l>*xL5g*O ?z_wQLgyS`+]787(I7:`rԐVjٿ~$$0Ħ$F+.]h-FS@q#0 LۢQGSwcJ% = L ?̊,OO;b%.ǧW/Jn3^-g  F 0pZ+nzkQ'[txajAK{Jl#^2ݙxB[33]9r~d@^C &#zY <6MgtCư*Z%Bi%:F*;IኚbUDmZpX\Q^jb0-gpCnfA%Q|mG#RVC&mUA9܅ DS/o|אi*kӎz*1mtȞO8%2Pܵ/D(-ا1;|_~gQ—鱳a9)4@tTtP"zdx^NjdBigzEڟ^`O O5a˛?.& =aLυ*.r ^vw?Η$d 1uqVVS`l0*]'N@eP/9dk@qRs C$lJcft)In5&G}aBO,JP;KcKE#z5ۿ}9cĄq\DwAQe2eJ>=e,H\7?T@{rYy!PahX@ #Bt"A8)W.tv\Ti^ |Jb.h0} ¸DL~jX*4˒ˁlB?sU^*T;+Q"ぉ{?ȸ>[򎶊 %!59$EĹAY4XP=EYMLS7Omr~;phxTmDذtyэbc]VP] ]׮Bw~1ghWP l,~܏zBlZ. N@&hӚ] R%${_/1jjxP0&=@BK(]m 1kF>|6*)\IJ*B>^o3IkHZt2+E@j}<`@ρ=Kׁt+YK^ fO6pœh%ҸRFԩf 7H: M |k$UfEKrv weצ4BR4z6r]js^zaQ_<'Y,KO{d* aPI^cuG8BIԛ0)3R#y,!,]աokT¸»m"2kaeLe0FXyz٫-QvLI^DqRr' 1$߇$8Ƥ+:P0xɯH.kM+V41ZaLJe*D`x6,ARxF C ƘVώwi9;ZM[nUGsYY ,6Ə"OLxM(OӞ&uW-AD|Fa!K ކ.I]+^:NGtD;MX.Hq<LWIz,F1?敋Ho*dyܛ{'R ڎ{$Rh$. FR; "سRǧn:OOjm| *|ͯlD.J0hC/*dca7*p fַVpҼ6~ XLd!&ӹ/Xr9Z$*yvrpfȫX9CMCGsVqY> s0h$UW1GgxXl#ѺEt6a L pWs^묣.Zqua]=w0ȋd$Z̲Euf3_h6mJ;:4UjX"js9(ibxDĕ ONV8B4svWR?:qFnFCSvs &GEBG>s1a@@CMYEUؚVoOhѵ&bԠE/+t"5"Vy丰&Tm!^ė>{Al;J<܇jN?/kj"٠%3F\:I=òe)W O<SxW"1޼mhG\HD8۪Q5"q3P{eyw2z>x9ޕFxoN޸`Xa'<ݔV[axyzxњ½_~c w$)ar㺴?z oy*xE, 5\{ /B^U+TIeѥ떟+#v%Uaўsލȓ5Zmu'2.i_jps\ւz9F]fxURF<ʮD>,@?QQ-SbnA#j 3fwUtG9ĝFnoXd5.HIКF$]uQf7+ s'aЛXSxe+8y1I-=:v9aJ_7`ߧNW6b&j#'T<QN&| dw7Haa'=aghC0Hii%:jƃ$g-nrg;n0 vrD Y!7<+>QZ P ?~vV. [E(aQzVh'=$Hu\wj17rD8đ2Q;io Hը^sU)F RS6)aQ#S]<1P̀L ut7[VJͦ&yeĤ5ό$BDÜ>Ui+e`ba[KiX KpN0FCԑKG23KZjΏ %#>JIi0W"cL*/4'6Ӻ9@#阹z=[S 4`uŇ@=Jt u("NpE1$\ӆݥJHr#mF^ꡜ=4I~E+XM;ݘv)l>ܐ-Sk)8`>d.|N;βf(rJfSU oPIPl/oV{[FOInU]9Y('=0ȱ􇩝ȂEbbiخ~ ce:B_ܢѰyA:I%\j/D%z"jV!sZF=\V[C3_¦xد+CZZN,xٮnN "5vit:q8W=bWohk \Zڥ eY$7lgwzƓEL+ e 䠵;3?FhbIIN.L1I605Y^3Nfu <15nm|?WM‘G'| C jè9@-7B+ z'|BG8foG MqUA&l@OTZ/W= mOk5K 8{pq,|JI;CT2a};fL?m/=Ov}_{HfVV{ Jy{BJ#"RuNx.˯S5ewvOj+m+q9-sN 佚% KϠyQ_Bh +>>OS\Z^|v~q&[8m3`#.0'1xs Xd ~k哆dPve'?B*lU+KtaL*et.|25lƎ0 \Zj*Dnh(d4a:saopq6:fOfO"EQVmma9/5ANIt-[Ƅ7M Rx^8A2zxƮ6ku XE]CΒ[_g;jGo%3g0|q5GՇ"fD4ЃbOaTNC^*dQ֠=|b@a@0$NW6 Z3-VPǀu}̰S~Fp;bg} YN|XpB?Pp{iȌH]LP#{O7PNΖz꧔<8Y&Vp\Ȍs^z )+UHt)X duqGi?Rw tԁHz^*|ݾ1EbāNQ8y5mp~Hŝd*[j#P-2%9ooL협a%VE0ʃ>+itl[Ÿyd=v>#} szru'k}bNw@ٲH:n_hTel6NEE0E &kGy(F$ [SJI'_lQ9 }:pAcYHq=`HO)7F"2H(2-qﺵ|~Tʠ4]k <%N7|BN.BBǪ{[ m4 M&h-x-#Lfc:yX]>lcc(;[_uDl:DQXr6Ly'r,9_g\MqD5hiyr rqV%(T'رgϯx( tnhYF=Jyl۩ A̧eQcra|j W \C|y:;R`\,;eO jgyr$@$t7n_~P&x%)>AFj+nv/ۅ{ՈP|U #.4è{ St-\JDԅyȟ ޏ( /P eFYpafӪ9[ɶIkկRF@"8 ^_a}⻄΃i^~TiSu>Bf"6?xD5֦kK] V6u$m,KMl6˗S> /ďַ B֖LȞwW4,i& l,.nFm)tu~C?J/.tBs\Xu'79ndZ>1Pz+x,_EշKF1JmrtAī\8|l],o&S^q'+wqiw*!N]- 9_ZOU N*0?rOeI=v3Q4Wf[i41aTجNoԲI?ijR0WbB'E0:9 maF#*#%J`pRpxl`Z[_g,9!(xHg8R$\|!7 H I?#0\Q90 zksW ٞlGPEɯNEU @'$X+eW0\e*./E3y)157[;)L$~RK; =(sn%,JTza?YgsN#uX<4B&(Q 8kjfHk L\8Lߍr#O+&؄Gfv9px}4s6+M$IJSOpN}sQShIyܭt 乮;8uaO.ycʜ8Y=}ӕl#&j?j}KFHuN] )^*h)Q?ϛ;SYޠ^V2ߙ.0jRRackзe2,[]35zpz(YuF!n!ԯ27t2.wkX#N1bhEo'w5E<)F7yW}ZopYR :W]uOP%E@~EElCl>y_FZInkQLۂL<Ѽpg)D/p,/-\ +!1H<:- ,O~_^;~>IxוMG=|Oy  1υ#&31ޑjP~o8Qq v3bM,h})QсFgt򀁆9l=K (ۥƘ9VnSgPXDGTZ|) t/v^<u*09N* >L xB@c~ǟEjW ]QXԥ}7AV㋹3ͺg;$ I/m16O5vj Xrhu|F ^ZB¿B6.{br}"g/9Fc;APƛ[00J>Ϳ91U;1KEIW:`* r.>ѝ,v:ߏh:k>(!"% tP@~d|A=Zv;c_bPJT '!\͝`,Y'HJi}@TLM}OD:#@'*Njݛy2y!~\U%*\%|LFp p'&< @L/6ek#L{-?M `<3:;?zK!}Z3r]sG^}_|~u]ͽa_$W51QɾSAa_I҇f:;H~9Z 3C5oٚ,O˧U3];vjO2XKNIgU&o[VI q$;{˯5wf"%Tg5fГZ7zWRB1*٬YlWxT5fF@7sQ"2^V0|p%ںC3G jOV0Ye殱!Vm ?9Y od`úK@fTVM^݋M0|PQČMPIV? Ŕ1rdy$^Xhg ښӹ/2(|J\5 J-ǂ"Vv*s:G]j?ܺ1H+CѮVN S8vЊzº"Oٿ6?y* } ą v83,=Fp#~,O\t+cZ}(J:SyuuVJFXބG٤ot)v:?(CQňJjEJR4mƀ%HFWA;H^;aQUY$cU$l4Wm&??嵡)@<Ԡ!`|@Hɬ74wk2]eE{Õ~BnpJg:#4t~z)&a5:@~e\D*7R du+0xn{q*KG!-k @#׹7Btu4S;aV"TV*"tєf-{b-?wK.KF)kU<\pLޫ]ʞĩCLJW"osf}w5!+7ڛbX|FoUg;1?֑V o0}O/77a7[YéLj}Z$_!ZjW2 @)W>ÌP$[0@ȯȎάuѣ۷Im/T$A;D.2B{ Gg$֠/beCu,sd4O9j=R59;E}v"S_8 I 'tQ!%n\r #4Ox F!xyqbPCAtyo"01%ܧ[c#Jwyxo͛"X%HaJ@zA[BE Y`hgP?[WͤZ?֨|wU:W z. *@/i* 𻮜C;^6_ =RƕDVHO_%ǒWuD#Դ`Suȴm:}aZ2yu('d{>s ?{X=Nzɡ* ۾c>)lC  Xf&M7]ltUq1e)oڒESXBJ&τfBaUi'h"p&v>;=;+}q@&J[1CɳvB뺣#AM(8_C',y3b䟯]'/ovMw > "Kˋ(q%jmMSO2Ijh.X\L=TAwL6!!ɏy=M+!hK8-,lXG\fNlݍ7f(?NhVݍi[+^Q bix.a<*~,ɊQd•nßgSzZf]\!p#-t`˚ $Wcs?,"Y۶jyFZQr8UkErըBPB~XĹt14p瀮MځZ[UDLj& [B,iO1dEh{zw݆~XoYΣ H'#/X9xy L3jd|{eheOǼ}eC 8 =rh@[\FER4z Вz\vVERnH/rndC t㮉>]1UU4tcv `aոlKSt6RE^d,1d4W 9ERf-$K?8d=_셍 (]HME\SM`3 ^uiáqDmTR `歰+O|i]B5EK `B<\?Ц1n~{ݭ$%X!,*yPC c _G "GXBpa+MzwmXވ16ת,)ܤ,YWȹ,.!aXqГ񸰯~9.0J r:NCx?qtZP 4/RH@ Lגp {7 ܗpD^X^ ؄+_7PḬnƮ_^ ߚ1+O FV_nծJD!yf Z.,NWR3 \9]_< ]4Nqt|v5,) GeЛk! l0꾒8 C7i<[.u?wךo UZGK!ruPـ6ԁmm,zvƑy8m>dr]#ejc? 3C+E|Ξ&}%&n۩٠~fn-~ة0=} U[mRv"S'_sOznHv:֣cT=KEihJyj g"[:&kSҸ4Gvi.}kZOE"ZmK]0 >˓E>~|\,Zk(n2Z Bi&5+iJr,?kzE?:lΪS2rGp߄ȹ8&=p.YWЏjبC`_"!cU1@9y6Wok'.?$XVt1{'uQ qYxV}* oWBvVQsѲIg>ji'c^HO=>Cfddz'1|3xe-Z~W\ WRR_#C6ŅЁ'(Krgv `buQn^F:;X'ZxȞAϷNKA Fo6ޞ`ahCI2q&uqe3NY`^gU#v&vSH8d!80yX98ǣB\mko U Vd: @ lA 4Aɋ>}Ze5~ZU33U:j!YD? Tpzp{vID(}/BZ* ^20 ,Ԧ l:E{܇=M(bk4` k 2f$m:AUEa;Ҹo hcv^rE|M Etx7n-͍;FꊦF)Ѻ ;t Ix>.pCvA7X(?q4 ةƴ|D-dcI+.TB|?QZ뗏%><|r^lM=:Q$PQҮYEHYkkA\w[F Ԁ.tu-B&ldkɸ*aϹ.2Fɔ3$*k}'%7x"|9r W5J0v>UBqI_st.!} ~. afEQ)zL-70B_ ϨK6㓤kJ5{N8%kJ׌6l[uGPtFPKU1ě̆3&]﬽qNR@z#˨(qwF"צ)n&52%VI H:>!o_'e5nP\Ωub05\;Zۯl}Y })o`_hzNCT1L֤|1am?YlȤ .)0Ĥ)KN@8dWxNXpV@%L!Yw,|Y SJ0/o!Z 0kS'sŇ/;.VCQG⿐KЏ W)N7,it,[oJk<2am7 5eC&˄O>Qe@,I>Z}ɍW`*;QTD 0dGDY[HN9 "'r: uBc tp.frld$$#j H r9s?\BVg 9zy)_>Ȕ2KaE*vlKE/emqX@+6"B0@ހml+u\q&[lFtZ!S:Y%-3|8-3P|.3oVMgjyc<}/2PLgc-JbTfy^RN/*sȡ_$jyہ=vM"h8Nf0|1T" xY8>.%P5^Ns}m`=q<<.䏊jqk4v$δ:<2F_?1Ĥk~ DkN0;U/02gc^U.,omt0ӫ3%`M+g V ٴ1_%h-ITEeݳ>h:*T;36?Sɖ39Yo`y='JK"xӵKW{Eyœn2޽II\ScQ"]F#.u.@e=VVm;]i 4t8ؽpMBGxC %. N,ĺ,DXK \Y>͝ *`٘OrFmR3!!뒤դ 3[)"5XgoF1R Kʑ1.q6z~|>cI[XQk)U ?HwfÝ@ *G?4yRrW?OF 9 (]P9 ,]%гd>qiE>)аYFv8j\IڡsJ"4I!,\ jDN`[=ܓRʗ4%Ð)/3(d:n`78ߓmUXXCwBQhW.VcغP鎹ZzLֵF{%зW6f4=B"^t}QiLзG&xd#vb>WhPS=~du.h :0G.PٴNQsHIplknӇKZݖ,ܐ5p,snwwŞ1kvƽ#3 mhyD8E YE3y󾸄 c B,5虻׿GU /zF̊wz_g^5cضٴct#T‚AZNx,{Ar @aXʸOX;W,1qUY\fߒ`y^$<y*Xʄu;)z˯奈 PI\Ⴢe0Qt8R0 9KJFX w"skiGi(zB8QSrjjuїߨzzw&z0gq05)F%.Ew -(eFPsiXBBk>ؼ.NE ҡ|w:q~Rߎhop^;^ sQ5Ÿ؏pF~ׄ c: |h TFةcp(2T:ŰcEoQM͌1p 6{Ga 9̫?46|4y'&/<%`nV-Q )NzoB"SM6,Z@}`TedjZERDO˂drKjdD"x=|Re !՗X,[3].Ă͘ە?{v~<)2eKDc~`SּPMDuJ$$WtN!wH&n>lKXht{prB^/`id=@$tXS;{2pEmՑ,S'xE`œ6sGD#a({$AYeɢCWgvEhI@$2*ѬLtg763v@ y!SdzgTyR+t.3(gEPgpR?ƻ_ \h')5LSd0u]y_Z|9VZx~ģ#ttĘ;\?(ޤ1DYQj"c1d}FtԔ,_lߑm]K&j2hmBR=9Nhz .ߗFmW lm Υ Ԗ뽝Lqj3,49ht}JSf~ ǧ8Ts`)^x[ܩՌ;373ϑ ri-Z&Q̍k'Yx{P~+6+4n&l~v>#ȋhF'ف ^`( z Y[<@>Yt#AJwu^c?9)řD mJjG=x4eõuJ5܂LK͚W1[g9#JG}GAayu4:$B*F5v]+Tse?#[~Qexh* !v1РG[`,V̠#=i[0Sl5ڠ!x 3e6? ÚG~ܻV=<gK˦X/srF^'O#yV(Vaϙ*&j`jn.^AVs(w'I[d$G2 ( 2ǽ+qQ|y͗KXCXvVg,eaytx> $Ҹ-'Q(zԆئ?`H曑ȅ؝l\k@P̚AaG]W(s n0$s1̒lkcl?ԥatƊ¡48]RMwɋ~-͡S_.Ą>1fCQj 92ЂȽp 3ByK/ff5|jTMǛ~j_~ ޝkf]R.bb8˾~V.fRӈlMrC3d]jϕ"޳ǶQ\n7e]i{J i?ʱ>>;_kҨi(eYx<Tg' % 'S c?W0DVxۤv"X:S׮p@LFzRΩءAޥ:=#)'rXQ֡A#1NPRx;FEb;nM@O'"˭)w@zBՠ]'0޲%y"Ra=7zj2uJpۂ5ζC7IW<ʗdC꿿S4=T^|Ad?gmxP/p>TJ] DZ(aef f{6oqrN[ki*IH'=DyD!Trv. @?SMMo2AG\[G~58FJx79΁c;ppr)ii #[cw,(>aHN-z)ΩΖZ[;*K י'-?9t-gTY{TD;^eZ[gNԕ;QCI.Dx1;fs{,4$n}_pc f(Oixuٶz*k,$4ѲXްs3Lzu1^Xfq"kFp,ރ3ǖƩ*V@KnQ6l(~Xx?9Mnj#N.*~8WД_MF Yq6;S*v1O|'@QOJ4%|ϫ.[pm" 35Ieټ(r E((F{QC\W$pͧ>=ġXBTp`! 2<@fY~b sEAz+sůC:D$pU {@3TEC97ީ$YfwA|"򲺒fHv =q@yy^]~J2.5)cc̫= ܄o%CiysļզY2.p#5#Dх :O>zg Ŕ6Y>qYa2܄MtFP@W9CT%: sK h#xgOo7ڷ-K[ ~x$y1^^ISh9iD"s5(w-;$#?^Y>Zs r}5Wj'!Ecga\J(*9HRNE'Ԇ odn{ؚqvx&'E72w `qmDݐbHEM>3WQ' Gj "Y A }Sc?_zȬp]\9k$_Ѩ1JL vTZTɈ*CYtlF )Ft^;H`J+G ȍ(©g-|efŽ dAȹ7q(%\*FyHMDVizcVQުvCA"~^_l(HcI(HxK)FAiƎ4QBkw .mǽfn7*D"ml8sp\}$XM:-ei+l48yq(v Fr|=af+ (n{rs:; Q35tvZd[{1ڿUyKYD&5dfTA~hpu$#Z r{]Q?WˋB/ɓ`y <@st'#9Tjw~7OlmѠτ|UM|1l6YyzW?`Tks5n/&Y$áղ0&. dѬH(@l.@THƥɏ:r|HZ7X{,q(Rx\DyNV{ԀmogqcGt{RkvV= EUD@iv43>Gmq 7Zxc,/>pz\EIb *Ulb6*"dXpWŐMFrD5D4݊0.cnq#gUO&L4 W~:IyS:fd/ьQLQ)Q6I7,-JZhT*qvUdyrs]T֖VVS'8뫩vyȼs&.rO+w2-KE;+kЃS\ F:B9k{gOU*{'\&Tk@ۺ"\o[,Q&̍7houS}uv).NAp6b 0S6^T @J70s yCN7t*.,q&ܶazGǯ6 k +iRۀ@W84jQR3;كfwFT[p/<;zWXg QM↥'n)@.̨jQvVc~YN|/Um5{랎Vh|5}([Dp?}uiJAN bng䐃- rv:!;ZN7T,hVsP{0 C&U?d 0Z*,A( +MJ>#[bMNDWhByC^bnSr#3wCR0ld}#FO}@d9}./7&LgՕ y1C&Vt';X(Y\/Z cD]8JAe|{snF[YuxiwDPE̝υS q 2U+`*xj5xRvQ, 6>Ph!08bdV%Ku>!7zf(-Otzij?Jtu 9u(6!TLpۭALlGS2Yk{ISs^ s}z&ȏuquCn*ui.Ad ;Q&AYbKzwzZ.@`E 3f Up[i&#KKP)We3r+%˲HYbap9{q wuԓP hx ;isÇJIs+Ջo^=X&|oPP2X[DkOm$29ƥYE2AA(Lv}N $rtmHCw~R| (ܾn@jrug9F̽{yTBY Z\ؼ@邆 ||<5ĸ,+}TJd@H HFPe얭@'`mMl$go_d'';NG'3,uowm9eϟ/*b4s о2;po0䰂8AQhK.̓ڇAʂ¾Mct2C'#-9vڢS# "qO"e\7pU_q'R?O~ǔĚd:r}ᗦOJQbQgȆ>y!;'lnZQ&qzA @)~-:4:nc9' h2k>ܘwbByʘ $c[*ͣ:sX5T -vM_C͖;)_`:/Mä~>| +S/yw="q?TC.aC&tгqDSFt5jEvBC*)RJR?D'ETM?|W ~r'1=S($w,o `d*ߖPjN\?J#P(8fӊVvq0cʟŕx ` QXNKW7'#X3q+ЇƷfpD/uݜ5;i 0Ym%c@OX?Ӕ[ػ>}Kz;`l/F 1 ZaFvgL. e·CIx[7wR~ o;0 U%^K4kv&G{Ynx;+n}fmg$.;.nfˇ6JZP-xN9t\X3ư||$ r^Aӷq5{몐!~rYY{socs{FQeXZ.C kFuV,vc:ϗƚ(%S. 0~ÌJʋAˡj`KDƗA6͌pmER&b c 3;o&> r" ,(v^``b\qg\\1#8?Hwmcƶ ? ¹[5t['Hyh=Rx`&SE}k L X`}щ8V! N:Qj}687~'"g.s_/>Ő?ߟ53* =)NE]dU⑱.\`.7Œ4UeoϞԍ멺 ށ٠„=Ė >h~(xu=n n^miB&RJ87-wfcLuc/x7f} Ǩ`*tFۚȈI_0C]טhB,=m&G0C?&T~"F@2s  FH 0d o - @7zm$L( _^w7ɳBt,<ֶc L?_l^T@fQ`'I59 W'Z=" rC}TTsrG3)23E>gi<\Oʬkx_2w مv \NC+H:!]q'2O|~}`ϒܼ|94_ N{n)/+m`Ϋ"+ff/.-z4K?@ 2A@O?59*EWU퀵ř~B)@[$9BUp }, У M̙᩵z3V"5x9q*dLٜ #AsPttW/$]UP;e<:u ͸U bڲ=ᔎ@_Cl/i scD-:mj.):e<4%^L3@S* sk7xDXWcmI2XWJTOlOy\ uvHg ͮ})'Fʨ4Pu[oNxk#CS I $O!|I=ȠtL4oO=ud6_myBBmelWgwaIB'LǺp_\!ڽ8!C$Ѐ͇ǀ'J {>_G IM;qVp3"\N2y4V)b.PAh0EzqJ98izcC8.  U6w6<> N!s)iTT\J,^oGm?pJ a/oEMG53^7[PM6liȂ 5`YNؚHAKӺFDK[x"GAxo\ď\oyk ݺu`)*z$أ^r\CM&Q|Eտq)jǷt!|VygB7IUaC5,HD2!<->l*SbQYpY79DR }d\,PFTNVx _ acqo?>fYt+~ҌIVֵr@XȬV=}-CH4PXj*To1X?a Vdz<,ͤZXJ+9+J#ǹnߚ|"ڨJOn<}0`:e+mLY %PšŽe V<aHhf+wndqg%=OF FQMQ䰪…l{rQ _ܼ@C)H(cMB*):U [zJu͏L)}u_6(F{I V>ec`ev =E$=T(V%U\b+WíhkeSCdWtgs>U9"+pTf`Er(O\.R]b YUH \}yJؕg",Y~#UKRy{e3zc9q4ABƲύUΐt[nGο>}l24>_G2 rŀYevb FޔICr/ \ 4;V)jP^11\PlԒTT-ǖ-dgu#JU`G45ٷ IK<R]cW BpggŹI[5έi^. ;HQ _a>1yI6)w{NHpXQz&WǎGlWs$r QQ|6d/ |Ir?+)p0Nfjr`5Mfҷ9lmPo#ѭciZUĸc A{M':QGO+7O5b-:fI sXOVǁ-Jt͌$`2oC%bYwEm(=j /#i{v|4NW.P6=9{quKA~1 |GxFݧ.$khz d0?wO8n(=#ﻂ@l8'G˿q@SA6ZlYf BVϟ ;郧 Kri;.v>ϩp 9՝y#I @d,A6? VpG(8o]k`΀>s릲2fZx{(~RsBI樈,DxL,o 7[F~A ]ؤ2.HU X3r3۝9_s֘6"`'' _NYvKOR!My6eb6cT^U+Ǭ0kxިsMйzɰ[rz)9qBfJ\ŞK\&f bC-3GDG¢/>6+ 1:XL=)_W Z !o&*bu܎==%[C$sve@|o4:FV= ) q*.=XEmMAʭ(_ìpvʼǤA }Ֆd^jՁUpIWtG|7Qa \9O;$h&tbR2]AbFT. n ۓ=ENiw*\ [PZvKF G pYqf5*OӋ@?j4Rއ`}Iv/F-aIt!'QȞk5reH[jALŪ)ί/Dk5cxSˏ̔^vH"ΙĠzoS䗛 g2Jk!;@%aZJ.jgkxaFVPB>3,az%E6w$ϯ߽S!}렖!oZ=GD~RbM&u@uG/ưUe{HhP 18 <My|.F^5 )W.L>I7‡4fKg?H.%D"[i_ۗ\EwZZQ)5S3f5DYH5 Yq9ynp3a SO/[7:&4{V?YvJ H_0Q܅mh7YڲxJntM$v6%c\c"sA-pVg+5=OM+A1XA_dqnoSEZ3|9a 9Pcv.3dI n%֐PAw'\sk.˙yWyCf"dCw Uѭ21 iBJC")6aTg{ ouĉR_uRڗڻRVUsfm8mMՔa1 gkYE}$ K9#g=&U%?d}g m1#g+W Кt_0 z6|اGc$gtw!dEI5bO[_tI9ͣ%wn},Nbel42@<{ri69IeFCFjCǥOŧ:61w+@gcg!3+sW㡞])B*XL|"rU5#&2=bnn]O 3H.Ω4r7ߦ-eA|mb1?OE₏P %s"rtbh` 4wH{iҨ}Epl;_ c&*'y&G{RBGG, uNRwzhQDXh Cq}(p^?( 껿&hV\ah]ICt]jھm`ѐ#S@-=! y \`pJ~⚃e&1KC` ILͤ 1Q&%(AgNy|#͖<Z-}ɕDf eȼ;7~=xaƺ (n%[_y'j W}f,ci^jߝY:hYcVqͭ$eҙ⭍CteKE/xvy"! 4"hv/kfxpbjzx!s1ؗ|Rh}[e%)_7"3' ^?r⹊MdxjN2vزuIdY{-3QC{_WL? ֬OUij^<W['5:G8h{!q'UBp ژ]јVAYwХki=xtfyKwa&B"&^\~EII5]`NOݎ6TZQsD'.׼'1=XO.;ef,bD8bvk`D)@ 2f5|B]Ьp%@iTTcS) :67C57Fy ? >U0F\BҌXG6,[s҃CS%  q#`hT'%N2[(yJ^r.Tʿ_j8xX":nj4G[ $'Uw1+SݻB(A8H\xSHCp>C#%6OYIpPgT<(f\!޷$e@,iYoA>R*.hث9sxf[sU2GHAw=X]װmmIʃ[rzo"<E4ZludB#~RnrLz.[0|Mwbh/i9J.5O#9K~*2Ml a }Cybͭ ;fߦj7~y_@.8:M\8Y;]6/'\m( dKL:$"Ͽz-]6SN"JvM*ؽi&XW(."v}1h<(О/pE{w$OC^zV(vQ;/.nn?kt4M>gSGU"r &C>$de2J DUQ-|u' ~^" $.R1 (ȡansc/bXVK+S1/ {YQ^Y= 6T-X#X/E4[[/G,@y/3f6v*Y'Ձ܃@ѻߧbnπH8?vh/|5ϥZOHH ޟl 4E4it0 7fajyE :b_$}]U >-2謳,VvuG{שּׂīN@/MZC'E}} t]xzրݙamik }W֛-i,7;iuDz/lz~8Uv aɼYu4E-|`1$~\q*2bvӻGB- s?;:,u^o9hE[uJ|'U-E e#Hh6hn3?ۋC1Jk>3wFg+AO:Ns6`#썯(J/a#mSVZ***!~JJڽDЂXۧ&ejN!,=Z *yƫr@8$F5b&Hs[ 0b%fRrhdPLbC$cMywTV)Qs' 'eJJwBR(+ca,qAxWҁfЍuCPbƹmiWK82^ k05Ɲx'haf!0#m1bG 3҃`,wʼnɓ>/ Xʼn|zsG; +|Aawg;2idOS(t0N߲%5sw )S.m$yy|av0#%9l7/q hsc/mqB{`FJ&Q`y-֎^o9򩅍'-BgĤޫ4s 93(q8r ^S->Z=-$ќrpo9NAƠ.0R^DŽ,Q $#߸4I$R : AfVSe~{W1O{1M&4`(lGZʸ fo;QZ>c\C36|#"cCT_;+JS^p|3׉1zm r!;}uLNU/˫ߓkc|4Y?t^U.'Y˝d6TdhĮ;aKSma"R-is gAhvd3=] U:ͳTn,b)tj=nVRR~{6IDfWTs 9B`索[ u @f @ʭٸ_?XG}@OC-̌ON}2WJTkIR3^`珇XL@2T٦^=,"c1 tq[!jՔԝ;NO{Oᢦ κx ; 0~-v dW1nfOM\ҚN)n=p֩?CʞS ai x|0m fHō{0K76y\n#ƛ+V#?j>>/|;Z끚J v¥[`-,>a/y#Y"BSle*Fif& WH6R EYdJde˰ i[ʒ iI :y[ZOFٟNX Qdr40þ:D6JP?v@C% i E쏓 Ǣ:1vb1('6@w&2L|M:rl2/D|^jPM gqh1}El)v FMV) lbH$: E](h{Na.Ѣ_Ls} 1b; m 0΋[..fPn;( ̘JY/l\)bKd1: 7Y&澢\hut5&S*1ow5)TTk $NAf?PwQw6c.IqNBjI:Zm 3l18T+j/ ;R( Lc|d$?B}ceWu h\ ^6|z<-3Ϋ]x88϶K;P<.NᏉZCrWF4gICgvLYUؖ1^~6S} %|@b'[tj;!!, PHk}oc#iJTgf@A++t;b\k-rs_AiN(]u5b[)Hڵ2VD57Rm2E _TCJu E(_#:@X~C`ts强,VwP J9aR~5V?}dDmKi9fP,>ԻL=+j|Ns~ןT-*/|)ĮaO-7 |kws itZ1_;g=KwK}5s¾L[GW{Hp'w*9j/us;ʈ~Y<.k^5,j075> P =%Kۄ0&w?2FNlEOE+ng"LS;TvMES>ǠAQ̽(`R@z&4^ܲہ_^ܠ @6[0nxA8CΗՂ=+O,@S.틻)T |֯GR_-[*eQYT(<~*WϗEofw#BN@X6$}jj0U c_r%A1en=KS8&JP"b"[yä~щ9i{Xö#]$PKC{k ڥgg{_ltڈxϤ#h}J.(V l9XiLGoFKQK*SX@i}1P,`"LV|͓ \4/!ti r1&EQ`9DU\$gQcsxbp D*'\e~^x3oHM`3Œi=6oƹ UިsFr.'\s_#jN#zIAFrV}§muG#v+slpj ZY`NGYv+m6ۻW];(>eRմcQh ]mzsΊrsVfcz3v;+, +fGzQt yL96E2 T@"X#D(`dU't޸{V#]mXʹF*KF*S7plEM4?WmC]#}q'v8%wv 2kdH#$v/5?ȣOݲJW e8 %x{tֹAïŊο߭{/E |+{o5PEk55J ԞB9N/&^{IwpWp$ѶIFQ" |O ;!ߐZ` ?0ө%=^!wJ̍(1e)6YzlvU$_QZ!eC^ o$&k㲌52u!`edcAB`O\8?PǸn^P `lꔂ7F:j(:,$ EV7kGޥ\ZaG%DY!"m{*8',^rHJvdEI}ſ?W_ am ~d(L3F:5/3$DrOֹ"1ǣn7czd#s44 O5$'ZpO3/1M2 \O_.7qz?][%;@ SQ1.G%1FmX5  Fsk1K3vmXPͥ2 ;oC=ymq</[Vi Ǟ{ѯO{v\<5""F՘Q4)d}'egQTQF!P&P%!m/O$$1vJfx%Gx_tSKe`_5AXƇDxO(j]#=O /q 'ԭe,CkϯgQFX^aܺ?hg%_#(0yU# b2BuaZ]'Ȥ628+Bs _:@S͚X@<{82|e)Q|v_H=o>*2]xZ-t} ZN8w=wqyy[ur~gė,~+* lHؽ, _D~G\lٻJ-mD=P&Zl6!"*$WW x5LFY|ٯtx ۵նѶ YZ