rollup-plugin-strip-pragma
raw JSON → 1.0.0 verified Mon Apr 27 auth: no javascript maintenance
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.
Common errors
error Error: Cannot find module 'rollup-plugin-strip-pragma' ↓
cause Package not installed or not in node_modules.
fix
Run 'npm install rollup-plugin-strip-pragma --save-dev'.
error TypeError: rollupStripPragma is not a function ↓
cause Using named import instead of default import.
fix
Change import to 'import rollupStripPragma from 'rollup-plugin-strip-pragma'' (no curly braces).
error The plugin 'rollup-plugin-strip-pragma' does not provide a known export ↓
cause Incorrect import path or plugin version mismatch with Rollup.
fix
Verify the plugin is installed from npm and imported correctly as default.
Warnings
gotcha The plugin only supports requirejs-style pragmas (//>>includeStart/End), not arbitrary comment patterns. ↓
fix Ensure your source code uses the exact pragma syntax: //>>includeStart('pragmaName', ...) and //>>includeEnd('pragmaName').
gotcha Pragma names are case-sensitive and must match exactly in the config. ↓
fix Use the same casing as in your source pragmas, e.g., 'debug' vs 'DEBUG'.
gotcha The plugin does not handle arbitrary expressions in pragma conditions; only simple string checks. ↓
fix If you need complex conditionals, consider using a different plugin or manual transforms.
Install
npm install rollup-plugin-strip-pragma yarn add rollup-plugin-strip-pragma pnpm add rollup-plugin-strip-pragma Imports
- default wrong
const rollupStripPragma = require('rollup-plugin-strip-pragma')correctimport rollupStripPragma from 'rollup-plugin-strip-pragma' - rollupStripPragma wrong
import { rollupStripPragma } from 'rollup-plugin-strip-pragma'correctimport rollupStripPragma from 'rollup-plugin-strip-pragma' - require('rollup-plugin-strip-pragma')
const rollupStripPragma = require('rollup-plugin-strip-pragma')
Quickstart
import rollup from 'rollup';
import rollupStripPragma from 'rollup-plugin-strip-pragma';
const bundle = await rollup.rollup({
input: 'source.js',
plugins: [
rollupStripPragma({
pragmas: ['debug']
})
]
});
const { output } = await bundle.generate({ format: 'es' });
console.log(output[0].code);