Viewing File: /opt/alt/python35/lib64/python3.5/distutils/command/__pycache__/sdist.cpython-35.opt-2.pyc



]-G@sddlZddlZddlZddlTddlmZddlmZddlmZddl	m
Z
mZmZm
Z
ddlmZddlTddlmZdd	l	mZdd
lmZddZGd
ddeZdS)N)*)glob)warn)Command)dir_utildep_util	file_utilarchive_util)TextFile)FileList)log)convert_pathcCsddlm}ddlm}g}x6|jD](}|jd|d||dfq3W|j||jddS)Nr)FancyGetopt)ARCHIVE_FORMATSzformats=z.List of available source distribution formats:)Zdistutils.fancy_getoptrZdistutils.archive_utilrkeysappendsort
print_help)rrformatsformatr*/opt/alt/python35/lib64/python3.5/sdist.pyshow_formatss
rc@sgeZdZdZddZdMdNdOdPdQdRdSdTdUddddfdVdWdXdYgZd
ddddd"gZd*dd+efgZd
d
ddiZ	d,d-d.d/iZ
d0efgZd1d2Zd3d4Z
d5d6Zd7d8Zd9d:Zd;d<Zd=d>Zd?d@ZdAdBZdCdDZdEdFZdGdHZdIdJZdKdLZdS)Zsdistz6create a source distribution (tarball, zip file, etc.)cCs|jS)N)metadata_check)selfrrrchecking_metadata&szsdist.checking_metadata	template=t5name of manifest template file [default: MANIFEST.in]	manifest=m)name of manifest file [default: MANIFEST]use-defaultsNRinclude the default file set in the manifest [default; disable with --no-defaults]no-defaults"don't include the default file setprunespecifically exclude files/directories that should not be distributed (build tree, RCS/CVS dirs, etc.) [default; disable with --no-prune]no-prune$don't automatically exclude anything
manifest-onlyoEjust regenerate the manifest and then stop (implies --force-manifest)force-manifestfkforcibly regenerate the manifest and carry on as usual. Deprecated: now the manifest is always regenerated.formats=6formats for source distribution (comma-separated list)z	keep-tempkz1keep the distribution tree around after creating zarchive file(s)	dist-dir=dFdirectory to put the source distribution archive(s) in [default: dist]metadata-check[Ensure that all required elements of meta-data are supplied. Warn if any missing. [default]owner=u@Owner name used when creating a tar file [default: current user]group=gAGroup name used when creating a tar file [default: current group]zhelp-formatsz#list available distribution formatsposixgztarntzipcheckcCsyd|_d|_d|_d|_d|_d|_d|_d|_d|_d|_	d|_
d|_d|_dS)Nr)
templatemanifestuse_defaultsr(
manifest_onlyZforce_manifestr	keep_tempdist_dir
archive_filesrownergroup)rrrrinitialize_optionsds												zsdist.initialize_optionscCs|jdkrd|_|jdkr0d|_|jd|jdkry|jtjg|_Wn%tk
rtdtjYnXt	j
|j}|rtd||jdkrd|_dS)NZMANIFESTzMANIFEST.inrz<don't know how to create source distributions on platform %szunknown archive format '%s'Zdist)
rGrFZensure_string_listrdefault_formatosnameKeyErrorZDistutilsPlatformErrorr	Zcheck_archive_formatsZDistutilsOptionErrorrK)rZ
bad_formatrrrfinalize_options{s$		


zsdist.finalize_optionscCsUt|_x!|jD]}|j|qW|j|jrGdS|jdS)N)rfilelistZget_sub_commandsZrun_command
get_file_listrImake_distribution)rZcmd_namerrrruns
	z	sdist.runcCs7tdt|jjd}|j|jdS)Nzadistutils.command.sdist.check_metadata is deprecated,               use the check command insteadrD)rPendingDeprecationWarningdistributionZget_command_objZensure_finalizedrX)rrDrrrcheck_metadatas


zsdist.check_metadatacCstjj|j}|rP|jrP|j|jj|jjdS|sn|j	dd|j|jj
|jr|j|r|j
|jr|j|jj|jj|jdS)Nz&manifest template '%s' does not exist z(using default file list))rQpathisfilerF_manifest_is_not_generated
read_manifestrUrZremove_duplicatesrfindallrHadd_defaults
read_templater(prune_file_listwrite_manifest)rZtemplate_existsrrrrVs(


	
	

	


zsdist.get_file_listcCsd|jjg}x|D]}t|tr|}d}x7|D]/}tjj|rAd}|jj|PqAW|s|j	ddj
|qtjj|r|jj|q|j	d|qWdd	g}x9|D]1}ttjjt
|}|jj|qW|jd
}|jjrM|jj|jxM|jD]B\}	}
}}x-|D]%}
|jjtjj
|
|
qpWqWW|jjrNx|jjD]}t|trt|}tjj|rJ|jj|q|\}}x<|D]4}t|}tjj|r|jj|qWqW|jjr|jd}|jj|j|jjr|jd}|jj|j|jjr|jd
}|jj|jdS)NREADME
README.txtFTz,standard file not found: should have one of z, zstandard file '%s' not foundz
test/test*.pyz	setup.cfgbuild_py	build_ext
build_clib
build_scripts)rerf)rZZscript_name
isinstancetuplerQr\existsrUrrjoinfilterr]rextendget_finalized_commandZhas_pure_modulesZget_source_filesZ
data_filesZhas_data_filesstrr
Zhas_ext_modulesZhas_c_librariesZhas_scripts)rZ	standardsfnZaltsZgot_itZoptionalpatternfilesrgZpkgZsrc_dirZ	build_dir	filenamesfilenameitemdirnamer0rhrirjrrrras\

	

'
zsdist.add_defaultscCstjd|jt|jdddddddddddd}zx|j}|dkrePy|jj|WqLttfk
r}z%|j	d	|j
|j|fWYdd}~XqLXqLWWd|jXdS)
Nzreading manifest template '%s'Zstrip_commentsrEZskip_blanksZ
join_linesZ	lstrip_wsZ	rstrip_wsZ
collapse_joinz%s, line %d: %s)
rinforFr
readlinerUZprocess_template_lineZDistutilsTemplateError
ValueErrorrrwZcurrent_lineclose)rrFlinemsgrrrrb(s 	&zsdist.read_templatecCs|jd}|jj}|jjdd|j|jjdd|tjdkred}nd}dddd	d
ddg}d
|dj||f}|jj|dddS)Nbuildprefixwin32z/|\\/ZRCSZCVSz\.svnz\.hgz\.gitz\.bzrZ_darcsz(^|%s)(%s)(%s).*|Zis_regexrE)	rqrZget_fullnamerUZexclude_patternZ
build_basesysplatformrn)rrbase_dirsepsZvcs_dirsZvcs_ptrnrrrrcEs		zsdist.prune_file_listcCst|jr$tjd|jdS|jjdd}|jdd|jtj	|j|fd|jdS)Nz5not writing to manually maintained manifest file '%s'rz*# file GENERATED by distutils, do NOT editzwriting manifest file '%s')
r^rrzrGrUruinsertZexecuterZ
write_file)rZcontentrrrrd]s	zsdist.write_manifestc
CsPtjj|jsdSt|j}z|j}Wd|jX|dkS)NFz+# file GENERATED by distutils, do NOT edit
)rQr\r]rGopenr{r})rfpZ
first_linerrrr^lsz sdist._manifest_is_not_generatedcCsvtjd|jt|j}xC|D];}|j}|jds)|rTq)|jj|q)W|jdS)Nzreading manifest file '%s'#)	rrzrGrstrip
startswithrUrr})rrGr~rrrr_xs
zsdist.read_manifestcCs|j|tj||d|jttdrHd}d|}nd}d|}|sntjdn
tj|x_|D]W}tj	j
|stjd|qtj	j||}|j||d|qW|j
jj|dS)Ndry_runlinkZhardzmaking hard links in %s...zcopying files to %s...z)no files to distribute -- empty manifest?z#'%s' not a regular file -- skipping)ZmkpathrZcreate_treerhasattrrQrrrzr\r]rnZ	copy_filerZZmetadataZwrite_pkg_info)rrrurrfiledestrrrmake_release_trees 
	



zsdist.make_release_treec
Cs
|jj}tjj|j|}|j||jjg}d|j	krz|j	j
|j	j|j	jdxd|j	D]Y}|j
||d|d|jd|j}|j
||jjj
dd|fqW||_|js	tj|d|jdS)NtarrrMrNrr)rZrrQr\rnrKrrUrurrpopindexmake_archiverMrNZ
dist_filesrLrJrZremove_treer)rr	base_namerLfmtrrrrrWs
(
 		zsdist.make_distributioncCs|jS)N)rL)rrrrget_archive_filesszsdist.get_archive_files)rrr )r!r"r#)r$Nr%)r&Nr')r(Nr))r*Nr+)r,r-r.)r/r0r1)r2Nr3)r5r6r7)r8Nr9)r:r;r<)r=r>r?)__name__
__module____qualname__descriptionrZuser_optionsZboolean_optionsrZhelp_optionsZnegative_optrPZsub_commandsrOrTrXr[rVrarbrcrdr^r_rrWrrrrrr"sn	(P*r)rQstringrtypesrwarningsrZdistutils.corerZ	distutilsrrrr	Zdistutils.text_filer
Zdistutils.errorsZdistutils.filelistrrZdistutils.utilr
rrrrrr<module>s
"

Back to Directory File Manager