pg-minify v1.7.0
pg-minify
Minifies PostgreSQL scripts, reducing the IO usage.
Features:
- Removes
/*multi-line*/
(including nested) and--single-line
comments - Preserves special/copyright multi-line comments that start with
/*!
- Concatenates multi-line strings into a single line with
\n
- Fixes multi-line text, prefixing it with
E
where needed - Removes redundant line gaps: line breaks, tabs and spaces
- Provides basic parsing and error detection for invalid SQL
- Flattens the resulting script into a single line
- Optionally, compresses SQL for minimum space
Installing
$ npm install pg-minify
Usage
const minify = require('pg-minify');
const sql = 'SELECT 1; -- comments';
minify(sql); //=> SELECT 1;
with compression (removes all unnecessary spaces):
const sql = 'SELECT * FROM "table" WHERE col = 123; -- comments';
minify(sql, {compress: true});
//=> SELECT*FROM"table"WHERE col=123;
The library's distribution includes TypeScript declarations.
Error Handling
SQLParsingError is thrown on failed SQL parsing:
try {
minify('SELECT \'1');
} catch (error) {
// error is minify.SQLParsingError instance
// error.message:
// Error parsing SQL at {line:1,col:8}: Unclosed text block.
}
API
minify(sql, options) ⇒ String
Minifies SQL into a single line, according to the options
.
options.compress ⇒ Boolean
Compresses / uglifies the SQL to its bare minimum, by removing all unnecessary spaces.
false (default)
- keeps minimum spaces, for easier readtrue
- removes all unnecessary spaces
See also: SQL Compression.
options.removeAll ⇒ Boolean
Removes everything, i.e. special/copyright multi-line comments that start with /*!
will be removed as well.
Limitations
Double-dollar $$
string escaping, which avoids escaping single quotes, is not supported.
See #12.
License
Copyright © 2025 Vitaly Tomilov; Released under the MIT license.
5 months ago
1 year ago
1 year ago
2 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago