openSUSE-release-tools-20190413.989fecad-lp151.1.1 >  A \2/=„ IjOuLଡ଼O}m{$gtHII'y>pX>o-MRN)cbS N#ˆ+=ӷ7d8iqmst%0ɞ|qOc^PER#QM~@# i `Z&͌ewdL:2_ܔ}ǻ$p" *AXb1\s^ һLY8ede57b01b51d9587dda7d473066b01d3500a497dcd7fcba3b53b09d02b7bede7f26f4b0e104f147033b99b262fe6da7007b42eb5<\2/=„su>ͽcvPypWc#qL4OiE9%zwlTvŒKQ^dԋqĩMP} ektjHʣВ@o!^mpT^R<";-l||%,{`l,D,QGl^DDn^NSe /P$cV֔R>-We %;~i̧tW:n8+o>pA?d+ 5 p$(;D] w@@ P@ @ @ @ @@@ \@\t(V8`9!:gB9F_Gt@Ht@It@XYZ[\@]@^bcd eflu(@v(w@x@yz@PTZCopenSUSE-release-tools20190413.989fecadlp151.1.1Tools to aid in staging and release work for openSUSE/SUSETools to aid in staging and release work for openSUSE/SUSE The toolset consists of a variety of stand-alone scripts, review bots, osc plugins, and automation aids.\!lamb04sIopenSUSE Leap 15.1openSUSEGPL-2.0-or-later AND MIThttps://bugs.opensuse.orgDevelopment/Tools/Otherhttps://github.com/openSUSE/openSUSE-release-toolslinuxnoarch--+6:9-2*01---,5.07)/1/ E8#;.+06+o4 S%!5A)6rG! A"02$(W'T!kT[ { AA큤A큤A큤A큤\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\7ce99c8aaa08ebce41f7b8f4d4ee48ce8c27bc8129ae981cee395b27e394850888650183c14241273925d9369d401a2e01b4c9bec7c5d6d5a3492d0a58897d855447f73135e87aeee63ba6cbb915a6f26efaaa71ee9d900d3d857810105e85d361e28655cc58d7b4fa212a4f044591798b93319308f3353e470bd5fbb854fa320f351fb5bd20acb73e316ec1acd3b6428ee4cc134fed532b5936635361028d5cbabec1c2c0b05f89d57486d5ce73e1ba3dec45c913ad7989fa42f8fbe7fd6ef627989b3522c20e92049d4a94113b89b6d7486ff729b58e0f71b5b644dc37d7cdba4884847cfd284838b4a0d8028c6f9cb29d0e46666d809f72ed604927fa83348a8e0e1992575290102a5da19489bd7d2e36ccf07b618c798ccfe0f23af11cc4c3f029ac97399af2cc206ec08a97d48cee91c8f3b9629c51f19808f0fbc37c28c40bdd7cc65d5362c7ebc490b823b497a6d7ee46710336cfe6f5591fb5f753af43db7261d737cf6282019b6b007b09973c7f0d2bf6ae998c5e1196c34e1011cffe895d17f3c63eed93f787f201fdec7c457b8ef00e6eff8c13b310d09a347b09903a61d66e75b54fd1a2c0b7bd1d8eddc9f2040fa4b8f92c4e97cdfa4c687cda2a36c2f3ff94f8164a9433bf6f302cc1bdda4540aa86ae6a664e99b206e85e8ba11c80c838dac8b20bed2ee3f505d357588c6808aa9fc0afd53c0436d68d50b16fce10abed54e84700239c6a6d7021c0979e7c0c7367532103571752f542146acbc51a3d2e18f208ab60bdeec5a659f0b3854dd9fc62cb5c935ff8f0c44842e6f908e45c6c26f2d3788734ba675aa1f7e93429bb0cbb488ae55e10ce9a73af4368ac50387419c555dc385c2d0bb86ca27efe2062a310d6e2ae6db8bbca41cf2183490f8263552faab404fbf743f4513aeaaaf9d968997617e8b0b8c212baeafd4fd29eab209792ae6b88a9df0296815834b325580bb0e1611488af8d7efabc3b445af6e5716eb2b1e3c52830274d6c54a66c7d56e4d59c83c658574e05f50d26bacb747bee6728c449d267b43496929d53d0b09f24e40e41c8870cff84a87498293b334f2fa84e672a8981af727d6a6cabab38f47e57b503e374707abfb804637f9b19c279ad19d30d1a33fc301bc6b413adaa2bfd0d61b35200e505436f2067340ac145a0c11ba794452ce77d802cb8bbd044b4e806224cad68ecb09b40fbe33de5e1ce8158e47a46aed33f7d2dd3671d9652e1f413db1488371f6eac023822b4002b93d5eff65a4367e2e29c3fa70e93ff1e6d9b677b7730ae39fa47210bc8479460247d68fd817d3f198450471568809f83185d170c16917cdb8c7f9bd52b8b6a501d4120bc77e1c4d0e9d25a79c3c02c2ed6f1e32c8f3e9d8680200420e21d95fa38d468a35c0f343ddf1477249beb08a10e88edc5ea5988aacf0622e5db899677599ec64296c8b9e96740a040b21173164fe826d3934a022333bbadc87dddbb419c55c199d88972dbdc1b359d2d6f83c224d64cd2d488348c47756073f46be87a70f253135cbe82986c3950f3783dd52d68f60f41e368879a6f37c64eb6e7cec2f15452d1a8191dac81fb8a66521e058651340c6a0358cf9ae82a1b78f6../share/openSUSE-release-tools/biarchtool.py../share/openSUSE-release-tools/bs_mirrorfull../share/openSUSE-release-tools/bugowner.py../share/openSUSE-release-tools/build-fail-reminder.py../share/openSUSE-release-tools/check_source_in_factory.py../share/openSUSE-release-tools/check_tags_in_requests.py../share/openSUSE-release-tools/checknewer.py../share/openSUSE-release-tools/compare_pkglist.py../share/openSUSE-release-tools/deptool.py../share/openSUSE-release-tools/fcc_submitter.py../share/openSUSE-release-tools/findfileconflicts../share/openSUSE-release-tools/issue-diff.py../share/openSUSE-release-tools/k8s-secret.py../share/openSUSE-release-tools/legal-auto.py../share/openSUSE-release-tools/obs_clone.py../share/openSUSE-release-tools/openqa-maintenance.py../share/openSUSE-release-tools/rebuildpacs.pl../share/openSUSE-release-tools/requestfinder.py../share/openSUSE-release-tools/staging-installcheck.py../share/openSUSE-release-tools/status.py../share/openSUSE-release-tools/sync-rebuild.py../share/openSUSE-release-tools/totest-manager.py../share/openSUSE-release-tools/unmaintained.pyrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootopenSUSE-release-tools-20190413.989fecad-lp151.1.1.src.rpmopenSUSE-release-tools@@@@    /usr/bin/perl/usr/bin/python/usr/bin/python2/usr/bin/python3osclibperl-Net-SSLeayperl-XML-Parserpython-PyYAMLpython-cmdlnpython-coloramapython-lxmlpython-pycurlpython-python-dateutilpython-pyxdgpython-requestspython-urlgrabberrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)20190413.989fecad3.0.4-14.6.0-14.0-15.2-14.14.1\@\\@\\\\@\@\@\@\e\e\e\e\@\@\@\@\@\@\@\@\+@\+@\+@\+@\+@\+@\+@\\M\\Y@\Y@\@\@\@\v{\v{\v{\u*@\o@\n\mA@\k\j@\f\d\d\d\b@\ac\]o@\\\\\\\Z@\Yz\Q\Q\LK\I\G\E@\@n@\@n@\@n@\@n@\@n@\?\?\73\5@\/J\2\@\U@\\l@[[1[1[@[@[@[@[=@[[@[H[H[@[@[@[[[@[@[@[@[_[@[[[@[@[v[v[%@[%@[%@[%@[%@[[[[0[0[[[ٙ@[G[G[[Ѱ@[Ѱ@[Ѱ@[ @[ @[j@[@[@[@[@[$@[$@[ā@[;@[;@[;@[[[[[[i@[@[@[t[t[[@[[[[[[Q@[Q@[@[@[@[@[-[-[-[-[@[[[[[@[~[~[~[~[~[~[~[}P@[}P@[}P@[}P@[{[v[v[v[v[v[ug@[ug@[t[t[t[r@[r@[h8@[dC[b@[a[a[[ @[Q[P}@[P}@[P}@[O+[M@[M@[M@[L[A[>@[>@[;e@[;e@[6@[6@[6@[4[4[3|@[2*[2*[0@[+@[+@[+@[*A[*A[(@[(@['['[#@[#@["X[)[)[[@[@[c@Z@Z@Z@ZnZ@Z@Z@ZZZz@Zz@Zz@Zz@ZZZZZ4@Z4@Z4@Z4@Z4@ZZZZ@Z@ZZZZ@Z@Z@Z@Z@Z@Z@ZmZmZ@Z@ZZZZZ؄Z3@ZZZZZԐ@ZЛZZa@ZZlZ@Z@Z@ZZZ@Z@Z@ZZ`@Z`@ZkZkZkZ@Zw@Zw@Zw@Zw@Zw@Zw@Z%Z%Z%Z%Z@Z@ZZ@ZH@Z@Z@ZZZZ_@Z_@Z Z Zv@Z@Z@Z@ZZ}@Zz@Zz@Zz@ZyZu@Zs@ZqZqZp^@Zp^@Zk@Zk@Zk@ZiZiZiZiZiZg#Ze@ZaZaZaZ_:Z_:Z_:Z_:ZX@ZWQZWQZV@ZTZTZTZOhZN@ZN@ZN@ZN@ZKt@ZB9Z:PZ8@Z8@Z7Z2gZ1@Z/Z*~Z&@Z%8Z%8Z!D@ZZ@Z@ZfZfZ@Z@ZZZ ,@Z7ZZC@ZC@ZC@ZC@ZC@YZ@YZ@YY@Y@YeYq@YY|Y+@Y+@Y+@Y+@Y6Y6Y6Y@Y@Y@YYYYYYYYܶ@Yܶ@Yܶ@Yܶ@Yܶ@Yܶ@YdYp@Yp@Yp@Yp@Yp@Yp@Yp@Yp@Yp@Y@Y*@Y*@Y*@Y*@Y@YéYX@Y@Y@YYo@YzYzY@Y@YY@@Y@@Y@YKY@Y@Y@YYYW@YW@YY@Y@Y@Y@Y@Y@Y@Y@Y@YYYn@YYYYYYYYYY@YYV@YV@YaYYYm@Ym@Y{'@Y{'@YyYyYoIYoIYoIYm@YlYlYlYh@Yh@Ydopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgJimmy Berry opensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgStephan Kulow opensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgJimmy Berry opensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgjberry@suse.comopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgjberry@suse.comopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgjberry@suse.comopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgjberry@suse.comopensuse-releaseteam@opensuse.orgopensuse-releaseteam@opensuse.orgjberry@suse.com- Update to version 20190413.989fecad: * Improve error msg that the project was not frozen- Update to version 20190404.0016e77e: * Make the ignore whitelist always a set()- Update to version 20190403.36af69dc: * Ignore packages listed in comments- Update to version 20190329.d14cf59a: * ReviewBot: handle any exception raised by check_one_request().- Update to version 20190329.5c3f44b5: * origin-manager: require fallback review for delete requests.- Update to version 20190329.b0371a1d: * osc-staging: exclude NonFree requests from staging proposals.- Update to version 20190328.456ec244: * Remove the special logic for 000product- Update to version 20190328.f449f81: * Release/Publish container_products first * Fix yet another crash because of self.project * Don't use version_images prefix for Images projects * Fix indenting - this is really hard :( * Move some more pipelines from citest to official repo- Update to version 20190328.7f59878: * Replace all left self.project with self.project.name * Fix crash on images projects (openSUSE:Leap:15.0:Images)- Update to version 20190328.1dc8e17: * Skip ttm subdir in nosetests * Remove is_image_product all together * Rename the snapshot functions and add gocd config * Moved the config into OBS/IBS * Calculate is_image_product instead of configuring it * Parse the config from yaml * Split totest manager into multiple files * Add config * Stop the fallback - we pass the real project name * Make is_image_product a config * Remove bad quotes (flake) * ToTestBaseNew is history * Merge _release functions * Merge is_snapshottable variants * Change the current_source override to a config * Move set_snapshot_number to ToTestBase * Remove overloaded iso_ and ftp_ function for SLE * Remove basically duplicated release_version function * Harmonize get_current_snapshot to take first main_product * Remove interval option - we run it as systemd timer for a while- Update to version 20190327.d8487cd: * dist/k8s: drop --debug flag from obs_operator service. * dist/k8s: provide obs_operator origin-manager report sub component. * dist/k8s: add service cache to obs_operator. * dist/k8s: provide service level cache similar to reviewbot cache.- Update to version 20190327.a8bf788: * Fix one more newline - not just in print- Update to version 20190327.eae8884: * Fix newline in SI report- Update to version 20190327.b3f1624: * Include the delete request analysis in the text file- Update to version 20190326.83e05fa: * obs_operator: verify that origin root-domain matches host domain. * obs_operator: raise exceptions when osc request environment cannot be aquired. * obs_operator: calculate apiurl from host instead of origin header.- Update to version 20190326.9d00ba0: * userscript/origin: use cross-domain request with credentials.- Update to version 20190326.2b58c02: * check_source: update grammar- Update to version 20190326.4aa89f7: * Don't hardcode build.opensuse.org- Update to version 20190324.9a25908: * Don't add repo-checker from factory-auto in Leap- Update to version 20190322.83c6eb0: * origin-manager: include annotation in fallback review comment.- Update to version 20190322.f36bb8b: * userscript/origin: provide initial supplementary interface. * obs_operator: expose osc-plugin-origin commands via GET. * obs_operator: extract osc environment setup as with object. * osc-origin: osrt_origin_lookup(): print time since generated. * osc-origin: osrt_origin_lookup_file(): include project in cache file name.- Update to version 20190322.07dc46f: * osclib/origin: policy_input_calculate(): s/inital/initial/. * osc-origin: list: sort by package name. * osclib/origin: policy_input_evaluate(): only add additional review if not already set. * osclib/core: package_source_hash(): handle non-existant revision.- Update to version 20190320.d3c0e8b: * Avoid gocd warning on 9 minutes without print- Update to version 20190320.2f35ae2: * Remove repository (not set for letter stagings)- Update to version 20190320.7fc7a53: * SI: upload the result to OBS and link that on failure * SI: continue with other stagings on failures * Package the osrt- symlink in bin * Allow project comments to ignore delete requests for listed packages * SI: exit 1 if there was an error * Don't throw 404 on disappeared adi project * Do not repeated failed reports either * SI: Cache existant problems - they are always the same * SI: Go through all staging projects * Refactor a little * Repo checker: work on staging projects as a whole- Update to version 20190320.d9b4fee: * gocd: Fix PYTHONPATH for the monitor scripts- Update to version 20190320.c76e0d9: * Fix compat with pyYaml 5.1 * origin-manager: include origin annotation in comment when waiting.- Update to version 20190320.ab8a614: * No longer package rabbit-openqa but add gocd config for it * Add rabbit-repoid * PubsubConsumer: Implement max runtime- Update to version 20190320.bb48831: * Replace deprecated (and not advised) yaml.load() with yaml.safe_load(). * [openqa-maintenance] Add openSUSE Leap 15.1 configuration * osclib/origin: policy_input_evaluate(): do not list disallowed reviews.- Update to version 20190313.b7eeea5: * Added livecd-tumbleweed-xfce in livecd_products- Update to version 20190311.149e290: * pkglistgen: Don't upper case the staging letter- Update to version 20190309.bb2cb5c: * Fix adi command if there are actually checks * devel-project: notify: catch smtp exceptions rather than crashing.- Update to version 20190308.7f2195f: * No longer add repo checker as reviewer for Factory * Remove 15.1:ARM:Live- Update to version 20190308.44cbc3a: * Block adi command from accepting if checks aren't succeeding * Add all checks from staging-required-checks-adi to main repo of adi projects- Update to version 20190306.819d437: * dist: provide origin-manager report service and timer. * dist/package: provide osc-plugin-origin package. * osc-origin: provide initial origin osc subcommand. * osclib/core: package_list_without_links(): ignore meta packages (00 prefix). * osclib/origin: provide __str__ method that indicates pending. * osclib/origin: config_resolve_create_family(): force origin_expanded to string. * osclib/util: mail_send(): allow a from_key of None to indicate osc user. * osclib/util: mail_send() utilize Config.get() pattern. * osclib/util: mail_send(): use to as config key if no at sign.- Update to version 20190306.ef6e30c: * dist/ci/Dockerfile: change from Tumbleweed to Leap for build host.- Update to version 20190305.9f97c15: * cycle: Add command line parameter support * Use the JeOS-efi binaries for 15.1 arm images version reading * Use different base class for ToTest151ARMImages * Add openSUSE:Leap:15.1:ARM:Images- Update to version 20190227.214f8bb: * origin-manager: support ReviewBot override comment using origin workaround. * ReviewBot: request_override_check(): default to accept. * ReviewBot: request_override_check(): provide force option.- Update to version 20190227.b16cc9a: * Add openSUSE-Tumbleweed-Kubic images- Update to version 20190227.ca7c4fd: * legal: Fix crash on declining obsrq#670770- Update to version 20190226.6d72812: * dist/package: include origin-manager source file in source_dir. * dist/kubernetes: disable origin-manager component. * dist/kubernetes: add origin-manager component. * dist/kiwi: add origin-manager subpackage.- Update to version 20190222.9b58ce5: * Fix project/status route- Update to version 20190221.324b92a: * Output something every 5 minutes to show activity on the console- Update to version 20190220.d43faf0: * tests/obs: provide offering to appease the re-implementation of OBS. * travis: add check to complain about product references in origin-manager. * dist/package: provide origin-manager sub-package. * systemd: provide osrt-origin-manager service and timer. * origin-manager: provide ReviewBot utilizing osclib.origin. * osclib/origin: provide origin management functions. * dist/obs: provide OSRT:OriginConfig definition. * osclib/util: project_version(): return 0 instead of None for invalid project. * osclib/util: provide project_list_family_prior_pattern(). * osclib/util: project_list_family_prior(): provide include_updates option. * osclib/util: project_list_family(): cache via memoize. * osclib/util: project_list_family(): provide include_update option. * osclib/util: project_list_family(): handle :NonFree suffix. * osclib/cache: handle repetative package_source_hash_history() calls. * osclib/conf: properly load config for innerconnect projects. * osclib/core: provide request_remote_identifier() for printable identifier. * osclib/core: provide issue_tracker*() functions. * osclib/core: provide review_*() functions for summarizing review state. * osclib/core: provide project_remote_*() functions for innerconnect projects. * osclib/core: provide package_source_hash*() functions. * osclib/core: provide entity_source_link(). * osclib/conf: add repo-checker key since it does review :Update requests. * osclib/core: provide entity_exists() and use in StagingAPI.item_exists().- Update to version 20190219.8d3c53c: * Need apiurl for staging report- Update to version 20190218.0f466a0: * Add kubic-kured-image and kubic-pause-image to container_products- Update to version 20190215.53bbe03: * Add missing dependency- Update to version 20190213.be751cc: * compare_pkglist: fix return code handling introduced by 2e339acffb03b6786c902c2ebd250d1c3720e315- Update to version 20190213.af2471e: * compare_pkglist: minor improvements- Update to version 20190213.fe23e8d: * repo_checker: Simplify cycle check- Update to version 20190212.6f70fe2: * compare_pkglist: update version to Leap 15.1 and SLE15 SP1- Update to version 20190211.38c1c42: * Fix rebuildpacs for installation-images- Update to version 20190208.9984223: * osclib/list_command: 24ae4ba81 broke formatting.- Update to version 20190207.4e24164: * Remove openSUSE-images from rebuildpacs - long gone- Update to version 20190207.6d706a6: * rebuildpacs: Check the binary version not just the bdep itself * Take over rebuildpac problems from packagelists VM and tidy- Update to version 20190207.b99d841: * Fix arch-whitelist to apply to staging projects * Filter the repositories_pairs depending on the target archs * Don't try to filter staging archs * Calculcate the whitelist for letter stagings purely on config * Expand all repositories but ignore archs with 404 * repo_checker: remove explicit target project repository layer for letter stagings. * repo_checker: provide repo_checker-binary-whitelist-ring config option.- Update to version 20190206.61c0f67: * Map i686 packages to i586 to find kernel-pae-devel- Update to version 20190205.ee7cdc2: * ReviewBot: catch exception for adding devel project review * conf: use backports-reviewers for backports- Update to version 20190130.7d1fa2f: * Fix E117: over-indented (flake8 update on TW) * Fix format in rabbitmq debug- Update to version 20190130.f66fd52: * fix incompatible repo id tagging for openSUSE products- Update to version 20190126.da4ba5d: * Support connecting suse in PubSubConsumer * Only use amqp_prefix as config * Reduce debug level for channel close- Update to version 20190124.535533d: * accept_command: no longer need to triggering product converter service- Update to version 20190122.8d29352: * osc cycle: correctly handle comma-separated arg list * leaper: fix cross instance obs links * leaper: tune origin change reporting * leaper: check 15.1 explicitly * ReviewBot: refactor logic * deptool: only skip disabled repos when not listed explicitly- Update to version 20190121.a524c04: * Replace weakremovers.inc in 000release-packages * Handle weakremovers.inc special * Fix handle_update_repos for Factory and leap * Store it as susetags light * Refresh solv files for leap- Update to version 20190117.7ccdd76: * pkglistgen: Reset the tool between projects- Update to version 20190117.16fdb71: * Fix base container for tumbleweed- Update to version 20190117.f3466fc: * Fix check for "no change in snapshot version"- Update to version 20190117.954ec73: * Install pkglistgen files- Update to version 20190117.f8b4b43: * Kill create_test_dvds.sh * Moved the nocleanup-packages setting into remote config * Set some version for staging projects * pkglistgen: Don't crash in powerpc on i586 entries * Revert the change to copy_files * Don't hardcode architectures - take it from the project * pkglistgen: Replace empty version with OSRT:ProductVersion * pkglistgen: Ignore locked packages for expansion * pkglistgen: Add all recommends and supplements * pkglistgen: require set_namespaceproviders for now (it's old enough) * pkglistgen: Move droplist generation aside * pkglistgen: Fix test failures (including flake8) * pkglistgen: Don't update 000package-summary anymore, but diff * pkglistgen: Write group stubs for --only-release-packages * pkglistgen: Move one more function to solv_utils * pkglistgen: Trim down CommandLine interface to the minimum * pkglistgen: Introduce file_utils functions * pkglistgen: Move dump_solv into its own file * pkglistgen: move do_solve into tools class * pkglistgen: Bugfixes for create_sle_weakeremovers * pkglistgen: move create_sle_weakremovers to tool class * pkglistgen: Drop list commands * pkglistgen: Drop update command * pkglistgen: Move suggested from global to package level * pkglistgen: Take the architectures from tool not opts * pkglistgen: Move into a folder and split into 3 files- Update to version 20190116.af61a2f: * ttm: Follow Tumbleweed move to new pkglistgen pkg layout- Update to version 20190116.9ab4c3c: * accept_command: add additional version number to OSRT:ProductVersion- Update to version 20190110.a9eeeb0: * Only decline delete requests that affect linked packages within the target- Update to version 20190109.df13caa: * ttm: remove set_snapshot_number in ToTest151PowerPC- Update to version 20190104.537bdd5: * ARM: don't set the snapshot version- Update to version 20181219.960b7ba: * suppkg_rebuild: use the binaryverions query instead- Update to version 20181218.d14a232: * check_duplicate_binaries: set arch key to string instead of the list- Update to version 20181210.75e065f: * Add JeOS and containers to TW- Update to version 20181205.180ca46: * fcc_submitter: ignore removed package in the previous version- Update to version 20181204.aa1c004: * droplist: Ignore Leap:15.1 for Leap:15.1:ARM * Do not generate drop list for leap:15.1:arm at the moment * No longer default to all scopes but make it configurable * Also remove 'arm' scope * Remove 'ports' scope - powerpc uses target project * Fix deleting of files * Delete kiwi by glob * Add option to only generate release packages * Remove skip_release option * Set OBS_NAME ourselves on api.suse.de * pkglistgen: Add --staging option for easier scoping- Update to version 20181129.f45087d: * osclib/cache: remove double comment introduced in #1802. * metrics: sync config key with recent Leap changes. * tests/metrics: add basic test to ensure code is executable. * travis: use ecrypted e-mail address to avoid spam from forks.- Update to version 20181127.ad48ebf: * If we can't resolve the package name, it's no reason to decline- Update to version 20181127.edba5dc: * Revert extracted kiwi again- Update to version 20181126.590fd22: * dist/k8s/app.yaml: disable check-source and repo-checker components. * dist/kubernetes: utilize new image home in openSUSE:Tools:Images. * dist/package: include worker kiwi to allow extraction via _service. * dist/kiwi/worker: include obs-operator subpackage. * obs_operator: use unbuffered output to work properly in systemd. * dist/kubernetes: provide OBS Operator component.- Extract osrt-worker-obs.kiwi via _service and reference in spec.- Update to version 20181126.4331271: * ttm: add minimal staging config for pseudometa package * Add workaround for failing JeOS comparison on ARM- Update to version 20181126.f333b2d: * Readability cleanups * Follow flake8 import order * Iterate over product arch list- Update to version 20181124.c1a7698: * Adjust JeOS for 15.1 images- Update to version 20181123.b280e8a: * fcc_submitter: update version to 15.1- Update to version 20181122.aaef149: * leaper: just pass if only origin change left to decide * leaper: fix comment about package not in Factory * leaper: silence output of checking older dists- Update to version 20181121.5a43f6f: * Disable caching project _meta- Update to version 20181121.c2d8065: * Disable publishing for the product_repo in the test_project directly- Update to version 20181120.1f0e92c: * pkglistgen: nonefree repo handling should update to tool's repos rather than commandline's repos- Remove kiwi file again as it was causing problems within openSUSE:Factory, moved it to its own webhook triggered container on openSUSE:Tools:Images/osrt-worker-obs- Update to version 20181120.4be5ff3: * Replace urlparse.urlparse for python3 * Import url functions properly for python3 * Use more print from the future * ttm: Add ToTest151PowerPC for Leap 15.1 PowerPC- Update to version 20181119.1714c58: * staging-report: ignore projects not in a final state. * osclib/stagingapi: provide project_status_final().- Update to version 20181119.efa6674: * stagingapi: No longer build disable to sub packages- Update to version 20181116.065ab5e: * userscript/README: include more details about usage and troubleshooting.- Update to version 20181116.416172c: * Checked with aplanas: using stringio is preferred- Update to version 20181116.31e97b0: * In some cases the return value of yaml.load(description_text) can be a string containing 'none'.- Update to version 20181116.e3f260f: * Import urllib2 python agnostic * Store data as binary in the cache * Remove the reduce call the brute force way * basestring is gone - in favor or str (which also works for python2) * rabbit-openqa: fix imports for python3 * Port more code to run under python3 * Use Leap:15.1:Images for testing instead of openSUSE:Factory * Add the base container to container_products of openSUSE:Factory * Add release workflow for container products * Add new ImageProduct class to allow images with different enabled architectures * Only look at/toggle publishing of the the product repo in :ToTest * Define products in ToTestBase * Allow to specify repository and target in _release_package- Update to version 20181115.1c92d8a: * travis: add test jobs against osc python3 branch for both python 2 and 3.- Extract osrt-worker-obs.kiwi via _service and reference in spec.- Update to version 20181113.f936dc2: * travis: configure notification e-mail to internal list.- Update to version 20181113.56a2f40: * ReviewBot: accept patchinfo action reviews instead of ignore. * pkglistgen: Start documentation * pkglistgen: Support a recommends flag in the OUTPUT * Adapt the unselect test to the current state * Disable DEBUG for obs requests, it makes reading test failures very hard * Do not crash on staging projects without status (gcc7) * Support OBS checks instead of openqa- Update to version 20181110.2a9183f: * Caching attributes is not worth it and creates problems- Update to version 20181110.3310ec0: * systemd/staging-report: include --debug flag to provide actual output. * Rename openqa-comments to staging-report to more accurately reflect new role. * osclib/comments: force encoding to ascii to avoid OBS 400 errors. * openqa-comments: replace custom comment marker with standard, simplify and correct comment logic. * openqa-comments: rework openQA report as status check report. * openqa-comments: utilize StagingAPI.project_status() instead of duplicating. * openqa-comments: cleanup help text wording and defaults.- Update to version 20181109.c39fa33: * [ttm] remove ppc64 (BE) for TW bypass boo#1112920- Update to version 20181109.3aae284: * adi: Fix format for untracked requests- Update to version 20181108.f4371f4: * dist/spec: provide obs-operator subpackage. * userscript/staging-move-drag-n-drop: rework to utilize OBS Operator server. * obs_operator: provide initial version of server. * userscript/staging-move-drag-n-drop: provide option to click to start. * userscript/staging-move-drag-n-drop: move browser compatability check to init.- Update to version 20181108.09fd2ba: * Remove map_ring_package_to_subject - it always return project * No longer build disable on selecting non-ring packages to letter prjs- Update to version 20181108.e8daf87: * new bugowner tool- Update to version 20181108.151a4fe: * [ARM] Skip build number comparison- Update to version 20181108.4293b6b: * Avoid httppretty 0.9.6 for now- Update to version 20181107.1fec88f: * userscript/staging-move-drag-n-drop: provide initial version.- Update to version 20181107.fc99800: * check_source: check if member of staging group before attempting to skip.- Update to version 20181107.c85f26e: * Don't report that a package is ok if the resultlist is empty- Update to version 20181105.1f8bf21: * Fail rabbit-openqa and have systemd restart it- Update to version 20181105.22b89d4: * abichecker: fix for updated osc api- Update to version 20181101.33a4a3b: * osclib/request_splitter: provide stageable option and make default True.- Update to version 20181101.9f21c86: * devel-projects: remove workaround for OBS xpath bug during request search.- Update to version 20181031.0d9cde5: * osclib/core: repository_published() make x86_64 dependent on i586.- Update to version 20181030.c7fd9ba: * osclib/select: only check filter-from logic if argument was passed.- Update to version 20181030.76bb32a: * Fix indentation in is_snapshottable- Update to version 20181026.9f82d01: * leaper: block on pending factory submissions also for new packages- Update to version 20181025.78a0172: * osc-staging: handle None value for --filter-from.- Update to version 20181025.5558473: * repo_checker: filter repository published check by arch. * repo_checker: repository_state_last(): switch to simulate_merge as arg. * repo_checker: repository_state(): limit meta revision to simulate merge. * repo_checker: repository_state(): filter by relevant archs. * repo_checker: extract arch determination as target_archs_from_prairs(). * osclib/core: provide archs filter for repository state and published queries.- Update to version 20181025.3ad87ff: * manager_42: remove extra newline to avoid flake8 E301. * flake8: utilize raw strings to avoid invalid escape character warnings. * flake8: ignore W504.- Update to version 20181023.f7ea85e: * Fix deployment problems on rabbit-openqa- Update to version 20181023.9b1618e: * If OBS or openQA raise an exception, restart * Require python-pika in CI * First connect to AMQP then fetch initial state * Refactored rabbit-openqa to be based on PubSubConsumer * Adopt pika example on async * Moved the ISO replace_string into OBS attributes * Find a sed like syntax for Staging ISOs * Package rabbit-openqa * Make the names of the openQA checks unique * No need to if loop - we do the same for all of openqa * Link to failed test modules * Fetch all openQA jobs for the ISO every time * Gather initial buildid of repositories * Add helper bot to listen to rabbit bus and feed OBS with openQA Status- Update to version 20181021.14837b3: * pkglistgen: fix AttributeError since update_repos() moved to PkgListGen class * osc-staging: select: document --move and --filter-from options. * osc-staging: select: replace --from with --filter-from.- Update to version 20181019.649529a: * metrics/grafana/openqa: set minimum interval of 10s to avoid gaps.- Update to version 20181019.7d58952: * repo_checker: utilize 'staging' config option for instantiating StagingAPI. * osclib/cycle: remove need for StagingApi instance in favor of apiurl. * ReviewBot: staging_api(): allow for Staging subproject to be used.- Update to version 20181019.b184670: * osclib/conf: include NonFree subproject in openSUSE patterns. * osclib/conf: remove Ports subprojects as they no longer exist.- Update to version 20181019.61d9082: * We need the images repo published to have a status check- Update to version 20181017.3282c9a: * leaper: disable maintainer review addition for incidents.- Update to version 20181017.1b25b75: * dist/ci/obs-build-target: utilize TAR_SCM_TESTMODE to avoid URL check. * dist/ci/obs-build-target: stop at first error. * metrics: Fetch openqa jobs in influxdb format- Update to version 20181015.c6ff801: * check_maintenance_incidents: skip action if the action is for patchinfo- Update to version 20181011.61e1049: * Move unlink_list to pkglistgen class too * Move update_repos into Pkglistgen class * Don't make missing repos (per arch) a fatal error- Update to version 20181011.37ac71d: * [ARM 15.1] Include JeOS images in ToTest- Update to version 20181011.5d542a8: * Add openSUSE-Tumbleweed-Kubic-dvd5-dvd-aarch64 to openSUSE:Factory:ARM- Update to version 20181010.e90ac73: * pkglistgen: Fix copy&paste error on uploading results- Update to version 20181010.97f1eda: * Fix overlap calculation: modules only have filtered archs- Update to version 20181004.97e58e1: * Do no longer CC submitters in request comments- Update to version 20181004.caee905: * pkglistgen: Make sure we don't calculate non-existant architectures in stagings- Update to version 20181004.5ba0b87: * Refactor conditional_PUT as core function * pkglistgen: only PUT new data if it changed- Update to version 20180929.39a3f83: * repo_checker: re-instate staging build failure check after generic rework. * pkglistgen: Only check repository check per arch * Optimize repository_state- Update to version 20180927.2deda1a: * osclib/core: repository_state(): rework to utilize binarylist view.- Update to version 20180927.ed9afea: * Move creation of the Solver object out of loop- Update to version 20180926.ea94191: * dist/kubernetes: provide README covering basic operation. * dist/kubernetes: provide repo-checker module. * dist/kubernetes: provide check-source module. * dist/kubernetes: provide base review_bot component prototype. * dist/kubernetes: provide basic ksonnet setup for heroes cluster. * dist/kiwi: provide kiwi for building worker-obs container. * k8s-secret: provide tool to generate kubernetes secrets containing oscrc. * osclib/cache_manager: rework base directory handling. * dist/ci/osc-init: allow output file location to be set via OSCRC env var.- Update to version 20180926.015677f: * Don't take unsorted.group as reference for SP1 product changes- Update to version 20180924.1527c61: * check_tags_in_requests: factory property is actually an array- Update to version 20180921.e409a67: * pkglistgen: compare repository state to determine when to update solv.- Update to version 20180920.35ea0e1: * systemd/metrics-access.timer: utilize compatible calendar format.- Update to version 20180918.38e2d3f: * metrics/access/aggregate: correct empty seen key handling.- Update to version 20180918.d3afb68: * osclib/core: project_pseudometa_file_ensure(): correct comparison logic.- Update to version 20180918.aeb3b8c: * ReviewBots: utilize delete_package check where it was already assumed. * check_source: split out delete repository check to new sub action check. * check_source: decline all delete project requests. * ReviewBot: break down sub-types of delete requests.- Update to version 20180914.628c1a1: * metrics/grafana/access: add new row and graphs for image totals by product. * metrics/access/aggregate: process and summarize image totals by product. * metrics/access/aggregate: extract merge_product_plus_key() from merge(). * metrics/access/ingest: detect product image paths and included in dump. * metrics/grafana/access: remove left-over raw queries. * metrics/access/aggregate: include Leap 15.1 in published metrics.- Update to version 20180913.d102240: * check_source: reset skip_add_reviews for each request- Update to version 20180913.47324ff: * check_source: ignore _product package check- Update to version 20180910.3cf8055: * metrics: check for action/target instead of submit/target since removed. * metrics: remove workaround for OBS xpath bug during request search.- Update to version 20180905.67200cd: * metrics: correct reference to Leap config defaults pattern.- Update to version 20180905.c5ceab9: * osclib/cache: provide mechanism to init multiple times. * Utilize CacheManager for all existing caches. * osclib/cache_manager: provide general cache manager for all tools. * osclib/common: provide project name and version constants.- Update to version 20180901.9e8018f: * travis: increment targetted versions to openSUSE Leap 15.0 and SLE 15.- Update to version 20180831.8d17136: * dist/spec: add obs-service-* requirements of check_source.pl.- Update to version 20180831.1cedb3d: * compare_pkglist: queries with withlinked=1 to ignore inherited package- Update to version 20180830.814f5f6: * dist/spec: include as requirement of check-source sub package.- Update to version 20180830.e23fb18: * tests/factory_source_tests: update query after osc@f1c3156.- Update to version 20180830.99898de: * README: include section about using obs_clone tool.- Update to version 20180829.e943dab: * metrics: provide initial telegraf setup for ingesting historical snapshots.- Update to version 20180829.6a972fa: * leaper: proper maintainer review rule- Update to version 20180827.541b94d: * Remove SUSE copyright, warranty, and license headers. * LICENSE: add proper GPLv2 license.- Update to version 20180827.491706c: * leaper: comment_handler_lines_deduplicate() remove as no longer applicable.- Update to version 20180824.754012f: * README: completely rewrite and provide workflow overview SVG.- Update to version 20180823.b2be0e2: * README: update coveralls badge for new repository name.- Update to version 20180823.57ef49a: * Revert "repo_checker: change build to state in comment info."- Update to version 20180823.db50e79: * repo_checker: include repository as bot name suffix in direct package comment. * repo_checker: include repository as bot name suffix for staging comments. * osclib/conf: utilize repo_checker-project-skip for OBS SLE projects. * repo_checker: provide repo_checker-project-skip option. * repo_checker: change build to state in comment info.- Update to version 20180823.ebec421: * repo_checker: change package comment default to be direct instead of devel.- Update to version 20180822.a676367: * repo_checker: CreatePackageDescr: exclude build-env requirement.- Update to version 20180822.a02488e: * leaper: replace maintbot usage with ReviewBot methods. * check_source: replace maintbot usage with ReviewBot methods. * ReviewBot: add devel_project_review_*() methods adapted from maintbot.- Update to version 20180822.7fa84f7: * repo_checker: repository_check(): drop left over development comment. * repo_checker: rework install_check() to use target project consistently.- Update to version 20180822.4cbeaa5: * leaper: remove duplicate maintainer review check for IBS in default action.- Update to version 20180822.7f26309: * repo_checker: project_only: hook up --post-comments flag.- Update to version 20180822.a9f1bc0: * osclib/core: repository_path_expand(): skip adding duplicate path.- Update to version 20180821.fa39e68: * StagingAPI: drop inferior expanded_repos() implementation for osclib.core. * pkglistgen: utilize osclib.core.repository_path_expand(). * repo_checker: complete rework to handle arbitrary repos and maintenance. * osclib/util: provide sha1_short() adapted from repo_checker. * osclib/core: provide project_meta_revision() adapted from repo_checker. * osclib/core: provide repository state and published functions. * osclib/core: provide repository_path_search(). * osclib/core: provide repository_path_expand() adapted from StagingAPI. * osclib/core: target_archs(): expose repository argument. * osclib/conf: drop main-repo default for all projects. * ReviewBot: utilize osclib.Cache for all bots by default. * ReviewBot: utilize memoize cached config.- Update to version 20180820.d7d5724: * osc-staging: update "config" documentation to point to OSRT:Config. * osclib/core: source_file_save(): always include host in message. * osclib/stagingapi: rename dashboard_content_* methods to pseudometa_file_*. * Replace relevant 'dashboard' package references with pseudometa lookup. * osclib/stagingapi: drop {load,save}_file_content() methods. * osclib/core: provide project_pseudometa_*() functions. * osclib/core: provide source_file_save() adapted from StagingAPI.- Update to version 20180817.c11f78e: * osclib/conf: remove staging default for generic projects.- Update to version 20180817.f0fadd6: * osclib/conf: provide Leap:N:Update default settings. * osclib/conf: exclude sub-projects from matching project patterns.- Update to version 20180817.8092671: * ReviewBot: drop self.staging_config post switch to Config.get(). * repo_checker: use osclib.conf.str2bool() instead of bool(). * ReviewBots: utilize Config.get() instead of self.staging_config. * osclib/conf: provide cached get() method to supersede ReviewBot cache. * check_source: drop staging_group() for target_project_config().- Update to version 20180817.55116d3: * osclib/stagingapi: utilize osclib.core.attribute_value_*() implementations. * tests/obs: improve format of default Config attribute. * osclib/conf: decouple from StagingAPI and always fetch remote config. * osclib/conf: utilize osclib.core.attribute_value_load() instead of StagingAPI. * osclib/conf: drop dashboard/config migration to attribute. * osclib/core: provide attribute_value_(load|save) adapted from StagingAPI.- Update to version 20180817.93038db: * osc-staging: add documentation for setprio command. * osclib/prio: support non-important priority.- Update to version 20180816.fb3d580: * osclib/core: maintainers_get(): rework to properly supports groups. * osclib/core: provide groups_members() to expand muliple groups users. * Utilize ET.fromstringlist() intead of joining strings.- Update to version 20180816.7b0f756: * repo_checker: CreatePackageDescr: remove more unnecessary special cases.- Update to version 20180815.fa1f929: * repo_checker: drop whitelist_clean sub-command. * repo_checker: determine existing problems based on project_only output.- Update to version 20180815.eed6dde: * repo_checker: support multi-layer projects during project_only run. * repo_checker: properly support multi-layer projects during request mode.- Update to version 20180815.cec5fa6: * repo_checker: whitelist_clean(): correct attribute_value_save().- Update to version 20180814.f629ed8: * ReviewBot: check_one_request(): correct logic to return "lowest" result. * leaper: remove only_one_action limitation. * leaper: provide maintenance_incident support.- Update to version 20180814.17dddb4: * check_source: allow for dot in package name during in-air rename check.- Update to version 20180806.0296ba5: * manager42: don't consider ignored packages vanished- Update to version 20180803.b58b4e4: * pkglistgen: fix calling expand_repos() in CommandLineInterface * pkglistgen: respect main_repo setup for other variant- Update to version 20180802.dec881d: * leaper: fix error with no lookup_150 attribute exist after introduced PackageLookup- Update to version 20180801.cc79ce0: * Lazy evaluation the ring projects- Update to version 20180801.174755e: * pkglistgen: Support passing multiple scopes * Rename superseded_by_id to superseded_by- Update to version 20180727.27f0056: * Add salt packages to DVD for Staging tests- Update to version 20180720.7920baa: * pkglistgen: Commit a summary.yml into 000product-summary if existant * pkglist: Review the proper package (000release-packages) * pkglistgen: allow to pass staging:a as scope * pkglistgen: remove default-support-status option- Update to version 20180719.9951b45: * Move expanded_repos into staging api * repo_checker: Expand repositories of target project * repo_checker: Fix the review loop- Update to version 20180719.c9030ef: * Revert "dist/ci/Dockerfile: add python2-pyOpenSSL as dependency."- Update to version 20180718.2f192f1: * Obsoletes create_test_Factory_dvd-2.testcase * Remove debug code accidentally part of #1615 * Fix openQA group for Leap 15.1 * Add support for SLE12SP4 and SLE15SP1 * Add Leap 15.1 ARM support * Apply remote config in openqa-comments * Remove more of :DVD subproject handling * tests: remove all subproject related part * openqa-comments: do not need to check subproject * check_command: subproject method is no longer exists in dashboard * stagingapi: remove staging_walk() function * stagingapi: remove project_status_walk() function- Update to version 20180718.2f192f1: * Obsoletes create_test_Factory_dvd-2.testcase- Update to version 20180717.a83493b: * Remove debug code accidentally part of #1615- Update to version 20180717.4ced4ce: * Fix openQA group for Leap 15.1 * Add support for SLE12SP4 and SLE15SP1- Update to version 20180717.35e7657: * Add Leap 15.1 ARM support- Update to version 20180716.d161634: * Apply remote config in openqa-comments- Update to version 20180708.2c59f5e: * Remove more of :DVD subproject handling- Update to version 20180705.c561663: * tests: remove all subproject related part * openqa-comments: do not need to check subproject * check_command: subproject method is no longer exists in dashboard- Update to version 20180705.0b67025: * stagingapi: remove staging_walk() function * stagingapi: remove project_status_walk() function- Update to version 20180703.72eb7dc: * pkglistgen: Don't crash on empty groups (unsorted is one) * pkglistgen: Add --stop-after-solve option to ease debugging * pkglistgen: Add --no-checkout option to accelerate reruns * pkglistgen: Calculate the repos list instead of hardcoding * stagingapi: add support for Backports * pkglistgen: drop ring 2 * stagingapi: apply default config first- Update to version 20180703.29c4b6a: * Include deptool in spec file * Tool to debug dependencies- Update to version 20180629.4355859: * No longer have Ring2 and staging :DVD subproject- Update to version 20180629.2ed2f4e: * check_source: skip adding reviews for incidents in favor of maintbot. * check_source: replace one action limitation with configurable rule. * check_source: override rename project setting for maintenance_incident. * check_source: rework rename check to allow for suffixed :Update packages. * ReviewBot: provide self.action for direct access in sub-classes. * ReviewBot: check_action_maintenance_incident(): clarify src_package magic. * ReviewBot: downgrade patchinfo message to debug and include for release. * check_maintenance_incidencts: utilize _is_patchinfo(). * leaper: adjust for SLE 15SP1 and SLE12SP4 * Leaper: adjust for 15.1- Update to version 20180629.b29cbe4: * Adjust opensuse-leap-image references for multibuild * Add packages for Leap 15.0 JeOS- Update to version 20180628.fdc0978: * obs_clone: start from :Rings:1-MinimalX instead of :Rings:2-TestDVD.- Update to version 20180628.fc8db67: * osclib/stagingapi: attribute_value_load(): ensure using desired value.- Update to version 20180627.d5144d3: * Fix JeOS snapshotable detection for Factory:ARM- Update to version 20180626.ca7fec3: * TTM for Leap 15.1 * Fix norelease- Update to version 20180626.15618eb: * repo_checker: Fix config read/load- Update to version 20180625.89c6f1c: * devel-project: reword notifier- Update to version 20180621.c38f9ca: * metrics/access/aggregate: write zeros for empty product data.- Update to version 20180621.58f5c91: * metrics/access/ingest: update pattern to handle most recent log format. * metrics/grafana/access: add explanation about loss of custom log format. * metrics/access/aggregate: change PONTIFEX base URL based on poo#36862. * metrics/grafana/access: remove broken datasource templating from export. * metrics/access/aggregate: remove left over sprintf() from PONTIFEX lines. * metrics/access/aggregate: skip the current day since the logs are incomplete. * dist/spec: move access.json dashboard to metrics-access package.- Update to version 20180621.f2875ce: * pkglistgen: Don't warn about locked packages not found * pkglistgen: Copy away inc files too * pkglistgen: Output more infos about overlap- Update to version 20180620.d4172e6: * osclib/stagingapi: superseded_request(): revert poor indentation changes. * metrics: thankfully we lived past the days of assembly variable name limits. * metrics: ingest_dashboard(): replace max_revision duplicate variable nonsense * Revert "Output Attribute metrics (not well tested)"- Update to version 20180620.78e8212: * requestfinder: make devel project configurable * ttm: Do not put openqa comment if dryrun * ttm: Set snapshot number for Leap 15.0 Ports * ttm: Use openSUSE Leap 15.0 AArch64 not Ports- Update to version 20180619.67121e2: * systemd/metrics-access.timer: skip Monday to avoid conflict with metrics.timer. * Output Attribute metrics (not well tested) * Catch 404 in metrics * Fix test cases * Don't store empty config attribute and propose migration * Catch 404 for attributes (python3 way) * Read lock attribute from remote config * Migrate SUSE config into attributes * Make remote-config mandatory * Move config into an OBS attribute- Update to version 20180618.d41cbda: * metrics/access: add summary README.md. * dist: package metrics/access tool and related. * metrics/grafana: add access dashboard and data source. * metrics/access: initial aggregate script. * metrics/access: initial ingest script.- Update to version 20180618.18c2ba3: * Make norelease the default for SLE- Update to version 20180618.b646e55: * Generate an unsorted.group if configured- Update to version 20180615.b05d559: * request_splitter: gcc8 is the default compiler now- Update to version 20180615.3f7ae41: * Run ttm by systemd timer to prevent mem leaks * TTM: Remove project-base option- Update to version 20180614.3b99137: * dist/ci/Dockerfile: add python2-pyOpenSSL as dependency. * TTM: Add norelease option for use with OSD * Refactor _check_project into ReviewBot * Also release 000product:openSUSE-ftp-ftp-armv7hl for Leap 15.0 ports * dist: Require python2-pika by totest-manager (new amqp dependency) * legal-auto: autopep8 * Add retried_GET * Do not pass md5 but revision * Use UTC for created * Add project sub command to legal auto * pkglistgen: log unsorted locale packages * update-crawler: also log where requests came from * Handle armv6/armv7 with totest manager as well- Update to version 20180604.ce0a143: * oqamaint: use the proper key to add incident repo * oqamaint: Make debuging of incident list in repohash easier- Update to version 20180604.fb82c46: * metrics/grafana/release: score yaxis max 100.- Update to version 20180531.95e0616: * Fix punctuation * Update announcer.py to ask people to report bugs- Update to version 20180524.432237a: * openqa-maintenance: Make sure we don't go through requests twice- Update to version 20180524.7ee44e7: * [openqa-maintenance] Add kernel incidents for SLE11- Update to version 20180520.b621775: * openqabot: Quote the module name- Update to version 20180518.3a01e88: * metrics: drop release schedule before writing.- Update to version 20180518.6c6bccc: * metrics/annotation/leap:15.0: update final release date.- Update to version 20180518.ef92c2f: * Add AMQP support to TTM- Update to version 20180517.f446be2: * Freeze adi: do not check the first package in frozenlinks but metadata- Update to version 20180516.9f20fc7: * repo_checker: whitelist_clean: handle binaries_common being None.- Update to version 20180516.6459937: * repo_checker: sort whitelist before writing to config. * repo_checker: include final newline in dashboard/repo_checker file.- Update to version 20180516.629cada: * [openqa-maint] fix apimap for SLE12SP2 HA- Update to version 20180515.75b8a82: * Skip nonfree for ports scope * pkglistgen: Add ppc64le for Leap 15.0 Ports- Update to version 20180515.fd25d09: * ttm: Load and Store the ignored issues in an OBS attribute * ttm: Store the last seen build number for each issue- Update to version 20180514.8af3e4a: * Add maxsize for JeOS to handle openSUSE:Factory:ARM- Update to version 20180514.f35a199: * ttm: Allow to ignore job failures without bug reference- Update to version 20180514.5f4f4ef: * Begin porting to python3 (osc branch)- Update to version 20180514.3ca5e48: * config/manager_42/leap:15.0: increase priority of SLE-workarounds.- Update to version 20180511.eff4e45: * systemd: add service retry to support-rebuild which 502s regularly. * systemd: include SyslogIdentifier in each service to improve journal. * systemd: ensure all services have a relaxed RuntimeMaxSec. * systemd: drop Type=simple to be consistent since default not required.- Update to version 20180511.4952872: * openqa-comments: drop openSUSE: prefix to allow for generic usage. * openqa-comments: meant to be executable thus should include a shebang.- Update to version 20180511.af4e85a: * dist/spec: bump copyright year. * dist/spec: sort requirements. * dist/spec: update to new license standard. * dist/spec: move ExclusiveArch up to apply to all packages instead of devel.- Update to version 20180510.a8b760d: * dist/spec: exclusively build on x86_64 to avoid needless builds and OBS bugs.- Update to version 20180510.b4943dc: * osclib/conf: update nocleanup-packages post migration to new pkglistgen. * osclib/conf: change pkglistgen-include-suggested to False.- Update to version 20180510.ae00f10: * dist: provide osrt-staging-bot-check_duplicate_binaries@.service.- Update to version 20180510.846b2bd: * dist: provide openqa-comments service as part of staging-bot. * dist: package openqa-comments as executable.- Update to version 20180510.afbd03d: * systemd/leaper-crawler.service: wrap script with bash to handle colon. * dist/package/spec: leaper package requires maintenance.- Update to version 20180510.6fd17f1: * [oqamaint] Don't start and resolve incident job before is fully build * [oqamaint] Fix data for KGraft- Update to version 20180509.90155fc: * osclib/comments: command_find: use MULTILINE mode. * osclib/comments: command_find: stupid \r line endings.- Update to version 20180509.41bbae7: * manager_42: check if SLE-workarounds are no longer utilized and request removal.- Update to version 20180509.324f7cc: * config/manager_42/Leap:15.0: update for Leap:15.0 source project reality. * config/manager_42/Leap:15.0: include from_proj in order to work properly. * config/manager_42/Leap:15.0: remove duplicate SLE-workarounds entry.- Update to version 20180502.978881d: * [oqamaint] Take build number as last resort to avoid crash * [openqa-maintenance] Use to_xml method of Request object * [oqamaint] Do not export variables not necessary for scheduling- Update to version 20180430.eb1d0be: * ReviewBot: runner: reload checker and reset memoize session caches. * osclib/memoize: provide memoize_session_reset().- Update to version 20180427.1730947: * systemd/osrt-repo-checker-project_only@.timer: increase frequency to hourly. * repo_checker: project_only: store build hash and skip when unchanged.- Update to version 20180427.adbbde2: * repo_checker: invoke whitelist_clean() as part of project_only. * repo_checker: whitelist_clean: provide interactive flag.- Update to version 20180427.add0eb7: * [openqa-maintenance] Don't accept incidents waiting for build * osclib/check_duplicate_binaries: ignore any package arch that differs from arch. * osclib/check_duplicate_binaries: rewrite to use package_binary_list(). * osclib/core: binary_src_debug: include nosrc as ignored arch. * osclib/core: package_binary_list: provide strip_multibuild option. * osclib/check_duplicate_binaries: drop unused imports post lnussel rework.- Update to version 20180426.2550cb4: * osclib/check_duplicate_binaries: ignore s/glibc.i686/glibc:i686/.- Update to version 20180426.2282f15: * metrics/grafana/dashboard: remove y-axis max from "Weekly Revisions".- Update to version 20180426.2aba87c: * freeze_command: rebase staging project do not erase users data- Update to version 20180425.abd03b3: * metrics: ingest_dashboard_config: rename seen to previous. * metrics: ingest_dashboard_config: initialize seen with last record keys. * metrics: ingest_dashboard_config: only fill missing values once.- Update to version 20180425.94fefaf: * metrics/grafana/dashboard: add release schedule annotation. * metrics/grafana/dashboard: include dashboard description. * metrics/grafana/dashboard: change all selectors to last.- Update to version 20180425.ade9313: * metrics: dashboard: drop dashboard measurement in favor of dashboard_revision. * metrics: dashboard: include revisions graph.- Update to version 20180425.adab26c: * repo_checker: provide whitelist_clean subcommand. * osclib/core: correct BINARY_REGEX by making it greedy.- Update to version 20180425.8bb627d: * [oqamaint] Reset the hashes on every review round * [oqamaint] Fix re-reviewing requests * [oqamaint] Do not append to OS_TEST_ISSUES * [oqamaint] Look at all open release requests for Updates * [oqamaint] Reschedule Updates test if the list of incidents changed * [oqamaint] Remove wrong entries in json- Update to version 20180424.2010288: * osclib/accept_command: avoid making empty commit to dashboard.- Update to version 20180424.855f660: * unmaintained: utilize package_binary_list(exclude_src_debug). * osclib/core: package_binary_list(): provide exclude_src_debug option.- Update to version 20180423.fe2e20a: * metrics/grafana: add dashboard.json. * metrics: ingest relevant dashboard files and extract metrics. * metrics: provide dashboard revision walking function and cache patterns. * metrics: instead of wiping cache place ephemeral patterns behind flag. * osclib/stagingapi: dashboard_content_load(): expose revision parameter.- Update to version 20180423.6d46e97: * metrics/grafana/staging: move legend to right side on pie charts. * metrics/grafana/review: increase hieght on lists to accomodate size. * metrics/grafana/release: increase width to 100% grid width.- Update to version 20180423.884aa1f: * [openqa-maintenance] Add openSUSE Leap 15.0 configuration- Update to version 20180423.dce40cb: * [oqamaint] Fix indentation * [oqamaint] Use reviewbot's comment API * [oqamaint] Add OS_TEST_ISSUES as openSUSE repo settings * [oqamaint] Make settings a hash instead of an array * [oqamaint] Remove symlinks - not necessary according to my experiments * [oqamaint] Create mesh compatible data for openSUSE * [oqamaint] Fetch the list of packages for openSUSE * [oqamaint] Fix openSUSE support * Rename openqa-maintenance2 to openqa-maintenance- Update to version 20180423.750f091: * metrics/annotation: add openSUSE:Leap:15.0 schedule. * Handle the JeOS multibuild package for Factory:ARM:Live * leaper: update diff link to also link to package itself * leaper: fix link to SLE-workarounds * Handle Leap:15.0:Ports images_arm repository- Update to version 20180419.3dcaf5c: * Handle more products for Factory:ARM- Update to version 20180418.c725593: * devel-project: notify: utilize osclib.core.package_list_without_links(). * osclib/core: provide package_list_without_links(). * devel-project: remove unused imports.- Update to version 20180417.5b2296e: * dist/ci/obs-build-target: in include --always to git describe. * Makefile: package all executable files in bindir. * metrics_release: remove executable flag left over from development.- Update to version 20180417.e92d7bf: * check_tags_in_requests: replace check_action__default() with built-in. * legal-auto: replace check_action__default() with built-in.- Update to version 20180417.038cb94: * ReviewBot: disable comment handler for default action handler.- Update to version 20180417.b8337f4: * [openqabot-maintenance] Catch HTTPError when try get REPOHASH * [openqa-maintenance] SLE 12 SP2 LTSS * [openqa-maintenance] start HA/SES jobs only wheen are required * [openqa-mainteance] Add data for SES5 * [openqa-maintenance] catch removed incident project * [openqa-maintenance] add missing arch for Live Patching apimap * [openqa-maintenance] Allow OS_TEST_ISSUES different than product prefix * [openqa-maintenance] Fix WSM and TCM issues data * [openqa-maintenance] Add correct issues for SLE-HA to apimap * [openqa-maintenance] Survive malformed repomd.xml * [openqa-maintenance] Add SLE-HA incidents * [openqa-maintenance] Allow and correctly use other distri from apimap.json * [openqa-maintenance] Add data for CAASP * [openqa-maintenance] Add data for KGraft on ppc64le * [openqa-maintenance] Start Incidents-Kernel flavour also for kernel packages * [openqa-maintenance] Add support for kGraft jobs * [openqa-maintenance] Rewrite of openqa-maintenace bot pt.1 * [openqa-maintenance] Add apimap and incidents data for kGraft * [openqa-naintenance] Remove uneeded kGraft data- Update to version 20180416.dc30723: * unmaintained: tool to find umaintained binaries sourced from SLE. * osclib/core: provide source_file_load() from StagingAPI.- Update to version 20180413.71fd5fe: * pkglistgen: do_update_and_solve(): print exception and continue for all projects.- Update to version 20180411.820d103: * issue-diff: utilize entity_mail() as adapted into osclib.core. * devel-project: provide notify sub-command. * osclib/util: provide mail_send(), modified from announcer.py. * osclib/core: provide entity_email(), modified from issue-diff.py.- Update to version 20180406.ace73fe: * ttm: adjust regexp to include Snapshot * ttm: fix leap 15 docker image handling- Update to version 20180405.e96a27a: * Staging2-DVD: Drop pattern gnome_laptop * create_test_dvds: Gcc7 staging project was resurrected- Update to version 20180403.78ea7dd: * check_source: skip checks for packages without spec file- Update to version 20180329.1ab84c3: * Change remaining usage of _product to 000product * leaper: set maintainer review early * leaper: also look into :Live subproject of Factory- Update to version 20180329.9ad18cf: * Staging accept: run service in ports 000product- Update to version 20180329.8097ab6: * conf: make sure variable is not None before do lower()- Update to version 20180328.f195bc7: * repo-checker: Check delete requests for provided runtime dependencies * API: move fileinfo_ext[_all] from StagingAPI to core- Update to version 20180326.b4c885d: * totest_manager: Also release openSUSE:Leap:15.0:Images/opensuse-leap-image * totest-manager: Tumbleweed moved to the new product builder- Update to version 20180323.5d0c024: * leaper: allow comment override also on openSUSE * Add create_sle_weakremovers command- Update to version 20180319.133d87b: * Change references to osc-plugin-factory to openSUSE-release-tools. * check_source: make use of ReviewBot request_default_return. * check_source_in_factory: allow repo-checker reviews.- Update to version 20180317.88a6e97: * check_source: delete: place maintainer review check behind ignore_devel. * osclib/conf: SLE-15: set check-source-in-air-rename-allow to True. * check_source: provide in-air-rename-allow config setting.- Point to new source location.- Update to version 20180315.d11501f: * check_source: skip all checks for 00* packages * Use opensuse/tumbleweed in the Dockerfile * Avoid boolean dependencies for repo checker- Update to version 20180314.3bd6833: * metrics_release: only works for openSUSE:Factory. * metrics: do not drop entire database, but instead measurements. * metrics: switch over to grafana 5.x provisioning. * metrics: remove TW snapshots graph from release dashboard. * metrics: migrate grafana dashboards to 5.x format.- Update to version 20180312.9a26912: * pkglistgen: do_dump_solv(): include hash in update solv to avoid download. * pkglistgen: do_dump_solv(): utilize os.path.join().- Update to version 20180312.054eef2: * ReviewBot: make interval work without tty- Update to version 20180312.35e7c51: * services: Add Install section to totest-manager service- Update to version 20180311.ad60562: * ReviewBot: don't crash if staging-group is None * check_source: make adding review team configurable * check_source: fix boolean option * pkglistgen: Fix reading boolean values- Update to version 20180309.d001daf: * issue-diff: rename --config-dir as --cache-dir to be more accurate. * issue-diff: replace git sync functionality with osclib.git. * osclib/git: provide git utilities: clone() and sync().- Update to version 20180309.fe4edd6: * Treat stagings differently- Update to version 20180309.7484722: * pkglistgen: do_dump_solv: flush after write before reading back. * pkglistgen: do_dump_solv: verify primary repo gziped content sha256. * pkglistgen: do_dump_solv: use BytesIo instead of StringIO.- Update to version 20180309.f20816d: * pkglistgen: Do not run local service check when committing to release package- Update to version 20180309.f607883: * leaper: fix can_accept_review for combined user/group usage * create_test_Factory: No longer block kdelibs4-branding-upstream- Update to version 20180309.d9773c3: * metrics: provide release metrics ingestion and dashboard.- Update to version 20180308.568be98: * osclib/stagingapi: rename main_repo to cmain_repo. * osclib/stagingapi: rename delreq_review to cdelreq_review. * osclib/stagingapi: rename cstaging_nocleanup to cnocleanup_packages. * osclib/staging-api: lazy-load all config values to allow for placement in remote config.- Update to version 20180308.17ebaaa: * ReviewBot: allow both group and user review- Update to version 20180308.defd995: * osclib/conf: change priority to be string to work with ConfigParser.- Update to version 20180308.3e83a1f: * leaper: do not decline SLE requests, but rather ask managers for input. * osclib/conf: configure SLE-15 leaper-override-group. * leaper: move review groups to osclib.conf.- Update to version 20180307.f6eae67: * repo_checker: format what_depends_on as markdown bulleted list.- Update to version 20180307.d30db7e: * repo_checker: provide comment command to skip-cycle for group. * repo_checker: utilize ReviewBot.comment_api instead of new instance. * ReviewBot: provide comment command override. * osclib/core: maintainers_get(): utilize new group_members() function. * osclib/core: provide group_members() function. * osclib/comments: provide command_find() for comment commands.- Update to version 20180306.a9ec91f: * ReviewBot: do not bother commenting for unhandled request type.- Update to version 20180301.bac6644: * fix a typo that currently breaks token authentication- Update to version 20180227.adb01e2: * ttm: use dashboard_content_ensure()- Update to version 20180223.e8c002d: * ttm: handle Leap 15 live images separately * requestfinder: make sure exclude-project is a list * requestfinder: fix exclude-user and add exclude-group * leaper: allow turning FORK into something else- Update to version 20180223.af01909: * Staging2-DVD: should be Mesa-demo-x for glxgear test- Update to version 20180222.db87a62: * Do not complain 000* package has defined in the two different ring- Update to version 20180222.21777cc: * TW Staging media: Add Mesa-demo to Staging2 DVD for openQA test- Update to version 20180222.009712a: * ttm: Follow package name changes of Tumbleweed live media- Update to version 20180221.355c0b4: * Revert "staging: add exceptions for new 000* product files"- Update to version 20180220.f56ccb8: * pkglistgen: solv_cache_update(): support update repo and 4 way merge. * pkglistgen: do_dump_solv(): support update repos. * pkglistgen: solv_merge(): allow array of solv files to merge. * pkglistgen: solv_merge(): skip when inputs are older than merged. * osclib/conf: leap: set download-baseurl-update.- Update to version 20180220.945bf4f: * metrics: ingest_release_schedule(): disable for Tumbleweed until #1250. * metrics: update Leap config key to match osclib/conf post #1386.- Update to version 20180220.fc7e60b: * pkglistgen: use set_namespaceproviders function- Update to version 20180215.60cfab2: * osclib/conf: leap: repo_checker-arch-whitelist to x86_64.- Update to version 20180213.c589ef1: * autopep8 to fix indenting * Move package hints into unsorted.yml * Support unneeded.yml as list of regular expressions- Update to version 20180213.3e3f458: * conf: SLE-15: set pkglistgen-product-family-last to SLE-11:GA. * pkglistgen: expose pkglistgen-product-family-last config option. * osclib/util: project_list_family_prior(): provide last parameter. * osclib/util: project_list_family(): handle IBS SLE naming style. * pkglistgen: do_update_and_solve(): check for existence of :DVD instead of rings.- Update to version 20180212.7f93dbe: * Skip automatic rebuild for more pattern packages * Avoid hitting the request limit * Fix rebuildpacs for armv6/armv7 architectures- Update to version 20180212.87ab899: * leaper: don't check maintainer for other requests- Update to version 20180209.ad077ab: * leaper: switch off maintainer review for updates from Factory- Update to version 20180207.878b87b: * osc-staging: select: reword documentation to include XML reference. * osc-staging: select: mention additional supplemented request values. * osc-staging: select: mention quick strategy in documentation. * osc-staging: select: add filter-by example using hashtag in description.- Update to version 20180206.56df1cf: * osclib/conf: include Leap for Factory during pkglistgen. * pkglistgen: include some hints about the difference between solv files. * pkglistgen: integrate drop list creation into update_and_solve. * pkglistgen: do_dump_solv(): handle old-style product repo format. * pkglistgen: do_create_droplist(): print to file when output_dir available. * pkglistgen: provide update_merge() to combine free and nonfree solv. * osclib/util: provide project_list_family* and project_version(). * osclib/stagingapi: get_staging_projects(): utilize project_list_prefix(). * osclib/core: provide project_list_prefix(). * osclib/conf: add download-baseurl for Leap and Factory. * osclib/conf: support version in project pattern as value replacement.- Update to version 20180206.faa028a: * osclib/conf: leap: incorporate proven unselect settings. * osclib/conf: leap: incorporate proven splitter settings.- Update to version 20180206.453868a: * remove Leap 42.2 from tests- Update to version 20180203.cd1fa5d: * CreatePackageDescr: ignore debuginfo.build deps for i-i-debuginfodeps* packages- Update to version 20180201.10fd5ae: * pkglistegen: Fix overlap generation- Update to version 20180131.b78d3b9: * build-faul-reminder: Small rewording of the 2nd mail- Update to version 20180131.d88eefe: * adi: place :NonFree requests in separate adi with :NonFree path.- Update to version 20180130.40c4c14: * status: fallback to request_age() even if no comment.- Update to version 20180129.5a472eb: * osclib/core: request_age() return delta and handle Request object. * create_test_dvds: do not lock vim-data * fcc_submitter: skip revoked request- Update to version 20180126.574cfe8: * status: provide exit code based on status. * status: provide initial implementation for checking bot status. * osclib/request_splitter: utilize osclib.core.request_age(). * devel-project: utilize osclib.core.request_age(). * osclib/core: provide request_age().- Update to version 20180126.2c8c597: * osclib/accept: print todo from staging config after completion.- Update to version 20180125.39c9cce: * check_source: add hint about how to whitelist a devel projects.- Update to version 20180125.a5dbcd1: * dist/spec: place config under %config(noreplace) directive. * announcer: handle dot in build version detected from iso. * config/announcer: add openSUSE:Factory config. * announcer: provide defaults for sender, to, and relay. * config/announcer: create Leap 15.0 config from 42.3. * config/announcer: drop repeated keys in favor of final values. * config/announcer: include config used for Leap 42.3. * announcer: provide proper packaging and generic templated service.- Update to version 20180125.3cf74b3: * dist/ci/obs-deploy: replace `osc request list` with `osc api` call.- Update to version 20180125.753f6c7: * dist/ci/docker-compose-obs: print osc output on timeout for debugging.- Update to version 20180125.d383073: * repo_checker: skip packages for which not devel project exits. * repo_checker: project_only(): correct not published check.- Update to version 20180125.9a91597: * dist/ci/obs-deploy: only commit if new source revision. * dist/ci/obs-deploy: require greater than six lines changed to create request.- Update to version 20180123.d074c5b: * Remove Vim config in favor of EditorConfig. * Add EditorConfig.- Update to version 20180122.b5fe7e7: * dist/ci/obs-deploy: only bother making request if diff. * dist/ci/obs-deploy: limit `request list` by user to avoid source requests. * docs/pkglistgen: update in the wake of wrapper script rewrite.- Update to version 20180119.a7c4bcf: * repo_checker: package_comments(): provide option to post on target package. * repo_checker: package_comments(): switch to devel_project_fallback(). * repo_checker: package_comments(): support mutiple target projects. * ReviewBot: comment_write(): provide bot_name_suffix parameter. * repo_checker: package_comments(): include link to target package.- Update to version 20180119.2d6b957: * check_source: add_role: utilize devel project fallback.- Update to version 20180119.38fd846: * osclib/request_splitter: replace devel_project_get() with core.devel_project_fallback(). * osclib/stagingapi: replace get_devel_project() with core.devel_project_get(). * update_crawler: replace get_devel_project() with osclib.core.devel_project_get(). * fcc_submitter: replace get_devel_project() with osclib.core.devel_project_get(). * ReviewBot: replace get_devel_project() with osclib.core.devel_project_get(). * osclib/core: devel_project_fallback(): do not fallback if openSUSE:Factory. * osclib/core: provide devel_project_fallback() based on request_splitter. * osclib/core: provide devel_project_get() adapted from ReviewBot. * news/web: allow dot in version. * cleanup_rings: Fix for 000product * cleanup_rings: first attempt to fix for multibuild- Update to version 20180117.b6d80ea: * fcc_submitter: fix a regression from previous commit- Update to version 20180117.e41b40e: * requestfinder: fix comment output- Update to version 20180117.b335868: * pkglistgen: delete kiwis by scope- Update to version 20180115.2da7981: * osclib/request_splitter: rework quick strategy to handle Leap 15.0 workflow. * obs_clone: reword comment in project_workaround() since not temporary. * obs_clone: clone rings. * obs_clone: handle project links. * osclib/request_splitter: allow special packages to be empty. * fcc_submitter: ignore multibuild flavor package when creating frozenlinks * fcc_submitter: move FCC project to :Staging:Factory:Candidates * new requestfinder tool- Update to version 20180112.41846c5: * systemd/metrics: change service to be non-incremental and weekly. * metrics: provide --wipe-cache option.- Update to version 20180111.54880d3: * dist/spec: license: s/and/AND/ to follow standard.- Update to version 20180110.9ab0211: * obs_clone: workaround openSUSE:Factory meta revision 429 self reference. * obs_clone: set the exit code to 1 when HTTPError encountered.- Update to version 20180110.453674c: * pkglistgen: typo locals vs locales * pkglistgen: add correct staging DVD repo * pkglistgen: use xdg.BaseDirectory- Update to version 20180109.29108bd: * pkglistgen: do_update_and_solve: staging correct :DVD subproject append. * pkglistgen: first pass __file__ through realpath due to packaging symlink. * dist/spec: move pkglistgen.py under subpackage ownership. * dist/spec: add python-requests requirement were applicable.- Update to version 20180109.09a98cd: * osclib/conf: intial SLE configuration for pkglistgen. * pkglistgen: update_and_solve: include step in output for debugging. * pkglistgen: update_and_solve: handle --dry for undelete_package(). * pkglistgen: update_and_solve: include ignore_unresolvable and local options for solve. * pkglistgen: update_and_solve: set input_dir to group_dir for solve. * osclib/conf: correct Leap 15.0 default locales-from from - to . product. * systemd/pkglistgen: add update_and_solve subcommand.- Update to version 20180109.2b037a0: * osclib/conf: allow devel projects to utilize tools that require conf. * osclib/conf: order config defaults by priority.- Update to version 20180105.7eaed34: * Revert "osclib/conf: allow devel projects to utilize tools that require conf."- Update to version 20180104.43dea82: * tests/ReviewBot_tests: add test_dryrun(). * tests/ReviewBot_tests: add test_only_replace_none(). * tests/ReviewBot_tests: add test_workflow() complex test. * tests/ReviewBot_tests: add test_basic_logger() as initial test.- Update to version 20180104.656cba4: * tests/comment_test: add test_delete_nested(). * tests/comment_test: add test_delete_batch(). * tests/comment_test: add test_basic() against OBSLocal. * tests/comment_test: move COMMENT* constants to file level. * tests/OBSLocal: re-parse config and reset authentication when changing user. * tests/OBSLocal: setup test separate cookiejar. * tests/comment_tests: add test_comment_find(). * tests/comment_tests: add test_remove_marker(). * tests/comment_tests: add test_add_marker().- Update to version 20180104.b0cd970: * osclib/conf: allow devel projects to utilize tools that require conf.- Update to version 20180104.e1b5d75: * osclib/stagingapi: detect baselibs.conf in adi package and ensure archs enabled. * check_source: load target project config during check_action_delete(). * osclib/stagingapi: load_file_content(): provide optional revision param. * osclib/stagingapi: load_file_content(): convert to makeurl() query builder.- Update to version 20180102.98a659c: * manager42: ignore meta packages * manager42: refactor * manager42: don't turn dropped packages into fork * manager42: warn about inconsistent packages * reochecker: avoid accessing empty status * repo_checker: only update comment if published or message changed. * ReviewBot: comment_write(): provide info_extra_identical parameter. * fcc_submitter: handle multibuild package in build_succeeded package list * check_duplicate_binaries: better yaml * pkglistgen: migrate bash scripts to python. * osclib/stagingapi: provide is_staging_bootstrapped() from request_splitter. * ToolBase: provide -d alias for --debug for consistency.- Update to version 20171226.96a3eec: * rebuildpacs: rebuild perf- Update to version 20171220.ba8a357: * Be more forgiving with ttm ignore comments- Update to version 20171219.ce7c0d9: * freeze_command: use result call to get proper multibuild package information for aggregatepac- Update to version 20171219.55e468e: * Fix travis failure introduced with 3e5f3b137 * Fix packaging after commit 3e5f3b137 * Don't checkout master * Add 15.0 Ports to totest-manager * pkglistgen: Actually remove overlapping packages * Add support for non-x86_64 products (Leap 15.0/aarch64) * Scripts and templates to create stagings * systemd units: remove oneshot type- Update to version 20171218.09707c0: * Update staging dvd template for firewalld and xfsprogs * rebuildpacs: ignore hdf5:serial- Update to version 20171214.0fecf50: * osc-cycle: strip commas from package names- Update to version 20171213.3dde523: * pkglistgen: Output the overlaping packages into overlap.group- Update to version 20171212.bffe857: * totest-manager: Make sure internal object for notifications is always valid- Update to version 20171208.d7c5a3e: * compare_pkglist: do not submit package if it has removed from target * pkglistgen: dump_solv function * pkglistgen: add droplist generator * pkglistgen: include locales and suggested * biarchtool: blacklist 000release-packages * biarchtool: also work for rings * biarchtool: blacklist patterns that are in ring1 * biarchtool: fetch all packagemetas at once- Update to version 20171205.1769209: * compare_pkglist: improve submission message * compare_pkglist: add feature to limits submission creating * compare_pkglist: fix a typo- Update to version 20171204.4661a09: * rebuildpacs: Ignore some more multibuild packages * repochecker: filter out self requirement * repochecker: add --force and --limit-group options- Update to version 20171204.86cd536: * compare_pkglist: fallback to old route if submitfrom and submitto has not defined- Update to version 20171201.913531e: * osclib/cycles: only cache target project builddepinfo to avoid excessive cache. * osclib/cycles: drop _get_builddepinfo and _get_builddepinfo_cycles since unused. * Add more details to openQA job group description about current status- Update to version 20171130.3b99a9d: * compare_pkglist: add more features- Update to version 20171127.60cdcec: * check_source: Ignore download_files failure in some cases- Update to version 20171127.3368dd5: * Implement namespace callback for locales * pkglistgen: Optionally include suggested packages too * fcc_submitter: update to Leap 15.0 * ttm: Add support for SLE 15- Update to version 20171122.ea9f948: * Split EDITOR environment variable to handle flags in prefix.- Update to version 20171122.b428ed3: * compare_pkglist: Add --submit param to submit new package- Update to version 20171121.734e384: * pkglistgen: need to expand link * pkglistgen: require python-solv- Update to version 20171121.0d31ae5: * pkglistgen: Fix script name * Skip maintainer review for certain Leap 15 submissions- Update to version 20171120.fc6eb19: * pkglistgen: require obs-service-product_converter * pkglistgen: add systemd units * pkglistgen: use new cache format of repo_checker * pkglistgen: process DVD subproject first- Update to version 20171120.87649f1: * suppkg_rebuild: count Support tag also- Update to version 20171115.6140695: * compare_pkglist: displays deleted package * compare_pkglist: misc improvements- Update to version 20171112.b690943: * pkglistgen: fix up coolo's code * pkglistgen: Output overlapping packages as yaml * pkglistgen: Allow new recommended flag to take over recommends * pkglistgen: Ignore modules recursively * pkglistgen: Implement UNWANTED support * pkglistgen: Do not ignore recommendes from other modules * pkglistgen: Have update command exit 1 if it updated something * pkglistgen: Create an unsorted.yml and output duplications- Update to version 20171110.5906e5c: * dist/spec: appease the exit status gods with || true. * dist/spec: restart totest-manager instances properly. * dist/spec: only run %systemd_postun for oneshot services.- Update to version 20171109.f927c57: * metrics: rework to store points as named tuple and write in batches. * metrics: rework request pagination to provide as generator. * metrics: call ET.clear() to release unneeded memory used by search result.- Update to version 20171109.bcdea68: * Don't die on delete requests- Update to version 20171109.3e191ca: * repo_checker: review failed stagings with only openQA failures.- Update to version 20171109.1efadc5: * metrics/grafana/review: include opensuse-review-team who graphs. * metrics/grafana/review: default to openSUSE:Factory. * metrics/grafana/review: disable annotations by default. * metrics/grafana/staging: "Project stats" to "Totals" * metrics/grafana/staging: remove 1s interval as it causes RAM issues. * metrics/grafana: standardize title prefix with 'OSRT: '. * dist/ci: grafana dir must be owned by grafana user since it writes lock. * dist/spec: correct metrics postun to reference systemctl by absolute path. * metrics: prefix release schedule file with source dir path.- Update to version 20171109.3d34370: * ttm: publish non-oss for Leap 15 too- Update to version 20171103.593c900: * dist: provide metrics service and timer. * dist: install exported dashboards in grafana dashboard directory. * dist: include metrics.py in bindir. * dist: move package_name variable to Makefile.common.- Update to version 20171103.f5bc6b6: * vdelreq: add to the package * osc vdelreq: new command lists pending virtually accepted delete request status- Update to version 20171102.0a45aba: * accept_command: remove the ring package if it is 2nd specfile is removed * accept_command: force to accept the staging if --force parameter is given- Update to version 20171031.d8cd193: * systemd/devel-list: allow three retry attempts to handle regular OBS crash.- Update to version 20171031.0e1733f: * repo_checker: add newline to cycles comment to format properly. * repo_checker: project_only place dashboard update behind dryrun check. * repo_checker: project_only ensure project repository is published. * repo_checker: store and compare build hash to skip more aggressively.- Update to version 20171031.c32b59b: * devel-project: override osc.core.search() to include withfullhistory for get_review_list().- Update to version 20171028.9cded5c: * pkglistgen: also output suggested packages- Update to version 20171027.63cde26: * pkglistgen: don't export skip_releases- Update to version 20171025.42b8b4d: * osclib/memoize: include first argument, sometimes instance, in cache key.- Update to version 20171024.32d1a97: * tests/OBSLocal: invoke scripts using `coverage` to include in report. * tests/OBSLocal: split out execute() to provide osc and generic versions. * tests/OBSLocal: include assertOBS() to clarify OBS status before test. * tests/OBSLocal: add email and include spaces in generated oscrc file. * tests/OBSLocal: rework OSCRC handling to use non-default file. * tests/OBSLocal: add workaround for obs.py leakage. * travis: before_cache: include -R in chmod .docker-tmp. * obs_clone: remove whole repositories rather than just path when fenced. * obs_clone: provide --cache feature. * osclib/cache: allow ttl of 0 to prevent caching. * dist/spec: disable `make check` during %check until integration tests resolved. * Exclude .open-build-service/ from docker, flake8, and git. * travis: provide local OBS setup and clone base data. * tests/devel_project: provide basic test against local OBS. * tests/OBSLocal: provide based class for testing against local OBS. * obs_clone: clone projects and dependencies between OBS instances. * devel-project: list: only remove self if in devel project list.- Update to version 20171024.443b432: * osclib/conf: prefer already parsed conffile over OSC_CONFIG env variable. * tests/obs: move Cache.delete_all() after CACHE_DIR changed.- Update to version 20171024.1c17971: * Blacklist new warnings introduced by flake8 3.5.0- Update to version 20171024.737d39a: * pkglistgen: dont mirror debug packages * pkglistgen: skip one cycle when undeleting- Update to version 20171021.9465b2f: * dist: add subpackage for pkglistgen * pkglisten: add some docu * pkglistgen: shell scripts to actually commit- Update to version 20171020.0479513: * travis: chmod .docker-tmp so non-root can read for caching. * travis: extend cache timeout to 7 days. * travis: optimize `osc build` cache by removing build-root. * travis: enable pip cache. * travis: install realpath to allow docker-run to correctly mount volume.- Update to version 20171020.ee34178: * travis: include all files instead of just osclib in coverage.- Update to version 20171020.7d266d5: * Another set of low-noise flake8 cleanups * Parallelize flake8 run- Update to version 20171019.24ea059: * dist/ci/docker-run: utilize throwaway credentials to workaround OBS issue. * dist/ci/osc-init: print OBS_API and OBS_USER for debugging. * dist/ci: use hidden directory .docker-tmp instead of HOME and cache on travis. * dist/ci: fallback to /public OBS API in the event of no OBS_PASS * dist/ci: provide OBS_API parameter. * travis: add distribution builds for Leap 42.3 and SLE-12-SP3. * dist/ci: rework spec.sh as obs-build-target using `osc build`. * dist/ci: extract common osc setup as osc-init and provide in /usr/bin. * dist/ci/Dockerfile: include obs-deploy in /usr/bin. * dist/ci: rename deploy.obs.sh to obs-deploy. * dist/ci/deploy: only commit if changes available to commit. * dist/ci/deploy: only add line if missing from _servicedata. * dist/ci/Dockerfile: switch to base tumbleweed image.- Update to version 20171019.6b7fd1b: * Enable F405,F811 (Unused imports) * Add Flake8 travis infrastructure * Import all dependencies * White space / consistent usage of spaces / indentation of 4 fixes * Remove outdated script- Update to version 20171019.be5b3ec: * devel-project: utilize get_request_list(withfullhistory) param provided by osc 0.160.0.- Update to version 20171018.44e44a6: * Python 2.6+ / 3.x style except clauses * osclib/request_splitter: provide splitter-special-packages config variable. * osclib/request_splitter: reduce default list of special packages. * Rename checknewer to checknewer.py and fix Flake8 fallout- Update to version 20171017.53f281e: * osc-staging: select -i: include remaining requests in comment. * osc-staging: select -i: s/merged/mergeable/ in stat comment.- Update to version 20171017.1168d47: * Fix undefined variables 'release'- Update to version 20171017.7058f07: * check_source: decline the delete request if duplicated- Update to version 20171013.406f870: * pkglistgen: initial work for openSUSE * pkglistgen: make --repositories option use an array * pkglistgen: add --ignore-unresolvable and --ignore-recommends options- Update to version 20171013.b00a8f5: * osclib/stagingapi: get_staging_projects(): provide include_dvd option. * check_source: print message if checking devel project. * check_source: move all relevant flags to config to work properly without flags. * ttm: update for Leap 15.0 * osclib: provide ConfigCommand and expose via osc-staging. * repo_checker: utilize staging configuration for whitelist additions. * repo_checker: filter empty whitelist entries. * osclib/stagingapi: set_prj_pseudometa(): only change if different. * osclib/freeze: clear staging config during freeze as well.- Update to version 20171010.a2ba667: * dist: provide check-source subpackage.- Update to version 20171010.73cec11: * dist: provide maintenance subpackage.- Update to version 20171010.3ed4156: * dist: rework totest-manager subpackage to provide new style service. * dist/spec: add python-openqa_client as Requires for totest-manager. * dist/spec: totest-manager: reword to avoid dollar sign.- Update to version 20171010.f50ea95: * dist: provide leaper services and related configuration.- Update to version 20171010.de533a2: * dist: provide staging-bot subpackage for related services. * dist/spec: include project_only repo-checker service in pre/post. * dist: provide staging-bot-devel-list service (changed from leaper). * dist: include suppkg_rebuild in staging-bot subpackage. * dist: include supersede service in staging-bot subpackage.- Update to version 20171010.02e5000: * staging: add exceptions for new 000* product files- Update to version 20171009.afbe149: * check_source: Ensure the source and destination package name matches- Update to version 20171006.e1c7377: * dist/ci/deploy: handle expanded links during target project loookup.- Update to version 20171006.4b7fb2f: * dist/ci/deploy: wait for service to complete before create submit request. * dist/ci/deploy: automatically detect target project and package. * dist/ci/deploy: pipe `osc sr --diff` to cat to ensure same behavior manually run.- Update to version 20171006.49fa091: * travis: include OBS_TARGET_PROJECT env variable during deploy script.- Update to version 20171006.e6d2ffc: * dist/ci/deploy: create submit request if none currently exists.- Update to version 20171006.e8e1a3d: * Initial metrics ingestion, processing, write to influxdb, and grafana dashboards. * docs/metrics.md: initial documentation of metrics workflow. * dist/spec: create metrics sub-package.- Update to version 20171006.9621116: * check_source: drop unnecessary dest from add_option(). * check_source: drop inaccurate "with > 8 diff" from --review-team option. * check_source: interpret "None" as python None for review-team and repo-checker. * check_source: lookup staging group using StagingAPI rather than flag.- Update to version 20171006.b325f15: * dist: provide repo-checker sub-package with binary in path, service, and user. * repo_checker: project_only(): correct result_comment() usage. * dist/spec: include perl script requirements.- Update to version 20171006.b129a13: * ReviewBot: comment_write(): add info_extra parameter. * ReviewBot: comment_write(): add overview documentation. * ReviewBot: comment_write(): pre-truncate for correct comparison. * ReviewBot: comment_write() no need to str() since None is exits above.- Update to version 20171006.a63d00c: * leaper: ignore 404- Update to version 20171004.d163170: * maintbot: no maintainer review for SLE15 submissions * compare_pkglist: up to Leap 15.0 and SLE15- Update to version 20171002.0087bc6: * Initial version of pkglistgen * Handle groups files also * Exclude missing packages * Solve based on explicit package list * Implement extra and discard * Solve more groups * Add options for input and output directories * Warn about supplements * Add all devel packages * Write unsorted packages * Don't abort on unresolvable * Catch missing arch specific packages * Always output all archs - even if empty * Remove duplicated packages during merge and autopep * Support silents * Use project instead of FACTORY * Solve the packages one by one instead of a group * Output devel packages per module * Generic OUTPUT handling * Generate errors into group comments * Generate development packages into group comments * Generate recommends (requires new python-solv) * Lock all binaries duplicated between repos - the first one wins- Update to version 20171002.655a959: * conf: given default value to main_repo- Update to version 20171002.167e744: * conf: given default value to delreq_review- Update to version 20171002.a306181: * virtually accept: virtually accept the delete request * tests: fix testsuite for virtually accept- Update to version 20170928.3bbeacd: * adi_command: do not checking adi staging status if there is no selected_requests * Include CLEANUP => 1 during temp directory creation in perl scripts.- Update to version 20170920.4011159: * osclib/stagingapi: accept_status_comment(): avoid making comments for empty projects. * osclib/adi: include force=True when invoking delete_project().- Update to version 20170920.0167a82: * totest-manager: Adapt zSystems to new productbuilder- Update to version 20170918.035c367: * Disable ppc64le for now in Tumbleweed stagings- Update to version 20170916.af9750d: * rm_from_prj: always use the origin project path to set_review()- Update to version 20170915.6b1fad5: * stagingapi: refactor get_sub_packages() to support adi package * stagingapi: rm_from_prj() remove the main package in the last * stagingapi: submit_to_prj() create sub-package for adi request- Update to version 20170913.92a3a28: * osclib/list: only present submit and delete requests in main list. * osclib/list: rework change_devel_requests to include set_bugowner. * osclib/request_finder: restrict to submit and delete request types.- Update to version 20170911.3c1a264: * suppkg_rebuild: VMInstall is also valid on build service- Update to version 20170911.2c899cf: * Remove local config for sle15 - it's remote- Update to version 20170908.4077149: * Generate minimals with set compression- Update to version 20170907.ca3c504: * [openqa-maintenance bot] fix accidentaly removed wrong line * stagingapi: carry over build state during supersede. * leaper: fix iterating through list- Update to version 20170905.bd162b9: * Schedule incidents earlier * Only schedule one setting per target for now * add ltss * Add comment * Refresh incident comment * one more * Activate sp3 * Fix variable name * Clone flavors * move the test loop into review * Do not schedule incidents twice * Skip kgraft target * move variable * Fix comments * Fix duplicated posts * Convert MINIMALS to set type * Remove usage of temporary files- Update to version 20170904.2bbaa62: * totest-manager: Prevent old tests in same build blocking release with "latest=1"- Update to version 20170904.c261049: * freeze_command: update product version for openSUSE only- Update to version 20170902.bedca4c: * osclib/request_splitter: for SLE, fallback to openSUSE:Factory devel projects. * osclib/list: remove SUSE:SLE from hide_source now that devel groupings are used. * osclib/list: strip openSUSE.org: prefix from source projects to reduce verbosity. * Do not use direct flag for images * dist/package/spec: include version on osc Requires.- Update to version 20170901.7c18d96: * Fix typo in bootstrap- Update to version 20170831.b6c17fe: * osclib/stagingapi: lazy-load nocleanup-packages to allow for placement in remote config.- Update to version 20170831.819da53: * ReviewBot: downgrade message about skipping duplicate review to debug. * ReviewBot: comment_write(): skip posting empty comments extracted from handler. * repo_checker: rename package-whitelist to binary-whitelist to be more accurate.- Update to version 20170831.266f398: * travis: install libxml2-utils which provides xmllint.- Update to version 20170830.68da325: * osclib/stagingapi: create_adi_project(): add :Staging passthru project.- Update to version 20170829.ddb1395: * leaper: fix syntax error * leaper: avoid comments about unhandled request types- Update to version 20170829.7357c5f: * SUSE: wants to build test dvds on 'local' workers- Update to version 20170829.73b803a: * osclib/conf: do not disable remote config for SLE-15.- Update to version 20170828.ed70089: * totest-manager: follow another live media setup change (no multibuild)- Update to version 20170825.ca2db71: * totest-manager: do not attempt to put/post in --dry mode * totest-manager: Follow changes in Tumbleweed for the new live image setup- Update to version 20170825.4ea3820: * dist/package/spec: utilzie %osc_plugin_dir provided by osc post sr#512849.- Update to version 20170825.1d5c197: * stagingapi: Fix typo in _frozenlinks- Update to version 20170825.a2eb80c: * accept: call accept_other_new() for all projects instead of just openSUSE.- Update to version 20170824.bf5ae3d: * repo_checker: only bother to parse if --post-comments. * repo_checker: move result_comment() headers into respective check methods. * repo_checker.pl: support multiple directories to check. * repo_checker: replace separate ignore methods with new algorithm. * osclib/conf: set staging-dvd-archs to empty for SUSE:* projects. * stagingapi: provide staging_walk() to cleanly handle :DVD subproject. * core: add memoize(session=True) to package_binary_list(). * repo_checker: rework to handle multiple stagings per group (ie :DVD). * cycle: cycles() rename group parameter to staging to better reflect usage.- Update to version 20170824.2aae21d: * repo_checker: delete: explicitly indicate build requirement.- Update to version 20170824.a0a461f: * repo_checker: delete: do not decline instead ignore.- Update to version 20170824.c0ede24: * ReviewBot: comment_write(): place debug_key at the end for consistency. * ReviewBot: comment_write(): pull dryrun protected bit out individually. * ReviewBot: comment_write(): provide only_replace option. * repo_checker: post passed comment only if previous failed comment. * commentapi: provide truncate() and apply during add_comment(). * repo_checker: package_comments(): drop truncation in favor of commentapi. * cycle: remove ugly ignore code from _get_builddepinfo_graph(). * repo_checker.pl: ensure that parser does not bleed over to other sections. * repo_checker: use
 instead of ``` to avoid html entity escaping.- Update to version 20170824.8338287:
  * ReviewBot: simplify logger format.- Update to version 20170824.7bbd005:
  * Use configured staging group for adi- Update to version 20170824.adeb4c4:
  * Freeze Cmd: Implement freezing adi staging project- Update to version 20170823.7502d6a:
  * stagingapi: avoid making an empty package-diff comment.- Update to version 20170822.55aeefa:
  * check_source: remove DIFFCOUNT algorithm and instead always add review_team.
  * check_source: rename perl and asciidoc to match name.- Update to version 20170822.2873a27:
  * core.owner_fallback(): check if startswith() instead of equal.- Update to version 20170822.09b046f:
  * ReviewBot: get_devel_project(): correct error handling to only allow 404.
  * ReviewBot: add_review(): remove left-over print() line.- Update to version 20170822.9bd2789:
  * stagingapi: Ensure the links is valid before processing
  * Add amarok to test-2 DVD
  * Remove sw_management_kde pattern from test-2 DVD- Update to version 20170818.f230438:
  * dist/ci/Dockerfile: include `dup` before `in` to handle major base changes.- Update to version 20170818.bf1662b:
  * ReviewBot: add_review(): raise exception instead of returning boolean.
  * ReviewBot: add_review(): provide allow_duplicate parameter and default of False.- Update to version 20170818.54fcc90:
  * FccSubmitter: drop add_review() since never used and handled by other bots.
  * repo_checker: ignore non-existant binaries during lookup.- Update to version 20170818.52cce8d:
  * switch to php7 in staging project
  * totest-manager: update Kubic name to openSUSE-Tumbleweed-Kubic
  * Staging DVDs: add x86 pattern to the media
  * suppkg_rebuild: Clean up supportpkg list also- Update to version 20170814.8711b45:
  * check_source: change repo_checker default to new OBS username.- Update to version 20170811.1cefbfc:
  * update-crawler: handle devel projects- Update to version 20170808.c994bc8:
  * update crawler: latest_packages across instances- Update to version 20170807.a64d27c:
  * Catch more errors, fixes
  * Fix biarch logic to make --force work
  * Update blacklist and whiteliste
  * Don't use product filter by default
  * Add libjpeg62-turbo to whitelist
  * add openSUSE-EULAs to blacklist
  * warn about linked packages
  * Remove leftover debug statements
  * Refactor getting file list
  * Speed up duplicate binaries check- Update to version 20170807.2c08e40:
  * The first steps toward sle15 :)- Update to version 20170804.072d1eb:
  * ReviewBot: comment_write(): support package.
  * osclib/core: provide BINARY_REGEX named group pattern and utilize.
  * osclib/core: add package to BinaryParsed tuple.
  * osclib/core: provide package_binary_list() to efficiently obtain binary to package map.
  * repo_checker: package_whitelist() does not need to support group splitting to find product.
  * repo_checker: provide optional parsing of install check output and mapping to package.
  * repo_checker: provide --post-comments option on project_only subcommand.
  * repo_checker: truncate long messages to avoid crashing OBS.
  * ReviewBot: comment_write(): include target in debug message when too similar.- Update to version 20170802.cdde2bf:
  * repo_checker: add whitelist for adoption phase.
  * osclib/cycle: remove extra leading slash.
  * repo_checker: point to repo_checker file instead of old installcheck in project comment.- Update to version 20170802.99df9c5:
  * leaper: transition from SLE-12-SP3 and Leap:42.3 to SLE-15 and Leap:15.0.- Update to version 20170731.ad89a77:
  * dist/ci/Dockerfile: drop hard-coded mirror now that Tumbleweed issues resolved.- Update to version 20170731.a5e3143:
  * repo-checker.pl: replace [^-]* with [^-]+ as it is more accurate.
  * repo-checker.pl: drop old debug lines.
  * Rename repo-checker.pl to repo_checker.pl to be consistent.
  * repo_checker.pl: switch from multi-line regex to single line and full.
  * repo_checker.pl: s/INSTALL/CONFLICTS/ for file pointer for more clarity.
  * repo_checker.pl: rework installcheck parsing like fileconflicts to resolve bugs.- Update to version 20170728.1ecdcfd:
  * check_source: add devel review for delete request using MaintenanceChecker logic.
  * stagingapi: provide dashboard_content_{load,save,ensure}() and utilize.
  * repo_checker.pl: allow empty $repodir allowing just a project-wide check.
  * repo_checker: provide project_only subcommand to write result to installcheck.- Update to version 20170728.03ba255:
  * Factory test dvd: upgrade to postgresql96- Update to version 20170726.b7cff32:
  * osc-cycle: ignore invalid packages- Update to version 20170724.4d5ba92:
  * openqa-maintenance: update data for schedule 12sp3 jobs- Update to version 20170719.e4c11a6:
  * dist/ci/Dockerfile: add obs-service-set_version based on changes made for Factory.- Update to version 20170719.00c88d1:
  * ReviewBot: provide staging_api() from repo_checker.
  * check_source: utilize project config to allow for remote entries.
  * cache: unquote() all URLs before processing to ensure correctness.- Update to version 20170719.0a0bec5:
  * devel-project: get(): utilize osc.core.search() and improve xpath loop.
  * devel-project: provide maintainer command to check for relevant groups.- Change set_version service to be disabled instead of buildtime.
  The change will appease the source check for Factory.- Update to version 20170717.ce00330:
  * dist/spec: add missing osc requires.
  * dist/spec: include %defattr on all %files entries.
  * travis: include OBS_EMAIL environment variable when deploying.
  * dist/spec: utilize obs_scm renaming which properly includes version in source.
  * travis: target proper home in openSUSE:Tools for deployment.
  * dist/ci/Dockerfile: include obs-service-{download_files,format_spec_file} for deployment.
  * dist/ci/deploy.obs.sh: include apiurl in general so email is used during service run.- Update to version 20170713.262d988:
  * Makefile & disc/spec: include version in installed osc-staging plugin.
  * travis: include list email address in changes entry during deployment.- Change _service to rename in obs_scm instead of tar which handles
  rename properly.
- Correct previous change entries email address.- Update to version 20170713.0a84043:
  * dist/ci/deploy.obs.sh: remove previous source.- Update to version 20170713.bc8cb75:
  * travis: add deployment to OBS package on master branch commit.- Initial package.openSUSE-release-tools-totest-managerlamb04 1555483169	

 =>?@ABCDEFGHOPQRS^_`ad
20190413.989fecad-lp151.1.1openSUSE-release-toolsosrt-biarchtoolosrt-bs_mirrorfullosrt-bugownerosrt-build-fail-reminderosrt-check_source_in_factoryosrt-check_tags_in_requestsosrt-checknewerosrt-compare_pkglistosrt-deptoolosrt-fcc_submitterosrt-findfileconflictsosrt-issue-diffosrt-k8s-secretosrt-legal-autoosrt-obs_cloneosrt-openqa-maintenanceosrt-rebuildpacsosrt-requestfinderosrt-staging-installcheckosrt-statusosrt-sync-rebuildosrt-totest-managerosrt-unmaintainedopenSUSE-release-toolsREADME.mdopenSUSE-release-toolsCreatePackageDescr.pmPubSubConsumer.pyReviewBot.pyToolBase.pybiarchtool.pybs_copyBSHTTP.pmBSRPC.pmBSSSL.pmBSUtil.pmBSXML.pmXMLStructured.pmbs_mirrorfullbugowner.pybuild-fail-reminder.pycheck_source_in_factory.pycheck_tags_in_requests.pychecknewer.pycompare_pkglist.pydeptool.pyfcc_submitter.pyfindfileconflictsissue-diff.pyk8s-secret.pylegal-auto.pyobs_clone.pyobs_operator.pyopenqa-maintenance.pyrebuildpacs.plrequestfinder.pystaging-installcheck.pystaging-report.pystatus.pysync-rebuild.pytotest-manager.pyunmaintained.py/etc//usr/bin//usr/share/doc/packages//usr/share/doc/packages/openSUSE-release-tools//usr/share//usr/share/openSUSE-release-tools//usr/share/openSUSE-release-tools/bs_copy//usr/share/openSUSE-release-tools/bs_copy/XML/-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.opensuse.org/openSUSE:Leap:15.1/standard/241499c97a1ec5f549d8cb3de82c9a5e-openSUSE-release-toolscpioxz5noarch-suse-linuxdirectoryASCII textPerl5 module source textPython script, ASCII text executablePerl script text executablePython script, ASCII text executable, with very long lines	

RRRRRRRRRRRRRRRRRRRRRRRRRRR.t5
Ŝ%
4utf-88e0837dd49a53841f599bc7633db936e96cadbd012d24d330bb7facc72262f49?7zXZ
!t/Y]
crt:bLLLcd4Na'$|-Ǔݱ,0	$83U1ԍDT?{֜x/=xKDLc%FL`uVjҙƝOv*M@!uSu!Pp+p7c4dfFٛ
ˇQA¡[>LmFb|I>F7/s,Kܞ][Q;qoEEdU\3*xI:A@07
Q!7=aL-y|.+d0B,-0E\;yZ:"!TW~sr5(/Q	h'mv's;yLD-ٲ,A-Ɣm!uŤ>h^2KÈ P..`YTEB #)uGZ_`	H_#n@u⻦iR)4ɂڊv_Ki?TWr+9Yye8ʌyr
WGAg9LۄZϥU[ ׶|^z7#n7gK;7vo8}is
p q^Q .hF	T9kmq4%5ϸouhwX&V}cYDR_KjS~w2*l˨ĩH>_2XGj8G0a O=r{D;{4_}3Y6tCP)oKI(&Y|>ߛ:̖46=XHl9;Q?iOηᄕ:\>=Vb@wKm݈ƐeL1j+?.%}_
^?׈,	>qѲIqǸBx3B_]_J(j~E
&BԝIO@C8
υ0kuyt-&
IEGoo֯KleŋQHJ,"x
vjM|5jQL@,lҷ:J
=y>١C%-lD4'6W_%{O/hf+]	:/;"a[EL7oktPHRӚEaTDKdM$ΡĒRXv̈Rx¦*
cvW/muS	aʜ.ܐC;D0\q\nљ&-$`^цd2bGk5,a+y%,Pb@sxCTY{P>$(
M{ۀN֊Yjw]wEe۱/=A)p((&FM >6X͂ȍ]DɴqALvMlI眢h2_2`
j{.ԍkNyxOc|WM4'7iTx<:X=J*?
$$nT|vLb%x(|`	n ]\
V/ϚXKeLtrZBlrǷo[=#
E!F
c'+jLy̸Vɇ,:7]2wzQso
fOޟBZ puDqwTA9(1O)<]@ƥ䗲`V^`&x{iw9~Uzl̙Z=^a/~H21Ar_r/'Sos2+tArH5wVi	^LeHU*5kn,Aq4zO_[cIo]W`~T8g/	A,MW=W'bB[v,1sթ|H\M2TM؋Ɩ 8}\P~5]k2!P3	Ch__K8\oZLY$G]a%*XV MVu\g"?U֬DU b}J#ypfD	vD&Q	b,P5_{,VAHR
>^mBQ@41K&.H_.MIqw!\hҭAVeCSD0EetYe.0i(*I4~0Pӄs2oRN~|Uon]u'Ǩkz$;3AqO֒2\od3*pbS~ƥ.LEɀ
9ך"KNo}VL?m
3)c@{T$ꆋNyE.A]@`%ml4P$u^`r?ew[fhDCIoRfv	CjY"#mF\\=5L9lNlQt
/d䞌Iʮyd
 I:̼!"dDl1yQsrr/'8[z̢#E=m'&zu2!2d>֔~踶R+r]yd8p.S9:؄x/%W\_6l
bq\cr	gcdi'X+amԲ%@uU}0SִB)NX
:̙Gt\WcKq}\bKSt=7 a5SW\P~Wo*\u{^6	5?3XxO~];G7E|?%!R/֜;Il2騈gkhpM	S8u tp@w:~UqDs׸oƥڤ+1	C8Z 3Auc6943SYx3E{$3ܗ*֩vu -גMnbnSZo2exx̗少H5\l?c=h:`#QBB^;ۙcQj7o?m0jAL?R@Kkb_%ϳɷܪ_nJ
Ri
;I2w;q)NkOK'bd|z,~7)!_,YR9nGL6g-h:{"OaٰEmj}o^2hC2$4b@7y6yJ{MKŕRN˙;U]+Za{UL/REShأMKh㯶c
Ȕ|Ұ%5BZe20ؼ7)E]Jn\h$)ԪQ텟Z}̞DUcC%6e6+ǶMU7^|?5&Voůiפig$=BUT569	%ZjEKBK8V"7묯NpID;/hUJva<&}ƜTBz=
NF(m`ccKx>dJ5sZԎiĥ10Telb;̅'\i)}"#M"j=];[4^txGksIUX	b!bL(
"k?`s`/5Z*D(\N~:CXGt	.V\xjseiȀĀ5{.6

0*|WՁeY	]nbr(V2`k>Ph/HwXj4ѱ-fJP@.+.}|95F7M5%2WK=mQu
}aQJ;Eb24ݸf"c]eVhP*VG(J
YW`D8H˅~xCMn#;2.iRcT|'m->&E@FaNiqO'm7G#unF!VW
0KӄNz+*pB}ZaQE?+0(/ˁnYyGB-Ƨ~P2c:7D	.Yhp9T\G5VEVojMt|{@7HA?ٻbۅmˠX5JyұXi	\ED~(gcEns)s;S{}$)p LqAJLPJjEl&ѫկp4]H̳moinʞ]׌5yzg3!qCy`a1ɬyɰ{		I)c`inAiO]@P%LByZ{x3xŬ%9(S2cG<}_!Kһ46%f>S=~\
m.2KXJ(LS(Ն"'SAX[=@݉9dcug ɱɕ,+^+mJE.38E+ZVd"\lD%@y4~;{ge+5i*K*?GE_v̶2Y*,6d6{ͺڞ۔$7z	qo8zjS,mc|^ěJ3@Y|ϥQabGFc'yA_]mxlcn_^Q#nW5mE[fsҦӴ`Þd,GbJxؠ8Ϻ+CٓX3FHxLĐeTeuDUۭ;]+|@Ax*l
@,o>Y/3,s>=|>&!bzB 0;I	tς-ZP.ǐ^pC12Nqe0l'hpnZ.oZQ /S"ń3&,~Cvs6A5L1ռڂݍwS'_;^?PM>B̌@m25|Sf6~Э{[n-`-R5#}3i6${0_HT\%%jyKf2LPڄh1!OD#	?7=FW\(pMBrNhLk0),*Ny&5!3bO?5?a(b/\%`lb%FŬo/Vr5xFQְSk*Hs˻lN\ߗ{p~5f:6&w7|S6=G4 Q8WZނH/
ހ
p‹&O|֎,
)"9z#3	
Aj2EY$0Xm5W´
@R$|r	w_,D@4	u}ydC#-׊ "Yz1_[e	#4q 	U"~riYҭ @h:?$o"}SG<ݜ<vׄVXݺV9q{a)^s3ݓ݋Kj,[SjccҫP%m7Xĥ=Uԯf:=lvi]֢5)qVKChC:L^%z;k7]zceҋ;5s}yf!tǨDRwbd Ռ%EE6LvR䥽b=84J->
[*a7 dTr&J6X/)/ i'vIJZ_;xILR>bvE۟<]Q;?NtX!Nm˭:v=
9ƒ5G2Y
ُ4ԁ0=D.j-ޔWĺ&J
vC4u"=	̓^ׅ4*``VrYZ(#}PgՠK
r
1Kz{j'/luIm2/T"iO}D-Ut̽5L8+jahFwbvC	LjU/WȀDN^KxfVwn&]XJ`~
"gjrg]5fZ}KXyH&@Eȇa*̓x!l8'O)5F+mw3޲(ԐڲR9gO9MaHjwz`WSl5M&cHA6L,|v|6%O=`^Q( >@`V1/xB&7gda;7S߻wvxA5ڃ
3
܎ʷ143OVcʤR~ReŔCgLmqnsեOEjY?+=$mxH3$\	0X.LzKGR៏)*NF8.8[@|on8#
yo8Ѣ>-;8_H*0\~OubTf0j7Y*P 6+LJ`y"k~&j
`kӐů㸡I?i_Hx5ʹ^}q|- Yc՞KS(GR֘~Sf)/!\\mW*:DMv(Lu^;[oFO^,,	.qK.0(W|8wrQSӬǫz M&Fgq<CuVG/'6:92?gLNM6uX&3O˒0tQB +Tx{'۳*Tq.Dް#eeuteP/E~db	Sガ¹L@}tB24m/>$z7%<-p${a#_)jc)"tvhBuYFL3&1
][ٕVNv3uл,@YհU=|XAL+
(}G>%HHcL%=	7:F*g
dY^^/7-;%׆3dߕ:Di)ÔiQ!0PiA,Eަk*Acddwdqvm(
˼66e3 $sCUy:Eoo: tPRkXp Qj8!,^U&}Yͫ2U@
"eGaRn]%C_*1zpl]quI8tPFVO)(΍j{n@{XPmSyB;I]yhj\^YYneP&s<&;YkroՍ#PLoxMQ8DE9bAJ1S0!Aò
UzjL%/K'i}^B98ݨ/
ͤ+P
?
2VFo~JJ9yA4a}Epb2y{dUQm2
YŞ}n fT'lmuh`,m]#(Dը
iЦvU:itv%XwVZzC&5ZPHs1UaFpۓ٧/5.6	ĭ88M׀qc!0)!p8A*MI4F/aWR
rEc17>;M&(r1!M&žV|}ÚIҟ=
]r3KfA_MچdT.T#>SnG;P@Y1%4p.$:MZu&RocG&\WpVkFaO$rH[8R89Nhc2Ys,|1Soi}p>g xMVd$mG:(FO?5/hi0לz!-kh݅f!+M`G?=*qqoog.	eW.QۣXٷ2m)ey1Zo5vDS`bnT1V=g/Z
|fo|فjjb-/uoP/5
*7#BM!*CT?19ϷaG+Du',+
)T2%e=kr枋	\+ʙC"'Gq79
s
R<[?*W/\B6XasWVthr5VQG-S6jgC@=*	/潉2ޮ֋AhClֳPF;s(`$D}
wpHDwq"SPA|,翧Yǒ2qOk\DUZ3%|ItU3>b$MI~}2*ϲy"@fg$E}۲
tFԘY-X~X m|A"b5b\iKԪ oy9jTF
r1]Q=?GAf=VyyqGE_]jޓɜwPA81ln]cF4a>XcYNn̖~S*@TdUT?T?ʥ8
葥mkU[zcer9qLÂ(*qS+LଵT)Uѯeʒ2ɰf^	m5=ZӺ}`ƩNe{d6O*iz	Ra^AF$Y?M~5J$xTDM(O`/_̼,F;oui
)/w5ԕ6^ExeIX)wNo~ҸXӡ@j)|o'8HupVM//e E/l/fpJ'bΏ 1gaPraF-#W:Lz oH(#5ꃩ=*CxP:,vqeXÈ"`'D}	p
oʣO55ьX+5Ci(	"+G_VfG-M`MX|dJmmHWyhy ~_
EaR;0WʁF4b3%A23 2y<7d|+Q	ʊFßj߷&;B؞W͎ǗSMU^װGvJsޯMV}Vb!8ԫ^>V؄etߴMMse,Ŧ!n4bM$Б7%>lyZUyJ&gu}U>d8̻ymk*I1L8m8Tݻ2_ƚ/Z~E$} C6/lThx	$	ߓǍD v787Y	(tu龠;CtyW`f9;N~'RȤખ)KR@,V:^n,
J.!ɯYM-qL6c;EY#}3F1A?
nxK(t\y/vJ22,r#Ž
h^:*s^B-d)f%.\3mI0G˨_CWuXpf 'OYFׄ_P`ٰ@qOk=-S<i |\#{I&AҖIAQPQCYFKj,]XP}DWL1[ Ћ0K-y-1wTacef~SO$0pG?&+7OD)쎔~/Z[(Y7}g2U2
:twE2"djQAZ<JfiEό[M'6}Wnw]5Cfl?~ϒr(h⢍bϪ?	8u`OUwoKbCmeT+!.5gĚ
Fw-4;q'[@~Ӽ*}?=uWZS#*h-*eT!͞<R(NM"vmeͳFWUD!Kx]oh'kro
^-綩֮vlU- H'N~k-Wՠlaڝ
#d/>t)uh<BooBS&Ker:X&ee񾺟_'.DFFbSl"[P?qd4ӫσ[j6,ȩ>2<<ʹ%nfGÌ>__[j
@*{[]`硢W$zw`hvB@HUVI>AxIuʲT=*^~l=k(8t]G'>19ojEZs,j3a90y)E,wX(j<[5(K+ɏ~-AWl02W[vʠDaӣR͆hPQFURDW*,ZS9^qIō'lxgZ^
4̨7Bӆ͡=0aH(/{eqO7DhzV6tDMfp}3}hgwlHʁꈃϬ
TuT!,9ݤghif%PLjp'_XlKn%g&
O6ꋌ~^Y.ihTEhUG0^GcLakl_T2K7*q¡F҅޵MtGR"ѓwYYٮU9.)C[Uni!-ݐ8	XP-]3"Z@U`#&
<HLvf@./?sǼkb0TϢj7ؗ뾴{(_4ipI1
Y](0[
sm%ll|u)<ߑ-0r=P5_~N4|^cI&2sm`T<#%V)<1:K kH&^.'*I!;TEމjveEvfKHܔMsΟbd=C|oYNR|mq7(9Oc_UVd
63	۵#AGB^%/ܐX
{M'UfƂwFCC.ĤaE2ViS[@s(&7_:A4TwB~sTfMrhs8!|N9gbe_rIN#PvU2'†vu|4GE2ToP6KhҝꛅJ+V=q9"CtJ6@ŤT&-tŀ]\_2pe}rZ,z#$/0$ECCy~;Kff젉#xNֲhydfpln/EOEzWeN>߈N/'?=L3	(q{8aQMj9Dg'Q1Nƅ-izLf>TaAcSe.Egj6AJ'vRG0hlh;Gv%wGJiP}}eH X.,WZvCɄSzT?FOI<]!6mD665R|@FbAutר:F⃷	\XF@W=4_Z	[L~؄&c#
x+h=6x0ݛl߼Z6+J?d6+It׀!|<`Z@d^S9w*q̃X7a\lg_.gai'WStE丆m
7ʀNEV@S<#%+&4
`_ݺQ?׳wHPwuJ3%v(>8wf$jq>n!n^U.4,\ץƖ:1`иV7i$Y;G9<*d^P$$F[
uUF)$/Qf@3qF޺=3`ZI{m[.79e`_aFYot|8@38>E<Ч6lqghXd2
_@po{Սv<(Y{a+ۭ`wᄊTAgE'Dw9]G"oUh`?0W
ؕDq$݇dv
PVNmm*ɦ9r&;-EPյEco/{Vlz%P&)3NNؔh*k<FH'0pD1[FUȤ%@lK<u}fߧe˝P]EF سt5_D;;AL\\s7V͓ey8K4d#ģ>!ͦ7Xs-nںnQ/gпܚ(GaPB{7c]\j^La}YnE8#`CۥZF
8Oy=8l{B"FyZȫʹ/2_TF4]uO1(1>d<ԓX);ӏwzN$]%+v'}sCW{
Mc{HUI>9dnx|
k-ei4O]>,EzYwf*TI芯ȫ3^2U'-d-/IV._c/޲}4=(_d<3,0Q)j3 W{|x*,uiBFfZ(XNwJpI{܌HdE ʍ+fpWGYitGu9׺nQT~MMx>>ўrQ r=$ߺou/KvXߑ1.zkׇY#Hz|jRhFoSl/5YbՒa4|A7SQf?WV<ՠTjY"{ӑ2\ԭ.
$cҮ{t&C45a'aha֤WkA"n$5kLZ0P5@ItG"1}0iaA ?CZ/qbRLaLA
e!)Y/xp_yh$ ։tp|wq`ĭ_.f?y)%|{Lhd=
ߧ.ʥ UwIcu#hW=nAP`(Wf緊y~XjB彖DSJ~|x/юnsl!`% ]n}F
2K$pBT?V;a⪶;	/bYH0B3Vnbc:m2nq^<G|3/IKn^%Vry3қ|
g r\	1@~aRQĩr,euÿםuwaQĂ荫Z"IN-
_!Eҁ(!X+b8N@l<vEI0o=*o*JXZ2yk
cܘ'? 1ҵ)-BfPfnB" An2e=7IoJq2Z}Ȝl;gB^h嵺\XcM
лla!UC5Wn*#3%cqB2qLGprOwA7sŞA|EypɕΘ5%~R֗/!70Q[
0sMKqh% LVkBB)*(VU
ʱxHP\
zr^$F*1Tp>#<:Fݝ[Rg9b08)s8Kz^](Qtښ_OVC|o6`Z?-f/sBsa6Gchkp KqRQCs'h)H2+%
,}	/9$jm`ilC}#D^NSW>9X-@_yi[dxhE?o.r8$vSHcx6OX93ʺ-U4|Lo1֦~oRq)PPj,9,oP*Q	6elK*=åiOӓ5GVKY?8
'MJ8XLlRe axIR@J1a,HJ$A㞪b_
Vpw:D be~MQnav)N.Ύne󸷏_AI4G. RA9}JgN7TUGK'FNUGt!Li冦M{th(?>sQ|+4#	]Ԑ$)G\y!D}cZ[sǴ]p'YhBGFQβ_ ̮~=1PH+e#@.$Gヹe/
avlO:X	[
n):p쟝`XP%w
tzا^5љFk5(Jw|oTdzXԻn izX>aL?`/hw
I0hi>2_`Uߏ)b~M!&$nA؊sN+9aB&Ouk7(,Ly7ܛs؁Е.`W+k NI}qaOCY$*rǥ]pd s_c7?1niw[Vinc׃u@9	,Y@5ndZbk
z ,25v[y|Zٺ?!˷hh1`&k;QEejka0m?)j';
4Qz-yT|vvRN/O^DYI;	ͳ_K=ܩêQ3bLXfьWHzu\tYf6y@ǷxgVD[,+Ǚw5u^Rg3MɬV¢]63X}hk]
s|DઍѓN6ۤQÃOz*T{D~wm 9P$Q{];C}0c!JQ#޾I"|5!gYQ~J[[4=6U{{-ʫRF/3E|=Ekm͊5?\W)4.a䑔;0~Vu#%8f*{x8q"q
+\*②Pf?a{6 -Y
zbL_mU~9*"AeYvZ6>S(q:s
χ!kIdSQq MC47WYQ#g޿s[kI~݀roD3cuW:abhwFV}l	QѦŭCy_i7t[,+Lvo'hjdۓ|*9eWZj6}+_IX[ 6{bVRȈQ
H:PSξ1՚s
z虺pu牝r86
#1L=WrWdU=UT~5-Y4>xW:)cw]91|Ǧ*b?j3NEJ.=_`a&LذNA>lpJBQ똆gvI`/F
MlKCPA8B\w}TOagl|ӑ?yh^
pՇ6vn"zhHuqxKd~(;\)İu*rf5#Nijb։tc'06ԴM`c<4G57;y\/ӥn#AS[`k$ZQ8ѫ˸E!yg2ڕ`u jKi΢r`Y?#.eoW/!?=tN
&(;FeV_r4zys*^Mu=qk[A1U >V,
a(tJ&v3Y%O7Uhu'@[n5iߠ.[Kk1`RWbe=H]׸\_h[d37˱ez`:Nnyj9ʟ<Y;zo(.̴P! %ϛYd.6!(
8ktTkmK&Eȷ'ZYG><_O>VScN$8鋧{jni)MoSf2N!9pO.tOO;8RpX4jojɘLEKbVG~Cu+uVA!jJ-cgD'~Gϗ(1:@_w^M/<ڝ|Ç*lN.Z5O^M'q&c#a]MdK4
tE[,rI2ES/!Tg>7:\$z6ԫ%wmP"&|Y<2GUtÉӾՈΦHS;UJX;(
F>9QU=IHNL[nG7+I4қ>_b d"H֊R3\gn32`H0Lڱ1_>J
D?@M?xOJy=lronCٵ2uIئ:Խ4\I2%MO`WwץkhH|p;êG2dK^	m $-hr''jv)qBػy㋪k4Vy"F1p˝rʛNYHH#pP
olm#'l6*|pev5$^mS~q>0F]Wh"[n=Cox5?vYM+A@;Tlt
Q)Gu*,
΢Ch0q`[4(ߝ3<dd?&Y8(a!@JLV9KKGKe4gLejE``9"-lm+@5GltBbnSvY޳Wļk͌۶TxYO8a#ЖJ)Y)c.c2uE('dQk]:ݑ[aOal%cIX8
H.[εCobzY?OҜFY7Hh,ٸ̙o[A~3pZֿ*r=~y	
^sw,3T]۪hNN(*o8OPoKH%cLUf
?
~$(L)PX4wF`}q:/A|&+,dҗI/ktp@ebzBm1DWckOT.g*3@_'Sc5!U"oR=]݌4r[0!R*E7&`5uu7{KqK~Dq25<*Jv].scR CktGQAJQI[dmGNyjEz-t|<߇hWѡok͍&5C:i=>IRu?}U׍6<1l?H!cg#(gz(Z֢93ۏ웗ldKp.d}8\2>3AÀNanЪ*VNa53ʘZ.%,;{i
M'D#Yc>(ww	g쀽=p^쩡hn'8	?-@Chps35fgNiLDR~J-@2C]C`ҮWğA2D9	_䪦n}@])02,蓮\~@5љ W=8wы!rNעs쯓dI}Vpix
1hAM[DI
ChY2f*y4Oj+&>{va	"M	iɧF9}LJuaxΝa=K&K nDZ)($ֲ5R	KVaڙ[ظ3?˯KW*XW)a܇dnؗg?)V}.Q#ҜػHX!Sv,K6$';Dܻ@I}>õ.C[N(;C"Aa?ۼ΢֚vWֆ8:]S}6_RJ8b*1/	2xƉaN~s+S@o0*	fFpI/{j]įEz|{
C~^'s
-ȍZf%'WA$NL}Gj=܎U@KWa8W"o?fR39"2y{ ~bWZq3ELRg	f_"#2e+k:9!!'Ƭ*DH~v?&-֡+sl6Ect%{|OtY#8)4YxBG=s$?VińbaY&
;g{s-u͕ProݵyV@6gQjZ֣VնKt*snhU9]IvB*O$`}$HM!xŎC"2_@ͣ!!ի./=Xq㡙`O)C_k]ˬSb4
fb'F Bh@xn!Nm)MvɡŐ?2ӄ[h09҈WQ/iݭ\A?2kWɽk"D9_q8xzG@Ⴢ(`\F)1uG5[jjf	HhxKnWO?0RCLPޫ(h0-ta
([HULho$
r*Z٠۰Ņ5R<@7X}%I׬DFV"D(NqV-#~B G\-ZWj:\k뻭$<|G۷k/qU_;ƨk
SxFѮ20;՜TĎ]}9yv)oCw'XHvG'@>޲jn<<فIbV#)+.;>zr9fRu6sD$-V&VgO@Un)9䋅k>V~5>`#Ė#3/SΎؖ>&"2
I?5%O
V0[^e/0ޣ}w=[<8W~L&f8=55omnbCr㱪U_?dHhp?SfJ8!xuuPf]@t߸ԞF0%/A-`ғ뀉bo;7gĉm)4^l񒕴7whZӕd+X>dzCbmBH%HQiȠQ[-qzodCUPT_8m\mZswRFМD/^	*Ɯ(U蓠|jyf:R VEmwo9wSC(gكyhS?a'74f1rWUU4nKZ<*
C;!8Ϡp23(R_b6W?8(כfG1o`8yfl]~4|χlu,U&V [4-}Y9nXɱq)23.KMb
\'{ew
Y+M	es+{-&Eī4#qqJ{1;YG5{P1K_G-9
v4D(/wla
 p۹=C=6эk!,?2[ˏR{io38oЄC4hR)LesJGkɔav%vAeSeC~v;:gjP<シboB菵NGFgqS\ѷ[Uz[11"h'NHmܛw`	GnRGi}J{EP3DMǣQSʷ"ALLc#'p?ߚܧN^0K.1x
Bߣ `ԹֱH]Rr=2ߤA(|0Ywjr{ny$ʠd^-EH[PAݢ&)r&o?8,ZHVfWAX
+8-`mYNQ6qd-UCTyoF#ТSzUrhw[EoUqpUu=E%OQиq}mO:8"daNZjNǿT*94eaƐWUXX^_tOc[-VŰYAnKNg(R	Y{NcZ46'l?h؎βR;/Ƙ(-g"-7E@+p'Əbn_s/l;a8BʫLњ1ձZѪ~=&:mo ͤQEkׇ
͑?6SyEm>+2X6$]=4uN۩;Sjܛ	)Z׻v|ڎEGa]WF2J Ils*Uµ~k,MǼ[ڷtB47g${ۍ3KQ3W-i ۡ*
_2ow޹z.Y}Ke\PEr3-EVW^U|J^/lL+`Ut7T1V\>N$$	_/b|/kI5@A/s&^W5R1|n`$RP-#Շ  ;/P\
'TjϨ竨1%1YCTtSnl2d6٨\h0EmBc#$̬;G,{vb**
N/t,UðSXC
#|K 7XnS	4g~O[6(Ju{@o2=ER%Iyo7XX5~v[œRAro~uN~=~@R2FrW1,y
&7',vTW!q[ ,qFfM#ؑDbqix(hUU&xe$~Yr6-/r>Cg?бq֞yv!6	=MdmNu=58#ߕE]V^5^{Wx֠?DS:]p^Od&kq@HwLiUZkf[W;-wtR;sh=_KEI-vyΞ4rߺ@(.	zAzސ6mYvxy(SE,&.c3>b*n
FM|N>DCL1)#U&^b7HyW4>	T/[#W. )4$I9d<	lqEmIQ+uJ'«[cڄqnEt^?aѣ!3ñ ǡ  {RDڙ#a}1sozP'#"nP$zQc
`W=4;R8~VIbʤo&ᦥYTeo@dBPm>M<	G3=VkYz	ܬ"缝m0--}zs9	H3|-IOEr-6X2#-gJM",3"y,EؓqHj :mfb/h_**٢0hnzè_i8
y
h]
#9IgmGk]428Nr֕l4ҩlDWz )pV5VOM!"TA13sԅz'Hw;p"٭q-2ZWV3&I| ;Y%;᱕z@^	R`c鞉DHZan{\ឞ/A
EꅹGw
rT2v=SIY7TQE1KcCPž {kیC@/LA@E,0aiYfgV ڊɇd~s9c{6U{N//2|hSZ'eq_/0[/mͮCJ &E>;\lU"mqK
MĦ=scC_2*;@w<Ȫۈg6tWoZmEAYRCou#լ61;|6n']	Er$	2q
0Qz_t~1@9],.s_ռ/9LiR"`ԭ*2;/scՉ=MhP1|FF炨~[+w`S[_@ס#~oOkCVe-D3׿DȨZ}ԃq>:O0+O)RbەCmGV?{\8j#24ur8Nt$f,8
ǓJ"@F)&bWl?]}H_I
P6砂5I{{emح'WꟗϖY
SG]s{R76RZkPrƈw'4{S.shǢOsJ>^= ܉_(鲠sl-WQA5/NT2Zh̿u5)f*B0S@RԿיHL;Չ厨GACI=)擣dъ1"^k!aҫ
s6,Pdi [hL+)_r?_0ϠE/%贂S}Zٚu^dށ9jr[މ}.b
žl#f%ɺl*J܇y! ?ڞO	~_F|dEu`ipٕRy/%7fMZGOR.Z(j	-wt
9̍pf.u՟`P2ҙPysuuGiZ$?B"|g4_[cI 
a9w6&Jg[vO<.)o!1jQ[t\褆423GgR-a?q
#AIUZ[HQdCP<2d[>{uM^G&~g!_j"bTGN24;ՖujP{#61+wzd;IYHYughEnؕ+fɰ=z=MP	)5gdb9PxuN[fiY[V1pz]/йݔ>b$'j`C6*
-WQ"V+)	&nv]ɮF:YԺAr=g^W/ތ?u&N܁?X֬:c$!C:&[{,;i6ZP~Zg1dH'R*5?`_6w-=bD-'RKm?eU}d%SmNE֫^ۋHn°J а9oOlR,ڔ!3a~vV%❄MH/!|&rfڑ@s|
:)1ķN6Zf1P9!x#(<Cvͻ
zcZjRB`';J7c)xT#i"hDeJVbtjEEw!&{Ê􌤆e}^F7]PPni?wV|vDwU="8%eD@R"]WпM\E8ZU~Yf LlXooF
U¿gi3Ndܶ>C!|\uHr&Lj~_HOIPZwz8
@!OiJ䂈BR޾_CuEëT[0f8M\Hc
KׅxEb齯"e}
87^?fl-dMI*[($E1@S;A-wڟh6L-Rz{4>#3!t!DE{L"a\cՅksAhFDs
 rxБETyLr(
)p#BG9կfVG&+8ml1Uu1%l1<颼y]4Iw$T5X઄7Td3%B:n~͇)jp<'	j2[GyAKZܪ^ (p7F*.c-N2#6YsgDYt4sI3%Cp2?yfZ*6|ϖrWglQEǔuckcIb7\2Jtt2x!{=4דQ(IU
TY:CԦݞ+Q"!7; U$c}G	N1Cik0kkD)*B[-xdSCI9Dtp#yޞCkR*[<@Kv[2):irR`m!Ǖ$)t%];5noL1jslx.Xa(ͪv3[N`YnOP]3$Kۜb`@6+|_w:=7UML7gqυ,#LqK7&Cq^Mz뚺(O>{0"fO`t~;_Ӎ
5ZJϡ/t JyK̵BA"tLXLpvB6mjlMD{$䊢k?1[u##k~[?M~8mMq9A,=˙M:G߳v	÷[uY&NnQR1~TsLhh?:Ǟ1:BktZ^lÂ^/\@4;D5˼\sbHxS^85jgL_uh_%~z~ydPyak}):,`#??Y8elجèA3t3qY ē#6%}fDj/":r7B2~2s|`nq(SOZT`KW<Z5JMb4%OAD.O֨o |RG{82"{MB()lq%4F@\G.3B,
NIzE5qexI
³30NQTV=E*Պu5X~ox-_'JOf87BߠS!b^7wUK{Xw4Qt
Vp+dFYQبjh(g6r]zWnǞ8 lTR+&Ԕw[G
Q.9SD_U>_zbSi[8D
M+HLsh@Vy?bOϔa2ȗQ#]Ov!1[
:5Y]]}yPmS`~!ߡ'bjC9]N~}\&{&&bbyN/3.]]q yjQq_-"|LX> Pv,yj|9vy1Rh7d=9&y*
o;zW|w0Ze:*SOFھHt
@oTBK1t.O3V/K
FOZA36'fws!9*&<sJ]B'J&0gp0R''{\Vldu(\Y[$$]gvF)#sj|э	PVAreos%|mDcI
ݜ-Sh)]Hµ4j6zZqC3{WqemU8X7%)U[z>O4 dѻHq`取U:Hv{uoO-)Zhief$׎I/6ejy맷q,p?ֵMTT[dh}:1A;aleWjGw><Q]]A)~žg7bs{{OaF.tb9}!4yh"iJwrh&<ٓ6RNZ(9cI@lz7,"WIiUPux}Ɛr\t]SS7Dn"ѩH&="c:|E*QZ[?t0(õĆTH}7`*	~IkzqwGg=0L喇"c`Q8/K5a׎d0gF
{dFp7cQn|!Rxn21<#Pvk۱gLDY:]#h/Kwu_3Emk:RPxحRo%{9p.뢤)8jpVlJInPfm!Ē0L!Z3/Y(npZFX?N'W2;lZ>V6&?V>lM#,HY9k0T`p$yMh?JߑhI+ܙúmp;`>@Dy
> 侎ɸ6ێ6Uo0$XFhND1}.X0 ҎQ3fO&}jC=
X>$`!I:cDg/<AkP͵r3Mi$rڦ62(X[q2ToU6J
39YvH.%_@ѝM݊vFžz*kQ0|pےQțjrAHRn]ñ1QU訐d-8qvͧO7I ʀ>k͜!w[PDDq5i1:)QDKT"\@:eHyN}guU
~{Iys2XoK'0Gg&!Q^sf5eI&H!Fgø+rϡ*{yVk9	:1E?T2=ڿմeks
%U¡:h{+H[ϒGS33q'%0mx
kʻ:cz+j^ys%f%&k_(҄hiSdbA)`Ā.
ҡ*78Hl1ǃ7&ja˟>ocP񭛌ڊwr'FΫ3[sVkٷ3J6B8~Է0rlNG8;UN
0ΨEcF~pnJϮ-=qUífʦ;E7(=N֫:#62Mrnn|; yvp^g^62JI['{Fٿ}
m+1:\3aYN-S
YOu#2Q©(gXaSgF1W#zz	꘨wL`,V]
^$}HA:,m˯d%Ud\ݚ0#gter~Fv@$qTAt[t,۟Dc;&gj1Q9[41\
2oL!d@Ŋ2^{ ",YK&fy\˶zh*&A<@xTZo4p'_v, ?!}Eclx=_ Q=+)~>P`Sb:K0RX'a.䝐;aǬ5ƅ	61;*˵yEaJ_c[>@A(5[/iXO+qE 8HqnQ]-%Jx̦Ij'i9U=]I4W4G_vap0A^uϴS8sX|yD龉hS68{t-Z^MF/H-b+Z y
EB֯u;t9w
뚣bVhvlVvmTjXxv*@,/oocQɍS[dUyKLLfqr~Iq\s`O;hr)Cg-yrJAG}*6(Y$ʩBO&r2gpPGfX%/V@M]jN_YKE؎FE}èd`^qz
sͫYu]ҳlQq^*/("C3]\#}luj&7&5C}[jL0}?Z OWRY<[ɘ,&=ax};șJ޹-54Ҥ?SHcxa78	yJE;:D=;9^GqWJ_:$$Yk@H&q>zq4و\/L{^865X%͋ԥ'0GTrHZNk=pa2ѱߴ(>Bm~FG)}8CIҼ.IFMJ;#	MGR;GQ6v.GZEɇ Ş=6W(D4Xr?~.Tk=@|ƝlT@2:#pf˶"zJܟ Z;@#maYvOG,){ǰND[@:fLx:/@cI٠(]s'Ege
alXARxjQGeAn\
_	l~J;%@hWT?fd")v|Mzr;KPkÙm,6
P7qYqu0?=_jtpX>!),m@}k'En%Dnp3Ktl?ņAeAkMHWP틜ak3LX;NES#?%3rGA7ˇ15j99jyvBL&}J^K%JٔB{/]A	Jt`6ʦ
^%GRT*9E]4${Ssz'؁]"Φm58"bL]y2ODPgɀ{B
L?#1Igx%EG;ׂٮ{+䅶3>-_шo+%I羅A߂y:JTMlHXMisj`0.'B'ǩ[tMNpj+C%IlXm<-(P)U{4Q߯pn	D&)v@=%jV>6&LB7ɯӯ?d4VoFQއse6$GNJߚ%>e*G½_7UJHk!}fF-Nrhel`_/fJEgp*3>z)T|Jb(߶,=Hz]x^	ϳ-+	辆|)[x$<`:Rgv\CflzN8xȆr>wƶ5}k˄%7JF	&RKmgDٚ<'J0ciL5}Ksƒ>ZN~u?Yiw:%3s$ek3tD^z'8f&Z(,?	v^R F<7b880lkz}P?X[˻nE)C˺>|*Z34"FjYQQA7,޲G}&)8iN偭A־#3ԩD”g=pQHP"A3|d8ԏ*(B(ۺ0zr;;⤭RBFXV@XG|LuHP*DOF%[pZi5eХI̫-}ONz&kd[;0kğuTG n_Yn('BeJ%t|!@DmN5F^f	>/YKR]rp[rEdRm76s":}Wq}`?_L/m;Ͷ(QPa^U=/0
V"a'+"e^,N̄6ƣ-k>^80Si`bɋif\M4|֘zO_
Jo/K5jG+4@rwDJU,(	G-R	q܍lpp%SWRs
D4uth>f0CsFG<.U3rT׊S |MuTRknA*t2Be&G)wtU[bCJu
|,cǒ[4W(Ǐm	c%!b!{6lY H
;߾-5G&t8p31VԳQ{
c3M}DPK:dp斅9`]E7*e
H*qczB:833;p^	#`.B
ks[{
#m%E42e)&lyX^{N>QJUJo<@|+WryF灰xKu}˨qjd/<-K+hqTrvZ"9O[חvr5ZvFuwa{ئV*a2u;$&&dK1xLȎ5|IjcCF'	$Ý`7i!DFpH&ɴ`,d7Eaħ FTU4G洌
Ҹ`C}^5
3MR
E2O&m+xVD:FY5!PҴ ѝ	DD%7 =/]XJD~pj%"(<2L@
yuM.K,YUSD+k>׾F`AcbJaũV1!K{+eWn9R5I9=*V/D͑fYsC7Kj.q`$Wͽ/uoG,mIdx#vUw:%QP{Z4pXcw1ʬnb1EjVo.'y'qZLԚuaQ30$WCGe+IylRn%-x{G>#rV"ܹB3Rf&R`tS_L`O*I`Rڋ)\a8	Sװ
C$4cZ5i­+^~MP[t9Ty|m_#A~aU19>*)[@nl2`9)Mɚčw4T>ۏ61w}&:l)Dq֮j;($0l{i5B/%%jrV%cN.2?x)M#:٬7T,f/ݟV4GxJ(mTؠN^[qcXt\0RE$hhYEmFC{r@KsXK߮ybQN2~9vsr3-X|ۛԠnG_	Lh>y_Q$E9';b'̙t1ڗv'"<hxs6ѩ128^PHE}|%Y9repZ	^ō
jJLҤ]BzpAj%'C7P1undyG8JW*f.[ߨT!%נL.Hb[(6xs}OFY\	P4Ͳ UOaq;{@&c3\qGth:| 虍B抧"|4|c(~ۘӃ '
/O|h7:E\{PLXG?~bQRNb~r(kԮyѢ9VܷeEDu-^ɮpM3S9W=ĢH#p,-pMR%[C#o`	ہD*2Ug~~1AEE1l_?v1G3xl. \;{0>f{nq71/MT]rϫҁ1V9K׽LJ
J,d#SRidf4b2g9Lvrr=[дmn mDR(6%jV]IZotjX
.2vZÇDClp&7_G~f[cin5:i9I=(~D`Xו/t4.nGsdedC&SHqï[k*^B~Y AVm!lP/oAUo+p'[tG5x2d!26Wq/tM8y5*ӝXFUN]X;EiO巷 G|qEKXTy2|,oS'"DI(ZyWշC[+BFPU~-`G(kK}V MC.#,:[|]m St#C~wxt[ff$(TR7°tEm{/rKB2Xq骸UT]ҡ
E[mUyTez\\[yy۹D.ʚq`֧U*	`T,GܸD~pd,̬p|,1gxp488gV)vΨ1~rh#1P?nlzxI[݈u]i?&Ը `X퓇EETzMa(.|ȌVlS/T+-!3񫼝욀=LH'}ja@mYuP?Y*#rn]DmQzb_:̷"
k7Ivf+[7YCٵO+&Hi}A)1кBĒh/02E*TֶQuZƷdtb~2^nku4'p
}~G+#ŷM
f1,cw#{TDdty?i,K<{Hyx\tQ&XX@7ھY=WѩqK.#<,'ji=tfi{0(!Ӓ+n)~En9غẅ́U95<5+}2,A฼!g(U -Qމ&5/NN[u:"i?ǿ[2nj6qdz`ڃ_Ko"8
jAQР=|	/bt^mnj&	RݾL-n!{?GD[&H&{Sy^ɃIH	]u`)@%~zY"?$+J'%-g/V3~d%fM\^8bo$ˠ@,~KoQ'^s<܁]=I3!άU~/a"L,2 e>Ƅ=n
mܠ V&;ls>kىM@]~B/LeQy>`KE!Iiq%DW'hQYճ)ׁ	%w?t;nG6ЁQBboB|:{u0ތzy/^hDI0.sj[h4غa'*,a|߁en
ͅ	1&_v\?Үf?@Փ;gpK
EVבݿ8۴aFW[	F]5NZ߱[B]kZ>kI"5@¢ "Y>/'"'p]ٕqvR"Znv+Ӽ*il'i4⸾-:0w芹3*!-<ڞ%PA;+U@P9u	{mb"I:
P҄aptjf0~
@̘'̺.̺쩮$Q>]E
wBm`;VwS'Hy{0Q>D,AJԽ
͈Q7½1b		I Gi6ud	Ţe=)_4E\0nMDs}^*v!Wn gzܱgߡՆ Gm~D}) _-?dZǒT(Y18ٶTJ'7^8͍./%IVf{VDTxc:Q@3v2x"O^_SӉY6n;`8ebc)ƫ9bT.'gxwi	*lA*؝q1U1p
;Dʌ jX!N8M\iۺFKaS|ٍ,{}7Uޒ*?^8p4Dzܬ8ϯM=aHî 6w!FTEn@w:jlfȄjR6[@W;yOvR 
PLa^]5E$Cicnjg`5 |pT-N}7]?Y%yT)s=6\MB\mnQsIUނ7eh[./1+FAA[u< m`eXuR*Kv7"y%23@)bebzLPtojT"g8\-mz4z-_r``O֢{d\F%j6;[7b%c}\\Õ^
H;ּPo`/T%Lv2|ioyQ?*cgT^h
FdxGYy[J+?>"o>}X"ɯ;b(f+gI8Lcm)^=
H:P4q(7&c.|ϾKWYJe8=,ce};# -um!3[EJ sflvrYmꞝ $ۀsX,[t)YZէڡi~4qۣ [R%uYނ7Yxx*uV6O%G
0l4GnL(t$]NMi]@0]&S]06	+|*y[2WZ7Cƶt;LVo:	:]â͇_`_bb	X(a61v=Ӧ͘' JB%)zsdʔ5PuJ&ȕk풫\ES8yK9i3e#٢GWtԒ
<Kt|+?Fu"*|EߍVj8Ry"Rrgo t8;*aX	FLdvt/%0u\3
FCw$sЭ zaC
dI:؞tvSKMwEo:潔tԧSU(tI آ";zH0;Z~M./nwt\8:cx
P_xtAp34sz
YrAY1|)ˠ}W/'z?@8W@vvU5GOWy`5SzuG/xgD%l#fu>4
oFJ[fv6dWr&?4nuNm“]!{r"0@5.\_n)WXbXoY--Q9bkT6@6&z}`l€ǒt37B&֥20q(y^f=;(`cH?&	MaL.Zz
 x_7,3oӥu|[)fN<&3qk4/nj{>P$}+Ӝx"/oY*[,~F='uU;B:c^dm3WH_sXT8"K.`rą(Bʢ',sy Sdz}QpiRy2!2k<+ֻjwzTU7ttw˗ݸ/29rkJ _>b{}…9*+vA 9q?V>!V<]U[
M#6aHFz(
y.{_BG+tjR&
՚=[\݉S]$ede]Yu&̐xj;>=q|yqP7LfF
*2HiYsQ6e&Ӓh圀0g^* !4O|Is8I7Kv̡4Bp:Wy0{+|HXhMelbn
Up(Fu4w/~t$ߒAT!$UT"[r-c5vy10
#*n-CN}l9yMkݹ*Yf\}?CN
Bz|Z/ʜ6o_IsQpGuT̉f&k
{zlæ"w駇EfeB4݂3ʘ֭7)_HwCK
feI}<ҁz!*-.}=m.o{G|Hu;k2z.It4qGل-/%LSX-o3=%"3[IB])JK;ta0oYG0&R4
G
J!
Bo*al+DX#/Lx>/܌όmٖ]Nm$FLv.qǪ~Pk	[EC
Vޖsîn>[&
uXOη/|6I@F	PHYѦx#&b;J^&asFrZ1RECD^*fsV<[_'>\"zOʳ4s!
E'?B$nǏ]m8ɽ3tĐJ`;n(Tԛ6>"aY^@,!_[mK^\o^Fpl#3L
+,ТdnB-d}{-ͭ5_mݰZ"E	t/WnK*P7ٴL/jY\eodu!a&qEB'*Pf+C^a
SY'l児H[ea@k􄸤f%YDDo&ʹ  `ee	ylBB;	MS3é:8*t}4~{0FaTf\rP'Y
-‹c7Y#z*N2#:KHQn6ܳJzY$;W;lr$*C^+_
J4iSV9*+LzHvZt3g, D퇎	3.Sr.
_XRCYLg8j0upgh%uZ1[Kg/kl^~"j(:xǸ^11c;\JȧBVxެn**IVXEz͡+1dvu}S6fF0	.l|lCWP;[rVjI)RK7%6QfYQ{Xӏ6RB{(=H;
ẈMfrF)CӳYtߕ+p76mXfEEN6|AB53_m8Sĭ Oyy5y䓈`DyQ%)c߫]!ϐw{,;㒼ѥM8q3K
I/\yv*TɚT}n؄Up7upr%H	j3O⥋D$`s76Ę72is2!,DN7f3qA/%IIΦ2SYXKIBy~l"u)ldѥp'EAS3'v}.:Ll4^xeq(❺M -¬adLcϕGhۈ6a'n
[]zTNE_dD\˃@ÅpdsXUԦfoºaji5.l^+j~wxIЖ?cK+u"Z3G-pRDƨ1OPLd,!|׋I0^-:0m$-6`{Q♨L͢ql#1)uf aR륱W똾s˪ǛtK\_U
8+PLAe"j~,PԔE6qlTQPtѫx6`Hr`S31faM ,yH
a@\N|3ou
9	/zwB|v+
=?rMVRd3m9_j\`ۣ׵SnXi(lcdܙԇ*lݿWqjx)SU'	wtxs"g=^e=Yu:UzSm]ظ=b6N/
luwXԑda	]_tLkqޟHLG0X0?ILVoHWlPn%:]|8h@JO[qJ%F\mZZebM?eei_H	0
OV-l2}w91VXjeby	z(KQܚR;?y3z6T| h#!$ph?toj-fC
-T2<,t[ؔ3~|)Y|yH+0TKc
䡫($>
_رn2m]DGFI<[;|.07|lc7L7496L8 8;'C"d^5෢EAW}WX͗lo~z&
!
uWя:dC	s
9~t.
}6[t][5b9ǟS`>=w'2ețZm&O:]VnLZ @uZ-3YPg|
 ?$ҸDuVE
c:̢I@6+D.DB(Jr<ʥOugq!14?C`v;[-UuqҺI)i1!C3!h(2['a_C]o!}0@MiP!r,Zx!0vpRr|;{I_G"kd{:+VSW\sex@#kn-t^z\9!Oc
+v׺M S۸
񤺦k<|W}t"G$d>/EE?!/@4CHLw`?(%EdnG@cUwGNBnȹ{'<űw"ȭnPL׿41Zu`12g_֤ꇛ>
zS\5ﱃ\
̬a?Ԥ$YM
:¼"Qa
2D?I&kts*Җ "^M<3pnCñ("H.fWM3h	k̰mtⱥ:A-CoCrNqP䜦WзNa@7VnO] o"Ӆݭwx	`if}ٳ Ah_($w@Ԓ\M=@0ϴE؊ߚn[^cuZEq0:sS&Uع&]'\e':+8:ۇQV$n#*Ҋ
	h00繡{mw)%luh.0S&]8^Rȫ\9u#hn}bꆣ|:zS%zv'ղ)O:srw0
y[lZ|lvQoE?9޿SiR~S=Wyzv@;7=L`Ou܈nM{WdTR_U ,m ƈ[
-9& A5nydT$a`ΑZw[&=WfHKA't-E\x|HhzU3w.LHܲt "~קFݰ=kY\Q/)(N̓KM׭M 4N~u.!x/Kvxpl[j89ftU#dq()8ӂ'RvN)yoBE"UI,S̢N4f~e;_z8@v2׹JH1WV,E!	=v0n8gpYoܰg|bz^F'~EMgeذ@Yu?YwKe3zOvX
KtpKȢ#N
^ts+'d)`L]=o
s1>*R7<$NP:@B'ʥo=[Y0ěgr^ѦG뛶ASZTF:<^eeMm̕gJ-7Y8VL/r? X/;Ѝ^ۍXίNToA@G*4o{Z]b{S%zwJyV sЬX%Cg\ITxa-0X
y]uALPcS4e2̞$XMIrފ.׏N$9@d
Wx[9fYZRF
H&JRY}\o=$YL5eHko'oV{_㜦GdrݳYQ (RR-H:cno޷u^RH% fsamEݴB,ȥ~ge2#ۣ)EQXY/#KK*1C<C
~Gm^Q9dEKsؔdWg.x*ÖBT1Fw#F@8U`.&|T'Ϻ6<7ނUki&VBwtO,Uh1^ vm#^:UNه`IsuTK*k٪6KOz:L${`}U.؊ch+,wu)L3&Lxj(mYŮ[5Sq@b=Zqs!e!^-=dZP$͡"P;5ŝA5	eGzÉnbOU5ݹ&E-]6Ot4vib}u|=VOӖnf7U=d ]r	1p='Wؼ[Igܒi\E}AѰaBcRQ[e-&h7zط	шfaٟ+
qI|SzF!h4	ZFM|c9Tai6ˌtZՅ \/.ݮiG2`(SeyDߪsjZYt-5ânE)wwk/u	.5 %lI@%h4xcIVz۝)MNNV|}uT[0
 Ѩ5#j
SLRx2fg9C;7KSʥyo0~>Θ>Ӕ{eK<
Dqn%4YE_}{i/WY45@Z>(X=mJS-ښe̮3c_R''f; K?~|4Iďe))Zac@
b;1儷	e{Ql*Hd#*t1g'rL@w.D{MdA%eEW(qUvP`*:l#_o!y^֑3m~crz)z
EOj#3TT9&dX:"5!.8D:I*w(a_?#r
RN`(:wINo
F;i*ߍ^ʉN<:*ř3G#'
Gѫi.-;
lT>=fP[߬$yV)3 J#3{mbOlA/K<՟}.7)i;Ó1쌊Po?t=,r2oyNdV#4]Cq@vgHKXF=J7P2I ^սFf2Z$N3j%vm6r3B(2KIpNY1vV
i:,5~WCiP?P'@]tH^|XP(z}v 1z䵏f\stY_=j
udwKկPܶf,VA;m84͗QvCf(?Tڬ>:	Rј(du. K蟯}qsTD|C[`=Dbz-3CÀlT(
[W	㚏JieN(e!75a>ˉUHK	63z&7%\wc	ey'q|ѭ'/6b_5V'AJDJΞ 5̾[,s]{_]S9d
7][V1b0|}T='N9N 4S#m@Llݕ\z`QKI	9S}s;>|b2c8K`k(JEUɨԌAڢJ$#Iu0bv{YNozUqKEsf˰f<<3sƞqW16p=DUFyɯ~W>_b(:tE使/$ϡ82`hG=wfPD-}?Ϻdk+@3.	Nǧv#1CR ݨ~".h))WQlhlن~Hm4s盘lMuj;X:_Vj"_=mLdVn.r!'-z-qxj54GKRk܍f!?
gՖl>f[%ƃ9VJ+6xp? gj9Jlp(f8vA+=˴%lTB4O=&>
bЯؽ3c5]'j>"̜uJCX̔Z$fr5
&[`}YU`kd"UhH/ ScOד~v7,n6ٍݾ>i1C²	ҙgjUF*h&Hfj,:0Xx+ꊱ{uqe**	mj%6fJ/KnOnh.ʼ{XLK{X{>t@WkQ}k!qc*՞_jG&*BE,Zl	DfXYnF-/|֧˹,;[0Re/"JCT|2_HgEЇ'"_'py㥩bDÖi`h6M,5v;aB,T\Ѣє<DžVm?zoaF|b(!%75Hk2.;@17zکt2'E&S;ϵDGRɫDHZ
qAvH(q֨O^*Xs]w$X|EUgC'S$]dڗp4sl3Ex!} RגG7rFt9E1
Dcx&f(d"VN,(#Fu3tLF
'ϓ?߁#H=lsz_VF&=0PglzY~_(rn#/1^ܬTpoQ	091=bݜD)	$?|$T79?U7xڴe_͹cdv*aGNǡԕU3pE֠\J-[rl@GVkk3_q.BAsP}m[߇B|:N9Z̫W!N$1S!@pO0b($ΊFP3;4nĻs!WDZ
Z^Y> OO7G"!r%z5gm#`-6RXoW.[l=¯`O[PkH%;wvZ+CT1*Hw	gmaNZƜñ*kPP!w1lYM{$D$^bI: NL19z	hYo',Ʌ?z{"erLJ=ߗWm.3lFy;Kq
I@7w8 y#dFr!jP5!mkXy%W\i/MxBj
#(7d@^p0؊,F䋍ze[4bK=^C,鉧UZxw~
-G{sBuI4לTͫfi=UQ:9Ys^d)ȳ26,8k`pdJ?G<'
օD b:F8ۥLC+1ܻcD'/o=3}F|ͲNݨygyMpG_+^
GgSㅡt-ӽViW:5&d_	q*?JIFO&/BE(hCnl28ƀ&QLjKoQ?@mdHu|p$i`Et֡_4FnئP	Gj
cT^ER@su-k+P(>""%2T1urˉtf1OYG
GQs^J "h\4
I4ڎiߏ6^LõÔ>?ymc;:]F;*#@~zgDȐr-('@w~LtӠ-?!g5́Fp~R>7~BA>mY=&B4\x\p]x(XI.C0f+mgLo#庳IiTiJp&Qen6Cx
ִ8@`KL2h
)sw?e7Wa6/mQ,>۸(A9&`.Ę+㬭>fٖRg,YsQ!irY#jUoLb'>N_(rc^Mǎ[\Me^P˴jDQZzӟj`[	کm7g

٦O0i
>__Z^G%ݺU!^ٿfIy3Cz
M12yc,H.Q+([B1fjF4>o>Z,Dm,\j'Y 2[_lr"q" Xjx*bN74:_>"u>;$&
:QHD@$!≯ץ
Eg]敾2\8 ^qp]3?O"\3ŜaU}yg6:6̝t{)Y-RA3H"eK
@OY+ǀ,!Ў҅Xs4D h%gL k-`u58\bC͈h֩gt>
iO0̀E5GM:<9}݃+`9:ǚbE>fp,bNF:a4P>020AqmeX)Eqȥ.]k$w>7\;|qˬO;1,V!}՘rX4W\r%iCЯ(aݠ1p/vlT4@fJLEi}ws@
F,Ei{,TtCl_p;NCjeAw&SŃ7nɉPGp 4
jqꊐRXsޢ82a!<:TsQ0u:OSgvB#RFNVViPEtTR9?-ED෡ݱFU͟OS<ƫl&ri]A*|#186?wH`[N36W@07hc7FWɮ`[ 89	:(Tnќ#WczCEYhX.+
:f#E~6
\!a3:燆T^fSS
?/$HxmK unqx%Y~7F}̼qC4$'{;h/mERZ裡#XWh#~1)J6i[(ĠRu*.|->g'\#RpuC4ÎLeXؤvj	$0Q76Pw{JgEQޭzċEGЪmrAë&Qh}Ƞer+Usݚmͧr71O(PfF`xkstʹB>Kr~o	шT!48G2%YxN#7+lcX̻~w

4R7(&qN/ӴDT@i!u>t%t\+lK
C]zKQw,i&b0EqQ%'ܜNʥz`UE"|:ćqI\1fIXKb7*rU`I9|q{>-?ښ
jN6IO\J:+*_Usv70#0n譀$T
:3ADC]k^YݰI
jV`8	<=bB="|(GI1A w-tVV\ku"	|4n	6,zqox!j!]BGK[<<iGr[ JLC٧꤯!+ZF~s`WEi9F"̑9^0	_XNOUAVRY(&4%eZM~1CϮ0jHqP'%*"	RhZcL^y"Z)\ [&M@]BpúJ;5$eUfQc=t!ֺV/0Rz̨Qe:2&>^~常+bD7x/O5n	b&խx~SXz+Cuߴ@MϕğxW<*+"B8MO}+\s>Q7z(^ǨذTmBh>k(/x%yI@"Hof`;ق6|Pw^5JmkPvyl4{hP#8ӆv2A߳GNc(F[[mn5Wx[sPKL6GRח̭.x/`|r i}E4
n#ƹe8N73S1.IhH!~6vkFg!B4Nkf"OL()Ff{QWCkSTLV }O%"K4a
%iZ|y"Zu![pB<'IZ+KumP
SqUV'e,@)>0~x%t 0U/l}ScsA?[v
EtVhb!J8鸩+pS["2xCv0l-PNMҧOUʣ7qk>d(viNoZES9Efե#;	"k
ơZ\\j"t?O8A쐼KiIjR)NNTp
'a.eʞ('k2~=aj
}OUڄp_G'1Bx8pGԹ(4
Ӛ~o-WPxr-.ɣx6-v?ӸG^P[j_"W5aVwst{7]8EJGzȿl;$\;*x\9%hw݄	5ΐҶbQ0h`,;6#U`t7tX] +\@O5|>>h?!n/? XԁmuL3[ /=$DɩoE}XJa]
i+uG5{('[k`ڻ6qG{T(}r|Ps0Dîuu)'N#S?Uk4]R7y[xd/GO%MfK^lFG#Vh&A+T:Z+
YLpV1QL(uOG|Y$S\K-jo6MEEʆhV`k=#4[-h7k%f؋uD	&Y5̕~*:+77z\[{hR]ŠH]|\!xLMH	2	6eFהĻ1
f_]0k<})o!PI!;tDo׼[`|sSa,L,+dE_3rki
0R|j2y>I4*>Vb/mƱQ}@ʬJλ>zcvJX$	ӕEHU`.aa6R:TVm|dwB.
v?G0jDv&]CQoq'WTc8rS_2c]5Wtk_FQȾ4gOdsaAR"N&Yø=L-3)OyZ@iYR?X|hh[֧p4J3WUJĉ,ŠݗپYw>alo%J3)LEУB*V5Ep(08ޥGÏF{EKO	QJ^HxI)ib:3o1])0xz*aUS9@q .5[m(}RHr
'SK+˨m%mN7Id^HZL}WT"E,RN1NAV[ԁÝ&Ȋu&uytZEOLBJŗ1{I:or;QheFπSqޒW/%AWg,]|<{w0,bx=L˭6+GGFhBE R`Ě<e%@,;$̸O`$w	Tؑb.
Ҕ	sB"
Z$zqRtfLuz:4znmZaeTy
uXTv>gHIMm/#s^o/qLV{g:b=fHn30SrP񵫭ՎbPR.xȯYlMFe,URU/S	"~!Agcw.qtoBq@svhySjz!:S38H/+[_ӈ@=B$FSD|~6-9ĴݦpI3W?7AFe1][#,e08+J؅RVIlHB*fUu	Bί&&?	3~H%͇7S]s-`ANFHi{mAߝڟܨ"up[⠷e\R㡦g#1"ȝ:п`H"2vڼ0;p+l~l)pWv|jlH8Ogv|[·اu2#ؘ1dI[Փ%#ioqohwnDKwXm nN9ʫ'7ȼSF}'[rS~zeڤmi@WFP}K3tPXTo&H\
x՜(@!\,U#@n0,Bhy({w*ꗿkO֟8jzsQ|S&1`քc0rZe%H&f|NS&_ѱ%7z/F5.v#r@>v#N!Z6yaZrdU͗	V"3/suEvJQG[umԡ-	7ovlj*M/η`Vwx^_h	>.()e6)1l$'Hm-%/ޕ%,nGe
J䁙Z
AaηaK}pPoF`Z&a3ЖK24>bv_BrC>z'?
*#:TX/=9@lJ~np3-Nca#	0ʼikωEovp;pEauYsm{>M25&|h%	MEG\vAyڛ/h\ʙbD}؞o+/?$Y{b*2g#mRP:ho
sTHd5s␡5ݱҲ3. HƝGbMM2z"#{a8BHC>Dcf^L|փgBkL7:%l'V,FCE~pޅadz#߈պZd-{;Nȳ4uaZsSr&eJӒsa@-
-yneL<'.WI7p
!2AFI#9KˁWl-?@Q\޿6'焻vYm:s1^78J۶L-=öT/_?yVHv\CY{/fXTf.g
{˛̐f@8ڝmw+A0gx԰E:͋pLt۳{-0JqRYF'ME*8lcSnO7Z=ľi8ſK.kC63TM7BfrVSe#ƺ͌2"e8f.QzOI=h_.׼>z(ExգwX$b3 n4ֵLPk3#;LC?l>A>u4m?3E۲U0)_:=78KU3\EO]4{Y1Kc9fU%&-q:.s1%Nc
	K9mQ[`}&0U}$(\bV\S\Q@H1hA%JfTfKJGYG>cDpҕ'?Y!4OkK>UU8Kw>_n%mC{lWIN*^Mj!g,ocO@He#g
.ñLn*YӅ@UBT F1zAV_~hy6Qx;?ŭwJruҚ}lGݥ%cuh9nꅾQv$)pZp܇XmE/yq.A=GL"ٹ]pub]9psf%"|P9GӐ۹>Z>~`DB_mȾ5 \BE*Qۑ^*hn,p̏A@#f:pNzSzv	ˈ<Šg=
۶hGT@H0T(fǖ}bFi@d&h,SV-JnJ	;!`\5#&9M0;n)a,x^R)kTiqb_z|!78w7Bmz: k!lJ[h:gnBɀ+̤$z@$ZjQ*OFv#5ZPqEU8अι-'LOƒ*5ңni U1)rQs]:dA6["N?9-qt|5edq(O#YcA}"b.ĈKlAyC!g{Phј 48נGVh@=2"1	sawPGB^`o'\pz3*9.ȬiVLkd4%&${x	jWmuGٙFt"(|8	
}0a
؝{qQs2yLbDV:w)БE~?on]d4A&#R>n)Y=;-` !|{.xsO%١ICթR1feWZQɔk-e#Iv&X(dTZnUshKY?VhTE) B*(U4+EbB,91hп;	&ܹ75w57Qr}
ܬt#;FGE&sIWG&xM6է
qpwuÔ!IxYL4["Yr}RBa+xAv,J:+ڒ&Wܵmt C.W72;*ϊ
*wX%ܓtDZ!@+
s;[̙phRaN88tRfaUc)*Wyփ<
awsƴ(vogJʼn0Sd
bd~ʅ:m0?#զoJ=s68G8Lh&߫IVYC{m)fg\OQ)s4s(4ٔ)z*Zk	m#vrTE0(:%mE.sY	1RPLaa9vVQu)?r{'&ȦӾZЈя@d#]"t
ZA͟/SDk=^h,^Hs矀=t؟1^+3F݆T7Qc%"YMv(e]3,zYGEN;'{Dx'z
.w|xY`=Ag/SM"ۊuG~ۋm$Y:>[.(xlm_άN?X*̹~˅/.c0
$OrwNT_jImwO-wv"hū'~
YZ