{ "info": { "author": "Thierry Florac", "author_email": "tflorac@ulthar.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Framework :: Zope3", "License :: OSI Approved :: Zope Public License", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "====================\nztfy.captcha package\n====================\n\n.. contents::\n\nWhat is ztfy.captcha ?\n======================\n\nztfy.captcha is a small package used to generate \"human\" verification images called 'captchas',\nwhich can easily be integrated into public forms to avoid spam.\n\n\nHow to use ztfy.captcha ?\n=========================\n\nA set of ztfy.captcha usages are given as doctests in ztfy/captcha/doctests/README.txt\n\n\nChangelog\n=========\n\n0.3.4\n-----\n - check ztfy.myams package when creating Fanstatic resource\n - updated resources for MyAMS skin\n\n0.3.3\n-----\n - use shared cache to store and load SHA seed when using captcha in multi-process environment\n\n0.3.2\n-----\n - added MyAMS skin integration\n - updated captcha widget base layer to use ztfy.baseskin package\n\n0.3.1\n-----\n - updated fonts list for better code readability\n\n0.3.0\n-----\n - use ZTFY.skin data API\n\n0.2.5\n-----\n - changed captcha image generation code\n\n0.2.4\n-----\n - changed package source layout\n\n0.2.3\n-----\n - created missing ZTK-1.1 branch :-/\n\n0.2.2\n-----\n - added TTF fonts in manifest\n\n0.2.1\n-----\n - replace deprecated sha module with hashlib\n - locate captchaAdapter for security policy\n\n0.2\n---\n - switch to ZTK-1.1\n\n0.1.1\n-----\n - added CDATA headers to improve XHTML compliance\n\n0.1\n---\n - initial release\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://www.ztfy.org", "keywords": "ZTFY Zope3 captcha package", "license": "ZPL", "maintainer": "", "maintainer_email": "", "name": "ztfy.captcha", "package_url": "https://pypi.org/project/ztfy.captcha/", "platform": "", "project_url": "https://pypi.org/project/ztfy.captcha/", "project_urls": { "Homepage": "http://www.ztfy.org" }, "release_url": "https://pypi.org/project/ztfy.captcha/0.3.4/", "requires_dist": null, "requires_python": "", "summary": "ZTFY captcha package", "version": "0.3.4" }, "last_serial": 2491766, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "77b43d67bfaed4b0bb3668713958626a", "sha256": "1444a38131a281c548eaaee85bf4a55a54726be2db5bd2a31fa487aeda9e87a6" }, "downloads": -1, "filename": "ztfy.captcha-0.2.1-py2.6.egg", "has_sig": false, "md5_digest": "77b43d67bfaed4b0bb3668713958626a", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 28316, "upload_time": "2011-12-16T23:54:40", "url": "https://files.pythonhosted.org/packages/42/2c/b6e516a0f9e67126996fa8cee365dd8787020aa45884c1d3bceec1e5eb55/ztfy.captcha-0.2.1-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "f9b9d8de355d51d5f3d844701aaf5e45", "sha256": "25fa780b75f0aa899e6090aea8d2e4ebb10ec8eebb19da762cd9bcff55b13601" }, "downloads": -1, "filename": "ztfy.captcha-0.2.1.tar.gz", "has_sig": false, "md5_digest": "f9b9d8de355d51d5f3d844701aaf5e45", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8912, "upload_time": "2011-12-16T23:54:39", "url": "https://files.pythonhosted.org/packages/d9/09/65e55ecab55480f15ea94f5f65e386242f0925c17aa279640dacba999e53/ztfy.captcha-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "1213698c6abac07efca570af2af21369", "sha256": "a6834b1825b8590114410017a5f1ea68c8dc651397065eb6deb5654431c7ef65" }, "downloads": -1, "filename": "ztfy.captcha-0.2.2-py2.6.egg", "has_sig": false, "md5_digest": "1213698c6abac07efca570af2af21369", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 329070, "upload_time": "2011-12-17T01:27:01", "url": "https://files.pythonhosted.org/packages/89/37/ec3802f5a02a0a5b99eb536ee29bb7f7b3ef513dfcbb51a6593a3f4ae5a9/ztfy.captcha-0.2.2-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "b4d5a6f6a4073ee07b2a393fe57ecd68", "sha256": "701afa43935751b9e95845f9306643d8f1736b06b49318331f6d105090c4101f" }, "downloads": -1, "filename": "ztfy.captcha-0.2.2.tar.gz", "has_sig": false, "md5_digest": "b4d5a6f6a4073ee07b2a393fe57ecd68", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 308184, "upload_time": "2011-12-17T01:26:58", "url": "https://files.pythonhosted.org/packages/2c/f3/ae456948cf87976f2579b0af28ce6b9442ba3590668fe6ce390044086221/ztfy.captcha-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "418940ea535a2587bbba056311f39e9b", "sha256": "8706a58c9dc2c811215408743b890d4293e058b7d35ecf5d509974e996b840bd" }, "downloads": -1, "filename": "ztfy.captcha-0.2.3-py2.7.egg", "has_sig": false, "md5_digest": "418940ea535a2587bbba056311f39e9b", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 329054, "upload_time": "2012-06-12T00:34:55", "url": "https://files.pythonhosted.org/packages/e5/75/fc073eb8ceb9ec3cbce42fbc807ba13b3af19353a0c9ba9c64f0eeeaf486/ztfy.captcha-0.2.3-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "a7da318c70edc4ca09a04a175ff4b579", "sha256": "f3bd43d237c122f7d812d127341b59f7a7343000bd444f2b3f7e8fb8c2e94e82" }, "downloads": -1, "filename": "ztfy.captcha-0.2.3.tar.gz", "has_sig": false, "md5_digest": "a7da318c70edc4ca09a04a175ff4b579", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 308986, "upload_time": "2012-06-12T00:34:52", "url": "https://files.pythonhosted.org/packages/c3/aa/061e2c1d5581d8f67946ee9328431d36966f4dca5db56fe4be87ef2877ed/ztfy.captcha-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "4687d5665720f3fef9de9fe37dc5028a", "sha256": "9166130cdc9afc75cdd7bbaeccdbb86049f281c76df857665e90e443b563b4c2" }, "downloads": -1, "filename": "ztfy.captcha-0.2.4-py2.7.egg", "has_sig": false, "md5_digest": "4687d5665720f3fef9de9fe37dc5028a", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 329073, "upload_time": "2012-06-26T23:14:39", "url": "https://files.pythonhosted.org/packages/5f/6e/0ed2b4dfa21d3edd878c09a79247e1b801d60d2476571d7c6a25642cfa49/ztfy.captcha-0.2.4-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "135b213db9337c6b827860cf8c656a2c", "sha256": "607aa7267eb15feeba97447e7a6812d68e5d151dfc2249c0d78eaf0bbfd9fd03" }, "downloads": -1, "filename": "ztfy.captcha-0.2.4.tar.gz", "has_sig": false, "md5_digest": "135b213db9337c6b827860cf8c656a2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 309128, "upload_time": "2012-06-26T23:14:36", "url": "https://files.pythonhosted.org/packages/f4/23/393e3a639c36ff3154b655d76e5b2f646da0847e14684325245cbf05aaeb/ztfy.captcha-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "4c9c98fa30906983a998c80b821e68fa", "sha256": "f922be22778e2a1e0fd7f552df871453fd0765c0ad5794fd84330aed13c099b7" }, "downloads": -1, "filename": "ztfy.captcha-0.2.5-py2.7.egg", "has_sig": false, "md5_digest": "4c9c98fa30906983a998c80b821e68fa", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 329194, "upload_time": "2012-12-19T07:20:59", "url": "https://files.pythonhosted.org/packages/5f/05/e9080b5c1da9bb2f60fc4e087e803e86659c9cdc2839aaef2747e3efe21a/ztfy.captcha-0.2.5-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "cc100509c4f5f5f9a28658d1be7be5a8", "sha256": "fba876326fd71e48f397990ba733d3c38012ad8be0f09e0ea1d861ab884bc96c" }, "downloads": -1, "filename": "ztfy.captcha-0.2.5.tar.gz", "has_sig": false, "md5_digest": "cc100509c4f5f5f9a28658d1be7be5a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 309264, "upload_time": "2012-12-19T07:20:56", "url": "https://files.pythonhosted.org/packages/df/6a/e4d532c7fe3177b6fbbc136ce65a23979a2eabbb57ac1285befa0f268ac4/ztfy.captcha-0.2.5.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "96595ccea52f298c77909712e6bb39e1", "sha256": "891d3902c7773d8b2909cc0454ed33c9f2cea5df1a2e77ec4101bf0593cec251" }, "downloads": -1, "filename": "ztfy.captcha-0.3.0-py2.7.egg", "has_sig": false, "md5_digest": "96595ccea52f298c77909712e6bb39e1", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 329066, "upload_time": "2013-03-03T22:41:24", "url": "https://files.pythonhosted.org/packages/63/bc/aacd3091d4b9791034fc7729b6ec66db51022f7caf923852cdda3b0b4e05/ztfy.captcha-0.3.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "b1b5f2400ae161dd5f1aa0220018429b", "sha256": "38566d7f0e2eb454a95a400622baca0e34c50a0cb6f5a17ca44ba53c4bd73afa" }, "downloads": -1, "filename": "ztfy.captcha-0.3.0.tar.gz", "has_sig": false, "md5_digest": "b1b5f2400ae161dd5f1aa0220018429b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 309171, "upload_time": "2013-03-03T22:41:19", "url": "https://files.pythonhosted.org/packages/78/5b/b67bb2fcbe20b6436aabe15a2ec86104b1825ed1cddc832e8fd9def28e8d/ztfy.captcha-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "1bb63846ada401bb831c4517ade9ace6", "sha256": "a1f974395b5f789c78c3260713e4e77cb0d115f44afb853274dcb7c9e177fc7f" }, "downloads": -1, "filename": "ztfy.captcha-0.3.1-py2.7.egg", "has_sig": false, "md5_digest": "1bb63846ada401bb831c4517ade9ace6", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 1320501, "upload_time": "2013-05-15T21:49:15", "url": "https://files.pythonhosted.org/packages/9d/48/cd50660bbf131d4102940e1c36412c3f70027159a5e694d06bf61174c697/ztfy.captcha-0.3.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "b4f8d3e96ef238975a5cbe4973fc10a3", "sha256": "0bc8e1092f7c245d9cf8531d6ea9133a6815f2aa270d4d94a3ec4b130525b122" }, "downloads": -1, "filename": "ztfy.captcha-0.3.1.tar.gz", "has_sig": false, "md5_digest": "b4f8d3e96ef238975a5cbe4973fc10a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1235008, "upload_time": "2013-05-15T21:49:00", "url": "https://files.pythonhosted.org/packages/42/7d/0414d01293b610279588234b16a4f32d9d8b9abdc952bdd7304055703452/ztfy.captcha-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "d68ced254adf6a9b8935b76d3fe231c9", "sha256": "9bb38e6017ae7ee7ab0e8aa5ccd1f6937d23cbbe60871dab8821e5d43790d7e9" }, "downloads": -1, "filename": "ztfy.captcha-0.3.2-py2.7.egg", "has_sig": false, "md5_digest": "d68ced254adf6a9b8935b76d3fe231c9", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 1259998, "upload_time": "2014-10-14T14:10:00", "url": "https://files.pythonhosted.org/packages/89/62/19669494bc24642d2ed76d43a410b118e0bf3c6b69686eb67cf9f24e3edc/ztfy.captcha-0.3.2-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "1f9f0ac5a539c9a53dcce333c769b985", "sha256": "34eb4347ebecf73507d821b1a16f336a285346c3504b3e4c821be9d6b679d0f1" }, "downloads": -1, "filename": "ztfy.captcha-0.3.2.tar.gz", "has_sig": false, "md5_digest": "1f9f0ac5a539c9a53dcce333c769b985", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1237769, "upload_time": "2014-10-14T13:28:43", "url": "https://files.pythonhosted.org/packages/47/24/2e902bf8b12d781da9eeb704cfbd0e3eac35af0297c36e5216274833886e/ztfy.captcha-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "9d63d2181c9a945247fa6a9f59fd2188", "sha256": "fdde1fc0c8fee624535fdf060f8d40ea8f800722740a21947f34298710751b22" }, "downloads": -1, "filename": "ztfy.captcha-0.3.3-py2.7.egg", "has_sig": false, "md5_digest": "9d63d2181c9a945247fa6a9f59fd2188", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 1260577, "upload_time": "2015-02-06T12:04:14", "url": "https://files.pythonhosted.org/packages/e1/cf/4df04c0b889994f19eca16c266f7431012203a529081ec1b8af00ec2226c/ztfy.captcha-0.3.3-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "82d3f36b8d094e904da11659f5045800", "sha256": "fb77f1ce3da8f6db0f6e2243c661d317e12d7003a0a6bcb2981cfe870e6c9b15" }, "downloads": -1, "filename": "ztfy.captcha-0.3.3.tar.gz", "has_sig": false, "md5_digest": "82d3f36b8d094e904da11659f5045800", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1237993, "upload_time": "2015-02-06T12:04:10", "url": "https://files.pythonhosted.org/packages/a2/f4/d81d2412d32ee801cc599f0ac590727cba233deae750fca484acd6a45b18/ztfy.captcha-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "d3a32263a0c0e81ab9033a4e91459647", "sha256": "955d8c03effe5a2cae4954f1eb7c0dab8ab6813514f032131dafe8a13260bc99" }, "downloads": -1, "filename": "ztfy.captcha-0.3.4-py2.7.egg", "has_sig": false, "md5_digest": "d3a32263a0c0e81ab9033a4e91459647", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 1260726, "upload_time": "2016-11-30T14:54:47", "url": "https://files.pythonhosted.org/packages/16/73/5f4535c20af3754fa2e680bff3c6e7b63827b145bc869522faaf261f6f7d/ztfy.captcha-0.3.4-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "40f343b143d28270066342f2cbce45c0", "sha256": "a6644088a217feb5f5a696e1e903fdf6bc2887a3ac2a3a2218712cec1c41c637" }, "downloads": -1, "filename": "ztfy.captcha-0.3.4.tar.gz", "has_sig": false, "md5_digest": "40f343b143d28270066342f2cbce45c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1238137, "upload_time": "2016-11-30T14:54:39", "url": "https://files.pythonhosted.org/packages/1a/98/1250d8b93c017aca0fd15f89e294ff901a1673ebfd4b8e8df3402db92ef6/ztfy.captcha-0.3.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d3a32263a0c0e81ab9033a4e91459647", "sha256": "955d8c03effe5a2cae4954f1eb7c0dab8ab6813514f032131dafe8a13260bc99" }, "downloads": -1, "filename": "ztfy.captcha-0.3.4-py2.7.egg", "has_sig": false, "md5_digest": "d3a32263a0c0e81ab9033a4e91459647", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 1260726, "upload_time": "2016-11-30T14:54:47", "url": "https://files.pythonhosted.org/packages/16/73/5f4535c20af3754fa2e680bff3c6e7b63827b145bc869522faaf261f6f7d/ztfy.captcha-0.3.4-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "40f343b143d28270066342f2cbce45c0", "sha256": "a6644088a217feb5f5a696e1e903fdf6bc2887a3ac2a3a2218712cec1c41c637" }, "downloads": -1, "filename": "ztfy.captcha-0.3.4.tar.gz", "has_sig": false, "md5_digest": "40f343b143d28270066342f2cbce45c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1238137, "upload_time": "2016-11-30T14:54:39", "url": "https://files.pythonhosted.org/packages/1a/98/1250d8b93c017aca0fd15f89e294ff901a1673ebfd4b8e8df3402db92ef6/ztfy.captcha-0.3.4.tar.gz" } ] }