tegami 1.0.0-beta.5 → 1.0.2

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.
@@ -144,6 +144,395 @@ interface GitLabToken {
144
144
  type: "private-token" | "job-token";
145
145
  }
146
146
  //#endregion
147
+ //#region src/plugins/cargo/schema.d.ts
148
+ /**
149
+ * @see https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html
150
+ */
151
+ declare const cargoDependencySchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
152
+ package: z.ZodOptional<z.ZodString>;
153
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
154
+ optional: z.ZodOptional<z.ZodBoolean>;
155
+ "default-features": z.ZodOptional<z.ZodBoolean>;
156
+ workspace: z.ZodLiteral<true>;
157
+ }, z.core.$strip>, z.ZodObject<{
158
+ package: z.ZodOptional<z.ZodString>;
159
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
160
+ optional: z.ZodOptional<z.ZodBoolean>;
161
+ "default-features": z.ZodOptional<z.ZodBoolean>;
162
+ path: z.ZodString;
163
+ version: z.ZodOptional<z.ZodString>;
164
+ }, z.core.$strip>, z.ZodObject<{
165
+ package: z.ZodOptional<z.ZodString>;
166
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
167
+ optional: z.ZodOptional<z.ZodBoolean>;
168
+ "default-features": z.ZodOptional<z.ZodBoolean>;
169
+ git: z.ZodString;
170
+ branch: z.ZodOptional<z.ZodString>;
171
+ tag: z.ZodOptional<z.ZodString>;
172
+ rev: z.ZodOptional<z.ZodString>;
173
+ version: z.ZodOptional<z.ZodString>;
174
+ }, z.core.$strip>, z.ZodObject<{
175
+ package: z.ZodOptional<z.ZodString>;
176
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
177
+ optional: z.ZodOptional<z.ZodBoolean>;
178
+ "default-features": z.ZodOptional<z.ZodBoolean>;
179
+ version: z.ZodString;
180
+ registry: z.ZodOptional<z.ZodString>;
181
+ }, z.core.$strip>]>;
182
+ declare const cargoManifestSchema: z.ZodObject<{
183
+ package: z.ZodOptional<z.ZodObject<{
184
+ name: z.ZodString;
185
+ version: z.ZodUnion<[z.ZodString, z.ZodObject<{
186
+ workspace: z.ZodLiteral<true>;
187
+ }, z.core.$loose>]>;
188
+ publish: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
189
+ workspace: z.ZodLiteral<true>;
190
+ }, z.core.$loose>]>>;
191
+ }, z.core.$loose>>;
192
+ workspace: z.ZodOptional<z.ZodObject<{
193
+ members: z.ZodOptional<z.ZodArray<z.ZodString>>;
194
+ exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
195
+ package: z.ZodOptional<z.ZodObject<{
196
+ version: z.ZodOptional<z.ZodString>;
197
+ publish: z.ZodOptional<z.ZodBoolean>;
198
+ }, z.core.$loose>>;
199
+ dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
200
+ package: z.ZodOptional<z.ZodString>;
201
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
202
+ optional: z.ZodOptional<z.ZodBoolean>;
203
+ "default-features": z.ZodOptional<z.ZodBoolean>;
204
+ workspace: z.ZodLiteral<true>;
205
+ }, z.core.$strip>, z.ZodObject<{
206
+ package: z.ZodOptional<z.ZodString>;
207
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
208
+ optional: z.ZodOptional<z.ZodBoolean>;
209
+ "default-features": z.ZodOptional<z.ZodBoolean>;
210
+ path: z.ZodString;
211
+ version: z.ZodOptional<z.ZodString>;
212
+ }, z.core.$strip>, z.ZodObject<{
213
+ package: z.ZodOptional<z.ZodString>;
214
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
215
+ optional: z.ZodOptional<z.ZodBoolean>;
216
+ "default-features": z.ZodOptional<z.ZodBoolean>;
217
+ git: z.ZodString;
218
+ branch: z.ZodOptional<z.ZodString>;
219
+ tag: z.ZodOptional<z.ZodString>;
220
+ rev: z.ZodOptional<z.ZodString>;
221
+ version: z.ZodOptional<z.ZodString>;
222
+ }, z.core.$strip>, z.ZodObject<{
223
+ package: z.ZodOptional<z.ZodString>;
224
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
225
+ optional: z.ZodOptional<z.ZodBoolean>;
226
+ "default-features": z.ZodOptional<z.ZodBoolean>;
227
+ version: z.ZodString;
228
+ registry: z.ZodOptional<z.ZodString>;
229
+ }, z.core.$strip>]>>>;
230
+ "dev-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
231
+ package: z.ZodOptional<z.ZodString>;
232
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
233
+ optional: z.ZodOptional<z.ZodBoolean>;
234
+ "default-features": z.ZodOptional<z.ZodBoolean>;
235
+ workspace: z.ZodLiteral<true>;
236
+ }, z.core.$strip>, z.ZodObject<{
237
+ package: z.ZodOptional<z.ZodString>;
238
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
239
+ optional: z.ZodOptional<z.ZodBoolean>;
240
+ "default-features": z.ZodOptional<z.ZodBoolean>;
241
+ path: z.ZodString;
242
+ version: z.ZodOptional<z.ZodString>;
243
+ }, z.core.$strip>, z.ZodObject<{
244
+ package: z.ZodOptional<z.ZodString>;
245
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
246
+ optional: z.ZodOptional<z.ZodBoolean>;
247
+ "default-features": z.ZodOptional<z.ZodBoolean>;
248
+ git: z.ZodString;
249
+ branch: z.ZodOptional<z.ZodString>;
250
+ tag: z.ZodOptional<z.ZodString>;
251
+ rev: z.ZodOptional<z.ZodString>;
252
+ version: z.ZodOptional<z.ZodString>;
253
+ }, z.core.$strip>, z.ZodObject<{
254
+ package: z.ZodOptional<z.ZodString>;
255
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
256
+ optional: z.ZodOptional<z.ZodBoolean>;
257
+ "default-features": z.ZodOptional<z.ZodBoolean>;
258
+ version: z.ZodString;
259
+ registry: z.ZodOptional<z.ZodString>;
260
+ }, z.core.$strip>]>>>;
261
+ "build-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
262
+ package: z.ZodOptional<z.ZodString>;
263
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
264
+ optional: z.ZodOptional<z.ZodBoolean>;
265
+ "default-features": z.ZodOptional<z.ZodBoolean>;
266
+ workspace: z.ZodLiteral<true>;
267
+ }, z.core.$strip>, z.ZodObject<{
268
+ package: z.ZodOptional<z.ZodString>;
269
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
270
+ optional: z.ZodOptional<z.ZodBoolean>;
271
+ "default-features": z.ZodOptional<z.ZodBoolean>;
272
+ path: z.ZodString;
273
+ version: z.ZodOptional<z.ZodString>;
274
+ }, z.core.$strip>, z.ZodObject<{
275
+ package: z.ZodOptional<z.ZodString>;
276
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
277
+ optional: z.ZodOptional<z.ZodBoolean>;
278
+ "default-features": z.ZodOptional<z.ZodBoolean>;
279
+ git: z.ZodString;
280
+ branch: z.ZodOptional<z.ZodString>;
281
+ tag: z.ZodOptional<z.ZodString>;
282
+ rev: z.ZodOptional<z.ZodString>;
283
+ version: z.ZodOptional<z.ZodString>;
284
+ }, z.core.$strip>, z.ZodObject<{
285
+ package: z.ZodOptional<z.ZodString>;
286
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
287
+ optional: z.ZodOptional<z.ZodBoolean>;
288
+ "default-features": z.ZodOptional<z.ZodBoolean>;
289
+ version: z.ZodString;
290
+ registry: z.ZodOptional<z.ZodString>;
291
+ }, z.core.$strip>]>>>;
292
+ }, z.core.$loose>>;
293
+ dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
294
+ package: z.ZodOptional<z.ZodString>;
295
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
296
+ optional: z.ZodOptional<z.ZodBoolean>;
297
+ "default-features": z.ZodOptional<z.ZodBoolean>;
298
+ workspace: z.ZodLiteral<true>;
299
+ }, z.core.$strip>, z.ZodObject<{
300
+ package: z.ZodOptional<z.ZodString>;
301
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
302
+ optional: z.ZodOptional<z.ZodBoolean>;
303
+ "default-features": z.ZodOptional<z.ZodBoolean>;
304
+ path: z.ZodString;
305
+ version: z.ZodOptional<z.ZodString>;
306
+ }, z.core.$strip>, z.ZodObject<{
307
+ package: z.ZodOptional<z.ZodString>;
308
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
309
+ optional: z.ZodOptional<z.ZodBoolean>;
310
+ "default-features": z.ZodOptional<z.ZodBoolean>;
311
+ git: z.ZodString;
312
+ branch: z.ZodOptional<z.ZodString>;
313
+ tag: z.ZodOptional<z.ZodString>;
314
+ rev: z.ZodOptional<z.ZodString>;
315
+ version: z.ZodOptional<z.ZodString>;
316
+ }, z.core.$strip>, z.ZodObject<{
317
+ package: z.ZodOptional<z.ZodString>;
318
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
319
+ optional: z.ZodOptional<z.ZodBoolean>;
320
+ "default-features": z.ZodOptional<z.ZodBoolean>;
321
+ version: z.ZodString;
322
+ registry: z.ZodOptional<z.ZodString>;
323
+ }, z.core.$strip>]>>>;
324
+ "dev-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
325
+ package: z.ZodOptional<z.ZodString>;
326
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
327
+ optional: z.ZodOptional<z.ZodBoolean>;
328
+ "default-features": z.ZodOptional<z.ZodBoolean>;
329
+ workspace: z.ZodLiteral<true>;
330
+ }, z.core.$strip>, z.ZodObject<{
331
+ package: z.ZodOptional<z.ZodString>;
332
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
333
+ optional: z.ZodOptional<z.ZodBoolean>;
334
+ "default-features": z.ZodOptional<z.ZodBoolean>;
335
+ path: z.ZodString;
336
+ version: z.ZodOptional<z.ZodString>;
337
+ }, z.core.$strip>, z.ZodObject<{
338
+ package: z.ZodOptional<z.ZodString>;
339
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
340
+ optional: z.ZodOptional<z.ZodBoolean>;
341
+ "default-features": z.ZodOptional<z.ZodBoolean>;
342
+ git: z.ZodString;
343
+ branch: z.ZodOptional<z.ZodString>;
344
+ tag: z.ZodOptional<z.ZodString>;
345
+ rev: z.ZodOptional<z.ZodString>;
346
+ version: z.ZodOptional<z.ZodString>;
347
+ }, z.core.$strip>, z.ZodObject<{
348
+ package: z.ZodOptional<z.ZodString>;
349
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
350
+ optional: z.ZodOptional<z.ZodBoolean>;
351
+ "default-features": z.ZodOptional<z.ZodBoolean>;
352
+ version: z.ZodString;
353
+ registry: z.ZodOptional<z.ZodString>;
354
+ }, z.core.$strip>]>>>;
355
+ "build-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
356
+ package: z.ZodOptional<z.ZodString>;
357
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
358
+ optional: z.ZodOptional<z.ZodBoolean>;
359
+ "default-features": z.ZodOptional<z.ZodBoolean>;
360
+ workspace: z.ZodLiteral<true>;
361
+ }, z.core.$strip>, z.ZodObject<{
362
+ package: z.ZodOptional<z.ZodString>;
363
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
364
+ optional: z.ZodOptional<z.ZodBoolean>;
365
+ "default-features": z.ZodOptional<z.ZodBoolean>;
366
+ path: z.ZodString;
367
+ version: z.ZodOptional<z.ZodString>;
368
+ }, z.core.$strip>, z.ZodObject<{
369
+ package: z.ZodOptional<z.ZodString>;
370
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
371
+ optional: z.ZodOptional<z.ZodBoolean>;
372
+ "default-features": z.ZodOptional<z.ZodBoolean>;
373
+ git: z.ZodString;
374
+ branch: z.ZodOptional<z.ZodString>;
375
+ tag: z.ZodOptional<z.ZodString>;
376
+ rev: z.ZodOptional<z.ZodString>;
377
+ version: z.ZodOptional<z.ZodString>;
378
+ }, z.core.$strip>, z.ZodObject<{
379
+ package: z.ZodOptional<z.ZodString>;
380
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
381
+ optional: z.ZodOptional<z.ZodBoolean>;
382
+ "default-features": z.ZodOptional<z.ZodBoolean>;
383
+ version: z.ZodString;
384
+ registry: z.ZodOptional<z.ZodString>;
385
+ }, z.core.$strip>]>>>;
386
+ target: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
387
+ dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
388
+ package: z.ZodOptional<z.ZodString>;
389
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
390
+ optional: z.ZodOptional<z.ZodBoolean>;
391
+ "default-features": z.ZodOptional<z.ZodBoolean>;
392
+ workspace: z.ZodLiteral<true>;
393
+ }, z.core.$strip>, z.ZodObject<{
394
+ package: z.ZodOptional<z.ZodString>;
395
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
396
+ optional: z.ZodOptional<z.ZodBoolean>;
397
+ "default-features": z.ZodOptional<z.ZodBoolean>;
398
+ path: z.ZodString;
399
+ version: z.ZodOptional<z.ZodString>;
400
+ }, z.core.$strip>, z.ZodObject<{
401
+ package: z.ZodOptional<z.ZodString>;
402
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
403
+ optional: z.ZodOptional<z.ZodBoolean>;
404
+ "default-features": z.ZodOptional<z.ZodBoolean>;
405
+ git: z.ZodString;
406
+ branch: z.ZodOptional<z.ZodString>;
407
+ tag: z.ZodOptional<z.ZodString>;
408
+ rev: z.ZodOptional<z.ZodString>;
409
+ version: z.ZodOptional<z.ZodString>;
410
+ }, z.core.$strip>, z.ZodObject<{
411
+ package: z.ZodOptional<z.ZodString>;
412
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
413
+ optional: z.ZodOptional<z.ZodBoolean>;
414
+ "default-features": z.ZodOptional<z.ZodBoolean>;
415
+ version: z.ZodString;
416
+ registry: z.ZodOptional<z.ZodString>;
417
+ }, z.core.$strip>]>>>;
418
+ "dev-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
419
+ package: z.ZodOptional<z.ZodString>;
420
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
421
+ optional: z.ZodOptional<z.ZodBoolean>;
422
+ "default-features": z.ZodOptional<z.ZodBoolean>;
423
+ workspace: z.ZodLiteral<true>;
424
+ }, z.core.$strip>, z.ZodObject<{
425
+ package: z.ZodOptional<z.ZodString>;
426
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
427
+ optional: z.ZodOptional<z.ZodBoolean>;
428
+ "default-features": z.ZodOptional<z.ZodBoolean>;
429
+ path: z.ZodString;
430
+ version: z.ZodOptional<z.ZodString>;
431
+ }, z.core.$strip>, z.ZodObject<{
432
+ package: z.ZodOptional<z.ZodString>;
433
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
434
+ optional: z.ZodOptional<z.ZodBoolean>;
435
+ "default-features": z.ZodOptional<z.ZodBoolean>;
436
+ git: z.ZodString;
437
+ branch: z.ZodOptional<z.ZodString>;
438
+ tag: z.ZodOptional<z.ZodString>;
439
+ rev: z.ZodOptional<z.ZodString>;
440
+ version: z.ZodOptional<z.ZodString>;
441
+ }, z.core.$strip>, z.ZodObject<{
442
+ package: z.ZodOptional<z.ZodString>;
443
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
444
+ optional: z.ZodOptional<z.ZodBoolean>;
445
+ "default-features": z.ZodOptional<z.ZodBoolean>;
446
+ version: z.ZodString;
447
+ registry: z.ZodOptional<z.ZodString>;
448
+ }, z.core.$strip>]>>>;
449
+ "build-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
450
+ package: z.ZodOptional<z.ZodString>;
451
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
452
+ optional: z.ZodOptional<z.ZodBoolean>;
453
+ "default-features": z.ZodOptional<z.ZodBoolean>;
454
+ workspace: z.ZodLiteral<true>;
455
+ }, z.core.$strip>, z.ZodObject<{
456
+ package: z.ZodOptional<z.ZodString>;
457
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
458
+ optional: z.ZodOptional<z.ZodBoolean>;
459
+ "default-features": z.ZodOptional<z.ZodBoolean>;
460
+ path: z.ZodString;
461
+ version: z.ZodOptional<z.ZodString>;
462
+ }, z.core.$strip>, z.ZodObject<{
463
+ package: z.ZodOptional<z.ZodString>;
464
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
465
+ optional: z.ZodOptional<z.ZodBoolean>;
466
+ "default-features": z.ZodOptional<z.ZodBoolean>;
467
+ git: z.ZodString;
468
+ branch: z.ZodOptional<z.ZodString>;
469
+ tag: z.ZodOptional<z.ZodString>;
470
+ rev: z.ZodOptional<z.ZodString>;
471
+ version: z.ZodOptional<z.ZodString>;
472
+ }, z.core.$strip>, z.ZodObject<{
473
+ package: z.ZodOptional<z.ZodString>;
474
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
475
+ optional: z.ZodOptional<z.ZodBoolean>;
476
+ "default-features": z.ZodOptional<z.ZodBoolean>;
477
+ version: z.ZodString;
478
+ registry: z.ZodOptional<z.ZodString>;
479
+ }, z.core.$strip>]>>>;
480
+ }, z.core.$loose>>>;
481
+ }, z.core.$loose>;
482
+ type CargoDependency = z.infer<typeof cargoDependencySchema>;
483
+ type CargoManifest = z.infer<typeof cargoManifestSchema>;
484
+ //#endregion
485
+ //#region src/plugins/cargo.d.ts
486
+ declare const DEP_FIELDS$1: readonly ["dependencies", "dev-dependencies", "build-dependencies"];
487
+ interface CargoToml<Data extends CargoManifest = CargoManifest> {
488
+ path: string;
489
+ content: string;
490
+ data: Data;
491
+ }
492
+ declare class CargoPackage extends WorkspacePackage {
493
+ readonly path: string;
494
+ /** a crate must have `package` field defined, otherwise it is merely a virutal workspace file, and Tegami should not include it. */
495
+ readonly file: CargoToml<RequireFields<CargoManifest, "package">>;
496
+ readonly workspaceFile?: CargoToml<RequireFields<CargoManifest, "workspace">> | undefined;
497
+ readonly manager = "cargo";
498
+ readonly manifest: RequireFields<CargoManifest, "package">;
499
+ constructor(path: string, /** a crate must have `package` field defined, otherwise it is merely a virutal workspace file, and Tegami should not include it. */
500
+
501
+ file: CargoToml<RequireFields<CargoManifest, "package">>, workspaceFile?: CargoToml<RequireFields<CargoManifest, "workspace">> | undefined);
502
+ get name(): string;
503
+ get version(): string;
504
+ setVersion(version: string): void;
505
+ }
506
+ interface DependentRef$1 {
507
+ dependent: CargoPackage;
508
+ kind: (typeof DEP_FIELDS$1)[number];
509
+ name: string;
510
+ spec: CargoDependency;
511
+ version?: string;
512
+ }
513
+ interface CargoPluginOptions {
514
+ /**
515
+ * Update lock file after versioning.
516
+ *
517
+ * @default true
518
+ */
519
+ updateLockFile?: boolean;
520
+ /**
521
+ * Decide how to bump the dependents of a bumped package.
522
+ */
523
+ bumpDep?: (opts: DependentRef$1) => BumpType | false;
524
+ }
525
+ declare function cargo({
526
+ updateLockFile,
527
+ bumpDep: getBumpDepType
528
+ }?: CargoPluginOptions): TegamiPlugin;
529
+ interface CargoGraph {
530
+ /** path -> Cargo.toml */
531
+ files: Map<string, CargoToml>;
532
+ /** name -> package */
533
+ packages: Map<string, CargoPackage>;
534
+ }
535
+ //#endregion
147
536
  //#region src/context.d.ts
148
537
  interface TegamiContext {
149
538
  /** absolute path */
@@ -164,13 +553,16 @@ interface TegamiContext {
164
553
  gitlab?: {
165
554
  repo?: string;
166
555
  token?: GitLabToken;
167
- apiUrl?: string;
168
- webUrl?: string;
556
+ apiUrl: string;
557
+ webUrl: string;
169
558
  };
170
559
  /** additional context when npm plugin is configured */
171
560
  npm?: {
172
561
  client: AgentName;
173
562
  };
563
+ cargo?: {
564
+ graph: CargoGraph;
565
+ };
174
566
  }
175
567
  //#endregion
176
568
  //#region src/providers/npm/schema.d.ts
@@ -195,160 +587,27 @@ declare const packageManifestSchema: z.ZodObject<{
195
587
  }, z.core.$loose>;
196
588
  type PackageManifest = z.infer<typeof packageManifestSchema>;
197
589
  //#endregion
198
- //#region src/providers/npm.d.ts
199
- declare const DEP_FIELDS$1: readonly ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"];
200
- declare class NpmPackage extends WorkspacePackage {
201
- readonly path: string;
202
- readonly manifest: PackageManifest;
203
- readonly manager = "npm";
204
- constructor(path: string, manifest: PackageManifest);
205
- get name(): string;
206
- get version(): string | undefined;
207
- write(): Promise<void>;
208
- initDraft(): PackageDraft;
209
- configureDraft(draft: PackageDraft, group?: PackageGroup): void;
210
- }
211
- type DependencySpec = {
212
- protocol: "npm";
213
- alias: string;
214
- range: string;
215
- linked?: WorkspacePackage;
216
- } | {
217
- protocol: "workspace";
218
- range: string;
219
- linked?: WorkspacePackage;
220
- } | {
221
- protocol: "file";
222
- raw: string;
223
- linked?: WorkspacePackage;
224
- } | {
225
- range: string;
226
- linked?: WorkspacePackage;
227
- protocol?: undefined;
228
- };
229
- interface NpmPluginOptions {
230
- /** Package manager command used for npm registry operations. */
231
- client?: AgentName;
232
- /**
233
- * Decide how to bump the dependents of a bumped package.
234
- */
235
- bumpDep?: (opts: {
236
- dependent: NpmPackage;
237
- kind: (typeof DEP_FIELDS$1)[number];
238
- name: string;
239
- spec: DependencySpec;
240
- }) => BumpType | false;
241
- /**
242
- * What to do when a workspace dependency's version has gone beyond peer dependency constraints:
243
- *
244
- * - `set` (default): set to the current version (won't preserve prefix).
245
- * - `error`: throw error.
246
- * - `ignore`: do nothing.
247
- *
248
- * Note: `workspace:` protocols are not included.
249
- */
250
- onBreakPeerDep?: "set" | "error" | "ignore";
251
- /** update lockfile after applying a draft @default true */
252
- updateLockFile?: boolean;
590
+ //#region src/changelog/generate.d.ts
591
+ interface GenerateFromCommitsOptions {
592
+ /** Start revision. Defaults to the latest reachable git tag, or all history if none exists. */
593
+ from?: string;
594
+ /** End revision. Defaults to HEAD. */
595
+ to?: string;
253
596
  }
254
- declare function npm({
255
- client: defaultClient,
256
- onBreakPeerDep,
257
- updateLockFile,
258
- bumpDep: getBumpDepType
259
- }?: NpmPluginOptions): TegamiPlugin;
260
- //#endregion
261
- //#region src/providers/cargo/schema.d.ts
262
- declare const cargoManifestSchema: z.ZodObject<{
263
- package: z.ZodObject<{
264
- name: z.ZodString;
265
- version: z.ZodOptional<z.ZodString>;
266
- publish: z.ZodOptional<z.ZodBoolean>;
267
- }, z.core.$strip>;
268
- workspace: z.ZodOptional<z.ZodObject<{
269
- members: z.ZodOptional<z.ZodArray<z.ZodString>>;
270
- exclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
271
- package: z.ZodOptional<z.ZodObject<{
272
- version: z.ZodOptional<z.ZodString>;
273
- }, z.core.$strip>>;
274
- }, z.core.$strip>>;
275
- dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
276
- version: z.ZodString;
277
- package: z.ZodOptional<z.ZodString>;
278
- path: z.ZodOptional<z.ZodString>;
279
- }, z.core.$strip>]>>>;
280
- "dev-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
281
- version: z.ZodString;
282
- package: z.ZodOptional<z.ZodString>;
283
- path: z.ZodOptional<z.ZodString>;
284
- }, z.core.$strip>]>>>;
285
- "build-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
286
- version: z.ZodString;
287
- package: z.ZodOptional<z.ZodString>;
288
- path: z.ZodOptional<z.ZodString>;
289
- }, z.core.$strip>]>>>;
290
- target: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
291
- dependencies: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
292
- version: z.ZodString;
293
- package: z.ZodOptional<z.ZodString>;
294
- path: z.ZodOptional<z.ZodString>;
295
- }, z.core.$strip>]>>>;
296
- "dev-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
297
- version: z.ZodString;
298
- package: z.ZodOptional<z.ZodString>;
299
- path: z.ZodOptional<z.ZodString>;
300
- }, z.core.$strip>]>>>;
301
- "build-dependencies": z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
302
- version: z.ZodString;
303
- package: z.ZodOptional<z.ZodString>;
304
- path: z.ZodOptional<z.ZodString>;
305
- }, z.core.$strip>]>>>;
306
- }, z.core.$strip>>>;
307
- }, z.core.$strip>;
308
- type CargoManifest = z.infer<typeof cargoManifestSchema>;
309
- //#endregion
310
- //#region src/providers/cargo.d.ts
311
- declare const DEP_FIELDS: readonly ["dependencies", "dev-dependencies", "build-dependencies"];
312
- declare class CargoPackage extends WorkspacePackage {
313
- readonly path: string;
314
- readonly manifest: CargoManifest;
315
- private content;
316
- private readonly workspaceManifest?;
317
- readonly manager = "cargo";
318
- constructor(path: string, manifest: CargoManifest, content: string, workspaceManifest?: CargoManifest | undefined);
319
- get name(): string;
320
- get version(): string | undefined;
321
- setVersion(version: string): void;
322
- write(): Promise<void>;
323
- patch(path: string, value: unknown): void;
324
- get packageInfo(): {
325
- name: string;
326
- version?: string | undefined;
327
- publish?: boolean | undefined;
328
- };
329
- private get workspaceVersion();
597
+ interface CommitChangelog {
598
+ filename: string;
599
+ content: string;
600
+ packages: Record<string, BumpType | ChangelogPackageConfig>;
601
+ changes: CommitChange[];
330
602
  }
331
- interface CargoPluginOptions {
332
- /**
333
- * Update lock file after versioning.
334
- *
335
- * @default true
336
- */
337
- updateLockFile?: boolean;
338
- /**
339
- * Decide how to bump the dependents of a bumped package.
340
- */
341
- bumpDep?: (opts: {
342
- dependent: CargoPackage;
343
- kind: (typeof DEP_FIELDS)[number];
344
- name: string;
345
- version: string;
346
- }) => BumpType | false;
603
+ interface CommitChange {
604
+ hash: string;
605
+ subject: string;
606
+ body: string;
607
+ packages: string[];
608
+ type: BumpType;
609
+ title: string;
347
610
  }
348
- declare function cargo({
349
- updateLockFile,
350
- bumpDep: getBumpDepType
351
- }?: CargoPluginOptions): TegamiPlugin;
352
611
  //#endregion
353
612
  //#region src/plans/publish.d.ts
354
613
  interface PublishPlan {
@@ -368,7 +627,8 @@ interface PackagePublishPlan {
368
627
  };
369
628
  /** generated by npm plugin */
370
629
  npm?: {
371
- /** dist tag to use if published */distTag?: string;
630
+ /** dist tag to use if published */distTag?: string; /** point latest tag to it if published */
631
+ markLatest?: boolean;
372
632
  };
373
633
  /** publish result, generated for all packages in publish plan after publishing */
374
634
  publishResult?: PackagePublishResult;
@@ -403,28 +663,6 @@ declare class PublishLock {
403
663
  serialize(): string;
404
664
  }
405
665
  //#endregion
406
- //#region src/changelog/generate.d.ts
407
- interface GenerateFromCommitsOptions {
408
- /** Start revision. Defaults to the latest reachable git tag, or all history if none exists. */
409
- from?: string;
410
- /** End revision. Defaults to HEAD. */
411
- to?: string;
412
- }
413
- interface CommitChangelog {
414
- filename: string;
415
- content: string;
416
- packages: Record<string, BumpType | ChangelogPackageConfig>;
417
- changes: CommitChange[];
418
- }
419
- interface CommitChange {
420
- hash: string;
421
- subject: string;
422
- body: string;
423
- packages: string[];
424
- type: BumpType;
425
- title: string;
426
- }
427
- //#endregion
428
666
  //#region src/index.d.ts
429
667
  interface GenerateChangelogOptions extends GenerateFromCommitsOptions {
430
668
  /**
@@ -492,6 +730,83 @@ interface TegamiCliRegistry {
492
730
  parse(argv: string[]): Promise<void>;
493
731
  }
494
732
  //#endregion
733
+ //#region src/providers/npm/cli.d.ts
734
+ type TrustedPublishOptions = {
735
+ provider: "github"; /** CI workflow filename for publishing. */
736
+ workflow: string;
737
+ } | {
738
+ provider: "gitlab"; /** CI pipeline filename for publishing. */
739
+ workflow: string;
740
+ };
741
+ //#endregion
742
+ //#region src/providers/npm.d.ts
743
+ declare const DEP_FIELDS: readonly ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"];
744
+ declare class NpmPackage extends WorkspacePackage {
745
+ readonly path: string;
746
+ readonly manifest: PackageManifest;
747
+ readonly manager = "npm";
748
+ constructor(path: string, manifest: PackageManifest);
749
+ get name(): string;
750
+ get version(): string | undefined;
751
+ write(): Promise<void>;
752
+ initDraft(): PackageDraft;
753
+ getRegistry(): string;
754
+ configureDraft(draft: PackageDraft, group?: PackageGroup): void;
755
+ }
756
+ type DependencySpec = {
757
+ protocol: "npm";
758
+ alias: string;
759
+ range: string;
760
+ linked?: WorkspacePackage;
761
+ } | {
762
+ protocol: "workspace";
763
+ range: string;
764
+ linked?: WorkspacePackage;
765
+ } | {
766
+ protocol: "file";
767
+ raw: string;
768
+ linked?: WorkspacePackage;
769
+ } | {
770
+ range: string;
771
+ linked?: WorkspacePackage;
772
+ protocol?: undefined;
773
+ };
774
+ interface DependentRef {
775
+ dependent: NpmPackage;
776
+ kind: (typeof DEP_FIELDS)[number];
777
+ name: string;
778
+ spec: DependencySpec;
779
+ }
780
+ interface NpmPluginOptions {
781
+ /** Package manager command used for npm registry operations. */
782
+ client?: AgentName;
783
+ /**
784
+ * Decide how to bump the dependents of a bumped package.
785
+ */
786
+ bumpDep?: (opts: DependentRef) => BumpType | false;
787
+ /**
788
+ * What to do when a workspace dependency's version has gone beyond peer dependency constraints:
789
+ *
790
+ * - `set` (default): set to the current version (won't preserve prefix).
791
+ * - `error`: throw error.
792
+ * - `ignore`: do nothing.
793
+ *
794
+ * Note: `workspace:` protocols are not included.
795
+ */
796
+ onBreakPeerDep?: "set" | "error" | "ignore";
797
+ /** update lockfile after applying a draft @default true */
798
+ updateLockFile?: boolean;
799
+ /** Configure `tegami npm pretrust`, disabled by default. */
800
+ trustedPublish?: TrustedPublishOptions;
801
+ }
802
+ declare function npm({
803
+ client: defaultClient,
804
+ onBreakPeerDep,
805
+ updateLockFile,
806
+ trustedPublish,
807
+ bumpDep: getBumpDepType
808
+ }?: NpmPluginOptions): TegamiPlugin;
809
+ //#endregion
495
810
  //#region src/types.d.ts
496
811
  /** Generates changelog content for a package release. */
497
812
  interface LogGenerator {
@@ -525,7 +840,6 @@ interface TegamiOptions<Groups extends string = string> {
525
840
  */
526
841
  conventionalCommits?: boolean;
527
842
  npm?: NpmPluginOptions;
528
- cargo?: CargoPluginOptions;
529
843
  }
530
844
  interface SharedGoOptions {
531
845
  /**
@@ -594,6 +908,10 @@ interface TegamiPlugin {
594
908
  pkg: WorkspacePackage;
595
909
  plan: PublishPlan;
596
910
  }): Awaitable<PublishPreflight | void | undefined>;
911
+ /** Called when all preflights finished */
912
+ afterPreflight?(this: TegamiContext, opts: {
913
+ plan: PublishPlan;
914
+ }): Awaitable<void>;
597
915
  /** Publish package, return a result object indicating if the package is published, skipped, or failed. Return `undefined` if the package is not handled by this plugin. */
598
916
  publish?(this: TegamiContext, opts: {
599
917
  pkg: WorkspacePackage;
@@ -626,6 +944,7 @@ interface TegamiPlugin {
626
944
  applyCliDraft?(this: TegamiContext, draft: Draft): Awaitable<void>;
627
945
  }
628
946
  type Awaitable<T> = T | Promise<T>;
947
+ type RequireFields<Obj, K extends keyof Obj> = Obj & { [R in K]-?: NonNullable<Obj[R]> };
629
948
  interface PublishPreflight {
630
949
  /**
631
950
  * Whether the package should be published, the state **must not** be changed across different runs.
@@ -641,4 +960,4 @@ interface PublishPreflight {
641
960
  wait?: string[];
642
961
  }
643
962
  //#endregion
644
- export { PackageDraft as A, npm as C, WorkspacePackage as D, PackageGroup as E, Draft as O, NpmPluginOptions as S, PackageGraph as T, PublishPlan as _, PublishPreflight as a, cargo as b, TegamiPluginOption as c, tegami as d, CommitChangelog as f, PublishOptions as g, PackagePublishResult as h, PackageOptions as i, BumpType as j, DraftPolicy as k, GenerateChangelogOptions as l, PackagePublishPlan as m, GroupOptions as n, TegamiOptions as o, PublishLock as p, LogGenerator as r, TegamiPlugin as s, Awaitable as t, Tegami as u, CargoPackage as v, TegamiContext as w, NpmPackage as x, CargoPluginOptions as y };
963
+ export { DraftPolicy as A, CargoPackage as C, PackageGroup as D, PackageGraph as E, BumpType as M, WorkspacePackage as O, CargoGraph as S, cargo as T, PackagePublishResult as _, PublishPreflight as a, CommitChangelog as b, TegamiPluginOption as c, npm as d, GenerateChangelogOptions as f, PackagePublishPlan as g, PublishLock as h, PackageOptions as i, PackageDraft as j, Draft as k, NpmPackage as l, tegami as m, GroupOptions as n, TegamiOptions as o, Tegami as p, LogGenerator as r, TegamiPlugin as s, Awaitable as t, NpmPluginOptions as u, PublishOptions as v, CargoPluginOptions as w, TegamiContext as x, PublishPlan as y };