Skip to content

Releases: forcedotcom/SFDX-Data-Move-Utility

v5.6.4

16 Apr 23:44

Choose a tag to compare

5.6.4 (2026-04-16)

Fixes:
  • Fixed upsert matching for relationship external IDs such as Account__r.Name when the source is csvfile and the target org returns the parent relationship as a nested Salesforce API object. Existing target child records are now matched and updated instead of being treated as new inserts.

See the related articles:

v5.6.3

05 Mar 15:17

Choose a tag to compare

5.6.3 (2026-03-05)

Fixes:
  • Fixed CSV null-token handling so bare N/A is preserved as a literal value while #N/A remains a null marker.
  • Fixed lookup query generation for child objects with SELECT all so nested parent relationship segments from composite external IDs are not leaked as invalid bare relationship fields.

See the related articles:

v5.6.2

25 Feb 14:31

Choose a tag to compare

5.6.2 (2026-02-25)

Fixes:
  • Fixed core:ExportFiles query parsing for polymorphic fields (for example ParentId$Account) so initialization keeps original polymorphic field names in composed queries.

See the related articles:

v5.6.1

24 Feb 17:40

Choose a tag to compare

5.6.1 (2026-02-24)

Fixes:
  • Fixed useSourceCSVFile processing for org -> org object-set runs: source CSV preparation now executes for CSV-based source tasks even when the source org is not csvfile.
  • Fixed source CSV cleanup timing so prepared object-set source files are rebuilt deterministically before copy/repair processing.
Other changes:
  • Updated Dependabot ignore rules for blocked advisories (ajv, minimatch, fast-xml-parser) to keep dependency update noise aligned with current project constraints.

See the related articles:

v5.6.0

22 Feb 01:22

Choose a tag to compare

5.6.0 (2026-02-22)

New features:
  • Added --file CLI flag to run a migration from an explicit export.json path while keeping --path as the base folder for runtime resources.
  • Added diagnostic lines that show the resolved export.json path and a dedicated note when this path differs from --path.
  • Added anonymisation support for explicit export.json path values in diagnostic logs when --anonymise is enabled.
Improvements:
  • Improved stack trace anonymisation to mask only the absolute machine-specific prefix while keeping plugin-root relative file paths visible.
Fixes:
  • Updated non-zero exit guidance text to use consistent team wording in the final diagnostic instruction line.

See the related articles:

v5.5.0

21 Feb 22:39

Choose a tag to compare

5.5.0 (2026-02-22)

New features:
  • Added skipped-update reason breakdown counters in warning output for update and upsert processing: sameData, noMatchingTarget, and other.
  • Added detailed skipped-update summary data to make investigation of update/upsert behavior faster in large runs.
Fixes:
  • Fixed missing diagnostic visibility for skipped-update split details by adding a dedicated diagnostic summary line in execution logs.

See the related articles:

v5.4.0

21 Feb 18:09

Choose a tag to compare

5.4.0 (2026-02-21)

New features:
  • Added object-level API mode controls: alwaysUseRestApi, alwaysUseBulkApi, and alwaysUseBulkApiToUpdateRecords.
  • Added respectOrderByOnDeleteRecords to enforce ordered delete execution through REST one-by-one mode.
  • Added SDK contract updates for add-on modules to expose new object-level API mode fields and related runtime metadata.
Improvements:
  • Changed query and DML bulk-threshold behavior to threshold-inclusive evaluation (>=) for clearer switching at exact threshold values.

See the related articles:

v5.3.1

20 Feb 14:37

Choose a tag to compare

5.3.1 (2026-02-20)

Fixes:
  • Fixed composite externalId handling for mixed relationship and local fields (for example Lookup__r.Name;LocalField__c), so query expansion and externalId validation resolve correctly without false mandatory externalId warnings.

See the related articles:

v5.3.0

20 Feb 09:37

Choose a tag to compare

5.3.0 (2026-02-20)

New features:
  • Added automatic default apiVersion selection when apiVersion is not explicitly provided in export.json or via --apiversion.
  • For org -> org migrations, SFDMU now uses the lower maximum API version supported by source and target orgs.
  • For org -> csvfile and csvfile -> org migrations, SFDMU now uses the maximum API version supported by the connected org.
  • Added support for the same auto-selection behavior when org credentials are provided manually with instanceUrl and accessToken.
  • Kept explicit apiVersion in export.json and --apiversion as strict overrides over auto-selection.

See the related articles:

v5.2.0

20 Feb 08:12

Choose a tag to compare

5.2.0 (2026-02-20)

New features:
  • Added --failonwarning to stop migration on the first warning and return dedicated exit code 8.
  • Added mockFields.locale so mock data generation can use locale-specific values per field.
  • Added Old Id in _target.csv reports, mapped from internal source id, for easier source-target traceability.
Fixes:
  • Fixed warning escalation flow to always write an explicit diagnostic stop reason when --failonwarning aborts execution.
  • Fixed diagnostic stack traces to mask absolute folder paths while preserving file names and line numbers.
Improvements:
  • Improved diagnostic reporting for exclusion paths with detailed per-field reasons for operation-specific DML filtering.
  • Improved Person Account diagnostics by logging exclusion reasons for invalid fields in business and person contexts.

See the related articles: