{ "info": { "author": "Stephan Fitzpatrick", "author_email": "knowsuchagency@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "========\nninjadog\n========\n\n\n.. image:: https://img.shields.io/pypi/v/ninjadog.svg\n :target: https://pypi.org/project/ninjadog/\n\n.. image:: https://img.shields.io/travis/knowsuchagency/ninjadog.svg\n :target: https://travis-ci.org/knowsuchagency/ninjadog\n\n.. image:: https://pyup.io/repos/github/knowsuchagency/ninjadog/shield.svg\n :target: https://pyup.io/repos/github/knowsuchagency/ninjadog/\n :alt: Updates\n\n\n`Pug`_ template (formerly `jade`_) support in Python\n\n\n* Free software: MIT license\n* Documentation: http://journalpanic.com/ninjadog\n* GitHub: https://github.com/knowsuchagency/ninjadog\n\n\n\nInstallation\n------------\n\nninjadog requires Python 3, node-js, npm, and the `pug-cli`_ library\n\n::\n\n brew install npm\n npm install -g pug-cli\n pip install ninjadog\n\n\nFor use with `Pyramid`_, just add it to the configuration\n\n.. code-block:: python\n\n config.include('ninjadog')\n\n\nUsage\n-----\n\nninjadog leverages the `pug-cli`_ library, written in nodejs, to render\n`pug`_ templates in Python.\n\nIt allows you to take something like this\n\n.. code-block:: pug\n\n html\n head\n title my pug template\n body\n #content\n h1 Hello #{name}\n .block\n input#bar.foo1.foo2\n input(type=\"text\", placeholder=\"your name\")\n if name == \"Bob\"\n h2 Hello Bob\n ul\n for book in books\n li= book\n else\n li sorry, no books\n\n\nand sprinkle some Python over it\n\n.. code-block:: python\n\n from ninjadog import render\n\n context = {\n 'name': 'Bob',\n 'books': ['coloring book', 'audio book', \"O'Reilly book\"],\n 'type': 'text',\n }\n\n print(render(file=filepath, context=context, pretty=True))\n\nto render this\n\n.. code-block:: html\n\n \n \n \n my pug template\n \n \n
\n

Hello Bob

\n
\n \n \n

Hello Bob

\n \n
\n
\n \n \n\n\nYou can even combine `jinja2`_ syntax for unparalleled\ntemplate-rendering power.\n\n.. code-block:: python\n\n\n from ninjadog import render\n\n\n def stop_believing():\n return False\n\n\n context = {\n 'stop_believing': stop_believing,\n 'happy': {\n 'birthday': 'today',\n }\n }\n\n template_string = \"\"\"\n h1 hello, world\n if happy.birthday == 'today'\n p it's time to celebrate!\n p {{ \"Don't\" if not stop_believing() }} stop believing\n \"\"\"\n\n print(render(template_string,\n context=context,\n pretty=True,\n with_jinja=True))\n\n\n\n.. code-block:: html\n\n

hello, world

\n

it's time to celebrate!

\n

Don't stop believing

\n\n\nWhy?\n----\n\n`Pug`_ templates are a super elegant and expressive way to write\nhtml, IMO.\n\nThere exists a project, `pyjade`_ and a less-popular fork, `pypugjs`_,\nthat are pure-python implementations of the pug template engine,\nbut they have some minor bugs and the maintenance is a bit lacking.\n\nI figured it would be good to have an alternative method to render\n`pug`_ templates that used the native javascript rendering engine.\n\nninjadog does this by spawning the `pug cli`_ as a subprocess.\nThis means that it can't be as fast as a native template engine\nlike `pyjade`_, but it will likely be more reliable over time as\nit's leveraging the popular and well-maintained nodejs implementation.\n\n\nGotchas\n-------\n\nCurrently, rendering a template with `jinja2`_ syntax goes through the following process:\n\n1. Render elements on the initial template through `jinja2`_\n2. Pass the output to the `pug-cli`_, gathering extensions and inclusions in the process\n3. Render the output through `jinja2`_ again, since the original template may have extended or included other templates that countained `jinja2`_ syntax themselves.\n\nWhat this means is that if you want to escape `jinja2`_ syntax, you need to do it twice.\n\nFor example, to have a literal ``{{ escaping inception }}`` rendered,\nyou'll need to have ``{{ \"{{ '{{ escaping inception }}' }}\" }}`` in your template.\n\n\u5bf9\u4e0d\u8d77\n\n\n.. _pug: https://pugjs.org/api/getting-started.html\n.. _jade: https://naltatis.github.io/jade-syntax-docs/\n.. _pyjade: https://github.com/syrusakbary/pyjade\n.. _pypugjs: https://github.com/matannoam/pypugjs\n.. _pug-cli: https://www.npmjs.com/package/pug-cli\n.. _pug cli: https://www.npmjs.com/package/pug-cli\n.. _jinja2: http://jinja.pocoo.org/\n.. _jinja 2: http://jinja.pocoo.org/\n.. _pyramid: https://trypyramid.com/\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/knowsuchagency/ninjadog", "keywords": "ninjadog", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "ninjadog", "package_url": "https://pypi.org/project/ninjadog/", "platform": "", "project_url": "https://pypi.org/project/ninjadog/", "project_urls": { "Homepage": "https://github.com/knowsuchagency/ninjadog" }, "release_url": "https://pypi.org/project/ninjadog/0.5.2/", "requires_dist": null, "requires_python": "", "summary": "Pug template support in Python", "version": "0.5.2" }, "last_serial": 3010567, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "fb6a0e03be0dc84fc246cbf6d8032534", "sha256": "9656bacc84aa0525fc2bf02cf70275ac7c4bb042384806a05abdc3da459548b1" }, "downloads": -1, "filename": "ninjadog-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fb6a0e03be0dc84fc246cbf6d8032534", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10214, "upload_time": "2017-06-22T07:44:38", "url": "https://files.pythonhosted.org/packages/ce/b2/0be06144276a3214388fc48386339a15e4c44d99826ff668e5d4a47de280/ninjadog-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f5541908cfb2024966a881b0fec89677", "sha256": "387102d5bcc42f412a20ab81360a26aa0c1737a6261717db53da0152c0e8a5ba" }, "downloads": -1, "filename": "ninjadog-0.1.0.tar.gz", "has_sig": false, "md5_digest": "f5541908cfb2024966a881b0fec89677", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21437, "upload_time": "2017-06-22T07:44:35", "url": "https://files.pythonhosted.org/packages/9e/2b/3cf198470d5f5b40401052c43024b380992244cde544d99e37c54ce01fd8/ninjadog-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "572bd9f07de6ee8ecd9f3ce9936eac39", "sha256": "8ff020fb01e27ceeaac029067d6c3754be7b4135e25ab45c48f8c1efe8cecb57" }, "downloads": -1, "filename": "ninjadog-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "572bd9f07de6ee8ecd9f3ce9936eac39", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10147, "upload_time": "2017-06-22T20:43:32", "url": "https://files.pythonhosted.org/packages/58/d3/3dc2e6c074f294547e933deae85c190579b4a8809fcb0325fc915166248a/ninjadog-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9843c58f25dddfa448d38cae7b8878f5", "sha256": "d99afe9cc3ec7532edbe363f7f158922ba01e16f8dea18db0b22eac145f4ceaa" }, "downloads": -1, "filename": "ninjadog-0.1.1.tar.gz", "has_sig": false, "md5_digest": "9843c58f25dddfa448d38cae7b8878f5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103388, "upload_time": "2017-06-22T20:39:38", "url": "https://files.pythonhosted.org/packages/5d/0e/bd92fb0d3089d4a02d264017d39ac717e257104f87d84254195539ad356c/ninjadog-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "481e1df8126b8506b4c634c1e4fec225", "sha256": "2dbc3b3febbf60bcf97e0bd1f2ef8fe02e558ec847b0d60881355f5b9d00aa4f" }, "downloads": -1, "filename": "ninjadog-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "481e1df8126b8506b4c634c1e4fec225", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10199, "upload_time": "2017-06-23T00:13:36", "url": "https://files.pythonhosted.org/packages/b0/8a/162c05f7a78d32c9d9f14c2a009fa105224fd7892b7ec7a60e26b15afe51/ninjadog-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3ebccdbdaed6bc8b9f5b57b4f825468c", "sha256": "c5eb0db138a94a6cc7618ba5661166ae3199ce000efda71922d12ed2780b0cd3" }, "downloads": -1, "filename": "ninjadog-0.1.2.tar.gz", "has_sig": false, "md5_digest": "3ebccdbdaed6bc8b9f5b57b4f825468c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103406, "upload_time": "2017-06-23T00:12:59", "url": "https://files.pythonhosted.org/packages/9a/f6/4370a19b613af5ee78b8bbe6940b680ae552169e13a22cab778754e596c2/ninjadog-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "1302b02e3752cdd526900853c1450118", "sha256": "bcfef64464b9edc8359abf730391df84838ab96ae159a6a0dd3be18aaeee68bd" }, "downloads": -1, "filename": "ninjadog-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1302b02e3752cdd526900853c1450118", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 11105, "upload_time": "2017-06-23T01:57:54", "url": "https://files.pythonhosted.org/packages/7c/03/38f32b7d3eab08b10f6d93839e5654eddbdff6a6ab7490eaff1a6f27bb75/ninjadog-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e4c62709778549eb304c5ddf880a4740", "sha256": "9cbaf67477c87fa2b585820951e58fd259f2c039644a75dcfb0ee0222f10d373" }, "downloads": -1, "filename": "ninjadog-0.1.3.tar.gz", "has_sig": false, "md5_digest": "e4c62709778549eb304c5ddf880a4740", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104064, "upload_time": "2017-06-23T01:57:52", "url": "https://files.pythonhosted.org/packages/2f/ce/92a5dccef32e6ec1defadc7c22511ddeefb1b8cbcba6de5879bb104985b0/ninjadog-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "c5235723de152e2bba8f45b42d118dbf", "sha256": "ae4ed385a33bf047f41675c836823519b098b8a877791e29472c0accc393f264" }, "downloads": -1, "filename": "ninjadog-0.1.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c5235723de152e2bba8f45b42d118dbf", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 11177, "upload_time": "2017-06-23T23:53:32", "url": "https://files.pythonhosted.org/packages/ca/bd/4c8ee0ec4fb052a45133f9fe3fc891a001470011838f30c1aa18f9160bd4/ninjadog-0.1.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "28b31b9fc6daec2c93db1909e1a2f61f", "sha256": "f2c7d1317fd8cd4c37abbfea30830148e3f7486528384cf1276ea724e1166e0f" }, "downloads": -1, "filename": "ninjadog-0.1.4.tar.gz", "has_sig": false, "md5_digest": "28b31b9fc6daec2c93db1909e1a2f61f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104123, "upload_time": "2017-06-23T23:53:28", "url": "https://files.pythonhosted.org/packages/22/b6/0073372e0498d0980c06c5355c2db57cd6384bd7ff83c0aae8b2690627b5/ninjadog-0.1.4.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "5b2a45c3a13d5bc6a64c025c8cec012d", "sha256": "b4385d042cfe2dd9762500753e4bb6f1a4c267c5eee5aaa8ea5bfb1f61b9ff8a" }, "downloads": -1, "filename": "ninjadog-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5b2a45c3a13d5bc6a64c025c8cec012d", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10505, "upload_time": "2017-06-25T07:00:23", "url": "https://files.pythonhosted.org/packages/32/35/68c45a21ef179daf0f439a937ad1c5aea745b66b8d6ba3f18656c8b93e88/ninjadog-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "151da51e367d0ec469719a35534c2142", "sha256": "30807101ece102cf9f4d40f11780ae9bf1f96e57c4592ac8a4b929cb6fa77523" }, "downloads": -1, "filename": "ninjadog-0.2.0.tar.gz", "has_sig": false, "md5_digest": "151da51e367d0ec469719a35534c2142", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103603, "upload_time": "2017-06-25T06:58:59", "url": "https://files.pythonhosted.org/packages/36/9f/cb21c2b173cc88299e946fc4c75d8461ec0f2cc76e19e9f706cf78f15354/ninjadog-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "d143265d8c30e2fb0bc31cf542aa16f5", "sha256": "19474ff0255a5107e0560b59521a0ba3e04ea1bc5e3b78e02c6931d6f55c3a7e" }, "downloads": -1, "filename": "ninjadog-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d143265d8c30e2fb0bc31cf542aa16f5", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10625, "upload_time": "2017-06-26T03:04:42", "url": "https://files.pythonhosted.org/packages/9b/65/2ff5d57b7d90666e2616b2bfa52b4a9f0a42cae23229065d78076ffbf6d8/ninjadog-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5c6bb37dba79781f272eed14393d6b3a", "sha256": "1c400b5b98e2c65e1c8c459a57aaf0e6a14c95471ffd964800dabda914ca1804" }, "downloads": -1, "filename": "ninjadog-0.2.1.tar.gz", "has_sig": false, "md5_digest": "5c6bb37dba79781f272eed14393d6b3a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104064, "upload_time": "2017-06-26T03:04:40", "url": "https://files.pythonhosted.org/packages/70/d7/31fd5c6fc5a071d0464e050aff53bd055a2ec241fb910b18f1e9b20cb687/ninjadog-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "3043c458ecd2bb6472b65aaa4a4b2f32", "sha256": "6153cbc461c1b2aea5b257a0ddd2f0ad7a10c3f4cb8f70b2a9da4d47be557b06" }, "downloads": -1, "filename": "ninjadog-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3043c458ecd2bb6472b65aaa4a4b2f32", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10653, "upload_time": "2017-06-26T16:49:32", "url": "https://files.pythonhosted.org/packages/9c/8e/427f1219e161a3cc2c44cca3ef6f09a8a1e2ae1939814f4eb7fb3b97ceaf/ninjadog-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "49f2a3f510b99edb77471d636db10d07", "sha256": "2d91920bad8a5a422c31896fae7bc8f0f74aca2697c4e4e71b45ed3d1b716e4c" }, "downloads": -1, "filename": "ninjadog-0.2.2.tar.gz", "has_sig": false, "md5_digest": "49f2a3f510b99edb77471d636db10d07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104206, "upload_time": "2017-06-26T16:49:29", "url": "https://files.pythonhosted.org/packages/ea/67/40e7c61a9aa7b00ba2e0d5cfd6fdf01155b4b09881e82deb63952c35f9b5/ninjadog-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "30379191906bd86ade03c91f33392c10", "sha256": "dbf4df90ef06a778c77a5263050454aebd2135c5f253d2900f55586b1a90f0ba" }, "downloads": -1, "filename": "ninjadog-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "30379191906bd86ade03c91f33392c10", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10660, "upload_time": "2017-06-27T06:45:20", "url": "https://files.pythonhosted.org/packages/28/c9/9850f799b67279572f054d4752b10ee061e95f42e732d10a86dcc5da270f/ninjadog-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a3c13ec3136997fdbbc0b0eb4a67da7a", "sha256": "dde5186a1508f97c16165d900815d9cde64b3cd7830ae4ce6f7ab8c1f5a7719a" }, "downloads": -1, "filename": "ninjadog-0.3.0.tar.gz", "has_sig": false, "md5_digest": "a3c13ec3136997fdbbc0b0eb4a67da7a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103822, "upload_time": "2017-06-27T06:45:16", "url": "https://files.pythonhosted.org/packages/69/15/cf5c414195fea10ff23e603b14b410b03b5a37b80d79a3caf1bddd8587a7/ninjadog-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "2ba09a7cb4507d4392b9a24e842988c6", "sha256": "f7df690fedb0171c108cce83d693ac8fae1c8afc61766ef9bae8d9452b3cbedd" }, "downloads": -1, "filename": "ninjadog-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2ba09a7cb4507d4392b9a24e842988c6", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 11113, "upload_time": "2017-06-27T06:59:27", "url": "https://files.pythonhosted.org/packages/d3/23/1b3817a05e65e4d13776ee057b4658c0f08a098a111218962cf4715b5746/ninjadog-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "80f076f51002eef5620b1eb5d825f4a5", "sha256": "1f4dba8d12e17dfcca5fdebb008d5096bf89ccfd167247ff1c873c578843996a" }, "downloads": -1, "filename": "ninjadog-0.3.1.tar.gz", "has_sig": false, "md5_digest": "80f076f51002eef5620b1eb5d825f4a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 104059, "upload_time": "2017-06-27T06:59:24", "url": "https://files.pythonhosted.org/packages/ad/5e/204c829895b22fac918ed8e4171d09bbbd30ed21ca66281ae533b9b316d1/ninjadog-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "7caf7a22b33670d2ee18b819481ae654", "sha256": "5df1a4996124c05797f32e2db35e6a889c9589c82210fc7ff42e005a7837adf7" }, "downloads": -1, "filename": "ninjadog-0.3.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7caf7a22b33670d2ee18b819481ae654", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10923, "upload_time": "2017-06-27T20:27:34", "url": "https://files.pythonhosted.org/packages/18/56/027df0cb3f1f935343016391f7c47431784ceefe99746462958f3a9b64e1/ninjadog-0.3.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5a082f1ef8ea11a1a4dc84e28bc2aca3", "sha256": "a819239d384c60ec47deb66c65e6628b83c87e33d956d8115438db1fa4ccb714" }, "downloads": -1, "filename": "ninjadog-0.3.2.tar.gz", "has_sig": false, "md5_digest": "5a082f1ef8ea11a1a4dc84e28bc2aca3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 102642, "upload_time": "2017-06-27T20:27:32", "url": "https://files.pythonhosted.org/packages/64/f0/ff4b3c0765376d87b3e2cdc1a00710d3bfeedcfde1b82dd512a5a6061b61/ninjadog-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "5f73530f074c277c75cdba4f627bccbd", "sha256": "577513819a3af4744508db186a3ca1f036ba002c25fa37dea1582f88efb6f6de" }, "downloads": -1, "filename": "ninjadog-0.3.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5f73530f074c277c75cdba4f627bccbd", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10898, "upload_time": "2017-06-27T23:44:27", "url": "https://files.pythonhosted.org/packages/b6/e2/1060f8da1faeb687d9818aa32428a1721d064fa0a426254a29e0a06d62a7/ninjadog-0.3.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8b7cfd5694d42795a279297b702e5cc5", "sha256": "f560dc664bf7b6ff94f0e1c98720b21f966b1ebe96703e7bfca1ef2df0e2a25d" }, "downloads": -1, "filename": "ninjadog-0.3.3.tar.gz", "has_sig": false, "md5_digest": "8b7cfd5694d42795a279297b702e5cc5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 102808, "upload_time": "2017-06-27T23:44:24", "url": "https://files.pythonhosted.org/packages/40/47/76a757ec5c5ecf1b639f43d17696e4699cd3f33b9e49f1d88315fc52550e/ninjadog-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "3b251f149b4aa279f3ced010294f5430", "sha256": "638759f96690671ef8b471d9f1be13f587387f1019e5507852f8a7df7e29ecc2" }, "downloads": -1, "filename": "ninjadog-0.3.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3b251f149b4aa279f3ced010294f5430", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10496, "upload_time": "2017-06-28T04:24:02", "url": "https://files.pythonhosted.org/packages/51/f2/e981e39fbfea12febabbcb7a114d322fe2179ec475c41d3d1cc1780ea27a/ninjadog-0.3.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a78956e85fd2915437b0744aae881de6", "sha256": "90f271682a49ea485d06c423926b1cef71c6846e786820b69be32e12c6c7e5be" }, "downloads": -1, "filename": "ninjadog-0.3.4.tar.gz", "has_sig": false, "md5_digest": "a78956e85fd2915437b0744aae881de6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 102784, "upload_time": "2017-06-28T04:23:59", "url": "https://files.pythonhosted.org/packages/b7/41/72bfb5f738ff5a1c6b393877de15ef353ffc0640bf8c1fcd4c359fe0c801/ninjadog-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "f48412d517b3b017cb24da98ade48ee1", "sha256": "cc0ae74abf7e98b573d280407ae2b038084788b8e40227ca496575660966b6fd" }, "downloads": -1, "filename": "ninjadog-0.3.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f48412d517b3b017cb24da98ade48ee1", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10909, "upload_time": "2017-06-28T06:17:21", "url": "https://files.pythonhosted.org/packages/59/24/51fc0b957825fb33d4d043f6844d0e7d1299ce1e34052fda17e451a57f3d/ninjadog-0.3.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b11d2aa619a7d72f5a7b739653e1d5e5", "sha256": "f58acce425dece0811f58c943bd621dbdd7b56f0b9b363d9e5510cd12928d44d" }, "downloads": -1, "filename": "ninjadog-0.3.5.tar.gz", "has_sig": false, "md5_digest": "b11d2aa619a7d72f5a7b739653e1d5e5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 282815, "upload_time": "2017-06-28T06:17:18", "url": "https://files.pythonhosted.org/packages/3c/21/6448bd77e1be372a56b92d30d0c947c1dfa626b37329d878cf3d6d4c4057/ninjadog-0.3.5.tar.gz" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "69bb3ff35bdbcc8dab8f3dca084a42ee", "sha256": "5b00eafebb997eb1cef35a9316e3b558eef9168ef2f94cf2e045a6729dce9094" }, "downloads": -1, "filename": "ninjadog-0.3.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "69bb3ff35bdbcc8dab8f3dca084a42ee", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10878, "upload_time": "2017-06-28T06:35:59", "url": "https://files.pythonhosted.org/packages/fd/06/f93c352822c66e3671b3d73ce27b1bd060f50ae9d4d5dfef4d9943a7f630/ninjadog-0.3.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e4a6e5d6494243189e8be1657cccb3df", "sha256": "51ed205b6b0e480226ffbb59eaf5b091263b0a249d1397660bb69500ed6ad347" }, "downloads": -1, "filename": "ninjadog-0.3.6.tar.gz", "has_sig": false, "md5_digest": "e4a6e5d6494243189e8be1657cccb3df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 282360, "upload_time": "2017-06-28T06:35:56", "url": "https://files.pythonhosted.org/packages/15/c6/df81c9a3a3d6a1311cd351cc0289f68334284b3aefda4a90dedd1756d2b2/ninjadog-0.3.6.tar.gz" } ], "0.3.7": [ { "comment_text": "", "digests": { "md5": "f717fdd295474849985e57af98ff7ca0", "sha256": "27fffed555f4802df7447e98c286ab21169c84cf574ed13ce1b505e25c17868f" }, "downloads": -1, "filename": "ninjadog-0.3.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f717fdd295474849985e57af98ff7ca0", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10874, "upload_time": "2017-06-28T06:45:24", "url": "https://files.pythonhosted.org/packages/56/31/6e89ce9b2550059fab7f4666f3317333c99f540282350a6ae768d44b7cd6/ninjadog-0.3.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "56441bf54a0ba0e1ee716b4807040cc4", "sha256": "9900981e2a028e6cabb8461e2fefed622285245f8b89177c2fff8c4ee2dc3c27" }, "downloads": -1, "filename": "ninjadog-0.3.7.tar.gz", "has_sig": false, "md5_digest": "56441bf54a0ba0e1ee716b4807040cc4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 282341, "upload_time": "2017-06-28T06:45:21", "url": "https://files.pythonhosted.org/packages/f3/96/294bda7e0a6511dd2215e32612da9d2c08cb7f9cb4b8fd0f91240594e018/ninjadog-0.3.7.tar.gz" } ], "0.3.8": [ { "comment_text": "", "digests": { "md5": "35c0b5520b287bf9fe83f477e0d8d80f", "sha256": "782ab5cc8372f8ec435f034e5444b3f112a0408cdfcef481aa8239256360002d" }, "downloads": -1, "filename": "ninjadog-0.3.8-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "35c0b5520b287bf9fe83f477e0d8d80f", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 11946, "upload_time": "2017-06-28T16:50:12", "url": "https://files.pythonhosted.org/packages/07/db/b77a4d8699defd073190e6d59283bebf9a65b566d8cde55c89d129c8b969/ninjadog-0.3.8-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "704866264b081d4de51492ca03d25d2f", "sha256": "02784d1a7e44c737ce8aded61b89a1b4debd6e32db3830211acbb9d4f3650141" }, "downloads": -1, "filename": "ninjadog-0.3.8.tar.gz", "has_sig": false, "md5_digest": "704866264b081d4de51492ca03d25d2f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 283437, "upload_time": "2017-06-28T16:50:09", "url": "https://files.pythonhosted.org/packages/8e/f3/8cd7b9aca05a08859254afcc9b7f52b2f14078a2d06d6d679f88a14aaaf4/ninjadog-0.3.8.tar.gz" } ], "0.3.9": [ { "comment_text": "", "digests": { "md5": "7d186affb39ae26ce4a438ca7120067f", "sha256": "faa75f3b4e126322ca564273d08e373f0d1df73f2d126ec94f4dc7c08c5fa959" }, "downloads": -1, "filename": "ninjadog-0.3.9-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7d186affb39ae26ce4a438ca7120067f", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10858, "upload_time": "2017-06-28T17:11:19", "url": "https://files.pythonhosted.org/packages/e7/bb/2514940b2dae1b2f7f54d3a37a65df3c7a0cbd1b3c685a0a133557072e1b/ninjadog-0.3.9-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f276e23b474233d2b894a8a3fd1b0674", "sha256": "81b6f79ffc8ebd88013e08458a4776aa2938257ad1c1fb2ce0d172f7a3a9b93f" }, "downloads": -1, "filename": "ninjadog-0.3.9.tar.gz", "has_sig": false, "md5_digest": "f276e23b474233d2b894a8a3fd1b0674", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 282922, "upload_time": "2017-06-28T17:11:14", "url": "https://files.pythonhosted.org/packages/a9/8f/ad82ae5956bbbd77894d4da460dab26bcf07914d546fb3a5c265d6a5f6e8/ninjadog-0.3.9.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "3891b7a8df594a370c52c62fc89ac260", "sha256": "8dc86c45cc50aa331c6350494ce833d9b9022098698d9bb971ce9b96874bad91" }, "downloads": -1, "filename": "ninjadog-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3891b7a8df594a370c52c62fc89ac260", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 10923, "upload_time": "2017-06-30T01:05:58", "url": "https://files.pythonhosted.org/packages/45/a5/f44be758a25d04b481c7cbf80700fd8a650c80886afc76b7f41c6aca9421/ninjadog-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9058f520ac0af0c35022ee85ee9227e3", "sha256": "8213bf207ab29bc0fa5ab714fd94fb134fb95e970ef7e80ff067ec61d2bc2690" }, "downloads": -1, "filename": "ninjadog-0.4.0.tar.gz", "has_sig": false, "md5_digest": "9058f520ac0af0c35022ee85ee9227e3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 285495, "upload_time": "2017-06-30T01:05:54", "url": "https://files.pythonhosted.org/packages/2b/a6/f5635b85e5715b95f8f4a65b3e559aa424df2666fc17dc0b6c2be02f2d0e/ninjadog-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "c679aa4764622de77d0622d53a64eb25", "sha256": "847f5c2a9da33f158697747d20f3c82025fcc747a24095ffc2a2739e9d3b705a" }, "downloads": -1, "filename": "ninjadog-0.4.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c679aa4764622de77d0622d53a64eb25", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 11355, "upload_time": "2017-07-01T23:05:59", "url": "https://files.pythonhosted.org/packages/60/13/d18438b8502d4e39ffab05a039861b2bc9ac03703aff7965cda2aaeb7ea5/ninjadog-0.4.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a99cfc04eb47786a5a62aa4764624650", "sha256": "73c19b5a41eb1f89329d84d7f68d3de56e5dc4114f180a481e707a34229b0b69" }, "downloads": -1, "filename": "ninjadog-0.4.1.tar.gz", "has_sig": false, "md5_digest": "a99cfc04eb47786a5a62aa4764624650", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 287443, "upload_time": "2017-07-01T23:05:55", "url": "https://files.pythonhosted.org/packages/f3/0f/503202ff0f9f2ab146108145efa790032e3bce59803b54e5d8624967eb6b/ninjadog-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "e25a5d41e2071378a2462af404e3eacb", "sha256": "4253cbca7a58a3fd72201b63e245388548fb27a338fda797d4de92f460cc990c" }, "downloads": -1, "filename": "ninjadog-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e25a5d41e2071378a2462af404e3eacb", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 11628, "upload_time": "2017-07-02T06:43:45", "url": "https://files.pythonhosted.org/packages/e6/f9/cef32ca5e61abc32f2950a6c4dea35022b6bafdeb5ce0689c184dea4b853/ninjadog-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e36c9c9bc6b9a3894202acd6113d2192", "sha256": "e71a88fc417e0c1c15b11649c6a4c143704037754c8e46bc355e3b96e0e2ee53" }, "downloads": -1, "filename": "ninjadog-0.5.0.tar.gz", "has_sig": false, "md5_digest": "e36c9c9bc6b9a3894202acd6113d2192", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 288857, "upload_time": "2017-07-02T06:43:43", "url": "https://files.pythonhosted.org/packages/0f/0f/6b5380e9aff4d9ad65d5114d5fcf33e1b41d7726811f1b22349163ac52ca/ninjadog-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "500f3d940c63e172f9934b1507d221df", "sha256": "053b42fa9777906367336409e9b73ad0651f5d4254c787c2eab1a10c671c72ff" }, "downloads": -1, "filename": "ninjadog-0.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "500f3d940c63e172f9934b1507d221df", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 12190, "upload_time": "2017-07-08T00:55:04", "url": "https://files.pythonhosted.org/packages/ef/2e/a3f52e8ffb052ae7314d9f1e4e1847da173b2e39ef6612e2ec20211a4ce6/ninjadog-0.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c62dd545e6564e96704684f285ac91d5", "sha256": "0c7154688344fcc953da7edd032a8a1ac0f17c8ac8863c94c2e90ca22830f832" }, "downloads": -1, "filename": "ninjadog-0.5.1.tar.gz", "has_sig": false, "md5_digest": "c62dd545e6564e96704684f285ac91d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 290720, "upload_time": "2017-07-08T00:55:00", "url": "https://files.pythonhosted.org/packages/0f/81/a48f71362e89ac7bc5d815db71066c76fc3dab5e16d391999405232cb606/ninjadog-0.5.1.tar.gz" } ], "0.5.2": [ { "comment_text": "", "digests": { "md5": "5eb54098e757d746eedce6c106407674", "sha256": "c2013d2c956884da5eaaf9c8b1632bed268e18cf3b1ee57d8468a622a7076faf" }, "downloads": -1, "filename": "ninjadog-0.5.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5eb54098e757d746eedce6c106407674", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 15123, "upload_time": "2017-07-09T21:25:22", "url": "https://files.pythonhosted.org/packages/fd/9f/9f98e241790d7d0d90fc4a96fb06f15366bb2f582d236ad0eab70de30c00/ninjadog-0.5.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "21160983605b0677f3dfde359ec268ed", "sha256": "b7b28ef3a6bbb051c834577b3d78ea5efa3cd707d6150ca1ce04f096b3428bbf" }, "downloads": -1, "filename": "ninjadog-0.5.2.tar.gz", "has_sig": false, "md5_digest": "21160983605b0677f3dfde359ec268ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 290391, "upload_time": "2017-07-09T21:25:18", "url": "https://files.pythonhosted.org/packages/d3/83/3cda47f54d28a53d4add4e7da631f0096ea41ff4d3ff8b26640114284f74/ninjadog-0.5.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "5eb54098e757d746eedce6c106407674", "sha256": "c2013d2c956884da5eaaf9c8b1632bed268e18cf3b1ee57d8468a622a7076faf" }, "downloads": -1, "filename": "ninjadog-0.5.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5eb54098e757d746eedce6c106407674", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 15123, "upload_time": "2017-07-09T21:25:22", "url": "https://files.pythonhosted.org/packages/fd/9f/9f98e241790d7d0d90fc4a96fb06f15366bb2f582d236ad0eab70de30c00/ninjadog-0.5.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "21160983605b0677f3dfde359ec268ed", "sha256": "b7b28ef3a6bbb051c834577b3d78ea5efa3cd707d6150ca1ce04f096b3428bbf" }, "downloads": -1, "filename": "ninjadog-0.5.2.tar.gz", "has_sig": false, "md5_digest": "21160983605b0677f3dfde359ec268ed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 290391, "upload_time": "2017-07-09T21:25:18", "url": "https://files.pythonhosted.org/packages/d3/83/3cda47f54d28a53d4add4e7da631f0096ea41ff4d3ff8b26640114284f74/ninjadog-0.5.2.tar.gz" } ] }