# perform_dependency_refresh_dry_run

> **Function** in `deepagents_code`

📖 [View in docs](https://reference.langchain.com/python/deepagents-code/update_check/perform_dependency_refresh_dry_run)

Resolve a dependency refresh plan without mutating the tool environment.

`uv tool install` has no `--dry-run`, so this targets the running tool
environment with `uv pip install --dry-run --python <sys.executable>`. It
uses the same pinned `deepagents-code` requirement, installed extras, and
preserved `--with` packages as the real refresh command.

## Signature

```python
perform_dependency_refresh_dry_run(
    *,
    progress: UpgradeProgressCallback | None = None,
    log_path: Path | None = None,
    include_prereleases: bool | None = None,
) -> tuple[bool, str]
```

## Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `progress` | `UpgradeProgressCallback \| None` | No | Optional callback invoked for each output line. (default: `None`) |
| `log_path` | `Path \| None` | No | Optional path to persist command output. (default: `None`) |
| `include_prereleases` | `bool \| None` | No | Whether to include alpha/beta/rc releases. When `None`, follows the installed version's channel. (default: `None`) |

## Returns

`tuple[bool, str]`

`(success, output)` — *output* is the combined stdout/stderr from uv, or
an explanatory message when the plan cannot be computed safely.

---

[View source on GitHub](https://github.com/langchain-ai/deepagents/blob/e14e0adcbe78565ed3650e7f24b2a775d5437d25/libs/code/deepagents_code/update_check.py#L2141)