osc-1.9.0-150400.10.9.1<>,gp9|GP5'&qɞW9Zoڪ1 =vNJkd*QO pF;=: ܨVUݮNa{hwP} ɜw˙pxa mYΤϫrݭ2PHѿϽfGZr_5(xX-K|~|$.3 hwf,\H "QaT4Z.&e/ 7<\#$|L>DD?4d   I ,0Ij{    D h  t u{ D ) lp(89:FGHXIX4Y@\l]^C%bWcd~eӃfӆlӈuӜv wڰxy@gzr0Cosc1.9.0150400.10.9.1Command-line client for the Open Build ServiceopenSUSE Commander is a command-line client for the Open Build Service. See http://en.opensuse.org/openSUSE:OSC, as well as http://en.opensuse.org/openSUSE:Build_Service_Tutorial for a general introduction.gh01-ch4d16QSUSE Linux Enterprise 15SUSE LLC GPL-2.0-or-laterhttps://www.suse.com/Development/Tools/Otherhttps://github.com/openSUSE/osclinuxnoarchl~ -44,,ff}} ""D D 88QKQKu5u566,!,! 4 4((yy??'' cc "} '!I )"" llnn9 xqnj+YE*K | ff QQ!! z zKK>>  ggxx##  $&V_3 `%y9t  2#mx[SJYD CCHiuu J9J9KK mn'LQQDD^^S jO))""ddJYJY.a.ahh D9"$* ^v3o)X%h?F!AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤AAAA큤Agggggggggggf{f{ggggggggggggggggggggggggggggggggggggf{gggggggggggggggggf{f{f{f{f{f{f{f{f{f{f{f{gf{gggggggggggggggggf{f{f{f{f{f{f{f{f{f{f{f{gf{gggggf{f{f{gf{gggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggf{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{f{gf{gggggggggggggggf{f{f{f{f{f{f{f{gf{gggggggggggggf{f{f{f{f{f{f{gf{gggggggggggggggggggggggggggggggf{f{f{f{f{f{f{f{f{f{f{f{f{f{gggf{f{f{ggggf{ggggggg3b63b263d6dcaad59ac2fd6a233dcff3c7d0f77b7299330afbac5d79eee66240844262c48da8cfb0767658a085eee0e34689aaa5bce5c90c97ac61c15140f53dee646e6a0b019be814589dd8b50e10b3abf548fe1a2842ccaa129a8439abe71a21d48d210774bd56531b4606a918c299d1145dd4e30a6b5c4ec359311c44603101ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546bf527861fd5169523aa0d08df523824a778a17d84fd11169d86f306d9b555d536b4b70122c7e65e7cf87f1c1ef5e4cfeab625dc6ac517deda9ea65e37e8d5f905a4d9f06945ebca12a04ee5fefe204175ee05bc5a630f4fb71dfdd091f5ec676489da8603294c0e4fe2760102952c3a046815ecddde4c21d24a634902e5707334a45bc7ae06208dfed6375df23eeea189332b168ba2413716407b714c2d01c72f94c97be852243cd895657d4c429acd015c065967737b0b56ea797260850ba43fe4ad26ad5701c1cf8211651c2a35f0b71d288dc6284f74f4c645be09a8e043ecfc3e0f5a7b7df67cf59fcb87f65e3253591d58163566ea1d7a3903a40850381bda67734ce7f603dc35f096759e50d885949327996d7d7556e9b02c09e45daaf9fd02ddab9370bbfedb87fde9436c210752cfc118a70f6451b611ab7816d541dd80e88e97d08cb8a32458433b62ccad8ffe02098bbf5786388d263e3b7793e905adb11badd6ec1a7b9046da21dd617f671884d27621992713aec7fe7bd5b9dc1fc57bbd79370c8899d1715e674338a1f651e25d5df07dde81a300c36b789918a1cd36b7ceddbddc745a2823d9f6f549256236028ab9466d827b8c8be313f233b929f0d9d3a53761a42614a46b41711bf2e1f0dba723ac4d9b9bca1a9a8f4c5a47e9b6be0c42ed0ed42194e6628e7dac0efe34776cafbd4daca52226b427c846673605f2672448990ff15bd7494fe85d5d0d177b6f62c9b2aa26bde351f4c8f165e9f7b461a4d3d09d44e5e9d565719b8a124aff88d0bcc7e713b280bedbfffe5b9a665d2cb3a81b27f1a2b4e21b71c1b34d9df5e5998c9addcd1be404ede5d87c0701056c785fc5b3b888f34ccc9fa74d22b149ac20ac6ccfba7b628b4f517096945869615e88d08487b5848e4202aab4cb99d3052179c327fb645c8b1384d6ce9dc987b31ad4d8f64be322a97f5fc4fd1d3cc4e16e31318de816f6294bf971ea8215e1b84aa14ca266f25d6393a3432a9a56edfb0a90fd6fa2ef38f0dabf100b3cda27139ddff0740cc6d5490e2e26c7ea825072b8f44df2ed0afdfcc1f9723d92a6ca2e4176da563b4afb073484beedc2c37f0382fc3fb2df376fd1beeae5f6e2c71559b89514694c125bdcc894d6bfe4fc5aebbdc8eb0150a488d9ae0736bc397c043a18554d67940a78e3de94ed32218005d9534eb881716cb8a9ad1958f36f5d745c1ed38e7ee20087c50c6e50bf31a6202a0ed7a6640af1ad9ac389455b12f439638c8f53133ac72508c7a0ca35dc76e23b4e065d69b0116bcf264114ca1a280cecb34982c6d0305be8950995628ffe8c7c0994a57f3306662ab6f86a3455d1ce18c683aeafee513dbcde7617cd22d69eb3473cff573be42381db11b31e4ea24ef9ae5c58733c64f9179616d396e3584c5321c204e2bb458dabd8eb366b4c3fc4965b29725cdc023de824da2493d4e81b55c80ef1924bf33b0b1b892e8490f4d05cddddde60d18917875630bcc050c0a11c2698e5821cf0f2c93b3dbd2f71e0ab2980ccefd2a870cfb074a889404ac3496a1dc659d18c5ae6cb3dd22364b85908ce614491cd3e2706388bdf0f8f16616905a230d5f1ac16d216871188133f1c6848f5e3214af42346c72fd889118551b507177c03d4ea61c23eb12d8bb8af9b7aec1923e1b9551f634902c50a5998667d56c14ce4ec945dc700dd500fea15afcd4b403256fae6914bd9b94a81e9a87500beb83397b9a94fd6728d2bd027c2cbf052483a59fd89041c7ef28d6c8448a5cad758ca9fefa1f476fa4c952c6e6bce5d738217dd9dae660df1ef112f04dbdc67d3be37f539c55b7c5b11db6d623b2fb7db6f3d470a8e25c618e5d79c98f33d4eaf08adb62475437be9d37130c1be54ee8d4bbd07426ab2e7cb5dd0044197ede5e12b81ec5dc14c71e24dd99d77f5a45261646ef5d25cd6553653a6dd6541a43fc041aef65468b87771882c260a1be59ea39c0c278acfed6388e0c3e49e408d281b4832db2614e23ded02df3c95c842f2a414a8f2b9bada5c386c106944c3a6ed1c77689943dbe8ba9b569b8ab0474b327e5bbf217041abbf58b4f84ff10ba3b42fdae10b15ac961792146a533aea1cf8d6ae604d6b6a21ff3e3e0124769b72571e890bc450bbb6201db344cf2a1cd3f7c913712a00b619e479049b5ed03b663bdd4318268db06c7a573d958b1711ab2a79934b4b6434b1943e7dab1cb94c725ba59795934429dfe126f01aacf3ee67f698da383c6ca868f95ce199bcaed8dc11e1e860f6a90e1346b29e9995c0070ba5cfdbffd159235b58e921718199df9593e3eabb83f52ef13476d3141128d5c9ade5b82a42341bbebf7efd42f0206fa670e0a1dac103460732e732aa57138d5b718acc10391f0df7951ccfaaaa698ec87c6eb8bdf2bc6c40d99a1eac0f58a8614f56830e087def75e776f2f03c8acec8575fafc36ef1ed480abcda64d10f588f3be8f6599e562eb826ffee16f9d6d2d78b19e36af6b2790c2e7b6855fb79e2cbd3d4eb52f3716c6e47a045f86cd4453f28072558c55a8deba44682757957219d107fa8183007b9aebbc551a4d3e6a672fe4e3e7be8a2d4073ff775a26418843c552dd16bcdf19f1cd361d0c48a15f1131f29b4bc685c70a2c2a17d26d7778de3407e76382f23659d3d168a29d86dc7198cc4b05db4cf5e55d76da7ed93e0915d474dc1d4f275c8db0908a24f7057123abfd465c14e3db9000daf009e4bf7b880a174f78514729a0ba8b4f6e948117d58a241d9c343f5e0432649336cca9a0ee94596f2f01348440347aed6dee797c5447d23585d1b8ebe1f802391b174b505b5ba39e1dec7361de863c6a88e05e3a8ff9b779cd73b76d0ba09178d78903a4cbb5296347ea30ccb0805938e3f6008e422679a54eaef9537808050376e71212bc6cb52d89e218e468459771b12970fce899dc2497789effa1cd575c52b4079b8bdde652c2d2b1e39aec604afe243700d7bc044ea8a1607e6cf63521efd797f3b16ff179c6654df2c4c3fe89030445df8f6f3f52606e009439cfdafc80c74cce3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556f5998e6c4f1a4a65c7a9d830ac95a3c787e06e88751053696ce373f1658347e6f5998e6c4f1a4a65c7a9d830ac95a3c787e06e88751053696ce373f1658347e78a117a7fd0dfca032eb6d5627f1a37e9f0c739ea36009b858767111eda0579fd792fe802e761f2e04755ffbb6a51a59cde0449461105e7ec1db5803d87eb9a8d4d38df2d11dfa4d477bd1e2bb19a00600b2b50c57268b255234a4ad631e8383144c05916604d34cfd79aeecbc0ced60d1b14b078d785b5b81b9e99c7a08144599e850cc3a6e7b51da19cc1b9d33127b6d4f6a50658656c99ac2085d7fdf36290fdd368b5d35607dcc13964b04b09241659d78e9d51498aabf505efcb1695bc01e0ee7c597976ff0b2766794bb2465bf2646369b68bb21a4f3d602316fd2504b5352b1a855b908b42f80f8364153ac26714c3f46dbc0c9cdf40203811e0c225144a6b7a222951fba78a2bdc88205e033423eea8fe08be7aa8cd0f0ce5a0349c992e1c5b45f814a2c5a59bdbe39d24746f4a5ff5f2541d4aa760868295877502ead1744416eb06790e436afe41e000e2fefce4290a5b68d426bb8d5a6dcf59eed337f9cfa2720a7a8dfb1c6a633155d9d0645d2833929333b5db5663a7860c56f40bbdca33b8276bcd60a3d2128b9320957dec0c6cafc99f5baecbf28181e585ff1d3484732b59e668555fdc49b95915f663444bb704aa8c76ca5717a1b11dfb5819ff101807d114b966ea8f076b8505cf01efee6bf6b5b8f2e58d47c8d0bad98fbc5b10df1618baf74148a289331f9782ad8e3bb313e7a9bffb2f38145d1ce1deae1ede4c54d1e41474b19005ee461d9fd6b158105d96c51dc3c8f54fe711bc4f120ab8f6da82b28b319ad65eb1c9539178ab1e0dc9459d13d45ea142afda3b1a17e50a730d072c37ed8080a0feb3ade8573bb7f3276d11d6e49144ec34ba62cd376346b870ca1db62499f011f09854eb081d1514741449afe6ba8519c3227e652500163ea24d4b04178635eadaf44533e5b6484a27d7611270b6ec51399d6820067fefef2524ecb08752876eed26432a6ca9652b4afa4ac79cf756e051992f79876f91659b075ae6d36536074b5ef847811303cd346385c80e6e0f6fa8ba5365449af3b941b46d1a2a63d492c9dc84f819af73a3f3a8c4d799a113890822d65f67db2a309991059d57cdde5e86a78b83bb239068b158cda5b98a554d162ec3bbc45f75ab1c591a5e344b37876d335698169f51b57abeb9f61cb03a164ee36a66296e365aef7a98f66e0aa34c15874da678ee95d82f1bed92e668e5875cf1f98a8061a657008de026de172a414c19d038bf71df7b4fd8d81bd162bc23e5fb2a7ea71cf47eacdcd911c1b49c4c4c11018351faa8100626c4c2ff2c9d20dc8398aaed1902f9e0c9789f09901b9ee1cb35ed5b9adc24e33ac758bdd7a2d051778e3bf3d9b20d9ac7f22ca2c53431cd0faa309c2700d728c9c5c7e928e50e27311ae120625ac854ed7fc4f156184638158ba429fcb6a37bef5f28d57e197b9e92b4bdac659cfb84335619a1c637451afbaae1a02625edbf8269c96612dbff514d98aa15ad01a7eb20e17cee3b99fd038eac9bf41a2c7432732d08a1eb53753b9a53fb36752d18441ea9a9dd7b7b6f764cc7b053ddc487d2f14cae9d67a0f20ac620caa997b4231c20b75fbc6a1e9405d47d72c6388d7b040e13a1058ef00d553fa0d4e2b988bfe77c34fc9ec6940f6661f02ffe95b028e9f4a5a752c964d33f168b2a1f957974d6eb92cd852046fb24f8cee4eaef086e8c5a4326bbb2e5292dfb640eaea720c549c67fd0657d0ff9484ad9aa5deddbae7de72b8dcdd881d45d3dd9da2f4cdbdb9a4537cce0de33dda13e94c7301ab8e4f3919b2ce1e7cad4a6b0a409e6af97198fe91fbe27f1af28b99a42c1aa8e68861afd7ce1fa23eea90883c63c462a53019151bd06079224323d92f6359d8d22425128cfcd75947158e7f1d8cc462a53019151bd06079224323d92f6359d8d22425128cfcd75947158e7f1d8c87448bfb9dddc7e007e0afc0acaa65b807c46521c29770fe9c01bac0b685588da8b8396c93fe92ade6e525c79651051d902fc47ed999218a08134fe305a72a2dbbb68ec284c6cebfef33bfcf6108ece48f00e1e8904ab1d45762740666f09147e33702935b459e6db0f2c39ad585d4f0e030ed14fdef81afbad7c18f239c95dd2c5241e93f4d4e4f818c2152b5ab9ff6b8fb73af0597351c3cd7bc689df4bcc00a9584356138b862f1e4ac77df85c9a80f2b407956313cc29da28e46a8d1c6c5c5d0abd69fe9b7e9a4fd9b857f9c8a0b668af297f8ade301cddcec44e3a22b8af209f2250d030e1356ea41a552a89282b120c2387ae022ef44f4b13cedc3506b354e567d984288c176bc19049d6fd05760bfeb8870e8c9f20e9e8927b05947bbc2f0194c9162bc34c016a8fe9b65151fac23f4868478c38bfdee61d8261f058364b5cb75004387f8ca5f52cd5acf5093577415139d62e8757bd3c69ae7ad16605b604aa01d4b83f6f902f6e9d8aa3a5390071f0a67bdf4b6946fcb69685f8739de0f52c1a6ab963c0fbc40264c57e812a19769b051959350acfd42366af6561b12576c406eb4ee846b7429d13c45cfcafea14053ab5c32a2ad4f980337565e7e1c902412cb6639f1a7a7ec3f96b345d5a4ca5721ff753e3e4dc773086d834ac6180d959666238660c583e888e1ef17c6fdc61b10dcead3d8560d9b112d73a4bdfb2a5593cd29c77c3a68f4b7a61ac38deb4526de78440df6a9fec42de5b6ae15f36c1535a16ef7fe8bce9bbc63a097158fd4ebf92e411d557ae881fdb74b0de87089eacdd5f1bf3df4f1a2e970e9988d05247ede7e10bfa4b9981e61fdc55c76a4840b2c9770e15403bb8f723e6fa5eb3d77d451dc145919b3adf66b0e89cd8ef37989fba5d8c31d8f996009fc8d78324492eeea334bfbe3ec051cdefee8afb3f37989fba5d8c31d8f996009fc8d78324492eeea334bfbe3ec051cdefee8afb313d172880907466c09fdb80d2ebd8d710ce2b76ca1b182413ecf2ea7d0a071dc13d172880907466c09fdb80d2ebd8d710ce2b76ca1b182413ecf2ea7d0a071dca93e691202a282121593ac9b59ad0aee1f17249d3a0df2592cd5ffbbaaebe82afd762a9c9882fd2e7fac3d2be6a0398e198f32c7e863f20a085e6a778868f498f6ea1c234124a873be07de3bcb98ea08539c93c10d76723adf41b92a2fa774bc34ff93bea8461204de75815704d8a65413aebee8d23df482897b1bf6d7bbc5ceade5d697b7e6943360f1fa67842893a98b3c236caeb5b0aa84905c1a56b909418bf9ea95139e6dc3404d773b86060bc0201fd5608d1b8e3242594ff0d55e9f52cedbe72e835bbf6083683666653e7031419bf93c0c000b791e35648c773352d45e81aff5bbf246fb85a011a815834a36e5076873c08d4947abf7fefa19bb6a409869aa040fa1f3f70ff619f1931282b4ea0f9a80b37048b5cd59aa6d6319c8cad15f78bba2af8036d5ce4b165b9c054be2a80873d8d3d2068b49496587812fe28ebc66a9629d3ea477d36d252283724c7f1f04be8a060103d9e6afa44b1365b82adc94274ded4188962276e707059394a7c643e3c884c627abe2535648329d08740ebba6a0a4396c5944402764464a366d916154a835afabcb864f3c612ea73133d35987886065e3298aaaf110659b4882755122823ce16278e80af0b58a94d499ed28b6f73d13ecd8e91e8f0666b34a4515a43ad80bed86473f1513c8789d46a1e1709aeb9275231bfcbcfa5f5dcc59ebcce24ed46cc18bd3d359308cc84edab8b3a226027ee4f2cde6bf34b173e61c513a729a328a1a517e81627e6d730b9a33ce40d7716ce6d06f94d4ba6fe61cdd8139d41f41b7d5e68311e28b3a210f6abb75a0f2a42ce8a579950f85dbae69907a29849a51151ad9f559c58166f0b018dfe6dce1ebdf9be702e6ddabe95df19a9e38271631ab9d7eb8133a7854554a43a1bab2838a1f59087165488258a6cd9fab74c6466cf45890d3d9eab5252c8d5c5f0240e9fafafa47f6b0d8ad624d4f7657501b3578c4b9203b772ef354768cb3e370f46acc7e3f28ef35e60da3c3dd30cd9afc0b89dc78ec179996ba3c2b79dc4d467e46cb1f94b77b6c6d0c4719d27ef78ae6bdc80950ba09aa07b46449f4945af7452ec01f3607d81e58d3374992cf784b1c7fdb60a729db46a46a38fee1ef83d413b197ea03cb31c8924c7ae8f35b306606cc8fa01f3fc241453e2050dc473466c425b76bda415e37f4f23682993f1621a12f7b9f34bdc5b7b672e06058bb02d6b2299160f163e963be713cdd3506540903aca0c3da9e68bd0b71ab5b5ccfc71a268128ab4e4965cb463b0a66d1460b62bba7275c83c732cfda9adeb622fe57bae15acf31080d85002b06ca2e8ce61e361bdee76a22160c41a17404a36980272e485871e51ba72c6be3fa16225dd45995d0a5a0886379bef643b9502853ed4621edf0a4546d14c92879748dd77f6037dcf1f119ba4202ea91f113057090e6980aadeb70b2e0613a6a000ff15040867eba5241266b0b35d67ea120695c9a82dd57fc0c03c1f43fc150c43bf7ff759d8c7b9d63709217069d5a78349200fe971930566653c852ec6d6bd42025c1f66d5e117ae1badf7ee3633cd79f8a84fbe82b038468c1c527b4bf91aad1e39ef3b5faa7cb377ba01061e143ee3aae0d5190d926bbb9b591be4d7354cafdacf9a56829544e590412024bc0bc1eab3bfaa06ed926bbb9b591be4d7354cafdacf9a56829544e590412024bc0bc1eab3bfaa06eb6b7eea7866f33eab652eb4259009845f0747b72895af256505ef624c51850a4908369aef65ff3d258d0c896fa0ec84ba252a307a86db5da8954c5c7a1615e30cc032becd9573e5fd33ea7c51d78ccd09f9413f803b48a1dd827e00ee3d73792a7a9bd61901ff72c42c75f9c05bf44fc6199a1cdf1dcf6969c01b55265330444bb4f07a1d4588344e8042de43a97ffa3be739c4e9cc253ca480389f0843808ed85461384efcb6852840a7445af51fedc4d8a290ead3db009551c08a318be59906ec57956366367c813077746d4ec0b711cad466cd666d5a4fb93b93ff18915bd8912f73342e78506aae0f375d5d43f59abf6c386a5d44228ac42a77b8db6c2b8c3de1fb617d397016c3035b8556e07c88c9bd741906f8c83ba7f4d495749d1c98f1d60414cdca15d51b274411cb5e7ed5592c9e4bc6a647ddc31bc0fe82ac1b6a8ced1545480f521958910f3865e2e5a49e109d09ca306b33ae0865a4b5102fa843944c358a4fc8af8f7b55c63c8bdd909f975cdae72b2b8ebd5373480fb2821d06bebfca197f95c0e9eba95401bbdc2f5d9f095caaf655b86b55084a74c4ad5f17dd409c09ef668148dba61b7a3cd73358b5e0eaf0effeaf7ddf57c10033d8274fbdbe01490ce6a7c4c1d78a0d05cc7b81f0a801ad65ad3bf6b5eed9c1f136be22689aa840ae1972359c41e083e6275ae6384ef5bea22922220fa35d1d7093a170050e4b86f12514d12200e305e2fa84399a5438b9c7d4c7665d65cb33d7cd9170050e4b86f12514d12200e305e2fa84399a5438b9c7d4c7665d65cb33d7cd9357b9603807700ddfd8496cd27fa69ff415060747f61fbbaee34f0df50476997c84fe9bf8c91c823ca0431b2af076a6eff8c4382c49e1b807705cf4a19b5eab6ca4c6b7ae3910c73d9e301ba0930550901c8eb0a31fc8253174729fe2f525b9482ed68149fe64e209fec2f0a500fde58f50e970a6c035420cb99d71d9193a3cbbf07f583c685b0f027241659e00375a2d1994a364a0968f10909e4c03f9e35c8447c47bf42c1f272afb2239120aff9c18e2d39660e516eaa652da7be7434075fbbc76795c27e9856f32b0c139fcdbc3bef69b09749ef6211d910905b4f68965e8b1207e80a44f0bf3af09b07a5f77dd0e5239fe42ca6c4f682d9500b07376f52ac413a962fddf52c69a1a92e043785e89420a3dbe02c5ef8e85f17b4911c1882a72a51ffc832203a4412a271a316f0d0fe0b08eb02962eb46a633c42a80080c04ea622f9cb382b71b41399a4cc16c766ed46bd1648bbb00541755288cb2a4ef539fd736893feebdb6b2e2fde4ddd160563cfea6d08855abd921f6caa6e68542268d0ba8f2d6b647ae43f08040ff397fa265a46688202f2ae75d694ce33d3662567e7448286820118b1bc31a3764f4634f6f358b37254f59b6b541469057cd15273f1f4b9a87f6454ea8fee7868b727e9f02f5e271d860302e26488eb0ea9f5686b95c002e138ca12bd16e643517e732af889ac080922d94dee3675f5c39b7c4b687d0c9bf365d431a825d40053430c1d3e9e8d3300834504dc8f0cbe2e72061f687d0c9bf365d431a825d40053430c1d3e9e8d3300834504dc8f0cbe2e72061f9d2a4e9a99ed00d2a7274b0af8a09da2a01255428d756ccd48c4a967cf1616ad933ecf651690d1dd29798460fa651762ab26444ace24ac8dd6c428164749489145f64ffcb62b16170e251943f0c7a89ead6d1b23440d5c89c4a3b83217dd201645f64ffcb62b16170e251943f0c7a89ead6d1b23440d5c89c4a3b83217dd2016262ef477ab732da8655b55e33983dd373a1e4dd8ca6a2af5f2f0c07104af6a80e64a16f2b23ad15a21f758fdbf313a821bb894a1e246f4c048d2190794a4d1969eab021a915216ff5f019a6e3c4ba87b19a364f0a6fdf82642ae290d88bcae36244fed0545ff9b2f66a6028a99f4b2e920939f41055f636e91d98f2f3a35dc0948c45b70a3aab0e8a0b10ad50399327a17bd550c9c6e6a0e930776f80a6c2c10d5942e24164dd0223230ebfefef807f41daec4d88657e266a70fc114f5cd0709863304d308e7243f4bf69778c541e33d4364b68f0fe13dbcef692db4850bbf18d743c8c30d97d7a27df3b8cd86ad28145fd1ff10636f738b56fd4d4655b42faf909f83cdf3c0819413dceb1563436e4dfb4f4fc38d58214a606a4957640df7202b1d01c8924fb21e169fbbeb8b51655940e1c22648b0358a852c6d874aed9007c4f4214595aec5b6f7acbb15b9c03cc4ad8378fa770b5c7ab0cd42aa41ffbae1485714bdf5b686e52bfbfd6683805bb3a27c4db0cf275e417a838fe6b492c63012783e9d2131aefb6fac84e450b785b90753586523df4242ead9e770baf3097b3466570221cec8261def50cfff9282b02a3dfa8f6b5a4993cf753a917cde8ae6e8078f2e41b6d853cc070c75da362e64e604c6ad8af92ad3f76bb756102c07b829b4a14a754f2e28c25b31795dbac3249679d9cbb2b9dfe8fab4c1468a3c5442c6405af1e76e31eb0f88ef82016ef14e7fe232ded100f481d71dfa0a5ef5a7399749d3a967747ec464107931519d7e6250760690e0542091f5c664691bb121277edee8fb9823b18b8f6bf8e3b1ebef806be6eb6efe9d10a45b39e48960898d054fa592d466e5b4b60cd6bbd5ad94826e624956dd7404b38847af5e97486574cd7a969aa8198e345e19d9c25a94965db61246fe176f4c50f732169a575275b5c582fa325e95bc0ba6dbd0a1459f385573e718a0881d711d66dee65b6e7f23a4c5ce3048249972649f0f351eea140d3ad8026bfc7f80fbb9e41a886a661ca8ef607d1111daf19aef26b5e14269f9a18e2c1e8ed8f299a8759ef9e03b56f726270eb7e71f282a04f526124e8c9d8b37704332f03422e8833ea0e5d77cfcf45f216b08b86cceb4847ed87fd3cbb95dcf6cda8abae2bd2e84de1fa6a9a445f9cad494041799a4fcb9828ef35bffd84a0983974b819451c0d90a460948aa59eaba2f1bd732423cb7040f7d31243e00ac31d01d9c48ed01c7af3d977c7292d827aaae6191e126066d0e652e0777971304b0eeab851adaf91dcaaf0b6089347228acb943841585e7ec81dcfbb5ab740ff24382745d2d6238d39aa0d66189708f9cba3c8cc30c13f9d9307a254296acabd649a78e3a797070c250954899b3c60b1c99cb579858291eed34b197a870d8fe3fe0deac70989935660352f6efd12629595ea98256c6dc54d78cd26657a217818f689f0d2522da4cbc66e9ff1248e1c291bdcacefa2cd20f4f7ca6f8ee6eef1cf70fdf29e4d529da740ddf29b135095ec862f23ffe3abdc3f1a33f4850ba40c286e7dd919f63d753b5839774e2b4d60736e874235739aa29a1e032d078b9744da8fc63c373a19d43f5048ffa812c8b7e60ab45fc5847f4803495377fa85b045c1e95350b0e43d7e4174bcabe74c7cfbe2110c1356a5600dcf32415479fa509115912ce49f44b88562835148e0bfef4ab9e18900e595944e123b45603bb9f01a635c8775ca32454d336ed59e04e2ae8c376b27d82a9c3d5f5b5cb78aa20a2d4520251aa0a339958494458d58ce41c1d7d5cbd1517d3bcc875ff179a33d2cf3d664823b2c1e0642cd9ca3c72caf2c5dd491707965075d6af87488b5e4042d7974d60b76f51d3b0232681ede0108db262685c3b7519b0e4e6e045011f61255e3f4f137508f8547bfdb6c141cdceaff94c3aa1ea76f10080eefbcc4ebcdd805f8facaf157e75e31fbdbe543592dd05a80bbfb07cd8edead760d4069e9cbb8f28b73dbc7ece331006a0587c72686fae85eaf7246c5cec3da2e2dcba0b81a9149504064af71923e13cc29cd71deb466bd4a71a95bd8abaa8e96d67eda27172c8e2339d8ca006ca9430d5959d20930593d0d78727408727b51c81b748c5f68049a6d19a6fe7e7905d254fb9fc2001c18d7f63cc7bf236702d82f2072d9d59a609bc1b5613d0d68d30544ed4d62c899e8b3c5bcdf797fb2b041b36ca8a188370ebf1a78a32b53c1c4d6969e5eaa0e6129543ba782b4a229338f42cf80bb127b5b77a62698111d385a0671a308dc5f8945301e8f9db25f8a252ad906dda8ec430d6b9091d2de70657e58c7874bccfe2a9ae3797e0036ec60beee5d95c978af0bff7ee814383251250f404ff71f0550c61c170b74f7d18eceacd25e113cb34bf7c7e5eacbb515a5a1748d972d1d70edc28f43607d6b27a46be13bdbbb6ad34cac716f16762b58425a02c3f7d461c58cdb4144028ed9ff84af17c9ff2bb79ad252189dc041d07eed476e23787ef70851958d2d60257c883d502ac64b3c09abd8dddba446d1a94d46bc3320ace107f28928f5d5474de949094a31163c826b08d7bb5dd255e907e22b0328026a17d8d90123d0c384761a4d8f3e8e5e13ee2a33ffee93ed65fcdd08852e3fae89f8876c75d212a32a68c17e46f6a468d514785339cd7b3c2f60bbda6fd8ba855d4c838c414c1ce37476ce04d8c60e4f8fbc2350fb75bbea57000874215779dd1c10c2253da036d80b9834cd872cbc575714b826838d2e52eaf85a961fe6921b581c2a72ef794b557b4f0211b8db1ef749d61ec3389f43201a1cab4b03510a7de16b19a6da07fd0add67b3d56ba0fef749d61ec3389f43201a1cab4b03510a7de16b19a6da07fd0add67b3d56ba0f1cb88f6f77ed0b6335d3d8cac4ccef61c9392defaba5bc05fd8af8ad7256217df8c599a32c34bc99bfab783894f095e6978367971f55a23b8e03eb393f0601917f99aa172669093b3f4ed67de5c7770607a745143c5e1729adbaef7ebfd7e3012df5592a6bfa0b4257e2601b647c377e6e4087961885227411b5995ee8e34912b66c8c5a27cbcc33961354dfde9bde303a1b00814297661c00d080488f2240012c9be8f56f0cb234047103d3ac5ed3a92f3006323e09f9e799d7af9a71888c4803b824dc64107e7856d5820dde7178f1f40855a94480024a51453291f12bf0a30dbb4e87c8c37fb1f882aa1baca6f79d065c2888940a504184a442c1048a87449d08330a6c3a9289b7de7d33276bcdf90310fca0ec59d73378e2b4fa65df0b48dfa541c4afd086327dbce23e71ee6b9fd25be3c14236c7fa6c002c909adf697e68b06eb1ec1bf9cae1d3d0ab0910e07751a18b606a56b79fd0b73159dd6e4ef9e146ff10dd3a93236386df627f4e89ce5ea5e5356215caa535173d38b0db535becb3c53bedb1596c6d167b0686a29080b568da0841fc295d74b36ae5f90293af0c548569d9ad3bc86512d98f34f283d99288f62154a4a39557eded9dcbd44b8d18ff0dd55d377ba152cc73451c14b2baaa3940b96b43674bd3b68d6f4519b612cf594884910422c6f73e300dad5e9c3015197bdea6292257ad1e7e52bb255b866ec713bb353adacabb760a2ef51d1476a9966851c7590a733442a614df41dcc7ffd989b55dc4e6bb625eeec93c6d3e16be7fa1b659146dc2f1cdff7c3e7dbcbaffd989b55dc4e6bb625eeec93c6d3e16be7fa1b659146dc2f1cdff7c3e7dbcba4862955a361d697e2a360370bdf03d87012165577ff65dc9ec5367ab8d87f7f6515e4922bf9053eddffb38bcbcd88422f083515b57d641747d8e63567c61cb1a0fe8118ea07bafb42170e05c0b3883ed69709cad95e0d150f09761937ec6a06e0fe8118ea07bafb42170e05c0b3883ed69709cad95e0d150f09761937ec6a06e145a7bf505658bde3810f3f4f0204722d23f16b0e091f2cf1de79991196a00385b47fb821f09280311c4d71f55d7a35514e1384d826126de40a631b45c27733c946cefa1884d1b717ed1bf014d6674dbf70b9d9925a29f226c89b76a516c20f1946cefa1884d1b717ed1bf014d6674dbf70b9d9925a29f226c89b76a516c20f18a516c0a6f546c10371fc1c6c113e91ddd57d5414b6c42892f877b880764ae1793c8b4a39d3c071601c14ae099a11e2d519ef11da759af85e2cb11248c44f1756de0a4ea057640b314f50128ec940da16c13cf5863d4be9f9c6aef6bb8b8997ab931e475a6c84740cb19596dc783a4dff3e08a87ac34ddf8657fe857b81941ba80f42641e6c8ff7785562bf85f2c31561fc32a0661b9652707f295f497c88d28ee1d48493dde02afee10ec3e31350a4fbab81bef0c02a91455759611fa03004fdc8d7ed0caaa5dc2f442f14ad121762598b1ebe7e31bfb04412bf92fccfb6879e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8557605727c568d9bb0a526077be4c6bf645b71aebcbbd8fce4d47b738962bec75af0c62527e7f45a9dc5d4d30705cf8216191cfceeaf77d0b96e7fb39b5f77c6d8dfdf2cc2b8b53aab848d176b96d6eda90350b715fdf9efb2e8cc60945f50e4b479604a8f442ec8bb5054377ab23245eb2b3f733eadbb5bfc0f78e6c79259c09d27212801f6c0556f8aee28836b0e3e6f9be577d774470bd97a209adf15d352473d0aa525488ea37ffae2820db3189a9741a743897cbfc2ce19e7cbca4f7bcf6c4cff091d19e0ef691f7aac91223fb782d9dfedfbe3aaf437c4a5eb7209cdc58b94d109be2faf8923794da261515050d326384b68cf7ff3050f27503f6403c7146b98a7a6005050f347461fc8f27778cda8991e915fea301ae946be338d660a586b2873e971b30a9629376adc27893aa5eda2b92aa06e8ea394acaefc8b91732ef4a7c2c928745b0c610814710dd23c6e5258b20798b45648c8f70a9c7660811bf5c623bb6559d1fa7143812082177f5bc1fa9d5f7a6422daa43255dbe536cbdf75c805c6464af417593c199128e2ced66c8f02cbed5f9de671ecac4b8867cd19999a901d9e5e99dd7f9abf20007dacf23006203e4bcbeb062f34ffc387d1304c26f289c904a9fbfd1a0d25b1d086258d34f76afd179f74adf28841c202178c074358fdfcd213e05abf058ee7574d6d3487ce9bed74d02f4372b5eae1f3f9f1f331f6535f6f498b3c8d9acfb91d6ded1ec84ab9a4032881baf99cc9e53b5c17a1b2c1e8262c1116c0bb9e99d5a59e59dd348baad49cf43ce7483c5ccfcd9a536edb2df9e60f556dc24bff3ab00ea4dc2ab50c6e889130db6ab7314a55a7fc28409efc1fc2a581eb6da028b0a9e474e4e4c802a55495d23733e40099f8fa33ba3946d146905273692e484fa3d99f0af2c82140efc3dd752cbea2190fff0c6b596c6b42d2824cf79d6041072da07710117eb1a152c9962a73a2c559907421aec4ef7680dcc4bf51f91dcf1b67664b1b025ac8e6cb86cf588d5e3dbedd5281685de2ee21f56e60a2f9ca46fd8eddc31e0ec077dd9d51d439848a246cf487952d2d677d53edeb3ad48b214bb9aa2a83988afe6682684355f575812eeba87e054a8f727d53edeb3ad48b214bb9aa2a83988afe6682684355f575812eeba87e054a8f7208ab4102790a260fb56c93e29ae7f1c09336edd9c4cde02d6235fa940affc42b08ab4102790a260fb56c93e29ae7f1c09336edd9c4cde02d6235fa940affc42b7b83b682146518801060685bfc220e3c84ab17e1fd27657562752f49a6dde47a6926931631d3c484fc9d3982a786fdccf8b901083a6f1b7dddb91a8116ee70e710c90243eabbd54c9ec14137e0a9a8eead48b099628c97b5303a301dbee741d110c90243eabbd54c9ec14137e0a9a8eead48b099628c97b5303a301dbee741d13a63b55345e4ef843bc05c89bd2a13deeeb306e32731bc39b6792156ae80f91e3ed86aefe876c002d978466dd28209a6edb92e90f2568a5e64c534cec9907e6cda26463b8b2f993bda4397a037f01b63321f5abd6de3664e59535c733d00b0c2cb2bba6d48d27b157f601664b452728314570af5cd9bb16b633d438aea5defa2bd28dbfb8dff0116089a370cf7899a282862c15845a7bdc17eb4c85d6a168271e7696f429c403a826924dec79cb35c644ba65b9a1410dfd0322e6315b438b01fecdbf8193dc5140b57cc141f6b609d2aafd7770f03c288aa8a1c3cb7b7999198374fc7ad3b22c22e921dc754435f55bc24562ff778a3dba75c514b8e793beafde7f8e832236d1e61eeb117dd0dded185ce3cbddfa9aa5ece2295844a4e5469defdfd0843b2448da416888bd55dd858190d29347706b789e3755495ac8ef892c9660649f9df1353b28ea62d5cdeb49ee85489afb2a393db43d4f22ba9ac74d2fdbf753532bb4829c391ba70879e3eb58a59ebf37f2b841e415d7e8cc5481655047faa6e105a0dffa93ab722d55f62fa66551bcd649e4f106da2077051c842bdf39b64519f0929632a8285619e6caeb913990085922ab5afa89f0cddd4e6256ff52030a9b37c77e7e99c59c93ea349f3d0f8db501551275d6fc2212bae0f6ff455503a38def4715c5d6afaa05700b6b100d852c10964e42c26a895bcc0db1abc244a4a6dc3e7de1d5a79c36e46c7be3113c37d280e01b81755dbcf5c8b51ee7f3ba657cdfb773f985bdc6f3cc9fd23e378945865fa357a150b653098320aff9e41bbc5f848417f151212f00a7744ce34e277c6e5bc7759ff38dd3b90dca48bc1e7345098a626a8ad888cb44d70e88e6d8bc8aab1e5f0e80456dd95709712a07f228177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643ad6b2a6122904d0e2a0e0e6aaea59db2c5a39dae2d81717c3cca1e0a08946575853e638a0a2675aaabedee23ebef484abec18e2754d6e87775df5fef7118ddc6rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootosc-1.9.0-150400.10.9.1.src.rpmconfig(osc)oscpython3-osc@@@     /bin/bash/usr/bin/python3.6config(osc)python(abi)python3-cryptographypython3-rpmpython3-urllib3rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.9.0-150400.10.9.13.63.0.4-14.6.0-14.0.4-14.0-15.2-1obs-service-source_validator0.394.14.3gM@f@fff@f~fM@fee؈eM@em@em@e]@eC@e7e1@e-%e% 0 - Clarify 'list' command's help that that listing binaries doesn't contain md5 checksums - Improve 'log' command: produce proper CSV and XML outputs, add -p/--patch option for the text output - Allow setlinkrev to set a specific vrev - Document '--buildtool-opt=--noclean' example in 'build' command's help - Fix handling the default package argument on the command-line - Configuration: - Document loading configuration from env variables - Connection: - Don't retry on error 400 - Remove now unused 'retry_on_400' http_request() option from XmlModel - Revert "Don't retry on 400 HTTP status code in core.server_diff()" - Revert "connection: Allow disabling retry on 400 HTTP status code" - Authentication: - Update SignatureAuthHandler to support specifying ssh key by its fingerprint - Use ssh key from ssh agent that contains comment 'obs=' - Use strings instead of bytes in SignatureAuthHandler - Cache password from SecretService to avoid spamming user with an accept dialog - Never ask for credentials when displaying help - Remove unused SignatureAuthHandler.get_fingerprint() - Library: - Add rootless build support for 'qemu' VM type - Support package linking of packages from scmsync projects - Fix do_createrequest() function to return None instead of request id - Replace invalid 'if' with 'elif' in BaseModel.dict() - Fix crash when no prefered packages are defined - Add XmlModel class that encapsulates manipulation with XML - Add obs_api.Person.cmd_register() for registering new users - Fix conf.get_config() to ignore file type bits when comparing oscrc perms - Fix conf.get_config() to correctly handle overrides when env variables are set - Fix output.tty.IS_INTERACTIVE when os.isatty() throws OSError - Improve cmdln.HelpFormatter to obey newline characters - Update list of color codes in 'output.tty' module - Remove core.setDevelProject() in favor of core.set_devel_project() - Move removing control characters to output.sanitize_text() - Improve sanitize_text() to keep selected CSI escape sequences - Add output.pipe_to_pager() that pipes lines to a pager without creating an intermediate temporary file - Fix output.safe_write() in connection with NamedTemporaryFile - Modernize output.run_pager() - Extend output.print_msg() to accept 'error' and 'warning' values of 'to_print' argument - Add XPathQuery class for translating keyword arguments to an xpath query - Add obs_api.Keyinfo class - Add obs_api.Package class - Add Package.get_revision_list() for listing commit log - Add obs_api.PackageSources class for handling OBS SCM sources - Add obs_api.Person class - Add obs_api.Project class - Add obs_api.Request class - Add obs_api.Token class - Allow storing apiurl in the XmlModel instances - Allow retrieving default field value from top-level model - Fix BaseModel to convert dictionaries to objects on retrieving a model list - Fix BaseModel to always deepcopy mutable defaults on first use - Implement do_snapshot() and has_changed() methods to determine changes in BaseModel - Implement total ordering on BaseModel - Add comments with available attributes/elements to edited XML - Refactoring: - Migrate repo {list,add,remove} commands to obs_api.Project - Migrate core.show_package_disabled_repos() to obs_api.Package - Migrate core.Package.update_package_meta() to obs_api.Package - Migrate core.get_repos_of_project() to obs_api.Project - Migrate core.get_repositories_of_project() to obs_api.Project - Migrate core.show_scmsync() to obs_api.{Package,Project} - Migrate core.set_devel_project() to obs_api.Package - Migrate core.show_devel_project() to obs_api.Package - Migrate Fetcher.run() to obs_api.Keyinfo - Migrate core.create_submit_request() to obs_api.Request - Migrate 'token' command to obs_api.Token - Migrate 'whois/user' command to obs_api.Person - Migrate 'signkey' command to obs_api.Keyinfo - Move print_msg() to the 'osc.output' module - Move run_pager() and get_default_pager() from 'core' to 'output' module - Move core.Package to obs_scm.Package - Move core.Project to obs_scm.Project - Move functions manipulating store from core to obs_scm.store - Move store.Store to obs_scm.Store - Move core.Linkinfo to obs_scm.Linkinfo - Move core.Serviceinfo to obs_scm.Serviceinfo - Move core.File to obs_scm.File - Merge _private.project.ProjectMeta into obs_api.Project - Spec: - Remove dependency on /usr/bin/python3 using %python3_fix_shebang macro (bsc#1212476)- 1.6.2 - Command-line: - Fix 'branch' command to allow using '--new-package' option on packages that do not exist - Fix 'buildinfo' command to include obs:cli_debug_packages by default - Fix 'buildinfo' command to send complete local build environment as the 'build' command does - Allow `osc rpmlint` to infer prj/pkg from CWD - Propagate exit code from the run() and do_() commandline methods - Give a hint where a scmsync git is hosted - Fix crash in 'updatepacmetafromspec' command when working with an incomplete spec - Authentication: - Cache password from SecretService to avoid spamming user with an accept dialog - Never ask for credentials when displaying help - Library: - Support package linking of packages from scmsync projects - Fix do_createrequest() function to return None instead of request id - Replace invalid 'if' with 'elif' in BaseModel.dict() - Fix crash when no prefered packages are defined- remove dependency on /usr/bin/python3 using %python3_fix_shebang macro, [bsc#1212476]- 1.6.1 - Command-line: - Use busybox compatible commands for completion - Change 'wipe' command to use the new get_user_input() function - Fix error 500 in running 'meta attribute ' - Configuration: - Fix resolving config symlink to the actual config file - Honor XDG_CONFIG_HOME and XDG_CACHE_HOME env vars - Warn about ignoring XDG_CONFIG_HOME and ~/.config/osc/oscrc if ~/.oscrc exists - Library: - Error out when branching a scmsync package - New get_user_input() function for consistent handling of user input - Move xml_indent, xml_quote and xml_unquote to osc.util.xml module - Refactor makeurl(), deprecate query taking string or list arguments, drop osc_urlencode() - Remove all path quoting, rely on makeurl() - Always use dict query in makeurl() - Fix core.slash_split() to strip both leading and trailing slashes- 1.6.0 - Command-line: - The 'token --trigger' command no longer sets '--operation=runservice' by default. - Change 'token --create' command to require '--operation' - Fix 'linkdiff' command error 400: prj/pac/md5 not in repository - Update 'build' command to support building 'productcompose' build type with updateinfo.xml data - Don't show meter in terminals that are not interactive - Fix traceback when running osc from an arbitrary git repo that fails to map branch to a project (boo#1218170) - Configuration: - Implement reading credentials from environmental variables - Allow starting with an empty config if --configfile is either empty or points to /dev/null - Implement 'quiet' conf option - Password can be an empty string (commonly used with ssh auth) - Connection: - Allow -X HEAD on osc api requests as well - Library: - Fix credentials managers to consistently return Password - Fix Password.encode() on python < 3.8 - Refactor 'meter' module, use config settings to pick the right class - Convert to using f-strings - Use Field.get_callback to handle quiet/verbose and http_debug/http_full_debug options - Implement get_callback that allows modifying returned value to the Field class - Add support for List[BaseModel] type to Field class - Report class name when reporting an error during instantiating BaseModel object - Fix exporting an empty model field in BaseModel.dict() - Fix initializing a sub-model instance from a dictionary - Implement 'Enum' support in models - Fix Field.origin_type for Optional types - Drop unused 'exclude_unset' argument from BaseModel.dict() method - Store cached model defaults in self._defaults, avoid sharing references to mutable defaults - Limit model attributes to predefined fields by forbidding creating new attributes on fly - Store model values in self._values dict instead of private attributes - Spec: - Recommend openssh-clients for ssh-add that is required during ssh auth - Add 0%{?amzn} macro that wasn't usptreamed- 1.5.1 - Library: - Avoid using '/public/' API routes - Update 'osc.util.models' to avoid including lazy defaults in the rendered man pages - Spec: - Simplify distro-specific macros - Use %{?rhel} macros- specfile change : use rhel version macros wherever 'fedora' macro is also used + Build manpages on RHEL distros where argparse-manpage is available and where python3-sphinx is available and cleanly installable without requiring environment(modules) from EPEL + use fdupes to deduplicate python bytecode on RHEL distros which support it- 1.5.0 - Command-line: - Change 'rdiff' command to display diff for _project if no package is specified - Update 'build' command with initial support for 'productcompose' build type - Change 'build' command to disable preinstall images in rootless builds - Configuration: - Fix conf.write_initial_config() to use read_file() instead of deprecated readfp() - Other: - Support installing osc into virtualenv - Spec: - Recommend 'build' on openSUSE/SLE and 'obs-build' on all other distros- 1.4.4 - Command-line: - Fix autocompletion for new locations - Configuration: - Fix apiurl_aliases handling in OscOptions.__getitem__ - Fix crash when there's no [general]/apiurl option in the config file- fix bash completion suffix (.bash instead of .sh) (bsc#1216531)- 1.4.3 - Configuration: - Allow undefined fields in Options and HostOptions- 1.4.2 - Command-line: - Change NoPBTextMeter to display no output at all - Fix retrieving the configured user in 'user' command - Configuration: - Restore 'passx' host option that contains an obfuscated password - Fix retrieving a password in case a function returns another callable - Fix retrieving config values in core.vc_export_env()- 1.4.1 - Configuration: - Always display apiurl when asking for credentials - Ask for new credentials when user is missing from an apiurl section in the config file - Library: - Fix testing revision for being empty - Fix core.change_request_state_template() to always return a string - Tests: - Replace 'git init -b' with 'git init' and 'git checkout -b' - Spec: - Run fdupes after install - List the python sitelib paths explicitly - Mark csh completion files as configs - Own zsh completion dirs to mute rpmlint errors - Move bash completion from /etc to /usr/share- 1.4.0 - Command-line: - Add rootless build support to 'build' command for 'kvm' and 'podman' vm types - Print a hint to clean the build root after a failed build - Avoid adding a newline to prompt in 'wipe' command - Fix 'build' command to pass '--vm-type' option to the underlying build tool - Add '--just-print-buildroot' option to print build root path and exit to 'build' command - Add support for keep_packages_locked on request revoke - Import zsh completition made by Holger Macht and improve it - Use XDG locations in completion - Fix 'search' command to resolve '-B .' to the current project - Add '-M/--multibuild-package' option to 'checkconstraints' command - Allow constraints file with remote request in 'checkconstraints' command - Unify how the 'commit' and 'build' commands work with '--noservice' option - Fix 'request show' command to print superseded_by information - Fix 'service' command to support already documented 'r' abbreviation for 'run' - Configuration: - Implement 'exclude_files' and 'include_files' config options that allow skipping files in the 'checkout' command - Fix api_host_options for custom CAs (cafile and capath options work again) - Switch 'osc.conf.config' from dict to Options class with type checking - Rename conf.Options.build_type to vm_type to be consistent with obs build and osc --vm-type option - Update list of supported vm_type values in conf.Options.vm_type - Remove any duplicated code loading configuration from ENV - Library: - Add 'osc.util.models' module implementing an alternative pydantic-like data validation - Add 'osc.util.xdg' module for handling XDG paths - Fix handling empty vm_type in Store.last_buildroot - Spec: - Install zsh completion - Build and install oscrc man page- 1.3.1 - Command-line: - Fix string + int concatenation errors in 'build' command by using f-strings instead - Fix '--all' option in 'rebuild' command - Fix 'build' command when '--alternative-project' option is specified and the git branch cannot be mapped to a project - Stop suggesting that the working directory is git/mercurial/svn/cvs - Be helpful in deprecating commands - Configuration: - Add more config options among integer options - Library: - Fix GitStore to error out properly if there is no 'origin' remote in the git repo - print_buildlog: Remove control characters from build log before printing (CVE-2012-1095)- 1.3.0 - Command-line: - Add experimental support of Git SCM to the 'build' command - Add experimental support of Git SCM to the 'service' command - Make 'meta' command capable of editing attributes - Change '--add' option in 'meta attribute' command to skip duplicate values - Add an interactive option to display build log in 'request list -i' command - Add '--setopt' option for setting config options from the command-line - Fix '--prefer-pkgs' option for noinstall="1" packages in kiwi builds - Change 'checkout' command to print open requests only when running in an interactive terminal - Enhance '--force' option description in the 'request' command - Connection: - Fix crash when HTTP_PROXY env contains no auth - Library: - Add 'git_scm' module for handling packages that live in git scm rather than usual obs scm - Change pop_project_package_from_args() to use get_store() to support Git SCM - Change osc.build module to use 'store' object instead of calling core.store_*() functions - Use alternative project if specified in parse_repoarchdescr() - Fix xml indent() on Python 3.6 - Fix less pager by adding '-R' to LESS env - Improve print_msg() and migrate some arbitrary prints to it- 1.2.0 - Command-line: - Add 'repo' command and subcommands for managing repositories in project meta - Extend 'browse' command to open requests in a web browser - Add highlighting for 'osc diff' and similar commands - Fix 'api' command to stream output to avoid running out of memory - Fix printing utf-8 characters to stdout - Connection: - Fix ValueError: Cannot set verify_mode to CERT_NONE when check_hostname is enabled - Authentication: - Correctly handle passwords with utf-8 characters - Library: - Fix crash when submiting a SCM package which has no _link - Fix local service execution of scmsync packages - Detect target package by its full name, instead of assuming its origin is identical to the source package type - Other: - Spell openSUSE correctly- 1.1.4 - Command-line: - Change 'review list' command to display open requests (state: new, review, declined) - Fix running osc in an AppImage by switching to the correct working directory - Handle ProtocolError exception - Library: - Add 'req_states' parameter to osc.core.get_review_list() - Connection: - Fix grabber to work with old urllib3 versions that do not contain URLSchemeUnknown exception- 1.1.3 - Command-line: - Backup edited messages and notify user about them when osc errors out - Consider only open requests when listing requests with a given review state - Fix 'diff' command when no files are specified - Configuration: - Add glob support to the 'trusted_prj' config option - Library: - Fix core.xmlindent() to work with ElementTree objects- 1.1.2 - Command-line: - Add '--buildtool-opt' option passing options to underlying rpmbuild to the 'build' command - Fix 'diff' command to support diffing selected files only - Identify inherited packages in the 'dependson' command output - Bring the '--debug' option back to the 'buildinfo' command - Fix 'buildhistory' command by setting the type of the '--limit' option to int - Library: - Fix a traceback when failed to unlock a keyring - Don't retry on 400 HTTP status code in core.server_diff() - Clean-up the '.old' folder if an exception happens - Document 'popt' attribute in the _link template - Fix build.get_repo() to return only directory that contains 'repodata/repomd.xml' - Connection: - Retry on receiving the following HTTP status codes: 400, 500, 502, 503, 504 - Allow disabling retry on 400 HTTP status code - Fix urlgrab to skip mirrors with invalid scheme- 1.1.1 - Command-line: - Fix 'creq' command that wasn't working at all - Fix 'ls' command when listing all projects by setting project argument to '/' - Fix regression: Run interactive config setup on missing config or credentials - Append plugin dirs to sys.path to allow loading modules installed next to the plugins - Do not recurse into subdirs when loading plugins - Configuration: - Display apiurl when asking for a username or a password - If apiurl is not set in interactive_config_setup(), use apiurl from DEFAULTS - Library: - Decode entities in HTTPError message body- 1.1.0 - Command-line: - New class-based commands - Sort commands before printing help - No longer read plugins from /var/lib/osc-plugins - Configuration: - Do not error out on setting oscrc permissions if the file is owned by another user - Library: - Restore 'include_request_from_project' conf option functionality - Simplify how babysitter works with options and config - Prefer f-strings over c-style string expansion- 1.0.1 - Configuration: - Fix a cut&paste error in setting 'disable_hdrmd5_check' config option - Connection: - Set Content-Type of POST requests without data to 'application/x-www-form-urlencoded'- 1.0.0 (full changelog to the latest stable version 0.182.0) - Command-line: - Use '.' as a wildcard that resolves to a project or a package name from the current working copy, for example 'osc rdiff ./. -c ' - Add 'create-pbuild-config' (cpc) command - Add '--disable-build' option to the 'branch' command - Add '--disable-build' option to the 'linkpac' command - Add '-X/--extra-pkgs-from' option to the 'build' command - Add '--add' option to the 'meta' command that appends new values to the existing values - Replace '-q/--hide-legend' option in 'prjresults' command with global '-q/--quiet' option - Replace '--debug' option in the 'getbinaries' command with '--debuginfo' to avoid conflicts with the global '--debug' - Replace '--verbose' option in the 'build' command with '--verbose-mode' to avoid conflicts with the global '--verbose' - Replace '--version' option with 'version' command - Enable forwarding requests to the parent projects in 'rq list -i' and 'sr accept' commands - Make use of '-M/--multibuild' option consistent across the commands - Enhance '--force' option in the 'commit' command to allow deleting packages even if other packages depend on them - Print URLs and xpaths in the debug rather than the verbose mode - Fix 'add' command for github /archive/ URLs - Fix 'buildhistory' command to produce proper output using build_table() and a CSV writer - Fix 'linkpac' command to avoid copying a lock from a locked package to the target package - Fix 'setlinkrev' command to write a log message on setting a revision - Fix 'submitrequest' command not to error out on using an alias to apiurl - Fix 'update' command on project level for scm packages - Fix '--mine' option in the 'request' command to show only requests created by the user - Fix the documentation url in the 'maintenancerequest' and 'createincident' commands - Remove '--skip-validation' option from the 'commit' command - Remove '--oldpkg', '--oldprj' options from the 'rdiff' command - Remove 'create', 'list', 'log', 'show', 'decline', 'accept', 'delete', 'revoke' subcommands from the 'submitrequest' command - Remove '--seperate-requests' option from the 'submitrequest' command - Remove '--raw' option from the 'develproject' command - Remove '--maintained' option from the 'search' command - Remove 'deleteprj' command - Remove 'deletepac' command - Remove 'editmeta' command - Remove 'results_meta' command - Remove 'rlog' command - Remove 'rprjresults' command - Remove 'rresults' command - Configuration: - Add 'project_separator' config option - Add 'disable_hdrmd5_check' config option to ignore hdrmd5 mismatches - Remove 'plaintext_passwd' config option - Library: - Add Store class that will replace store_{read,write}* functions - Remove 'GnomeKeyringCredentialsManager' and related code - Remove Request.get_creator() method - Replace unmaintained cmdln.py with a custom code based on argparse - Replace core.findpacs() with Package.from_paths() and Package.from_paths_nofail() - Drop Python 2 support, Python 3.6 is the lowest supported version - Code cleanups, following PEP 8 and the latest best practices now - Improve handling of hdrmd5 mismatches - Handle uncompressed Debian packages - Replace arbitrary XML escaping code with xml_escape() - Fix race condition in using .old directory in Serviceinfo.execute() - Fix manual run of source service - Connection: - Switch http_request() to urllib3 and cryptography (drop M2Crypto dependency) - Warn when using HTTP connection, make HTTPS the default - Send HTTP header Accept: application/xml - Wait between retries - Authentication: - Support signature (ssh) auth including ssh-agent forwarding - Lock cookiejar to prevent unnecessary signature auth by waiting for a session cookie - Print user and apiurl when prompting for a password - Fix a crash when deleting a password - Known issues: - Commandline option values cannot start with '-', for example: osc build -x -vim Background: This is a limitation of underlying Python's argparse How to fix: Use '=' to join the option with its value: osc build -x=-vim URL: https://github.com/openSUSE/osc/issues/1227 - Commandline positional arguments no longer recognize '/' as a universal argument separator Background: This is an attempt to bring some consistency into argument parsing, reducing number of separators and value combinations How to fix: Separate / from / with a space URL: https://github.com/openSUSE/osc/issues/1272- 1.0.0 - Revert "Remove the '-A' option from the 'maintainer' command" - core.get_request_list: Remove deprecation warning - meta attribute: Add --add option to append values to the existing list - Replace arbitrary XML escaping code with xml_escape() - build: New option 'disable_hdrmd5_check' to ignore hdrmd5 mismatches - commit: Pass --force down to delete_package- 1.0.0b5 - rq list: Fix a traceback when --type is not specified - core.checkout_package(): Use pathlib.Path - connection: Retry all, not just default allowed methods - connection: Wait between retries- 1.0.0b4 - Fix regressions to osc 0.x: - mv: Fix traceback due to missing target file name - rm: Fix creating a Package object by providing multiple files on the command line - copypac: Fix downgrading a package to an old revision - buildhist: Fix running from a package checkout - rebuild: Fix running from a package checkout - rdiff: Fix traceback when new project is not specified - rq list: Fix passing values of the --type option - build: Fix reading extra-pkgs from oscrc - Support withfullhistory in osc.core.get_request_list again - Fix osc.get_request_list ignoring the req_type parameter - Revert "Do not list declined requests by default" - connection: Mute the "Converted retries value" debug message - connection: Fix traceback on loading an invalid cookiejar file - connection: Save cookiejar only when there's a Set-Cookie header in the response - Add oscerr.ProjectError class needed by core.delete_project() - Fix all errors reported by pylint - spec file: - drop upstreamed patches: - 1217.patch - 1228.patch - Recommend python3-distro - needed for setting the default editor by distro- add 1228.patch to fix regressions in get_request_list - add 1217.patch to fix correct variable (prj instead of project)1.0.0b3 - add create-pbuild-config (cpc) command which allows to create a working config for pbuild tool based on OBS server side data - branch: Add --disable-build option - linkpac: Add --disable-build option - linkpac: Fix linking a locked package by not copying the lock to the target package - sr: Do not error out on using an alias to apiurl - rq: Fix the -M/--mine option to show only requests created by the user - rq list: Avoid conflict between --all and --state options - rq list: Fix traceback when there's no search criteria - rq list -i: Enable forwarding requests to the parent projects - rq show: Improve output - sr accept: Enable forwarding requests to the parent projects - setlinkrev: Write a log message on setting a revision - buildhistory: Produce proper output using build_table() and a CSV writer - buildinfo: Bring the -d/--debug option back - build: Bring the --verbose' option back as --verbose-mode=MODE to avoid conflicts with global --verbose - service: Add verbose option for running local services - service: Fix manual run of source service - conf: Avoid crash when deleting a password - connection: Fix the '9 - review the server certificate' option in cert trust prompt - Handle uncompressed Debian packages - Fix osc add for github /archive/ URLs - Handle empty EDITOR=/PAGER= env variable properly - Mute ssl/tls deprecation warnings - Add "--extra-pkgs-from" ("-X") option to osc build. - Fix a scenario when OBS sends unexpected md5s - Replace core.findpacs() with Package.from_paths() and Package.from_paths_nofail() - Always list requests with 'new,review' states by default - Change get_request_collection() not to list declined requests by default - Add information about osc vc using the EDITOR envar to the help output - Improve argument handling in many commands - Implement Store class handling '.osc' dirs, migrate some code to it - Code cleanups - Deprecated: - core.get_request_list() function - core.store_write_apiurl() function - core.store_read_scmurl() function - core.store_read_apiurl() function 1.0.0b2 - Support ssh-agent forwarding - ssh auth: Avoid password prompt when using TransientCredentialsManager - Properly handle missing ssh-keygen and ssh-add - Add ssh-keygen as a recommends for ssh MFA authentication - Print user and apiurl when prompting for a password - Pass apiurl to all auth handlers - Do not list declined requests by default - Fix 'osc up' on project level for scm packages - Lock cookiejar to prevent unnecessary signature auth - Process input with configurable project separators - Add project_separator to config file - Fix race condition in using .old directory in Serviceinfo.execute() - Send HTTP header Accept: application/xml - Print URLs and xpaths in debug rather than verbose mode - Inject no-op print() into http.client when http debugging is off - Reset "file current position" on errors in HTTP requests - Create ~/.config/osc/trusted-certs if not exists - conf: Convert defaults to their expected types - Document `build` repo selection logic - Add debug print for REPO (and desc just in case) - Shortened `build` help and add debug prints - Replace unmaintained cmdln.py with a custom code - Allow intermixing positional and optional args - Add global options to subcommands so they can be specified in any place - Remove the '-A' option from the 'maintainer' command - Replace the '-q/--hide-legend' option in 'prjresults' command with global '-q/--quiet' option - Remove duplicated --debug and --verbose options - Add version command to print the used version - Remove deprecated 'plaintext_passwd' config option - Remove deprecated 'GnomeKeyringCredentialsManager' and related code - Remove deprecated '--skip-validation' option from the 'commit' command - Remove deprecated '--oldpkg', '--oldprj' options from the 'rdiff' command - Remove deprecated subcommands 'create', 'list', 'log', 'show', 'decline', 'accept', 'delete', 'revoke' from the 'submitrequest' command - Remove deprecated '--seperate-requests' option from the 'submitrequest' command - Remove deprecated '--raw' option from the 'develproject' command - Remove deprecated '--maintained' option from the 'search' command - Remove deprecated 'rlog' command - Remove deprecated 'rprjresults' command - Remove deprecated 'rresults' command - Remove deprecated 'results_meta' command - Remove deprecated 'deleteprj' command - Remove deprecated 'deletepac' command - Remove deprecated 'editmeta' command - Remove deprecated Request.get_creator() - Remove PROJ_PACK.txt file, move its content to GitHub issue #1099 - Remove TODO file, move its content to GitHub issue #1098 - Remove fuse support - Remove unused run_bandit.sh - Remove obsolete osc_expand_link.pl - Remove unused icons - Replace imp with importlib - Move files from dist/ to contrib/ - Move osc.fish under contrib/ - Move python package metadata from setup.py to setup.cfg - Move __version__ from osc.core to osc - Fix resource warnings (unclosed files) - 1.0.0b1 - drop Python 2 support - switch http_request() to urllib3 and cryptography (drop M2Crypto dependency) - warn when using HTTP connection, Make HTTPS the default - add XDG compatible location for osc plugins - replace osc-wrapper.py with entry_points. - core: add functions for glob matching of multibuild flavors - fix multibuild packages in all osc commands where applicable - do not ask for login for -h,--help - move format_table() to util.helper - code cleanups- 0.182.1 - Fix crash due to list having no copy attribute on python2 - Fix crash in ssh auth when .ssh directory is missing - 0.182.0 - fix build on SLE12 / python 2.7 - SSH auth: Fix getallmatchingheaders() output to correspond with headers.get_all() - send HTTP header Accept: application/xml - git_version: return version from the source code if there's no matching tag - spec file: - Revert to python2 on SLE12 - Recommend openssh for ssh key auth- Fix M2Crypto package name on SLE12 - Do not build with python3.6 - it does not have libraries nothing provides python36-M2Crypto > 0.19 nothing provides python36-chardet- fix building on distros that are not openSUSE or SLE- build against python3.6 for SLE12 and older- 0.181.0 - fix crash when 'pass' is not set in the config file - add missing attributes to Package when scm_url is set - fix failure to create config in current dir - update list of considered file names for ssh key autodetection - allow users to prefer ssh key over password auth - ssh: recognize gpg keys (yubikey usage) - fix operating on _project meta - revert "interpretation of string literals in messages" that broke unicode handling - fix product build rpm caching - enable md5 revisions in osc log - parseRevisionOption(): raise an exception on invalid revisions- 0.180.0 - warn when trying to commit a prj/pac managed in scm - fix crash on "osc up" for git based package/projects - don't traceback on invalid credentials manager - improve README, rename it to README.md - declare OscHTTPSignatureAuthHandler as a new-style class - remove illegal character in comment- 0.179.0 - signature (ssh key) authetication fixes (RSA key support, skip binary files) - commandline: handle calls without arguments gracefully - use percent-quoted url for download url generation - osc co/up: highlight pending requests' header - get_results(): fix check for empty details - another exception for github URLs for "osc add" - update Sphinx configuration, documentation fixes - make Sphinx optional in setup.py not to break package builds - support flavors in aggregatepac - check if repos provided to aggregatepac command exist - several coding style fixes- 0.178.0 - EXPERIMENTAL: git repository handling * init command is working inside of a git repository * downloadassets command fetches references assets from build description * checkout is cloning from git - EXPERIMENTAL: signature (ssh key) authetication * allow to configure 'sshkey' option in the config * try to guess ssh key from the keys added to ssh-agent * rename OscHTTPBasicAuthHandler to OscHTTPAuthHandler * simplify bad auth retry workaround needed for old python versions - add support for building preinstall images - add support for building Helm charts - show the md5s that are failing to validate after fetching a package - add missing space to copypac completion - never require login in the help command - linkdiff: raise an exception when an added file is missing - run tests via calling 'setup.py test' - several coding style fixes - spec file: - run tests via calling 'setup.py test' - disabled tests in debian.rules- 0.177.0 * switch to python3 in osc-wrapper and make python3 explicit * allow formatting of the sccache uri * show repository state and details * a few minor fixes and improvements in credentials handling * order credential managers by priority * kernel keyring is now supported as credential manager * support regex based name filtering in core.get_prj_results() * revision parsing parseRevisionOption(): cleanup and make logic consistent * use sr_ids[0] for superseding (fixes issues with superseding requests containing many packages * download logs and metadata in subdirs named by packages when osc getbinaries is issued on project level or in multibuild case - spec file: * recommed python-keyring-keyutils for new kernel keyring backend- 0.176.0 * add -F option to osc submitreq * add --verbose option to build command * fix getbinaries command to fetch also multibuild packages * fix getbinaries -M/--multibuild-package option usage * skip fetching metadata and logs in the getbinaries command * do not download a bdep with a hdrmd5 from the api by default * re-download file from API when hdrmd5 doesn't match * honor --download-api-only option * remove Windows from the supported operating systems * fix license in setup.py * add py3.10 and py3.11 to the classifiers in setup.py * use the latest version of COPYING file from gnu.org * fix crash on terminal resize during download * do not fail with a traceback in case of a config error * preserve oscrc symlink when writing conf file * escape % character in binary download URLs * fix printing paths to built debian packages- 0.175.1: * Modified SPEC file to be more compatible with KOJI and COPR. * * Modified SPEC file to use python3 for CentOS/RHEL 7 * * Modified SPEC file use fedora/rhel version macros. * * Changed perl to sed in %install section of SPEC file.- 0.175.0: * do not crash when running "osc search --binary --verbose foo" * don't run source services when building outside of an OSC package working copy * fix XDG_CONFIG_HOME * offer a force ("f") choice in metafile.edit's error handling code path * fix XPath used in search requests * add support for creating a workflow token via "osc token" * handle missing os.sysconf more gracefully * detachbranch: remove _link when link target got removed * improve error message in case of an URLError * fix downloading from mirrors * avoid sending entire projects on "osc mr" * fix hdmrd5 check of local cached files * improve logic for conffile mode handling- 0.174.0: * fix password deletion via "osc config -d pass" * support changing the password store via "osc config - -select-password-store") * support slash syntax in osc browse ("osc browse prj/pkg" is equivalent to "osc browse prj pkg") * fix the commit of a frozen package wc * fix local product builds using obsrepositories:/ directives * print a meaningful message when trying to a commit a non-existent package- force Mageia >= 8 builds to python3; python2 is deprecated in Mageia 8 and up.- 0.173.0: * add showlinked command to show all references of packages linking to a given one * add build --shell-after-build flag. It can also be set via .oscrc. * add build --stage flag. Useful for example for fixing file lists and just running the install section to see the result of it (use --stage=i=). Check the help for more details. * allow to run build script as non-root, by setting su-wrapper empty => osc is not guessing anymore if user builds are wanted * add support for cross arch local build using a sysroot * support slash notation in "osc creq -a args" * add "--force" option to the "osc add" command (can be used to override the exclude_glob config option) * support the commit of arbitrary sized files * add support for sccache- Install macros.osc to %{_rpmmacrodir}, not to /etc/rpm.- reformat spec with a recent version of the obs-service-format_spec_file service- 0.172.0: * support --lastsucceeded/--last-succeeded in "osc buildlog", "osc remotebuildlog" + friends (perform the corresponding operation on the build log of the last successful build) * fix pypi deployment via Travis CI * several fixes in request related code paths (no double html_escape of a request's description etc.) * support local builds in a systemd-nspawn container * fix potential TypeErrors+UnicodeEncodeErrors in the util.cpio and util.ar modules * support local flatpak builds (requires a recent build version) * "osc init " works for a non-existent (server-side) project * .old dir support for source services so that some services have access to the results of a previous service run- 0.171.1 * maintainer search: lookup via package name by default and binary as fallback * fix crash on console resize when downloading files during build * add proper repourls to osc reporuls * new command osc releaserequest: This command is used to transfer sources and binaries without rebuilding them. It requires defined release targets set to trigger="manual". * some improvements on output of help and error messages- 0.170.0 * fix code for python3.8 and python3.9 * remove dead code * fix tests * don't use chardet to guess encoding. utf-8 or latin-1 is now assumed This will speed up decoding (bsc#1173926) * escape sequences are interpreted correctly on -m osc sr -m "1st line\n2nd line" results in 1st line 2nd line * add status filter to osc results * add --brief to osc prjresults Gives: build openSUSE_Leap_15.1 x86_64 succeeded build openSUSE_Leap_15.0 x86_64 succeeded build openSUSE_Leap_15.0 armv7l unresolvable build openSUSE_Factory_ARM armv7l succeeded build openSUSE_Factory_ARM aarch64 succeeded * osc prjresults -s : status can now be the long text like "succeeded", "failed" * improve error message if osc service is not run in working directory * web links are now also printed for osc mr when print_web_links=1 is set - Spec: * re-enable test suite- Really fix path for fish completion file to /usr/share/fish/vendor_completions.d and fix its permissions.- 0.169.1 * add --ccache option to osc getbinaries- 0.169.0 * improve speed and usability of osc bash completion * switch packagequery.py to return only bytes * improved some error messages * osc add: support git@ (private github) or git:// URLs correctly * split dependson and whatdependson commands * support for osc build --shell-cmd * Fix kiwi build with --prefer-pkgs * add pkg-ccache support for osc build * fix security issue (bsc#1122675, CVE-2019-3681) do not allow '/' in filename- 0.168.2 * use helper method _html_escape to enable python3.8 and python2.* compatibility (boo#1166537)- Fix support for python38, osc#763- Spec: temporary disable tests as they explode under python 3.8 * Needs to compare xml using testtools.matchers.MatchesStructure- Spec: * fix destination of fish completion file to /usr/share/fish/vendor_completions.d- 0.168.0 * MR creation honors orev now (bsc#1160446) * allow "osc r --vertical" for projects * several typo fixes * cleanup old functions and remove python2.6 compat code * support zstd arch linux files in local build * fix deleterequest for repositories * append --norootforbuild as default to build command * fix decoding in interactive request mode * use signdummy for product builds * print release project when creating MR * improve SSLError message for TLSv1 validation * osc maintained --version prints the version of each maintained package * print web url links after creating requests (New general bool option 'print_web_links' must be set in oscrc) * fix checkout_no_colon on project level * handle empty release number of rpm packages in build.py * handle bytes vs. str error when parsing meta * custom exception if importing m2crypto fails * fix missing oscerr import in util.helper * several fixes for keyring handling * fix arch zst magic in util.packagequery- Ship fish completion file.- Spec: * Recommend python3-keyring when using python3- 0.167.2 * fix regression in osc chroot * fix broken importsrcpkg- 0.167.1 - fix cpio fetch error handling - support local build using RedHat rpm-md modules - fix local build outside of the working copy of a package. (fixes boo#1136584) - Use the distro module for linux platform detection for python3.8 compatibility- 0.167.0 * Added --lastsucceeded option for logfile display (requires OBS 2.11) * osc shell/chroot/wipe is now handled via build script (working for chroot and KVM only atm) * osc build/shell features: - --vm-type=qemu support for cross architecture builds - additional debug packages are read from build config now (extra-pkgs definition is therefore by default empty now) - --vm-disk-size= switch supported (has only an effect on clean builds) - repository, architecture and vm_type from last build is automatically reused if not specified otherwise. - support building for kiwi products using obsrepositories:/ - support local building using RedHat rpm-md modules * fix decoding for osc aggregatepac - added Conflicts: build < 20191205. The new osc shell/chroot features might not work with older build scripts - removed version dpendency for Recommends: build. Does not work anyway. - added 0%{?centos_version} >= 800 to some %if statemets to enable build of python3 version on CentOS 8 and higer- 0.166.2 * Don't enforce password reuse (boo#1156501) * Config option check_for_requests_on_action is now activated by default. Use check_for_request_on_action = 0 in oscrc to disable it * osc vc --file=foo bar.changes now writes the content from foo into bar.changes instead of creating a new file (boo#1155953) * fix output for missing pubkey when using http_debug=1 on osc build * fix crash of osc linkpac when there is already a _link- 0.166.1 * emergency fix for credentials handling: - in case of an old passx entry in oscrc osc did not work at all. Now we check in the compat code if we have an passx entry.- 0.166.0 (boo#1154972) * New password handling backend. Supported password stores: - Plaintext password - Obfuscated password - python-keyring (kwallet, secret store) - gnome-keyring - no store at all (ask for the password every time * Refactor initial setup of osc (to select password store) * fix decoding on osc lbl (boo#1137477) * fix breakage of submitting complete branches back as an submit request that contain packages without a change. * fix error with plugins and osc -h * various decoding improvements * Transfer the name of the input file to vc instead of the content (obs-build/vc will do the rest and open the file). * support appimage builds * new command browse. (opens a browser opening the project or package) * new option --incoming for osc rq and osc review to only show only incoming reqeusts for a project. - new Recommends for xdg-utils. osc-browse uses xdg-open to open the url to the project/package in an internet browser- 0.165.4 (boo#1144211) * allow optional fork when creating a maintenance request * fix RPMError fallback * fix local caching for all package formats * fix appname for trusted cert store * osc -h does not break anymore when using plugins- 0.165.3 (boo#1142662) * switch to difflib.diff_bytes and sys.stdout.buffer.write for diffing. This will fix all decoding issues with osc diff, osc ci and osc rq -d * fix osc ls -lb handling empty size and mtime * removed decoding on osc api command. * fixed broken TLS certificate handling (boo#1142518, CVE-2019-3685)- 0.165.2 (boo#1140697) * support different token operations (runservice, release and rebuild) (requires OBS 2.10) * fix osc token decode error * offline build mode is now really offline and does not try to download the buildconfig * osc build -define now works with python3 * some spelling fixes * properly parse the error message on osc meta -e * osc maintainer -s now works with python3 * simplified and fixed osc meta -e (boo#1138977) * osc lbl now works with non utf8 encoding (boo#1129889) * add simpleimage as local build type- Spec: * add Provides: %{use_python}-osc so that other packages can require the correct version (either python2-osc or python3-osc)- 0.165.1 (boo#1138165) * fix oscssl "urldefrag is not defined error" * osc release command now python3 compatible * add more decode logic in get_commitlog * osc add in compressed mode now works with python3 * osc getbinaries now prints the output instead of using the quiet mode as a default- osc-0.165.0.tar.gz now contains the correct version (tag 0.165.0)- simplify "BuildArch:" decission if statements. (Avoid double BuildArch lines) - Fedora29: m2crypto for python3 is named python3-m2crypto now- 0.165.0 * full python3 compatibility (bsc#1125243) fixes bsc#1131512, bsc#1129889, bsc#1129757 * removed following patches (now upstream): 001_helper.patch 002_man_page_building.patch 003_setup.patch 004_babysitter.patch 005_oscssl.patch 006_build.patch 007_core.patch 008_commandline.patch 009_fetch.patch 010_fix-decoding_in_canonname.patch 011_repodata.patch 012_packagequery.patch - spec file modifications: * noarch only on non-SUSE distros and newer SUSE Versions > 11 * disable testsuite on older SUSE Versions (unittest module too old)- moved Recommends for diffstat to suse specific section.- added Buildrequires and Requires for python-chardet * needed for determining the encoding of objects (Requires) * needed also for testing in %check section (BuildRequires)- activate tests for osc - add Buildrequires and Recommends for diffstat osc prdiff --diffstat needs it The testsuite needs it (Therefore the BuildRequires- modified patch 008_commandline.patch * fix broken sorted call on osc my sr when sorting the submit requests by reqid. (gh#519) - modified patch 007_core.patch * fix slowdown of rbl with readline(bufsize) function. (bsc#1127932)- fix for bsc#1126055 (osc build -p fails with TypeError): * add 011_repodata.patch * add 012_packagequery.patch * modified 006_build.patch, 010_fix-decoding_in_canonname.patch - fix for bsc#1126058 (osc buildinfo -p fails with TypeError): * modified 008_commandline.patch- add 010_fix-decoding_in_canonname.patch RpmQuery.canonname returns broken filename due to missing decoding.- osc is now noarch for all - fixed %license- use %bcond_with(out) python3 to simplify spec file - add and apply patches only in python3 case - replace shebang in osc-wrapper.py depending on python version- rewrite 009_fetch.patch some versions of python do not support rb'some_text' - overwrite python_sitelib on Tumbleweed and SLE >= 15 - swich to python3-rpm on Tumbleweed and SLE >= 15. Otherwise python2 will be installed- use python3 on Tumbleweed and SLE >= 15- cpio download of needed packages during build is not possible, because cpio.py has now a bytes only api and the decoding needs to be done in the fetch module instead. added: 009_fetch.patch- added patches to support python3 until the PR are merged upstream (bsc#1125243): - 001_helper.patch - 002_man_page_building.patch - 003_setup.patch - 004_babysitter.patch - 005_oscssl.patch - 006_build.patch - 007_core.patch - 008_commandline.patch- 0.164.2 - deleterequest for entire projects needs the --all option as additional protection - rewrite packagequery to support python3 - rewrite oscerr module to support python3 - rewrite archqeury and debquery to support python3 - Export vc env vars when running a source service- 0.164.1 - rewrite cpio handling to support python3 - rewrite ar module to support python3 - enable fetch module to support python3 - rework progressbar hanlding (if module is not present) - improve os_path_samefile in core.py- 0.164.0 - add support for approved requests (requires OBS 2.10) - fix various multibuild problems - improved and fixed various help texts - check constraints without local checkout - check out deleted sources (osc co -D) - replace urlgrabber module with own module - use progressbar module instead of urlgrabber to draw progress bars - show buildinfo for alternative projects (--alternative-project) - run release job immediately (osc release --no-delay) - build results on project level can now be watched (osc prjresults --watch) - removed python-urlgrabber requieres. (Not used with 0.164.0) - added recommends for python[2]-progressbar- 0.163.0 * add sendsysrq command (requires OBS 2.10) * add addcontainers command (requires OBS 2.10) * enable statistics for local builds * add new options to diff command: - -unexpand for local diffs only (bsc#1089025) - -meta for diffing meta files * add support for podman/buildag engine (docker variation) * support realname in .changes files * fix DISTURL checkout for package containers using a multibuild flavor * Disable ssl session resumption- add Requires: python2 for Tumbleweed. Otherwise just python-base is installed which does not contain ssl.py [bnc#1097996] - removed duplicate entry in appimage.yml to prevent double builds- 0.162.1 - Send sha256 hashes for tracked files if the wc is pulled/linkrepair- 0.162.0 - Additional file content check with SHA256 when using OBS 2.9 - support deb format with control.tar.xz- 0.161.1 - Fix python 2.6 SyntaxError (multiple context expressions)- 0.161 - show lintlogs in interactive request review mode - fix potential shell injections - allow multiple --repo and --arch options in prjresults - cleanup babysitter.by - supersede existing requests if --yes is passed to osc sr - prepend request summary to diff in interactive mode - show issues(bugs) in interactive diff mode- add Recommends: ca-certificates to enable TLS verification without manually installing them. [bnc#1061500]- 0.160 - support fissile build type - Container support for the package cache - Remove all untracked files during "osc clean" - Support the commit of a deleted, but non-existent package - triggerreason --multibuild-package option - improved status display - improved request listing filters- Provide non-deprecated plugin directory and macro for plugins.- add Recommends: obs-service-obs_scm- 0.159.0 - "osc buildhistory": show build duration - Support builds using native Docker build descriptions - Support usage of pre-build containers for Docker and KIWI builds - "osc build -M ..": fixed behaviour of falvoured builds - added switch to show only issues in rdiff - show build duration in build history - allow to cat/less files from deleted packages (using -D option) - Allow to override man-page date- 0.158.0 - cat/less/blame command: default to expand to stay in sync with checkout - add support for highly experimental native appimage.yml support - show package status when repository configuration is broken - add '--blame' option to osc meta command - try to autodetect local package when running 'osc build' - comment requests in interactive mode - fix github issue #236 (--no-cleanup not working) - fix wipebinaries to prevent wiping of complete repository - add '--build-opt' to osc build command - fix requests codebase to fit old obs versions- 0.157.2 - add compat code for older apis that do not support multibuild - fix ssl.connection instantiation in case of old M2Crypto - highly experimental support for appimage - fix local service run for non-existent (server-side) package- 0.157.1 - fix local build of kiwi images using obsrepositories://- 0.157 - add unpublish command (requires OBS 2.8) - add blame command (requires OBS 2.9) - results: show multibuild results by default - getbinaries: make .AppImage files executable - support operation in checked out package for cat/less/blame - add comment command - improved build recipe selection - added multibuild (-M) to commands: buildlog, remotebuildlog, buildinfo, build, buildhistory, jobhistory, rebuild, restartbuild/abortbuild, wipebinaries, getbinaries - add checkconstraints command - add workerinfo command- 0.156.0 - highlight scheduled jobs with dispatch problems (due to constraints) - allow to specify a log message in lock command - Add '--wipe' option to osc chroot for deleting buildroots - Add '--vm-memory' option to osc build - add --multibuild to results command for showing all packages of a multibuild config - add --multibuild-package option to results command for showing only one package of the multibuild config- Install bash completion in the debian package- 0.155.1 - fixed "osc add" of new package container- 0.155.0 - osc service runall: runs all service local, independend of the mode This allows to create local files even when disabled or just created at buildtime - support snapcraft.yaml build descriptions - "osc add" of a directory offers to create an archive for uploading it - support usage or preinstall images in local builds - revision control options for "meta prj" - bugfixes and documentation updates- make a noarch package if suse_version >= 1120 (since 1120 python noarch packages are supported)- 0.154.0 - support for new obs_scm services (OBS 2.7 needed) - show errors on branch failures again- Recommend powerpc32 to avoid 'osc build' failures- 0.153.0 - "my sr" is using the server side request collection to get right results - maintenance request offers to supersede old, but still open requests - add build --vm-telnet option for getting debug shell in KVM builds - add buildhistory --limit option OBS 2.7 only: - add "addchannels" and "enablechannel" commands - support new package instances on branching when using -N parameter - add --linkrev option to branch command - add --add-repository-block option to branch command - add --add-repository-rebuild option to branch command - add service merge command - add service wait command- 0.152.0 - add support searching for groups via "group:" prefix - show possible used incident projects on "maintained" command OBS 2.7 only: - support buildtime source services - support maintenance_incident requests with acceptinfo data - support maintenance_release requests with acceptinfo data- Fix rpm URL. gitorious is shut down end of May 2015.- Recommend sudo (needed for osc build)- 0.151.2 - improved error loging- 0.151.1 - fixing regression running "osc service run"- 0.151.0 - fixed shell command injection via crafted _service files CVE-2015-0778 boo#901643 - fix times when data comes from OBS backend - support updateing the link in target package for submit requests - various minor bugfixes- 0.150.1 - minor syntax fix- 0.150.0 - support local builds using builenv (for same build environment as a former build) - add "osc api --edit" option to be able to edit some meta files directly - follow the request order of the api (sorting according to priorization) - add mr --release-project option for kgraft updates - add support for makeoriginolder in request- fix bash completion (complete is not propagated into subshells, but PROFILEREAD is, so the setup script is never executed)- fixed #123 (wrong requires for Fedora 20)- 0.149 - removed "--diff" option from the "createrequest" command - introduced new "vc-cmd" config option, which is used to specify the path to the vc script - various bugfixesh01-ch4d 1739178400  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSSUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()**,-./0123456789:;<=>??ABCCEFGGIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkkmmopqqstuvwxyz{|}~1.9.0-150400.10.9.11.9.0-150400.10.9.1     !"#$osc.cshoscosc-pluginsoscosc-1.9.0-py3.6.egg-infoPKG-INFOSOURCES.txtdependency_links.txtentry_points.txtrequires.txttop_level.txtOscConfigParser.py__init__.py__pycache__OscConfigParser.cpython-36.opt-1.pycOscConfigParser.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pycbabysitter.cpython-36.opt-1.pycbabysitter.cpython-36.pycbuild.cpython-36.opt-1.pycbuild.cpython-36.pycchecker.cpython-36.opt-1.pycchecker.cpython-36.pyccmdln.cpython-36.opt-1.pyccmdln.cpython-36.pyccommandline.cpython-36.opt-1.pyccommandline.cpython-36.pycconf.cpython-36.opt-1.pycconf.cpython-36.pycconnection.cpython-36.opt-1.pycconnection.cpython-36.pyccore.cpython-36.opt-1.pyccore.cpython-36.pyccredentials.cpython-36.opt-1.pyccredentials.cpython-36.pycfetch.cpython-36.opt-1.pycfetch.cpython-36.pycgrabber.cpython-36.opt-1.pycgrabber.cpython-36.pycmeter.cpython-36.opt-1.pycmeter.cpython-36.pycoscerr.cpython-36.opt-1.pycoscerr.cpython-36.pycoscssl.cpython-36.opt-1.pycoscssl.cpython-36.pycstore.cpython-36.opt-1.pycstore.cpython-36.pyc_private__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycapi.cpython-36.opt-1.pycapi.cpython-36.pycapi_build.cpython-36.opt-1.pycapi_build.cpython-36.pycapi_configuration.cpython-36.opt-1.pycapi_configuration.cpython-36.pycapi_source.cpython-36.opt-1.pycapi_source.cpython-36.pyccommon.cpython-36.opt-1.pyccommon.cpython-36.pycpackage.cpython-36.opt-1.pycpackage.cpython-36.pycrequest.cpython-36.opt-1.pycrequest.cpython-36.pycapi.pyapi_build.pyapi_configuration.pyapi_source.pycommon.pypackage.pyrequest.pybabysitter.pybuild.pychecker.pycmdln.pycommandline.pycommands__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycperson.cpython-36.opt-1.pycperson.cpython-36.pycperson_register.cpython-36.opt-1.pycperson_register.cpython-36.pycperson_search.cpython-36.opt-1.pycperson_search.cpython-36.pycrepo.cpython-36.opt-1.pycrepo.cpython-36.pycrepo_add.cpython-36.opt-1.pycrepo_add.cpython-36.pycrepo_list.cpython-36.opt-1.pycrepo_list.cpython-36.pycrepo_remove.cpython-36.opt-1.pycrepo_remove.cpython-36.pycperson.pyperson_register.pyperson_search.pyrepo.pyrepo_add.pyrepo_list.pyrepo_remove.pyconf.pyconnection.pycore.pycredentials.pyfetch.pygit_scm__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycstore.cpython-36.opt-1.pycstore.cpython-36.pycstore.pygrabber.pymeter.pyobs_api__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycenums.cpython-36.opt-1.pycenums.cpython-36.pycflag.cpython-36.opt-1.pycflag.cpython-36.pycgroup_role.cpython-36.opt-1.pycgroup_role.cpython-36.pyckeyinfo.cpython-36.opt-1.pyckeyinfo.cpython-36.pyckeyinfo_pubkey.cpython-36.opt-1.pyckeyinfo_pubkey.cpython-36.pyckeyinfo_sslcert.cpython-36.opt-1.pyckeyinfo_sslcert.cpython-36.pyclinkinfo.cpython-36.opt-1.pyclinkinfo.cpython-36.pycpackage.cpython-36.opt-1.pycpackage.cpython-36.pycpackage_devel.cpython-36.opt-1.pycpackage_devel.cpython-36.pycpackage_revision.cpython-36.opt-1.pycpackage_revision.cpython-36.pycpackage_sources.cpython-36.opt-1.pycpackage_sources.cpython-36.pycpackage_sources_file.cpython-36.opt-1.pycpackage_sources_file.cpython-36.pycperson.cpython-36.opt-1.pycperson.cpython-36.pycperson_owner.cpython-36.opt-1.pycperson_owner.cpython-36.pycperson_role.cpython-36.opt-1.pycperson_role.cpython-36.pycperson_watchlist.cpython-36.opt-1.pycperson_watchlist.cpython-36.pycperson_watchlist_package.cpython-36.opt-1.pycperson_watchlist_package.cpython-36.pycperson_watchlist_project.cpython-36.opt-1.pycperson_watchlist_project.cpython-36.pycperson_watchlist_request.cpython-36.opt-1.pycperson_watchlist_request.cpython-36.pycproject.cpython-36.opt-1.pycproject.cpython-36.pycproject_devel.cpython-36.opt-1.pycproject_devel.cpython-36.pycproject_link.cpython-36.opt-1.pycproject_link.cpython-36.pycproject_maintenance_maintains.cpython-36.opt-1.pycproject_maintenance_maintains.cpython-36.pycrepository.cpython-36.opt-1.pycrepository.cpython-36.pycrepository_download.cpython-36.opt-1.pycrepository_download.cpython-36.pycrepository_download_master.cpython-36.opt-1.pycrepository_download_master.cpython-36.pycrepository_hostsystem.cpython-36.opt-1.pycrepository_hostsystem.cpython-36.pycrepository_path.cpython-36.opt-1.pycrepository_path.cpython-36.pycrepository_releasetarget.cpython-36.opt-1.pycrepository_releasetarget.cpython-36.pycrequest.cpython-36.opt-1.pycrequest.cpython-36.pycrequest_action.cpython-36.opt-1.pycrequest_action.cpython-36.pycrequest_action_acceptinfo.cpython-36.opt-1.pycrequest_action_acceptinfo.cpython-36.pycrequest_action_group.cpython-36.opt-1.pycrequest_action_group.cpython-36.pycrequest_action_grouped.cpython-36.opt-1.pycrequest_action_grouped.cpython-36.pycrequest_action_options.cpython-36.opt-1.pycrequest_action_options.cpython-36.pycrequest_action_person.cpython-36.opt-1.pycrequest_action_person.cpython-36.pycrequest_action_source.cpython-36.opt-1.pycrequest_action_source.cpython-36.pycrequest_action_target.cpython-36.opt-1.pycrequest_action_target.cpython-36.pycrequest_history.cpython-36.opt-1.pycrequest_history.cpython-36.pycrequest_review.cpython-36.opt-1.pycrequest_review.cpython-36.pycrequest_review_history.cpython-36.opt-1.pycrequest_review_history.cpython-36.pycrequest_sourcediff.cpython-36.opt-1.pycrequest_sourcediff.cpython-36.pycrequest_sourcediff_file_diff.cpython-36.opt-1.pycrequest_sourcediff_file_diff.cpython-36.pycrequest_sourcediff_file_new.cpython-36.opt-1.pycrequest_sourcediff_file_new.cpython-36.pycrequest_sourcediff_file_old.cpython-36.opt-1.pycrequest_sourcediff_file_old.cpython-36.pycrequest_sourcediff_files_file.cpython-36.opt-1.pycrequest_sourcediff_files_file.cpython-36.pycrequest_sourcediff_issue.cpython-36.opt-1.pycrequest_sourcediff_issue.cpython-36.pycrequest_sourcediff_new.cpython-36.opt-1.pycrequest_sourcediff_new.cpython-36.pycrequest_sourcediff_old.cpython-36.opt-1.pycrequest_sourcediff_old.cpython-36.pycrequest_state.cpython-36.opt-1.pycrequest_state.cpython-36.pycserviceinfo.cpython-36.opt-1.pycserviceinfo.cpython-36.pycsimple_flag.cpython-36.opt-1.pycsimple_flag.cpython-36.pycstatus.cpython-36.opt-1.pycstatus.cpython-36.pycstatus_data.cpython-36.opt-1.pycstatus_data.cpython-36.pyctoken.cpython-36.opt-1.pyctoken.cpython-36.pycenums.pyflag.pygroup_role.pykeyinfo.pykeyinfo_pubkey.pykeyinfo_sslcert.pylinkinfo.pypackage.pypackage_devel.pypackage_revision.pypackage_sources.pypackage_sources_file.pyperson.pyperson_owner.pyperson_role.pyperson_watchlist.pyperson_watchlist_package.pyperson_watchlist_project.pyperson_watchlist_request.pyproject.pyproject_devel.pyproject_link.pyproject_maintenance_maintains.pyrepository.pyrepository_download.pyrepository_download_master.pyrepository_hostsystem.pyrepository_path.pyrepository_releasetarget.pyrequest.pyrequest_action.pyrequest_action_acceptinfo.pyrequest_action_group.pyrequest_action_grouped.pyrequest_action_options.pyrequest_action_person.pyrequest_action_source.pyrequest_action_target.pyrequest_history.pyrequest_review.pyrequest_review_history.pyrequest_sourcediff.pyrequest_sourcediff_file_diff.pyrequest_sourcediff_file_new.pyrequest_sourcediff_file_old.pyrequest_sourcediff_files_file.pyrequest_sourcediff_issue.pyrequest_sourcediff_new.pyrequest_sourcediff_old.pyrequest_state.pyserviceinfo.pysimple_flag.pystatus.pystatus_data.pytoken.pyobs_scm__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycfile.cpython-36.opt-1.pycfile.cpython-36.pyclinkinfo.cpython-36.opt-1.pyclinkinfo.cpython-36.pycpackage.cpython-36.opt-1.pycpackage.cpython-36.pycproject.cpython-36.opt-1.pycproject.cpython-36.pycserviceinfo.cpython-36.opt-1.pycserviceinfo.cpython-36.pycstore.cpython-36.opt-1.pycstore.cpython-36.pycfile.pylinkinfo.pypackage.pyproject.pyserviceinfo.pystore.pyoscerr.pyoscssl.pyoutput__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycinput.cpython-36.opt-1.pycinput.cpython-36.pyckey_value_table.cpython-36.opt-1.pyckey_value_table.cpython-36.pycoutput.cpython-36.opt-1.pycoutput.cpython-36.pyctty.cpython-36.opt-1.pyctty.cpython-36.pycwidechar.cpython-36.opt-1.pycwidechar.cpython-36.pycinput.pykey_value_table.pyoutput.pytty.pywidechar.pypy.typedstore.pyutil__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycar.cpython-36.opt-1.pycar.cpython-36.pycarchquery.cpython-36.opt-1.pycarchquery.cpython-36.pyccpio.cpython-36.opt-1.pyccpio.cpython-36.pycdebquery.cpython-36.opt-1.pycdebquery.cpython-36.pycgit_version.cpython-36.opt-1.pycgit_version.cpython-36.pychelper.cpython-36.opt-1.pychelper.cpython-36.pycmodels.cpython-36.opt-1.pycmodels.cpython-36.pycpackagequery.cpython-36.opt-1.pycpackagequery.cpython-36.pycrepodata.cpython-36.opt-1.pycrepodata.cpython-36.pycrpmquery.cpython-36.opt-1.pycrpmquery.cpython-36.pycsafewriter.cpython-36.opt-1.pycsafewriter.cpython-36.pycxdg.cpython-36.opt-1.pycxdg.cpython-36.pycxml.cpython-36.opt-1.pycxml.cpython-36.pycxpath.cpython-36.opt-1.pycxpath.cpython-36.pycar.pyarchquery.pycpio.pydebquery.pygit_version.pyhelper.pymodels.pypackagequery.pyrepodata.pyrpmquery.pysafewriter.pyxdg.pyxml.pyxpath.pymacros.oscosc.bashoscAUTHORSNEWSREADME.mdfishvendor_completions.dosc.fishoscCOPYINGosccompletezshfunctionsCompletionosc.zshosc-plugins/etc/profile.d//usr/bin//usr/lib//usr/lib/python3.6/site-packages//usr/lib/python3.6/site-packages/osc-1.9.0-py3.6.egg-info//usr/lib/python3.6/site-packages/osc//usr/lib/python3.6/site-packages/osc/__pycache__//usr/lib/python3.6/site-packages/osc/_private//usr/lib/python3.6/site-packages/osc/_private/__pycache__//usr/lib/python3.6/site-packages/osc/commands//usr/lib/python3.6/site-packages/osc/commands/__pycache__//usr/lib/python3.6/site-packages/osc/git_scm//usr/lib/python3.6/site-packages/osc/git_scm/__pycache__//usr/lib/python3.6/site-packages/osc/obs_api//usr/lib/python3.6/site-packages/osc/obs_api/__pycache__//usr/lib/python3.6/site-packages/osc/obs_scm//usr/lib/python3.6/site-packages/osc/obs_scm/__pycache__//usr/lib/python3.6/site-packages/osc/output//usr/lib/python3.6/site-packages/osc/output/__pycache__//usr/lib/python3.6/site-packages/osc/util//usr/lib/python3.6/site-packages/osc/util/__pycache__//usr/lib/rpm/macros.d//usr/share/bash-completion/completions//usr/share/doc/packages//usr/share/doc/packages/osc//usr/share//usr/share/fish//usr/share/fish/vendor_completions.d//usr/share/licenses//usr/share/licenses/osc//usr/share//usr/share/osc//usr/share//usr/share/zsh//usr/share/zsh/functions//usr/share/zsh/functions/Completion//var/lib/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:37382/SUSE_SLE-15-SP4_Update/962f467b25010179b10df24d15fee0e5-osc.SUSE_SLE-15-SP4_Updatedrpmxz5noarch-suse-linuxASCII textPython script, ASCII text executabledirectorypython 3.6 byte-compiledPython script, UTF-8 Unicode text executableemptyUTF-8 Unicode textBourne-Again shell script, ASCII text executable  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRT}^fe01RWbuildca-certificatesdiffstatgit-coregit-lfsobs-service-download_filesobs-service-format_spec_fileobs-service-obs_scmobs-service-recompressobs-service-set_versionobs-service-source_validatorobs-service-tar_scmobs-service-verify_fileopenssh-clientsopenssh-commonpowerpc32python3-distropython3-keyringpython3-keyring-keyutilspython3-progressbarrpm-buildsudoxdg-utilsutf-8c53acc55abc0e883f8d618a92fb4f1a7671888b2c0c48b3322edf089dbaf2572?7zXZ !t/3 ]"k%jqqY pkGw(^LM^zF*O3d.?]ɕ8r/%?ɄGOg)&5L5U 7leCB_AΝf b?*Yd2`CY8x<KdOg¸1W5DRЄ8=YXCٳr/vwiv .DW_s~Nn՘,lUΌ.!h~?g˧쏴&%$Rc*(G* ;UV$ 8F9ȵ&cd_A-vOVD>^`k6 َ[?ѼիP@ԹIL6fn4ϴ1]^g`3Ǐ{Q(Czi 0AL? ,5c:Y(BGNU -k¥Ң`FqblNe ԪYc$>S<, 6tSp8U2+v+c>+|6rA3`%W AnPFeCm+7AGd)8yUzI@X!5 װA̜ΰ`?rLL'B,ߚw#ð i~7:Ge;Q=9 s*U 3Ϲ%)dtX%830͋x#|AOm`_P*s=k_q&:_sYҩw. o\BV2 {;!Hk LsKJ < T IMp„:bLK`UCaNH*Zbtfc4\L _fwR~T˵ނpGGHnXC}_3Ãh|Q' -6^C&FT5]5Knue OrS7nǡGH_lڏpq p?C6[X% VL"]SW<ÀWc AmKw_ա=7?bO#C7zDYL (9?:Vr05@鼙6aWY0eӃ h{CSL0AcA#63{hR eh07Xk~w fݿW _ikBy&WZm>+$kV:;O{!޲IC Η5ak 0bc BGJR,I~ӭ ţg촦#zJ{ݰm$sSs-=[IJ %'A%m@ԝw< :4`EZDiS8 GY$]cʷOeE7/{ֶ:!ݺBo6+*Bo*toTzP0)IWÖ{IJ%jiUץ(d}2E*o뀄?,sIw&g@uSE~sy\ʶ\ ^VhUN!J>aY1kHz#죺M܃%U+~k,ʞG~O%HQxE?ssr FTޮ`=įgd#)8b? dP*2#:ǒNr])sav% ZcW!~do2c|*l0]yn d JH&2 ؙrERqSD6b~({rSo|5'gHkaTj ǨmԜGtfc ]ŭYVNgb'uBk &Q9e=l?v6Fipj0<,%RL`X_Bj^k(?WY)*z,ί$mD.ԷRpe?Rf뽴A4ޘ e0 ˷‚4=&It?7{w =UNy~39gY^^bР׽v*Fj̰8jNx! H5O{f5i2 U5DSj=6ـ5L`Ӥ<݋OGuiw/3d_"<+yDp&[Jފ^~p,jhk3ƪn*RJcvw-i ;t5UFޡe[?YPE1i.HVz":cc0 !Sa%PI52",)0sbӄ.BfE1@ii4#PYLrՌ[R6/x_᱄q9mÎ*nJtz񰶢Aq.#kuKTUvJ "CO`뺗VLU `NT7FjBΙ"npT%jj4^8o5%To\op,AE 䆃M=\I0U6ЪuH1Yu܎wP 4/ifZPwsߕ ji7lNjDS,f) nWyރ:[A63uUm<L YZ