Releases: Accenture/sfmc-devtools
Releases · Accenture/sfmc-devtools
v4.0.0 - July 7, 2022
BREAKING CHANGES
- #18 instead of
retrieveAsTemplate
we now usebuildTemplate
when executingcreateDeltaPkt
- by @JoernBerkefeld in #301 - #154 Switched from FuelSDK to SFMC-SDK lib to boost performance. Therefore, numbers and booleans in retrieved files will now be auto-converted to no longer be strings. In practice
"123"
becomes123
and"true"
becomestrue
. This will impactgit diff
requests as well as any scripts you might have built around mcdev that were parsing the retrieve output - by @DougMidgley in #109 and #315 - #166 SQL formatting is now done via prettier which might lead to slight formatting changes - by @DougMidgley in #167
- #244 standard roles are now documented only optionally (default: off). Before, we always included them in the documentation This only affects the old exattarget roles as the ones prefixed with "Marketing Cloud" cannot be exported/documented due to SFMC limitations_- by @DougMidgley in #245_
- #252 format of .mcdev-auth.json changed - by @DougMidgley in #268
- #300 no more key-name swapping in retrieveAsTemplate - by @JoernBerkefeld in #301
- #308 In VSCode, metadata consisting of multiple files is now displayed aggregated, with potential Markdown files being shown first - by @JoernBerkefeld in #309
- #338 disable automatic execution of badkeys upon retrieve - by @JoernBerkefeld in #340
Features
- #17 correct
exit code
sent to CI/CD - by @JoernBerkefeld in #258 - #19 added
mcdev buildtemplate
based on rt command that uses retrieve folder and not server as source - by @JoernBerkefeld in #299 - #34 added delete support for
dataExtensionField
,emailSendDefinition
,list
,triggeredSend
- by @JoernBerkefeld in #165 - #73 added
mcdev document
support forautomation
for auditing - by @JoernBerkefeld in #305 - #80 deploy specific asset subtype (e.g.
deploy ../.. asset-block
) - by @JoernBerkefeld in #311 - #125 ensure eslint + prettier are installed with the same version in the project as in mcdev - by @JoernBerkefeld in #370
- #159 added support for
mobileKeyword
(retrieve/deploy/template) andmobileCode
(retrieve only) - by @DougMidgley in #174 - #253 speed up asset deployments by caching only relevant asset-subtypes - by @JoernBerkefeld in #311
- #281 retrieving changelog (via
mcdev.retrieve("../..", null, null, true)
) made available for all metadata types, allowing better integration of mcdev into 3rd party tools - by @JoernBerkefeld in #285 - #288 allow retrieving+deploying multiple types via CLI (e.g.
retrieve ../.. "dataExtension,query"
ordeploy ../.. "automation,script"
) - by @JoernBerkefeld in #289 - #310 add key parameter to deploy, allowing to deploy only specific items (e.g.
deploy ../.. dataExtension myDesKey
) - by @JoernBerkefeld in #311 - #321 add key parameter to retrieve, allowing to retrieve only specific items (e.g.
retrieve ../.. dataExtension myDesKey
) - by @JoernBerkefeld in #333 - #322 allow deploy from retrieve folder, granting developers a quicker way to update things on their DEV BU, (e.g.
deploy ../.. dataExtension myDesKey true
) - by @JoernBerkefeld in #339 - #341 support cloning Content Builder files (
asset
) across BUs. This was previously not possible because the external key had to be unique per instance - by @JoernBerkefeld in #345
Bugfixes
- #82 fix for running automations - by @DougMidgley in #247
- #163 removed minor bug around bad cli output when retrieving bad
fileTransfer
entries _- by @JoernBerkefeld in #165 - #187
mcdev bdb
fails to find template where name and key differ - by @JoernBerkefeld in #194 - #200 fix error on scope tests - by @JoernBerkefeld in #201
- #202 fix numeric keys not accepted - by @JoernBerkefeld in #203
- #208 asset-asset javacript error / asset-message data loss / asset-message email attributes supported - by @JoernBerkefeld in #246
- #210 Resolves issues with update of Roles - by @DougMidgley in #212
- #213 ensure docs/roles file is not overwritten during role deploy - by @JoernBerkefeld in #218
- #214 ensure that errors in preDeployTasks are handled gracefully - by @JoernBerkefeld in #220
- #215 deploy email send definition fails badly if dependent asset is missing - by @JoernBerkefeld in #224
- #216 bug econnreset not caught by sdk - by @DougMidgley in #217
- #219 inform user about field retrieve after deploy of dataExtension - by @JoernBerkefeld in #221
- #225 correcting spelling error that prevents mobileX to work on linux - by @JoernBerkefeld in #226
- #236 retrieve for more than 2500 records fails soap - by @JoernBerkefeld in #237
- #238 stop retrieve on exception - by @JoernBerkefeld in #238
- #240 document broken due to new SDKs true booleans - by @JoernBerkefeld in #241
- #242 asset-asset javacript error / asset-message data loss / asset-message email attributes supported - by @JoernBerkefeld in #246
- #251 asset-asset javacript error / asset-message data loss / asset-message email attributes supported - by @JoernBerkefeld in #246
- #254 asset-asset javacript error / asset-message data loss / asset-message email attributes supported - by @JoernBerkefeld in #246
- #255 mocha dependency causes install failure on some linux servers - by @JoernBerkefeld in #256
- #257 skip interaction does not throw error on config issues - by @JoernBerkefeld in #258
- #259 smaller issues around create delta pkg and deploy - by @JoernBerkefeld in #262 and #270
- #260 use path sep to avoid system issues - by @DougMidgley in #261
- #263 Fixes to deploy of Import FIle to all subs - by @DougMidgley in #264
- #267 retrieveAsTemplate broken for
dataExtract
activity - by @DougMidgley in #273 - #290 mcdev init fails to add 2nd credential @JoernBerkefeld in #292
- #291 mcdev init breaks on updating BUs - by @JoernBerkefeld in #292
- #295 dataextension fields not properly formatted in retrieve-folder after de-create - by @JoernBerkefeld in #296
- #320 Test Methods inverted and fixed - by @DougMidgley in #323
- #344 asset download stopped by first error - by @JoernBerkefeld in #345
- #351 bug credentials caching needs to be reset on login failed error - by @DougMidgley in #353
- #355 bug dataextensionfield and dataextension and folder is cached twice during deploy dataextension - by @JoernBerkefeld in #357
Chores
- #39 build test scripts - by @DougMidgley in #282
- #94 replace update notifier git - by @DougMidgley in #250
- #152 code ql and dependabot configuration added - by @DougMidgley in #153
- #154 Move to sfmc-sdk library - by @DougMidgley in #109 and #315
- #157 change dependabot target - by @DougMidgley in #158
- #172 option to force update of specific config files if we made crucial changes - by @JoernBerkefeld in #274
- #175 es lint and hooks - by @DougMidgley in #176
- #180 ...
v3.1.3
v3.1.2
Bugfixes
- #168 fix retrieveAsTemplate bug when using filename prefixes and suffixes @JoernBerkefeld
- #170 fix bd broken for "script" @JoernBerkefeld
Full Changelog: v3.1.1...v3.1.2
v3.1.1
Bugfixes
- #160 mcdev outputs bogus text since dependency colorjs got corrupted (background story) @JoernBerkefeld
Dependencies
- bumped cli-progress to 3.10.0 (removes colors dependency)
- bumped winston to 3.3.4 (fixes colors dependency)
Full Changelog: v3.1.0...v3.1.1
v3.1.0
Features
- #55 added user / roles documentation
- #64 Added
accountUser
(system users) support (retrieve) - #103 Add rename
dataExtensionField
option (via Name_new) - #130 offer
retrieveChangelog
option to other node packages including mcdev (see retrieveChangelog.js for a how-to) - #133
dataExtensionField
validation during DE update (see README for details) - #136 enable including mcdev in other node packages (see README for a how-to)
- #144 added file type .ai to
asset
- thanks to @fbellgr
Bugfixes
- #112 add (unknown) new type 783 to defintion of
importFile
- #117
queries
not deployable when target isshared DE
- #118
automation
start not auto-retried during deploy - #119 fixed
list
dependency for importFile - #122 ECONNRESET on caching metadata during deploy
- #128
dataExtension
json not equal for retrieve/deploy - #129
script
json not equal for retrieve/deploy - #140 avoid issues when retrieving
dataExtensions
that do not have a folder ID (edge case) - thanks to @fbellgr - #144 improved handling high volumes of
asset
- thanks to @fbellgr - #149 handle errors on upsert of data extensions gracefully
Chores
- #5 removed postinstall msg after npm 7 dropped support for that
- #127 bad message "info: updated automation: undefined"
- #132
dataExtension.SendableSubscriberField.Name
now has a slightly more readable value - #137 docs for installing a specific version were incorrect
- #138 make issues and pull requests clickable in gitfork
- change
mcdev document
to take the cred/BU first and then the type to align it with other commands - improved error handling of
document role
command - #146 remove AccountUser retrieve as a default retrieve option
Dependencies
- bumped cli-progress to 3.9.1
- bumped eslint to 8.4.1
- bumped eslint-plugin-mocha to 10.0.1
- bumped eslint-plugin-prettier to 4.0.0
- bumped fs-extra to 10.0.0
- bumped husky to 7.0.4
- bumped inquirer to 8.2.0
- bumped jsdoc-to-markdown to 7.1.0
- bumped lint-staged to 12.1.2
- bumped mocha to 9.1.3
- bumped mustache to 4.2.0
- bumped prettier to 2.5.1
- bumped semver to 7.3.5
- bumped simple-git to 2.48.0
- bumped yargs to 17.3.0
Cheers
@JoernBerkefeld & @DougMidgley
New Contributors
Full Changelog: v3.0.3...v3.1.0
v3.0.3 - 2021-08-11
Bugfixes
- #100 Handle ECONNRESET errors across various types (incl. Data Extensions)
- #102 block deployment attempt for synchronized Data Extensions with proper error message
- #104 block deployment of shared data extensions on child BUs (existing solution broke somewhere down the line)
Chores
- #107 rewrite folder to use generic update/create to help with ECONNRESET issue
- #108 return full API error messages for create & update via SOAP
- #110 improve error message for missing dependencies
- enhanced Pull Request Template with note on npm run docs
Dependencies
- bumped jsdoc-to-markdown to 7.0.1
- bumped eslint-plugin-mocha to 9.0.0
- bumped eslint-plugin-prettier to 3.4.0
- bumped eslint-config-prettier to 8.3.0
- bumped eslint to 7.32.0
Cheers
@JoernBerkefeld & @DougMidgley
Full Changelog: v3.0.2...v3.0.3
v3.0.2 - 2021-08-03
Bugfixes
- #26 retrieving asset subtypes via r ... asset-xyz actually saves result to disk
- #45 connection errors for automations fixed
- #46 (temp fix) campaigns break entire retrieve - disabled for now
- #48 connection errors for dataExtensions and other types are now handled gracefully
- #49 connection errors for asset subtypes no longer restart downloading all subtypes
- #51 retrieving asset subtypes now always uses the default list of subtypes
- #52 no more endless retries in case of connection errors
Cheers
@JoernBerkefeld & @DougMidgley
Full Changelog: v3.0.1...v3.0.2
v3.0.1 - 2021-04-11
Bugfixes
- fix #4: retrieveAsTemplate led to fatal error if target metadata was not found - @JoernBerkefeld
- migration from prior internal version was not handled gracefully before
Cheers
@JoernBerkefeld & @DougMidgley
New Contributors
- @RobertZimmermann made their first contribution in #3
Full Changelog: v3.0.0...v3.0.1