python3-specfile-0.30.0-1.el9$>g e`|R7_>CP?Pd  V />B Q]GG :G G G G 4GPGG<GX(8"9\":"h"B=F=#G=TGH>pGI?GX?Y?Z@[@ \@0G]ALG^G)bHdIeIfIlItIGuJGvKwLGxMGyNDzOOOP#P)PlPpCpython3-specfile0.30.01.el9A library for parsing and manipulating RPM spec files Python library for parsing and manipulating RPM spec files. Main focus is on modifying existing spec files, any change should result in a minimal diff.f|+\buildhw-x86-04.iad2.fedoraproject.orgFedora ProjectFedora ProjectMITFedora ProjectUnspecifiedhttps://github.com/packit/specfilelinuxnoarch;.\ T&&00 4747;;4c4c''VV((zzGG;;((<<2TBn:xF2&X:BI%|D)"AA큤A큤A큤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|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+^f|+gf|~1b940bb6e556353793023b99890a7d4f68f9d855967ceda5e61203ce9b9627154694279aa4c5acda089ee81646e986fb6f4bb057bd0e9da1a688168e7b9d4310bcc15f9ecbc5ec57ef706edd64ffb039aef27d64378eba224ed688c55ad2131c3aa464174798e461ecb0ca2b16395b4c8ab4ef6be91e917ad1f21003a952f710a1a859b5379649391697284ec59a72a7676147909e872223acacf42df6be247f58e51b6bf3641e6ba83d80832a1e3c01cf0fc557cd0cc56d763cb0dbe6999de6936affee2723cef5dff8e65938e45a83ab28c0e4066f9704ff2df071faa51ca4936affee2723cef5dff8e65938e45a83ab28c0e4066f9704ff2df071faa51ca4b812947869f2ee071739be4c579d2225c89dfb5353767a6fd5f59a27bb7c68c7b812947869f2ee071739be4c579d2225c89dfb5353767a6fd5f59a27bb7c68c72921c2b9861a6e9ea417343090170094e2717c19eb7203870c2a3b4859b9413c2921c2b9861a6e9ea417343090170094e2717c19eb7203870c2a3b4859b9413c4497d4e118c9e5a040145d78ddb305465eac84af889a8112c4d2c87215b74f234497d4e118c9e5a040145d78ddb305465eac84af889a8112c4d2c87215b74f230e5dbc7448f54973cff157345e64cd350c3848aebc4461bbda176fc1dbaa37340e5dbc7448f54973cff157345e64cd350c3848aebc4461bbda176fc1dbaa3734f8491b779870991ad7a114d502ee3228359102810bfc8369d748096cb5494c82f8491b779870991ad7a114d502ee3228359102810bfc8369d748096cb5494c82c61430af0ac895c41e004721b7175722aa5d5a8a5b4da9ea7edb4d2cba7f9ae8c61430af0ac895c41e004721b7175722aa5d5a8a5b4da9ea7edb4d2cba7f9ae87a16e669c47b8f9aaee9594a784876324976ea4024c849ee4ba3e87f57dab41b7a16e669c47b8f9aaee9594a784876324976ea4024c849ee4ba3e87f57dab41b764c866a8f261dc462bb590a4c69d8bb91e2522324945c4e2912b2253fb620c8764c866a8f261dc462bb590a4c69d8bb91e2522324945c4e2912b2253fb620c8529a88c953507afebffca9248d61ea4682ec5ba2eaeaef9ce538ca87578f1d56529a88c953507afebffca9248d61ea4682ec5ba2eaeaef9ce538ca87578f1d56998239f285b16464da99b964f9c5b8f768f22648aa72310fc4a53289aa80192f998239f285b16464da99b964f9c5b8f768f22648aa72310fc4a53289aa80192f35a7c23c10ca144bc5bb6b5fa76d0263daf16c06639d720ebed071309dfb592435a7c23c10ca144bc5bb6b5fa76d0263daf16c06639d720ebed071309dfb59249d562e413c375e8f9e9f9883bd7debf13d7134c5e7bedc15a52e138e52e8dc5f9d562e413c375e8f9e9f9883bd7debf13d7134c5e7bedc15a52e138e52e8dc5f599047a55f49ab7af953dc66b2f9c642b91dd4625ef2cd86341f843a50bfc4d0599047a55f49ab7af953dc66b2f9c642b91dd4625ef2cd86341f843a50bfc4d072333a13b9b71a907c97f30a215fb9cc755ddcdac82c9557d698aece1207123a72333a13b9b71a907c97f30a215fb9cc755ddcdac82c9557d698aece1207123a414592d172c64743b5faf139b918da5ee094c44389132cc8858b958da99ebd56414592d172c64743b5faf139b918da5ee094c44389132cc8858b958da99ebd56d4f978f927ca7a88f76bdd84f5008f6008a3725789ce640190f1fe104e58d0a3d4f978f927ca7a88f76bdd84f5008f6008a3725789ce640190f1fe104e58d0a37b9dfeb20f503aaa98f51917e67eed029bd5e9e71e9e6f1515717af1232a6cec7b9dfeb20f503aaa98f51917e67eed029bd5e9e71e9e6f1515717af1232a6cec69825df8b57771f1921087a8411d4d37c32478733f1436bb3e49ff578d10d53869825df8b57771f1921087a8411d4d37c32478733f1436bb3e49ff578d10d538ed4cd121f4302aac846e12df12e02e3dddcb6a389ed51a3a4d9fdefc22745b08ed4cd121f4302aac846e12df12e02e3dddcb6a389ed51a3a4d9fdefc22745b084b5deb339873797b8ab88f07922af6ae3c16ad8729ed09795d10b1d10f0971e24c67f3d53890bbe26f4d9c7833768fcbe0913d86cb3da99ef7ff8e193f0b2c24e21b7eedcc8a5f6689175d95a9f9c1ff9ccde86afd95f0414dc6c062707346d6b42ab53ea0d854afab0f635f8f6c9ddc4e3798eed2a76ccaf601587b76f8034ac3938bcec8c2e3bf4e61b9f8218086f6a4fd596bddcb09ff3407f7bab2ccf3a22d08f3a06b2721159e23bef64223b9c0312121874b1f679387395211c1ba9d6030b2a4f354e4a0cf42530115eeefdb09ac7b94f497225ac77390bbca6bbe4d2f63929a3ec2263f12e37f0f15184db1fab69429f9ba523781b46bd6ae86a8bc383a660af2b81aee1932e961acb68f0e0e0f2ec03d1c321df1d7c1392f29b681ddcdb2ac4055c628858b6bb119b5a625790c0564e7fb2673501bbb48c1323d8319e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8551e4e091f620386cc5ab8c678f27260fb3a11ce84efdee9070fedfb49d5e71e86621d5b308babb24ea68b9ca21186f5f557f4d2f5f765cab708152f135c4437dec489aa9cb8dcfc16d7d575c940ea60c06f9bbbaaa179abb65434b47dc56dd670dded98c0a3ab3600255e5646c7081f8c0ac899b207455a69412a0e185f0101224658cfe2c70451f08c255f08e2dc0efa52fd09a81f4aa5b8553b05683542ebc7f6878a8650251daf43e83a757606a9152f98ed02993cbbe8bd4212d357731db84317059a7b806d5e3e97dbc11c8bdaf64288583999c2d8f1776ba00e922f2d0e7eedcd989bee45615fafa898cb91237eb548f486bc9537c7200fe525a2be8aa3f004d91ef036ec7586cfe05ce4af38584d50f96585f93aa5177d6a120de39a5bd5dcefc6d934f98dabc57f6ca2a8bf13b008d3adb233192ef18edc28ceee5974rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-specfile-0.30.0-1.el9.src.rpmpython-specfilepython3-specfilepython3.9-specfilepython3.9dist(specfile)python3dist(specfile)@@@     python(abi)python3.9dist(rpm)python3.9dist(typing-extensions)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsZstd)3.93.0.4-14.6.0-14.0.4-14.0-15.4.18-14.16.1.3f|fafO/e@ed@e[J@eH@e?ed@d"dǢ@d@d7dp@d\dA)@d cU@cױ@cvcʂ@c @cc#@cEcocWcMCcIO@c@cd@bL@b?Packit - 0.30.0-1Packit - 0.29.0-1Packit - 0.28.3-1Packit - 0.28.0-1Packit - 0.27.0-1Packit - 0.25.0-1Packit - 0.24.0-1Packit - 0.23.0-1Packit - 0.22.1-1Packit - 0.22.0-1Nikola Forró - 0.21.0-1Packit - 0.20.2-1Packit - 0.20.0-1Packit - 0.19.0-1Packit - 0.18.0-1Packit - 0.17.0-1Packit - 0.16.0-1Packit - 0.15.0-1Packit - 0.14.0-1Packit - 0.13.2-1Packit - 0.13.1-1Packit - 0.13.0-1Packit - 0.12.0-1Packit - 0.11.1-1Packit - 0.11.0-1Packit - 0.10.0-1Packit - 0.9.1-1Packit - 0.9.0-1Tomas Tomecek - 0.8.0-2Packit - 0.8.0-1Packit - 0.7.0-1Nikola Forró - 0.6.0-1Nikola Forró - 0.5.1-1Nikola Forró - 0.5.0-1- Fixed an exception that occured when accessing the `Specfile.has_autochangelog` property while having unparseable lines (e.g. lines ending with unescaped `%`) in `%changelog`. (#387)- Improved compatibility with RPM 4.20 (alpha version is currently in Fedora Rawhide). (#380)- Fixed several minor issues such as processing seemingly commented-out macro definitions (e.g. `#%global prerel rc1`) and treating `SourceLicense` tag as a source. (#374, #376) - Made `EVR`, `NEVR` and `NEVRA` objects comparable. (#379)- A trailing newline is no longer added to spec files without one upon saving. (#353)- Improved handling of commented-out macro definitions and fixed related logic in `Specfile.update_value()`. (#338)- There is a new method, `Specfile.update_version()`, that allows updating spec file version even if it is a pre-release. (#317)- Improved type annotations for `UserList` subclasses. (#299) - Macro definitions gained a new `commented_out` property indicating that a macro definition is commented out. Another new property, `comment_out_style`, determines if it is achieved by using a `%dnl` (discard next line) directive (e.g. `%dnl %global prerelease beta2`) or by replacing the starting `%` with `#` (e.g. `#global prerelease beta2`). (#298)- Sources now have a `valid` property that indicates whether a source is valid in the current context, meaning it is not present in a false branch of any condition. (#295)- Removed dependency on setuptools-scm-git-archive. (#290)- Macro definitions and tags gained a new `valid` attribute. A macro definition/tag is considered valid if it doesn't appear in a false branch of any condition appearing in the spec file. (#276)- `specfile` no longer tracebacks when some sources are missing and can't be _emulated_. In such case the spec file is parsed without them at the cost of `%setup` and `%patch` macros potentially expanding differently than with the sources present. (#271) - Specfile's license in RPM spec file is now confirmed to be SPDX compatible. (#269)- Fixed Packit config to work properly with `propose-downstream` and `pull-from-upstream` jobs. (#261)- Fixed infinite loop when removing macros with `%` in the name. (#244) - Added a possibility to undefine system macros by setting a macro value to `None` in the `macros` argument of the `Specfile` constructor. (#244) - Fixed a bug in processing options of `%prep` macros. For instance, when a quoted string appeared inside an expression expansion, it could lead to improper parsing, rendering the spec file invalid after accessing the options. (#253)- Parsing has been optimized so that even spec files with hundreds of thousands of lines can be processed in reasonable time. (#240)- Specfile library now handles multiple `%changelog` sections. (#230)- Added a new `guess_packager()` function that uses similar heuristics as `rpmdev-packager`, meaning that the `Specfile.add_changelog_entry()` method no longer requires `rpmdev-packager` to guess the changelog entry author. (#220) - The `Specfile.add_changelog_entry()` method now uses dates based on UTC instead of the local timezone. (#223)- Added `Specfile.has_autorelease` property to detect if a spec file uses the `%autorelease` macro. (#221)- Parsing the spec file by RPM is now performed only if really necessary, greatly improving performance in certain scenarios. (#212) - Checked that license is a valid SPDX license.- Fixed a bug that broke parsing in case spec file contained conditionalized macro definitions or similar constructs. (#209) - Specfile no longer depends on rpm-py-installer, it now depends directly on rpm. (#207)- Fixed infinite loop that occured when section options were followed by whitespace. (#197)- Fixed a bug in section parsing that caused sections to be ignored when there were macro definitions spread across the spec file and not cumulated at the top. (#191)- Added `Section.options` attribute for convenient manipulation of section options. (#183) - specfile now supports single-line sections where section content is represented by a macro starting with a newline. (#182) - Added `evr` argument to `Specfile.add_changelog_entry()`. This allows adding a changelog entry with an EVR value that's different from the current specfile's value. This makes it easier to reconstruct a specfile's `%changelog` based on another source using the higher level interface. (#181)- All classes including `Specfile` itself can now be copied using the standard `copy()` and `deepcopy()` functions from `copy` module. (#176) - `Section.name` attribute has been renamed to a more fitting `Section.id`. (#167) - `setup.cfg` now uses `license_files` instead of deprecated `license_file`. (#162)- Tags enclosed in conditional macro expansions are not ignored anymore. (#156) - Fixed context managers being shared between Specfile instances. (#157)- Context managers (`Specfile.sections()`, `Specfile.tags()` etc.) can now be nested and combined together (with one exception - `Specfile.macro_definitions()`), and it is also possible to use tag properties (e.g. `Specfile.version`, `Specfile.license`) inside them. It is also possible to access the data directly, avoiding the `with` statement, by using the `content` property (e.g. `Specfile.tags().content`), but be aware that no modifications done to such data will be preserved. You must use `with` to make changes. (#153)- Fixed an issue that caused empty lines originally inside changelog entries to appear at the end. (#140) - Renamed the `ignore_missing_includes` option to a more general `force_parse`. If specified, it allows to attempt to parse the spec file even if one or more sources required to be present at parsing time are not available. Such sources include sources referenced from shell expansions in tag values and sources included using the `%include` directive. (#137)- `specfile` now supports localized tags (e.g. `Summary(fr)`) and tags with qualifiers (e.g. `Requires(post)`). It also follows more closely rpm parsing logic and doesn't fail on invalid section names. (#132)- Added utility classes for working with (N)EVR. (#113) - Fixed an issue with multiple instances of `Specfile` not expanding macros in the right context. (#117)- Rebuild to trigger downstream Packit automation- Added `Specfile.update_tag()` method that allows updating tag values while trying to preserve macro expansions. You can watch a demo on [YouTube](https://youtu.be/yzMfBPdFXZY). (#101)- It is now possible to filter changelog entries by specifying lower bound EVR, upper bound EVR or both. (#104) - Added support for filenames specified in source URL fragments, for example: `https://example.com/foo/1.0/download.cgi#/python-specfile-0.30.0.tar.gz` (#100)- New upstream release 0.6.0- New upstream release 0.5.1- New upstream release 0.5.0python39-specfilebuildhw-x86-04.iad2.fedoraproject.org 1719413596  ""$$&&((**,,..0023456789:;<=>?@ABCDEFG0.30.0-1.el90.30.0-1.el90.30.0-1.el90.300.30@0.30.0-1.el9specfilespecfile-0.30.0.dist-infoINSTALLERLICENSEMETADATAWHEELtop_level.txt__init__.py__pycache____init__.cpython-39.opt-1.pyc__init__.cpython-39.pycchangelog.cpython-39.opt-1.pycchangelog.cpython-39.pycconditions.cpython-39.opt-1.pycconditions.cpython-39.pycconstants.cpython-39.opt-1.pycconstants.cpython-39.pyccontext_management.cpython-39.opt-1.pyccontext_management.cpython-39.pycexceptions.cpython-39.opt-1.pycexceptions.cpython-39.pycformatter.cpython-39.opt-1.pycformatter.cpython-39.pycmacro_definitions.cpython-39.opt-1.pycmacro_definitions.cpython-39.pycmacros.cpython-39.opt-1.pycmacros.cpython-39.pycoptions.cpython-39.opt-1.pycoptions.cpython-39.pycprep.cpython-39.opt-1.pycprep.cpython-39.pycsections.cpython-39.opt-1.pycsections.cpython-39.pycsourcelist.cpython-39.opt-1.pycsourcelist.cpython-39.pycsources.cpython-39.opt-1.pycsources.cpython-39.pycspec_parser.cpython-39.opt-1.pycspec_parser.cpython-39.pycspecfile.cpython-39.opt-1.pycspecfile.cpython-39.pyctags.cpython-39.opt-1.pyctags.cpython-39.pyctypes.cpython-39.opt-1.pyctypes.cpython-39.pycutils.cpython-39.opt-1.pycutils.cpython-39.pycvalue_parser.cpython-39.opt-1.pycvalue_parser.cpython-39.pycchangelog.pyconditions.pyconstants.pycontext_management.pyexceptions.pyformatter.pymacro_definitions.pymacros.pyoptions.pyprep.pypy.typedsections.pysourcelist.pysources.pyspec_parser.pyspecfile.pytags.pytypes.pyutils.pyvalue_parser.pypython3-specfileREADME.md/usr/lib/python3.9/site-packages//usr/lib/python3.9/site-packages/specfile-0.30.0.dist-info//usr/lib/python3.9/site-packages/specfile//usr/lib/python3.9/site-packages/specfile/__pycache__//usr/share/doc//usr/share/doc/python3-specfile/-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64-v2 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protectiondrpmzstd19noarch-redhat-linux-gnudirectoryASCII textPython script, UTF-8 Unicode text executable, with very long linesPython script, ASCII text executablepython 3.9 byte-compiledempty  !"#$%&'()*+,-./0123456789:;<=>?@ABCPPOPPRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR]:b9|%(https://bugz.fedoraproject.org/python-specfileutf-820c0b8267f17f29ade2bfa7fb39b71397878c55d58c7da8d7708abcc61e9ea31e6a39e4a0250b735bde6017f5aed9f7742e583fadbc910351e61e07f48c1ff35?(/hLlzP07`(ҦS9ΪL MŒ*jA|kjSUhf@v'J<4yqU6Geu]!i%TNhAFHCt(vT㦄];{eέ 6?E>E֗Vm(,i+  ]?hȻNo|-h'Κ)(Sd:$[u^jU,z Ad-$~ 0Lo[Iִ'Ġ.WRaִ $|Gf2ö桇G?<ڞ~c+&H&<8vW4aǡ!̚6 SO?5Q) mYnHiHRk2a.6rhk r Uj&R3v]~>hwIUm7M|yǼ k(>Qrۏts_7:Anzٯ0sAPMGۀ7yu%LDDĒ uE'=̌ЄKsg+EUO.|,V _# P\Q`)Ш uRZ+ /imu4gsfI+V@XV 0,KFfO?"dN2+q4\LՎm!ҕ : k\|pD oQGO՞e#_j=֟`øhFt{o9UHbף!*{kk뷰uY%`"|TV't;&赺]nIG1z4.k5[&LLI$VB/LK1yi6KDV3;TC}!MmD\?M~(<3~U2W MGuO'PσE'a\c$>z4Z-z {g->0^+ -';ah Q˩Sֻ ѳT\;*}i{[yRtÈNj$>Imn #Z>1Uf91VI@$]Js%Y7W֮@ ؖd2+1z zR ȨZKlDٓui2g}! "P,1+Q'ŋ ۩Y'6"ԑ|f 5OL"SB8u)/'ohB2Y]fqy_l7>w ݍ8t9ɳ&ty,k<^KVMw~ラs:rzfeh@Ml5-g5wY.Ks9 ^8|]v]u:[2{ C j4֚MGfr6.<Y[-ǷSdTit;qiTgqJ H;1:Wf@P׫!1 Npϒ}VW~u OcVWX+*b >3,*Znlh;֨+˨K /$+51&PO1W|7·@X2o`-H^lDCzx^G IvDp"5B <$'iD0;8 =_g0vz!LH=?n0nxpa#NN=ա 4=(n*rVhQ꫆1H Z9r׵ Z@eɓ9J}:mRn1( !RۨdL)LWWk^F̬ *Nxsb_F?a]wuqm:bئN`EEb֏:o)@,VfCO#هAcD.иmǟ>11ϋŅzзhgv1(!2 L)^f lQ^.-z)?)xej@<OIq6 8M+87֢[^uR< 5p iV--= kGT#&F 6ܸvY*yJ}]98G7l)o`T?<]]<L Vz4*QJe U$&2>sA=QzK?:` `eˢXsp /N~+"oۛb{')Rثu.zxX$PHuʨ[yK|Vl&)NďAzhJ*{vթ:עԜ[P:J/s#Z ԛЦ6:ZsEWAUp=rVz2xU'nE>=2cwUY8|WDy?ٗB:1 ,İkŒP"9=,xp9c3)d .Ds.18 2\h GAźO7|+lmNG37sãYq/Wz=}iOemp;I~?e wy"%*D.ij}೟ٹ̒My|!L>KYaO֊V0B_ Dz6GY~:ՋW=6B\TzR}RBR~'D ' FYDӷ{/QNX9=[y&CzmsA bY ihk8E01.M<$I(+ CK2M,5)D>txwմ͞[6!PVG˹sƤeZ=SD̈HA9pfF6 0Dh&hJ R=XOS{t3t & {u╶8.GbA-#64nU:2w/p:X;%d=-F a3s=]'+uX*ų"&7͓' [U ?T?˄8썥*!J=2/R-6GDAgPj\^m:{ &FuC|CAbRFK >QKT$"vFÖ Od(=6Zv>X88Dҡꎄ~o댺RWA&1& b!CӖ?KBdDP0SQq-vXC2Ǭ`vi