You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+17Lines changed: 17 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,14 +17,31 @@
17
17
18
18
## Unreleased
19
19
20
+
#### 💥 Breaking
21
+
22
+
-**Lockfiles**
23
+
- Added support for environment scoped lockfiles. When `PROTO_ENV` is set, a `.prototools.<env>` config is now locked to a sibling `.protolock.<env>` lockfile, instead of sharing the directory's `.protolock` with the base `.prototools` config.
24
+
- Each lockfile only tracks tools with versions defined in its own config. A version overridden by an environment config is tracked in `.protolock.<env>`, while versions inherited from `.prototools` remain in `.protolock`. Ad-hoc installs are tracked by the base `.prototools` config.
25
+
- Environment configs inherit the `settings.lockfile` setting from the `.prototools` config in the same directory, but can override it. Lockfiles for inactive environments are never loaded or modified.
26
+
- Records for environment specific versions that were previously written to `.protolock` are no longer used, and will be re-created in `.protolock.<env>` on the next install.
27
+
20
28
#### 🚀 Updates
21
29
30
+
-**Lockfiles**
31
+
- Updated `proto pin` and `proto unpin` to always keep the lockfile of the modified config in sync, even when another config (like an environment config) takes precedence for the tool.
32
+
- Updated `proto install --pin` to track the record of the installed version in the lockfile of the pinned config, even when another config (like an environment config) takes precedence for the tool.
33
+
- Updated `proto uninstall` to remove records for the uninstalled version from all applicable lockfiles, as the version may be pinned in multiple configs (each of which is unpinned). When uninstalling all versions, the tool is removed from all applicable lockfiles.
34
+
- Updated `proto outdated --update` to also update versions defined in environment scoped configs (`.prototools.<env>`), including the records in their lockfiles. Previously these versions were skipped with a warning.
22
35
-**WASM API**
23
36
- Added a `download_file` host function, which downloads a file from a URL directly to a file on the host machine, without loading the contents into WASM memory. Requests are made with proto's HTTP client, respecting `[settings.http]` and `.netrc` configuration.
24
37
- Added `download` and `download_from_url` functions, and a `download_file!` macro, to the PDK.
25
38
- Added a `method` field to the `send_request` host function input (`SendRequestInput`), which supports `GET` (default) and `POST`.
26
39
- Added a `SendRequestInput::post()` constructor for creating `POST` requests.
27
40
41
+
#### 🐞 Fixes
42
+
43
+
- Fixed an issue where `proto uninstall` would fail when `PROTO_ENV` is set and an environment scoped `.prototools.<env>` config exists, as it would attempt to unpin the version from an invalid path.
0 commit comments