{"id":22235,"library":"rollup-plugin-strip-pragma","title":"rollup-plugin-strip-pragma","description":"A Rollup plugin that strips requirejs-style build pragmas (e.g., //>>includeStart/End) from source code during bundling. Version 1.0.0 is the first stable release with no active development since 2020. Designed primarily for Cesium.js workflows, it provides a simple configuration to specify pragma names to remove. Unlike custom regex solutions, this plugin integrates seamlessly with Rollup's plugin system and handles nested pragmas correctly. Suitable for production builds to eliminate debug-only code blocks.","status":"maintenance","version":"1.0.0","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","rollup","cesium"],"install":[{"cmd":"npm install rollup-plugin-strip-pragma","lang":"bash","label":"npm"},{"cmd":"yarn add rollup-plugin-strip-pragma","lang":"bash","label":"yarn"},{"cmd":"pnpm add rollup-plugin-strip-pragma","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency; requires Rollup to function as a plugin","package":"rollup","optional":false}],"imports":[{"note":"ESM default export; CommonJS require works but the package is ESM-first.","wrong":"const rollupStripPragma = require('rollup-plugin-strip-pragma')","symbol":"default","correct":"import rollupStripPragma from 'rollup-plugin-strip-pragma'"},{"note":"The package exports a single function as default, not a named export.","wrong":"import { rollupStripPragma } from 'rollup-plugin-strip-pragma'","symbol":"rollupStripPragma","correct":"import rollupStripPragma from 'rollup-plugin-strip-pragma'"},{"note":"CommonJS require() is supported, but ESM import is preferred for Rollup projects.","wrong":"","symbol":"require('rollup-plugin-strip-pragma')","correct":"const rollupStripPragma = require('rollup-plugin-strip-pragma')"}],"quickstart":{"code":"import rollup from 'rollup';\nimport rollupStripPragma from 'rollup-plugin-strip-pragma';\n\nconst bundle = await rollup.rollup({\n  input: 'source.js',\n  plugins: [\n    rollupStripPragma({\n      pragmas: ['debug']\n    })\n  ]\n});\n\nconst { output } = await bundle.generate({ format: 'es' });\nconsole.log(output[0].code);","lang":"javascript","description":"Configures Rollup to strip debug pragmas (//>>includeStart/End) from source during bundling."},"warnings":[{"fix":"Ensure your source code uses the exact pragma syntax: //>>includeStart('pragmaName', ...) and //>>includeEnd('pragmaName').","message":"The plugin only supports requirejs-style pragmas (//>>includeStart/End), not arbitrary comment patterns.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Use the same casing as in your source pragmas, e.g., 'debug' vs 'DEBUG'.","message":"Pragma names are case-sensitive and must match exactly in the config.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"If you need complex conditionals, consider using a different plugin or manual transforms.","message":"The plugin does not handle arbitrary expressions in pragma conditions; only simple string checks.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Run 'npm install rollup-plugin-strip-pragma --save-dev'.","cause":"Package not installed or not in node_modules.","error":"Error: Cannot find module 'rollup-plugin-strip-pragma'"},{"fix":"Change import to 'import rollupStripPragma from 'rollup-plugin-strip-pragma'' (no curly braces).","cause":"Using named import instead of default import.","error":"TypeError: rollupStripPragma is not a function"},{"fix":"Verify the plugin is installed from npm and imported correctly as default.","cause":"Incorrect import path or plugin version mismatch with Rollup.","error":"The plugin 'rollup-plugin-strip-pragma' does not provide a known export"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}