lpjsmin for minifying js files
We need to handle several minification goals within the Launchpad codebase. This helps to create a single lib to help handle all of the cases and allow it to be flexibly used in more projects.
Usage
cmd line
You can pass the cmd line lpjsmin either a filename or a directory and it’ll process the file(s) adding a $fname-min.js next to the original file. This is used for things like minifying files in the combo directory. You can just let it know the root of the combo directory and it’ll minify all files it finds in there.
$ lpjsmin -p static/js/ $ lpjsmin -p static/js/myapp.js
python usage
You can import the module and minify in your own build scripts either via just filename and directory.
import lpjsmin
lpjsmin.minify('static/js')
lpjsmin.minify('static/js/myapp.js')
If you need to be able to customize the name or location of the minified files, wrap the lpjsmin script in your own build script and pass it the in/out streams.
import lpjsmin
lpjsmin.minify_stream(
open('static/js/myapp.js'),
open('/tmp/myapp.minified.js', 'w')
)
stdin
You can also just pass text at the script via stdin and it’ll minimze it back out to you.
$ cat file.js | lpjsmin
News
0.7
Release date: 19-December-2024
Add support for Python versions 3.9 to 3.13
Drop support for Python 2 (Python 2.7 to be specific)
Drop support for Python versions 3.5 to 3.7
Drop “six” package dependency as Python 2 is no longer supported.
Add pytest testing support and drop nose.
Add pre-commit and linting
0.6
Release date: 28-February-2020
Add tox testing support and drop buildout.
Add Python 3 support.
Use PEP 508 environment markers.
0.5
Release date: 11-June-2012
Ignore any files that don’t end in .js
Fix broken logic detecting if this file was already minified or not that allowed multiple nested minifications (filename-min-min-min.js)
0.4
Release date: 21-Feb-2012
Fix typo in the setup.py
0.3
Release date: 21-Feb-2012
Add argparse as a conditional dep for older Python versions.
0.2
Release date: 21-Feb-2012
Move the file/directory based minifying to the -p/–path cmd line flag.
Support minifying off of stdin and sending to stdout if no path is specified.
Fix the ipdb dependency that should not have been there.
0.1
Release date: 17-Feb-2012
Initial pulling out of the Launchpad utils directory.
Metadata
Release files for lpjsmin 0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lpjsmin-0.7.tar.gz | 9.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lpjsmin-0.7-py2.py3-none-any.whl | Python 2, Python 3 | none | any | Details |
Total release size: 17.8 kB
Release files / lpjsmin-0.7.tar.gz
| Download URL | lpjsmin-0.7.tar.gz |
|---|---|
| Size | 9.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e764d1ae4c2f1f0b9bfdafa760c9f133948b4556f14a3268f2d54e5eb642ee0e
|
|
BLAKE2b-256 checksum How to use checksums |
ee542d98adf0f262aa438a62792b18a20721c4b866f3c645dc2f6eb918be89d5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.3
|
Release files / lpjsmin-0.7-py2.py3-none-any.whl
| Download URL | lpjsmin-0.7-py2.py3-none-any.whl |
|---|---|
| Size | 8.0 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
22af4bcb9978075dc7e2ac77e6cfd34d20d5eea0ff280087acd83ef87748c7b5
|
|
BLAKE2b-256 checksum How to use checksums |
079ed724145ca4137c44f148bb66b3b38616de8aff41b5ae81223e9d7fc69571
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.0.1 CPython/3.12.3
|