{ "info": { "author": "Sam Cooke", "author_email": "sam.cooke@xylate.com", "bugtrack_url": null, "classifiers": [], "description": "# django_bundles: Another Django media bundler\n\ndjango_bundles is a media bundler for Django. It can be used to bundle groups of media files (e.g. CSS, JavaScript) into a single file with a hash in the filename (to play nicely with browser caching) whilst keeping the files separate during development.\n\nThere are ideas taken from a lot of the other media bundlers - none of them worked quite how I wanted and I fancied writing my own.\n\nI think Django 1.4 is required, but possibly only because of the assignment tag decorator used.\n\nIMPORTANT NOTE: 0.3.0 is not backwards compatible with 0.2.5\n\n## Features\n\n* Pre and post processing of files (e.g. LessCSS, UglifyJS) - really easy to add others\n* Could be used with script loaders either using the template tags for inline scripts or a DjangoTemplateProcessor to preprocess a JavaScript file\n* Management command to bundle media\n* Management command to lint files (e.g. using JSLint/JSHint)\n* Flexible API that doesn't force you to work in a certain way\n\n## Usage\n\nThe main settings are `USE_BUNDLES` which is True/False to enable/disable bundling in the template (defaults to `not settings.DEBUG`), `BUNDLES_VERSION_FILE` which is where versions are stored (in a python file) and `BUNDLES` which looks like:\n\n```python\nBUNDLES = (\n ('master_css', {\n 'type': 'css',\n 'files': (\n 'css/*.css',\n 'css/more/test3.css',\n 'less/test.less',\n ),\n }),\n ('master_js', {\n 'type': 'js',\n 'files': (\n 'js/*.js',\n )\n }),\n ('script_loader_example', {\n 'type': 'js',\n 'files': (\n 'script_loader_example.js',\n ),\n 'processors': (\n 'django_bundles.processors.django_template.DjangoTemplateProcessor',\n )\n }),\n)\n```\n\nAll of the `BUNDLES` options can be found in django_bundles/core.py on the `Bundle` and `BundleFile` classes.\n\nThe `{% render_bundle bundle_name %}` template tag can then be used to render the HTML (e.g. script or link tag) in place. django_bundles/templates needs to be in your template directories list (or copy them in).\n\nOther settings are (check out django_bundles/conf/default_settings.py):\n\n* `DEFAULT_PREPROCESSORS` - dict of file type to list of processors (default is LessCSS for .less files)\n* `DEFAULT_POSTPROCESSORS` - dict of bundle type to list of processors (default is UglifyJS for .js bundles)\n\n## Linting\n\nIf you define a `BUNDLES_LINTING` setting you can use the `lint_bundles` management command to lint your files. e.g.\n\n```python\nBUNDLES_LINTING = {\n 'js': {\n 'command': '/path/to/jslint/bin/jslint.js {infile}',\n 'default': True,\n },\n}\n```\n\nIt currently expects output like JSLint.\n\n## Things it doesn't do\n\n* JavaScript tags are rendered in place in the template - there's no deferring them to the bottom of the page automatically\n* Files aren't passed through preprocessors before being rendered in development mode - for LessCSS you have to include the LessCSS script tag (wrapped in `{% if not settings.USE_BUNDLES %}` so you don't use it in production)\n\n## staticfiles\n\nI think it should be pretty simple to use this with staticfiles with clever use of `files_url_root`, `files_root`, `bundle_url_root` and `bundle_file_root` as long as `collectstatic` management command is run before `create_bundles` in the deployment process.\n", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/sdcooke/django_bundles", "keywords": null, "license": "MIT license, see LICENSE file", "maintainer": null, "maintainer_email": null, "name": "django-bundles", "package_url": "https://pypi.org/project/django-bundles/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-bundles/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/sdcooke/django_bundles" }, "release_url": "https://pypi.org/project/django-bundles/0.6.6/", "requires_dist": null, "requires_python": null, "summary": "Another Django media bundler", "version": "0.6.6" }, "last_serial": 1939984, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "460ec0833ed093716531aeae130a1255", "sha256": "6fac3cc2d90280395ffd8658fbd5e420960558118d254253fbba482cc81d0451" }, "downloads": -1, "filename": "django-bundles-0.2.1.tar.gz", "has_sig": false, "md5_digest": "460ec0833ed093716531aeae130a1255", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9449, "upload_time": "2012-09-18T12:10:23", "url": "https://files.pythonhosted.org/packages/ce/40/b4b74ee19c83a1a3323ada54e06a2e2440897296b3dc628f1d3ec6974e11/django-bundles-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "44e21c722e302a970c83e30a3579ab4d", "sha256": "2588d12c0cef7844f7a8cecb8026d79dbf168263edde7aed5a40771675064c22" }, "downloads": -1, "filename": "django-bundles-0.2.2.tar.gz", "has_sig": false, "md5_digest": "44e21c722e302a970c83e30a3579ab4d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9760, "upload_time": "2012-09-18T12:58:42", "url": "https://files.pythonhosted.org/packages/93/e1/3f41c521a215239f4244a9a90e85d0641fa64214e21407ed9e7436c7549a/django-bundles-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "a3e7e7ba873a1f9a795fc3dc6298db97", "sha256": "883e0509a0cb9c72a7d3ea11b06577b0f6d46f5d675f36efc2b854b1804989dd" }, "downloads": -1, "filename": "django-bundles-0.2.3.tar.gz", "has_sig": false, "md5_digest": "a3e7e7ba873a1f9a795fc3dc6298db97", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9672, "upload_time": "2012-09-18T13:06:15", "url": "https://files.pythonhosted.org/packages/a0/73/52d472676b1662499212e55b6d3e170c0e80501c99f53d60f9990370a539/django-bundles-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "25518520afc10b9311f5fd61339cb7cc", "sha256": "0f5603e666598c4b2b86209c2a0277734ce20553f06e3680180943c02bd38ee5" }, "downloads": -1, "filename": "django-bundles-0.2.4.tar.gz", "has_sig": false, "md5_digest": "25518520afc10b9311f5fd61339cb7cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9827, "upload_time": "2012-09-18T13:24:16", "url": "https://files.pythonhosted.org/packages/ff/c3/ecb81fc570d57c730c48ff2e542b1ab616a12b46b4e6a9cb249d314d8b39/django-bundles-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "d5c8d247131da70744dda00fd330d919", "sha256": "c59137134c24bed87400e7e240c0cca7d432a8c566d260c4648a7b8db8e78c71" }, "downloads": -1, "filename": "django-bundles-0.2.5.tar.gz", "has_sig": false, "md5_digest": "d5c8d247131da70744dda00fd330d919", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9766, "upload_time": "2013-02-27T10:21:05", "url": "https://files.pythonhosted.org/packages/a5/e4/ae4dcb724224437f8de3c22c830ee168535d680f403f4a24ff4b8b0fa8e6/django-bundles-0.2.5.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "b8e42f6116b1bd0d044958f4e15d6396", "sha256": "4449e1a8bbe65acd27e3a098702bcdcd807f90c2bbf452961a38e6c7b47fcd1d" }, "downloads": -1, "filename": "django-bundles-0.3.0.tar.gz", "has_sig": false, "md5_digest": "b8e42f6116b1bd0d044958f4e15d6396", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13877, "upload_time": "2013-08-28T17:22:15", "url": "https://files.pythonhosted.org/packages/8e/d2/8809a35fbaeca805cfaa040d91325d7435ade12a8e42e7f296d5d9e00d6b/django-bundles-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "f0f5a3d96a768e3243c8e2b3179e3f6e", "sha256": "d7daf7dfedba5222412a5e007fa829efddb704e5cb87cd37d4e26d06e18c7378" }, "downloads": -1, "filename": "django-bundles-0.3.1.tar.gz", "has_sig": false, "md5_digest": "f0f5a3d96a768e3243c8e2b3179e3f6e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13919, "upload_time": "2013-08-30T16:24:47", "url": "https://files.pythonhosted.org/packages/e9/0e/285b30f8888d8b2f7a8051a5104eb09f1463b93ab8d246d89e01c7cc7762/django-bundles-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "4e6a2c562233062f29964656f0a26801", "sha256": "1221b92fb3b4815bc93d7d56955d3acb70b2dd19814efe6f5c5e79f653e9185c" }, "downloads": -1, "filename": "django-bundles-0.3.2.tar.gz", "has_sig": false, "md5_digest": "4e6a2c562233062f29964656f0a26801", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13923, "upload_time": "2013-09-03T09:30:35", "url": "https://files.pythonhosted.org/packages/96/8c/ba27565139093a1be5b9003e43103e6096b9074ed9ae5a23bee4e3c5b735/django-bundles-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "6b9bcd1e5ee3140c831ed4d320bf9535", "sha256": "58fef0d6abc579b447084278bcdb1c8f70f43999c1eaca11a64a7af3553fb983" }, "downloads": -1, "filename": "django-bundles-0.3.3.tar.gz", "has_sig": false, "md5_digest": "6b9bcd1e5ee3140c831ed4d320bf9535", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14109, "upload_time": "2013-09-04T15:12:08", "url": "https://files.pythonhosted.org/packages/59/88/54ba803a2a57132992da458f2f93ce2beb29e3fa0e8d0d660dc909b25cd6/django-bundles-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "abfa64d60ff0d8d95526f9d21afbc1cb", "sha256": "1048e5e105a11263e610127893f2eabc147cd8867dd0012079c3cd7862ceaba7" }, "downloads": -1, "filename": "django-bundles-0.3.4.tar.gz", "has_sig": false, "md5_digest": "abfa64d60ff0d8d95526f9d21afbc1cb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14301, "upload_time": "2013-09-05T09:56:47", "url": "https://files.pythonhosted.org/packages/e3/11/d8c9583e41826392587cc0d1495698ad05d96cf45b1bcb2f27baa049cb73/django-bundles-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "7c1aeb29beb289654ad9bad584a08230", "sha256": "117dc3a423c21b686761ae0b3451ebb0a628ae9fa167d148a2e865d41e007380" }, "downloads": -1, "filename": "django-bundles-0.3.5.tar.gz", "has_sig": false, "md5_digest": "7c1aeb29beb289654ad9bad584a08230", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14299, "upload_time": "2013-09-11T10:17:24", "url": "https://files.pythonhosted.org/packages/5d/96/d5076c56b7fd510f99eee5dc32f7da48300545ec7cda045c01d87335815a/django-bundles-0.3.5.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "1978a321d7c8a5a20ee3ece2389ad429", "sha256": "586bd376927424e7a1846cc2df9477d0e2e533eacd304a00564f09daf70e5e69" }, "downloads": -1, "filename": "django-bundles-0.4.0.tar.gz", "has_sig": false, "md5_digest": "1978a321d7c8a5a20ee3ece2389ad429", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14855, "upload_time": "2013-10-25T10:20:59", "url": "https://files.pythonhosted.org/packages/9d/d9/e2163a3c086d6f6e9b692cdfc2b2efc2ebb404301acdd395158d7b2f0248/django-bundles-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "110e3f5424942c1b440bf54570b4a3fd", "sha256": "b1a33692cf2ea6fce8caf75b471f79fb8a6f86c8c3ffc6dacb3332e2d8dbb1ce" }, "downloads": -1, "filename": "django-bundles-0.4.1.tar.gz", "has_sig": false, "md5_digest": "110e3f5424942c1b440bf54570b4a3fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15186, "upload_time": "2013-12-09T16:18:44", "url": "https://files.pythonhosted.org/packages/29/45/f8ca6ee9884a203077ae6a6dda560a3c2dc326574c8c5eb63554e20b18fd/django-bundles-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "a8a518778c0611aa76aeeea2d64b5e01", "sha256": "f8484e7ea203a82e7a985140e5b9f399d39aa2408391a85dd6cb99c235e2f1fc" }, "downloads": -1, "filename": "django-bundles-0.4.2.tar.gz", "has_sig": false, "md5_digest": "a8a518778c0611aa76aeeea2d64b5e01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15192, "upload_time": "2014-05-21T17:26:39", "url": "https://files.pythonhosted.org/packages/fd/ab/2d408df1939f95fe06b78415f9b541e555aafb9f059f27736739825830e1/django-bundles-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "3d9ae4d4db3047e6f2a8ae7ebf2a2443", "sha256": "43e86f3d30fa6246b23ef0b88bb71a6187f9312d1f8212759a90955a62644483" }, "downloads": -1, "filename": "django-bundles-0.4.3.tar.gz", "has_sig": false, "md5_digest": "3d9ae4d4db3047e6f2a8ae7ebf2a2443", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15203, "upload_time": "2014-07-02T15:42:14", "url": "https://files.pythonhosted.org/packages/22/51/915eab5326a8dbc879a0adc0950e019a1ca20e6591f6c654a65a3533f809/django-bundles-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "ebb10387fd5a5815e91438beaff1c832", "sha256": "dd4c02528da3d5431de6dc9823b6cd49e1bdd128d3883a83a0d3724e190d1ff4" }, "downloads": -1, "filename": "django-bundles-0.4.4.tar.gz", "has_sig": false, "md5_digest": "ebb10387fd5a5815e91438beaff1c832", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15456, "upload_time": "2014-07-21T17:04:16", "url": "https://files.pythonhosted.org/packages/ec/71/dcda5729911f2aa7aa85ea7d0444aad2441cd064dc0569124badb65b84cc/django-bundles-0.4.4.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "d92564abde1a7bb48c7eb2165dc7894b", "sha256": "f071678e1016bac3674685458a90488082a51d8c72c7a1c21540676e6225e298" }, "downloads": -1, "filename": "django-bundles-0.5.0.tar.gz", "has_sig": false, "md5_digest": "d92564abde1a7bb48c7eb2165dc7894b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15825, "upload_time": "2014-08-12T10:09:53", "url": "https://files.pythonhosted.org/packages/99/10/bcf489a74955caedad4ded5cba51a8a699bb1505bcc5ed86e79d16509d52/django-bundles-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "7c4817109943e071690aa1115fa66416", "sha256": "26f4042de92a7171d466123696d2ab37ded34342d3708edee073d1703dad0136" }, "downloads": -1, "filename": "django-bundles-0.6.0.tar.gz", "has_sig": false, "md5_digest": "7c4817109943e071690aa1115fa66416", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15612, "upload_time": "2014-08-22T08:06:33", "url": "https://files.pythonhosted.org/packages/59/09/3dabdb9f60cd29769cfebde6862a53b58f7b5f04490f13f011780e928845/django-bundles-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "2be5ea9fd74280010d696f1e9f9792c2", "sha256": "960886f881df13bef9bacfbe85a96d7895bdcb729569d0cc5e4b0f029cc34b34" }, "downloads": -1, "filename": "django-bundles-0.6.1.tar.gz", "has_sig": false, "md5_digest": "2be5ea9fd74280010d696f1e9f9792c2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15673, "upload_time": "2016-01-22T12:32:06", "url": "https://files.pythonhosted.org/packages/44/ee/0fee950560de1c71c8d86e687581aef878d5f06619750190d8c1eb692ff7/django-bundles-0.6.1.tar.gz" } ], "0.6.5": [ { "comment_text": "", "digests": { "md5": "72fb7b23b7b80f905cf8287017ea6572", "sha256": "08071b3bed016c61aa9456be6d955e15cd8c42d534656005dada3753877dce66" }, "downloads": -1, "filename": "django-bundles-0.6.5.tar.gz", "has_sig": false, "md5_digest": "72fb7b23b7b80f905cf8287017ea6572", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15958, "upload_time": "2016-02-04T15:52:53", "url": "https://files.pythonhosted.org/packages/56/51/12f184c137c18b87a9da6eff0063871f74046a129bbae7202d43222670c1/django-bundles-0.6.5.tar.gz" } ], "0.6.6": [ { "comment_text": "", "digests": { "md5": "444b35c6617206e10556eacb8f1c4b0c", "sha256": "8da5053972d70c40088bc9dc717eb7b28ec50bcc2b53d768a3bc2fc462a7b827" }, "downloads": -1, "filename": "django-bundles-0.6.6.tar.gz", "has_sig": false, "md5_digest": "444b35c6617206e10556eacb8f1c4b0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15975, "upload_time": "2016-02-04T16:47:17", "url": "https://files.pythonhosted.org/packages/8c/16/972dd0b8903ecf952cb1e21f3bd603e4d9b38b297f514173c00613af9327/django-bundles-0.6.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "444b35c6617206e10556eacb8f1c4b0c", "sha256": "8da5053972d70c40088bc9dc717eb7b28ec50bcc2b53d768a3bc2fc462a7b827" }, "downloads": -1, "filename": "django-bundles-0.6.6.tar.gz", "has_sig": false, "md5_digest": "444b35c6617206e10556eacb8f1c4b0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15975, "upload_time": "2016-02-04T16:47:17", "url": "https://files.pythonhosted.org/packages/8c/16/972dd0b8903ecf952cb1e21f3bd603e4d9b38b297f514173c00613af9327/django-bundles-0.6.6.tar.gz" } ] }