RepoPull
RepoPull is a Python-based tool for automated library scanning and dependency management. It pulls repository metadata, scans for known vulnerabilities, and helps maintain a clean dependency tree. Key Features Automated library manifest discovery Vulnerability scanning integration (Snyk) Recursive dependency resolution Dockerized deployment support Architecture # Core scanning logic class RepoScanner: def __init__(self, repo_path: str): self.repo_path = repo_path self.manifests = [] def discover_manifests(self): """Find all dependency manifests in the repo.""" patterns = ['requirements.txt', 'Pipfile', 'pyproject.toml', 'package.json'] for pattern in patterns: matches = Path(self.repo_path).rglob(pattern) self.manifests.extend(matches) return self.manifests def scan_dependencies(self): """Parse manifests and extract dependency trees.""" deps = {} for manifest in self.manifests: with open(manifest) as f: content = f.read() deps[manifest.name] = self._parse_manifest(content) return deps Git History The project has evolved through several iterations: ...
