libzypp-17.35.12-150500.6.21.1<>,Dg 2p9|>;1[ R/lAL-܂FԾϿ\݈ [2A %g~-t߱[OCҩq?|UT ßk80kVpZk&uJ ׭KRKne hZ W_d wvd)ODa/JJ&}dO)p/~kwl 7(Pg[V*Ld>IW?Wd  ! \| %+4ff f df f f \ff f"#f$%U'@U0U1P1\1(181U96U:EU>8@8B8F9 G9 fH:fIcKdLieLnfLqlLsuLfvN wQfxS\fyTzWLW\W`WoWtW|WWClibzypp17.35.12150500.6.21.1Library for package, patch, pattern and product managementlibzypp is the package management library that powers applications like YaST, zypper and the openSUSE/SLE implementation of PackageKit. libzypp provides functionality for a package manager: * An API for package repository management, supporting most common repository metadata formats and signed repositories. * An API for solving packages, products, patterns and patches (installation, removal, update and distribution upgrade operations) dependencies, with additional features like locking. * An API for commiting the transaction to the system over a rpm target. Supporting deltarpm calculation, media changing and installation order calculation. * An API for browsing available and installed software, with some facilities for programs with an user interface.g 2h01-ch2dkSUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/System/Packageshttps://github.com/openSUSE/libzypplinuxx86_64chVYi`  >BʦVwņ 4[u{8{h$ر@?W']yR{cDIch` y!  2 GAAA큤AAA큤AAA큤AAAAAAAA큤AAA큤AAAdg 1g 1g 1fg 1g 1g 1dg 1g 1g 1g 1g 1g 1g 1g 1g 1g 1g 1g 1g 1g 1g 1g 1g 2dg 0\g 0\g 0\g 0\g 0\g 0\g 0\g 0\g 0]g 0]g 0]g 0]g 0]g 0]g 0]g 0]g 0]g 0^g 0^g 0^g 0^g 0^g 0^g 0^g 0^g 0_g 0_g 0_g 0_g 0_g 0_g 0_g 0_g 0`g 0`g 0`g 0`g 0`g 0`g 0`g 0`g 0ag 0ag 0ag 0ag 0ag 0ag 0ag 0ag 0bg 0bg 0Bg 0Bg 0Bg 1g 1g 1e]ddddddddddddddg 1g 1g 11c779d040a8ffc575030d11dad0c4ae0a353abd9acae7598410dcfef78e5913da309f006b119a36ccaaae94edf35e2bd86fa19ebc1c419808560e47fceb15068c287ba4e78ebde02b84ff02c3d2ae9341bb3ecca5bd489ccf8b84ff1221edaa82ef3343cf34e66a595805867f1b09d1d806146e52af115f7ccda65bf57a3ae9cbfb2a05693b3e1b0227ba54889c36cbc2a7612bd9fd603612d2be5f5324bf116da224e550d99fea293ed85a7758a60b05a05245031be31ab707bf3d77dccf2ec6faceb3e3624d4a51495a46c003c9cef409e72e27bcb8510c3cfd496105fb8b33a0e64b307bbdc7ba04950853d619c0e4e0136f98b4a4b398261e42b1ba64b44dce2130b5f2a6f37a9cc31b6b0ea016b281f1f9c47b0ad4cde092ea19f3dbe3aab7fb673a1447c32332c4374948276d5b0261ccaaeb1e92cbf7e94fe2726076c5fe1cc7b22c2496a7d5d89cb10fd976d20b5b0c065d1cfdb6e8342fd4f5f12232ee3fbc9bc90f2bc7f4a4ab510ff37bf2a076a84806275e166d1ff5164caff65e7a76b5688b1caa857ed1a5a65dad69775a5133dbb0c36c4a9e2ca9f47f637f079ce969e6dc0c10a57ff5aa6ae88059b9ecd0d008e6046f34b21e9773b9bdd3e1f5c997aaa3b63040e0f400af3a97170e82d3db4e3212cb60fc7061ec18571156299e912d9cc187e5d58e289a24d7b4f77fc78f4c76e5f55d55162fce71c8ef07e1702a0dbc9e903c8c77cd0ec82f71c530985e5f4cf113a4fc6cd88d46b7949358f3ae12a40e97a414ce464014bb4bcd6a29565efd1983c07fabf7b00818dfe80991b4efa0c5aa8ee642c72c9abecfbba156c9ccd8deabb6a07f0bf9e0fc7e2aad75c1b69a25d701b65c282aeaf97d9cef043d839d67b9d0985c283295884d747ad37e39e186781baf3f877edf5ef661e0806415b814c47659b6d693d1331e6b90ec86d3ef3b1d3697514529aa9050be0415dae0b45e8d3507c9b628fa7d5286b423db618f6d76236a2805f3ee2eb2895dbfa015ad9dea9ee455a770bbd45d529f35176e508af6077ca694b3dea07cc5e9e7d779e57b8b24edbd6dcb206910ad8158b9e4e442ebf9422a1807be79c4346e2261df23e627e0cbdc8d7e8007433f435ada2fe9ddab78492cbb343d71d455745f55b94fc742acdf86738caf2c10d28dde86ddb986d61c118597a891a884efa67db7b939ac994bc0ffc9bf6c72dc29e9fa6676e5a8fd2aefae8a5000000270582c3ecfbb7ffa7686555b22ae942153f861e28814bea34371c1e6eea442eb59a030ad3af51757fec689dcd8de9a2814710d0106dce954e8fde1709178859d4752441f9377a05ff3d77ba98c4fdee78c9273b1016758252d2ec7b6aa24764ac2d55e898f3b4c5ab236f66e4ae550a30dd5169d51c0a42df89309e308b1de3d1e2d2c34b11cb00ee3ab5f14770b4928b8454e5b182238cb44e1a519b240cfc61d05b1862625297dd2572c7856f8d877f9109b3bdfa29539ae03493c0783cc5e20decdbe1fb1295c6407b2eb185c0942e92b622eb0652ee68d8635347e6ef4ef0bfb53985a17976c06bc84b659993f39d521af527321a2cba928ddf2444af9d99c21969a8e2becb9dc89a9fd65194b1c3acc31917ca5df510b0d4dcedada4710738792d47044f3d0bda21e4fb8f0aaee1cebfcba89e9240f10ce1d28fa9a98a41925d9dbb29f88768fa93f27187d01d598709ce1bb75d79202b6e5acff273c33bd6beea2352e48038ea6b9e1128dc508d14595e1316a9d80fa46328642e8dc3427e59a88f2ae2aef34f3499e2e5ebd1b384f7c0dbf57512c0d8b3ef9ae67b005e5d3e1e2665e92a64e7ce7868f20daf065f83bd6b9f39799c77f3868e98d8466b2392df94cc15539f80e96b621c477c78c521e762477956877ff6532cbdadeef9c6acd71fe87d847e687c561966c4a1384e31313e0cc3076641391208ce4d254d1a2d35349bc1ec55d2bd8ba23032ff2d20761af7cab7121e80479b0a5eb41b023423ca393c2e1ce72e39e32497cb806326a84f630f2fe545bccb6143e875a0f7cb6171b2a7140e24acb599eb667f9f630e2ffd9b6583a24f57314d607058ca9a94b220dae51c21cf027f848c237e659850c155ca4c5243c944b7e6c868f981fbf9251c0131959b77ea5669aa88cb5a54eb0ba68a18b55483f7f7f2e8bdbee3758ee238f9adaebba548bbe6cb064f7fb28bd015023ad1513bfb477c3bcaf5415db98110564fc5770c06ea567d804ee4c6d8a826bda45e2f9f0229fc23e142e155cb66bbe264f9c1c2c43fb929b3410e053872e9fe9de9141a55b32ff835e1f6b4d38c5e0f3a35a34357cbf742c7e595fd19261f8cb73751aa99e5cb239efb326dce33a412dbfaaa791328290c3e253924daf740fe45ff328f7b802af1eacfedd7b7908d7eef7257128ca11a60aaf0931080c31765fe252f0787cceca7e4529c978bd4087ddc8141cb1f37f9e29e83ccc60f33736e9ae7673f0c6b7b3aba417c4ec7d4fe5e029407897b85b3724ed5513c0117460b37ae6c332cc9ddca08c5177351d6b84047251e252f46c577a1a3a4092e05d62122a11ca7ad1d8c45e8219565e0dfcbc2b64eaf406794ebecb5126e6da981b09dc091576949a69388c4bfbcd44499512cea67c9206ce05a129607071f0335409b1f2833f18236c093171320ab8b558c861a2a8faef64ed7e0e45258309005eeebef8dcb421f276baa21daf11f5bcee1b9ca21a9cc307c429dea87f01635a70f6a407cb99917933a3e4eb2937c5ba4f12019661f9385b39027cd7d1963ac9cf3e2a0191bff46a6a47c041f8a6f3964b00618ca09fb3730b3dbad4f1eca307a965a6848e924a3680f21808fd56fac2000248d72a0ac06c0b8c6e14815d85916a4a78bf2da6218b648ef4fd00488be1cd457be72557325dd3012f101dac3be1443502947ae9803297c8f5d545baded062752b5c2aff6822875566662fc9815361c7830cbf2c481f008dc4c80ff97c2c2d62fb84c491647591d51c55bb96bb84c59cd1bb58d720b611c6a0285465a2357f1c97922ac35461293676914264507ff57753759aa291c6d5c3daa521430b9ec787c82bb2a82258b350b7762cfc27143b687fae5a444f7720672bbbae2246b00fcc371edea09e90189d5e4e7a4ed9d62ac6180859a97d75a8ea4fc057aff741ffd57a29892275881831b91a55540a5582fd1d5881808a71ecbb89a8b60c8c07f6dea2a271436a96c8dbf3a5d4fdc9158ab9109b139f585ddfccb985ab2b44b476b7fef702f02eb3544daa4944e72df83c2fa8831089d7ad59ea08d21dae54976344f38eafdb4e5a5786543e88a015c762f6eb01c16a4b650022e6421bc3c5fc32228bada6bfb73463d84badf31f62c583326d2fca508ec8ef8d466b6e9611c836863c623d2722cc6a80d101c2a7b8b8054a49dd99acf7139e8355dba8f6ddee18c6bea4c2a972be9cb498aa3c918348946baf8d5c0e2825f7383d9e01fadd089e5d82f6d2561f87adcec9bb2a15flibzypp.so.1735.0.12rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootlibzypp-17.35.12-150500.6.21.1.src.rpmconfig(libzypp)libzypplibzypp(plugin)libzypp(plugin:appdata)libzypp(plugin:commit)libzypp(plugin:repoverification)libzypp(plugin:services)libzypp(plugin:system)libzypp(plugin:urlresolver)libzypp(repovarexpand)libzypp(x86-64)libzypp.so.1735()(64bit)libzypp.so.1735(ZYPP_plain)(64bit)yast2-packagemanager@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@    /sbin/ldconfig/sbin/ldconfigconfig(libzypp)ld-linux-x86-64.so.2()(64bit)ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)libboost_thread.so.1.66.0()(64bit)libbz2.so.1()(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.10)(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.16)(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.27)(64bit)libc.so.6(GLIBC_2.28)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.2)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.8)(64bit)libc.so.6(GLIBC_2.9)(64bit)libcrypto.so.1.1()(64bit)libcrypto.so.1.1(OPENSSL_1_1_0)(64bit)libcurl.so.4()(64bit)libcurl4libdl.so.2()(64bit)libdl.so.2(GLIBC_2.2.5)(64bit)libgcc_s.so.1()(64bit)libgcc_s.so.1(GCC_3.0)(64bit)libglib-2.0.so.0()(64bit)libgpgme.so.11()(64bit)libgpgme.so.11(GPGME_1.0)(64bit)libgpgme.so.11(GPGME_1.1)(64bit)liblzma.so.5()(64bit)liblzma.so.5(XZ_5.0)(64bit)libproxy1libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.12)(64bit)libpthread.so.0(GLIBC_2.2.5)(64bit)libpthread.so.0(GLIBC_2.3.2)(64bit)librpm.so.8()(64bit)librpmio.so.8()(64bit)libsigc-2.0.so.0()(64bit)libsolv-toolslibstdc++.so.6()(64bit)libstdc++.so.6(CXXABI_1.3)(64bit)libstdc++.so.6(CXXABI_1.3.11)(64bit)libstdc++.so.6(CXXABI_1.3.3)(64bit)libstdc++.so.6(CXXABI_1.3.5)(64bit)libstdc++.so.6(CXXABI_1.3.7)(64bit)libstdc++.so.6(CXXABI_1.3.8)(64bit)libstdc++.so.6(CXXABI_1.3.9)(64bit)libstdc++.so.6(GLIBCXX_3.4)(64bit)libstdc++.so.6(GLIBCXX_3.4.11)(64bit)libstdc++.so.6(GLIBCXX_3.4.14)(64bit)libstdc++.so.6(GLIBCXX_3.4.15)(64bit)libstdc++.so.6(GLIBCXX_3.4.18)(64bit)libstdc++.so.6(GLIBCXX_3.4.19)(64bit)libstdc++.so.6(GLIBCXX_3.4.20)(64bit)libstdc++.so.6(GLIBCXX_3.4.21)(64bit)libstdc++.so.6(GLIBCXX_3.4.22)(64bit)libstdc++.so.6(GLIBCXX_3.4.30)(64bit)libstdc++.so.6(GLIBCXX_3.4.9)(64bit)libudev.so.1()(64bit)libudev.so.1(LIBUDEV_183)(64bit)libutil.so.1()(64bit)libutil.so.1(GLIBC_2.2.5)(64bit)libxml2.so.2()(64bit)libxml2.so.2(LIBXML2_2.4.30)(64bit)libxml2.so.2(LIBXML2_2.5.0)(64bit)libxml2.so.2(LIBXML2_2.6.0)(64bit)libxml2.so.2(LIBXML2_2.6.6)(64bit)libyaml-cpp.so.0.6()(64bit)libz.so.1()(64bit)libz.so.1(ZLIB_1.2.3.3)(64bit)libzck.so.1()(64bit)libzstd.so.1()(64bit)libzypp.so.1735()(64bit)libzypp.so.1735(ZYPP_plain)(64bit)rpmrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)17.35.12-150500.6.21.17.19.40.7.303.0.4-14.6.0-14.0-15.2-1 python2-zypp-pluginpython3-zypp-pluginzypper0.6.40.6.41.14.764.14.3gp@ffff@fxfff@f@f&@ff~fy_fYfCR@fCR@fBf$U8U7@U/@U/@U @UU.@TT@T@TܕTء@TOT[@T@T T@TT@TT@TeTq@T6T@T@TTp@TT5TTw@Ta@T_W@TVTN3T?@T>ama@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dedmueller@suse.combzeller@suse.debzeller@suse.dedmueller@suse.combzeller@suse.dedmueller@suse.comma@suse.dedmueller@suse.comma@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.deaschnell@suse.comma@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dechristophe@krop.frma@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.debzeller@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.dedimstar@opensuse.orgma@suse.dema@suse.dema@suse.dema@suse.dema@suse.dema@suse.de- PluginFrame: Send unescaped colons in header values (bsc#1231043) According to the STOMP protocol it would be correct to escape a colon in a header-value, but it breaks plugin receivers which do not expect this. The first colon separates header-name from header-value, so escaping in the header-value is not needed anyway. Escaping in the header-value affects especially the urlresolver plugins. The input URL is passed in a header, but sent back as raw data in the frames body. If the plugin receiver does not correctly unescape the URL we may get back a "https\c//" which is not usable. - Do not ignore return value of std::remove_if in MediaSyncFacade (fixes #579) - Fix hang in curl code with no network connection (bsc#1230912) - version 17.35.12 (35)- Deprecate librpmDb::db_const_iterator default ctor (bsc#1230267) It's preferred to explicitly tell the root directory of the system whose database you want to query. - version 17.35.11 (35)- API refactoring. Prevent zypper from using now private libzypp symbols (bsc#1230267) - Conflicts: zypper <= 1.14.76 - version 17.35.10 (35)- single_rpmtrans: fix installation of .src.rpms (bsc#1228647) - version 17.35.9 (35)- Make sure not to statically linked installed tools (bsc#1228787) - version 17.35.8 (35)- MediaPluginType must be resolved to a valid MediaHandler (bsc#1228208) - version 17.35.7 (35)- Export CredentialManager for legacy YAST versions (bsc#1228420) - version 17.35.6 (35)- Export asSolvable for YAST (bsc#1228420) - Fix 4 typos in zypp.conf. - version 17.35.5 (35)- Fix typo in the geoip update pipeline (bsc#1228206) - Export RepoVariablesStringReplacer for yast2 (bsc#1228138) - version 17.35.4 (35)- Translation: updated .pot file. - Conflict with python zypp-plugin < 0.6.4 (bsc#1227793) Older zypp-plugins reject stomp headers including a '-'. Like the 'content-length' header we may send. - Fix int overflow in Provider (fixes #559) This patch fixes an issue in safe_strtonum which caused timestamps to overflow in the Provider message parser. - Fix error reporting on repoindex.xml parse error (bsc#1227625) - version 17.35.3 (35)- Keep UrlResolverPlugin API public (fixes #560) - Blacklist /snap executables for 'zypper ps' (bsc#1226014) - Fix handling of buddies when applying locks (bsc#1225267) Buddy pairs (like -release package and product) internally share the same status object. When applying locks from query results the locked bit must be set if either item is locked. - version 17.35.2 (35)- Install zypp/APIConfig.h legacy include (fixes #557) - version 17.35.1 (35)- Update soname due to RepoManager refactoring and cleanup. - version 17.35.0 (35)- Workaround broken libsolv-tools-base requirements (fixes openSUSE/zypper#551) - Strip ssl_clientkey from repo urls (bsc#1226030) - Remove protobuf build dependency. - Lazily attach medium during refresh workflows (bsc#1223094) - Refactor RepoManager and add Service workflows. - version 17.34.2 (34)- zypp-tui: Make sure translated texts use the correct textdomain (fixes #551) - Skip libproxy1 requires for tumbleweed. - version 17.34.1 (34)- don't require libproxy1 on tumbleweed, it is optional now- version 17.34.0 (34) - Fix versioning scheme- version 17.33.4 (35)- add one more missing export for libyui-qt-pkg- Revert eintrSafeCall behavior to setting errno to 0. - version 17.33.3 (34)- fix up requires_eq usage for libsolv-tools-base - add one more missing export for PackageKit - version 17.33.2- version 17.33.1 (33)- switch to reduced size libsolv-tools-base (jsc#PED-8153)- Fixed check for outdated repo metadata as non-root user (bsc#1222086) - Add ZYPP_API for exported functions and switch to visibility=hidden (jsc#PED-8153) - Dynamically resolve libproxy (jsc#PED-8153) - version 17.33.0 (33)- Fix download from gpgkey URL (bsc#1223430, fixes openSUSE/zypper#546) - version 17.32.6 (32)- Don't try to refresh volatile media as long as raw metadata are present (bsc#1223094) - version 17.32.5 (32)- Fix creation of sibling cache dirs with too restrictive mode (bsc#1222398) Some install workflows in YAST may lead to too restrictive (0700) raw cache directories in case of newly created repos. Later commands running with user privileges may not be able to access these repos. - version 17.32.4 (32)- Update RepoStatus fromCookieFile according to the files mtime (bsc#1222086) - TmpFile: Don't call chmod if makeSibling failed. - version 17.32.3 (32)- Fixup New VendorSupportOption flag VendorSupportSuperseded (jsc#OBS-301, jsc#PED-8014) Fixed the name of the keyword to "support_superseded" as it was agreed on in jsc#OBS-301. - version 17.32.2 (32)- Add resolver option 'removeUnneeded' to file weak remove jobs for unneeded packages (bsc#1175678) - version 17.32.1 (32)- Add resolver option 'removeOrphaned' for distupgrade (bsc#1221525) - New VendorSupportOption flag VendorSupportSuperseded (jsc#OBS-301, jsc#PED-8014) - Tests: fix vsftpd.conf where SUSE and Fedora use different defaults (fixes #522) - Add default stripe minimum (#529) - Don't expose std::optional where YAST/PK explicitly use c++11. - Digest: Avoid using the deprecated OPENSSL_config. - version 17.32.0 (32)- ProblemSolution::skipsPatchesOnly overload to handout the patches. - Remove https->http redirection exceptions for download.opensuse.org. - version 17.31.32 (22)- tui: allow to access the underlying ostream of out::Info. - Add MLSep: Helper to produce not-NL-terminated multi line output. - version 17.31.31 (22)- applydeltaprm: Create target directory if it does not exist (bsc#1219442) - Add ProblemSolution::skipsPatchesOnly (for openSUSE/zypper#514) - Fix problems with EINTR in ExternalDataSource::getline (fixes bsc#1215698) - version 17.31.30 (22)- CheckAccessDeleted: fix running_in_container detection (bsc#1218782) - Detect CURLOPT_REDIR_PROTOCOLS_STR availability at runtime (bsc#1218831) - Make Wakeup class EINTR safe. - Add a way to cancel media operations on shutdown (openSUSE/zypper#522) This patch adds a mechanism to signal libzypp that a shutdown was requested, usually when CTRL+C was pressed by the user. Currently only the media backend will utilize this, but can be extended to all code paths that use g_poll() to wait for events. - Manually poll fds for curl in MediaCurl. Using curl_easy_perform does not give us the required control on when we want to cancel a download. Switching to the MultiCurl implementation with a external poll() event loop will give us much more freedom and helps us to improve our Ctrl+C handling. - Move reusable curl poll code to curlhelper.h. - version 17.31.29 (22)- Fix to build with libxml 2.12.x (fixes #505) - version 17.31.28 (22)- CheckAccessDeleted: fix 'running in container' filter (bsc#1218291) - version 17.31.27 (22)- Call zypp commit plugins during transactional update (fixes #506) - Add support for loongarch64 (fixes #504) - Teach MediaMultiCurl to download HTTP Multibyte ranges. - Teach zsync downloads to MultiCurl. - Expand RepoVars in URLs downloading a .repo file (bsc#1212160) Convenient and helps documentation as it may refer to a single command for a bunch of distributions. Like e.g. "zypper ar 'https://server.my/$releasever/my.repo'". - version 17.31.26 (22)- Fix build issue with zchunk build flags (fixes #500) - version 17.31.25 (22)- Open rpmdb just once during execution of %posttrans scripts (bsc#1216412) - Avoid using select() since it does not support fd numbers > 1024 (fixes #447) - tools/DownloadFiles: use standard zypp progress bar (fixes #489) - Revert "Color download progress bar" (fixes #475) Cyan is already used for the output of RPM scriptlets. Avoid this colorific collision between download progress bar and scriptlet output. - Fix ProgressBar's calculation of the printed tag position (fixes #494) - Switch zypp::Digest to Openssl 3.0 Provider API (fixes #144) - Fix usage of deprecated CURL features (fixes #486) - version 17.31.24 (22)- Stop using boost version 1 timer library (fixes #489, bsc#1215294) - version 17.31.23 (22)- Preliminary disable 'rpm --runposttrans' usage for chrooted systems (bsc#1216091) This limits the %transfiletrigger(postun|in) support in the default installer if --root is used (as described in bsc#1041742). The chrooted execution of the scripts in 'rpm --runposttrans' broke in rpm-4.18. It's expected to be fixed in rpm-4.19. Then we'll enable the feature again. - fix comment typo on zypp.conf (boo#1215979) - version 17.31.22 (22)- Attempt to delay %transfiletrigger(postun|in) execution if rpm supports it (bsc#1041742) Decide during installation whether rpm is capable of delayed %posttrans %transfiletrigger(postun|in) execution or whether we can just handle the packages %posttrans. On TW a delayed %transfiletrigger handling is possible since rpm-4.17. - Make sure the old target is deleted before a new one is created (bsc#1203760) - version 17.31.21 (22)- Fixup changes for 17.31.16. Remove faulty reference to a bug actually fixed in 2019. - version 17.31.20 (22)- Fix zypp-tui/output/Out.h to build with clang. - Fix zypp/Arch.h for clang (fixes #478) Clang seems to have issues with picking the overload in std::men_fn if there is a static overload of a member function. We need to explicitely specify the correct type of the function pointer. To make sure this would not break compiling a application with clang that builds against libzypp this patch works around the problem. - version 17.31.19 (22)- SINGLE_RPMTRANS: Respect ZYPP_READONLY_HACK when checking the zypp-rpm lock (fixes openSUSE/openSUSE-repos#29) - version 17.31.18 (22)- Fix wrong filesize exceeded dl abort in zyppng::Downloader (bsc#1213673) In some cases when downloading very small files we can run into issues when the URL is protected by credentials. - version 17.31.17 (22)- Fix negative ZYPP_LOCK_TIMEOUT not waiting forever (bsc#1213231) - Don't cleanup orphaned dirs if read-only mode was promised (bsc#1210740) - version 17.31.16 (22)- Fix build against protobuf >= 22 (fixes #465, closes #466) Port away from protobuf_generate_cpp. Upstream protobuf does not export protobuf_generate_cpp by default anymore. Use protobuf_generate instead, which is also available on older versions. - Remove SUSE < SLE11 constructs (fixes #464). - version 17.31.15 (22)- build: honor libproxy.pc's includedir (bsc#1212222) - Curl: trim all custom headers (bsc#1212187) HTTP/2 RFC 9113 forbids fields ending with a space. So we make sure all custom headers are trimmed. This also includes headers returned by URL-Resolver plugins. - version 17.31.14 (22)- curl: Trim user agent string (bsc#1212187) HTTP/2 RFC 9113 forbids fields ending with a space. Violation results in curl error: 92: HTTP/2 PROTOCOL_ERROR. - version 17.31.13 (22)- Do not unconditionally release a medium if provideFile failed (bsc#1211661) - libzypp.spec.cmake: remove duplicate file listing. - version 17.31.12 (22)- MediaCurl: Fix endless loop if wrong credentials are stored in credentials.cat (bsc#1210870) Since libzypp-17.31.7 wrong credentials stored in credentials.cat may lead to an endless loop. Rather than asking for the right credentials, the stored ones are used again and again. - zypp.conf: Introduce 'download.connect_timeout' [60 sec.] (bsc#1208329) Maximum time in seconds that you allow the connection phase to the server to take. This only limits the connection phase, it has no impact once it has connected. (see also CURLOPT_CONNECTTIMEOUT) - commit: Try to provide /dev fs if not present (fixes #444) - fix build with boost 1.82. - version 17.31.11 (22)- fix build with boost 1.82- BuildRequires: libsolv-devel >= 0.7.24 for x86_64_v[234] support. - version 17.31.10 (22)- Workround bsc#1195633 while libsolv <= 0.7.23 is used. - Fix potential endless loop in new ZYPP_MEDIANETWORK. - ZYPP_METALINK_DEBUG=1: Log URL and priority of the mirrors parsed from a metalink file. - multicurl: propagate ssl settings stored in repo url (boo#1127591) Closes #335. - Teach MediaNetwork to retry on HTTP2 errors. - fix CapDetail to return Rel::NONE if an EXPRESSION is used as a NAMED cap. - Capability: support parsing richdeps from string. - defaultLoadSystem: default to LS_NOREFRESH if not root. - Detect x86_64_v[234]: Fix LZCNT bit used in detection (fixes [#439]) Merges rpm-software-management/rpm#2412: The bit for LZCNT is in CPUID 0x80000001, not 1. - Detect x86_64_v[234] architecture levels (fixes #439) - Support x86_64_v[234] architecture levels (for #439) - version 17.31.9 (22)- ProgressData: enforce reporting the INIT||END state (bsc#1206949) - ps: fix service detection on newer Tumbleweed systems (bsc#1205636) - version 17.31.8 (22)- Hint to "zypper removeptf" to remove PTFs. - Removing a PTF without enabled repos should always fail (bsc#1203248) Without enabled repos, the dependent PTF-packages would be removed (not replaced!) as well. To remove a PTF "zypper install - - -PTF" or a dedicated "zypper removeptf PTF" should be used. This will update the installed PTF packages to theit latest version. - version 17.31.7 (22)- Avoid calling getsockopt when we know the info already. This patch hopefully fixes logging on WSL, getsockopt seems to not be fully supported but the code required it when accepting new socket connections. (for bsc#1178233) - Enhance yaml-cpp detection (fixes #428) - No need to redirect 'history.logfile=/dev/null' into the target. - MultiCurl: Make sure to reset the progress function when falling back. - version 17.31.6 (22)- Create '.no_auto_prune' in the package cache dir to prevent auto cleanup of orphaned repositories (bsc#1204956) - properly reset range requests (bsc#1204548) - version 17.31.5 (22)- Do not clean up MediaSetAccess before using the geoip file (fixes #424) - version 17.31.4 (22)- Improve download of optional files (fixes #416) - Do not use geoip rewrites if the repo has explicit country settings. - Implement geoIP feature for zypp. This patch adds a feature to rewrite request URLs to the repo servers by querying a geoIP file from download.opensuse.org. This file can return a redirection target depending on the clients IP adress, this way we can directly contact a local mirror of d.o.o instead. The redir target stays valid for 24hrs. This feature can be disabled in zypp.conf by setting 'download.use_geoip_mirror = false'. - Use a dynamic fallback for BLKSIZE in downloads. When not receiving a blocklist via metalink file from the server MediaMultiCurl used to fallback to a fixed, relatively small BLKSIZE. This patch changes the fallback into a dynamic value based on the filesize using a similar metric as the MirrorCache implementation on the server side. - Skip media.1/media download for http repo status calc. This patch allows zypp to skip a extra media.1/media download to calculate if a repository needs to be refreshed. This optimisation only takes place if the repo does specify only downloading base urls. - version 17.31.3 (22)- Resolver: Fix missing --[no]-recommends initialization in update (fixes #openSUSE/zypper#459, bsc#1201972) - Log ONLY_NAMESPACE_RECOMMENDED because this is what corresponds to --[no]-recommends. - version 17.31.2 (22)- UsrEtc: Store logrotate files in %{_distconfdir} if defined (fixes #402) - Log backtrace on SIGABRT too. - Need to explicitly enable building experimental code. Otherwise an old Notcurses++ package which happens to be present in the buildenv breaks the build (fixes #412). - Work around libyui/libyui#78 on code 15.4 and older. - Stop using std::*ary_function; deprecated and removed in c++17. - Don't expose header files which use types not available in c++11. In 15.3 and older, YAST and PK compile with -std=c++11. - Remove no longer needed %post code (bsc#1203649) - Enable zck support for SLE15-SP4 and newer. On Leap it is enabled since 15.1 (bsc#1189282) - version 17.31.1 (22)- Add PoolItem::statusReinit to reset the status it's initial state in the ResPool (might help bsc#1199895) This may either be 'KEEP_STATE bySOLVER' or 'LOCKED byUSER' if the PoolItem matched a hard lock defined in /etc/zypp/locks. - Fix building with GCC 13 on i586 (fixes #407, fixes #396) - Be prepared to receive exceptions from curl_easy_cleanup (bsc#1201092) - Don't auto-flag kernel-firmware as 'reboot-needed' (bsc#1200993) - Remove Medianetwork and dependend code. This commit removes the MediaNetwork tech preview and all related code. First reason for this is that MediaNetwork was just meant as a way to test the new CURL based downloader and second: since the Provide API is going to completely replace the current media backend it would be extra work to ensure that changes on the Downloader do not break MediaNetwork. - version 17.31.0 (22)- Fix building with GCC 12.x release (#396) - version 17.30.3 (22)- appdata plugin: Pass path to the repodata/ directory inside the cache (bsc#1197684) - zypp-rpm: flush rpm script output buffer before sending endOfScriptTag. - version 17.30.2 (22)- PluginRepoverification: initial version hooked into repo::Downloader and repo refresh. - Immediately start monitoring the download.transfer_timeout. Do not wait until the first data arrived. (bsc#1199042) - singletrans: no dry-run commit if doing just download-only. - Work around cases where sat repo.start points to an invalid solvable. May happen if (wrong arch) solvables were removed at the beginning of the repo. - fix misplaced #endif SINGLE_RPMTRANS_AS_DEFAULT_FOR_ZYPPER (fixes #388) - version 17.30.1 (22)- ZConfig: Update solver settings if target changes (bsc#1196368) - version 17.30.0 (22)- Fix possible hang in singletrans mode (bsc#1197134) - Do 2 retries if mount is still busy. - version 17.29.7 (22)- Fix package signature check (bsc#1184501) Pay attention that header and payload are secured by a valid signature and report more detailed which signature is missing. - Retry umount if device is busy (bsc#1196061, closes #381) A previously released ISO image may need a bit more time to release it's loop device. So we wait a bit and retry. - Fix serializing/deserializing type mismatch in zypp-rpm protocol (bsc#1196925) - Fix handling of ISO media in releaseAll (bsc#1196061) - Hint on common ptf resolver conflicts (bsc#1194848) - version 17.29.6 (22)- Hint on ptf<>patch resolver conflicts (bsc#1194848) - version 17.29.5 (22)- Fix handling of redirected command in-/output (bsc#1195326) This fixes delays at the end of zypper operations, where zypper unintentionally waits for appdata plugin scripts to complete. - version 17.29.4 (22)- Public header files on older distros must use c++11 (bsc#1194597) - Fix exception handling when reading or writing credentials (bsc#1194898) - version 17.29.3 (22)- Fix Legacy include (bsc#1194597) - version 17.29.2 (22)- Fix broken install path for parser compat headers (fixes #372, bsc#1194597) - RepoManager: remember exec errors in exception history (bsc#1193007) - version 17.29.1 (22)- Use the default zypp.conf settings if no zypp.conf exists (bsc#1193488) - Fix wrong encoding of iso: URL components (bsc#954813) - Handle armv8l as armv7hl compatible userland. - Introduce zypp-curl a sublibrary for CURL related code. - zypp-rpm: Increase rpm loglevel if ZYPP_RPM_DEBUG is set. - Save all signatures associated with a public key in its PublicKeyData. - version 17.29.0 (22)- Disable logger in the child after fork (bsc#1192436) - version 17.28.8 (22)- Check log writer before accessing it (fixes #355, bsc#1192337) - Save locks: Update an existing locks changed comment string. - Allow uname-r format in purge kernels keepspec (fixes openSUSE/zypper#418) - version 17.28.7 (22)- Zypper should keep cached files if transaction is aborted (bsc#1190356) Singletrans mode currently does not keep files around if the transaction is aborted. This patch fixes the problem. - Require a minimum number of mirrors for multicurl (bsc#1191609) - Use procfs to detect nr of open fd's if rlimit is too high (bsc#1191324) Especially in a VM iterating over all possible fd's to close open ones right before a exec() slows down zypper unnecessarily. This patch uses /proc/self/fd to iterate over open fd's in case rlimit is above 1024. - po: Fix some lost '%' signs in positional args (bsc#1191370) - RepoManager: Don't probe for plaindir repo if URL schema is plugin: (bsc#1191286) - version 17.28.6 (22)- Downloader does not respect checkExistsOnly flag (bsc#1190712) A missing check causes zyppng::Downloader to always download full files even if the checkExistsOnly flag is set. This patch adds the missing logic. - Fix kernel-*-livepatch removal in purge-kernels (bsc#1190815) The kernel-*-livepatch packages are supposed to serve as a stable handle for the ephemeral kernel livepatch packages. See FATE#320268 for details. As part of the kernel live patching ecosystem, kernel-*-livepatch packages should not block the purge-kernels step. - version 17.28.5 (22)- Make sure to keep states alives while transitioning (bsc#1190199) - May set techpreview variables for testing in /etc/zypp/zypp.conf. If environment variables are unhandy one may enable the desired techpreview in zypp.conf as well: [main] techpreview.ZYPP_SINGLE_RPMTRANS=1 techpreview.ZYPP_MEDIANETWORK=1 - version 17.28.4 (22)- CMake/spec: Add option to force SINGLE_RPMTRANS as default for zypper (fixes #340) - Make sure singleTrans is zypper-only for now. - Do not double check signatures and keys (bsc#1190059) - version 17.28.3 (22)- Workaround Bug 1189788: Don't allow ZYPP_SINGLE_RPMTRANS=1 on a not UsrMerged Tumbleweed system. - version 17.28.2 (22)- Fix crashes in logging code when shutting down (bsc#1189031) - version 17.28.1 (22)- Rephrase vendor conflict message in case 2 packages are involved (bsc#1187760) This covers the case where not the packages itself would change its vendor, but replaces a package from a different vendor. - Fix solver jobs for PTFs (bsc#1186503) - spec: switch to pkgconfig(openssl) - Show key fpr from signature when signature check fails (bsc#1187224) Rpm by default only shows the short key ID when checking the signature of a package fails. This patch reads the signatures from the RPM headers and replaces she short IDs with the key fingerprints fetched from the signatures. - Implement alternative single transaction commit strategy. This patch adds a experimental commit strategy that runs all operations in a single rpm transaction, speeding up the execution a lot. - Use ZYPP_MEDIANETWORK=1 to enable the experimental new media backend. - Implement zchunk download, refactor Downloader backend. - Fix purge-kernels fails with kernels from Kernel:HEAD (bsc#1187738) There recently was a change in the kernel package naming scheme in regards to rc kernels. Since kernel upstream uses characters in the version that are not allowed in rpm versions a "-rc" was previously replaced with ".rc" which broke sorting by version, to fix this issue it was replaced with "~rc", which unfortunately broke the purge-kernels logic. This patch makes sure purge-kernel does apply the same conversion. - version 17.28.0 (22)- Enhance XML output of repo GPG options (fixes openSUSE/zypper#390) In addition to the effective values, add optional attributes showing the raw values actually present in the .repo file. (raw_gpgcheck, raw_repo_gpgcheck, raw_pkg_gpgcheck) - Link all executables with -pie (bsc#1186447) - Ship an empty /etc/zypp/needreboot per default (fixes #311, jsc#PM-2645) If packages want to trigger the reboot-needed hiint upon installation they may provide 'installhint(reboot-needed)'. Builtin packages triggering the hint without the provides are only kernel and kernel-firmware related. - Add Solvable::isBlacklisted as superset of retracted and ptf packages (bsc#1186503) - Fix segv if ZYPP_FULLOG is set (fixes #317) - version 17.27.0 (22)- Work around download.o.o broken https redirects. - Allow trusted repos to add additional signing keys (bsc#1184326) Repositories signed with a trusted gpg key may import additional package signing keys. This is needed if different keys were used to sign the the packages shipped by the repository. - MediaCurl: Fix logging of redirects. - Use 15.3 resolver problem and solution texts on all distros. - $ZYPP_LOCK_TIMEOUT: Let negative values wait forever for the zypp lock (bsc#1184399) Helps boot time services like 'zypper purge-kernels' to wait for the zypp lock until other services using zypper have completed. - Fix purge-kernels is broken in Leap 15.3 (bsc#1185325) Leap 15.3 introduces a new kernel package called kernel-flavour-extra, which contain kmp's. Currently kmp's are detected by name ".*-kmp(-.*)?" but this does not work which those new packages. This patch fixes the problem by checking packages for kmod(*) and ksym(*) provides and only falls back to name checking if the package in question does not provide one of those. - Introduce zypp-runpurge, a tool to run purge-kernels on testcases. - version 17.26.0 (22)- Properly handle permission denied when providing optional files (bsc#1185239) - Fix service detection with cgroupv2 (bsc#1184997) - version 17.25.10 (22)- Add missing includes for GCC 11 (bsc#1181874) - Fix unsafe usage of static in media verifier. - Solver: Avoid segfault if no system is loaded (bsc#1183628) - MediaVerifier: Relax media set verification in case of a single not-volatile medium (bsc#1180851) - Do no cleanup in custom cache dirs (bsc#1182936) - ZConfig: let pubkeyCachePath follow repoCachePath. - version 17.25.9 (22)- Try to provide a mounted /proc in --root installs (bsc#1181328) Some systemd tools require /proc to be mounted and fail if it's not there. - Enable release packages to request a releaxed suse/opensuse vendorcheck in dup when migrating. (bsc#1182629) - version 17.25.8 (22)- Patch: Identify well-known category names (bsc#1179847) This allows to use the RH and SUSE patch categrory names synonymously: (recommendedi = bugfix) and (optional = feature = enhancement). - Add missing includes for GCC 11 compatibility. (bsc#1181874) - Fix %posttrans script execution (fixes #265) The scripts are execuable. No need to call them through 'sh -c'. - Commit: Fix rpmdb compat symlink in case rpm got removed. - Repo: Allow multiple baseurls specified on one line (fixes #285) - Regex: Fix memory leak and undefined behavior. - Add rpm buildrequires for test suite (fixes #279) - Use rpmdb2solv new -D switch to tell the location ob the rpmdatabase to use. - BuildRequires: libsolv-devel >= 0.7.17. - version 17.25.7 (22)- Rephrase solver problem descriptions (jsc#SLE-8482) - Adapt to changed gpg2/libgpgme behavior (bsc#1180721) - Multicurl backend breaks with with unknown filesize (fixes #277) - version 17.25.6 (22)- Fix lsof monitoring (bsc#1179909) - version 17.25.5 (22)- Prevent librpmDb iterator from accidentally creating an empty rpmdb in / (repoened bsc#1178910) - Fix update of gpg keys with elongated expire date (bsc#1179222) - needreboot: remove udev from the list (bsc#1179083) - Prefer /run over /var/run. - version 17.25.4 (22)- RepoManager: Carefully tidy up the caches. Remove non-directory entries. (bsc#1178966) - RpmDb: If no database exists use the _dbpath configured in rpm. Still makes sure a compat symlink at /var/lib/rpm exists in case the configures _dbpath is elsewhere. (bsc#1178910) - Url: Hide known password entries when writing the query part (bsc#1050625 bsc#1177583, CVE-2017-9271) - adapt testcase to change introduced by libsolv#402. - RepoManager: Force refresh if repo url has changed (bsc#1174016) - RepoInfo: ignore legacy type= in a .repo file and let RepoManager probe (bsc#1177427, Fixes openSUSE/zypper#357). - version 17.25.3 (22)- Bump version to force rebuild against a fixed libsolv. (bsc#1177238, bsc#1177275) - version 17.25.2 (22)- Fix bsc#1176902: When kernel-rt has been installed, the purge-kernels service fails during boot. - Use package name provides as group key in purge-kernel (bsc#1176740 bsc#1176192) kernel-default-base has new packaging, where the kernel uname -r does not reflect the full package version anymore. This patch adds additional logic to use the most generic/shortest edition each package provides with %{packagename}= to group the kernel packages instead of the rpm versions. This also changes how the keep-spec for specific versions is applied, instead of matching the package versions, each of the package name provides will be matched. - version 17.25.1 (22)- RepoInfo: Return the type of the local metadata cache as fallback (bsc#1176435) - VendorAttr: Fix broken "suse,opensuse" equivalence handling. Enhance API and testcases. (bsc#1174918) - Update docs regarding 'opensuse' namepace matching. - New solver testcase format. - Link against libzsd to close libsolvs open references (as we link statically) - BuildRequires: libsolv-devel >= 0.7.15. - version 17.25.0 (22)- VendorAttr: Const-correct API and let Target provide its settings (bsc#1174918) - Support buildnr with commit hash in purge-kernels (bsc#1175342) This adds special behaviour for when a kernel version has the rebuild counter before the kernel commit hash. - Improve Italian traslation of the "breaking dependencies" message (bsc#1173529) - Make sure reading from lsof does not block forever (bsc#1174240) - Just collect details for the signatures found (fixes #229) - version 17.24.2 (22)- Fix bsc#1174011 auth=basic ignored in some cases (bsc#1174011) Proactively send credentials if the URL specifes '?auth=basic' and a username. - ZYPP_MEDIA_CURL_DEBUG: Strip credentials in header log (bsc#1174011) - version 17.24.1 (22)- Completey rework the purge-kernels algorithm (fix bsc#1173106) The new code is closer to the original perl script, grouping the packages by name before applying the keep spec. - Set ZYPP_RPM_DEBUG=1 to capture verbose rpm command output (implements #228) - version 17.24.0 (22)- Fix core dump with corrupted history file (bsc#1170801) - version 17.23.8 (22)- Enable zchunk metadata download if libsolv supports it. - version 17.23.7 (22)- Revert "Enable zchunk on SLE-15-SP2". - version 17.23.6 (22)- Enable zchunk on SLE-15-SP2. - Older kernel-devel packages are not properly purged (bsc#1171224) - doc: enhance service plugin example. - version 17.23.5 (22)- Get retracted patch status from updateinfo data (jsc#SLE-8770) libsolv injects the indicator provides into packages only. - remove 'using namespace std;' (bsc#1166610, fixes #218) - Online doc: add 'Hardware (modalias) dependencies' page (fixes #216) - version 17.23.4 (22)- Add HistoryLogReader actionFilter to parse only specific HistoryActionIDs. - version 17.23.3 (22)- RepoVariables: Add safe guard in case the caller does not own a zypp instance. - Enable c++17. Define libyzpp CXX_STANDARD in ZyppCommon.cmake. - version 17.23.2 (22)- Fix package status computation regarding unneeded, orphaned, recommended and suggested packages (broken in 17.23.0) (bsc#1165476) - version 17.23.1 (22)- Log patch status changes to history (jsc#SLE-5116) - Allow to disable all WebServer dependent tests when building. OBS wants to be able to get rid of the nginx/FastCGI-devel build requirement. Use 'rpmbuild --without mediabackend_tests' or 'cmake -DDISABLE_MEDIABACKEND_TESTS=1'. - version 17.23.0 (22)- update translations - Replace mongoose/webrick with nginx in test suite. This patch makes use of nginx to replace the current WebServer mongoose implementation. Also adds support for registering callback functions for certain URL requests via FCGI, making it possible to mock HTTP responses and test more complex HTTP setups. - boost: Fix deprecated auto_unit_test.hpp includes. - Disable zchunk on Leap-15.0 and SLE15-* while there is no libzck. - Fix decision whether to download ZCHUNK files. libzypp and libsolv must both be able to read the format. - version 17.22.1 (22)- yum::Downloader: Prefer zchunk compressed metadata if libvsolv supports it. - BuildRequires: libsolv-devel >= 0.7.11. - version 17.22.0 (22)- Selectable: Fix highestAvailableVersionObj if only retracted packages are available. Avoid using retracted items as candidate (jsc#SLE-8770) - version 17.21.0 (20)- BuildRequires: libsolv-devel >= 0.7.10. - RpmDb: Become rpmdb backend independent (jsc#SLE-7272) - RpmDb: Close API offering a custom rpmdb path It's actually not needed and for this to work also libsolv needs to support it. You can sill use a librpmDb::db_const_iterator to access a database at a custom location (ro). - Remove legacy rpmV3database conversion code. - version 17.20.0 (20)- MediaCurl: assert cookie file has mode 0600 (bsc#1158763, CVE-2019-18900) - version 17.19.0 (12)- dup: fix removing orphaned packages dropped by to-be-installed products (bsc#1155819) - version 17.18.1 (12)- Resolver: add solution actions for SOLVER_SOLUTION_BLACK (retracted/PTF) - Solvable: add isRetracted and isPtf attributes. - version 17.18.0 (12)- Introduce PurgeKernels class (bsc#1155198) Adds libzypp API to mark all obsolete kernels according to the existing purge-kernel script rules. - Add solver jobs for retracted packages and ptfs. Support for ptf packages and retract ed patches. - Do not enforce 'en' being in RequestedLocales (bsc#1155678) If the user decides to have a system without explicit language support he may do so. - Pass correct posttrans script argument (fixes #190) - BuildRequires: libsolv-devel >= 0.7.8. - version 17.17.0 (12)- Expose new libsolv API via C++ counterparts (openSUSE/zypper#214) - BuildRequires: libsolv-devel >= 0.7.7 - version 17.16.0 (12)- Fix empty metalink downloads if filesize is unknown (bsc#1153557) - Recognize riscv64 as architecture - Fix installation of new header file (fixes #185) - zypp.conf: Introduce `solver.focus` to define the resolvers general attitude when resolving jobs. (bsc#1146415) - New container detection algorithm for zypper ps (bsc#1146947) - version 17.15.0 (12)- Revert "Use CURL_HTTP_VERSION_2TLS if available" (bsc#1146027) - doc: add service example using variables - Fix build with rpm >= 4.15 (fixes #172) - version 17.14.1 (12)- PublicKey::algoName: supply key algorithm and length - version 17.14.0 (12)- MediaCurl: Fix leaking filedescriptors (bsc#1116995) - commit: Run file conflict check on dry-run (best with download-only) (bsc#1140039) - commit: do not remove orphan products if the .prod file is owned by a package (bsc#1139795) - version 17.13.0 (12)- Drop unused InterProcessMutex class and test - Drop unused WebpinResult class and test - Give posttrans script a parameter of 0 (issue #168) - Use CURL_HTTP_VERSION_2TLS if available (fixes #141) - version 17.12.0 (12)- Enhance scanning /sys for modaliases (bsc#1130161) - version 17.11.4 (9)- Prevent SEGV if the application sets an empty TextLocale (bsc#1127026)- Fix build with CMake >= 3.14.0: Starting with CMake 3.14, EXCLUDE_FROM_ALL now spreads from directories to targets. 'make -C someSubdir' when 'someSubdir' uses the 'EXCLUDE_FROM_ALL' keyword does nothing. (gh/libzypp#libzypp#165)- KeyManager: Work around bsc#1127220 [libgpgme] no error upon incomplete import due to signal received. - MediaCurl: add hint to check SCC for an expired regcode on http error 403 (bsc#965786) - version 17.11.3 (9)- Correctly handle exceptions when verifying the medium (bsc#1065022) - Only write type field when probing (bsc#1114908) - Don't blame user on TargetAbortedException (bsc#978193) - version 17.11.2 (9)- CheckAccessDeleted: Suppress reporting `/memfd:` pseudo files (bsc#1123843) - MediaCurl: improve reporting https->http redirection errors - Prevent SEGV if the application sets an empty TextLocale - Url: don't force printing an empty authority if the schema does not allow authority at all - Try to the missing rpmDB compat symlink in case the rpm package got deleted (bsc#1122471) - version 17.11.1 (9)- PoolItemBest: Optionally prefer not locked packages (for bsc#1113296) - ui::Selectable: add `hasLocks` to indicate a partially locked item (for bsc#1113296) - version 17.11.0 (9)- Simplify complex locks so zypper can display them (bsc#1112911) - version 17.10.3 (9)- commit: set `SYSTEMD_OFFLINE=1` during chrooted commits (bsc#1118758) - no-recommends: Nevertheless consider resolver namespaces (hardware, language,..supporting packages) (FATE#325513) - BuildRequires: libsolv-devel >= 0.7.2 (SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED) - Remove world-readable bit from /var/log/zypp (bsc#1099019) - version 17.10.2 (9)- Adapt to changes in upcoming Boost 1.69.0 - Do not fail service-refresh on a empty repoindex.xml (bnc#1116840) - version 17.10.1 (9)- str: recognize 'always' and 'never' as valid boolean strings - Fix needreboot code to use SolvableSpec parser (fate#326451) - SolvableSpec: Define a set of Solvables by ident and provides - version 17.10.0 (9)- Provide needreboot config files in /etc/zypp (fate#326451, fixes #140) - Need to fix soname due to libsolv ABI changes (bsc#1115341) - version 17.9.0 (9)- Adapt to changed type names in libsolv-0.7 - Package needreboot file (fate#326451) - Fix definitions of gettext macros (fixes #135) - version 17.8.1 (2)- Add infrastructure to flag specific packages to trigger a reboot needed hint (fate#326451) - Adapt to libsolv: Drop support for REPOKEY_TYPE_U32 - Resolver: add setInr to request solving namespaces - ResolverNamespace: add No/AllResolverNamespaces constants - version 17.8.0 (2)- Fix blocking wait for finished child process (bsc#1109877) - version 17.7.2 (2)- Fix conversion of string and glob to regex when compiling queries (bsc#1099982, bsc#939392, bsc#556664) - version 17.7.1 (2)- Drop type application due to poor metadata support (bsc#1100095, bsc#1104415) - version 17.7.0 (2)- Automatically fetch repository signing key from gpgkey url (bsc#1088037) - lsof: use '-K i' if lsof supports it (bsc#1099847,bsc#1036304) - version 17.6.4 (2)- Check for not imported keys after multi key import from rpmdb (bsc#1096217) - version 17.6.3 (2)- fixup! Add filesize check for downloads with known size (bsc#408814) Fix detetction of metalink downloads and prevent aborting if a metalink file is larger than the expected data file. - version 17.6.2 (2)- Adapt to changes in libgpgme11-11.1.0 breaking the signature verification (bsc#1100427) - Use %license (bsc#1082318) - BuildRequires: libsolv-devel >= 0.6.35 (for bsc#1100095) - changes: add CVE numbers - version 17.6.1 (2)- RepoInfo::provideKey: add report telling where we look for missing keys. - Support listing gpgkey URLs in repo files (bsc#1088037) - Add new report to request user approval for importing a package key - Handle http error 502 Bad Gateway in curl backend (bsc #1070851) (fixes openSUSE/zypper#177) - Add filesize check for downloads with known size (bsc#408814) - Removed superfluous space in translation (bsc#1102019) - version 17.6.0 (2)- Prevent the system from sleeping during a commit (fixes openSUSE/zypper#135) - RepoManager: Explicitly request repo2solv to generate application pseudo packages. - version 17.5.2 (2)- libzypp-devel should not require cmake (bsc#1101349) - Avoid zombies from ExternalProgram - Update ApiConfig - fix typo - version 17.5.1 (2)- HardLocksFile: Prevent against empty commit without Target having been been loaded (bsc#1096803) - lsof: use '-K i' if lsof supports it (bsc#1099847) - PackageProvider: Validate deta rpms before caching (bsc#1091624, bsc#1088705, CVE-2018-7685) - PackageProvider: Validate downloaded rpm package signatures before caching (bsc#1091624, bsc#1088705, CVE-2018-7685) - version 17.5.0 (2)- Flags: make it std=c++14 ready - Replace 'redhat-release' with generic 'system-release' (#120) - Ignore /var, /tmp and /proc in zypper ps (bsc#1096617) - Show GPGME version in log - version 17.4.0 (2)- Avoid zombie tar processes (bsc#1076192) - Replace the terminology 'uninstallable' with 'not installable' (bsc#1029392) - version 17.3.1 (2)- Show progressbar when running posttrans scripts - Execute service plugin script chrooted to the RepoManagers root (bsc#1080693) - Make sure the product file comes from /etc/products.d for the fallback product search (bsc#1086602) - Introduce ZConfig::repoManagerRoot to support having diverging target and repomanager root paths - Rename `stderr` as it can be a macro (fixes #102) - version 17.3.0 (2)- Protect code against broken translations (bsc#1082711) - Fix broken translated format strings - Deprecate the use of asciidoc for new releases - version 17.2.2 (2)- PoolQuery::addDependency add overload to define an individual Match::Mode (bsc#1043166) - version 17.2.1 (2)- Add /var/lib/gdm to CheckAccessDeleted blacklist (bsc#1079991) - Use gpgme instead of calling gpg2 binary directly - Fix leak in Digest.cc (bsc#1075978) - version 17.2.0 (2)- RpmDb::checkPackage: fix parsing localized rpm output (bsc#1076415) - Replace libexpat with libxml - Fix libzypp tests failing with `-Wp,-D_GLIBCXX_ASSERTIONS` compiler flag (fixes #84) - BuildRequire gpg2 as testcases need it (fixes #84) - version 17.1.3 (0)- Fix crash when installing broken rpm packages (bsc#1078284) - Testcase: Minor fix writing update testcases - version 17.1.2 (0)- Adapt rpm package verification to changes in rpm-4.14 (bsc#1076018) - version 17.1.1 (0)- plugin: don't reject header values containing a ':' (bsc#1074687) - Locks: Don't store duplicate locks (bsc#969569) - version 17.1.0 (0)- Fix default for solver.allowNameChange (bsc#1071466) - version 17.0.5 (0)- Stop BuildRequire dropped boost-devel (bsc#1062782) - version 17.0.4 (0)- When importing multiple keys, export the individual keys ascii armored for import into the rpmdb (bsc#1069381) - version 17.0.3 (0)- Don't filter procs with a different mnt namespace (bsc#1068708) - Support repo variables in an URIs host:port component (bsc#1057640, bsc#1067605) - version 17.0.2 (0)- Solvable: fix inconsistent retrieval of mediaNr (bsc#1065677) - version 17.0.1 (0)- Locale: Fix possible segfault (bsc#1064999) - RpmDb: Remove excess keys in the zypp keyring when exporting keys only (bsc#1064380) - KeyRing: Fix deleted keys not removed from rpmdb too (bsc#1064380) - Flag gpg keycache dirty when adding/removing keys (bsc#1064380) - Version 17.x for CODE-15, 16.x. is continued on SuSE-SLE-12-SP2-Branch - version 17.0.0 (0)- Fix media handling in presence of a repo path prefix (bsc#1062561) - version 16.17.3 (0)- Fix RepoProvideFile ignoring a repo path prefix (bsc#1062561) - version 16.17.2 (0)- Default to 'solver.dupAllowVendorChange = false' on SLE15 (FATE#323478) - Remove unused legacy notify-message script (bsc#1058783) - version 16.17.1 (0)- Support multiple product licenses in repomd (FATE#322276) - version 16.17.0 (0)- Propagate 'rpm --import' errors (bsc#1057188) - Fix typos in zypp.conf - version 16.16.0 (0)- Add testcase to compile (bsc#1055920) - version 16.15.6 (0)- Adapt to work with GnuPG 2.1.23 (bsc#1054088) - version 16.15.5 (0)- verifyFileSignature: Support signing with subkeys (bsc#1008325) - PublicKey: Scan and provide subkey information. - Enhance sort order for media.1/products (bsc#1054671) - Drop detection and support for rpm-4.4 (fixes #77) - version 16.15.4 (0)- RepoInfo: add enum GpgCheck for convenient gpgcheck mode handling (bsc#1045735) - Fix repo/pkg checks to follow explicitly defined gpgcheck in a .repo file - version 16.15.3 (0)- Weaken fix for bsc#1038984 if 'gpgcheck=0' in libzypp-16.15.x only. This will allow some already released products to adapt to the behavioral changes introduced by fixing bsc#1038984, while systems with a default configuration (gpgcheck=1) already benefit from the fix in libzypp-16.15.x. For details see section 'Signature checking' in /etc/zypp/zypp.conf. - Fix gpg-pubkey release (creation time) computation (bsc#1036659) - update lsof blacklist (bsc#1046417) - version 16.15.2 (0)- Be sure bad packages do not stay in the cache (bsc#1045735, CVE-2017-9269) - version 16.15.1 (0)- PackageProvider: enforce a signed package if pkgGpgCheckIsMandatory - Add RpmDb::checkPackageSignature to report unsigned packages - Fix repo gpg check workflows, mainly for unsigned repos and packages (bsc#1045735, bsc#1038984, CVE-2017-7435, CVE-2017-7436, CVE-2017-9269) - version 16.15.0 (0)- repo refresh: Re-probe if the repository type changes (bsc#1048315) - MediaCurl: Propagate proper error code to DownloadProgressReport (bsc#1047785) - Allow to trigger an appdata refresh unconditionally (bsc#1009745) - Support custom repo variables defined in /etc/zypp/vars.d (fixes #68) - rename: handle EXDEV error on OverlayFS - version 16.14.0 (0)- Adapt loop mounting of iso images (bsc#1038132, bsc#1033236) - Adjust zypp.conf for openSUSE Tumbleweed (bsc#1031756) - Change arch variable names conflicting with compiler macros (fixes #70) - Fix potential crash if repo has no baseurl (bnc#1043218) - version 16.13.0 (0)- Testcase: add missing solver flags (bsc#1041889) - version 16.12.0 (0)- add identIsAutoInstalled convenience methods - make gcc6 happy - version 16.11.0 (0)- Use a common workflow for downloading packages and srcpackages. This includes a common way of handling and reposrting gpg signature and checks. (bsc#1037210) - PackageProvider: as well support downloading SrcPackage (for bsc#1037210) - version 16.10.0 (0)- PoolQuery: Treat explicit queries for 'kind:name' correctly (bsc#1035729) - version 16.9.0 (0)- Add API to control resolver job to update all packages (FATE#320653) - Remove legacy vendor equivalence between 'suse' and 'opensuse' (bsc#1030686) - version 16.8.0 (0)- RepoInfo: Allow temporary repos to control their metadata directories (bsc#1032632) - Arch: add armv5tl - version 16.7.0 (0)- Recognize license tarball in rpmmd repos (FATE#316159) - Fix media verification to properly propagate media access errors (bsc#1031093) - version 16.6.1 (0)- Fix invalidation of PoolItems if Pool IDs are reused (bsc#1028661) - version 16.6.0 (0)- Fix X-libcurl-Empty-Header-Workaround (bsc#1030919) - version 16.5.2 (0)- MediaCurl: Treat http response 410(Gone) like 404(Not Found) (bsc#1030136) - version 16.5.1 (0)- Support multi-volume repomd repositories (FATE#320544) - MediaCurl: ZYPP_MEDIA_CURL_IPRESOLVE=<4|6> to force name resolution to IPv4/IPv6 only (fixes openSUSE/zypper#49) - Add support for openssl >= 1.1 - version 16.5.0 (0)- PublicKey: Create tmpdirs inside ZYpp::tmpPath (bsc#926844) - Don't create AnonymousUniqueId in chroot (bsc#1024741) - version 16.4.3 (0)- dumpAsXmlOnL: xml escape node content (bsc#1024909) - version 16.4.2 (0)- MediaMultiCurl: Trigger aliveCallback when downloading metalink files (bsc#1021291) - version 16.4.1 (0)- Add API for updating the AutoInstalled db - MediaCD: Fix mountpoint creation after failing udf mount (bsc#1022046) - fix misleading indentation (fixes #65) - Fix compilation error reported by GCC7 (#63). - Prefer calling "repo2solv" rather than "repo2solv.sh" - version 16.4.0 (0)- Don't raise FileCheckException if user accepted a package with wrong digest (bsc#1014265) - Also provide the exception history when requesting a media failed (bsc#1010952) - version 16.3.2 (0)- Let 'dup --from' leave an updateTestcase- in /var/log (bsc#1004096) - version 16.3.1 (0)- RepoInfo: Allow parsing multiple gpgkey= URLs (bsc#1003748) - version 16.3.0 (0)- guessPackageSpec: Don't break globbing (fixes openSUSE/zypper#97) - version 16.2.5 (0)- RepoFileReader: fix parsing of multiline url entries (bsc#964932) - Allow repo type 'rpm' as alias for 'rpm-md' (fixes openSUSE/zypper#100) - version 16.2.4 (0)- xmlout::Node: Allow adding nore attributes while the start node is not closed (FATE#320699) - Fixes broken XML output introduced by an unwanted change in 16.2.2 (bsc#998344) - version 16.2.3 (0)- Report numeric curl error if code is unrecognized (bsc#992302) - multicurl: propagate proxy settings stored in repo url (bsc#933839) - version 16.2.2 (0)- Rebuild .solv-files not matching the parsers LIBSOLV_TOOLVERSION - BuildRequires: libsolv-devel >= 0.6.23 - version 16.2.1 (0)- Product: Offer tri-state hasEndOfLife details (FATE#320699) - version 16.2.0 (0)- use more user friendly command names for "zypper ps" (bsc#980541) - version 16.1.3 (0)- Don't do media number substitution on URLs of medium #1 (bsc#798470) - version 16.1.2 (0)- Fix Shrink pool if all repos are removed (bsc#899755, bsc#987573) - version 16.1.1 (0)- API enahncements for zypper (FATE#320447) - version 16.1.0 (0)- Filter duplicate resolver solutions (bsc#985674) - zypp.conf: Add download.media_mountdir: Path where media are preferably mounted or downloaded (FATE#319462) - version 16.0.5 (0)- Fix bug in removeRepository which may keep an empty .repo file rather than deleting it (bsc#984494) - version 16.0.4 (0)- Shrink pool if all repos are removed (bnc#899755) - Avoid direct BuildRequire on libudev-devel (#60) - version 16.0.3 (0)- Allow PackageKit to drop the zypp lock (bnc#899755) - Avoid superfluous rebuilding of indices when solving - version 16.0.2 (0)- po: upadte makefiles - DefaultIntegral: provide asString (for FATE#320447) - version 16.0.1 (0)- Prepare cmake to maintain the .pot and .po files in git. Add initial .po file set derived from tarballs. Translations are now maintained via Weblate. - Provide 'libzypp(plugin:services) = 1' after fixing bsc#933760 - Bump major version for Factory, 15.x is continued on SuSE-SLE-12-SP1-Branch - version 16.0.0 (0)- Update sle-zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Fix credential file parser losing entries with known URL but different user name (bsc#933760) - RepoManager: allow extraction of multiple baseurls for service repos (bsc#964932) - addRepository: fix to use the correct history file for logging - specfile: add /etc/zypp/credentials.d to the file list - version 15.22.0 (19)- RepoindexFileReader: fix service metadata TTL default value (bsc#967828) - version 15.21.7 (19)- DiskUsageCounter: Limit estimated waste per file (bsc#974275) - version 15.21.6 (19)- Use PluginExecutor for commit- and system-hooks (bnc#971637) - BuildRequires: libsolv-devel >= 0.6.19 (bnc#971018) - version 15.21.5 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- media: Send stats header to download.opensuse.org only (bsc#955801) - fix build-compare (#57, #58) - version 15.21.4 (19)- yum::Downloader: Download only wanted 'susedata.LANG' files (FATE#320518) - version 15.21.3 (19)- installSrcPackage: trigger progress callback (bsc#580902) - version 15.21.2 (19)- Update zypp-po.tar.bz2- Don't buildrequire graphviz-gnome (bsc#964150) - Unwanted btrfs subvolumes must be filtered by device (not fsid) (fixes #54) - version 15.21.1 (19)- Update zypp-po.tar.bz2- Filter unwanted btrfs subvolumes (fixes #54, closes #55, bnc#949945) - RepoInfo: Provide access to repo content keywords - Build with boost-1.60.0 - version 15.21.0 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- ResPoolProxy: make begin/end pairs Iterable - String: Format and FormatNAC classes based on boost::format - DefaultIntegral: provide initial value - More specific exception message if GPG binary is missing (bsc#637791) - version 15.20.0 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- createPot: Fix plural form detection (bsc#955053) - version 15.19.7 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Add testcase for uncached repo-variables. - Fixed Japanese translations (bsc#949196) - version 15.19.6 (19)- Update sle-zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Fix broken product: <-> -release package relation (bnc#951782) - version 15.19.5 (19)- Use a uniform translation set for SLE and openSUSE (bnc#948924) - fix Plugin-services not updating repo GPGCheck settings (bnc#951402) - version 15.19.4 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- make Solvable::asUserString more readable (bnc#949957) - version 15.19.3 (19)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- fix suse_version test (bsc#949046) - version 15.19.2 (19)- Locks: fix using namespaces (for FATE#318299) - version 15.19.1 (19)- fix reserved identifier violation (fixes #51) - solver: speed up collecting pool data to build the job queue - doc: short abstract about 'Code 12 Application Metadata' - version 15.19.0 (19)- solver verify: multiversion property needs to be assigned to installed items too. - ZYppCommitResult: add attemptToModify to indicate an attempt to actually install/remove was made (bsc#946750, FATE#319467) - version 15.18.0 (14)- SetTracker: fix computation of change sets (bsc#946898) - version 15.17.2 (14)- Pattern: support dynamic computation of pattern visibility (bsc#900769) - Avoid URL rewrite if probing local cache directories (bsc#946129) - version 15.17.1 (14)- Dummy (FATE#318827) to make Sles-changelog-checker stop whining. - version 15.17.0 (14)- Glob: fix reserved identifier violation - version 15.16.2 (14)- CheckAccessDeleted: Identify services by systemd cgroup (FATE#318827) - version 15.16.1 (14)- Reload multiversion setting from the target zypp.conf (bnc#906096) - version 15.16.0 (14)- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Don't cache repo releasever (bnc#943563) - Selectable: allow setPickStatus for non-multiversion packages (bnc#943870) - ResPoolProxy: add ScopedSaveState - version 15.15.0 (14)- zypp.conf: add solver.dupAllow{Downgrade,NameChange,ArchChange, VendorChange} default options for tuning distribution upgrades. - Remove obsolete method (bsc#941398) (fixes #50) - fix invalid XML (bnc#942518) - version 15.14.0 (14)- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Support caching of service metadata. A TTL for the service metadata may be provided in the repoindex.xml itself. The default is 'no caching'. (FATE#318136) - Fix setting dup_allow* solver options (bnc#941463) - Don't make zypper encode {} around repo vars (bnc#941453) - version 15.13.0 (11)- Update zypp-po.tar.bz2- History: Add 'command' tag showing who triggered the commit. The corresponding HistoryLogData class for parsing is HistoryLogDataStampCommand. Available data are the commandline executed, user@hostname and userdata/transactionID. (FATE#312298) - Add convenience comparison PoolItem<>ResObject::constPtr - Fixes for SWIG 2.x - version 15.12.0 (11)- Make multiversion an individual solvables property (FATE#318778) - SolvableType: common api to access solvable properties - Support for MIPS architectures - version 15.11.0 (11)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Resolver: Track changed requested locales and adjust installed packages accordingly. (part of FATE#318099) - Testcase: Store autoinstalled packages - Locale: Make it IdString based - Get rid of std::tr1:: hashes - Flags: Fix to work with 'enum class' - Hide away resolver internals - version 15.10.0 (10)- Update zypp-po.tar.bz2- Update sle-zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Resolver allow tuning DUP mode solver flags (FATE#319128) - version 15.9.0 (5)- Flags: add stringify - add asString for Patch::InteractiveFlag - version 15.8.0 (5)- Update zypp-po.tar.bz2- add asString for Patch::Category - version 15.7.0 (5)- Fix lost pathname when importing repo keys (bnc#936373) - Disable code swig does not understand - version 15.6.0 (5)- Patch: fixup testing Category and Severity flags (FATE#318760) - version 15.5.0 (5)- Add details to the default signature verification problem report - PathInfo: Avoid ExternalProgram in clean_dir - call rpmdb2solv without executing user-supplied scripts (bnc#926853) - version 15.4.1 (3)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Enhance solv.idx file handling to support zypper bash completion - Fix SSL client certificate authentication via URL option ssl_clientcert/ssl_clientkey (bnc#932393) - version 15.4.0 (3)- Update zypp-po.tar.bz2- Downloader: Accept unsigned repository if pkgGpgCheck is ON. - FindFileConflicts: avoid nested exception on user abort (bnc#931601) - Support for *.check files in the systemCheck.d directory (#45) - version 15.3.0 (3)- Update zypp-po.tar.bz2- zypp.conf: Add config values for gpgcheck, repo_gpgcheck and pkg_gpgcheck. The default behavior 'gpgcheck=On' will automatically turn on the gpg signature check for packages downloaded from repository with unsigned metadata. If the repo metadata are signed, a faster comparison via checksums is done. By explicitly setting repo_gpgcheck or pkg_gpgcheck you can enforce the signature check of repository metadata or downloaded packages to be always performed. Those defaults can be overwritten per repository. (FATE#314603) - version 15.2.0 (2)- Write solv.idx to speed up bash tab completion (bnc#928650) - version 15.1.3 (1)- gcc5 fixes - Fix repo alias containing ']' not handled correctly (bnc#929528) - Fix SEGV when dumping rpm header with epoch (bnc#929483) - version 15.1.2 (1)- PubliKey: fix reference to temporary data - version 15.1.1 (1)- Update zypp-po.tar.bz2- ZYpp: Changed ZYpp::Ptr to be a shared_ptr; a precondition for fixing bnc-899755 - rpmmd: support 'metalink=' in .repo (for zypper#63) - RepoMirrorList: ignore comments and malformed urls in mirrorlist - PathInfo: remove minor/major conflicting with GNU libc macros DiskUsageCounter: remove ctors taking 'magic' bool flags ZyppCallbacks: remove unused PatchDownload callbacks - version 15.1.0 (1)- POODLE: libzypp should only talk TLS (bnc#903405) - Bump major version for Factory, 14.x is continued on SuSE-SLE-12-Branch - version 15.0.0 (0)- Fixes to build with gcc5 - RepoProvideFile: Suppress MediaChangeReport while testing multiple baseurls (bnc#899510) - version 14.38.1 (30)- Suppress MediaChangeReport while testing multiple baseurls (bnc#899510) - version 14.38.0 (30)- add support for SHA224/384/512 - version 14.37.1 (30)- New RepoVarExpand: Functor expanding repo variables in a string . Supports bash style default ${v:-w}' and alternate ${v:+w} values (FATE#318354) - Easy.h: Use __typeof__ rather than typeof in header - Support repo variable replacement in service url - Support repo variable replacement in gpg url - Gettext.h: Fallback to ::gettext if accidentally included outside libzypp - version 14.37.0 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Don't execute scripts in /tmp or /var/tmp, as they could be mounted noexec for security reasons (bnc#915928) - zypp/PublicKey.cc: Use GPG_BINARY from KeyRing - Support $releasever_major/$releasever_minor repo variables (FATE#318354) - version 14.36.0 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- PathInfo: Deprecate major/minor in favor of new devMajor/devMinor. The old names clash with GNU libc macros. - version 14.35.0 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Properly propagate repo variables in service refresh. - Let $ZYPP_REPO_RELEASEVER overwrite $releasever in .repo files (bnc#911658) - Call pool_set_rootdir to properly check for file conflicts. - Use xgettext --boost to support boost-format (%N%) - version 14.34.0 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- Parse and offer productRegisterFlavor attribute (bnc#896224) - version 14.33.0 (30)- Update zypp-po.tar.bz2- Improve conflict message for locked packages (bnc#828631) - Fix broken de-escaping in str::splitEscaped (bnc#909772) - cleanup loging - version 14.32.2 (30)- CheckAccessDeleted: Filter PIDs running in a container (bnc#909143) - version 14.32.1 (30)- suppress informal license (no need to accept) upon update (bnc#908976) - version 14.32.0 (30)- Adapt to gpg-2.1 (bnc#908135) - rpm: do not obsolete yast2-packagemanager-devel by libzypp-devel-doc - replaceAll: fix endless loop on empty search string - version 14.31.0 (30)- Do not provide/obsolete yast2-packagemanager-devel by the -doc package: the -devel package already does that. - Minor .spec cleanup (remove Authors section).- Call rpm with '--noglob' (bnc#892431) - Downloader: unify workflow downloading a (signed) master index file - Fix iostream includes (fixes #34) - Explicitly call libsolv:pool_setdisttype (fixes #36) - version 14.30.2 (30)- Update zypp-po.tar.bz2- Update zypp-po.tar.bz2- doc: add hint to code 12 pattern packages - MediaCurl: Fix URL path concatenation (bnc#901590) - Move doxygen html doc to libzypp-devel-doc (bnc#901691) - Remove non-breaking spaces from changes file - Control lifetime of downloaded mirrorlist - version 14.30.1 (30)- Update zypp-po.tar.bz2- Store baseurls in list as order expresses preference - Support parsing multiple baseurls from a repo file (bnc#899510) - Fix handling local mirrorlist= files in .repo (bnc#899510) - Provide missing man pages (fixes #33) - Enable building autodocs, translations and test per default on debian - Fix several typos in output messages and comments (fixes #29) - Make the include dir path configurable (fixes #27) - version 14.30.0 (30)/sbin/ldconfig/sbin/ldconfigyast2-packagemanagerh01-ch2d 1728918192  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgarastbebgbncacsdadeelenesetfafifrglguhehihrhuiditjakmkoltmkmrnbnlnnpaplptptroruskslsrsvtathtrukviwazhzh17.35.12-150500.6.21.117.35.12-150500.6.21.10.10101101.117.35.12-150500.6.21.1  !"#$%&'()*+,-./0123456789:;<==>?@ABBBBBBBBBBBBBBBCDEzypp-history.lrzyppcredentials.dmultiversion.dneedrebootneedreboot.drepos.dservices.dsystemChecksystemCheck.dvars.dvendors.dzypp.confzypp-CheckAccessDeletedzypp-NameReqPrvzypppluginsappdatacommitservicessystemurlresolverzypp-rpmlibzypp.so.1735libzypp.so.1735.0.12libzyppCOPYINGzypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp.mozypp-CheckAccessDeleted.1.gzzypp-NameReqPrv.1.gzlocks.5.gzzyppschemayumcommon-inc.rngdeltainfo.rngfilelists.rngother.rngpatch.rngpatches.rngpatterns.rngprimary.rngproduct.rngproducts.rngrepomd.rngrpm-inc.rngsusedata.rngsuseinfo.rngupdateinfo.rngzyppzyppzypp/etc/logrotate.d//etc//etc/zypp//usr/bin//usr/lib//usr/lib/zypp//usr/lib/zypp/plugins//usr/lib64//usr/share/licenses//usr/share/licenses/libzypp//usr/share/locale/ar/LC_MESSAGES//usr/share/locale/ast/LC_MESSAGES//usr/share/locale/be/LC_MESSAGES//usr/share/locale/bg/LC_MESSAGES//usr/share/locale/bn/LC_MESSAGES//usr/share/locale/ca/LC_MESSAGES//usr/share/locale/cs/LC_MESSAGES//usr/share/locale/da/LC_MESSAGES//usr/share/locale/de/LC_MESSAGES//usr/share/locale/el/LC_MESSAGES//usr/share/locale/en_GB/LC_MESSAGES//usr/share/locale/es/LC_MESSAGES//usr/share/locale/et/LC_MESSAGES//usr/share/locale/fa/LC_MESSAGES//usr/share/locale/fi/LC_MESSAGES//usr/share/locale/fr/LC_MESSAGES//usr/share/locale/gl/LC_MESSAGES//usr/share/locale/gu/LC_MESSAGES//usr/share/locale/he/LC_MESSAGES//usr/share/locale/hi/LC_MESSAGES//usr/share/locale/hr/LC_MESSAGES//usr/share/locale/hu/LC_MESSAGES//usr/share/locale/id/LC_MESSAGES//usr/share/locale/it/LC_MESSAGES//usr/share/locale/ja/LC_MESSAGES//usr/share/locale/km/LC_MESSAGES//usr/share/locale/ko/LC_MESSAGES//usr/share/locale/lt/LC_MESSAGES//usr/share/locale/mk/LC_MESSAGES//usr/share/locale/mr/LC_MESSAGES//usr/share/locale/nb/LC_MESSAGES//usr/share/locale/nl/LC_MESSAGES//usr/share/locale/nn/LC_MESSAGES//usr/share/locale/pa/LC_MESSAGES//usr/share/locale/pl/LC_MESSAGES//usr/share/locale/pt/LC_MESSAGES//usr/share/locale/pt_BR/LC_MESSAGES//usr/share/locale/ro/LC_MESSAGES//usr/share/locale/ru/LC_MESSAGES//usr/share/locale/sk/LC_MESSAGES//usr/share/locale/sl/LC_MESSAGES//usr/share/locale/sr/LC_MESSAGES//usr/share/locale/sv/LC_MESSAGES//usr/share/locale/ta/LC_MESSAGES//usr/share/locale/th/LC_MESSAGES//usr/share/locale/tr/LC_MESSAGES//usr/share/locale/uk/LC_MESSAGES//usr/share/locale/vi/LC_MESSAGES//usr/share/locale/wa/LC_MESSAGES//usr/share/locale/zh_CN/LC_MESSAGES//usr/share/locale/zh_TW/LC_MESSAGES//usr/share/man/man1//usr/share/man/man5//usr/share//usr/share/zypp//usr/share/zypp/schema//usr/share/zypp/schema/yum//var/cache//var/lib//var/log/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:36058/SUSE_SLE-15-SP5_Update/fe7ddc87ea34353d010c6c969d5b173f-libzypp.SUSE_SLE-15-SP5_Updatedrpmxz5x86_64-suse-linuxASCII textdirectoryELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=3e84613948dda397f310c320d8407e0aa71c418e, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=435f9754846e7cd36701c7032a1f98a42857f33a, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=1675b26a312065a4efe206f8ba433c6cf8172b48, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, BuildID[sha1]=c213944c477e2277e213e25ad492681c5da98496, strippedtroff or preprocessor input, ASCII text, with very long lines (gzip compressed data, max compression, from Unix)XML 1.0 document, ASCII textL-JRRORRR R R?R6R.R5RNR-RRRRR R R9R?R6R8R4R.R5R;RORNR-RRRRCRR&R(R'RR7R9R:R>R/R=R?R2R0RR1R/R=R?R2R0R8R6R.R;R5R:,3&vL6}Q|vžs߃Sw#ux ~t>gy'}<%ƨ) ߽08#PԻ+jt,&Ko 3T&Ԥ@Wfb+,l1>hѾQ ?=AST$_$U(MJ}t'(Cƽ.R}xA8]&ȊԽݑ\)fk:c潀?e,1^NCďTktk|h}vӫe'oPtKv[Onq!Lͼ%ympk[F\Bl^sTs}P=!'WDq{:uxKic0R's_}a(h*N+rp!fnӶQ>2W;%$WuNhUY.2/Ql9bX-Y!z(Up9EO=7!SaF{Bl` XR?Zn K6`T[}b%03/3 s+ r;`>pZvО%zqŻ2Z L\Ǎy[:;P^3-Aj7 yRq'(6nfXbyճ3.ɤnYpQv&WL St-GgBYzȲ*.B9cʠq0|;7(7g @1G!'cY?A#ú7 ֞|>+= w0;2|00CTpwI]}صLH4|AI8;%qz  T>.̤BU $:5yũ~(SJSnIsOy"JԍB \sjtH5|93sMbm}N;z#i/Њ~L@(T -[(B3$_&cY)AO]:^}24|NsHƿ\iX|KJĻk%/qG$dJy=hٽ$0-"Kg Sm2.I|lHĺc\Y\~P4Z" &d6UaU 2g7md:zm˒Uk/aE*~l̥R13 WQ_~LݶtҐv{F֖9u@7>6%#Q9όaCONg[+s@wYkhb@ sBM`ە}`VHF” vz. *V2Ji eĚZ佬_D l;] T=^T(w 5AZzn@hMR xJ.hu}=,f5·BZ/%8̠X@lL! økS *2~`5-M+((F~|nAamZt z3ݲP?6lR( l:B~r`vrO Zi+d+$B'ha6ז{3I= knW)JM~#AƠ?=o ?Ei3ĔNGnjoL[W{@ߺq.O.3ή('I"#:g8J$1 "Yi)ߡ՛l[kRا@s1WzE1Dx-=̼>Qg`K)jc"vr|l}9ZA$XU,d ÊU[N{ds!z bc߿һTpCPkѢ{G~/i.B>Dv4YevR؎UTԚϲ;\#>TgAn\\4.0,4XRG#أ F3j[5 *\߾S [&sP ̏$g+| $&r(ЧhGZH0q63d~?W fmK߀_\n3c>k% J%՘XrI8-!w)8 _r4䞪y$6Q`o`߰x/RGGHωP0`P0>\575!+e RFI`Ri0SY2tV`[TzW)7^͋ʕ'z<(0[Q稩]`⡆T=!LRTNOHZ]^w!d|2oZP#ua!ֲ\hV?G\ DR-.dmDZy) IyQƨhjlFn\?H[guC|>OK[IE͉nݗ(2B@R%tzM).p>m !-͘|ʿ:,m9}XrR \&&eTM PJrBk(Vmu56 м=g" |IzلیNkai(b1P7@(112r; τzM\IIՖh)}a^Сr}(g~0?CK ֓Q yT,k}Ac]9LRay:b# :F~F,7-n/7<6 vy~NeV'Vn~h89ҏTP*)tt's/UGzrnAg0^aB KU$爴x3O溔TM&lN{l㔸\ G?/ްA#CϚ; Jf#c&h B3y/o<އziTJ 堧5jt.Oq_.#*nvyI8-GQީϻ as` {o%3xp%P 3ȴw5 =^fٓclgYOu`,-=[S8FᢆsEhZ!"D,%ݦ :;L3Fă #( HօYc0m޻Ӡt%O+S+0N߷t!{aCM̖;^ PvWˮeȟNGUu Y֏qR $oPH.hp=&㤑 F1`;eHji[goGtth^&< Cr1q<^(bwQk=w@wlւiAqs KGzi5骊Q.èbqL  Xۡߐ8/•W@`U1px}j$6N9+hJ{ KYFfӹ{zϜI!bybDbp `iuEtvb"0䀇'f h,micG W ~ ڝ2To'gHYJZ!9a*0o0" xK~b|I(7!cF'bs=T?w:P *Ֆr`*ikx~<,p*r hώ` 9?˥KWO[R3Qq9,JXTu1J:h-3UF̽EPpr/0_5R Ԃi(XNݹlSHg'ub3+bҦSh*_/H%!|=GGbIr,T =㜞߶0#^~6 < Azq6(t[:v*@'‹Z+r7 c15]׀@X!`ewFu N_ExS:nQ ?ebZDG k-)b"$~GT@cR}&I{L ?I">SP-CK< t۩9x K>XsKͥ9/GeR{EwBۤr J3nucYNyWDd/ we;>̰E^u:?r PGd'z]e95Q[edqޓJ:R N?2{nL(QttP7 F2ex,a gMuv}j늮G]^w>TI/(u2E 0sCLs<&)SjzOvam<. ޷I$HMyxtӿGl &,j>l vrB @ijwf;4[d@\qp]4²Gn^h o8DH51og|c8A=mSL)vMv5ՊGZ෨F/2%&M| ęIMYE`Lh oSS&ánFѬfYU`Ovx\Ϥ\rJp%{fYI+M#v7F$vgc`$_pDk jU 7"ച29F1_ 97 Wwr!OvE{#lh`7Y(}^hĔ}‡IeeVkKHdf{9#Q4ϽSh qz.qFJ[Gu_kYbJ=`T\u#!_t$FQ2KC]Dn ~gp)n lT8ECu܁@47Q4fpgԦl "MƸzp; A nmku# ]A qŘndyuH ]h<>/v<[k;o~z΄0$FRLaʖ9Ywpr]namkRxy  JoʸL:g\NPSe6XLo; sOC+–ݱ;s 0\9wR1 y܅ߒ0V< 9KiDzg6Kqw 5r&ޯi%s_€ ` k)զMZojkO4eV֑,q=#Hgz+P@Xi(|HңWsX>?ʬKc&,{2Kg;S[BV쮘#(诞G"UyvD!]4 ,@\|LtUL!fAгZ95?BD)sT0FD_#I -+WAx7{MCKZÀ|/"VPY-M!VW;iך-W\Ow& @]α.6/ zA@aPތKesC{(q/9{l[j9pPG2><z٥S"i<_nG% cP8uw뫥í񤝚~7?$[E[헄p8 'QS fhDQ^i1|„ lm2OFxg;+uW[BwoFe\`:QyY"*T4kfum؛}ƢvqtZ::`d ˫1*|@X *[Uѫպ=j3=2Df"_stN7{ tp@ރO6SʩQ6)aMѸD@gh y#ۑ^0-/j,J PuB!x i҉ʁ`ԝvl^I-/4p%拾vuq@Ov0Ę\3{Jiiio:~ئ[)e9](ŌM-NSm\b> A \z2+AZ$ǟ5?HSU9EQZG^0/SU>HA 0]-R(`VDl?cPtJ`pOls#0". Hܘ(+}ފrzGyb>~ߞӲRGL8]2!4y"foɤ[ ^V#pX#)] >-ݞw!iF<F9?ڙZɯ }2*A`2p$'0noԙ£-Jx)~Y V4=)mUQhϨ1­UCsށnҢ:5۝Ŀ/Ic_?9%MK Ř*x4 bŕ$`!\VBt:+:ڊy 76cyX*j͵ 5I0B@\%?{7TuCM-k3H35=!qH$CR(=ى%YgQ]|;Tl&ng[*SA,X;v~mwJI©(/yOV]w\4z盱٪IOy{TiBeϐ "d19lǤgp6BDkP8 \b0pZ7 a,87E6/_Q  2_zC.7ySS߲*o¼{\ 0L L rq!,jB#;hI|KÙ5]Vx\707@( ԏ=i4,<~zωB3 {jxui8Ň#k=OqZm#=f {&gKʋFA&z7C[o; '1IDV'nҮ-B:J%)FTh!,DቋEBEOT|f::I(|ڂv~M {S%m+϶صUBڱg XtRG$m'Gıc IhzCBTGzG 4h4Tm{ %{ϥȮɌJgec y< s'>rPPuzqDWF_+܈_lP\6'Ss=T?/lK+\C (" ڼ:h_7H&S@Šk&k+?2"0ι=粣G /$e# q_QV>zУb4 ƽ*ggMdaWjRLB"߅R"> \H&IgLH۞.Uъv ;jkڨWVdkcH u[`U\u~o>&?=0naz:x|-z 5@NG~&z4$z{T;c#-uMtַW|R)|#܈Crp_Jz'`%]{Qi:Cg֘VpDIkLNY';J29puO 6#As&&;%,ᵁLeH]*j\zq~6[`ITƟ ,7hP ~J2Ǯ@N?zU O6ӭ#ٙWQCԙk -|4!+\`)*h x[.kS+bԟav*1ki6]|l)^/5x'ރ/&?ӷg_L hݣ'hy\D <V;Qm K\CK,8.`ilGdpq± b};ϻfcӶv Ժf1t z^WI4>ܳIWK :bGGAE0陛kѝGN2ͷnRܛ_)eACbDw4!u6x.De#7dB J,xᗋMY~Gjƒ!N]I3׍o'|5PQ\8x4 'oLF{I Dʕ.M5xmimHMƫS]d{G_$#T +tP ~ Q;φx:v^_o~%ZРZg73} F Ȳ# bHqИ{G%EB1 ^,ٗoMSI >KdDQH'݃9<3@g@H%U/\$e_("])T)@flpj|3 |_ޢ)M |qYE&]GV? F(P .%h| WM(r_N]L1H!ϻDϯc쫀ԑ ⟽n \%;ZىoW`O{ ,#;`~7ZEs]xî?kPCI+X_pHXKzOkTbDLz 1М*p?ݫ{F  f*ٻ f?G}J9!?@( UM s |DG7QDV~x4+m2%{R`FAHj7KCDR/plT~5^ E?%]F+j<۷\/ZW@9H_\[o+{G o78\]D#djNĠVk'V6AjKaC[{?H?,`BД3)C@jt-yeD&SwVC{mޱYL7<1" W]vc8ͺ,eS}oT2.ρmNA=L>Na@izB-O~sax"mfQh>S?W^[˺ccty9"E#p*GZ| MͲ;E-}t@s⯣dڪ`d$5)46-=@(3Nw#*kᗞ0a|v-CJ}!: VZtyEv_jcM~W bϢ  pҔm0>읆|AvB\i؀65sl;lg$w#6$[/&:q5Ӣf6Ɠ1IqĚ?iP'87G9)2+/#k7Gnx{4aYJnzȘgEt9j ?vLp NVBvzLSjҒ$'tfhd&߲\;7t(l!;e/p3YC"\X.d< ⍵,!yr/Ħj {9%-I.DǁBa"j<=GkdE$(Ӊ0|JآJW3x |&CSăR]OӵJwɬ̻K!6c$]T1Ld(ԻǼ ~* f^O'9`mf⧩zWH1 *UnK~#~UcjU2 oB{^4#I?;‡+2*FRxmiCK*6v1T; (|`vw mc4B3m{7X_h]nKVǬetNdT۹PWMs训^l3_!ˮaQyԹx䪃j6:ñ7KS o8.U3}N&m/T~Al%:FAfvt u$L5;Wkxgk5P_Vx7Gzn{4PL+9)݋,Cȱ2 4UMr"}_ձ0a ~WrBФc!zs8wXeqok7 O̼Fe]|ta8ܸi^M{h_A3mB"mU |G_Gb瓣WmDf7QߨbDQBjfE/m:@pT=A[FS57& f)i%pW1LEwM kd9\gZ\roA .QbARe؂3  ٵ=#nHGZGr1y4k>qgҾdk En4 WP>U{s!sUtvz{U3ퟔw Fjf-cr#'&e ZҽC9^%+ ۯpkbs ΚT8x27kwDOSK>;Vf L9A柕RC_P2g*\jQ)3[l(A3ܯ\B0SPm u5eC8K#q5!'LLrE>,#3glo2'*1ޗ֌PlzpGxQz)e;< WoS?g930XX@0/BMR$é1#4ŠĤ05H#^JpsR' qT7<`+qL-$Z [IZ ppt,C,|vT`a GӞO9\[Y_ huSӈ$38_U'6XXhF`\(o^~lMW1j Ke1 A0=>;IOW2/! ospUm~8>cMz θw(4v:F4i/(%f!WKMF68ߥ@C0؊e#hG?'U+18һTYxPXy:*O>c\AWZvSZBev;T/VTlKΤ $f+LPc*yCkJ+!b [+r=´r olB[ RXWX7RBgj^7zx@u`:>G9v2xyVY˅Z~?&koNFe37J9أlZ t K Kڍ{1f[ H赨z_?dt5zApg4 &ghԱi  D&!I] ʽXw5;t$~+\f)z鵺uڻO~ZizF~b3osK[VThbL󲍄b,BeO9.1UM;/>!Ʃ49Ibԧ/nϋ;!SnUV٘[ k AV8OhͺUf2ds\+EV`4=30PlVfj.?f}w! %WtDpre Af{QBN6f7,q ?$n-΀: \R6bͳp-aL Fy/'1oq =M:At=`^RX@R6 鄃AiY ;+t?*5~ Nm5A.y x'{5Q6'EsO׮РTxih(|v*}98pxH@EB0 D' [P= |(U52BFv5{YC g~ϮKAFΙqEfn(%X䊾kb+@kق|&#{RUxRk3Tt}VJE T#!SY&Dh6-)?.d[]iarU1Yv\_ * vĸFۙU!bu?6 fu9.3a+'9ۑ B̮{g M E8Q w`ƑwF͢aeDόAT^ (۱Kw (/FSF4;_UE#hPz!`cq׋t 6,-DĽe1_"W<]sM@+VRw4:g\6? H18#|o%>g'62d2erf`jSbt6Pb5Wāf}ʥLCP~Ytx6HI~ 佛8r9n؞eD/Džd(6?,ogBiBo;zI';w#+ }V6;~Lbf`pe(6ԆNNMV {Z+9M,03biCPYd+ 2Hq涺 P͊6}~}$)W4ke*oE:>&_z:p}(^ 9Rݶjx#Kjɸ8 Mͣ f ] z)(1죐f+|=]fH y3yʿ7@/ GMsLQsΆEisFc81U3muGW_B ?nP1J:efoI;gĚ;D Qa^;wKIkbs pY 9!sݐ]lRR_𰪗a!UN?ݑ9vRBO 7~Qļfrk%8B֥Hs 6AG8[d Vx|ϓZgaWQʱqÀm1p|Mۜ߆߻)ec/l##;";$&JZCQ XZa3s7!C dԬ,ƈB_H/}T pv0rr)1wvYiG2Qqaĝo ߼=s*uV.=?.k(,VDS:b@KIUB"_LT\fult`PuK5vYNCdoðuf-}CƱ4C3-r(恒GN]sm(?+7 tiGѕ4~x;ǫ(cgR:iIۜ“Rvl l UAN /ebc\o7wO7L13 Jwk\Y<|~J1$1>x'b?jݩ>,(6ƨYf|7$hvHu>I ߪJvM$Zm}3-{ I?/7' JZw?{b53|MwM;~)PgzDWE (Z77eT,PD;՚o?.+O89aQҫKm9jո8$zlL]%m;B}&^rC( vw}I\{:.L6%E;&W؉{LxR8ZN Avnי_D#"*`6QƒhTQ؁oUkм[Y1)85ǣpꙊݨ~  6*rI_tv"Ұ( 6"H-Q~E;l:d@'~!e:1I˜#՟Z/>W! ގ[YkkDb`&CUu!Lhr~YnhKM@L |i8aV&3!|6OG3Ip ;m4\ch ēᮖLH]U{m (b2P VbUͥK,3Ul-%Ⱦ'p~o iqb-ꔭ_Dp'6l2yz@Hڙg#\.&k m~n1:8ث1گ0p8DsbRݷ})/w% r(Sj7B5̀u5 _6Bepqtr{_'_$ E[ |7NVd:,JV<<]! mqH&a/gţ5L[F$@HXf=&FjYMhL|fW;`g}}_YZxb͉v,eFTRxorR+q | ;V8 5e3 G]_Ett>[˻f 7Tkyv *fI`\jpM؆Op[ B ʽZI-)|kD:Oe5\d-2xu.'xWr{sB\ xU> J^Jp|_|7Z.IŮ(qZ˚Tȧ=>t>VDN Աd 4S.z7h~DY*9;[q׻o3^-pS3d*')GuYTRw0`d+x'4K>;T~o(S̜፶@Adc');A-ITj&)|wįB֗gp/ۆI9Xj\+6[=lصJf~(vU v1 g܇ HbbUI\<>0j`Su_*|牓s~q9-ȎYdb#WTR=+?SCxyssl4UVvZ퓇w~fPciKc#/Y8 f >$6=xy(Wv_ɕƣP0VTJ.VHmYaWB-"7ŠC iUpBy F[Dm%Ϫc'ĐjKri/dh4m(Owp:O Hu [Zr&xXwJY3=jB jϖ6}zl\m=^:I"0w93+.ˆYc%FXes/֪+,Ěɷ<:[rʳLMp/GT#6-ZOBdmid yĎ^C#,|=?D#0u<<Кב"rݢjygdG%Gms(UǷ>Q&2] WS؇n~@݄Kr$$>t*y[ Y!s*+BXvk@[!B-BF>~v&vSYD'E݄nFHN%t:jOGk *:Y_,=,V:.`}?Xuywj a_s ^ g\ʔB:5%zJ]VQt5Hʛd/RiPVu_=NQ @ED9tݮ"Cm8fPEDkKHX{ƕ螤7' Hk궟bF3Fg6 ykgA ɔ8CQ>Xh d`K/2k}R.>:ooQAVSev 7 '_&bRU 4; كMs%F] KMwkaf,'h3Gwv8[p듈u?\%ҜI"}v [OP ۗq~i ~/j !Q1ɻъѳ7u gډֶAG=Σtr>^}6ut}Ϲ{8I`0所APh&qZwvUu<&=²ۇXCn0>x[ */:v$'(5$}\6J^ YP91VZD6ݴZZW:2}F0 .tld{US/g:EJ+ āoNEڞ8Ȏ_q{QNYR_qV#8n$'Moi44 `Rzc9+lˆl6wxJdGX>Mok,cSo^WR=Vu.5051ȟ({R&)zʱ?ހ[lՈe!*ϝ Z>PV- ;8@y@3WPAlS7о\FDXiK_~UU=r,0'I%x0 uq|€ǔvBdj6^4߫yb?ľB='nQPT`NG+WVZCXR떣SFlܜi:$DVm߆rRur%DJH@*QY/ofy0q\> #"$u4 ,a r7up CQ0!B̿, ɄHg>-*>c;YL7Y5笑Wi)!/ʌӆq;7逩 p] M<1?IoYV@͝3rEJGܣ'ȵJZ==vBcnRL|gUx "3H ֌O܁vXwxRq3ݻd>גߌPolٺ 3QWK3e5vh5?] TT(}$omN+[]@KI eOse%j #¤JClם1ו]:] b!fWp:npFQ3u>݋ 9fmTX Vne6+e>vȉyӗSrf4N"}2_,U5O"D*ÛH @`}R ̿>QS)$ {,+CXEaw۟Λ|,~\QJOOUIFPq=M>^2־nFI?MPȠr51B]eQKM- ܛ>XKhh=qcZ*p2AaBK 1I1 $BuQ*;.ŏunmy;v-ּWW VF%ĝnc.|_+'?Tq9}wu5xQܯ8TQ6< vxÕ g\6QQx_ɂf35V|<iJ9v{;=LJ?O)]O.GeP9JPـdF+FAESܾ9 ,58!/ \\3)gtC\ 6hy}yGyFbVM J̫[U|~uȇbpt_^oS\u^D96\*NJybm xv|u `&Zg0PzpbP~~rl\r!hJ>[(v>h6Wu%ֲ̣OtNw;$\4B9cp\ց:W&u#xSI>^ I2ژÚ+BS3@dOW1 a3Euf@$ e"?06]NM˼u>TP9 ͚[T:e2=vZ 2ýfAϘļHUMy`U4Yǡ vE@+Iv{޵Qlf,s// HKf^;-`8}lk Yu^ JJuBXE ^r[vo2 0 7dU1fM X5؃h eE'fR[K݈XmY'cŽ{ap2B~zʏUbֺQs ÔA~}8j7DBHz6\:pt-|D5-`$q&<_Um"5|Go 1aw˄ L% `!'׷#YSy 4 _ AgAʱp"{ HhB>9(%FuB;.MA-41M"^9)q~W>j7 Xvbx1Gg#QlLן8ij"@6(\HsƯ>k-Nj 3=$>y5ndQ7ZKDvE VOҖ9DYˆ,st.Tw jU{V>4HAa\yWAG8E9H ICBgp8+Xkơ1dϾNj߹1^lB88EJTO.@8b0C' 2ƉLۦ"|:TMƾuv@.3w#C'2qqh컝^ 5}pݔ0Ch4sTF%neT"),OCX3^.R!n@'65Nx~y~ 5 t*!MmSN'Q2doUA%0_P"8IYzW70jTp2B8vy@E JS D6~|dڮvΌaf`RíC!߻7g3gUcx+XRg4]5 ߱u3mO%x(0ׇ^QM`q|3t ( 3/5XS"d" >1P=Gј{ >H5*LibWa\<  x`d{&6--=:*Sh*K?{$*kGÍePEZO0xƳ{5!gc ֻ\<?蔺+`ݕV9^1__@' V)\7n;[ 2̖-By^8A%k`ϾHܭgp)/7$)2H dnX6=[([hi1DE(:{JяzVnը`2.Iʿxh0Vzeϣr@JRe5h>PC#"C_A? ?T(-7@ڽ͕EWDмޛB']|Y9CR/{_,qÐU5>k YHErs^͐ņ5y^SXk951ho Oj=yilHg'gqrXMIKhB.AԌ*,%A s*ʛ}IPaccqt+ uϻ-r72ɏvPjDtZ 'FmluOKfiE]wmS? /chO6>M'|t0ƚe֑'+N@1 p,NO,C5u0&ҽXM) &R<s-!Ԯ.(t|`1J@h5S̰Vc $Y5B:gLs{6Z{.@ $(ˣfӚoS`o`U YZpKZw-3;;"Elile]K=d%TbװjGk58O3^u笽 Ńa8 Mz%>O o>|Y_do D  X~>A&Y#,>s(O*m`U)<;Kh[>+:6g;ox˧ؿY!G =,sv %3194A#vk*طG2 SA #]oҔb4),* a4C?! {g m嬞>pm^47,lS3mCa0Ogtgx0\@rҫ>gGzV.d9 /18 1gDb=F7!H ;^,w6Xy-jIIC=xw!NN FR[gX< ǡ &]=T_fm|ը 2AƳvCJh]~b"YiөI*#W̶XTZ{. WKsb Q1xiU޹QjORwW[x;IϰxTSmL93e5i 9WH`5^^_2(>-.i^P q#ґ| sʝ$E~k1Tqr4u.۝jy`? ԴB8}aU'H9" 'Zi0rA@vEbIyV56F0@[O-끏Ο1# o_ߣgAgIӆ[r |)t33pCE#)~T0/DuFpmw{2m20H61 Ѹn|ruOvQ5p39b}Ӹ)L 901tQ,ᅓ4vZf.|MY" ƚywi#X]]KvqS `' )giYP Uy>Qv*1˰KC?Zƅ0*w8!txӍT^g6T:ỌPpp!4z"D)tT&m8*+ @_Xw-qfO~Z1mi٥aB ܌cDQ,nHF U>9d6sm+r=[ 6!x65ڥz,=%j;?"Fàˎ"ib;N`Z'Q1 D:%hjlX&wFwp\93o}w'?IvesG&C؟w9Hq4D1ͷWp%x{Q1 l*|wR!67^ZcF^s~ Naڽf7; &`ߤ2b O@wsc.@Gv2Za\z'* \Vga~0/^9$ U ;K|D>ixAvW|hUWhl񈒠iT噸! Ӿ 5,Uڤ:jAS 9~ܜ.[778& `Zf+ߦMV8潍⌑^s ]u"+4Ro֎b**&@GGx3f ܌Dev R5 KN˦(:U)*ۋ;HuTLj4XҕG`9{@C/L_YTHw6[<.t;cONW)k[=^iX\,4_d(ys Mƌ+:  ^#u/wi/B.D7`)(C]l6z,a"5tFҌimQ}L!8N֧Z>^"\+).6Jfn%wÑmF1rǬxZftx~ 5]Q%tdQJ$Sz,tF H+y^ydPY|S .Y'm:fەwdd:r|Q#~pT/oXj- X.|Nyu~{-YBf*`袐eI*$Ɩ2=5`׵7}!1~.Q+GVbܾVEG)} d5&Z+3_,ȳӸ_cj8?Vn^ ΃ 怦;O/Uz(뇊PH ys lDw|w!G-CS|Ƭ/-Bp6X{XϰW1& \qg̉'w(Xi4IS3lStG:TcB#_ cJ1+m3L4gD_2<<))PbAԽ#ٓl=H3[l`4iM8bWjǍ Rkq!hxW,D~@r?3f@~,0 `4vOtmUEMnXO-.޷:ΆG!t.}'0"O\ ̆I尨5vL`*e:o&uoM:J/9h$h :0lցMZ߰'Я~{VCG!L%7jܤ\=v"qށeԴ5Z;(vGAWi'Hz AyNHK+l~qL}ͪ2(D4TVҨiSGrl_Drd=:oxN]CV`qj o-l L`/ c;Ax;+s鼉eUE5|z$3pgoƪ F]P3@S(gbS.1 ~wk¤@>ĸ97[-wX@69Yͬ?{own+ fk8SZ>'WǽmmyEq{0 U{!}g-tM33B1umu5댒z gV 5)ۣK&kIXX+ -M`1gH3"^ǿ˴/%-u:\anF͆=5:IC.nܐF]pî=Wp؝=c>]D\Nxr(`]߅byH̾V.EW쟳gnDZɊtYq ""S/y4EV_ɳǨgxrB bc4vzJ{ !uZLL~^W$?VX$y"ĄUBaea۩ipjySo8iaN Sl7U:K{&kaub WPZA0Oet* Iݯ [2QG=@h@_Ef*_{ûr ܼJ[^_:rPPk'Qy'`J@(M I5ͪe)hiyW&MOPOJ!nUCyR/2q^Ӳ]yuoh W_E(OK7-HP,^pm=wH6;RqB$v)-1̃Cmd>/~*T!M'zNH%r /tG}d8cn qc:`+z M1ޢjDpJaI5 ۖ"_y9[sLhA'z#!4)ɠg2nhGS.#L]vwY5n|I'Q F`۶lZ鸒 @U"pK|0oDx.0,Mߢwkˡ:I.r|:a5ӭWZozߡ%q×VmDg0~Т_ъD#n  *H`M2!F@>N/^x}HUreV +nN b^ҺQ"<;_|lpXȽ/?޶٤\ P:w Nai(Ǎ]"#@os連ؾ{:Hd?'_B΍lW|,Jmƫ/$&/$ %bxCCIfY +`,NZUHC qfU !w *E%Sʼnt.X[pL8U1n&sPUDc[ B+<%Ԫ;窔P(C@g\Ԃ=^yNh2w ߚ%_HJiX6=t!/M;#cea$!}5S8&Ωe{ 5T_U?(:)ˆ{b2Qײ8IVďgr hEѡyPN*0+#TZXAA9w3.  H`s.`Yx'XdLF90ZC4w h8|=V7JЍ2{3&S0d & P 5^I'v oMf=x9_39|ӛQ-g*c i3_K3] *ۍ7ͳaPeGs*i- *y uϺ FvlJE᭏nH*n$Hy&TZ xgxb?"91LAru 5X|nrKeP8oHJl@p[H Wj"|͜t،e pP;[ɣxq[j;9JNQ rzEkXha֍&&Y@(8Ȑb5@'rf$?,dZcϗ^x%>WWx C i_Yx酱fy׭ j7}5 6i#bhM*TzX6X;`$K'0JUppӷ1)~Vnf6aJ'qA-E \m;ʲ h+zpJ8'̛br7ds9ՓJ>dQ`|rOZVgp0%mi.\isNj Y1qşggz7RЍ9jGk}+e?!u NE*Vr:&ٝY0]˜/dƳ pm[XnyQnGA`xH<v#k>w\G(3u<>>x@EW9IkN{%ov`?f3b>E*s{$C2X<J>VR= lRK,yϤ 1qVIҩ-CB[8H*ݷ ͺUUirZxCT}1<7=հ1l%4r@lObA 9}vt@s"~#(kIL?vôẆ4g)k0m= dHEhCl5=jV =};ҽ:߾\nXRD0#p u,1ЅH= %SՆ09I]_8 -1GMx4'sWPջllNL`ҁ,t^ |*y7~A-n[{)HwD[(.JݣM`!$ Y1em"@z*%^xx岨z|,縤 0ڥĊ|X]?:˼ߟ Ղm_N fd9%S 7[P򆁘u K&~,n@]3%Hh#_,~Ĭ$Ha`1&d?k1ǔ-Z/E-e(զut)m|3mV0,xFԌ0 S);SXDF-GPF/yt1Y; ,ub*^CBlSYo.:feꐓ"ZÄI"')DT\(>s#U=r 5iŰub6 O"3|}A,b\@܃^X.BLRW؄uTYfWI\ՙ_TW UIzXi9 dS@G#h ӇV~ep. ? "rL0{y ϒԖJL4!-]E]9dpӐaJ1`jh/I{@bX6o⺂t6g"|BA~C~dL^DVy3- kX5l ]s:%6qe-~JrZӢ/<(BdӐ7A.H0*M>y7;xڈI(yiؤm{X\rE|G2m (7ɧR|n"f a%%s[Px 3־c|w$3/(԰3JRZ^ !Nv5/\2]?U# F)@֩`Zr yKh5 J][$iA< ~d JA]kZ1%IL๏#?Vg0tb7 -wE2qk3Āڸs^})?T=4L!ӏ#bnzYnǭ׸3dʄ[ڮ] V)!ZAՆZ[I%DitKWɐ|ްM9MRdJ&)VW]iғr'ևR()wu)ɥqytJ;Qte2yMÓ0jƕ12^^0/5>$kjW`ehfώM즦9{r{7rg.ApbGq; ("LLš=5 ڧ觌UQE/9Q{_$C}Ԗ! d0N1:I#n _ 첇>|VӒ\w ~14$2; oW7@bξ2~[ Qqg?~DFt=6cEk}=TN9, ->LKZT46 νPČՉYʡӣݨVJVnr}N-^Y̯y"Pn햴 ۉ9͞,SnH${96N;q\vBNT^~vM/ԀDNVA_(G3z^H5Z(+d>s1e!c6l~ ˦o1=^ۥ9/<=sTW0YnXè IzQ⠼[?<z _j(wn|$Um("luFWC9#L&T?sa{uA%Ҟ؇iP:;VK,/FPkM࣌◭zޛȨ]4̶eꌃ;G_e(YJ لֆ hJ[˂@0zT5t jϨmr! O [JZ6Dcn-(}{ AmbxHeAfozA$CHʸ-{©GBZI!1}]fZِYnD?[)}swd8S^)zn,1tT?U-c&@"al2NH3ө`MWZ[QO;ؐQsyV/DrӼyxOW xX´(IN苆'&{xij822/f`G,z6)fZƤBU1B<]S@wrA6N=Λ2' z 3\ʒPq(Vam%xg?ZT*j9wOW$?P׵׋*ڍ\# 33@`ˊ>"W1+U뙈x6fHfU\i*iQ]SDSᡠy__s/݂[<`O)&(OS ^KY=e42oG-˘)k|"_,ZE3DdC}! I2W=\y2)l*Zumuسf 0~}ҞsIbX!p6|}صGPc( rsEd?9/ل]i qQ k v+Y UT|0}ֱtti~n"5;X!&23vS(jE}~ͯ >f>b N'+fw^#~[@!H%Dt밤 zub&PY%ҖdЉpA;$;eǺ3qEAjT,KP\8!u+vI;61)둛( 5>;$mQ):V58p YdS#;5nRJ޼2"27+ea%dѳG,w cPӡO _|Q `nُʎ20koqcĀ>ݱ_sC6h+SZL½$72ޠmk9 q65tiw3m.:ev"){N뜐*SV<£F<Eaߕ{}N҈[iJP?N;Af͒w:XJcƤw\Zsn¿' \]<>S|"d1/%}̥Y]j_Gڕ$jD7#0 ĠCl=Sja\v26I3JBG7 D(@S%a pf-0<{Чz*PTdc>N {+foh*,O& nm\AlgFbNR .ƖH^>Q:}1uCkSIVIgH=s_$%EH<InѪ$s, a S;,uf~ѯL%ٲlWF*IO>XDRl7\mW0%ecް3ݕﴭ$QkA+F(` X.*}e)Ƕ#_Gr.vRV%Mia^\"\!6dxRBs7t|s\[4 ) $7+|F{qU-R/ž2ietU¼>mhAܶoR@f³`P}IGvVE!QPotj&` Deg>bv>WJ!KIʔw;1ps ؁`X#tK#&AU S4mAUAR@}=N±mVP4g܄əǎuzD:a)~[ީ@.l(n]TsD w7zwM4(D!zDt] yꀲv3yF0\˶]ȷrCׁ5}co`pyxM#ʌ >W"Εc%JΐmYst@I\v"V4 }l>M9qN]JG7y-|~C[%__Ocmh˕f_k~X_prUߩ2)5(NVRKrB.hi!:q{frtk5L_7zs]ARYfaI(`WT=S<z`% .Y,/]%,ZR?j#45-C֘?I<7AѮim $g)M`"RAmΤ\ε$ԈWkV҇Rϖ:X47'EAϧ4ѹIl+ }88J`ki5irN^ J aIh]g!xuaTcXza$m݁M%#۫oh)a.']q85Pt I$7k VzD]-2LG*)l0'mkK .7m5R*/H*-d`k]IyS~g#Eߒ:팴웍,]+?p:&^=,~|SX,V0lԛtmI;3hOB`kN (5 V>D\C^)e9e hǻ0ѽ>2ַ+sV5S *99ao \aYF5o BĭRLS{ch -.|Ki'=SXLB& yA|levR=)K*EMî3\)W!0Pxi)r7)+qzr/Q ̦BQzn48P:&Jo; ä3+RzU35 `MoA҂)5TmZ|Cw{ hd8ﲔ]VCOLi)JD$[0*0Wcҁ테 |Ʊya-C^gwo,u x|%b1;#|SݣydfIT!hHigo,՞+6dFpN ;jI?& -i\Q 6fsU+yMGc |5T {"*`<ŌE$m*WՔ19q$O`tDYklJR)`CIg"tLhY͢\bˑ_X#ޫZ+ pq:KY&&*UŹQ!<4<8(G"z jROc 7gAm;z ˦*aS.! 7¢ _1<#Dv9~/3p ADښO :Q﷘$ǿSn\vw W?;Ƞ3(v)gi@oJ7h 3q5ww<$RA(QMo9waa.=K% \P\D(CZ|5dQ[  YZ