Releases: Accenture/sfmc-devtools
Releases · Accenture/sfmc-devtools
v7.0.2 - regression fix
Bugfixes
- #1377 (v7 regression) data extension
folder
creation sometimes failed by @JoernBerkefeld and @ccarswell in #1385
Dependencies
- Bump conf from 12.0.0 to 13.0.1 by @dependabot in #1383
- Bump lint-staged from 15.2.5 to 15.2.7 by @dependabot in #1374
- Bump @types/node from 20.14.2 to 20.14.9 by @dependabot in #1386
- Bump dawidd6/action-download-artifact from 3 to 6 by @dependabot in #1375
Full Changelog: v7.0.1...v7.0.2
v7.0.1 - regression fix
Hotfix
- #1360
retrieve cred/bu
failed after runningmcdev upgrade
by @JoernBerkefeld in #1380
Dependencies
- Bump c8 from 9.1.0 to 10.0.0 by @dependabot in #1367
- Bump prettier from 3.3.0 to 3.3.2 by @dependabot in #1369
- Bump simple-git from 3.22.0 to 3.25.0 by @dependabot in #1365
- Bump @types/node from 20.12.12 to 20.14.2 by @dependabot in #1359
Full Changelog: v7.0.0...v7.0.1
v7.0.0
Beaking Changes
- #1292 enhance readability of
dataExtension
retention policy - check the wiki for how details on the field values. by @JoernBerkefeld in #1295 - #1318 auto-enable allowchildren on
folders
during deployment of subfolders. Be aware that this will likely fix unwanted issues in most cases, it might disable intentional restrictions that you have placed on folders via SOAP API by @JoernBerkefeld in #1319 - #58 rewrite dependency variables to r__format and formalize use of custom c__ variables by @JoernBerkefeld in #1333
- impacts previously downloaded metadata from these types:
asset
,attributeGroup
,attributeSet
,automation
,dataExtension
,emailSend
,event
,importFile
,journey
,mobileMessage
,query
,sendClassification
,transactionalEmail
,transactionalPush
,transactionalSMS
,triggeredSend
,verification
- This change was made in preparation of a coming deploy-dependencies-feature
- impacts previously downloaded metadata from these types:
Features
New & improved Commands
- #1238 new method
resolveId
that shows contentblock info based on its id by @JoernBerkefeld and @PriyajitGhosh1995 in #1239 and #1252 - #1329 add new method
build
that chainsbuildTemplate
andbuildDefinition
by @JoernBerkefeld in #1330 - #1270 add method
replaceContentBlock
to find & replace ContentBlockByX and Platform.Function.ContentBlockByX with one of the other options inasset
,journey
,script
,senderProfile
andtriggeredSend
by @JoernBerkefeld and @PriyajitGhosh1995 in #1353 - #1334 exclude
event
fromfixKeys
to avoid issues with journeys by @JoernBerkefeld in #1345
New command options
- new option
--metadata
/-m
added to many mcdev commands that enables a much more flexible way of specifying what type-key combos you want to work with:- #1272 add
--metadata
option todelete
&retrieve
by @JoernBerkefeld in #1274 - #1275 add
--metadata
option todeploy
by @JoernBerkefeld in #1283 - #1325 add multi-type support and
--metadata
option tobuildTemplate and
buildDefinition` by @JoernBerkefeld in #1327 - #1329 add
--metadata
tobuildDefinitionBulk
by @JoernBerkefeld in #1330 - #1316 add multi type support and
--metadata
option tofixKeys
by @JoernBerkefeld in #1317
- #1272 add
- #1302 option
--keySuffix
lets you add a custom suffix to all keys duringdeploy
andfixKeys
by @JoernBerkefeld and @OphelieMallet01 in #1303 - #1301 option
--noMidSuffix
forasset
lets you disable automatically appending the MID on cross-BU deployments - useful when you have your own templating-based or --keySuffix based suffixes @JoernBerkefeld and @OphelieMallet01 in #1308
New / improved metadata support
- #745 get
mobileCode
andmobileKeyword
forimportFile
activities with target SMS-list by @JoernBerkefeld in #1209 - #54 support
senderProfile
by @JoernBerkefeld in #1258 and #1259 - #60 basic retrieve-support for
deliveryProfile
by @JoernBerkefeld in #1264 - #1266 add support for
sendClassification
create/update/delete and resolve deliveryProfile and senderProfile by @JoernBerkefeld in #1267 - #164 add
delete
to support all metadata types (REST) by @JoernBerkefeld in #1192 - #1314 resolve email templates in template based emails (
asset-message
) by @JoernBerkefeld in #1315 - #1320 support creating journey & automation & triggeredSend-journey
folders
by @JoernBerkefeld in #1321 - #62 resolve sendClassification & senderProfile in
triggeredSend
,emailSend
andjourney
by @JoernBerkefeld in #1268 and #1326
Bugfixes
- #1189 blank file behavior not retrieved for
importFile
activity by @JoernBerkefeld in #1191 - #1229 number of downloaded
assets
not visible in vscode extension's output window by @JoernBerkefeld in #1263 - #1273 bu selection wizard should be disabled if skipinteraction is active by @JoernBerkefeld in #1279
- #1284
explainTypes --json
returns incorrect value for script.supports.changekey by @JoernBerkefeld in #1285 - #1306 remove empty entry from
explainTypes --json
response by @JoernBerkefeld in #1309 - #1324
buildTemplate
/buildDefinition
for assets copies non-json files into subfolders that have template variables in their name by @JoernBerkefeld in #1328 - #798 replacing MIDs in JSONs break
buildTemplate
by @JoernBerkefeld in #1328 - #1248 max line width breaks ampscript code in
assets
by @JoernBerkefeld in #1341 - #1332 do not refresh BUs on
mcdev join
to avoid unwanted config changes by @JoernBerkefeld in #1342 - #1298
fixKeys
fails foremailSend
andsenderProfile
by @JoernBerkefeld in #1303
Chores
- #882 change git default branch to main as part of
mcdev init
by @JoernBerkefeld in #1261 - #1201 disable color coding for tests run by GitFork and Sourcetree by @JoernBerkefeld in #1202
- #1217 moving jsdoc2md into lint-staged to speed up commits by @JoernBerkefeld in #1218
- #1244 restore vscode intellisense - required removing jsdoc2md from our stack due incompatibilities with what VSC requires by @JoernBerkefeld in #1245
- #1246 Enable enhanced typescript validation by @JoernBerkefeld in #1257
- #1227 fix test for
importfile
activities for SMS by @JoernBerkefeld in #1260 - #1200 Show dedicated messages to Accenture and non-accenture users by @JoernBerkefeld in #1262
- #1269 mention vscode extension & update copyright year by @JoernBerkefeld in #1278
- #1289 auto-exclude
dataExtension
_MobileAddressApplication during retrieve by @JoernBerkefeld in #1290 - #1110 Add typescript support via auto-generated d.ts file by @JoernBerkefeld in #1344
- #1167 Add support for beautyampjson in mcdev projects by @JoernBerkefeld in #1256
- #1247 vscode setting source.fixAll.eslint needs to default to "explicit" by @JoernBerkefeld in #1256
- #1253 Add file icon to ampscript files in VSCode by @JoernBerkefeld in #1256
- #1254 Add ampscript snippets to make coding easier (MarketingThibs.ampscriptsnippets) by @JoernBerkefeld in #1256
- #1255 Remove VSCode extension recommendation for gruntfuggly.todo-tree because it was not used by most projects by @JoernBerkefeld in #1256
- #1281 add new global option
--errorLog
by @JoernBerkefeld in #1282 - #905 test callout-payloads by @JoernBerkefeld in #1308
- #1350 ensure compatibility & testing with node 19 and node 20 by @JoernBerkefeld in #1351
Dependencies
- Bump @types/node from 20.12.7 to 20.12.12 by @dependabot in #1322
- Bump andstor/file-existence-action from 2 to 3 by @dependabot in #1199
- Bump beauty-amp-core2 from 0.4.5 to 0.4.6 by @dependabot in #1216
- Bump chai from 4.3.10 to 5.1.1 by @dependabot in #1212 #1311
- Bump eslint from 8.56.0 to 8.57.0 by @dependabot in #1225
- Bump eslint-plugin-jsdoc from 48.0.2 to 48.2.7 by @dependabot in #1205 #1215 #1224 #1230 #1250 #1312 #1337 #1347 #1355
- Bump eslint-plugin-mocha from 10.2.0 to 10.4.3 by @dependabot in #1221 #1231 #1276
- Bump eslint-plugin-unicorn from 50.0.1 to 53.0.0 by @dependabot in #1214 #1251 #1336
- Bump fast-xml-parser from 4.3.2 to 4.4.0 by @dependabot in #1184 #1206 #1237 #1338
- Bump fs-extra from 11.1.1 to 11.2.0 by @dependabot in #1180
...
v6.0.2
Bugfixes
- #1147 ampscript not always auto formatted correctly by @JoernBerkefeld in #1173
- #1139: allow specifying the email ID directly in emailSends by @JoernBerkefeld in #1175
- #1133: fix deploying too many dataExtensions blocked by server error by @JoernBerkefeld in #1178
Dependencies
- Replaced beauty-amp-core with beauty-amp-core2 by @JoernBerkefeld in #1173
- Bump c8 from 8.0.1 to 9.1.0 by @dependabot in #1168
- Bump prettier from 3.1.1 to 3.2.4 by @dependabot in #1174
- Bump eslint-config-prettier from 9.0.0 to 9.1.0 by @dependabot in #1170
- Bump deep-equal from 2.2.2 to 2.2.3 by @dependabot in #1172
- Bump conf from 11.0.1 to 12.0.0 by @dependabot in #1169
Special Thanks
- Thanks go out to @FiB3 for improving the AMPscript formatter https://github.com/FiB3/beautyAmpCore2 which we now include here
- We are also glad that @ujjyal and @david-robuck helped us track down & fix the issues #1139 and #1133
Full Changelog: v6.0.1...v6.0.2
v6.0.1
Bugfixes
- #1157 content before and after script tags is stripped from
assets
upon retrieval by @JoernBerkefeld in #1158
Dependencies
- Bump actions/setup-node from 3 to 4 by @dependabot in #1137
- Bump axios from 1.5.0 to 1.6.5 by @dependabot in #1166
- Bump dawidd6/action-download-artifact from 2 to 3 by @dependabot in #1151
- Bump eslint from 8.50.0 to 8.56.0 by @dependabot in #1150
- Bump eslint-plugin-jsdoc from 46.8.2 to 48.0.2 by @dependabot in #1159
- Bump eslint-plugin-prettier from 5.0.0 to 5.1.2 by @dependabot in #1154
- Bump eslint-plugin-unicorn from 48.0.0 to 50.0.1 by @dependabot in #1161
- Bump follow-redirects from 1.15.2 to 1.15.4 by @dependabot in #1165
- Bump lint-staged from 14.0.1 to 15.2.0 by @dependabot in #1145
- Bump prettier from 3.0.3 to 3.1.1 by @dependabot in #1163
- Bump prettier-eslint from 15.0.1 to 16.2.0 by @dependabot in #1155
- Bump simple-git from 3.20.0 to 3.22.0 by @dependabot in #1160
- Bump winston from 3.10.0 to 3.11.0 by @dependabot in #1126
Thank you
Thanks go out to @Beryl-18 for reporting issue #1157.
Full Changelog: v6.0.0...v6.0.1
v6.0.0
BREAKING CHANGES
With version 6 we are dropping support for CommonJS modules (require('mcdev')
) in favor of ES6 modules (import mcdev from 'mcdev'
). Please consider upgrading your solution to ES6 modules or your will have to require a version prior to 6.0.0, with 5.3.0 being the latest available one that still supports CommonJS.
Features
- #354 es6 module support by @DougMidgley in #918
- #1108 allow importing certain parts of mcdev directly via es6-import by @JoernBerkefeld in #1116
Dependencies
- Bump actions/checkout from 3 to 4 by @dependabot in #1100
- Bump assert from 2.0.0 to 2.1.0 by @dependabot in #1113
- Bump axios-mock-adapter from 1.21.5 to 1.22.0 by @dependabot in #1105
- Bump c8 from 7.14.0 to 8.0.1 by @dependabot in #1121
- Bump chai from 4.3.8 to 4.3.10 by @dependabot in #1120
- Bump eslint from 8.48.0 to 8.50.0 by @dependabot in #1106 & #1119
- Bump eslint-plugin-jsdoc from 46.5.0 to 46.8.2 by @dependabot in #1103 & #1107 & #1114
- Bump eslint-plugin-prettier from 4.2.1 to 5.0.0 by @dependabot in #1101
- Bump eslint-plugin-mocha from 10.1.0 to 10.2.0 by @dependabot in #1115
- Bump fast-xml-parser from 4.2.7 to 4.3.2 by @dependabot in #1111 & #1118
- Bump prettier from 2.8.8 to 3.0.3 by @dependabot in #1101
- Bump prettier-plugin-sql from 0.14.0 to 0.15.1 by @dependabot in #1101
- Bump simple-git from 3.19.0 to 3.20.0 by @dependabot in #1112
Full Changelog: v5.3.0...v6.0.0
v5.3.0
Features
- #940 add deploy-option
--fixShared
to automatically update data designer on child BUs when fields are added to shared data extensions by @JoernBerkefeld in #1074 - #21 / #325 feature add support for
verification
activity inautomation
by @JoernBerkefeld in #1083 - #1090: make
attributeGroup
andattributeSet
be retrieved by default by @JoernBerkefeld in #1091
Bugfixes
- #1088:
attributeSet
cannot find shared data extension folders by @JoernBerkefeld in #1089 - #1097
dataExtension
decimal fields' length were misrepresented in their markdown files, showing only the part before the decimal by @JoernBerkefeld in #1098
Dependencies
- Bump eslint from 8.46.0 to 8.48.0 by @dependabot in #1076 & #1095
- Bump eslint-plugin-jsdoc from 46.4.6 to 46.5.0 by @dependabot in #1085
- Bump lint-staged from 13.2.3 to 14.0.1 by @dependabot in #1078 & #1086
- Bump inquirer from 8.2.5 to 8.2.6 by @dependabot in #1077
- Bump fsevents from 2.3.2 to 2.3.3 by @dependabot in #1087
- Bump chai from 4.3.7 to 4.3.8 by @dependabot in #1096
Thank you
Thanks go out to Maciej Barnaś for reporting issue #1097.
Full Changelog: v5.2.0...v5.3.0
v5.2.0
Features
- #982 added option
--execute
afterdeploy
by @phjulia in #986 - #987 allow using
--like
option similar to SQL'sLIKE
logic by @JoernBerkefeld in #1006 - #870
execute automation
command to start scheduledautomations
by @JoernBerkefeld in #1019 - #1018 add command to
pause
a scheduledautomation
by @JoernBerkefeld in #1019 - #711 improve support for
attributeGroup
andattributeSet
(renamed fromsetDefinition
) by @JoernBerkefeld in #776 - #1025 add command
schedule
and optionsdeploy --schedule
&deploy --execute=schedule
forautomations
by @JoernBerkefeld in #1026 - #38 add command
fixkeys
to quickly sync name and key of metadata by @phjulia in #1022 - #162 show execution time for
retrieve
anddeploy
by @JoernBerkefeld in #1056 - #78 add warning not to put project folders into cloud-synced folders by @JoernBerkefeld in #1063
- #1034 package-integration:
pause
,execute
,schedule
now return the list of keys that were affected by @JoernBerkefeld in #1035
Bugfixes
- #991 group command-options in --help to make it easier to read by @JoernBerkefeld in #996
- #988 regression fix:
deploy --refresh
by @phjulia in #992 - #985 ensure trailing commas in key/type lists do not lead to unforeseen executions by @JoernBerkefeld in #1004
- #1043 log files no longer include color codes, improving readability by @JoernBerkefeld in #1044
- #934 handle authentication errors during mcdev join gracefully by @JoernBerkefeld in #1047
- #1052 if single
automations
are not retrieved due to too many timeouts, the overall retrieve failed by @JoernBerkefeld in #1053 - #1048 rate limit
automation
retrieval & improve automation schedule representation in markdown files by @JoernBerkefeld in #1054 - #1008 package integration: ensure deploy returns deployed items instead of the complete cache by @JoernBerkefeld in #1009
- #1045 do not create
...-error.log
file if there were no errors by @JoernBerkefeld in #1046
Chores
- #1003 contributors: run lint:fix if npm install was required by @JoernBerkefeld in #1005
- #1010 contributors: ensure test load more specific soap response files by @JoernBerkefeld in #1011
- #843 contributors: add test class for type
script
by @JoernBerkefeld in #1024 - #925 contributors: improve test class for query by @JoernBerkefeld in #1036
- #850 contributors: add test class for
fileTransfer
by @JoernBerkefeld in #1037 - #846 contributors: add test class for
dataExtract
by @JoernBerkefeld in #1040 - #1041 contributors: strip colors from log output for vscode extension by @JoernBerkefeld in #1042
- #854 contributors: add basic test class for
triggeredSend
by @JoernBerkefeld in #1072 - #852 contributors: add test class for type
importFile
by @JoernBerkefeld in #1038 - #1012 fix potential security issue regarding passwords in log files by @JoernBerkefeld in #1013
- #1028 refactoring for fromRetrieve option by @JoernBerkefeld in #1029
Dependencies
- Bump axios-mock-adapter from 1.21.3 to 1.21.5 by @dependabot in #995
- Bump deep-equal from 2.2.1 to 2.2.2 by @dependabot in #1033
- Bump eslint from 8.42.0 to 8.46.0 by @dependabot in #993 & #1017 & #1032 & #1061
- Bump eslint-config-prettier from 8.7.0 to 9.0.0 by @dependabot in #1071
- Bump eslint-plugin-jsdoc from 46.2.5 to 46.4.6 by @dependabot in #998 & #1016 & #1030 & #1070
- Bump eslint-plugin-unicorn from 47.0.0 to 48.0.0 by @dependabot in #1049
- Bump fast-xml-parser from 4.2.4 to 4.2.7 by @dependabot in #997 & #1050 & #1057
- Bump lint-staged from 13.2.2 to 13.2.3 by @dependabot in #1015
- Bump semver from 7.5.0 to 7.5.4 by @dependabot in #999 & #1031
- Bump winston from 3.9.0 to 3.10.0 by @dependabot in #1051
Full Changelog: v5.1.0...v5.2.0
v5.1.0
Features
- #730 add
execute query
command to easily run SQL from within VSCode by @phjulia in #919 - #553 support getting+setting
automation notification
emails by @JoernBerkefeld in #904 - #969 option
--noLogFile
allows disabling logfiles completely by @JoernBerkefeld in #971
Bugfixes
- #734
automation
wasn't documented via markdown file after deploy by @JoernBerkefeld in #956 - #964 allow more than 36 chars for keys when changing it via
changeKeyValue
orchangeKeyField
(automation
&dataExtension
&event
: 200;user
: 50) by @JoernBerkefeld in #970 - #207 prevent mcdev from creating log files when running
mcdev explainTypes
ormcdev --help
by @JoernBerkefeld in #971
Chores
- #978 contributors: The coverage github actions failed due to insufficient access if triggered by dependabot by @JoernBerkefeld in #979
- #969 contributors: log was truncated during test execution due to an issue with winston-logger by @JoernBerkefeld in #971
- #951 contributors: fix test for
user
-documentation by @JoernBerkefeld in #952 - #844 contributors: add test class for
automation
by @JoernBerkefeld in #953 - #959 contributors: ensure commit msg template ends on a space by @JoernBerkefeld in #960
- #957 debugging: add executed command including all parameters to log files by @JoernBerkefeld in #963
- #975 contributors: enable dependabot for github-actions by @JoernBerkefeld in #976
Dependencies
- Bump winston from 3.8.2 to 3.9.0 by @dependabot in #968
- Bump eslint-plugin-jsdoc from 45.0.0 to 46.2.5 by @dependabot in #980
- Bump eslint from 8.41.0 to 8.42.0 by @dependabot in #966
- Bump fast-xml-parser from 4.2.2 to 4.2.4 by @dependabot in #973
- #972 Bump report-nyc-coverage GitHub action from 1.2.6 to 1.2.7 by @JoernBerkefeld in #974
New Contributors
Full Changelog: v5.0.2...v5.1.0
v5.0.2 - include mobileCode in mobileKeyword's key
Bugfixes
- #889: if
mobileKeyword
existed multiple times due to multiplesmobileCode
s then not all were saved by @JoernBerkefeld in #932 - #892: delete old interaction folder on retrieve of
journey
by @JoernBerkefeld in #930 - #12: JSON saved to retrieve folder was incorrect after deploy for type
automation
by @JoernBerkefeld in #935 - #945: saved SQL file for type
query
was not correctly formatted when other types were retrieved first by @JoernBerkefeld in #946 - #923: corrected
dataExtensionField
rename log message by @JoernBerkefeld in #929 - #909: clarify that
bd
andbdb
require the template's file name by @JoernBerkefeld in #931 - #893: retrieving
mobileKeyword
lead to endlessly requesting next batches on some BUs by @JoernBerkefeld in #941 - #800:
document
was executed even though doing so created an incorrect overview file when retrieving a specific key (typeuser
&role
) @JoernBerkefeld in #942
Chores
- #906: ensure
explainTypes
CLI output is valid JSON with double-quotes by @JoernBerkefeld in #907 - #912: for contributors: ensure mcdev contributors auto-update their dependencies on git-pull by @JoernBerkefeld in #913
- #914: for contributors: allow standard GitHub branch names to also update
.git/templatemessage
by @JoernBerkefeld in #916 and #917 - #936: for contributors: allow "Revert ..." commit messages by @JoernBerkefeld in #937
Dependencies
- Bump deep-equal from 2.1.0 to 2.2.1 by @dependabot in #899
- Bump eslint from 8.39.0 to 8.41.0 by @dependabot in #921
- Bump eslint-plugin-jsdoc from 43.1.1 to 45.0.0 by @dependabot in #908 and #939
- Bump eslint-plugin-unicorn from 46.0.0 to 47.0.0 by @dependabot in #897
- Bump lint-staged from 13.2.0 to 13.2.2 by @dependabot in #901
- Bump sfmc-sdk from 1.0.0 to 1.0.1 by @JoernBerkefeld in #941
- Bump simple-git from 3.16.0 to 3.18.0 by @dependabot in #900
- Bump yargs from 17.6.0 to 17.7.2 by @dependabot in #922
Full Changelog: v5.0.1...v5.0.2