{ "info": { "author": "Will Kahn-Greene", "author_email": "willkg@mozilla.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "======\npuente\n======\n\n.. image:: puente_logo.jpg\n\nPuente is a Python library that handles l10n things for Django projects\nusing Jinja2 templates.\n\n* extract command to extract strings from your project and shove them into a\n ``.pot`` file\n* merge command that merges new strings from a ``.pot`` file into locale ``.po``\n files\n* code to collapse whitespace for Jinja2's trans block\n* add pgettext and npgettext to template environment and they correctly\n escape things and work the same way as Jinja2's newstyle gettext\n* configured using Django settings\n* solid documentation\n* solid tests\n\nThis is derived from `Tower `_, but heavily\nchanged.\n\n:Code: https://github.com/mozilla/puente/\n:Issues: https://github.com/mozilla/puente/issues\n:License: BSD 3-clause; See LICENSE\n:Contributors: See AUTHORS.rst\n:Documentation: https://puente.readthedocs.io/\n:IRC: #puente on irc.mozilla.org\n\n\nInstall\n=======\n\n>From PyPI\n---------\n\nRun::\n\n $ pip install puente\n\n\nFor hacking\n-----------\n\nRun::\n\n # Clone the repository\n $ git clone https://github.com/mozilla/puente\n\n # Create a virtualenvironment\n ...\n\n # Install Puente and dev requirements\n $ pip install -r requirements-dev.txt\n\n\nUsage\n=====\n\nSee `documentation ` for configuration and usage.\n\n\n\n\n=======\nHistory\n=======\n\n0.5 (March 3rd, 2017)\n=====================\n\n* Drop support for Django 1.7 and Jingo\n* Add support for Python 3.5 and 3.6\n* Add support for Django 1.9, 1.10 and 1.11b1 (#59) (Thank you, Thor K. H!)\n\n\n0.4.1 (December 10th, 2015)\n===========================\n\n* Add all the Django keywords for extraction (#53)\n\n\n0.4 (November 20th, 2015)\n=========================\n\n* Implement pgettext and npgettext (#45)\n* Remove undocumented STANDALONE_DOMAINS setting and fix extract/merge code (#44)\n* Add ngettext tests\n* Rework gettext code, clarify documentation and add tests (#42)\n* Project infrastructure fixes\n\n\n0.3 (November 5th, 2015)\n========================\n\n* add \"Translators:\" to the translator prefix list (#34)\n* make ``puente.ext.i18n`` be an alias for ``puente.ext.PuenteI18nExtension``\n* fix the gettext alias to be moar korrect (#35)\n* fix the jingo-related docs in regards to extensions (#35)\n* lots of changes to the Migrating from Tower document\n* fleshed out ``test_project_jingo`` so we can use it for development\n* fixed merge to handle ``LANGUAGES`` setting correctly\n* first pass on Python 3.4 support (pretty sure it works) (#15)\n* logo (#37)\n\n\n0.2 (October 30th, 2015)\n========================\n\n* fix requirements\n* remove mention of elasticutils in release process\n* fix meta information regarding python 3--we don't support that, yet\n\n\n0.1 (October 30th, 2015)\n========================\n\nInitial writing. Everything has changed!\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mozilla/puente", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "puente", "package_url": "https://pypi.org/project/puente/", "platform": "", "project_url": "https://pypi.org/project/puente/", "project_urls": { "Homepage": "https://github.com/mozilla/puente" }, "release_url": "https://pypi.org/project/puente/0.5.0/", "requires_dist": [ "babel (>=2.1.1)", "jinja2 (>=2.7)", "django (>=1.8)" ], "requires_python": "", "summary": "Strings extraction and other tools", "version": "0.5.0" }, "last_serial": 2680549, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "5b8bfebc263f08d608112ed3a148959c", "sha256": "d96e77ba423c67bccac316269d9957bacb3770d37256e6982de9d944ec7ffaef" }, "downloads": -1, "filename": "puente-0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5b8bfebc263f08d608112ed3a148959c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17731, "upload_time": "2015-10-30T17:09:09", "url": "https://files.pythonhosted.org/packages/da/db/b4e84099432fcd127c127317cbd5efadc6bf4fd67759bf6142f8abc6532e/puente-0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b6573c3da5f61a09dd48b180aa0d7574", "sha256": "4381f8a4eedab5ee34bef67f858e8f2ec6de8a33b40b602bbd529a289ff9f4cc" }, "downloads": -1, "filename": "puente-0.1.tar.gz", "has_sig": false, "md5_digest": "b6573c3da5f61a09dd48b180aa0d7574", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29888, "upload_time": "2015-10-30T17:09:16", "url": "https://files.pythonhosted.org/packages/68/73/d8353df533a57ab2f8ec74650da74b578692f00bf74d8bb29be0ad4e7b27/puente-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "d598c3dc089fabc33d47c5573b22a9b6", "sha256": "2bf8c9c1a3a1b2b7d62e60d117568994128c8b5469d65866afe6ab30ee818149" }, "downloads": -1, "filename": "puente-0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d598c3dc089fabc33d47c5573b22a9b6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17894, "upload_time": "2015-10-30T17:15:16", "url": "https://files.pythonhosted.org/packages/88/b8/3630c53e35a49a1941fbefea1292fb4b114c3da9662330c30c7b0360264f/puente-0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3ab57043daaff8581abdaba05e01da8b", "sha256": "1b0bc5e109a2d8e5c9434a46bb3a6d110e0d35dfdf131a23f07bbad23bd5522a" }, "downloads": -1, "filename": "puente-0.2.tar.gz", "has_sig": false, "md5_digest": "3ab57043daaff8581abdaba05e01da8b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29931, "upload_time": "2015-10-30T17:15:25", "url": "https://files.pythonhosted.org/packages/e1/c1/7348da4f10e3336e0004c6c7f59ac73868c2cdc549350d967746d666cb41/puente-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "fe1637b49e7abc8e583b95dc58d0af21", "sha256": "4c66413f5d0f61a07a370ad5f1d61bfa1094a8e27017dc4e51518b0413c79fff" }, "downloads": -1, "filename": "puente-0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fe1637b49e7abc8e583b95dc58d0af21", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18650, "upload_time": "2015-11-05T18:43:05", "url": "https://files.pythonhosted.org/packages/8e/18/19263b2c1fc4f1667b1039705f650f3e4e88db9c437509b6771966868d50/puente-0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "432a8e08b09c620302cdeb83fc29080a", "sha256": "ac808f2c98e87a037bd0030e59958efa675b1ecd674270481d0d8c6766d50223" }, "downloads": -1, "filename": "puente-0.3.tar.gz", "has_sig": false, "md5_digest": "432a8e08b09c620302cdeb83fc29080a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 167307, "upload_time": "2015-11-05T18:43:11", "url": "https://files.pythonhosted.org/packages/6e/55/38fed7c756e2b9b51a79cc82d9185b5a0259ff5e8bd0a7e4961e1e23c559/puente-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "8ea25943316672ae98ef67f66f78212c", "sha256": "141b8617a46d957429557694ea83dea4716ef58b38575d055fe2f6b711c5a6a9" }, "downloads": -1, "filename": "puente-0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8ea25943316672ae98ef67f66f78212c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 18648, "upload_time": "2015-11-20T21:49:56", "url": "https://files.pythonhosted.org/packages/33/aa/71dcfc167053c8f4867b5626abe92fae930478f033699aa5a8cc07fdde67/puente-0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5e03a6bff96b178533bd15b6e9a012f0", "sha256": "547ee857ac759c62377701e2e4da38bfd693065c20a27811c81982c418eaf9f8" }, "downloads": -1, "filename": "puente-0.4.tar.gz", "has_sig": false, "md5_digest": "5e03a6bff96b178533bd15b6e9a012f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 124493, "upload_time": "2015-11-20T21:50:18", "url": "https://files.pythonhosted.org/packages/74/5a/5475334bacdc816345a501c1f3cf74ee57f1be4005a68441211532d6175d/puente-0.4.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "82135edf10b755a861a425e3d62d8fd4", "sha256": "bc5ee85521127577d23430832e2f827686efdb7ce95b232f54fbeb5b9166397c" }, "downloads": -1, "filename": "puente-0.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "82135edf10b755a861a425e3d62d8fd4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 19063, "upload_time": "2015-12-10T20:54:19", "url": "https://files.pythonhosted.org/packages/6b/3c/5d7613393a8c0c77e46e520970dc0f2e6853147a84d17d6c73fe4593c3e7/puente-0.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e4a360d22f3c164ed2f5372d26d012d9", "sha256": "84f769c0ea607829c77bd8b3d6d6fbc16589cd7a5d4e5023f717cd3d5de54473" }, "downloads": -1, "filename": "puente-0.4.1.tar.gz", "has_sig": false, "md5_digest": "e4a360d22f3c164ed2f5372d26d012d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 124927, "upload_time": "2015-12-10T20:54:26", "url": "https://files.pythonhosted.org/packages/10/c4/7b8dd5af4c048d1a24b9d573b16cb0e3da77b22bc2152dae0a5d31cd3224/puente-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "0b0dcb7201c2c851bb0292f61e61c9fa", "sha256": "7ba1d07f9cee9657adf874bd94879b343fea81a783fdfa8e53885520477bf1ea" }, "downloads": -1, "filename": "puente-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0b0dcb7201c2c851bb0292f61e61c9fa", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 19222, "upload_time": "2017-03-03T14:19:06", "url": "https://files.pythonhosted.org/packages/42/53/6dfe02bb5c308e1fd645d36ee6bd9e0d7e586ec726f9055eff3012034f91/puente-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1e4e2e9717cccf9df42e3ea92d46db74", "sha256": "4a17958f7d6a83cb9ff92593c40f34911abafaec6ad959916b754aaa3869f11f" }, "downloads": -1, "filename": "puente-0.5.0.tar.gz", "has_sig": false, "md5_digest": "1e4e2e9717cccf9df42e3ea92d46db74", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 123568, "upload_time": "2017-03-03T14:19:08", "url": "https://files.pythonhosted.org/packages/5b/0e/1ff1be1e6238d737dc760d635017a999a4a7951cc8b59d0d7c23b7c57979/puente-0.5.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0b0dcb7201c2c851bb0292f61e61c9fa", "sha256": "7ba1d07f9cee9657adf874bd94879b343fea81a783fdfa8e53885520477bf1ea" }, "downloads": -1, "filename": "puente-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0b0dcb7201c2c851bb0292f61e61c9fa", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 19222, "upload_time": "2017-03-03T14:19:06", "url": "https://files.pythonhosted.org/packages/42/53/6dfe02bb5c308e1fd645d36ee6bd9e0d7e586ec726f9055eff3012034f91/puente-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1e4e2e9717cccf9df42e3ea92d46db74", "sha256": "4a17958f7d6a83cb9ff92593c40f34911abafaec6ad959916b754aaa3869f11f" }, "downloads": -1, "filename": "puente-0.5.0.tar.gz", "has_sig": false, "md5_digest": "1e4e2e9717cccf9df42e3ea92d46db74", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 123568, "upload_time": "2017-03-03T14:19:08", "url": "https://files.pythonhosted.org/packages/5b/0e/1ff1be1e6238d737dc760d635017a999a4a7951cc8b59d0d7c23b7c57979/puente-0.5.0.tar.gz" } ] }