Qucs-S S-parameter Viewer & RF Synthesis Tools
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
pip._internal.operations.build.build_tracker.BuildTracker Class Reference

Public Member Functions

None __init__ (self, str root)
 
"BuildTracker" __enter__ (self)
 
None __exit__ (self, Optional[Type[BaseException]] exc_type, Optional[BaseException] exc_val, Optional[TracebackType] exc_tb)
 
None add (self, InstallRequirement req, TrackerId key)
 
None remove (self, InstallRequirement req, TrackerId key)
 
None cleanup (self)
 
Generator[None, None, None] track (self, InstallRequirement req, str key)
 

Protected Member Functions

str _entry_path (self, TrackerId key)
 

Protected Attributes

 _root
 

Detailed Description

Ensure that an sdist cannot request itself as a setup requirement.

When an sdist is prepared, it identifies its setup requirements in the
context of ``BuildTracker.track()``. If a requirement shows up recursively, this
raises an exception.

This stops fork bombs embedded in malicious packages.

Member Function Documentation

◆ add()

None pip._internal.operations.build.build_tracker.BuildTracker.add (   self,
InstallRequirement  req,
TrackerId  key 
)
Add an InstallRequirement to build tracking.

◆ remove()

None pip._internal.operations.build.build_tracker.BuildTracker.remove (   self,
InstallRequirement  req,
TrackerId  key 
)
Remove an InstallRequirement from build tracking.

◆ track()

Generator[None, None, None] pip._internal.operations.build.build_tracker.BuildTracker.track (   self,
InstallRequirement  req,
str  key 
)
Ensure that `key` cannot install itself as a setup requirement.

:raises LookupError: If `key` was already provided in a parent invocation of
                     the context introduced by this method.

The documentation for this class was generated from the following file: