{ "info": { "author": "Ben Brostoff", "author_email": "ben.brostoff@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "## Introduction · [![Build Status](https://travis-ci.org/BenBrostoff/draftfast.svg?branch=master)](https://travis-ci.org/BenBrostoff/draftfast) · [![](https://draftfast.herokuapp.com/badge.svg)](https://draftfast.herokuapp.com/) · [![](https://img.shields.io/badge/patreon-donate-yellow.svg)](https://www.patreon.com/user?u=8965834)\n\n![](marketing/NFL_OPTIMIZED.png)\n\nAn incredibly powerful tool that automates and optimizes lineup building, allowing you to enter thousands of lineups in any DraftKings or FanDuel contest in the time it takes you to grab a coffee.\n\n## Installation\n\nRequires Python 3.6.\n\n```bash\npip install draftfast\n```\n\n## Usage\n\nExample usage ([you can experiment with these examples in repl.it](https://repl.it/@BenBrostoff/AllWarlikeDemoware)):\n\n```python\nfrom draftfast import rules\nfrom draftfast.optimize import run\nfrom draftfast.orm import Player\nfrom draftfast.csv_parse import salary_download\n\n# Create players for a classic DraftKings game\nplayer_pool = [\n Player(name='A1', cost=5500, proj=55, pos='PG'),\n Player(name='A2', cost=5500, proj=55, pos='PG'),\n Player(name='A3', cost=5500, proj=55, pos='SG'),\n Player(name='A4', cost=5500, proj=55, pos='SG'),\n Player(name='A5', cost=5500, proj=55, pos='SF'),\n Player(name='A6', cost=5500, proj=55, pos='SF'),\n Player(name='A7', cost=5500, proj=55, pos='PF'),\n Player(name='A8', cost=5500, proj=55, pos='PF'),\n Player(name='A9', cost=5500, proj=55, pos='C'),\n Player(name='A10', cost=5500, proj=55, pos='C'),\n]\n\nroster = run(\n rule_set=rules.DK_NBA_RULE_SET,\n player_pool=player_pool,\n verbose=True,\n)\n\n# Or, alternatively, generate players from a CSV\nplayers = salary_download.generate_players_from_csvs(\n salary_file_location='./salaries.csv',\n game=rules.DRAFT_KINGS,\n)\n\nroster = run(\n rule_set=rules.DK_NBA_RULE_SET,\n player_pool=players,\n verbose=True,\n)\n```\n\nYou can see more examples in the [`examples` directory](https://github.com/BenBrostoff/draftfast/tree/master/examples).\n\n## Game Rules\n\nOptimizing for a particular game is as easy as setting the `RuleSet` (see the example above). Game rules in the library are in the table below:\n\n| League | Site | Reference |\n| ------------- |:-------------:| :-----:|\n| NFL | DraftKings | `DK_NFL_RULE_SET` |\n| NFL | FanDuel | `FD_NFL_RULE_SET` |\n| NBA | DraftKings | `DK_NBA_RULE_SET` |\n| NBA | FanDuel | `FD_NBA_RULE_SET` |\n| MLB | DraftKings | `DK_MLB_RULE_SET` |\n| MLB | FanDuel | `FD_MLB_RULE_SET` |\n| WNBA | DraftKings | `DK_WNBA_RULE_SET` |\n| WNBA | FanDuel | `FD_WNBA_RULE_SET` |\n| PGA | FanDuel | `FD_PGA_RULE_SET` |\n| NASCAR | FanDuel | `FD_NASCAR_RULE_SET` |\n| SOCCER | DraftKings | `DK_SOCCER_RULE_SET` |\n| EuroLeague | DraftKings | `DK_EURO_LEAGUE_RULE_SET` |\n| NHL | DraftKings | `DK_NHL_RULE_SET` |\n| NBA Pickem | DraftKings | `DK_NBA_PICKEM_RULE_SET` |\n| NFL Showdown | DraftKings | `DK_NFL_SHOWDOWN_RULE_SET` |\n| NBA Showdown | DraftKings | `DK_NBA_SHOWDOWN_RULE_SET` |\n| MLB Showdown | DraftKings | `DK_MLB_SHOWDOWN_RULE_SET` |\n\nNote that you can also tune `draftfast` for any game of your choice even if it's not implemented in the library (PRs welcome!). Using the `RuleSet` class, you can generate your own game rules that specific number of players, salary, etc. Example:\n\n```python\nfrom draftfast import rules\n\ngolf_rules = rules.RuleSet(\n site=rules.DRAFT_KINGS,\n league='PGA',\n roster_size='6',\n position_limits=[['G', 6, 6]],\n salary_max=50_000,\n)\n```\n\n## Settings\n\nUsage example:\n\n```python\nclass Showdown(Roster):\n POSITION_ORDER = {\n 'M': 0,\n 'F': 1,\n 'D': 2,\n 'GK': 3,\n }\n\n\nshowdown_limits = [\n ['M', 0, 6],\n ['F', 0, 6],\n ['D', 0, 6],\n ['GK', 0, 6],\n]\n\nsoccer_rules = rules.RuleSet(\n site=rules.DRAFT_KINGS,\n league='SOCCER_SHOWDOWN',\n roster_size=6,\n position_limits=showdown_limits,\n salary_max=50_000,\n general_position_limits=[],\n)\nplayer_pool = salary_download.generate_players_from_csvs(\n salary_file_location=salary_file,\n game=rules.DRAFT_KINGS,\n)\nroster = run(\n rule_set=soccer_rules,\n player_pool=player_pool,\n verbose=True,\n roster_gen=Showdown,\n)\n```\n\n`PlayerPoolSettings`\n\n- `min_proj`\n- `max_proj`\n- `min_salary`\n- `max_salary`\n- `min_avg`\n- `max_avg`\n\n`OptimizerSettings`\n\n- `stacks` - A list of `Stack` objects. Example:\n\n```python\nroster = run(\n rule_set=rules.DK_NHL_RULE_SET,\n player_pool=player_pool,\n verbose=True,\n optimizer_settings=OptimizerSettings(\n stacks=[\n Stack(team='PHI', count=3),\n Stack(team='FLA', count=3),\n Stack(team='NSH', count=2),\n ]\n ),\n)\n```\n\n`LineupConstraints`\n\n- `locked` - list of players to lock\n- `banned` - list of players to ban\n- `groups` - list of player groups constraints. See below\n\n```python\nroster = run(\n rule_set=rules.DK_NFL_RULE_SET,\n player_pool=player_pool,\n verbose=True,\n constraints=LineupConstraints(\n locked=['Rob Gronkowski'],\n banned=['Mark Ingram', 'Doug Martin'],\n groups=[\n [('Todd Gurley', 'Melvin Gordon', 'Christian McCaffrey'), (2, 3)],\n [('Chris Carson', 'Mike Davis'), 1],\n ]\n )\n)\n```\n\n- `no_offense_against_defense` - Do not allow offensive players to be matched up against defensive players in the optimized lineup. Currently only implemented for soccer, NHL, and NFL -- PRs welcome!\n\n## CSV Upload\n\n```python\nfrom draftfast.csv_parse import uploaders\n\nuploader = uploaders.DraftKingsNBAUploader(\n pid_file='./pid_file.csv',\n)\nuploader.write_rosters(rosters)\n\n```\n\n## Support and Consulting\n\nDFS optimization is only one part of a sustainable strategy. Long-term DFS winners have the best:\n\n- Player projections\n- Bankroll management\n- Diversification in contests played\n- Diversification across lineups (see `draftfast.exposure`)\n- Research process\n- 1 hour before gametime lineup changes\n- ...and so much more\n\nDraftFast provides support and consulting services that can help with all of these. [Let's get in touch today](mailto:ben.brostoff@gmail.com).\n\n# Credits\n\nSpecial thanks to [swanson](https://github.com/swanson/), who authored [this repo](https://github.com/swanson/degenerate), which was the inspiration for this one.\n\nCurrent project maintainers:\n\n- [BenBrostoff](https://github.com/BenBrostoff)\n- [sharkiteuthis](https://github.com/sharkiteuthis)", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/BenBrostoff/draft-kings-fun", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "draftfast", "package_url": "https://pypi.org/project/draftfast/", "platform": "", "project_url": "https://pypi.org/project/draftfast/", "project_urls": { "Homepage": "https://github.com/BenBrostoff/draft-kings-fun" }, "release_url": "https://pypi.org/project/draftfast/2.5.2/", "requires_dist": null, "requires_python": "", "summary": "A tool to automate and optimize DraftKings and FanDuel lineup construction.", "version": "2.5.2" }, "last_serial": 5901014, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "0cb36d4b2e2a4912e98fb6beb7f94201", "sha256": "9a9be77b8fe1571567e7a7b96c6942e90c3ca9a342d0c34418e4c225d023ef69" }, "downloads": -1, "filename": "draftfast-0.0.1.tar.gz", "has_sig": false, "md5_digest": "0cb36d4b2e2a4912e98fb6beb7f94201", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24408, "upload_time": "2018-11-25T22:23:06", "url": "https://files.pythonhosted.org/packages/02/30/6d622d4bf9c651f6fff54aac440d70e2845f62f6eaba75c205dd649a47d9/draftfast-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "18fe82ea82e596c7a9c1e93bd477c5f5", "sha256": "cf0848767f5c2e7ebf2d78892a7f512da2896ec5839b46d769995b0de2033f3a" }, "downloads": -1, "filename": "draftfast-0.0.2.tar.gz", "has_sig": false, "md5_digest": "18fe82ea82e596c7a9c1e93bd477c5f5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24511, "upload_time": "2018-11-25T22:48:17", "url": "https://files.pythonhosted.org/packages/d3/dd/29238ee29664a4401cf91ff53b6a8dc05ad37cf2b4f63162b0e21ec3486c/draftfast-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "7294a0dcd3eaa76bbd43a002de6ec758", "sha256": "fc5e2bac97bea265816d69875b7d94b0b251f1062cba0bfc690e1eb895fba0bf" }, "downloads": -1, "filename": "draftfast-0.0.3.tar.gz", "has_sig": false, "md5_digest": "7294a0dcd3eaa76bbd43a002de6ec758", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24461, "upload_time": "2018-11-26T02:04:09", "url": "https://files.pythonhosted.org/packages/1f/b7/6b0d73acf1690203b75ca5a36bb2f3ab57ae394460533db4ab206675e7d6/draftfast-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "91dbdeb56f7d6987c34c3b92506ff94d", "sha256": "bbf682ae192d43765a947a892aad92962857c0f6e5bb71e817403bb996ae0e30" }, "downloads": -1, "filename": "draftfast-0.0.4.tar.gz", "has_sig": false, "md5_digest": "91dbdeb56f7d6987c34c3b92506ff94d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24463, "upload_time": "2018-11-26T02:13:09", "url": "https://files.pythonhosted.org/packages/6c/23/c704e336ff2598aac81901b774b9d2aa877cbe3f27645523b55dbdd4eca4/draftfast-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "6c130029f88832386fdf625558fdf29d", "sha256": "26b95c63e1efdaab6ec93bee0e56446fcac20653e7173b1b96b88781260b73fa" }, "downloads": -1, "filename": "draftfast-0.0.5.tar.gz", "has_sig": false, "md5_digest": "6c130029f88832386fdf625558fdf29d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24660, "upload_time": "2018-11-26T02:16:30", "url": "https://files.pythonhosted.org/packages/ff/be/2163d9909f706554a55b4ac3a87c510e4da08a327729eaa2e64028c9fa05/draftfast-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "7c9adf4838fdb1b304006397e077236a", "sha256": "c5fa0571ba22aaaf6a1f171cc23f182a35982ecc93545ae7b9ed05c4eb60b903" }, "downloads": -1, "filename": "draftfast-0.0.6.tar.gz", "has_sig": false, "md5_digest": "7c9adf4838fdb1b304006397e077236a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24649, "upload_time": "2018-11-26T03:05:50", "url": "https://files.pythonhosted.org/packages/07/6f/d9d0ca710015eee6093653a21d4930ce4848c0969dac5978841d3dd493a5/draftfast-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "a92f30d8c3eb5e1218f41fe995ff2715", "sha256": "296d0f8775cd835618cc4e34d3a7eac5ab56a083a85cbb797f35d87e72b4a8b3" }, "downloads": -1, "filename": "draftfast-0.0.7.tar.gz", "has_sig": false, "md5_digest": "a92f30d8c3eb5e1218f41fe995ff2715", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23574, "upload_time": "2018-11-26T03:24:27", "url": "https://files.pythonhosted.org/packages/4c/ee/f86f67c7e96249782a9fea3a54ffc75e6dcc8dd3b36465bc3de040d77a30/draftfast-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "8b2f47381ac70e64136bdaa2146756b1", "sha256": "930725ef9cf1219af8d5b972db31e1441d73a64320252b0b375866939a4c047c" }, "downloads": -1, "filename": "draftfast-0.0.8.tar.gz", "has_sig": false, "md5_digest": "8b2f47381ac70e64136bdaa2146756b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24180, "upload_time": "2018-11-26T14:48:36", "url": "https://files.pythonhosted.org/packages/67/0b/00226a33f6d9b8ecca288b2073b76b599e933531e8d09f08c98b08bde577/draftfast-0.0.8.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "6608524003c0a8ae704df0c92347cfb7", "sha256": "e341cb0b3ba37588e041e58919271097141dec17220dfa3020d0f5f60bdaf3d4" }, "downloads": -1, "filename": "draftfast-1.0.0.tar.gz", "has_sig": false, "md5_digest": "6608524003c0a8ae704df0c92347cfb7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24839, "upload_time": "2018-12-02T14:58:45", "url": "https://files.pythonhosted.org/packages/90/20/25bbb55a0f2ce4e6c87a97f91aa79c3f87556af423f733c2650de82cb737/draftfast-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "ee58a62bef830177a32a585fd651627e", "sha256": "a7117851ace4755dca321d84afda49c85bf48ca139f0e4ea8a631c84ac2fe367" }, "downloads": -1, "filename": "draftfast-1.0.1.tar.gz", "has_sig": false, "md5_digest": "ee58a62bef830177a32a585fd651627e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26223, "upload_time": "2018-12-02T15:13:30", "url": "https://files.pythonhosted.org/packages/0b/8f/e15e345780d7bb95e8d59f27739123fa834f90fb0bfa212e9103315b2f9d/draftfast-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "708a06b3f59e1b529e6d1debb7af7fc7", "sha256": "9c41bcadee7c63779e59c2de371fecfea8fe47f33ba1d60126b5d65c1a090bd5" }, "downloads": -1, "filename": "draftfast-1.0.2.tar.gz", "has_sig": false, "md5_digest": "708a06b3f59e1b529e6d1debb7af7fc7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26314, "upload_time": "2018-12-03T02:42:20", "url": "https://files.pythonhosted.org/packages/8b/35/9f96bd2749b7e60258734fdcb53a7c1a0b810f2087633ef3164b4e8f0d54/draftfast-1.0.2.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "318af5b95bf5792375f6735485df8672", "sha256": "19cab68380aa2730f4a184ec36123ec5103a164faca5bb40acc97110265ecfb1" }, "downloads": -1, "filename": "draftfast-1.1.0.tar.gz", "has_sig": false, "md5_digest": "318af5b95bf5792375f6735485df8672", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26875, "upload_time": "2018-12-04T23:37:06", "url": "https://files.pythonhosted.org/packages/9c/8f/1bec76747f3a060b28869daeafa2e9157976e5ca44af8962b8c97af4d8d6/draftfast-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "3c56f272bbb8a45def4f1bc53f203b03", "sha256": "a45642df0ab10d9fd5e4ae36a31459f96d00ddd9291f2c8d092f46eb693ef850" }, "downloads": -1, "filename": "draftfast-1.1.1.tar.gz", "has_sig": false, "md5_digest": "3c56f272bbb8a45def4f1bc53f203b03", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26025, "upload_time": "2018-12-05T22:07:53", "url": "https://files.pythonhosted.org/packages/9e/b9/d33611590747ed44e4aa8ffd83747b2af9a330aa1f71649e2dc94fbc426f/draftfast-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "84f73fb1ae2f2b306728801025d431ca", "sha256": "347d6ce2c29c75f9455ec21e4b16b3f634a33a67bf11d91feb78406c881738dd" }, "downloads": -1, "filename": "draftfast-1.1.2.tar.gz", "has_sig": false, "md5_digest": "84f73fb1ae2f2b306728801025d431ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26145, "upload_time": "2018-12-09T17:39:43", "url": "https://files.pythonhosted.org/packages/09/e1/1830c54d6b4baa0a509cf012d6fa2155f399f8f5d8dcccd0c4cc3438afc9/draftfast-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "12261964856a3ace26f938ae6fa327fd", "sha256": "1b43d8ce22b08aa61a4805f789d30f21b4fdabc0766d448641c3278620e4e71b" }, "downloads": -1, "filename": "draftfast-1.1.3.tar.gz", "has_sig": false, "md5_digest": "12261964856a3ace26f938ae6fa327fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26182, "upload_time": "2018-12-12T00:46:54", "url": "https://files.pythonhosted.org/packages/31/4d/bc0a3402369e0d8daafb06892e72467d86ec39cc8422e22ecba32e1d7aeb/draftfast-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "0543a0521e4d29e13dbfc4cb196e33db", "sha256": "c22206a9d9ac70a38bd4ca5281ddc2010f02cf7914ed83170d74d8480439d74a" }, "downloads": -1, "filename": "draftfast-1.1.4.tar.gz", "has_sig": false, "md5_digest": "0543a0521e4d29e13dbfc4cb196e33db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25858, "upload_time": "2018-12-12T22:28:57", "url": "https://files.pythonhosted.org/packages/56/6d/edba55b222be40bfc66e732fac4766eb4fd2228a2d4329db1613cf9890de/draftfast-1.1.4.tar.gz" } ], "1.1.5": [ { "comment_text": "", "digests": { "md5": "1888d0f5429a04150bb8914d6c825c3b", "sha256": "ed291f8a5f7d7ebf4a3573be045ea9314cd87ab25c5bce2b0994a175a9664b29" }, "downloads": -1, "filename": "draftfast-1.1.5.tar.gz", "has_sig": false, "md5_digest": "1888d0f5429a04150bb8914d6c825c3b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26144, "upload_time": "2018-12-12T22:33:03", "url": "https://files.pythonhosted.org/packages/dc/95/0a02126b75ffc51610647d5814f6cdc82c154c86fdc7dcf8831a861e5b7d/draftfast-1.1.5.tar.gz" } ], "1.1.6": [ { "comment_text": "", "digests": { "md5": "d067086629272e6357073ac5ead305a9", "sha256": "95f1cc4711b7fa60d6fcfd37d304e1d789abc381b6c141acd100ce2751ea1184" }, "downloads": -1, "filename": "draftfast-1.1.6.tar.gz", "has_sig": false, "md5_digest": "d067086629272e6357073ac5ead305a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26358, "upload_time": "2018-12-12T23:17:12", "url": "https://files.pythonhosted.org/packages/78/65/dba0983de4f27e817c318d94f51f7ca6cbae62d1dcfcf7b7c9a08d0c3805/draftfast-1.1.6.tar.gz" } ], "1.1.7": [ { "comment_text": "", "digests": { "md5": "5ef967036539cd436d4e1836a882df4f", "sha256": "682043dd2c71c9efd086a74896670dd51f9591b762c29c7488fa33e79aee0763" }, "downloads": -1, "filename": "draftfast-1.1.7.tar.gz", "has_sig": false, "md5_digest": "5ef967036539cd436d4e1836a882df4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26811, "upload_time": "2018-12-14T18:01:58", "url": "https://files.pythonhosted.org/packages/46/5b/99c2ffd58228eede097554f30254341b37533773d072a79fd8b141f34317/draftfast-1.1.7.tar.gz" } ], "1.1.8": [ { "comment_text": "", "digests": { "md5": "1194deda34b1d2dda65c761f30998a3e", "sha256": "99364c5b5bd92f7b6c800c3b4b90b84320b3af16025b9e338188f9d28a9824ba" }, "downloads": -1, "filename": "draftfast-1.1.8.tar.gz", "has_sig": false, "md5_digest": "1194deda34b1d2dda65c761f30998a3e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27054, "upload_time": "2018-12-14T21:18:21", "url": "https://files.pythonhosted.org/packages/15/af/d2e87416e798399d4ed47d9cb1236dd58ba4d75fa3787b7736b9a6fde816/draftfast-1.1.8.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "0ba2ed593084aff131b9d506ab3298cf", "sha256": "164702f02f03625ec21db9123f71d8162d4c1c6e20ef496adfc099ddf0a51eb8" }, "downloads": -1, "filename": "draftfast-2.0.0.tar.gz", "has_sig": false, "md5_digest": "0ba2ed593084aff131b9d506ab3298cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27765, "upload_time": "2018-12-15T01:05:02", "url": "https://files.pythonhosted.org/packages/9f/a2/fc916229d967893cee3ad4bdddb9372f09e6a6ee3b08441e456a461745ec/draftfast-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "80bd883df43428ba802c9fd7868e81c9", "sha256": "a52ea5b2ac39cf91397c8fafe8a3866fec0cd12f42b61f3cf81f41a1e08f9a5e" }, "downloads": -1, "filename": "draftfast-2.0.1.tar.gz", "has_sig": false, "md5_digest": "80bd883df43428ba802c9fd7868e81c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27894, "upload_time": "2018-12-15T02:51:53", "url": "https://files.pythonhosted.org/packages/6b/40/a9e8f466986018be28896113f449b62b02cb27d93f5dd36b81f11ac4f001/draftfast-2.0.1.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "06b1406722c812dc2f2aef3d896f989c", "sha256": "fa82ef3f578f40dd7f30a1e0b01b754624e3464855d158babc1fa0664c68bf9c" }, "downloads": -1, "filename": "draftfast-2.0.2.tar.gz", "has_sig": false, "md5_digest": "06b1406722c812dc2f2aef3d896f989c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27881, "upload_time": "2018-12-15T15:42:53", "url": "https://files.pythonhosted.org/packages/79/61/539ae29e384916f1263468e36953d92af8eb4957ad7c974014f9e69a2fe0/draftfast-2.0.2.tar.gz" } ], "2.0.3": [ { "comment_text": "", "digests": { "md5": "60c8b801f4ce95c90bdf0a3e3f7c6196", "sha256": "5cc046558c89241ff3ea36f1035d03ebd88263a88b53fbc2360f981d43624eb7" }, "downloads": -1, "filename": "draftfast-2.0.3.tar.gz", "has_sig": false, "md5_digest": "60c8b801f4ce95c90bdf0a3e3f7c6196", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28332, "upload_time": "2018-12-15T16:28:52", "url": "https://files.pythonhosted.org/packages/72/2f/7a07d70527f9328adb9c5eb6e736830206b6fc39686a5d8a6acd7bd8ddc1/draftfast-2.0.3.tar.gz" } ], "2.0.4": [ { "comment_text": "", "digests": { "md5": "9f787b5bb8277c2dd3a8f76577fdbf51", "sha256": "538f53beb629366cf39990d9617621a18c16a6ef7eb9cd7c14da23d8a7de425c" }, "downloads": -1, "filename": "draftfast-2.0.4.tar.gz", "has_sig": false, "md5_digest": "9f787b5bb8277c2dd3a8f76577fdbf51", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28489, "upload_time": "2018-12-16T19:29:34", "url": "https://files.pythonhosted.org/packages/97/6b/8e24fea8fd0a084ebbd68cb27a489e1b8627ea10c57831c15212abbba859/draftfast-2.0.4.tar.gz" } ], "2.0.5": [ { "comment_text": "", "digests": { "md5": "06c54875b0529aaed8ce2afc3e36aa18", "sha256": "5d36879ea98eaf093b5283af762aaf3445086a5e6661c75295d14c0d41fa161b" }, "downloads": -1, "filename": "draftfast-2.0.5.tar.gz", "has_sig": false, "md5_digest": "06c54875b0529aaed8ce2afc3e36aa18", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27977, "upload_time": "2018-12-22T00:06:41", "url": "https://files.pythonhosted.org/packages/b6/56/ca5a645386375750184db2cc0f2fb904ff6326faa4942c4bfea167fe24af/draftfast-2.0.5.tar.gz" } ], "2.0.7": [ { "comment_text": "", "digests": { "md5": "96781489c863303c95de0254a5034518", "sha256": "0459a937ef32b76f07b14df6db4be3378c4a74cd3769f8d908a09703c36722f4" }, "downloads": -1, "filename": "draftfast-2.0.7.tar.gz", "has_sig": false, "md5_digest": "96781489c863303c95de0254a5034518", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28080, "upload_time": "2018-12-22T00:38:56", "url": "https://files.pythonhosted.org/packages/6f/56/192f5bf3f068bf44c2b2b07b96c80ccc785185b4524450b98e35b2b891ff/draftfast-2.0.7.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "2d771c34209af8e9691a18c742498042", "sha256": "370b40c8d41151e8a541c5287ab2f1577b50def1529247298d54f5e73676b5af" }, "downloads": -1, "filename": "draftfast-2.1.0.tar.gz", "has_sig": false, "md5_digest": "2d771c34209af8e9691a18c742498042", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28954, "upload_time": "2018-12-22T23:02:24", "url": "https://files.pythonhosted.org/packages/cb/ae/8669b2ba95ab830508274f9ff26bc86ef07dfd665d86e1813c68ac03549a/draftfast-2.1.0.tar.gz" } ], "2.2.0": [ { "comment_text": "", "digests": { "md5": "def6664ec51997b7f14a7729fe1a1980", "sha256": "538907b64f2ff243861a02d73c0e9b71a4c7ea61cc3d63dec6ddae9ec2cabdd6" }, "downloads": -1, "filename": "draftfast-2.2.0.tar.gz", "has_sig": false, "md5_digest": "def6664ec51997b7f14a7729fe1a1980", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32420, "upload_time": "2018-12-25T15:29:49", "url": "https://files.pythonhosted.org/packages/c8/b2/b4e923c7224345b9cffa476256991e9839b9f127996ee1940d6be171db46/draftfast-2.2.0.tar.gz" } ], "2.2.1": [ { "comment_text": "", "digests": { "md5": "31df43838168406069d0ba582d0c992d", "sha256": "99aad9d4d6089ed4d07ab92dd6d0c74f9440b0e6dbc3ae816340a62ee0be596a" }, "downloads": -1, "filename": "draftfast-2.2.1.tar.gz", "has_sig": false, "md5_digest": "31df43838168406069d0ba582d0c992d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33242, "upload_time": "2018-12-27T22:56:04", "url": "https://files.pythonhosted.org/packages/76/49/97cdd150a332945a4b892a974418eef3059966a0d0520ec0c84e01ab3e01/draftfast-2.2.1.tar.gz" } ], "2.3.0": [ { "comment_text": "", "digests": { "md5": "0cd0ebb0a39f696df5f19f51ea368030", "sha256": "80c4bfad7003600fde876e935f03ececf9f0088967f75951defd12b8d6a0215f" }, "downloads": -1, "filename": "draftfast-2.3.0.tar.gz", "has_sig": false, "md5_digest": "0cd0ebb0a39f696df5f19f51ea368030", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34072, "upload_time": "2018-12-29T18:18:59", "url": "https://files.pythonhosted.org/packages/c7/8a/77085dd47f58277d1edf97834810825ec660e74d05ea8cf57bdec30480c1/draftfast-2.3.0.tar.gz" } ], "2.4.0": [ { "comment_text": "", "digests": { "md5": "008a0811ff2aef0bd89a8cb816136741", "sha256": "880bdd422eaca5dda9750919f79f17cf272285df6d8ee3739502163c6654dc54" }, "downloads": -1, "filename": "draftfast-2.4.0.tar.gz", "has_sig": false, "md5_digest": "008a0811ff2aef0bd89a8cb816136741", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35623, "upload_time": "2019-01-06T21:44:49", "url": "https://files.pythonhosted.org/packages/d8/9c/23bc2c32250f6eba59d7c873ba02033fb558716def816b9ebf7b0ddf108f/draftfast-2.4.0.tar.gz" } ], "2.4.1": [ { "comment_text": "", "digests": { "md5": "b9af2fef2bd5bc8f1256c32737f9abb5", "sha256": "fd93a91b1b0f6ec11e3a618b64163ecddf6549b3e7c7bed6f82c8617c79a85d9" }, "downloads": -1, "filename": "draftfast-2.4.1.tar.gz", "has_sig": false, "md5_digest": "b9af2fef2bd5bc8f1256c32737f9abb5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35901, "upload_time": "2019-01-16T01:22:17", "url": "https://files.pythonhosted.org/packages/0a/9d/176b3cd66c3182feb319fb9331084957c2dacd5efba27d2bc9c3c232972c/draftfast-2.4.1.tar.gz" } ], "2.4.2": [ { "comment_text": "", "digests": { "md5": "755b8c49e82dfcda04e6562ad955ee4e", "sha256": "19a5af3210d721bbff108f5b5454b47cf3491b9fafaaf798fe74fc8f114d4b9f" }, "downloads": -1, "filename": "draftfast-2.4.2.tar.gz", "has_sig": false, "md5_digest": "755b8c49e82dfcda04e6562ad955ee4e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35958, "upload_time": "2019-01-20T19:28:37", "url": "https://files.pythonhosted.org/packages/18/a4/71f4520e317ba4654a27c95eb00bd7b53ae5887ce7154ce407e1ed24fd2e/draftfast-2.4.2.tar.gz" } ], "2.4.3": [ { "comment_text": "", "digests": { "md5": "b38c3d5e8768f0321b1c47340b12288e", "sha256": "8f2ebaf3194568f4d0596596021edef737bbbb26bacb22f8254af51f708d04c2" }, "downloads": -1, "filename": "draftfast-2.4.3.tar.gz", "has_sig": false, "md5_digest": "b38c3d5e8768f0321b1c47340b12288e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36127, "upload_time": "2019-02-20T01:24:19", "url": "https://files.pythonhosted.org/packages/a4/29/45d2c5173a5731bd82e7f2b64618b89224193736241b852aa2c577ca4c69/draftfast-2.4.3.tar.gz" } ], "2.5.0": [ { "comment_text": "", "digests": { "md5": "6217c007bbab420e1b69c09a37455ebf", "sha256": "fcc1f826f70298ffbb3aa6db365160062da9e41b1e1d40f71edffa68a0decfac" }, "downloads": -1, "filename": "draftfast-2.5.0.tar.gz", "has_sig": false, "md5_digest": "6217c007bbab420e1b69c09a37455ebf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36834, "upload_time": "2019-07-03T19:17:21", "url": "https://files.pythonhosted.org/packages/07/f8/730246e732d25c7b33d235bac89dcc3db0fb39fbc8b32b5ce3cde74608eb/draftfast-2.5.0.tar.gz" } ], "2.5.1": [ { "comment_text": "", "digests": { "md5": "06cb9e60686c045e22dd51210d6f02c5", "sha256": "7eab39c356193fbf62c41577d1bd9483c8148f5790219333d4a7bced6c571f3e" }, "downloads": -1, "filename": "draftfast-2.5.1.tar.gz", "has_sig": false, "md5_digest": "06cb9e60686c045e22dd51210d6f02c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36902, "upload_time": "2019-07-05T16:10:31", "url": "https://files.pythonhosted.org/packages/b8/d4/747e67a51e43a415bf60e5484aab42b7dc485968ccbca3d219216f91840f/draftfast-2.5.1.tar.gz" } ], "2.5.2": [ { "comment_text": "", "digests": { "md5": "47e48de439758b15a98fe1edbae0b62b", "sha256": "6e7fc2d61afb3484da65e3acaa94c8ac5899cd1ac47920a34287a694b173f93b" }, "downloads": -1, "filename": "draftfast-2.5.2.tar.gz", "has_sig": false, "md5_digest": "47e48de439758b15a98fe1edbae0b62b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35076, "upload_time": "2019-09-28T23:49:04", "url": "https://files.pythonhosted.org/packages/d2/94/d4032d917a23003c83bdaa43306e23447d66dc2964e71b461204bd3972fc/draftfast-2.5.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "47e48de439758b15a98fe1edbae0b62b", "sha256": "6e7fc2d61afb3484da65e3acaa94c8ac5899cd1ac47920a34287a694b173f93b" }, "downloads": -1, "filename": "draftfast-2.5.2.tar.gz", "has_sig": false, "md5_digest": "47e48de439758b15a98fe1edbae0b62b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35076, "upload_time": "2019-09-28T23:49:04", "url": "https://files.pythonhosted.org/packages/d2/94/d4032d917a23003c83bdaa43306e23447d66dc2964e71b461204bd3972fc/draftfast-2.5.2.tar.gz" } ] }