tines 0.0.270 → 0.0.272
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/README.md +6 -0
- package/dist/index.js +12 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -35,6 +35,7 @@ stored config. `--url` and `--api-key` on any command win over both.
|
|
|
35
35
|
tines projects list
|
|
36
36
|
tines issues list --project <project>
|
|
37
37
|
tines issues create <project> --title "…" -d @description.md
|
|
38
|
+
tines issues create <project> --title "Linked" --blocked-by Other/12 --blocks Other/14 --duplicate-of Other/9
|
|
38
39
|
tines issues show <project>/<number>
|
|
39
40
|
tines issues move <project>/<number> <action> # a workflow transition
|
|
40
41
|
tines issues transfer <project>/<number> --project <dest> # move to another project (keeps ID, record and old refs)
|
|
@@ -67,6 +68,11 @@ list's filters.
|
|
|
67
68
|
`tines <noun> --help` lists the rest: `workflows`, `context`, `journal`, `schedules`,
|
|
68
69
|
`runners`, `runs`, `routing`, `supervisor`.
|
|
69
70
|
|
|
71
|
+
`issues create` accepts repeatable `--blocked-by` and `--blocks` references plus one
|
|
72
|
+
`--duplicate-of` reference. The issue and all initial relationships are created atomically.
|
|
73
|
+
When a recurrence is also supplied, the relationships apply only to the first issue; later
|
|
74
|
+
scheduled instances start without copied relationships.
|
|
75
|
+
|
|
70
76
|
## Workflow package files
|
|
71
77
|
|
|
72
78
|
Export a workflow and its inheritance/context closure as canonical JSON, validate an edited
|
package/dist/index.js
CHANGED
|
@@ -7389,7 +7389,7 @@ function register2(program3) {
|
|
|
7389
7389
|
"attach a label; repeat for several (created if new)",
|
|
7390
7390
|
collect,
|
|
7391
7391
|
[]
|
|
7392
|
-
)
|
|
7392
|
+
).option("--blocked-by <ref>", "issue that blocks the new issue; repeatable", collect, []).option("--blocks <ref>", "issue that the new issue blocks; repeatable", collect, []).option("--duplicate-of <ref>", "canonical issue that the new issue duplicates")
|
|
7393
7393
|
).action(
|
|
7394
7394
|
async (projectRef2, opts) => {
|
|
7395
7395
|
const description = opts.description !== void 0 ? readBodyValue(opts.description) : void 0;
|
|
@@ -7406,13 +7406,23 @@ function register2(program3) {
|
|
|
7406
7406
|
timezone: opts.tz ?? systemTimezone(),
|
|
7407
7407
|
require_all_closed: opts.ifClosed ?? false
|
|
7408
7408
|
} : void 0;
|
|
7409
|
+
const blockedBy = await Promise.all(
|
|
7410
|
+
(opts.blockedBy ?? []).map(async (ref) => (await resolveIssue(api, ref)).id)
|
|
7411
|
+
);
|
|
7412
|
+
const blocks = await Promise.all(
|
|
7413
|
+
(opts.blocks ?? []).map(async (ref) => (await resolveIssue(api, ref)).id)
|
|
7414
|
+
);
|
|
7415
|
+
const duplicateOf = opts.duplicateOf ? (await resolveIssue(api, opts.duplicateOf)).id : void 0;
|
|
7409
7416
|
const issue = await api.createIssue(project.id, {
|
|
7410
7417
|
title: opts.title,
|
|
7411
7418
|
description,
|
|
7412
7419
|
workflow_id: workflowId,
|
|
7413
7420
|
state: opts.state,
|
|
7414
7421
|
schedule: schedule2,
|
|
7415
|
-
labels: opts.label
|
|
7422
|
+
labels: opts.label,
|
|
7423
|
+
...blockedBy.length > 0 ? { blocked_by: blockedBy } : {},
|
|
7424
|
+
...blocks.length > 0 ? { blocks } : {},
|
|
7425
|
+
...duplicateOf ? { duplicate_of: duplicateOf } : {}
|
|
7416
7426
|
});
|
|
7417
7427
|
if (opts.json) return printJson(issue);
|
|
7418
7428
|
console.log(
|