pm-csv 2026.7.19-1 → 2026.7.19
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 +0 -10
- package/README.md +0 -50
- package/dist/index.d.ts +0 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -444
- package/dist/index.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,15 +1,5 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
## 2026.7.19-1 - 2026-07-19
|
|
4
|
-
|
|
5
|
-
### Added
|
|
6
|
-
|
|
7
|
-
- atomic CSV import via commitWorkspaceTransaction (pm-cli 2026.7.19) ([pm-csv-4bvs](https://github.com/unbraind/pm-csv/blob/main/.agents/pm/tasks/pm-csv-4bvs.toon))
|
|
8
|
-
|
|
9
|
-
### Fixed
|
|
10
|
-
|
|
11
|
-
- atomic import: per-row resume/compensation tag + in-batch dup-key guard + SDK resolve hardening (2026.7.19-1) ([pm-csv-j3pi](https://github.com/unbraind/pm-csv/blob/main/.agents/pm/tasks/pm-csv-j3pi.toon))
|
|
12
|
-
|
|
13
3
|
## 2026.7.19 - 2026-07-19
|
|
14
4
|
|
|
15
5
|
### Fixed
|
package/README.md
CHANGED
|
@@ -37,7 +37,6 @@ pm csv import legacy.csv --encoding latin1 # non-UTF-8 source
|
|
|
37
37
|
pm csv import sprint12.csv --source 'jira-export-2026-06'
|
|
38
38
|
pm csv import vendor.csv --strict # fail before writing on bad row data
|
|
39
39
|
pm csv import items.csv --dry-run
|
|
40
|
-
pm csv import tasks.csv --atomic # all-or-nothing import (pm-cli >= 2026.7.19)
|
|
41
40
|
```
|
|
42
41
|
|
|
43
42
|
**Flags**
|
|
@@ -55,7 +54,6 @@ pm csv import tasks.csv --atomic # all-or-nothing import (pm-cli >= 2026.7.19)
|
|
|
55
54
|
| `--priority <n>` | integer | — | Import **only** rows whose integer priority equals this value |
|
|
56
55
|
| `--strict` | boolean | false | Abort before writing if validation finds missing titles, unknown statuses, invalid/out-of-range priorities, or duplicate mapped columns |
|
|
57
56
|
| `--dry-run` | boolean | false | Preview what would be imported without writing any data |
|
|
58
|
-
| `--atomic` | boolean | false | Import all creates atomically under one workspace writer-locked, crash-recoverable transaction (pm-cli >= 2026.7.19). On failure every applied create is compensated (closed); interrupted runs resume. Incompatible with `--stream` |
|
|
59
57
|
|
|
60
58
|
#### Strict import gate
|
|
61
59
|
|
|
@@ -66,54 +64,6 @@ strict mode the importer runs the same parser as `pm csv validate` before any
|
|
|
66
64
|
write, then aborts on row-level data issues or duplicate mapped columns so a bad
|
|
67
65
|
file cannot partially mutate the pm store.
|
|
68
66
|
|
|
69
|
-
#### Atomic, all-or-nothing import (`--atomic`)
|
|
70
|
-
|
|
71
|
-
By default, `csv import` creates items one row at a time. If a row fails
|
|
72
|
-
mid-import, the rows already written stay in the tracker — a partial,
|
|
73
|
-
non-atomic state — and concurrent agents can interleave writes. `--atomic`
|
|
74
|
-
(requires pm-cli **>= 2026.7.19**) wraps the whole row set in a single
|
|
75
|
-
`commitWorkspaceTransaction` primitive: all creates are committed under one
|
|
76
|
-
workspace writer-locked, crash-recoverable journal, or none are.
|
|
77
|
-
|
|
78
|
-
- **All-or-nothing:** if any row's `pm create` fails, every already-applied
|
|
79
|
-
create is compensated (closed with `reason "atomic csv import rolled back"`),
|
|
80
|
-
the transaction is rolled back, and the command exits non-zero with a clear
|
|
81
|
-
message. No committed (open) items from the import remain in the tracker.
|
|
82
|
-
- **Crash-recoverable / resumable:** the transaction id is stable and derivable
|
|
83
|
-
from the absolute file path (`csv-import-<sha1(absPath)>`), so re-running the
|
|
84
|
-
same `--atomic` import against the same file resumes from the durable journal.
|
|
85
|
-
Resume/compensation matching is **per-row-precise**: every item this
|
|
86
|
-
transaction writes is stamped with a per-row ownership marker
|
|
87
|
-
`csv-txrow:<transactionId>#<rowIndex>` (plus a batch-level
|
|
88
|
-
`csv-tx:<transactionId>` marker for scanning), and a resumed run detects
|
|
89
|
-
already-applied rows by parsing the rowIndex out of that marker. This means a
|
|
90
|
-
CSV with **duplicate titles or duplicate keys** is handled correctly — a row
|
|
91
|
-
is only skipped when its exact rowIndex was already applied, never because a
|
|
92
|
-
same-titled/same-keyed sibling happens to match.
|
|
93
|
-
- **In-batch duplicate `--key` guard:** when `--key` is set, two rows in the same
|
|
94
|
-
file that share a key which does NOT already exist in the tracker would both
|
|
95
|
-
plan as a create (the key index is not updated during planning). The atomic
|
|
96
|
-
planner tracks keys claimed by earlier planned creates in the same run and
|
|
97
|
-
**skips a later duplicate with a clear per-row warning** (counted in
|
|
98
|
-
`skipped`), so only one item is created per new key. Rows whose key already
|
|
99
|
-
exists in the tracker still update normally.
|
|
100
|
-
- **Parity:** `--atomic` shells out to the same `pm create` the non-atomic path
|
|
101
|
-
uses; without `--atomic`, import output and exit codes are unchanged.
|
|
102
|
-
- **Incompatible with `--stream`:** an unbounded stream cannot be committed as
|
|
103
|
-
one all-or-nothing transaction, so `--atomic --stream` fails fast with a usage
|
|
104
|
-
error.
|
|
105
|
-
- **Compensation uses `close`, not `delete`**, to avoid the known history-
|
|
106
|
-
resurrection issue, so compensated items remain in the tracker as closed
|
|
107
|
-
items rather than being erased. For `--key` upsert rows that update
|
|
108
|
-
pre-existing items, the update is applied within the transaction but is not
|
|
109
|
-
reverted on failure (an arbitrary update cannot be safely undone without
|
|
110
|
-
capturing prior state); all-or-nothing compensation applies to creates.
|
|
111
|
-
|
|
112
|
-
```bash
|
|
113
|
-
pm csv import tasks.csv --atomic # all-or-nothing; resumes if interrupted
|
|
114
|
-
pm csv import tasks.csv --atomic --source q2 # provenance still recorded
|
|
115
|
-
```
|
|
116
|
-
|
|
117
67
|
#### Row filtering on import
|
|
118
68
|
|
|
119
69
|
`--status`, `--type` and `--priority` filter the CSV rows **before** any items
|
package/dist/index.d.ts
CHANGED
|
@@ -201,17 +201,6 @@ declare function parseImportFilter(statusRaw: string | undefined, typeRaw: strin
|
|
|
201
201
|
* Unset criteria are wildcards. Exposed for unit testing.
|
|
202
202
|
*/
|
|
203
203
|
declare function rowMatchesFilter(row: ParsedRow, filter: ImportRowFilter | undefined): boolean;
|
|
204
|
-
/**
|
|
205
|
-
* Public helper: the atomic transaction id that `pm csv import <file> --atomic`
|
|
206
|
-
* derives for the given file and options (reads and parses the file exactly as
|
|
207
|
-
* the importer does). Exposed so callers/tests can correlate items to their
|
|
208
|
-
* originating atomic import without re-implementing the derivation.
|
|
209
|
-
*/
|
|
210
|
-
export declare function atomicTransactionId(filePath: string, opts?: {
|
|
211
|
-
delimiter?: string;
|
|
212
|
-
encoding?: SupportedEncoding;
|
|
213
|
-
skipHeaders?: boolean;
|
|
214
|
-
}): string;
|
|
215
204
|
interface CsvValidateReport {
|
|
216
205
|
ok: boolean;
|
|
217
206
|
rowCount: number;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { readFileSync, writeFileSync, createReadStream } from "node:fs";
|
|
2
2
|
import { resolve } from "node:path";
|
|
3
3
|
import { spawnSync } from "node:child_process";
|
|
4
|
-
import { createHash } from "node:crypto";
|
|
5
4
|
const defineExtension = ((extension) => extension);
|
|
6
5
|
// ---------------------------------------------------------------------------
|
|
7
6
|
// Error contract
|
|
@@ -386,19 +385,6 @@ const KEY_TAG_PREFIX = "csv-key:";
|
|
|
386
385
|
// pm 2026.5.31) does not expose a `pm create --csv_source` setter, so we
|
|
387
386
|
// persist the label as a queryable tag. Stripped from exports like csv-key.
|
|
388
387
|
const SOURCE_TAG_PREFIX = "csv-source:";
|
|
389
|
-
// Ownership tag prefix stamped by the `--atomic` import path. Every item
|
|
390
|
-
// created/updated inside one atomic transaction is tagged with BOTH:
|
|
391
|
-
// - a batch-level marker `csv-tx:<transactionId>` (useful for scanning), and
|
|
392
|
-
// - a per-row marker `csv-txrow:<transactionId>#<rowIndex>` (source of truth).
|
|
393
|
-
// The per-row marker makes resume/compensation per-row-precise, so a CSV with
|
|
394
|
-
// duplicate titles or duplicate keys cannot trick inspect() into skipping the
|
|
395
|
-
// wrong row or compensating the wrong item. Like the other csv- prefixes both
|
|
396
|
-
// are stripped from exports and never surface in the user-facing tags column.
|
|
397
|
-
// pm lower-cases tags on storage; transactionId is `csv-import-<hex>` (already
|
|
398
|
-
// lower-case) and rowIndex is numeric, so the marker round-trips unchanged.
|
|
399
|
-
const TX_TAG_PREFIX = "csv-tx:";
|
|
400
|
-
const TX_ROW_TAG_PREFIX = "csv-txrow:";
|
|
401
|
-
const TX_ROW_TAG_SEPARATOR = "#";
|
|
402
388
|
const PM_LIST_MAX_BUFFER = 16 * 1024 * 1024;
|
|
403
389
|
/**
|
|
404
390
|
* Normalize a dedup key value for stable matching. pm lower-cases tags on
|
|
@@ -853,11 +839,6 @@ function computeFieldMapWarnings(rawHeaders, fieldMap) {
|
|
|
853
839
|
return warnings;
|
|
854
840
|
}
|
|
855
841
|
function importCSV(pmRoot, filePath, opts) {
|
|
856
|
-
if (opts.atomic && opts.stream) {
|
|
857
|
-
return Promise.reject(new CommandError("--atomic cannot be combined with --stream: an unbounded stream cannot be committed as one all-or-nothing transaction.", EXIT_CODE.USAGE));
|
|
858
|
-
}
|
|
859
|
-
if (opts.atomic)
|
|
860
|
-
return importCSVAtomic(pmRoot, filePath, opts);
|
|
861
842
|
if (opts.stream)
|
|
862
843
|
return importCSVStreaming(pmRoot, filePath, opts);
|
|
863
844
|
return Promise.resolve(importCSVInMemory(pmRoot, filePath, opts));
|
|
@@ -893,380 +874,6 @@ function importCSVInMemory(pmRoot, filePath, opts) {
|
|
|
893
874
|
}
|
|
894
875
|
return result;
|
|
895
876
|
}
|
|
896
|
-
// ---------------------------------------------------------------------------
|
|
897
|
-
// Atomic import (pm-cli >= 2026.7.19 commitWorkspaceTransaction)
|
|
898
|
-
// ---------------------------------------------------------------------------
|
|
899
|
-
/**
|
|
900
|
-
* SHA-1 fingerprint of the exact parsed content being imported (raw headers +
|
|
901
|
-
* every data row). Folded into the transaction id so editing a file in place
|
|
902
|
-
* changes the id (see deriveTransactionId).
|
|
903
|
-
*/
|
|
904
|
-
function fingerprintContent(rawHeaders, dataRows) {
|
|
905
|
-
return createHash("sha1")
|
|
906
|
-
.update(JSON.stringify({ headers: rawHeaders, rows: dataRows }))
|
|
907
|
-
.digest("hex");
|
|
908
|
-
}
|
|
909
|
-
/**
|
|
910
|
-
* Derive a stable, resumable transaction id from the absolute import file path
|
|
911
|
-
* AND a fingerprint of the exact rows being imported:
|
|
912
|
-
* `csv-import-<sha1(absPath + separator + contentFingerprint)>` (12 hex chars).
|
|
913
|
-
*
|
|
914
|
-
* The content fingerprint is essential. Resume matching keys on `rowIndex`, so
|
|
915
|
-
* an id derived from the path ALONE would let a later import of *different*
|
|
916
|
-
* content at the same path reuse the old `csv-txrow:#<n>` markers — `inspect()`
|
|
917
|
-
* would treat the new rows as already applied and silently skip them, reporting
|
|
918
|
-
* a successful import that changed nothing. Folding the content into the id
|
|
919
|
-
* means: the SAME file re-run after a crash keeps the same id (resumes from the
|
|
920
|
-
* journal, no duplicates), while editing the file in place yields a NEW id (a
|
|
921
|
-
* fresh import that applies the new contents) — never a stale skip.
|
|
922
|
-
*/
|
|
923
|
-
function deriveTransactionId(absoluteFilePath, contentFingerprint) {
|
|
924
|
-
const hash = createHash("sha1")
|
|
925
|
-
.update(absoluteFilePath)
|
|
926
|
-
.update("\x1f") // unit-separator between path and content
|
|
927
|
-
.update(contentFingerprint)
|
|
928
|
-
.digest("hex")
|
|
929
|
-
.slice(0, 12);
|
|
930
|
-
return `csv-import-${hash}`;
|
|
931
|
-
}
|
|
932
|
-
/**
|
|
933
|
-
* Public helper: the atomic transaction id that `pm csv import <file> --atomic`
|
|
934
|
-
* derives for the given file and options (reads and parses the file exactly as
|
|
935
|
-
* the importer does). Exposed so callers/tests can correlate items to their
|
|
936
|
-
* originating atomic import without re-implementing the derivation.
|
|
937
|
-
*/
|
|
938
|
-
export function atomicTransactionId(filePath, opts = {}) {
|
|
939
|
-
const { headers: rawHeaders, dataRows } = readCSVFile(filePath, resolveDelimiter(opts.delimiter), opts.encoding ?? "utf-8", opts.skipHeaders ?? false);
|
|
940
|
-
return deriveTransactionId(resolve(filePath), fingerprintContent(rawHeaders, dataRows));
|
|
941
|
-
}
|
|
942
|
-
/**
|
|
943
|
-
* Load every item stamped with this transaction's per-row ownership marker
|
|
944
|
-
* (`csv-txrow:<transactionId>#<rowIndex>`) and build a single lookup the step
|
|
945
|
-
* `inspect()` uses to detect rows already applied by a prior (interrupted) run:
|
|
946
|
-
* - byRowIndex: rowIndex -> item id
|
|
947
|
-
*
|
|
948
|
-
* The per-row marker is the source of truth for resume/compensation: it makes
|
|
949
|
-
* matching per-row-precise, so a CSV with duplicate titles or duplicate keys
|
|
950
|
-
* can never trick inspect() into skipping the wrong row. The batch-level
|
|
951
|
-
* `csv-tx:<transactionId>` marker is also stamped (handy for scanning) but is
|
|
952
|
-
* NOT used for matching. Only items carrying a per-row marker for THIS
|
|
953
|
-
* transaction are included, so pre-existing items this transaction never
|
|
954
|
-
* touched are never mistaken for already-applied steps.
|
|
955
|
-
*
|
|
956
|
-
* Presence of the row marker — NOT item status — is the applied signal. A row
|
|
957
|
-
* whose CSV `status` is `closed`/`canceled` is legitimately imported as a
|
|
958
|
-
* closed item (upsertCreate/upsertUpdate pass the row's status), so it must
|
|
959
|
-
* still be recognized on resume and never re-imported. Conversely a rolled-back
|
|
960
|
-
* create must NOT be recognized: `compensateCreate()` therefore STRIPS the
|
|
961
|
-
* `csv-tx`/`csv-txrow` markers before closing the item, so a compensated
|
|
962
|
-
* tombstone carries no marker and a post-rollback retry re-imports its row.
|
|
963
|
-
* (This is why matching by marker-presence is correct for both a
|
|
964
|
-
* legitimately-closed applied row and a rolled-back one; see compensateCreate.)
|
|
965
|
-
*/
|
|
966
|
-
function loadAppliedByTransaction(pmRoot, transactionId) {
|
|
967
|
-
const byRowIndex = new Map();
|
|
968
|
-
const rowMarkerPrefix = `${TX_ROW_TAG_PREFIX}${transactionId}${TX_ROW_TAG_SEPARATOR}`;
|
|
969
|
-
const r = spawnSync("pm", ["--path", pmRoot, "list-all", "--json"], {
|
|
970
|
-
encoding: "utf-8",
|
|
971
|
-
maxBuffer: PM_LIST_MAX_BUFFER,
|
|
972
|
-
});
|
|
973
|
-
if (r.error || r.status !== 0)
|
|
974
|
-
return { byRowIndex };
|
|
975
|
-
let items = [];
|
|
976
|
-
try {
|
|
977
|
-
items = JSON.parse(r.stdout).items ?? [];
|
|
978
|
-
}
|
|
979
|
-
catch {
|
|
980
|
-
return { byRowIndex };
|
|
981
|
-
}
|
|
982
|
-
for (const item of items) {
|
|
983
|
-
for (const tag of item.tags ?? []) {
|
|
984
|
-
if (!tag.startsWith(rowMarkerPrefix))
|
|
985
|
-
continue;
|
|
986
|
-
const rowIndexStr = tag.slice(rowMarkerPrefix.length);
|
|
987
|
-
const rowIndex = Number.parseInt(rowIndexStr, 10);
|
|
988
|
-
if (Number.isInteger(rowIndex))
|
|
989
|
-
byRowIndex.set(rowIndex, item.id);
|
|
990
|
-
}
|
|
991
|
-
}
|
|
992
|
-
return { byRowIndex };
|
|
993
|
-
}
|
|
994
|
-
/**
|
|
995
|
-
* Return the current status of an item id, or `undefined` when the item no
|
|
996
|
-
* longer exists. Used by the compensation guard so `pm close` is only invoked
|
|
997
|
-
* on items that still exist and are not already closed (closing a closed item
|
|
998
|
-
* is a pm error).
|
|
999
|
-
*/
|
|
1000
|
-
function itemStatus(pmRoot, id) {
|
|
1001
|
-
const r = spawnSync("pm", ["--path", pmRoot, "get", id, "--json"], { encoding: "utf-8" });
|
|
1002
|
-
if (r.status !== 0)
|
|
1003
|
-
return undefined;
|
|
1004
|
-
try {
|
|
1005
|
-
const parsed = JSON.parse(r.stdout);
|
|
1006
|
-
return (parsed.item?.status ?? parsed.status);
|
|
1007
|
-
}
|
|
1008
|
-
catch {
|
|
1009
|
-
return undefined;
|
|
1010
|
-
}
|
|
1011
|
-
}
|
|
1012
|
-
/**
|
|
1013
|
-
* Idempotently undo one row's create. First STRIPS this transaction's ownership
|
|
1014
|
-
* markers (`markers`) from the item, then closes it via `pm close` (NOT delete,
|
|
1015
|
-
* to avoid the known history-resurrection issue) when it is still open.
|
|
1016
|
-
*
|
|
1017
|
-
* Stripping the markers is what makes marker-presence a correct "applied"
|
|
1018
|
-
* signal: a rolled-back row no longer carries a marker, so a post-rollback
|
|
1019
|
-
* retry re-imports it, while a *successfully* imported row (even one whose CSV
|
|
1020
|
-
* status is `closed`/`canceled`) keeps its marker and is resumed idempotently.
|
|
1021
|
-
* The strip runs whether the item is open or already closed (a closed-status
|
|
1022
|
-
* create being rolled back must also lose its marker); the close only runs for
|
|
1023
|
-
* a still-open item. Every step tolerates a missing item / absent tag, so a
|
|
1024
|
-
* repeated compensation (e.g. after a crash mid-compensation) is a safe no-op.
|
|
1025
|
-
*/
|
|
1026
|
-
function compensateCreate(pmRoot, id, markers = []) {
|
|
1027
|
-
const status = itemStatus(pmRoot, id);
|
|
1028
|
-
if (status === undefined)
|
|
1029
|
-
return; // item no longer exists
|
|
1030
|
-
if (markers.length > 0) {
|
|
1031
|
-
// Best-effort: remove the tx markers so this row is no longer "applied".
|
|
1032
|
-
spawnSync("pm", ["--path", pmRoot, "update", id, "--remove-tags", markers.join(",")], { encoding: "utf-8" });
|
|
1033
|
-
}
|
|
1034
|
-
if (status === "closed")
|
|
1035
|
-
return; // terminal already; markers stripped above
|
|
1036
|
-
const r = spawnSync("pm", ["--path", pmRoot, "close", id, "--reason", "atomic csv import rolled back"], { encoding: "utf-8" });
|
|
1037
|
-
if (r.status !== 0 && r.status !== 4) {
|
|
1038
|
-
// Exit 4 is "already closed" / invalid state — treat as already compensated.
|
|
1039
|
-
console.error(`atomic import: compensation close failed for ${id}: ${r.stderr?.trim() || r.stdout?.trim()}`);
|
|
1040
|
-
}
|
|
1041
|
-
}
|
|
1042
|
-
/**
|
|
1043
|
-
* Atomic in-memory import: every row that would CREATE an item becomes one
|
|
1044
|
-
* {@link WorkspaceTransactionStep} committed under a single workspace
|
|
1045
|
-
* writer-locked, crash-recoverable transaction. On success the same
|
|
1046
|
-
* {@link ImportResult} as the non-atomic path is returned (counts derived from
|
|
1047
|
-
* the committed step results). On failure every applied create is compensated
|
|
1048
|
-
* (closed) so no committed items remain, and a clear error is thrown. An
|
|
1049
|
-
* interrupted run resumes from the durable journal (inspect() skips already
|
|
1050
|
-
* applied rows).
|
|
1051
|
-
*/
|
|
1052
|
-
async function importCSVAtomic(pmRoot, filePath, opts) {
|
|
1053
|
-
const { headers: rawHeaders, dataRows } = readCSVFile(filePath, opts.delimiter, opts.encoding ?? "utf-8", opts.skipHeaders ?? false);
|
|
1054
|
-
const result = {
|
|
1055
|
-
imported: 0,
|
|
1056
|
-
updated: 0,
|
|
1057
|
-
skipped: 0,
|
|
1058
|
-
filtered: 0,
|
|
1059
|
-
autoMappings: [],
|
|
1060
|
-
errors: [],
|
|
1061
|
-
previews: [],
|
|
1062
|
-
fieldMapWarnings: [],
|
|
1063
|
-
};
|
|
1064
|
-
if (rawHeaders.length === 0)
|
|
1065
|
-
return result;
|
|
1066
|
-
result.fieldMapWarnings = computeFieldMapWarnings(rawHeaders, opts.fieldMap);
|
|
1067
|
-
const mapResolution = resolveImportFieldMap(rawHeaders, opts.fieldMap, opts.autoMap ?? false);
|
|
1068
|
-
const headers = applyFieldMap(rawHeaders, mapResolution.fieldMap);
|
|
1069
|
-
result.autoMappings = mapResolution.autoMappings;
|
|
1070
|
-
assertImportHeaders(headers, opts);
|
|
1071
|
-
// A dry-run atomic import just previews like the non-atomic path (no
|
|
1072
|
-
// transaction is committed, nothing is written).
|
|
1073
|
-
if (opts.dryRun) {
|
|
1074
|
-
const keyIndex = new Map();
|
|
1075
|
-
for (let rowIndex = 0; rowIndex < dataRows.length; rowIndex++) {
|
|
1076
|
-
const lineNo = opts.skipHeaders ? rowIndex + 1 : rowIndex + 2;
|
|
1077
|
-
processImportRow(pmRoot, headers, dataRows[rowIndex], lineNo, opts, keyIndex, result);
|
|
1078
|
-
}
|
|
1079
|
-
return result;
|
|
1080
|
-
}
|
|
1081
|
-
// Fingerprint the exact parsed content (raw headers + all data rows) so that
|
|
1082
|
-
// editing the file in place yields a fresh transaction id instead of reusing
|
|
1083
|
-
// stale per-row markers from a previous import of different content.
|
|
1084
|
-
const transactionId = deriveTransactionId(resolve(filePath), fingerprintContent(rawHeaders, dataRows));
|
|
1085
|
-
const author = opts.atomicAuthor ?? "pm-csv";
|
|
1086
|
-
const ownershipTag = `${TX_TAG_PREFIX}${transactionId}`;
|
|
1087
|
-
// Per-row ownership marker source of truth: `csv-txrow:<transactionId>#<rowIndex>`.
|
|
1088
|
-
const rowTagFor = (rowIndex) => `${TX_ROW_TAG_PREFIX}${transactionId}${TX_ROW_TAG_SEPARATOR}${rowIndex}`;
|
|
1089
|
-
// Detect rows a prior interrupted run already applied (resumability) plus
|
|
1090
|
-
// the dedup index for --key upsert decisions, both from one fresh scan.
|
|
1091
|
-
const applied = loadAppliedByTransaction(pmRoot, transactionId);
|
|
1092
|
-
const keyIndex = opts.keyField ? loadKeyIndex(pmRoot) : new Map();
|
|
1093
|
-
// In-batch duplicate-KEY guard: keys already claimed by an earlier planned
|
|
1094
|
-
// CREATE in THIS run (the keyIndex is not updated during planning, so
|
|
1095
|
-
// without this guard two rows sharing a not-yet-existing key would both
|
|
1096
|
-
// plan as create and produce duplicate items). A later row repeating a
|
|
1097
|
-
// claimed key is skipped with a clear per-row warning (see README).
|
|
1098
|
-
const claimedKeys = new Map();
|
|
1099
|
-
const planned = [];
|
|
1100
|
-
for (let rowIndex = 0; rowIndex < dataRows.length; rowIndex++) {
|
|
1101
|
-
const lineNo = opts.skipHeaders ? rowIndex + 1 : rowIndex + 2;
|
|
1102
|
-
const row = dataRows[rowIndex];
|
|
1103
|
-
// Compute the field accessor once and reuse for both `parsed` and the
|
|
1104
|
-
// --key value (previously rowFields() was called twice per row).
|
|
1105
|
-
const { get, parsed } = rowFields(headers, row);
|
|
1106
|
-
if (!parsed.title) {
|
|
1107
|
-
console.error(`Row ${lineNo}: skipping — 'title' is empty`);
|
|
1108
|
-
result.skipped++;
|
|
1109
|
-
continue;
|
|
1110
|
-
}
|
|
1111
|
-
if (!rowMatchesFilter(parsed, opts.filter)) {
|
|
1112
|
-
result.skipped++;
|
|
1113
|
-
result.filtered++;
|
|
1114
|
-
continue;
|
|
1115
|
-
}
|
|
1116
|
-
const keyValue = opts.keyField ? (get(opts.keyField) ?? "") : "";
|
|
1117
|
-
const normalizedKey = keyValue ? normalizeKeyValue(keyValue) : "";
|
|
1118
|
-
// In-batch duplicate-key guard: an earlier planned CREATE in this run
|
|
1119
|
-
// already claimed this key. The first item does not exist yet at apply
|
|
1120
|
-
// time, so rather than fold a dependent update (the transaction primitive
|
|
1121
|
-
// treats steps as independent) we skip the duplicate with a clear warning.
|
|
1122
|
-
if (normalizedKey && claimedKeys.has(normalizedKey)) {
|
|
1123
|
-
const firstRow = claimedKeys.get(normalizedKey);
|
|
1124
|
-
console.error(`Row ${lineNo}: skipping — key '${keyValue}' duplicates row ${opts.skipHeaders ? firstRow + 1 : firstRow + 2} which is already planned as a create in this --atomic import`);
|
|
1125
|
-
result.skipped++;
|
|
1126
|
-
continue;
|
|
1127
|
-
}
|
|
1128
|
-
const existingId = normalizedKey ? keyIndex.get(normalizedKey) : undefined;
|
|
1129
|
-
if (normalizedKey && !existingId)
|
|
1130
|
-
claimedKeys.set(normalizedKey, rowIndex);
|
|
1131
|
-
planned.push({ rowIndex, lineNo, parsed, keyValue, existingId, isUpdate: Boolean(existingId) });
|
|
1132
|
-
}
|
|
1133
|
-
// Build one transaction step per row to be written (create or update).
|
|
1134
|
-
// - create: apply() shells out to the same `pm create` as the non-atomic
|
|
1135
|
-
// path (parity) plus the csv-tx batch marker AND the per-row marker;
|
|
1136
|
-
// compensate() closes the created id.
|
|
1137
|
-
// - update (--key match): apply() updates the pre-existing item and stamps
|
|
1138
|
-
// both markers; compensate() is a no-op (an arbitrary update cannot be
|
|
1139
|
-
// safely reverted without capturing prior state, and the spec scopes
|
|
1140
|
-
// all-or-nothing compensation to creates).
|
|
1141
|
-
//
|
|
1142
|
-
// Resume/compensation matching is per-row-precise via the per-row marker
|
|
1143
|
-
// (csv-txrow:<transactionId>#<rowIndex>), so duplicate titles or duplicate
|
|
1144
|
-
// keys in the CSV cannot trick inspect() into skipping the wrong row or
|
|
1145
|
-
// compensate() into closing the wrong item. Each step keeps a closure-local
|
|
1146
|
-
// `appliedId` set by apply() so the coordinator's compensation pass (which
|
|
1147
|
-
// re-runs inspect() to decide whether a step needs compensating) sees
|
|
1148
|
-
// `state: "applied"` for items created during THIS run — not just for items
|
|
1149
|
-
// left over from a prior interrupted run (which the pre-run `applied` lookup
|
|
1150
|
-
// already detects).
|
|
1151
|
-
const steps = planned.map((row) => {
|
|
1152
|
-
const stepId = `csv-import-row-${row.rowIndex}`;
|
|
1153
|
-
const rowTag = rowTagFor(row.rowIndex);
|
|
1154
|
-
// Set by apply() in this run; undefined before that or on a fresh resume.
|
|
1155
|
-
let appliedId;
|
|
1156
|
-
const inspect = async () => {
|
|
1157
|
-
// A step applied earlier in THIS run (apply() captured the id).
|
|
1158
|
-
if (appliedId)
|
|
1159
|
-
return { state: "applied", result: appliedId };
|
|
1160
|
-
// A prior interrupted run already applied this row: an item carries this
|
|
1161
|
-
// transaction's per-row marker for THIS rowIndex. Per-row-precise, so
|
|
1162
|
-
// duplicate titles/keys cannot match the wrong row.
|
|
1163
|
-
const id = applied.byRowIndex.get(row.rowIndex);
|
|
1164
|
-
if (id)
|
|
1165
|
-
return { state: "applied", result: id };
|
|
1166
|
-
return { state: "pending" };
|
|
1167
|
-
};
|
|
1168
|
-
const apply = async () => {
|
|
1169
|
-
const ownershipTags = [ownershipTag, rowTag];
|
|
1170
|
-
if (row.isUpdate) {
|
|
1171
|
-
upsertUpdate(pmRoot, row.existingId, row.parsed, opts.source, ownershipTags);
|
|
1172
|
-
appliedId = row.existingId;
|
|
1173
|
-
return row.existingId;
|
|
1174
|
-
}
|
|
1175
|
-
const newId = upsertCreate(pmRoot, row.parsed, opts.keyField ? row.keyValue : undefined, opts.source, ownershipTags);
|
|
1176
|
-
if (!newId)
|
|
1177
|
-
throw new Error(`pm create returned no id for row ${row.lineNo}`);
|
|
1178
|
-
appliedId = newId;
|
|
1179
|
-
return newId;
|
|
1180
|
-
};
|
|
1181
|
-
const prepareCompensation = async () => undefined;
|
|
1182
|
-
const compensate = async () => {
|
|
1183
|
-
// Only creates are compensated (closed); updates to pre-existing items
|
|
1184
|
-
// are intentionally left in place (documented limitation).
|
|
1185
|
-
if (row.isUpdate)
|
|
1186
|
-
return;
|
|
1187
|
-
// Prefer the id captured by apply() in this run; fall back to the
|
|
1188
|
-
// pre-run per-row lookup (resume-compensation of a prior run's applied step).
|
|
1189
|
-
const id = appliedId ?? applied.byRowIndex.get(row.rowIndex);
|
|
1190
|
-
// Strip both markers so the rolled-back row is no longer recognized as
|
|
1191
|
-
// applied on a retry (marker-presence — not status — is the applied signal).
|
|
1192
|
-
if (typeof id === "string" && id)
|
|
1193
|
-
compensateCreate(pmRoot, id, [rowTag, ownershipTag]);
|
|
1194
|
-
};
|
|
1195
|
-
return { id: stepId, inspect, apply, prepareCompensation, compensate };
|
|
1196
|
-
});
|
|
1197
|
-
const commitTransaction = opts.commitTransaction ??
|
|
1198
|
-
(await resolveCommitWorkspaceTransaction(pmRoot));
|
|
1199
|
-
let committed;
|
|
1200
|
-
try {
|
|
1201
|
-
committed = await commitTransaction({ transactionId, author, steps });
|
|
1202
|
-
}
|
|
1203
|
-
catch (err) {
|
|
1204
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
1205
|
-
// Every applied create has been compensated by the coordinator; no
|
|
1206
|
-
// committed items from this import remain in the tracker.
|
|
1207
|
-
throw new CommandError(`Atomic CSV import failed and was rolled back — every applied create was compensated (closed); the tracker has no committed items from this import. Transaction id: ${transactionId}. Underlying error: ${msg}`, EXIT_CODE.GENERIC_FAILURE);
|
|
1208
|
-
}
|
|
1209
|
-
// Tally the ImportResult from the committed step results. Each committed
|
|
1210
|
-
// result is the created/updated item id. Only rows that were NOT already
|
|
1211
|
-
// applied at the start of this run (i.e. newly committed by this attempt)
|
|
1212
|
-
// count toward imported/updated — resumed rows from a prior interrupted run
|
|
1213
|
-
// are already in the tracker and must not be double-counted.
|
|
1214
|
-
for (const row of planned) {
|
|
1215
|
-
const stepId = `csv-import-row-${row.rowIndex}`;
|
|
1216
|
-
const res = committed.results[stepId];
|
|
1217
|
-
if (res === undefined)
|
|
1218
|
-
continue;
|
|
1219
|
-
const alreadyApplied = applied.byRowIndex.has(row.rowIndex);
|
|
1220
|
-
if (alreadyApplied)
|
|
1221
|
-
continue;
|
|
1222
|
-
if (row.isUpdate)
|
|
1223
|
-
result.updated++;
|
|
1224
|
-
else
|
|
1225
|
-
result.imported++;
|
|
1226
|
-
}
|
|
1227
|
-
return result;
|
|
1228
|
-
}
|
|
1229
|
-
/**
|
|
1230
|
-
* Cached SDK commit coordinator. Resolved once per process via a dynamic
|
|
1231
|
-
* `import("@unbrained/pm-cli/sdk")` so repeated --atomic calls don't re-import.
|
|
1232
|
-
* `null` means a previous attempt failed and the failure is not retried within
|
|
1233
|
-
* this process (each CLI invocation is a fresh process, so this is safe).
|
|
1234
|
-
*/
|
|
1235
|
-
let cachedCommitWorkspaceTransaction;
|
|
1236
|
-
/**
|
|
1237
|
-
* Dynamically resolve the SDK commit coordinator bound to a tracker root, for
|
|
1238
|
-
* the importer path (which has no host-injected `ctx.sdk`). Falls back to a
|
|
1239
|
-
* dynamic `import("@unbrained/pm-cli/sdk")` so a standalone-installed extension
|
|
1240
|
-
* still works when the SDK package is resolvable. The resolved function is
|
|
1241
|
-
* cached at module scope so repeated --atomic calls don't re-import. If the
|
|
1242
|
-
* import fails or `commitWorkspaceTransaction` is not exported, a clear,
|
|
1243
|
-
* actionable CommandError is thrown.
|
|
1244
|
-
*/
|
|
1245
|
-
async function resolveCommitWorkspaceTransaction(pmRoot) {
|
|
1246
|
-
if (cachedCommitWorkspaceTransaction === null) {
|
|
1247
|
-
throw new CommandError("--atomic requires @unbrained/pm-cli>=2026.7.19 with the commitWorkspaceTransaction SDK primitive, but it could not be resolved (a prior attempt in this process failed). Ensure @unbrained/pm-cli is installed and up to date.", EXIT_CODE.USAGE);
|
|
1248
|
-
}
|
|
1249
|
-
if (cachedCommitWorkspaceTransaction) {
|
|
1250
|
-
const cached = cachedCommitWorkspaceTransaction;
|
|
1251
|
-
return (opts) => cached({ pmRoot, ...opts });
|
|
1252
|
-
}
|
|
1253
|
-
let mod;
|
|
1254
|
-
try {
|
|
1255
|
-
mod = await import("@unbrained/pm-cli/sdk");
|
|
1256
|
-
}
|
|
1257
|
-
catch (err) {
|
|
1258
|
-
cachedCommitWorkspaceTransaction = null;
|
|
1259
|
-
const msg = err instanceof Error ? err.message : String(err);
|
|
1260
|
-
throw new CommandError(`--atomic requires @unbrained/pm-cli>=2026.7.19 with the commitWorkspaceTransaction SDK primitive, but the SDK could not be imported: ${msg}. Install or upgrade @unbrained/pm-cli.`, EXIT_CODE.USAGE);
|
|
1261
|
-
}
|
|
1262
|
-
const commit = mod.commitWorkspaceTransaction;
|
|
1263
|
-
if (typeof commit !== "function") {
|
|
1264
|
-
cachedCommitWorkspaceTransaction = null;
|
|
1265
|
-
throw new CommandError("--atomic requires @unbrained/pm-cli>=2026.7.19 with the commitWorkspaceTransaction SDK primitive, but the installed SDK does not export it as a function. Upgrade @unbrained/pm-cli to >=2026.7.19.", EXIT_CODE.USAGE);
|
|
1266
|
-
}
|
|
1267
|
-
cachedCommitWorkspaceTransaction = commit;
|
|
1268
|
-
return (opts) => commit({ pmRoot, ...opts });
|
|
1269
|
-
}
|
|
1270
877
|
/**
|
|
1271
878
|
* Streaming import: reads the file via a readable stream so large CSV files
|
|
1272
879
|
* are never fully loaded into memory. The header row (or positional
|
|
@@ -1341,7 +948,7 @@ function appendRelationalArgs(args, p) {
|
|
|
1341
948
|
args.push("--blocked-by", p.blocked_by);
|
|
1342
949
|
}
|
|
1343
950
|
/** Create a new item, optionally carrying a csv-key provenance tag. Returns the new id. */
|
|
1344
|
-
function upsertCreate(pmRoot, p, keyValue, source
|
|
951
|
+
function upsertCreate(pmRoot, p, keyValue, source) {
|
|
1345
952
|
const tags = [...p.tags];
|
|
1346
953
|
// Encode the lower-cased key so the stored tag matches the lookup index
|
|
1347
954
|
// regardless of pm's tag case-folding (see normalizeKeyValue).
|
|
@@ -1351,10 +958,6 @@ function upsertCreate(pmRoot, p, keyValue, source, extraTags) {
|
|
|
1351
958
|
// since the CLI exposes no scalar setter for extension-registered fields.
|
|
1352
959
|
if (source)
|
|
1353
960
|
tags.push(`${SOURCE_TAG_PREFIX}${encodeKeyTagValue(source)}`);
|
|
1354
|
-
// Atomic-import ownership marker (csv-tx:<transactionId>) stamped on every
|
|
1355
|
-
// item created inside a transaction so inspect()/compensate() can find it.
|
|
1356
|
-
if (extraTags && extraTags.length > 0)
|
|
1357
|
-
tags.push(...extraTags);
|
|
1358
961
|
const args = ["--path", pmRoot, "create", "--title", p.title, "--status", p.status, "--json"];
|
|
1359
962
|
if (p.body)
|
|
1360
963
|
args.push("--body", p.body);
|
|
@@ -1379,7 +982,7 @@ function upsertCreate(pmRoot, p, keyValue, source, extraTags) {
|
|
|
1379
982
|
}
|
|
1380
983
|
}
|
|
1381
984
|
/** Update an existing item in place (status via update; close handled separately). */
|
|
1382
|
-
function upsertUpdate(pmRoot, id, p, source
|
|
985
|
+
function upsertUpdate(pmRoot, id, p, source) {
|
|
1383
986
|
const args = ["--path", pmRoot, "update", id, "--title", p.title];
|
|
1384
987
|
if (p.body !== undefined)
|
|
1385
988
|
args.push("--body", p.body);
|
|
@@ -1394,8 +997,6 @@ function upsertUpdate(pmRoot, id, p, source, extraTags) {
|
|
|
1394
997
|
const addTags = [...p.tags];
|
|
1395
998
|
if (source)
|
|
1396
999
|
addTags.push(`${SOURCE_TAG_PREFIX}${encodeKeyTagValue(source)}`);
|
|
1397
|
-
if (extraTags && extraTags.length > 0)
|
|
1398
|
-
addTags.push(...extraTags);
|
|
1399
1000
|
if (addTags.length > 0)
|
|
1400
1001
|
args.push("--add-tags", addTags.join(","));
|
|
1401
1002
|
// `update` cannot set a closed status; only set non-closed statuses here.
|
|
@@ -1669,9 +1270,7 @@ function buildCsvExport(pmRoot, opts) {
|
|
|
1669
1270
|
// export stays clean.
|
|
1670
1271
|
const visible = val.filter((t) => typeof t === "string" &&
|
|
1671
1272
|
!t.startsWith(KEY_TAG_PREFIX) &&
|
|
1672
|
-
!t.startsWith(SOURCE_TAG_PREFIX)
|
|
1673
|
-
!t.startsWith(TX_TAG_PREFIX) &&
|
|
1674
|
-
!t.startsWith(TX_ROW_TAG_PREFIX));
|
|
1273
|
+
!t.startsWith(SOURCE_TAG_PREFIX));
|
|
1675
1274
|
return stringifyTags(visible);
|
|
1676
1275
|
}
|
|
1677
1276
|
return String(val);
|
|
@@ -1690,7 +1289,7 @@ function buildCsvExport(pmRoot, opts) {
|
|
|
1690
1289
|
}
|
|
1691
1290
|
export default defineExtension({
|
|
1692
1291
|
name: "pm-csv",
|
|
1693
|
-
version: "2026.7.19
|
|
1292
|
+
version: "2026.7.19",
|
|
1694
1293
|
activate(api) {
|
|
1695
1294
|
// -----------------------------------------------------------------------
|
|
1696
1295
|
// Schema: register an optional `csv_source` provenance field so imported
|
|
@@ -1745,7 +1344,6 @@ export default defineExtension({
|
|
|
1745
1344
|
"pm csv import items.csv --dry-run",
|
|
1746
1345
|
"pm csv import headerless.csv --skip-headers # no header row, positional columns",
|
|
1747
1346
|
"pm csv import big.csv --stream # stream large files without loading into memory",
|
|
1748
|
-
"pm csv import tasks.csv --atomic # all-or-nothing import (pm-cli >= 2026.7.19)",
|
|
1749
1347
|
],
|
|
1750
1348
|
flags: [
|
|
1751
1349
|
{ long: "--delimiter", value_name: "char", description: "Field delimiter, or alias tab|comma|semicolon|pipe (default: ,)" },
|
|
@@ -1761,7 +1359,6 @@ export default defineExtension({
|
|
|
1761
1359
|
{ long: "--dry-run", description: "Preview without writing" },
|
|
1762
1360
|
{ long: "--skip-headers", description: "The CSV file has no header row; map columns positionally to the standard import order (title, type, status, priority, tags, deadline, body, parent, assignee, sprint, release, blocked_by)" },
|
|
1763
1361
|
{ long: "--stream", description: "Stream the file row-by-row instead of loading it fully into memory (recommended for large CSV files)" },
|
|
1764
|
-
{ long: "--atomic", description: "Import all creates atomically under one workspace writer-locked, crash-recoverable transaction (pm-cli >= 2026.7.19). On failure every applied create is compensated (closed); interrupted runs resume. Incompatible with --stream" },
|
|
1765
1362
|
],
|
|
1766
1363
|
async run(ctx) {
|
|
1767
1364
|
const filePath = ctx.args[0];
|
|
@@ -1778,33 +1375,14 @@ export default defineExtension({
|
|
|
1778
1375
|
const strict = readBoolOption(ctx.options, "strict");
|
|
1779
1376
|
const skipHeaders = readBoolOption(ctx.options, "skip-headers", "skipHeaders");
|
|
1780
1377
|
const stream = readBoolOption(ctx.options, "stream");
|
|
1781
|
-
const atomic = readBoolOption(ctx.options, "atomic");
|
|
1782
1378
|
const filter = parseImportFilter(ctx.options["status"], ctx.options["type"], ctx.options["priority"]);
|
|
1783
1379
|
const absolutePath = resolve(filePath);
|
|
1784
|
-
console.error(`Reading CSV from: ${absolutePath}${stream ? " (streaming)" : ""}
|
|
1380
|
+
console.error(`Reading CSV from: ${absolutePath}${stream ? " (streaming)" : ""}`);
|
|
1785
1381
|
let res;
|
|
1786
1382
|
try {
|
|
1787
1383
|
if (strict)
|
|
1788
1384
|
assertStrictImportReady(absolutePath, { delimiter, fieldMap, encoding, autoMap, skipHeaders });
|
|
1789
|
-
res = await importCSV(ctx.pm_root, absolutePath, {
|
|
1790
|
-
delimiter,
|
|
1791
|
-
dryRun,
|
|
1792
|
-
fieldMap,
|
|
1793
|
-
autoMap,
|
|
1794
|
-
keyField,
|
|
1795
|
-
encoding,
|
|
1796
|
-
source,
|
|
1797
|
-
filter,
|
|
1798
|
-
skipHeaders,
|
|
1799
|
-
stream,
|
|
1800
|
-
atomic,
|
|
1801
|
-
// Prefer the host-injected SDK coordinator (bound to the
|
|
1802
|
-
// tracker root) so a standalone-installed extension never relies
|
|
1803
|
-
// on package resolution; the atomic path falls back to a dynamic
|
|
1804
|
-
// import when ctx.sdk is absent.
|
|
1805
|
-
commitTransaction: ctx.sdk?.commitWorkspaceTransaction,
|
|
1806
|
-
atomicAuthor: ctx.global?.author ?? undefined,
|
|
1807
|
-
});
|
|
1385
|
+
res = await importCSV(ctx.pm_root, absolutePath, { delimiter, dryRun, fieldMap, autoMap, keyField, encoding, source, filter, skipHeaders, stream });
|
|
1808
1386
|
}
|
|
1809
1387
|
catch (err) {
|
|
1810
1388
|
if (err instanceof CommandError)
|
|
@@ -2036,28 +1614,14 @@ export default defineExtension({
|
|
|
2036
1614
|
const strict = readBoolOption(ctx.options, "strict");
|
|
2037
1615
|
const skipHeaders = readBoolOption(ctx.options, "skip-headers", "skipHeaders");
|
|
2038
1616
|
const stream = readBoolOption(ctx.options, "stream");
|
|
2039
|
-
const atomic = readBoolOption(ctx.options, "atomic");
|
|
2040
1617
|
const filter = parseImportFilter(ctx.options["status"], ctx.options["type"], ctx.options["priority"]);
|
|
2041
1618
|
const absolutePath = resolve(filePath);
|
|
2042
|
-
console.error(`csv-import: reading ${absolutePath}${stream ? " (streaming)" : ""}
|
|
1619
|
+
console.error(`csv-import: reading ${absolutePath}${stream ? " (streaming)" : ""}`);
|
|
2043
1620
|
let res;
|
|
2044
1621
|
try {
|
|
2045
1622
|
if (strict)
|
|
2046
1623
|
assertStrictImportReady(absolutePath, { delimiter, fieldMap, encoding, autoMap, skipHeaders });
|
|
2047
|
-
res = await importCSV(ctx.pm_root, absolutePath, {
|
|
2048
|
-
delimiter,
|
|
2049
|
-
dryRun: false,
|
|
2050
|
-
fieldMap,
|
|
2051
|
-
autoMap,
|
|
2052
|
-
keyField,
|
|
2053
|
-
encoding,
|
|
2054
|
-
source,
|
|
2055
|
-
filter,
|
|
2056
|
-
skipHeaders,
|
|
2057
|
-
stream,
|
|
2058
|
-
atomic,
|
|
2059
|
-
atomicAuthor: ctx.global?.author ?? undefined,
|
|
2060
|
-
});
|
|
1624
|
+
res = await importCSV(ctx.pm_root, absolutePath, { delimiter, dryRun: false, fieldMap, autoMap, keyField, encoding, source, filter, skipHeaders, stream });
|
|
2061
1625
|
}
|
|
2062
1626
|
catch (err) {
|
|
2063
1627
|
const msg = err instanceof Error ? err.message : String(err);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/manifest.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pm-csv",
|
|
3
|
-
"version": "2026.7.19
|
|
3
|
+
"version": "2026.7.19",
|
|
4
4
|
"description": "CSV importer and exporter for pm-cli",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -36,11 +36,11 @@
|
|
|
36
36
|
"release:notes": "pm-changelog --pm-root .agents/pm --stdout --since-previous-tag --until-release-tag --release-version-from-package --item-url-base https://github.com/unbraind/pm-csv/blob/main/.agents/pm --pm-bin ./node_modules/.bin/pm --github-step-summary"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
|
-
"@unbrained/pm-cli": ">=2026.7.
|
|
39
|
+
"@unbrained/pm-cli": ">=2026.7.10"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/node": "^26.1.1",
|
|
43
|
-
"@unbrained/pm-cli": "^2026.7.
|
|
43
|
+
"@unbrained/pm-cli": "^2026.7.10",
|
|
44
44
|
"pm-changelog": "^2026.7.10",
|
|
45
45
|
"typescript": "^7.0.2"
|
|
46
46
|
},
|