You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			56 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
			
		
		
	
	
			56 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
import site
 | 
						|
import subprocess
 | 
						|
import sys
 | 
						|
 | 
						|
from setuptools import Command
 | 
						|
from setuptools.warnings import SetuptoolsDeprecationWarning
 | 
						|
 | 
						|
 | 
						|
class develop(Command):
 | 
						|
    """Set up package for development"""
 | 
						|
 | 
						|
    user_options = [
 | 
						|
        ("install-dir=", "d", "install package to DIR"),
 | 
						|
        ('no-deps', 'N', "don't install dependencies"),
 | 
						|
        ('user', None, f"install in user site-package '{site.USER_SITE}'"),
 | 
						|
        ('prefix=', None, "installation prefix"),
 | 
						|
        ("index-url=", "i", "base URL of Python Package Index"),
 | 
						|
    ]
 | 
						|
    boolean_options = [
 | 
						|
        'no-deps',
 | 
						|
        'user',
 | 
						|
    ]
 | 
						|
 | 
						|
    install_dir = None
 | 
						|
    no_deps = False
 | 
						|
    user = False
 | 
						|
    prefix = None
 | 
						|
    index_url = None
 | 
						|
 | 
						|
    def run(self):
 | 
						|
        cmd = (
 | 
						|
            [sys.executable, '-m', 'pip', 'install', '-e', '.', '--use-pep517']
 | 
						|
            + ['--target', self.install_dir] * bool(self.install_dir)
 | 
						|
            + ['--no-deps'] * self.no_deps
 | 
						|
            + ['--user'] * self.user
 | 
						|
            + ['--prefix', self.prefix] * bool(self.prefix)
 | 
						|
            + ['--index-url', self.index_url] * bool(self.index_url)
 | 
						|
        )
 | 
						|
        subprocess.check_call(cmd)
 | 
						|
 | 
						|
    def initialize_options(self):
 | 
						|
        DevelopDeprecationWarning.emit()
 | 
						|
 | 
						|
    def finalize_options(self) -> None:
 | 
						|
        pass
 | 
						|
 | 
						|
 | 
						|
class DevelopDeprecationWarning(SetuptoolsDeprecationWarning):
 | 
						|
    _SUMMARY = "develop command is deprecated."
 | 
						|
    _DETAILS = """
 | 
						|
    Please avoid running ``setup.py`` and ``develop``.
 | 
						|
    Instead, use standards-based tools like pip or uv.
 | 
						|
    """
 | 
						|
    _SEE_URL = "https://github.com/pypa/setuptools/issues/917"
 | 
						|
    _DUE_DATE = 2025, 10, 31
 |