X7ROOT File Manager
Current Path:
/opt/cloudlinux/venv/lib/python3.11/site-packages/setuptools/command
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
setuptools
/
command
/
ðŸ“
..
📄
__init__.py
(803 B)
ðŸ“
__pycache__
📄
_requirestxt.py
(4.13 KB)
📄
alias.py
(2.32 KB)
📄
bdist_egg.py
(16.57 KB)
📄
bdist_rpm.py
(1.4 KB)
📄
bdist_wheel.py
(21.72 KB)
📄
build.py
(5.91 KB)
📄
build_clib.py
(4.42 KB)
📄
build_ext.py
(17.95 KB)
📄
build_py.py
(15.17 KB)
📄
develop.py
(6.72 KB)
📄
dist_info.py
(3.37 KB)
📄
easy_install.py
(85.81 KB)
📄
editable_wheel.py
(34.79 KB)
📄
egg_info.py
(25.37 KB)
📄
install.py
(6.88 KB)
📄
install_egg_info.py
(2.03 KB)
📄
install_lib.py
(4.22 KB)
📄
install_scripts.py
(2.58 KB)
📄
launcher manifest.xml
(628 B)
📄
rotate.py
(2.14 KB)
📄
saveopts.py
(692 B)
📄
sdist.py
(7.2 KB)
📄
setopt.py
(4.98 KB)
📄
test.py
(1.31 KB)
Editing: rotate.py
from __future__ import annotations import os from typing import ClassVar from .. import Command, _shutil from distutils import log from distutils.errors import DistutilsOptionError from distutils.util import convert_path class rotate(Command): """Delete older distributions""" description = "delete older distributions, keeping N newest files" user_options = [ ('match=', 'm', "patterns to match (required)"), ('dist-dir=', 'd', "directory where the distributions are"), ('keep=', 'k', "number of matching distributions to keep"), ] boolean_options: ClassVar[list[str]] = [] def initialize_options(self): self.match = None self.dist_dir = None self.keep = None def finalize_options(self) -> None: if self.match is None: raise DistutilsOptionError( "Must specify one or more (comma-separated) match patterns " "(e.g. '.zip' or '.egg')" ) if self.keep is None: raise DistutilsOptionError("Must specify number of files to keep") try: self.keep = int(self.keep) except ValueError as e: raise DistutilsOptionError("--keep must be an integer") from e if isinstance(self.match, str): self.match = [convert_path(p.strip()) for p in self.match.split(',')] self.set_undefined_options('bdist', ('dist_dir', 'dist_dir')) def run(self) -> None: self.run_command("egg_info") from glob import glob for pattern in self.match: pattern = self.distribution.get_name() + '*' + pattern files = glob(os.path.join(self.dist_dir, pattern)) files = [(os.path.getmtime(f), f) for f in files] files.sort() files.reverse() log.info("%d file(s) matching %s", len(files), pattern) files = files[self.keep :] for t, f in files: log.info("Deleting %s", f) if not self.dry_run: if os.path.isdir(f): _shutil.rmtree(f) else: os.unlink(f)
Upload File
Create Folder