Skip to main content

JS Min script that provides cmd line and python processors

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lpjsmin-0.7.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lpjsmin-0.7-py2.py3-none-any.whl (8.0 kB view details)

Uploaded Python 2Python 3

File details

Details for the file lpjsmin-0.7.tar.gz.

File metadata

  • Download URL: lpjsmin-0.7.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for lpjsmin-0.7.tar.gz
Algorithm Hash digest
SHA256 e764d1ae4c2f1f0b9bfdafa760c9f133948b4556f14a3268f2d54e5eb642ee0e
MD5 2ffc201429d6bc4adfb2204258a6d896
BLAKE2b-256 ee542d98adf0f262aa438a62792b18a20721c4b866f3c645dc2f6eb918be89d5

See more details on using hashes here.

File details

Details for the file lpjsmin-0.7-py2.py3-none-any.whl.

File metadata

  • Download URL: lpjsmin-0.7-py2.py3-none-any.whl
  • Upload date:
  • Size: 8.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.3

File hashes

Hashes for lpjsmin-0.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 22af4bcb9978075dc7e2ac77e6cfd34d20d5eea0ff280087acd83ef87748c7b5
MD5 149abd6f4c0a131a9e0586962adb4b12
BLAKE2b-256 079ed724145ca4137c44f148bb66b3b38616de8aff41b5ae81223e9d7fc69571

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page