/usr/lib/python2.6/site-packages/pbr
NameSizeModeActions
cmd/-0755rm
hooks/-0755rm
tests/-0755rm
builddoc.py90840644editdlrm
builddoc.pyc77030644editdlrm
core.py62410644editdlrm
core.pyc34060644editdlrm
extra_files.py10960644editdlrm
extra_files.pyc7630644editdlrm
find_package.py10430644editdlrm
find_package.pyc7450644editdlrm
git.py99170644editdlrm
git.pyc93090644editdlrm
options.py23710644editdlrm
options.pyc5320644editdlrm
packaging.py229910644editdlrm
packaging.pyc230420644editdlrm
pbr_json.py11880644editdlrm
pbr_json.pyc7520644editdlrm
testr_command.py54460644editdlrm
testr_command.pyc57490644editdlrm
util.py248780644editdlrm
util.pyc176260644editdlrm
version.py185610644editdlrm
version.pyc165280644editdlrm
__init__.py00644editdlrm
__init__.pyc1280644editdlrm
Edit: /usr/lib/python2.6/site-packages/pbr/util.pyc (17626B)
;vVc%@sdZyddkZWnej onXddkZddkZddkZddkZddkZddkl Z ddk Z ddk l Z ddk lZlZlZddklZddklZddklZyddkZWnej oddkZnXdd klZddkZeid ZhdKd 6dLd 6dMd6dNd6dOd6dPd6dQd6dRd6dSd6dTd6dUd6dVd6dWd6dXd6dYd6dZd!6d[d#6d\d%6d]d(6d^d)6d_d*6d`d+6dad,6dbd-6dcd/6ddd26ded46dfd56dgd66dhd76did86ZdjZdkZ dlZ!d9Z"d:d;Z#d<Z$d=Z%d>Z&d?Z'd@Z(dAZ)dBZ*dCZ+dDZ,dEZ-dFZ.dGe fdHYZ/dIe0fdJYZ1dS(msThe code in this module is mostly copy/pasted out of the distutils2 source code, as recommended by Tarek Ziade. As such, it may be subject to some change as distutils2 development continues, and will have to be kept up to date. I didn't want to use it directly from distutils2 itself, since I do not want it to be an installation dependency for our packages yet--it is still too unstable (the latest version on PyPI doesn't even install). iN(t defaultdict(tlog(tDistutilsOptionErrortDistutilsModuleErrortDistutilsFileError(tmanifest_maker(t Distribution(t Extension(t extra_filess\s*(.*?)\s*\((.*)\)\s*$tmetadatatnametversiontauthort author_emailt maintainertmaintainer_emailt home_pageturltsummaryt descriptiontkeywordstlong_descriptions download-urlt classifiert classifierstplatformt platformstlicenset requires_disttinstall_requirestsetup_requires_disttsetup_requirest provides_disttprovidestobsoletes_distt obsoletestfilest packages_roott package_dirtpackagest package_datatnamespace_packagest data_filestscriptstmodulest py_modulestglobaltcommandstcmdclasstbackwards_compattuse_2to3tzip_safet tests_requiretdependency_linkstinclude_package_datac Cs|id}t|d}|| }|d}x|djouy#tdi|d|g}PWq6tj o?|djon|d8}|| }||}d}q6Xq6WxG||D];}yt||}Wqtj ot|qXqW|S(sResolve a name like ``module.object`` to an object and return it. Raise ImportError if the module or name is not found. t.iiitfromlistt(tsplittlent __import__tjoint ImportErrortgetattrtAttributeError(R tpartstcursort module_namet attr_nametrettpart((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyt resolve_names.        s setup.cfgc Csti}tii|p tdtii|n|i|h}x-|iD]}t |i |||}t|} z|| iid7}Wd| iXqW|}qq"qn|tjot |}n|t jot|}n5|t jo'|i djo t }qt}n|oa|djo1g} |D]} | tid| q~ }n|djozg} d} x]|D]U}ti| |}|idi}|idi}| i||fqW| |d[^;]*);?(?P[^#]*?)(?:\s*#.*)?$tpackaget env_markerR%R'R)t=s1malformed package_data first line %r (misses "=")R/textrass6(?P[^:]*):?(?P[^#]*?)(?:\s*#.*)?$s%s:(%s)textras_require(strueRvRwsyesRy(sinstall_requiresR3(s package_datas data_files(tD1_D2_SETUP_ARGSR:RTRWtopenRPtstriptcloset CSV_FIELDSt split_csvt MULTI_FIELDSt BOOL_FIELDStlowerRbRct_VERSION_SPEC_REtsubtretmatchtgrouptappendtNoneR9textendRRSRRFtget_command_namet setdefaultRi($RkRqtall_requirementstargRltoptiont in_cfg_valuetvaluetfilenameRtRmtpredRtrequirement_patternt requirementtmtrequirement_packageR{R)t firstlinetprevtlinetkeyR/tdisttcls_nametclstcmdR}textratextra_requirementst requirementst extras_valueR~t req_groupt extras_key((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyRas            *                 ! cCst|dd}|ot|}x|D]}t|}t|do |i}n |i}t|do |i}n d|}|i}ti i }||i|f||s (RRRS(Rk((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyRfs  c Cs7t}|ix|iD]\}}h}x|i|iD]n\}}|d}|idp|ido8|idd\}}|i|h} || |Rtvaluest isinstancetstrRFR=RURZRRRRtinfoRRYR[R\R](tcmd_objt hook_kindR_Rnthook_objterrRp((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyR=s4    cCsv||jo|||jo |||S||jo6|idd||jo|||iddStSdS(NRt-(treplaceRc(RkRlR((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyRTfs  *cCsCg}d|idDD]}|o ||qq~}|S(s3Special behaviour when we have a multi line optionscssx|]}|iVqWdS(N(R(RR((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pys ss s (R9(RRmtelement((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyRWoscCsCg}d|idDD]}|o ||qq~}|S(s8Special behaviour when we have a comma separated optionscssx|]}|iVqWdS(N(R(Rtchunk((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pys |s t,(R9(RRmR((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyRxscsfd}|S(s[A function decorator to monkey-patch a method of the same name on the given class. csXt|id}|o8t|d o't|d|t|i|n|S(Nt_orig(R>RRRtsetattr(tfunctorig(R(s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pytwrappers ((RR((Rs%/tmp/pip-build-cD3xZi/pbr/pbr/util.pytmonkeypatch_methodstDefaultGetDictcBseZdZddZRS(sXLike defaultdict, but the get() method also sets and returns the default value. cCs6|djo|i}ntt|i||S(N(Rtdefault_factorytsuperRR(RRtdefault((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyRs N(RRt__doc__RR(((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyRst IgnoreDictcBs eZdZdZdZRS(sA dictionary that ignores any insertions in which the key is a string matching any string in `ignore`. The ignore list can also contain wildcard patterns using '*'. c CsJtiddig}|D]}||iddq~|_dS(Ns(%s)t|t*s.*(RtcompileR<Rt_IgnoreDict__ignore(RtignoreRmtpat((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyt__init__scCs5|ii|odStt|i||dS(N(RRRRt __setitem__(RRR((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyRs(RRRRR(((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyRs (smetadata(smetadata(smetadata(smetadata(smetadata(smetadata(smetadataR(smetadatassummary(smetadata(smetadatas description(smetadata(smetadataR(smetadatasplatform(smetadata(smetadatas requires_dist(smetadataR(smetadataR(smetadataR!(sfiless packages_root(sfiles(sfiles(sfiles(sfiles(sfiles(sfilessmodules(sglobalscommands(R0R1(R0szip_safe(R0s tests_require(R0(R0(s classifierss platformssinstall_requiressprovidess obsoletesR(spackagess package_datas data_filessscriptss py_modulessdependency_linksRs tests_requirescmdclass(R1szip_safesinclude_package_data(skeywords(2RtmultiprocessingR=tloggingRLRRUR[t collectionsRtdistutils.ccompilerRRtdistutils.errorsRRRtsetuptools.command.egg_infoRtsetuptools.distRtsetuptools.extensionRt ConfigParserRJR^Rt pbr.hooksRRRRRRRFRsRaRdReRfRgRRRTRWRRRRRR(((s%/tmp/pip-build-cD3xZi/pbr/pbr/util.pyt5s         V " 5   )