Current Path: > > lib > python2.7 > site-packages > setuptools > > > command
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
__init__.py | File | 594 bytes | April 10 2024 05:04:00. | |
__init__.pyc | File | 882 bytes | April 10 2024 05:04:00. | |
__init__.pyo | File | 882 bytes | April 10 2024 05:04:00. | |
alias.py | File | 2426 bytes | April 10 2024 05:04:00. | |
alias.pyc | File | 3098 bytes | April 10 2024 05:04:00. | |
alias.pyo | File | 3098 bytes | April 10 2024 05:04:00. | |
bdist_egg.py | File | 18185 bytes | April 10 2024 05:04:00. | |
bdist_egg.pyc | File | 18388 bytes | April 10 2024 05:04:00. | |
bdist_egg.pyo | File | 18388 bytes | April 10 2024 05:04:00. | |
bdist_rpm.py | File | 1508 bytes | April 10 2024 05:04:00. | |
bdist_rpm.pyc | File | 1914 bytes | April 10 2024 05:04:00. | |
bdist_rpm.pyo | File | 1914 bytes | April 10 2024 05:04:00. | |
bdist_wininst.py | File | 637 bytes | April 10 2024 05:04:00. | |
bdist_wininst.pyc | File | 1191 bytes | April 10 2024 05:04:00. | |
bdist_wininst.pyo | File | 1191 bytes | April 10 2024 05:04:00. | |
build_clib.py | File | 4484 bytes | April 10 2024 05:04:00. | |
build_clib.pyc | File | 2844 bytes | April 10 2024 05:04:00. | |
build_clib.pyo | File | 2844 bytes | April 10 2024 05:04:00. | |
build_ext.py | File | 13173 bytes | April 10 2024 05:04:00. | |
build_ext.pyc | File | 12571 bytes | April 10 2024 05:04:00. | |
build_ext.pyo | File | 12527 bytes | April 10 2024 05:04:00. | |
build_py.py | File | 9596 bytes | April 10 2024 05:04:00. | |
build_py.pyc | File | 10667 bytes | April 10 2024 05:04:00. | |
build_py.pyo | File | 10667 bytes | April 10 2024 05:04:00. | |
develop.py | File | 8046 bytes | April 10 2024 05:04:00. | |
develop.pyc | File | 7900 bytes | April 10 2024 05:04:00. | |
develop.pyo | File | 7900 bytes | April 10 2024 05:04:00. | |
dist_info.py | File | 960 bytes | April 10 2024 05:04:00. | |
dist_info.pyc | File | 1799 bytes | April 10 2024 05:04:00. | |
dist_info.pyo | File | 1799 bytes | April 10 2024 05:04:00. | |
easy_install.py | File | 87032 bytes | April 10 2024 05:04:00. | |
easy_install.pyc | File | 80382 bytes | April 10 2024 05:04:00. | |
easy_install.pyo | File | 80325 bytes | April 10 2024 05:04:00. | |
egg_info.py | File | 24800 bytes | April 10 2024 05:04:00. | |
egg_info.pyc | File | 25896 bytes | April 10 2024 05:04:00. | |
egg_info.pyo | File | 25896 bytes | April 10 2024 05:04:00. | |
install.py | File | 4683 bytes | April 10 2024 05:04:00. | |
install.pyc | File | 4953 bytes | April 10 2024 05:04:00. | |
install.pyo | File | 4953 bytes | April 10 2024 05:04:00. | |
install_egg_info.py | File | 2203 bytes | April 10 2024 05:04:00. | |
install_egg_info.pyc | File | 3185 bytes | April 10 2024 05:04:00. | |
install_egg_info.pyo | File | 3185 bytes | April 10 2024 05:04:00. | |
install_lib.py | File | 3840 bytes | April 10 2024 05:04:00. | |
install_lib.pyc | File | 4870 bytes | April 10 2024 05:04:00. | |
install_lib.pyo | File | 4824 bytes | April 10 2024 05:04:00. | |
install_scripts.py | File | 2439 bytes | April 10 2024 05:04:00. | |
install_scripts.pyc | File | 2891 bytes | April 10 2024 05:04:00. | |
install_scripts.pyo | File | 2891 bytes | April 10 2024 05:04:00. | |
launcher manifest.xml | File | 628 bytes | April 10 2024 05:04:00. | |
py36compat.py | File | 4986 bytes | April 10 2024 05:04:00. | |
py36compat.pyc | File | 5550 bytes | April 10 2024 05:04:00. | |
py36compat.pyo | File | 5550 bytes | April 10 2024 05:04:00. | |
register.py | File | 270 bytes | April 10 2024 05:04:00. | |
register.pyc | File | 710 bytes | April 10 2024 05:04:00. | |
register.pyo | File | 710 bytes | April 10 2024 05:04:00. | |
rotate.py | File | 2164 bytes | April 10 2024 05:04:00. | |
rotate.pyc | File | 3036 bytes | April 10 2024 05:04:00. | |
rotate.pyo | File | 3036 bytes | April 10 2024 05:04:00. | |
saveopts.py | File | 658 bytes | April 10 2024 05:04:00. | |
saveopts.pyc | File | 1129 bytes | April 10 2024 05:04:00. | |
saveopts.pyo | File | 1129 bytes | April 10 2024 05:04:00. | |
sdist.py | File | 6711 bytes | April 10 2024 05:04:00. | |
sdist.pyc | File | 7823 bytes | April 10 2024 05:04:00. | |
sdist.pyo | File | 7823 bytes | April 10 2024 05:04:00. | |
setopt.py | File | 5085 bytes | April 10 2024 05:04:00. | |
setopt.pyc | File | 6050 bytes | April 10 2024 05:04:00. | |
setopt.pyo | File | 6050 bytes | April 10 2024 05:04:00. | |
test.py | File | 9214 bytes | April 10 2024 05:04:00. | |
test.pyc | File | 10468 bytes | April 10 2024 05:04:00. | |
test.pyo | File | 10468 bytes | April 10 2024 05:04:00. | |
upload.py | File | 1172 bytes | April 10 2024 05:04:00. | |
upload.pyc | File | 1636 bytes | April 10 2024 05:04:00. | |
upload.pyo | File | 1636 bytes | April 10 2024 05:04:00. | |
upload_docs.py | File | 7311 bytes | April 10 2024 05:04:00. | |
upload_docs.pyc | File | 7842 bytes | April 10 2024 05:04:00. | |
upload_docs.pyo | File | 7813 bytes | April 10 2024 05:04:00. |
# -*- coding: utf-8 -*- """upload_docs Implements a Distutils 'upload_docs' subcommand (upload documentation to PyPI's pythonhosted.org). """ from base64 import standard_b64encode from distutils import log from distutils.errors import DistutilsOptionError import os import socket import zipfile import tempfile import shutil import itertools import functools from setuptools.extern import six from setuptools.extern.six.moves import http_client, urllib from pkg_resources import iter_entry_points from .upload import upload def _encode(s): errors = 'surrogateescape' if six.PY3 else 'strict' return s.encode('utf-8', errors) class upload_docs(upload): # override the default repository as upload_docs isn't # supported by Warehouse (and won't be). DEFAULT_REPOSITORY = 'https://pypi.python.org/pypi/' description = 'Upload documentation to PyPI' user_options = [ ('repository=', 'r', "url of repository [default: %s]" % upload.DEFAULT_REPOSITORY), ('show-response', None, 'display full response text from server'), ('upload-dir=', None, 'directory to upload'), ] boolean_options = upload.boolean_options def has_sphinx(self): if self.upload_dir is None: for ep in iter_entry_points('distutils.commands', 'build_sphinx'): return True sub_commands = [('build_sphinx', has_sphinx)] def initialize_options(self): upload.initialize_options(self) self.upload_dir = None self.target_dir = None def finalize_options(self): upload.finalize_options(self) if self.upload_dir is None: if self.has_sphinx(): build_sphinx = self.get_finalized_command('build_sphinx') self.target_dir = build_sphinx.builder_target_dir else: build = self.get_finalized_command('build') self.target_dir = os.path.join(build.build_base, 'docs') else: self.ensure_dirname('upload_dir') self.target_dir = self.upload_dir if 'pypi.python.org' in self.repository: log.warn("Upload_docs command is deprecated. Use RTD instead.") self.announce('Using upload directory %s' % self.target_dir) def create_zipfile(self, filename): zip_file = zipfile.ZipFile(filename, "w") try: self.mkpath(self.target_dir) # just in case for root, dirs, files in os.walk(self.target_dir): if root == self.target_dir and not files: tmpl = "no files found in upload directory '%s'" raise DistutilsOptionError(tmpl % self.target_dir) for name in files: full = os.path.join(root, name) relative = root[len(self.target_dir):].lstrip(os.path.sep) dest = os.path.join(relative, name) zip_file.write(full, dest) finally: zip_file.close() def run(self): # Run sub commands for cmd_name in self.get_sub_commands(): self.run_command(cmd_name) tmp_dir = tempfile.mkdtemp() name = self.distribution.metadata.get_name() zip_file = os.path.join(tmp_dir, "%s.zip" % name) try: self.create_zipfile(zip_file) self.upload_file(zip_file) finally: shutil.rmtree(tmp_dir) @staticmethod def _build_part(item, sep_boundary): key, values = item title = '\nContent-Disposition: form-data; name="%s"' % key # handle multiple entries for the same name if not isinstance(values, list): values = [values] for value in values: if isinstance(value, tuple): title += '; filename="%s"' % value[0] value = value[1] else: value = _encode(value) yield sep_boundary yield _encode(title) yield b"\n\n" yield value if value and value[-1:] == b'\r': yield b'\n' # write an extra newline (lurve Macs) @classmethod def _build_multipart(cls, data): """ Build up the MIME payload for the POST data """ boundary = b'--------------GHSKFJDLGDS7543FJKLFHRE75642756743254' sep_boundary = b'\n--' + boundary end_boundary = sep_boundary + b'--' end_items = end_boundary, b"\n", builder = functools.partial( cls._build_part, sep_boundary=sep_boundary, ) part_groups = map(builder, data.items()) parts = itertools.chain.from_iterable(part_groups) body_items = itertools.chain(parts, end_items) content_type = 'multipart/form-data; boundary=%s' % boundary.decode('ascii') return b''.join(body_items), content_type def upload_file(self, filename): with open(filename, 'rb') as f: content = f.read() meta = self.distribution.metadata data = { ':action': 'doc_upload', 'name': meta.get_name(), 'content': (os.path.basename(filename), content), } # set up the authentication credentials = _encode(self.username + ':' + self.password) credentials = standard_b64encode(credentials) if six.PY3: credentials = credentials.decode('ascii') auth = "Basic " + credentials body, ct = self._build_multipart(data) msg = "Submitting documentation to %s" % (self.repository) self.announce(msg, log.INFO) # build the Request # We can't use urllib2 since we need to send the Basic # auth right with the first request schema, netloc, url, params, query, fragments = \ urllib.parse.urlparse(self.repository) assert not params and not query and not fragments if schema == 'http': conn = http_client.HTTPConnection(netloc) elif schema == 'https': conn = http_client.HTTPSConnection(netloc) else: raise AssertionError("unsupported schema " + schema) data = '' try: conn.connect() conn.putrequest("POST", url) content_type = ct conn.putheader('Content-type', content_type) conn.putheader('Content-length', str(len(body))) conn.putheader('Authorization', auth) conn.endheaders() conn.send(body) except socket.error as e: self.announce(str(e), log.ERROR) return r = conn.getresponse() if r.status == 200: msg = 'Server response (%s): %s' % (r.status, r.reason) self.announce(msg, log.INFO) elif r.status == 301: location = r.getheader('Location') if location is None: location = 'https://pythonhosted.org/%s/' % meta.get_name() msg = 'Upload successful. Visit %s' % location self.announce(msg, log.INFO) else: msg = 'Upload failed (%s): %s' % (r.status, r.reason) self.announce(msg, log.ERROR) if self.show_response: print('-' * 75, r.read(), '-' * 75)
SILENT KILLER Tool