From 21538da5030c54609f72164b4049795f6e5115a7 Mon Sep 17 00:00:00 2001 From: Nicolas DUBIEN Date: Sat, 1 Mar 2025 18:04:37 +0000 Subject: [PATCH] =?UTF-8?q?=E2=9A=A1=EF=B8=8F=20Mark=20all=20arbitraries?= =?UTF-8?q?=20as=20side-effect=20free?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #5560 --- packages/fast-check/postbuild/main.mjs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/fast-check/postbuild/main.mjs b/packages/fast-check/postbuild/main.mjs index 79b84c5298d..064c17cc748 100644 --- a/packages/fast-check/postbuild/main.mjs +++ b/packages/fast-check/postbuild/main.mjs @@ -87,6 +87,15 @@ fs.readFile(path.join(__dirname, '../package.json'), (err, data) => { if (docReplacement.length === 1 && docReplacement[0].hasChanged) { console.info(`Package details added onto doc`); } + + const noSideEffectsOnAllArbitraries = replaceInFileSync({ + files: ['lib/arbitrary/*.js', 'lib/cjs/arbitrary/*.js'], + from: [(file) => `function ${path.basename(file).split('.')[0]}(`], + to: [(match) => `/**@__NO_SIDE_EFFECTS__*/${match}`], + }); + if (noSideEffectsOnAllArbitraries.length === 1 && noSideEffectsOnAllArbitraries[0].hasChanged) { + console.info(`No side effects tags added onto arbitraries`); + } }); // Helpers