mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	Allowed installing closure with pip for admin JavaScript compression.
This commit is contained in:
		| @@ -4,6 +4,13 @@ import os | ||||
| import subprocess | ||||
| import sys | ||||
|  | ||||
| try: | ||||
|     import closure | ||||
| except ImportError: | ||||
|     closure_compiler = None | ||||
| else: | ||||
|     closure_compiler = os.path.join(os.path.dirname(closure.__file__), 'closure.jar') | ||||
|  | ||||
| js_path = os.path.join(os.path.dirname(os.path.dirname(__file__)), 'static', 'admin', 'js') | ||||
|  | ||||
|  | ||||
| @@ -21,7 +28,7 @@ Compiler library and Java version 6 or later.""" | ||||
|                       action="store_false", dest="verbose") | ||||
|     options = parser.parse_args() | ||||
|  | ||||
|     compiler = os.path.expanduser(options.compiler) | ||||
|     compiler = closure_compiler if closure_compiler else os.path.expanduser(options.compiler) | ||||
|     if not os.path.exists(compiler): | ||||
|         sys.exit( | ||||
|             "Google Closure compiler jar file %s not found. Please use the -c " | ||||
|   | ||||
| @@ -45,15 +45,17 @@ Compressing JavaScript | ||||
|  | ||||
| To simplify the process of providing optimized JavaScript code, Django | ||||
| includes a handy Python script which should be used to create a "minified" | ||||
| version. To run it:: | ||||
| version. To run it: | ||||
|  | ||||
|     python django/contrib/admin/bin/compress.py | ||||
| .. code-block:: console | ||||
|  | ||||
|     $ pip install closure | ||||
|     $ python django/contrib/admin/bin/compress.py | ||||
|  | ||||
| Behind the scenes, ``compress.py`` is a front-end for Google's | ||||
| `Closure Compiler`_ which is written in Java. However, the Closure Compiler | ||||
| library is not bundled with Django directly, so those wishing to contribute | ||||
| complete JavaScript patches will need to download and install the library | ||||
| independently. The Closure Compiler library requires `Java`_ 7 or higher. | ||||
| `Closure Compiler`_ which is written in Java. The Closure Compiler library is | ||||
| not bundled with Django, but you can install it using pip as done above. The | ||||
| Closure Compiler library requires `Java`_ 7 or higher. | ||||
|  | ||||
| Please don't forget to run ``compress.py`` and include the ``diff`` of the | ||||
| minified scripts when submitting patches for Django's JavaScript. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user