MCPcopy Create free account
hub / github.com/github/gh-aw / validatePipPackages

Method validatePipPackages

pkg/workflow/pip_validation.go:101–127  ·  view source on GitHub ↗

validatePipPackages validates that pip packages are available on PyPI

(workflowData *WorkflowData)

Source from the content-addressed store, hash-verified

99
100// validatePipPackages validates that pip packages are available on PyPI
101func (c *Compiler) validatePipPackages(workflowData *WorkflowData) error {
102 packages := extractPipPackages(workflowData)
103 if len(packages) == 0 {
104 pipValidationLog.Print("No pip packages to validate")
105 return nil
106 }
107
108 pipValidationLog.Printf("Starting pip package validation for %d packages", len(packages))
109
110 // Check if pip is available
111 pipCmd := "pip"
112 _, err := exec.LookPath("pip")
113 if err != nil {
114 // Try pip3 as fallback
115 _, err3 := exec.LookPath("pip3")
116 if err3 != nil {
117 pipValidationLog.Print("pip command not found, skipping validation")
118 fmt.Fprintln(os.Stderr, console.FormatWarningMessage("pip command not found - skipping pip package validation. Install Python/pip for full validation"))
119 return nil
120 }
121 pipCmd = "pip3"
122 pipValidationLog.Print("Using pip3 command for validation")
123 }
124
125 c.validatePythonPackagesWithPip(packages, "pip", pipCmd)
126 return nil
127}
128
129// validateUvPackages validates that uv packages are available
130func (c *Compiler) validateUvPackages(workflowData *WorkflowData) error {

Callers 1

Calls 5

FormatWarningMessageFunction · 0.92
extractPipPackagesFunction · 0.85
PrintMethod · 0.80
PrintfMethod · 0.45

Tested by

no test coverage detected