@unotest/viewer 0.28.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +67 -0
- package/dist/server/main.d.ts +11 -1
- package/dist/server/main.js +1 -1
- package/dist/server/session.d.ts +23 -1
- package/dist/server/session.js +1 -1
- package/dist/web/assets/{DslEditor-CvL23vIm.js → DslEditor-B1VKaBDd.js} +2 -2
- package/dist/web/assets/index-CBlBZ0xa.css +32 -0
- package/dist/web/assets/index-feeefcEd.js +55 -0
- package/dist/web/index.html +2 -2
- package/package.json +6 -6
- package/dist/web/assets/index-B02T9gSK.js +0 -55
- package/dist/web/assets/index-RCE6y6j4.css +0 -32
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,72 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.30.0] - 2026-09-03
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 23de03c: On a hosted viewer (a box), the project and environment you are looking at
|
|
8
|
+
are now named and switched in the viewer's own tree header, in place of
|
|
9
|
+
the checkout directory it used to show there (`current`, which told
|
|
10
|
+
nobody anything). Previously the only way to another environment was
|
|
11
|
+
logging out and using the picker page. The chevrons appear on hover, like
|
|
12
|
+
the refresh button beside them, and only when something fronts the viewer
|
|
13
|
+
and offers it a list; a plain local viewer keeps the folder name it
|
|
14
|
+
always showed. Because
|
|
15
|
+
each environment on a box is its own viewer process, picking one is a full
|
|
16
|
+
page load into that viewer, and the menu shows which test bundle each
|
|
17
|
+
environment is running. The status bar's `.env.<name>` overlay switcher is
|
|
18
|
+
now labelled "env overlay", so the two senses of "environment" no longer
|
|
19
|
+
share a name. `@unotest/viewer/session` carries the two URLs this needs
|
|
20
|
+
(`environmentsUrl`, `switchEnvUrl`) and the `ViewerEnvOption` type, both
|
|
21
|
+
optional — a proxy that does not offer them gets the old behaviour.
|
|
22
|
+
|
|
23
|
+
### Patch Changes
|
|
24
|
+
|
|
25
|
+
- A run started in the first moments after the viewer boots is now discovered: the run watcher finishes its initial scan of the day directory before reporting itself started, instead of filing such a run as history.
|
|
26
|
+
- Updated dependencies [9f2e244]
|
|
27
|
+
- @unotest/protocol@0.30.0
|
|
28
|
+
- @unotest/core@0.30.0
|
|
29
|
+
- @unotest/dsl@0.30.0
|
|
30
|
+
|
|
31
|
+
## [0.29.0] - 2026-09-02
|
|
32
|
+
|
|
33
|
+
### Minor Changes
|
|
34
|
+
|
|
35
|
+
- 64108b8: The Variables panel of a viewer on a box now lists what the box injects
|
|
36
|
+
into every run of the environment — the target URL, the operator's
|
|
37
|
+
variables and the names of the environment's secrets — as read-only rows
|
|
38
|
+
with a `box` badge. It used to read `unotest/.env*`, which never travel
|
|
39
|
+
in a bundle, and show an empty panel next to a full run history; a
|
|
40
|
+
secret's value is still never sent, only its name. The box passes the
|
|
41
|
+
names through `UNOTEST_BOX_VARIABLE_NAMES` / `UNOTEST_BOX_SECRET_NAMES`
|
|
42
|
+
(constants in `@unotest/protocol`); writes to such a key are refused
|
|
43
|
+
with 409 and point at `boxd.config.mjs` / `boxd.mjs secret set`.
|
|
44
|
+
|
|
45
|
+
### Patch Changes
|
|
46
|
+
|
|
47
|
+
- ab296ff: New `env push`, `env set` and `env rm` commands send an environment's
|
|
48
|
+
values to a box — the target, the variables and the secrets a suite runs
|
|
49
|
+
with there — from the same files a local run reads (`unotest/.env`,
|
|
50
|
+
`.env.<env>`, `.secrets`, `.secrets.<env>`), or from files named with
|
|
51
|
+
`--env-file` / `--secrets-file`. `.env*` become the box environment's
|
|
52
|
+
variables, `.secrets*` its secrets and `APP_BASE_URL` its target;
|
|
53
|
+
`UNOTEST_*` and empty values stay home and are listed as skipped. A push
|
|
54
|
+
replaces the box's layers and reports what it removed; `env set` reads
|
|
55
|
+
one value from stdin, never from the command line. Values never print.
|
|
56
|
+
The commands use the project token of `bundle push`, minted on the box
|
|
57
|
+
with the new `--values` scope — a token without it is refused, so a CI
|
|
58
|
+
token that pushes suites cannot rewrite an environment's credentials.
|
|
59
|
+
`@unotest/protocol` carries the wire (`box-values.ts`) and `TARGET_ENV_VAR`.
|
|
60
|
+
The viewer's messages about box-held variables now point at these
|
|
61
|
+
commands instead of the box's shell.
|
|
62
|
+
- Updated dependencies [ab296ff]
|
|
63
|
+
- Updated dependencies [64108b8]
|
|
64
|
+
- Updated dependencies [64108b8]
|
|
65
|
+
- Updated dependencies [64108b8]
|
|
66
|
+
- @unotest/protocol@0.29.0
|
|
67
|
+
- @unotest/core@0.29.0
|
|
68
|
+
- @unotest/dsl@0.29.0
|
|
69
|
+
|
|
3
70
|
## [0.28.0] - 2026-09-01
|
|
4
71
|
|
|
5
72
|
### Patch Changes
|
package/dist/server/main.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { IRunnerAdapter, IDslLanguageService, IProcessLauncher } from '@unotest/protocol';
|
|
2
2
|
|
|
3
|
+
interface BoxInjectedNames {
|
|
4
|
+
/** Non-secret: the viewer has their values in its own environment. */
|
|
5
|
+
readonly variables: readonly string[];
|
|
6
|
+
/** Secret: names only, a value never reaches the browser. */
|
|
7
|
+
readonly secrets: readonly string[];
|
|
8
|
+
}
|
|
3
9
|
interface ViewerQueueConfig {
|
|
4
10
|
/** With queueing off, the viewer starts every run immediately — and
|
|
5
11
|
* so does every terminal. Nothing serialises them. */
|
|
@@ -73,6 +79,10 @@ declare function startViewerServer(opts: StartViewerOptions): Promise<ViewerHand
|
|
|
73
79
|
* the installed `@unotest/*` runner packages (by name — DIP boundary
|
|
74
80
|
* intact). `UNOTEST_RUNNER_PKG` (legacy single-runner var) and
|
|
75
81
|
* `UNOTEST_TARGET` just pick which detected target is active at boot. */
|
|
82
|
+
/** The box's injected-variable names, when a box supervisor set them.
|
|
83
|
+
* Both lists come together or not at all; an environment with no secrets
|
|
84
|
+
* still has a target URL, so "set" means the variables list is present. */
|
|
85
|
+
declare function boxInjectedFrom(env: NodeJS.ProcessEnv): BoxInjectedNames | undefined;
|
|
76
86
|
/** Everything the standalone launcher reads from its environment, in one
|
|
77
87
|
* pure place so the plumbing is testable without starting a server.
|
|
78
88
|
*
|
|
@@ -83,4 +93,4 @@ declare function startViewerServer(opts: StartViewerOptions): Promise<ViewerHand
|
|
|
83
93
|
declare function viewerCliOptions(env: NodeJS.ProcessEnv, cwd: string): Omit<StartViewerOptions, "runners">;
|
|
84
94
|
declare function runViewerCli(): Promise<void>;
|
|
85
95
|
|
|
86
|
-
export { type RunnerEntry, type StartViewerOptions, type ViewerHandle, runViewerCli, startViewerServer, viewerCliOptions };
|
|
96
|
+
export { type RunnerEntry, type StartViewerOptions, type ViewerHandle, boxInjectedFrom, runViewerCli, startViewerServer, viewerCliOptions };
|