diff --git a/.changeset/two-oranges-bow.md b/.changeset/two-oranges-bow.md new file mode 100644 index 000000000..d83cf09ce --- /dev/null +++ b/.changeset/two-oranges-bow.md @@ -0,0 +1,5 @@ +--- +"aws-sdk-js-codemod": patch +--- + +Add disclaimer in README and process warning diff --git a/README.md b/README.md index a6f3ca541..2c786c866 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,9 @@ You can provide names of the custom transforms instead of a local path or url: v2-to-v3 Converts AWS SDK for JavaScript APIs in a Javascript/TypeScript codebase from version 2 (v2) to version 3 (v3). +Please review the code change thoroughly for required functionality before deploying it to production. +If the transformation is not complete or is incorrect, please report the issue on GitHub. + ## Prerequisites To use aws-sdk-js-codemod, please install [Node.js][install-nodejs]. diff --git a/src/cli.ts b/src/cli.ts index 9d83e5301..5fdec539b 100644 --- a/src/cli.ts +++ b/src/cli.ts @@ -40,6 +40,17 @@ if (args[2] === "--help" || args[2] === "-h") { process.stdout.write(getHelpParagraph(transforms)); } +const disclaimerLines = [ + `╔════════════════════════════════════════════════════════╗`, + `║ Please review the code change thoroughly for required ║`, + `║ functionality before deploying it to production. ║`, + `║ ║`, + `║ If the transformation is not complete or is incorrect, ║`, + `║ please report the issue on GitHub. ║`, + `╚════════════════════════════════════════════════════════╝`, + ``, +]; + const parser = getJsCodeshiftParser(); let options, positionalArguments; @@ -61,6 +72,10 @@ try { const { transform } = options; if (transforms.map(({ name }) => name).includes(transform)) { + const supressDisclaimer = process.env.AWS_SDK_JS_CODEMOD_SUPRESS_WARNING; + if (!supressDisclaimer || !supressDisclaimer === "1") { + console.warn(disclaimerLines.map((line) => `\n${line}`).join("")); + } options.transform = getUpdatedTransformFile(transform); }