Skip to content

Commit 6143991

Browse files
radu-mocanuclaude
andauthored
docs: document uv.lock packing and --nolock flag (#423) (#1597)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 867a31e commit 6143991

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

packages/uipath/docs/cli/index.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,25 @@ authors = [{name = "Your Name", email = "your.email@example.com"}]
203203
```
204204
///
205205

206+
/// info
207+
### Dependency Locking
208+
209+
By default, `uipath pack` includes `uv.lock` in the `.nupkg` (creating it if it does not exist). The executor then installs the pinned versions from the lock file, so every run uses the exact same dependency versions.
210+
211+
Use `--nolock` to opt out — `uv.lock` is not added to the package. With no lock file present, the executor resolves dependencies on each run and picks the latest versions compatible with the constraints in your `pyproject.toml`.
212+
213+
<!-- termynal -->
214+
```shell
215+
> uipath pack --nolock
216+
⠋ Packaging project ...
217+
✓ Project successfully packaged.
218+
```
219+
220+
**When to lock (default):** you want reproducible runs and protection against breaking changes or malicious upgrades in your dependencies. The versions you tested with are the versions that run.
221+
222+
**When to use `--nolock`:** you want each run to pick up the latest patches automatically within your declared constraints, or your project does not use uv.
223+
///
224+
206225
<!-- termynal -->
207226
```shell
208227
> uipath pack
@@ -289,6 +308,19 @@ Importing referenced resources to Studio Web project...
289308

290309
🔵 Resource import summary: 0 total resources - 0 created, 0 updated, 0 unchanged, 0 not found
291310
```
311+
312+
/// info
313+
### Dependency Locking
314+
315+
By default, `uipath push` includes `uv.lock` in the upload (creating it if it does not exist). The executor then installs the pinned versions from the lock file, so every run uses the exact same dependency versions.
316+
317+
Use `--nolock` to opt out — `uv.lock` is not uploaded. With no lock file present, the executor resolves dependencies on each run and picks the latest versions compatible with the constraints in your `pyproject.toml`.
318+
319+
**When to lock (default):** you want reproducible runs and protection against breaking changes or malicious upgrades in your dependencies. The versions you tested with are the versions that run.
320+
321+
**When to use `--nolock`:** you want each run to pick up the latest patches automatically within your declared constraints, or your project does not use uv.
322+
///
323+
292324
---
293325

294326
::: mkdocs-click

0 commit comments

Comments
 (0)