Metadata-Version: 2.4
Name: loopgrade
Version: 0.1.1
Summary: Autonomous dependency upgrader powered by LangGraph and LLMs
License-Expression: MIT
Project-URL: Homepage, https://github.com/Sagar-S-R/loopgrade
Project-URL: Repository, https://github.com/Sagar-S-R/loopgrade
Keywords: dependency,upgrade,langgraph,llm,cli,automation
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: langgraph>=0.2.0
Requires-Dist: langchain-groq>=0.1.0
Requires-Dist: langchain-google-genai>=1.0.0
Requires-Dist: typer>=0.12.0
Requires-Dist: rich>=13.0.0
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: packaging>=24.0
Requires-Dist: requests>=2.31.0

# loopgrade

Autonomous dependency upgrader powered by LangGraph and LLMs.

Upgrades your dependencies one at a time, runs your tests, 
reverts what breaks — without you touching anything.

---

## The Problem

Running `ncu -u` or `pip install --upgrade` upgrades everything 
at once. When something breaks you have no idea which package 
caused it. So you don't upgrade. Deps rot. Security patches pile up.

loopgrade fixes this — one dependency at a time.

---

## How It Works

1. Detects all outdated dependencies
2. Picks one, checks for version conflicts before touching any file
3. Upgrades it, runs your tests
4. Tests pass → keeps the change, moves to next dep
5. Tests fail → reverts the file automatically, logs the reason
6. Gives you a full report of what upgraded, what failed, and why

---

## Installation

```bash
pip install loopgrade
```

Prerequisites:
- Python 3.10+
- For npm projects: `npm install -g npm-check-updates`
- A Groq or Gemini API key (both have free tiers)

---

## Quick Start

```bash
cd your-project
loopgrade init
# add your API key to .env
loopgrade run
```

---

## Supported Package Managers

- npm (`package.json`)
- pip (`requirements.txt`)

---

## Configuration

```json
{
  "llm_provider": "groq",
  "model": "llama-3.3-70b-versatile",
  "max_iterations": 20,
  "max_retries_per_dep": 3,
  "package_manager": "npm",
  "test_command": "npm test",
  "skip_major_versions": false,
  "skip": []
}
```

---

## Links

- GitHub: https://github.com/Sagar-S-R/loopgrade
- Groq API: https://console.groq.com
- Gemini API: https://aistudio.google.com
