@penvhq/launcher 0.9.4 → 0.10.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/dist/bin.cjs +237 -48
- package/dist/bin.cjs.map +1 -1
- package/dist/bin.js +1 -1
- package/dist/{chunk-Q27F7QYT.js → chunk-BNUZ52VN.js} +267 -59
- package/dist/chunk-BNUZ52VN.js.map +1 -0
- package/dist/index.cjs +253 -58
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +69 -46
- package/dist/index.d.ts +69 -46
- package/dist/index.js +13 -7
- package/package.json +3 -3
- package/dist/chunk-Q27F7QYT.js.map +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PenvError, ManifestEngine } from '@penvhq/core';
|
|
1
|
+
import { Environment, PenvError, ManifestEngine, PackageKind } from '@penvhq/core';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Every byte penv downloads comes through here.
|
|
@@ -54,6 +54,10 @@ interface LauncherIo {
|
|
|
54
54
|
* `--no-download` and a run with nobody at it are both refused before the first
|
|
55
55
|
* request, and CI gets `penv install`, which installs what the manifest already
|
|
56
56
|
* pins rather than choosing what it should.
|
|
57
|
+
*
|
|
58
|
+
* `--local` is the one path with no release behind it: a repository that writes
|
|
59
|
+
* a provider adds the package it already builds. Nothing is fetched and nothing
|
|
60
|
+
* is pinned, so the manifest is not touched — see {@link addLocal}.
|
|
57
61
|
*/
|
|
58
62
|
|
|
59
63
|
interface AddOptions {
|
|
@@ -113,6 +117,10 @@ declare function setProviderType(source: string, environment: string, type: stri
|
|
|
113
117
|
*/
|
|
114
118
|
/** What an extension's `package.json` tells `add`, and nothing more. */
|
|
115
119
|
interface ExtensionPackage {
|
|
120
|
+
/** The package's own name, which is what identifies the directory as its own. */
|
|
121
|
+
readonly name: string | undefined;
|
|
122
|
+
/** The package's own version. Only a local add reads it; a release pins the registry's. */
|
|
123
|
+
readonly version: string | undefined;
|
|
116
124
|
/** A path inside the package to a self-contained declaration file. */
|
|
117
125
|
readonly types: string | undefined;
|
|
118
126
|
/** The engine command that finishes setting this provider up, e.g. `cloud login`. */
|
|
@@ -129,6 +137,8 @@ interface DeclarationSubject {
|
|
|
129
137
|
readonly version: string;
|
|
130
138
|
/** Recorded in the header: what npm knew about where these bytes came from. */
|
|
131
139
|
readonly attested: boolean;
|
|
140
|
+
/** The package is this project's own, resolved from it rather than pinned. */
|
|
141
|
+
readonly local?: boolean;
|
|
132
142
|
}
|
|
133
143
|
/** The declaration's text: the package's own, or the open shape under its name. */
|
|
134
144
|
declare function renderDeclaration(subject: DeclarationSubject, shipped?: {
|
|
@@ -146,50 +156,6 @@ interface WriteDeclarationOptions extends DeclarationSubject {
|
|
|
146
156
|
/** Writes the declaration and answers with the path a message prints. */
|
|
147
157
|
declare function writeDeclaration(options: WriteDeclarationOptions): string;
|
|
148
158
|
|
|
149
|
-
/**
|
|
150
|
-
* `$PENV_HOME` — the one directory the launcher owns.
|
|
151
|
-
*
|
|
152
|
-
* Engines and extensions are addressed by exact name and exact version, so a
|
|
153
|
-
* machine holds every version any of its projects pins at once and no project's
|
|
154
|
-
* command is ever answered by another project's bytes.
|
|
155
|
-
*/
|
|
156
|
-
/** A read-only view of the process environment. */
|
|
157
|
-
type Environment = Readonly<Record<string, string | undefined>>;
|
|
158
|
-
/** The variable that moves the store off `~/.penv`. */
|
|
159
|
-
declare const PENV_HOME_VAR = "PENV_HOME";
|
|
160
|
-
/** The two things the store holds, and the directory each lives under. */
|
|
161
|
-
type PackageKind = "engines" | "extensions";
|
|
162
|
-
/** How the launcher was installed, recorded by the installer that did it. */
|
|
163
|
-
declare const HOME_META_FILE = "meta.json";
|
|
164
|
-
/** Written beside an installed package: the SSRI of the tarball it came from. */
|
|
165
|
-
declare const INTEGRITY_FILE = ".penv-integrity";
|
|
166
|
-
/** The update command for a launcher whose installer recorded nothing. */
|
|
167
|
-
declare const NPM_UPDATE_COMMAND = "npm install -g @penvhq/launcher";
|
|
168
|
-
/** The store, from the environment. `~/.penv` unless `$PENV_HOME` says otherwise. */
|
|
169
|
-
declare function penvHome(env: Environment): string;
|
|
170
|
-
/**
|
|
171
|
-
* Where one exact version lives.
|
|
172
|
-
*
|
|
173
|
-
* The manifest's grammar already refuses a name or a version that could climb
|
|
174
|
-
* out of the store, so the containment check is the second lock rather than the
|
|
175
|
-
* first: this function is also reached from `penv add`, where the name is
|
|
176
|
-
* whatever the user typed.
|
|
177
|
-
*
|
|
178
|
-
* Containment is measured against the bucket, not against `$PENV_HOME`. A name
|
|
179
|
-
* of `../extensions/x` stays inside the store while landing an engine among the
|
|
180
|
-
* extensions, and a store where the two are not separated is a store where the
|
|
181
|
-
* kind a caller asked for is not the kind it gets.
|
|
182
|
-
*/
|
|
183
|
-
declare function packageDir(home: string, kind: PackageKind, name: string, version: string): string;
|
|
184
|
-
/**
|
|
185
|
-
* The command that updates this launcher.
|
|
186
|
-
*
|
|
187
|
-
* Advisory, so it never throws: a store with no `meta.json`, or one holding
|
|
188
|
-
* something unreadable, falls back to the npm form rather than turning a
|
|
189
|
-
* manifest-format refusal into a second failure about a metadata file.
|
|
190
|
-
*/
|
|
191
|
-
declare function launcherUpdateCommand(home: string): string;
|
|
192
|
-
|
|
193
159
|
/**
|
|
194
160
|
* Handing the command over.
|
|
195
161
|
*
|
|
@@ -313,6 +279,40 @@ declare class AddFlagError extends PenvError {
|
|
|
313
279
|
readonly name = "AddFlagError";
|
|
314
280
|
constructor(flag: string);
|
|
315
281
|
}
|
|
282
|
+
/** The flag that adds an extension this project builds instead of one a registry publishes. */
|
|
283
|
+
declare const LOCAL_FLAG = "--local";
|
|
284
|
+
/** `--local` asked for something only a published release has. */
|
|
285
|
+
declare class AddLocalFlagError extends PenvError {
|
|
286
|
+
readonly name = "AddLocalFlagError";
|
|
287
|
+
constructor(subject: string);
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* The extension resolved and is not something penv can import.
|
|
291
|
+
*
|
|
292
|
+
* `add` used to certify resolution and stop there, so a package whose `exports`
|
|
293
|
+
* pointed at TypeScript source got three green checks and failed much later,
|
|
294
|
+
* from an unrelated command. The load check runs here, at the one moment the
|
|
295
|
+
* operator is looking at the provider.
|
|
296
|
+
*/
|
|
297
|
+
declare class ExtensionNotImportableError extends PenvError {
|
|
298
|
+
readonly name = "ExtensionNotImportableError";
|
|
299
|
+
constructor(name: string, entry: string | undefined, local: boolean);
|
|
300
|
+
}
|
|
301
|
+
/** The extension imported and threw. Its own failure is the diagnosis. */
|
|
302
|
+
declare class ExtensionUnloadableError extends PenvError {
|
|
303
|
+
readonly name = "ExtensionUnloadableError";
|
|
304
|
+
constructor(name: string, entry: string, detail: string, local: boolean);
|
|
305
|
+
}
|
|
306
|
+
/** `--local` on a package the project does not have. */
|
|
307
|
+
declare class LocalExtensionUnresolvedError extends PenvError {
|
|
308
|
+
readonly name = "LocalExtensionUnresolvedError";
|
|
309
|
+
constructor(name: string, root: string);
|
|
310
|
+
}
|
|
311
|
+
/** `penv add --local` on a machine with nobody at it. */
|
|
312
|
+
declare class AddLocalInCiError extends PenvError {
|
|
313
|
+
readonly name = "AddLocalInCiError";
|
|
314
|
+
constructor(name: string);
|
|
315
|
+
}
|
|
316
316
|
/** `--registry` with something that is not an https origin. */
|
|
317
317
|
declare class AddRegistryError extends PenvError {
|
|
318
318
|
readonly name = "AddRegistryError";
|
|
@@ -407,6 +407,29 @@ declare class EngineEntryError extends PenvError {
|
|
|
407
407
|
constructor(name: string, version: string, dir: string);
|
|
408
408
|
}
|
|
409
409
|
|
|
410
|
+
/**
|
|
411
|
+
* What the launcher alone knows about `$PENV_HOME`: how the installation that
|
|
412
|
+
* created it updates itself, and what it writes beside an installed package.
|
|
413
|
+
*
|
|
414
|
+
* The store's layout — where `$PENV_HOME` is and where one exact version lives —
|
|
415
|
+
* is `@penvhq/core`'s, because the engine reads the same directories the
|
|
416
|
+
* launcher fills.
|
|
417
|
+
*/
|
|
418
|
+
/** How the launcher was installed, recorded by the installer that did it. */
|
|
419
|
+
declare const HOME_META_FILE = "meta.json";
|
|
420
|
+
/** Written beside an installed package: the SSRI of the tarball it came from. */
|
|
421
|
+
declare const INTEGRITY_FILE = ".penv-integrity";
|
|
422
|
+
/** The update command for a launcher whose installer recorded nothing. */
|
|
423
|
+
declare const NPM_UPDATE_COMMAND = "npm install -g @penvhq/launcher";
|
|
424
|
+
/**
|
|
425
|
+
* The command that updates this launcher.
|
|
426
|
+
*
|
|
427
|
+
* Advisory, so it never throws: a store with no `meta.json`, or one holding
|
|
428
|
+
* something unreadable, falls back to the npm form rather than turning a
|
|
429
|
+
* manifest-format refusal into a second failure about a metadata file.
|
|
430
|
+
*/
|
|
431
|
+
declare function launcherUpdateCommand(home: string): string;
|
|
432
|
+
|
|
410
433
|
/**
|
|
411
434
|
* The one hash penv checks: npm's SSRI, over the tarball bytes.
|
|
412
435
|
*
|
|
@@ -598,4 +621,4 @@ interface ArchiveSubject {
|
|
|
598
621
|
/** Every regular file in an npm tarball, `package/` stripped. */
|
|
599
622
|
declare function readTarball(gzipped: Uint8Array, subject: ArchiveSubject): TarEntry[];
|
|
600
623
|
|
|
601
|
-
export { AddFlagError, AddNoDownloadError, AddNotInteractiveError, type AddOptions, AddPackageNameError, AddRegistryError, type AddResult, AddSubjectError, ArchiveError, type ArchiveSubject, BUNDLED_ENGINE_PIN, DEFAULT_REGISTRY, DEV_PIN_INTEGRITY, DEV_PIN_VERSION, DeclarationMissingError, DeclarationNotSelfContainedError, type DeclarationSubject, type Delegation, DownloadFailedError, DownloadIntegrityError, ENGINE_BIN, type Engine, EngineEntryError, EnginePinMismatchError, EnginePinUnreleasedError,
|
|
624
|
+
export { AddFlagError, AddLocalFlagError, AddLocalInCiError, AddNoDownloadError, AddNotInteractiveError, type AddOptions, AddPackageNameError, AddRegistryError, type AddResult, AddSubjectError, ArchiveError, type ArchiveSubject, BUNDLED_ENGINE_PIN, DEFAULT_REGISTRY, DEV_PIN_INTEGRITY, DEV_PIN_VERSION, DeclarationMissingError, DeclarationNotSelfContainedError, type DeclarationSubject, type Delegation, DownloadFailedError, DownloadIntegrityError, ENGINE_BIN, type Engine, EngineEntryError, EnginePinMismatchError, EnginePinUnreleasedError, ExtensionNotImportableError, type ExtensionPackage, ExtensionUnloadableError, type Fetcher, HOME_META_FILE, INSTALL_COMMAND, INTEGRITY_FILE, InstallDeclinedError, type InstallOptions, type InstallState, type Installation, LOCAL_FLAG, type LauncherIo, type LauncherOptions, LocalExtensionUnresolvedError, MIN_PACKAGE_AGE_DAYS, NPM_UPDATE_COMMAND, NoProjectError, OfficialRegistryError, PackageCorruptError, PackageMissingError, PackageTooYoungError, PackageUnknownError, type Pin, type Project, type ProviderEntry, RegistryUnreadableError, type Release, ReleaseIncompleteError, type ReleaseQuery, type Spawner, TRUST_YOUNG_FLAG, type TarEntry, TrustDeclinedError, TrustPublisherMissingError, TrustReasonMissingError, VersionUnknownError, add, assertReleasePin, bundledEngine, declarationPath, engineAt, fetchRelease, findAdoptedRoot, findProject, httpFetcher, inspectInstall, installPin, integrityOf, launcherUpdateCommand, nodeSpawner, packumentUrl, readExtensionPackage, readProviderEntries, readTarball, releaseEnginePin, renderDeclaration, runLauncher, setProviderType, tarballUrl, writeDeclaration };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PenvError, ManifestEngine } from '@penvhq/core';
|
|
1
|
+
import { Environment, PenvError, ManifestEngine, PackageKind } from '@penvhq/core';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
4
|
* Every byte penv downloads comes through here.
|
|
@@ -54,6 +54,10 @@ interface LauncherIo {
|
|
|
54
54
|
* `--no-download` and a run with nobody at it are both refused before the first
|
|
55
55
|
* request, and CI gets `penv install`, which installs what the manifest already
|
|
56
56
|
* pins rather than choosing what it should.
|
|
57
|
+
*
|
|
58
|
+
* `--local` is the one path with no release behind it: a repository that writes
|
|
59
|
+
* a provider adds the package it already builds. Nothing is fetched and nothing
|
|
60
|
+
* is pinned, so the manifest is not touched — see {@link addLocal}.
|
|
57
61
|
*/
|
|
58
62
|
|
|
59
63
|
interface AddOptions {
|
|
@@ -113,6 +117,10 @@ declare function setProviderType(source: string, environment: string, type: stri
|
|
|
113
117
|
*/
|
|
114
118
|
/** What an extension's `package.json` tells `add`, and nothing more. */
|
|
115
119
|
interface ExtensionPackage {
|
|
120
|
+
/** The package's own name, which is what identifies the directory as its own. */
|
|
121
|
+
readonly name: string | undefined;
|
|
122
|
+
/** The package's own version. Only a local add reads it; a release pins the registry's. */
|
|
123
|
+
readonly version: string | undefined;
|
|
116
124
|
/** A path inside the package to a self-contained declaration file. */
|
|
117
125
|
readonly types: string | undefined;
|
|
118
126
|
/** The engine command that finishes setting this provider up, e.g. `cloud login`. */
|
|
@@ -129,6 +137,8 @@ interface DeclarationSubject {
|
|
|
129
137
|
readonly version: string;
|
|
130
138
|
/** Recorded in the header: what npm knew about where these bytes came from. */
|
|
131
139
|
readonly attested: boolean;
|
|
140
|
+
/** The package is this project's own, resolved from it rather than pinned. */
|
|
141
|
+
readonly local?: boolean;
|
|
132
142
|
}
|
|
133
143
|
/** The declaration's text: the package's own, or the open shape under its name. */
|
|
134
144
|
declare function renderDeclaration(subject: DeclarationSubject, shipped?: {
|
|
@@ -146,50 +156,6 @@ interface WriteDeclarationOptions extends DeclarationSubject {
|
|
|
146
156
|
/** Writes the declaration and answers with the path a message prints. */
|
|
147
157
|
declare function writeDeclaration(options: WriteDeclarationOptions): string;
|
|
148
158
|
|
|
149
|
-
/**
|
|
150
|
-
* `$PENV_HOME` — the one directory the launcher owns.
|
|
151
|
-
*
|
|
152
|
-
* Engines and extensions are addressed by exact name and exact version, so a
|
|
153
|
-
* machine holds every version any of its projects pins at once and no project's
|
|
154
|
-
* command is ever answered by another project's bytes.
|
|
155
|
-
*/
|
|
156
|
-
/** A read-only view of the process environment. */
|
|
157
|
-
type Environment = Readonly<Record<string, string | undefined>>;
|
|
158
|
-
/** The variable that moves the store off `~/.penv`. */
|
|
159
|
-
declare const PENV_HOME_VAR = "PENV_HOME";
|
|
160
|
-
/** The two things the store holds, and the directory each lives under. */
|
|
161
|
-
type PackageKind = "engines" | "extensions";
|
|
162
|
-
/** How the launcher was installed, recorded by the installer that did it. */
|
|
163
|
-
declare const HOME_META_FILE = "meta.json";
|
|
164
|
-
/** Written beside an installed package: the SSRI of the tarball it came from. */
|
|
165
|
-
declare const INTEGRITY_FILE = ".penv-integrity";
|
|
166
|
-
/** The update command for a launcher whose installer recorded nothing. */
|
|
167
|
-
declare const NPM_UPDATE_COMMAND = "npm install -g @penvhq/launcher";
|
|
168
|
-
/** The store, from the environment. `~/.penv` unless `$PENV_HOME` says otherwise. */
|
|
169
|
-
declare function penvHome(env: Environment): string;
|
|
170
|
-
/**
|
|
171
|
-
* Where one exact version lives.
|
|
172
|
-
*
|
|
173
|
-
* The manifest's grammar already refuses a name or a version that could climb
|
|
174
|
-
* out of the store, so the containment check is the second lock rather than the
|
|
175
|
-
* first: this function is also reached from `penv add`, where the name is
|
|
176
|
-
* whatever the user typed.
|
|
177
|
-
*
|
|
178
|
-
* Containment is measured against the bucket, not against `$PENV_HOME`. A name
|
|
179
|
-
* of `../extensions/x` stays inside the store while landing an engine among the
|
|
180
|
-
* extensions, and a store where the two are not separated is a store where the
|
|
181
|
-
* kind a caller asked for is not the kind it gets.
|
|
182
|
-
*/
|
|
183
|
-
declare function packageDir(home: string, kind: PackageKind, name: string, version: string): string;
|
|
184
|
-
/**
|
|
185
|
-
* The command that updates this launcher.
|
|
186
|
-
*
|
|
187
|
-
* Advisory, so it never throws: a store with no `meta.json`, or one holding
|
|
188
|
-
* something unreadable, falls back to the npm form rather than turning a
|
|
189
|
-
* manifest-format refusal into a second failure about a metadata file.
|
|
190
|
-
*/
|
|
191
|
-
declare function launcherUpdateCommand(home: string): string;
|
|
192
|
-
|
|
193
159
|
/**
|
|
194
160
|
* Handing the command over.
|
|
195
161
|
*
|
|
@@ -313,6 +279,40 @@ declare class AddFlagError extends PenvError {
|
|
|
313
279
|
readonly name = "AddFlagError";
|
|
314
280
|
constructor(flag: string);
|
|
315
281
|
}
|
|
282
|
+
/** The flag that adds an extension this project builds instead of one a registry publishes. */
|
|
283
|
+
declare const LOCAL_FLAG = "--local";
|
|
284
|
+
/** `--local` asked for something only a published release has. */
|
|
285
|
+
declare class AddLocalFlagError extends PenvError {
|
|
286
|
+
readonly name = "AddLocalFlagError";
|
|
287
|
+
constructor(subject: string);
|
|
288
|
+
}
|
|
289
|
+
/**
|
|
290
|
+
* The extension resolved and is not something penv can import.
|
|
291
|
+
*
|
|
292
|
+
* `add` used to certify resolution and stop there, so a package whose `exports`
|
|
293
|
+
* pointed at TypeScript source got three green checks and failed much later,
|
|
294
|
+
* from an unrelated command. The load check runs here, at the one moment the
|
|
295
|
+
* operator is looking at the provider.
|
|
296
|
+
*/
|
|
297
|
+
declare class ExtensionNotImportableError extends PenvError {
|
|
298
|
+
readonly name = "ExtensionNotImportableError";
|
|
299
|
+
constructor(name: string, entry: string | undefined, local: boolean);
|
|
300
|
+
}
|
|
301
|
+
/** The extension imported and threw. Its own failure is the diagnosis. */
|
|
302
|
+
declare class ExtensionUnloadableError extends PenvError {
|
|
303
|
+
readonly name = "ExtensionUnloadableError";
|
|
304
|
+
constructor(name: string, entry: string, detail: string, local: boolean);
|
|
305
|
+
}
|
|
306
|
+
/** `--local` on a package the project does not have. */
|
|
307
|
+
declare class LocalExtensionUnresolvedError extends PenvError {
|
|
308
|
+
readonly name = "LocalExtensionUnresolvedError";
|
|
309
|
+
constructor(name: string, root: string);
|
|
310
|
+
}
|
|
311
|
+
/** `penv add --local` on a machine with nobody at it. */
|
|
312
|
+
declare class AddLocalInCiError extends PenvError {
|
|
313
|
+
readonly name = "AddLocalInCiError";
|
|
314
|
+
constructor(name: string);
|
|
315
|
+
}
|
|
316
316
|
/** `--registry` with something that is not an https origin. */
|
|
317
317
|
declare class AddRegistryError extends PenvError {
|
|
318
318
|
readonly name = "AddRegistryError";
|
|
@@ -407,6 +407,29 @@ declare class EngineEntryError extends PenvError {
|
|
|
407
407
|
constructor(name: string, version: string, dir: string);
|
|
408
408
|
}
|
|
409
409
|
|
|
410
|
+
/**
|
|
411
|
+
* What the launcher alone knows about `$PENV_HOME`: how the installation that
|
|
412
|
+
* created it updates itself, and what it writes beside an installed package.
|
|
413
|
+
*
|
|
414
|
+
* The store's layout — where `$PENV_HOME` is and where one exact version lives —
|
|
415
|
+
* is `@penvhq/core`'s, because the engine reads the same directories the
|
|
416
|
+
* launcher fills.
|
|
417
|
+
*/
|
|
418
|
+
/** How the launcher was installed, recorded by the installer that did it. */
|
|
419
|
+
declare const HOME_META_FILE = "meta.json";
|
|
420
|
+
/** Written beside an installed package: the SSRI of the tarball it came from. */
|
|
421
|
+
declare const INTEGRITY_FILE = ".penv-integrity";
|
|
422
|
+
/** The update command for a launcher whose installer recorded nothing. */
|
|
423
|
+
declare const NPM_UPDATE_COMMAND = "npm install -g @penvhq/launcher";
|
|
424
|
+
/**
|
|
425
|
+
* The command that updates this launcher.
|
|
426
|
+
*
|
|
427
|
+
* Advisory, so it never throws: a store with no `meta.json`, or one holding
|
|
428
|
+
* something unreadable, falls back to the npm form rather than turning a
|
|
429
|
+
* manifest-format refusal into a second failure about a metadata file.
|
|
430
|
+
*/
|
|
431
|
+
declare function launcherUpdateCommand(home: string): string;
|
|
432
|
+
|
|
410
433
|
/**
|
|
411
434
|
* The one hash penv checks: npm's SSRI, over the tarball bytes.
|
|
412
435
|
*
|
|
@@ -598,4 +621,4 @@ interface ArchiveSubject {
|
|
|
598
621
|
/** Every regular file in an npm tarball, `package/` stripped. */
|
|
599
622
|
declare function readTarball(gzipped: Uint8Array, subject: ArchiveSubject): TarEntry[];
|
|
600
623
|
|
|
601
|
-
export { AddFlagError, AddNoDownloadError, AddNotInteractiveError, type AddOptions, AddPackageNameError, AddRegistryError, type AddResult, AddSubjectError, ArchiveError, type ArchiveSubject, BUNDLED_ENGINE_PIN, DEFAULT_REGISTRY, DEV_PIN_INTEGRITY, DEV_PIN_VERSION, DeclarationMissingError, DeclarationNotSelfContainedError, type DeclarationSubject, type Delegation, DownloadFailedError, DownloadIntegrityError, ENGINE_BIN, type Engine, EngineEntryError, EnginePinMismatchError, EnginePinUnreleasedError,
|
|
624
|
+
export { AddFlagError, AddLocalFlagError, AddLocalInCiError, AddNoDownloadError, AddNotInteractiveError, type AddOptions, AddPackageNameError, AddRegistryError, type AddResult, AddSubjectError, ArchiveError, type ArchiveSubject, BUNDLED_ENGINE_PIN, DEFAULT_REGISTRY, DEV_PIN_INTEGRITY, DEV_PIN_VERSION, DeclarationMissingError, DeclarationNotSelfContainedError, type DeclarationSubject, type Delegation, DownloadFailedError, DownloadIntegrityError, ENGINE_BIN, type Engine, EngineEntryError, EnginePinMismatchError, EnginePinUnreleasedError, ExtensionNotImportableError, type ExtensionPackage, ExtensionUnloadableError, type Fetcher, HOME_META_FILE, INSTALL_COMMAND, INTEGRITY_FILE, InstallDeclinedError, type InstallOptions, type InstallState, type Installation, LOCAL_FLAG, type LauncherIo, type LauncherOptions, LocalExtensionUnresolvedError, MIN_PACKAGE_AGE_DAYS, NPM_UPDATE_COMMAND, NoProjectError, OfficialRegistryError, PackageCorruptError, PackageMissingError, PackageTooYoungError, PackageUnknownError, type Pin, type Project, type ProviderEntry, RegistryUnreadableError, type Release, ReleaseIncompleteError, type ReleaseQuery, type Spawner, TRUST_YOUNG_FLAG, type TarEntry, TrustDeclinedError, TrustPublisherMissingError, TrustReasonMissingError, VersionUnknownError, add, assertReleasePin, bundledEngine, declarationPath, engineAt, fetchRelease, findAdoptedRoot, findProject, httpFetcher, inspectInstall, installPin, integrityOf, launcherUpdateCommand, nodeSpawner, packumentUrl, readExtensionPackage, readProviderEntries, readTarball, releaseEnginePin, renderDeclaration, runLauncher, setProviderType, tarballUrl, writeDeclaration };
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AddFlagError,
|
|
3
|
+
AddLocalFlagError,
|
|
4
|
+
AddLocalInCiError,
|
|
3
5
|
AddNoDownloadError,
|
|
4
6
|
AddNotInteractiveError,
|
|
5
7
|
AddPackageNameError,
|
|
@@ -18,15 +20,18 @@ import {
|
|
|
18
20
|
EngineEntryError,
|
|
19
21
|
EnginePinMismatchError,
|
|
20
22
|
EnginePinUnreleasedError,
|
|
23
|
+
ExtensionNotImportableError,
|
|
24
|
+
ExtensionUnloadableError,
|
|
21
25
|
HOME_META_FILE,
|
|
22
26
|
INSTALL_COMMAND,
|
|
23
27
|
INTEGRITY_FILE,
|
|
24
28
|
InstallDeclinedError,
|
|
29
|
+
LOCAL_FLAG,
|
|
30
|
+
LocalExtensionUnresolvedError,
|
|
25
31
|
MIN_PACKAGE_AGE_DAYS,
|
|
26
32
|
NPM_UPDATE_COMMAND,
|
|
27
33
|
NoProjectError,
|
|
28
34
|
OfficialRegistryError,
|
|
29
|
-
PENV_HOME_VAR,
|
|
30
35
|
PackageCorruptError,
|
|
31
36
|
PackageMissingError,
|
|
32
37
|
PackageTooYoungError,
|
|
@@ -52,9 +57,7 @@ import {
|
|
|
52
57
|
integrityOf,
|
|
53
58
|
launcherUpdateCommand,
|
|
54
59
|
nodeSpawner,
|
|
55
|
-
packageDir,
|
|
56
60
|
packumentUrl,
|
|
57
|
-
penvHome,
|
|
58
61
|
readExtensionPackage,
|
|
59
62
|
readProviderEntries,
|
|
60
63
|
readTarball,
|
|
@@ -64,9 +67,11 @@ import {
|
|
|
64
67
|
setProviderType,
|
|
65
68
|
tarballUrl,
|
|
66
69
|
writeDeclaration
|
|
67
|
-
} from "./chunk-
|
|
70
|
+
} from "./chunk-BNUZ52VN.js";
|
|
68
71
|
export {
|
|
69
72
|
AddFlagError,
|
|
73
|
+
AddLocalFlagError,
|
|
74
|
+
AddLocalInCiError,
|
|
70
75
|
AddNoDownloadError,
|
|
71
76
|
AddNotInteractiveError,
|
|
72
77
|
AddPackageNameError,
|
|
@@ -85,15 +90,18 @@ export {
|
|
|
85
90
|
EngineEntryError,
|
|
86
91
|
EnginePinMismatchError,
|
|
87
92
|
EnginePinUnreleasedError,
|
|
93
|
+
ExtensionNotImportableError,
|
|
94
|
+
ExtensionUnloadableError,
|
|
88
95
|
HOME_META_FILE,
|
|
89
96
|
INSTALL_COMMAND,
|
|
90
97
|
INTEGRITY_FILE,
|
|
91
98
|
InstallDeclinedError,
|
|
99
|
+
LOCAL_FLAG,
|
|
100
|
+
LocalExtensionUnresolvedError,
|
|
92
101
|
MIN_PACKAGE_AGE_DAYS,
|
|
93
102
|
NPM_UPDATE_COMMAND,
|
|
94
103
|
NoProjectError,
|
|
95
104
|
OfficialRegistryError,
|
|
96
|
-
PENV_HOME_VAR,
|
|
97
105
|
PackageCorruptError,
|
|
98
106
|
PackageMissingError,
|
|
99
107
|
PackageTooYoungError,
|
|
@@ -119,9 +127,7 @@ export {
|
|
|
119
127
|
integrityOf,
|
|
120
128
|
launcherUpdateCommand,
|
|
121
129
|
nodeSpawner,
|
|
122
|
-
packageDir,
|
|
123
130
|
packumentUrl,
|
|
124
|
-
penvHome,
|
|
125
131
|
readExtensionPackage,
|
|
126
132
|
readProviderEntries,
|
|
127
133
|
readTarball,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@penvhq/launcher",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "The stable penv launcher: it verifies the engine your project pins and hands over the command.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
],
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"zod": "4.4.3",
|
|
25
|
-
"@penvhq/cli": "0.
|
|
26
|
-
"@penvhq/core": "0.
|
|
25
|
+
"@penvhq/cli": "0.10.0",
|
|
26
|
+
"@penvhq/core": "0.10.0"
|
|
27
27
|
},
|
|
28
28
|
"scripts": {
|
|
29
29
|
"build": "tsup"
|