{
"info": {
"author": "Alexander Schepanovski",
"author_email": "suor.web@gmail.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: BSD License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 2",
"Programming Language :: Python :: 2.6",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
"Topic :: Software Development :: Libraries :: Python Modules"
],
"description": "Funcy \n=====\n\n|Gitter|\n\nA collection of fancy functional tools focused on practicality.\n\nInspired by clojure, underscore and my own abstractions. Keep reading to get an overview\nor `read the docs `_.\nOr jump directly to `cheatsheet `_.\n\nWorks with Python 2.6+, 3.3+ and pypy.\n\n\nInstallation\n-------------\n\n::\n\n pip install funcy\n\n\nOverview\n--------------\n\nImport stuff from funcy to make things happen:\n\n.. code:: python\n\n from funcy import whatever, you, need\n\n\nMerge collections of same type\n(works for dicts, sets, lists, tuples, iterators and even strings):\n\n.. code:: python\n\n merge(coll1, coll2, coll3, ...)\n join(colls)\n merge_with(sum, dict1, dict2, ...)\n\n\nWalk through collection, creating its transform (like map but preserves type):\n\n.. code:: python\n\n walk(str.upper, {'a', 'b'}) # {'A', 'B'}\n walk(reversed, {'a': 1, 'b': 2}) # {1: 'a', 2: 'b'}\n walk_keys(double, {'a': 1, 'b': 2}) # {'aa': 1, 'bb': 2}\n walk_values(inc, {'a': 1, 'b': 2}) # {'a': 2, 'b': 3}\n\n\nSelect a part of collection:\n\n.. code:: python\n\n select(even, {1,2,3,10,20}) # {2,10,20}\n select(r'^a', ('a','b','ab','ba')) # ('a','ab')\n select_keys(callable, {str: '', None: None}) # {str: ''}\n compact({2, None, 1, 0}) # {1,2}\n\n\nManipulate sequences:\n\n.. code:: python\n\n take(4, iterate(double, 1)) # [1, 2, 4, 8]\n first(drop(3, count(10))) # 13\n\n lremove(even, [1, 2, 3]) # [1, 3]\n lconcat([1, 2], [5, 6]) # [1, 2, 5, 6]\n lcat(map(range, range(4))) # [0, 0, 1, 0, 1, 2]\n lmapcat(range, range(4)) # same\n flatten(nested_structure) # flat iter\n distinct('abacbdd') # iter('abcd')\n\n lsplit(odd, range(5)) # ([1, 3], [0, 2, 4])\n lsplit_at(2, range(5)) # ([0, 1], [2, 3, 4])\n group_by(mod3, range(5)) # {0: [0, 3], 1: [1, 4], 2: [2]}\n\n lpartition(2, range(5)) # [[0, 1], [2, 3]]\n chunks(2, range(5)) # iter: [0, 1], [2, 3], [4]\n pairwise(range(5)) # iter: [0, 1], [1, 2], ...\n\n\nAnd functions:\n\n.. code:: python\n\n partial(add, 1) # inc\n curry(add)(1)(2) # 3\n compose(inc, double)(10) # 21\n complement(even) # odd\n all_fn(isa(int), even) # is_even_int\n\n one_third = rpartial(operator.div, 3.0)\n has_suffix = rcurry(str.endswith)\n\n\nCreate decorators easily:\n\n.. code:: python\n\n @decorator\n def log(call):\n print call._func.__name__, call._args\n return call()\n\n\nAbstract control flow:\n\n.. code:: python\n\n walk_values(silent(int), {'a': '1', 'b': 'no'})\n # => {'a': 1, 'b': None}\n\n @once\n def initialize():\n \"...\"\n\n with suppress(OSError):\n os.remove('some.file')\n\n @ignore(ErrorRateExceeded)\n @limit_error_rate(fails=5, timeout=60)\n @retry(tries=2, errors=(HttpError, ServiceDown))\n def some_unreliable_action(...):\n \"...\"\n\n class MyUser(AbstractBaseUser):\n @cached_property\n def public_phones(self):\n return self.phones.filter(public=True)\n\n\nEase debugging:\n\n.. code:: python\n\n squares = {tap(x, 'x'): tap(x * x, 'x^2') for x in [3, 4]}\n # x: 3\n # x^2: 9\n # ...\n\n @print_exits\n def some_func(...):\n \"...\"\n\n @log_calls(log.info, errors=False)\n @log_errors(log.exception)\n def some_suspicious_function(...):\n \"...\"\n\n with print_durations('Creating models'):\n Model.objects.create(...)\n # ...\n # 10.2 ms in Creating models\n\n\nAnd `much more `_.\n\n\nDive in\n-------\n\nFuncy is an embodiment of ideas I explain in several essays:\n\n- `Why Every Language Needs Its Underscore `_\n- `Functional Python Made Easy `_\n- `Abstracting Control Flow `_\n- `Painless Decorators `_\n\n\nRunning tests\n--------------\n\nTo run the tests using your default python:\n\n::\n\n pip install -r test_requirements.txt\n py.test\n\nTo fully run ``tox`` you need all the supported pythons to be installed. These are\n2.6+, 3.3+, PyPy and PyPy3. You can run it for particular environment even in absense\nof all of the above::\n\n tox -e py27\n tox -e py36\n tox -e lint\n\n\n.. |Build Status| image:: https://travis-ci.org/Suor/funcy.svg?branch=master\n :target: https://travis-ci.org/Suor/funcy\n\n\n.. |Gitter| image:: https://badges.gitter.im/JoinChat.svg\n :alt: Join the chat at https://gitter.im/Suor/funcy\n :target: https://gitter.im/Suor/funcy?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "http://github.com/Suor/funcy",
"keywords": "",
"license": "BSD",
"maintainer": "",
"maintainer_email": "",
"name": "funcy",
"package_url": "https://pypi.org/project/funcy/",
"platform": "",
"project_url": "https://pypi.org/project/funcy/",
"project_urls": {
"Homepage": "http://github.com/Suor/funcy"
},
"release_url": "https://pypi.org/project/funcy/1.13/",
"requires_dist": null,
"requires_python": "",
"summary": "A fancy and practical functional tools",
"version": "1.13"
},
"last_serial": 5630434,
"releases": {
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "5c27d573bc09fa9916e57fb3bb730816",
"sha256": "144784bc8409f069dc9ccaab811271000ad6c685b30124deaaf5c0505c8bd6f1"
},
"downloads": -1,
"filename": "funcy-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "5c27d573bc09fa9916e57fb3bb730816",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7733,
"upload_time": "2012-11-18T14:26:27",
"url": "https://files.pythonhosted.org/packages/ee/a8/a23dfe1f6c1ee471959fab6ec430c8b4473145e989b1ced86d302fd79624/funcy-0.1.0.tar.gz"
}
],
"0.10": [
{
"comment_text": "",
"digests": {
"md5": "2cf583f5b656fcd58dccba0ac600b4c5",
"sha256": "7acd0cc0c512f87ebe4cf553648163cff4753761eb7b47c4c0a5a8d511baaaef"
},
"downloads": -1,
"filename": "funcy-0.10.tar.gz",
"has_sig": false,
"md5_digest": "2cf583f5b656fcd58dccba0ac600b4c5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18460,
"upload_time": "2014-03-03T09:37:52",
"url": "https://files.pythonhosted.org/packages/32/8c/4feb4606e1048f606d99bd60ebe6e5333dd30ecf11a43ebad2af9a5f57e4/funcy-0.10.tar.gz"
}
],
"0.10.1": [
{
"comment_text": "",
"digests": {
"md5": "9c16b744e1a2cdc4ea1283a9f09201f9",
"sha256": "731fd310d2787ce3d95c411421e1113b300a3eaf28e5c0da678fe851a8c1885b"
},
"downloads": -1,
"filename": "funcy-0.10.1.tar.gz",
"has_sig": false,
"md5_digest": "9c16b744e1a2cdc4ea1283a9f09201f9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18575,
"upload_time": "2014-04-16T04:32:34",
"url": "https://files.pythonhosted.org/packages/26/0a/3e27ffea42fdc98c65c64e8f132dd390488246ed2f1062627164c78571d2/funcy-0.10.1.tar.gz"
}
],
"0.2.0": [
{
"comment_text": "",
"digests": {
"md5": "d88e2ff1a237330d1ba60f060d407c28",
"sha256": "9be9fa465d4a35c990f483fffd821bb68b5b33cc40ee8b511bd5e9c1aab7f24b"
},
"downloads": -1,
"filename": "funcy-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "d88e2ff1a237330d1ba60f060d407c28",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8257,
"upload_time": "2012-11-29T02:36:52",
"url": "https://files.pythonhosted.org/packages/9d/3a/9344733532d96853bf96dd0e25faff8efe594108793e202cd575291c20c0/funcy-0.2.0.tar.gz"
}
],
"0.2.1": [
{
"comment_text": "",
"digests": {
"md5": "a1061ad81788b5129a4b01b3a2721bfd",
"sha256": "eb81b3c4407f77dbfa43f218ec84d7934eab8b226ad270c59801b1209e719a98"
},
"downloads": -1,
"filename": "funcy-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "a1061ad81788b5129a4b01b3a2721bfd",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8219,
"upload_time": "2012-12-18T09:20:26",
"url": "https://files.pythonhosted.org/packages/db/54/84f8068bbab7ea8bedd727f0f09983583ca37c922e8970d229dcb01907b6/funcy-0.2.1.tar.gz"
}
],
"0.3.0": [
{
"comment_text": "",
"digests": {
"md5": "ea230c3bce32b3376b272052a3101371",
"sha256": "5c3882e9a199ea5737dcd2e7333ea979c4c0b33f46255827f0a4f2a660a61d63"
},
"downloads": -1,
"filename": "funcy-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "ea230c3bce32b3376b272052a3101371",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9264,
"upload_time": "2013-01-18T07:57:36",
"url": "https://files.pythonhosted.org/packages/26/2e/b32567784ede9b3fc079f3ee019cdbb490ee59df585acf10445c6ce471a5/funcy-0.3.0.tar.gz"
}
],
"0.3.1": [
{
"comment_text": "",
"digests": {
"md5": "73c8a23875f12568606e4e5118dd1591",
"sha256": "9147aa9ad17a302f148a010d9bb086f6753009ad5d4100953fd9dd09eaad0bb4"
},
"downloads": -1,
"filename": "funcy-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "73c8a23875f12568606e4e5118dd1591",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9284,
"upload_time": "2013-02-15T05:38:36",
"url": "https://files.pythonhosted.org/packages/62/15/01984822e191d86afeed76ae1cb72d30aeb4f0c53b7668534819dbba886d/funcy-0.3.1.tar.gz"
}
],
"0.3.2": [
{
"comment_text": "",
"digests": {
"md5": "c9147a108ebf0846cb5284c9921fa81d",
"sha256": "55f9ec34d85b3705f84ba57f8f09317956b1b1659a95788e35ce9a3bd5c11fb9"
},
"downloads": -1,
"filename": "funcy-0.3.2.tar.gz",
"has_sig": false,
"md5_digest": "c9147a108ebf0846cb5284c9921fa81d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9671,
"upload_time": "2013-02-25T09:24:28",
"url": "https://files.pythonhosted.org/packages/4e/da/8b0bc6641a1bb86205555ff6d4f85de72d98358797b652cc85f2be30fac8/funcy-0.3.2.tar.gz"
}
],
"0.3.3": [
{
"comment_text": "",
"digests": {
"md5": "305d9792fab10b0b6c4f910f514b29b8",
"sha256": "c427d85724db8227169920dee8bec61ea612666e3cdeae5e0c52e7779a06bc74"
},
"downloads": -1,
"filename": "funcy-0.3.3.tar.gz",
"has_sig": false,
"md5_digest": "305d9792fab10b0b6c4f910f514b29b8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 10194,
"upload_time": "2013-03-06T09:50:36",
"url": "https://files.pythonhosted.org/packages/fb/fc/a62c45472a2a5800ab467bfd84a41cbe03f66291311403ce714c8d5eeb49/funcy-0.3.3.tar.gz"
}
],
"0.3.4": [
{
"comment_text": "",
"digests": {
"md5": "98ba7d79aa88cf47c90b3933531ba881",
"sha256": "003bdc67d63fc96d46fc61670184f44b2a564eec946899ef16010be03e416b7c"
},
"downloads": -1,
"filename": "funcy-0.3.4.tar.gz",
"has_sig": false,
"md5_digest": "98ba7d79aa88cf47c90b3933531ba881",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 10220,
"upload_time": "2013-03-14T12:24:51",
"url": "https://files.pythonhosted.org/packages/a5/69/f7e7e02c54a16a99928246f5c92377d8dda034b79861ef9a34c855854e29/funcy-0.3.4.tar.gz"
}
],
"0.4.0": [
{
"comment_text": "",
"digests": {
"md5": "91588cdac139f2c35a04c75c77a9e6c5",
"sha256": "7dae49b226a19d904327c23d6d276f2eb2886e41cd653558e205f4f022180fba"
},
"downloads": -1,
"filename": "funcy-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "91588cdac139f2c35a04c75c77a9e6c5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 10901,
"upload_time": "2013-04-06T04:40:58",
"url": "https://files.pythonhosted.org/packages/9a/02/6cfd742f2249be9b3b77c4285bd67c059cb6a827545b322dc9076225542c/funcy-0.4.0.tar.gz"
}
],
"0.4.1": [
{
"comment_text": "",
"digests": {
"md5": "d0f2fcb9c3a94a53ed43c3db1b7484d4",
"sha256": "d471905d8c8354a690e983b5ebd140a3ab895a75960d529c72be13aba6a7e34d"
},
"downloads": -1,
"filename": "funcy-0.4.1.tar.gz",
"has_sig": false,
"md5_digest": "d0f2fcb9c3a94a53ed43c3db1b7484d4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11053,
"upload_time": "2013-04-16T14:30:51",
"url": "https://files.pythonhosted.org/packages/e5/ec/e5ccd49377f0283a0130ecf3abe15f95cd40d670fb8c8e2b2bbb7abf265a/funcy-0.4.1.tar.gz"
}
],
"0.5.0": [
{
"comment_text": "",
"digests": {
"md5": "1461ac7df06a0ffd9c4cd0d02a766690",
"sha256": "adcbdc4979fcb3d26f425af4d6e6c61e6c2e958cfccd630391ea5211734388b4"
},
"downloads": -1,
"filename": "funcy-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "1461ac7df06a0ffd9c4cd0d02a766690",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11921,
"upload_time": "2013-04-25T09:52:19",
"url": "https://files.pythonhosted.org/packages/39/65/c396fac1bdf8b70af11f22e99f134ac3da65b8eabfdcc10d7a1915425bea/funcy-0.5.0.tar.gz"
}
],
"0.5.1": [
{
"comment_text": "",
"digests": {
"md5": "f49b6540f1fbc5137a0b8f9282126767",
"sha256": "f674a9fe11066e39d93c99543572aa59dccf8a05ed7844016d0d4a9314251f56"
},
"downloads": -1,
"filename": "funcy-0.5.1.tar.gz",
"has_sig": false,
"md5_digest": "f49b6540f1fbc5137a0b8f9282126767",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 12049,
"upload_time": "2013-05-08T08:44:34",
"url": "https://files.pythonhosted.org/packages/2f/26/8127fc7706a5411c8625a095816ee9551a522bf21af09cc0cdf6c9437165/funcy-0.5.1.tar.gz"
}
],
"0.5.2": [
{
"comment_text": "",
"digests": {
"md5": "f71bd7271a8abefd200793a9ee6990d3",
"sha256": "4f537e31903b64458cbd7f60ba7dc7c9afb86e04e60323c8794a79e21bd3a470"
},
"downloads": -1,
"filename": "funcy-0.5.2.tar.gz",
"has_sig": false,
"md5_digest": "f71bd7271a8abefd200793a9ee6990d3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 12134,
"upload_time": "2013-05-22T08:32:28",
"url": "https://files.pythonhosted.org/packages/98/52/852676a86bb6388a453f5de7ef580f8e85543ed98c0b07e9ae7b9a56651d/funcy-0.5.2.tar.gz"
}
],
"0.5.3": [
{
"comment_text": "",
"digests": {
"md5": "3d9fe12148fcadfbddd31612f88e6819",
"sha256": "5fb3070c04b4a3ece12795ea4341f8e3319861c1b0e24496ba95ccde5f8a137c"
},
"downloads": -1,
"filename": "funcy-0.5.3.tar.gz",
"has_sig": false,
"md5_digest": "3d9fe12148fcadfbddd31612f88e6819",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 12241,
"upload_time": "2013-05-24T02:45:39",
"url": "https://files.pythonhosted.org/packages/b4/ac/80f252eaa8625e75e4daba026154be4378b4794984c6ce6fbeaf015bbf01/funcy-0.5.3.tar.gz"
}
],
"0.5.4": [
{
"comment_text": "",
"digests": {
"md5": "d54b8e83e52e335832419b47af8b8d35",
"sha256": "5555b4d4d845bcc29c3322f5cca153aa2a000b4ad97aca4839463196b3e488ba"
},
"downloads": -1,
"filename": "funcy-0.5.4.tar.gz",
"has_sig": false,
"md5_digest": "d54b8e83e52e335832419b47af8b8d35",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 12564,
"upload_time": "2013-08-21T08:32:12",
"url": "https://files.pythonhosted.org/packages/39/0e/de5375565ecace0f6bd21e3e030fb8cb54fb34c43476d574130c0a422619/funcy-0.5.4.tar.gz"
}
],
"0.5.6": [
{
"comment_text": "",
"digests": {
"md5": "a81bd957481d1c4201a92bbb7e75d0f4",
"sha256": "2b61194bdf9fbc213df9b8ed1a193ef8d1c03110d724538a7749e41627d8cbbe"
},
"downloads": -1,
"filename": "funcy-0.5.6.tar.gz",
"has_sig": false,
"md5_digest": "a81bd957481d1c4201a92bbb7e75d0f4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 12600,
"upload_time": "2013-10-11T01:31:47",
"url": "https://files.pythonhosted.org/packages/b0/be/b9166639c0e7b4fd37a3cfd4d7b591a14d6214f73abcea1423e1663991ac/funcy-0.5.6.tar.gz"
}
],
"0.6.0": [
{
"comment_text": "",
"digests": {
"md5": "3343233379c85ee746e28ce760599319",
"sha256": "8d605722463f13d22be6c09967b78b0d5a17a0b2cbe79f7067c95bc7c7919e42"
},
"downloads": -1,
"filename": "funcy-0.6.0.tar.gz",
"has_sig": false,
"md5_digest": "3343233379c85ee746e28ce760599319",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13196,
"upload_time": "2013-10-27T01:29:39",
"url": "https://files.pythonhosted.org/packages/de/13/a6a064756b3679e76fd3655daa064b790480ad3a06bb515295a59b438b79/funcy-0.6.0.tar.gz"
}
],
"0.7": [
{
"comment_text": "",
"digests": {
"md5": "b1c56ae6a9af1ca9fdc0112b720ea48a",
"sha256": "1f03cfadc00d2bb8acbeef67ae5d49564cf940661a21b847016aacfdb3f1e613"
},
"downloads": -1,
"filename": "funcy-0.7.tar.gz",
"has_sig": false,
"md5_digest": "b1c56ae6a9af1ca9fdc0112b720ea48a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13898,
"upload_time": "2013-11-13T09:06:40",
"url": "https://files.pythonhosted.org/packages/42/71/79b1878deca329c911099cfbd97fd8b29839136f04ace92f0f3b6cab0de4/funcy-0.7.tar.gz"
}
],
"0.8": [
{
"comment_text": "",
"digests": {
"md5": "e02c84ba6deb5c80bba72ee80f9e5c6c",
"sha256": "73da2fa3480e1bf76e911afb63101dd235ad18ff29a24da52b565bf9c77e0011"
},
"downloads": -1,
"filename": "funcy-0.8.tar.gz",
"has_sig": false,
"md5_digest": "e02c84ba6deb5c80bba72ee80f9e5c6c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15756,
"upload_time": "2013-12-19T09:13:26",
"url": "https://files.pythonhosted.org/packages/96/05/e400914aa4e0a2a5a4d7acc4d0571ad6f64d1ed9e6f66758a0815159d5db/funcy-0.8.tar.gz"
}
],
"0.9": [
{
"comment_text": "",
"digests": {
"md5": "039ef2f0fdbac9dc2677250d1ad7bcb3",
"sha256": "089a3833b5de2406e4f34fd03bab50f31a716435534fc3fbab50c500f3773865"
},
"downloads": -1,
"filename": "funcy-0.9.tar.gz",
"has_sig": false,
"md5_digest": "039ef2f0fdbac9dc2677250d1ad7bcb3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18020,
"upload_time": "2014-01-05T03:45:32",
"url": "https://files.pythonhosted.org/packages/45/51/940c654193a06a790fb3103532150aa39fd8afd46baf1bfe650c1d11da9c/funcy-0.9.tar.gz"
}
],
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "da21ab8f4e5d4728dbcda4140fdf5bc6",
"sha256": "9f9ce41645e36c43f153c8106378873d127df3c2981d3cb7a52323134ba69ac9"
},
"downloads": -1,
"filename": "funcy-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "da21ab8f4e5d4728dbcda4140fdf5bc6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 19878,
"upload_time": "2014-06-04T05:35:38",
"url": "https://files.pythonhosted.org/packages/9d/7b/cd3721f1b5196b33bf937dbf783808a5e73f70b5d3d8eedf38b5f7e66823/funcy-1.0.0.tar.gz"
}
],
"1.1": [
{
"comment_text": "",
"digests": {
"md5": "cc76540ede1da7245f719e50a226d726",
"sha256": "bb24e8fdd7fabc645c6b4822a9f6b6d0817512777e607a3ffa4a38ad223f9206"
},
"downloads": -1,
"filename": "funcy-1.1.tar.gz",
"has_sig": false,
"md5_digest": "cc76540ede1da7245f719e50a226d726",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 19515,
"upload_time": "2014-06-19T03:54:30",
"url": "https://files.pythonhosted.org/packages/98/03/9cf2120f3c3fe7f4b79fbe551850461c528cb78a14e2d92cca63a2008c2a/funcy-1.1.tar.gz"
}
],
"1.10": [
{
"comment_text": "",
"digests": {
"md5": "81686d5115a607737ad9afe730d395e7",
"sha256": "215c95e81142d831a0a71a84777268ce852b57e87582c743c662514b85be6bcd"
},
"downloads": -1,
"filename": "funcy-1.10.tar.gz",
"has_sig": false,
"md5_digest": "81686d5115a607737ad9afe730d395e7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 29558,
"upload_time": "2017-11-09T14:24:02",
"url": "https://files.pythonhosted.org/packages/90/1c/87da25f2ca977970ff36dd796b1759b23cadf5b7399decbcca59cd608588/funcy-1.10.tar.gz"
}
],
"1.10.1": [
{
"comment_text": "",
"digests": {
"md5": "6e9fde0b301d93ca67a89bb2a7c4d19c",
"sha256": "c38ef134d34c767b9d631de453e19f710ac0575b9463d55e30f4f93274e089e4"
},
"downloads": -1,
"filename": "funcy-1.10.1.tar.gz",
"has_sig": false,
"md5_digest": "6e9fde0b301d93ca67a89bb2a7c4d19c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 29657,
"upload_time": "2018-02-11T07:21:33",
"url": "https://files.pythonhosted.org/packages/55/bd/e644bea50e4e69be1b534021dd0504de77a058aa3fa8036f8032f1dde3a3/funcy-1.10.1.tar.gz"
}
],
"1.10.2": [
{
"comment_text": "",
"digests": {
"md5": "52f40f8999801abe32411e9706801ef4",
"sha256": "f3f3592a58551575d7f566b95d48970cfe0a9fbf7d6406c9a01c5c65be9121ba"
},
"downloads": -1,
"filename": "funcy-1.10.2-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "52f40f8999801abe32411e9706801ef4",
"packagetype": "bdist_wheel",
"python_version": "3.6",
"requires_python": null,
"size": 34632,
"upload_time": "2018-05-09T14:14:50",
"url": "https://files.pythonhosted.org/packages/46/c6/8a9e1489759fb97e175ccd1405abab1f82d6bd9284893ef74cd345134ab3/funcy-1.10.2-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "4e845187a826ddefb1b4c3dc1f85337b",
"sha256": "95cbcd47b66e1fcc5737ef8f1f66be8626540ed181acaa8b483963d1af860510"
},
"downloads": -1,
"filename": "funcy-1.10.2.tar.gz",
"has_sig": false,
"md5_digest": "4e845187a826ddefb1b4c3dc1f85337b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 29774,
"upload_time": "2018-05-09T14:14:47",
"url": "https://files.pythonhosted.org/packages/8b/9c/082843ab60e810693aa39547cb7099049aa8dd6f902f38c068fd99ba25b1/funcy-1.10.2.tar.gz"
}
],
"1.10.3": [
{
"comment_text": "",
"digests": {
"md5": "9d1f1c3134824cb51e68bdbfc3bb9cff",
"sha256": "544412beb2bc1d7d370f54d5ca86e6c27df4281a3a6c13cce72ea5ab46d254eb"
},
"downloads": -1,
"filename": "funcy-1.10.3-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "9d1f1c3134824cb51e68bdbfc3bb9cff",
"packagetype": "bdist_wheel",
"python_version": "3.6",
"requires_python": null,
"size": 34659,
"upload_time": "2018-06-30T04:16:20",
"url": "https://files.pythonhosted.org/packages/05/da/03e74264b3289be52a54733960d2e1b2dbe5190b64c8489f63c2f072bfc0/funcy-1.10.3-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "d1e0553ee90eb4689b71de05a5ab2ffc",
"sha256": "1d973a2010dc9c7506743f2944ec8b76254111f28b199498705ff298ff3180f3"
},
"downloads": -1,
"filename": "funcy-1.10.3.tar.gz",
"has_sig": false,
"md5_digest": "d1e0553ee90eb4689b71de05a5ab2ffc",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 29839,
"upload_time": "2018-06-30T04:16:17",
"url": "https://files.pythonhosted.org/packages/b4/3c/a0ae5c513f585e8b8a7adb0b3af8ccf93ff618c9ccd1489629449584e4a0/funcy-1.10.3.tar.gz"
}
],
"1.11": [
{
"comment_text": "",
"digests": {
"md5": "7c68a5768b74b227980dd164effa5e71",
"sha256": "b2d424c83cf8e0b6e90708e7325bbd6240008993479e7c273f53d8b220d18f1e"
},
"downloads": -1,
"filename": "funcy-1.11-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "7c68a5768b74b227980dd164effa5e71",
"packagetype": "bdist_wheel",
"python_version": "3.7",
"requires_python": null,
"size": 31479,
"upload_time": "2018-09-29T06:49:15",
"url": "https://files.pythonhosted.org/packages/47/a4/204fa23012e913839c2da4514b92f17da82bf5fc8c2c3d902fa3fa3c6eec/funcy-1.11-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "a9d70c6535c9b1c3ca7950a4df176f4e",
"sha256": "b5e399eb739afcb5a3ad38302b7817f6e7fee6f5fc79b213a5d82ea8bce0d9e6"
},
"downloads": -1,
"filename": "funcy-1.11.tar.gz",
"has_sig": false,
"md5_digest": "a9d70c6535c9b1c3ca7950a4df176f4e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 32204,
"upload_time": "2018-09-29T06:49:13",
"url": "https://files.pythonhosted.org/packages/c7/38/da52cd20ad2cbf42a1a55edc20ae7857104ec33cd4e04a651a8550bc15c2/funcy-1.11.tar.gz"
}
],
"1.12": [
{
"comment_text": "",
"digests": {
"md5": "76863a273adcd233840c810018712951",
"sha256": "49035d5b23d01ff8b6aac15c61ce0d86f4c7ebb383763358b2aa86977e83b7a6"
},
"downloads": -1,
"filename": "funcy-1.12-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "76863a273adcd233840c810018712951",
"packagetype": "bdist_wheel",
"python_version": "3.6",
"requires_python": null,
"size": 34695,
"upload_time": "2019-04-17T15:55:57",
"url": "https://files.pythonhosted.org/packages/b3/23/d1f90f4e2af5f9d4921ab3797e33cf0503e3f130dd390a812f3bf59ce9ea/funcy-1.12-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "bf83cf1266be30eff786a7e464f1fd03",
"sha256": "3f3fb0387c6083ac692a8ac90565a08c257cc4283dc3b136c15bcb3a3d80ab6d"
},
"downloads": -1,
"filename": "funcy-1.12.tar.gz",
"has_sig": false,
"md5_digest": "bf83cf1266be30eff786a7e464f1fd03",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 376940,
"upload_time": "2019-04-17T15:55:54",
"url": "https://files.pythonhosted.org/packages/38/dd/65daa35dba7f9f76fea4df709bca36973ed7cb8b7e52f5e7fbbfe1516eaa/funcy-1.12.tar.gz"
}
],
"1.13": [
{
"comment_text": "",
"digests": {
"md5": "4461a00fdef4f8d0e7aba7ba0ed0c268",
"sha256": "141950038e72bdc2d56fa82468586a1d1291b9cc9346daaaa322dffed1d1da6e"
},
"downloads": -1,
"filename": "funcy-1.13-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "4461a00fdef4f8d0e7aba7ba0ed0c268",
"packagetype": "bdist_wheel",
"python_version": "3.7",
"requires_python": null,
"size": 31910,
"upload_time": "2019-08-04T11:56:25",
"url": "https://files.pythonhosted.org/packages/eb/3a/fc8323f913e8a9c6f33f7203547f8a2171223da5ed965f2541dafb10aa09/funcy-1.13-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "29d945f0082a702d181df33a0db10b3c",
"sha256": "918f333f675d9841ec7d77b9f0d5a272ed290393a33c8ef20e605847de89b1c3"
},
"downloads": -1,
"filename": "funcy-1.13.tar.gz",
"has_sig": false,
"md5_digest": "29d945f0082a702d181df33a0db10b3c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 493223,
"upload_time": "2019-08-04T11:56:22",
"url": "https://files.pythonhosted.org/packages/a0/50/68e2202b1d3913a0fcef9ac53b9909a47da2f022844ae043f9425777352b/funcy-1.13.tar.gz"
}
],
"1.2": [
{
"comment_text": "",
"digests": {
"md5": "669c37a40f90af5f0285da6ddf59255f",
"sha256": "d0af91cecfcfe305e686d02b7da03606f5b425e45b51cebd6c139b21a654cd8b"
},
"downloads": -1,
"filename": "funcy-1.2.tar.gz",
"has_sig": false,
"md5_digest": "669c37a40f90af5f0285da6ddf59255f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 22167,
"upload_time": "2014-08-18T13:34:16",
"url": "https://files.pythonhosted.org/packages/0b/8c/cb92b465b255facecdafd68953f2a9de992623beec792d23dccf2485a7b4/funcy-1.2.tar.gz"
}
],
"1.3": [
{
"comment_text": "",
"digests": {
"md5": "047d3953838ae7d36afbed8688861b14",
"sha256": "f5294cc0ac0cfc87a2466dd0b02dbeaa7d30fb3c1dd538ed3516ac32f2820969"
},
"downloads": -1,
"filename": "funcy-1.3.tar.gz",
"has_sig": false,
"md5_digest": "047d3953838ae7d36afbed8688861b14",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 22364,
"upload_time": "2014-10-20T15:26:25",
"url": "https://files.pythonhosted.org/packages/99/97/ce94fd1ce8f353aa72fcb772e194f56413b19219c0c4d851d0fc7e8278a8/funcy-1.3.tar.gz"
}
],
"1.4": [
{
"comment_text": "",
"digests": {
"md5": "26de652aa83409a3ec22ca865223aff5",
"sha256": "416a7a3f0f772dee4396769cc5fceea59cf84e8b2e0ba3f6cf1d43e8dd0362c1"
},
"downloads": -1,
"filename": "funcy-1.4.tar.gz",
"has_sig": false,
"md5_digest": "26de652aa83409a3ec22ca865223aff5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 22971,
"upload_time": "2015-02-08T07:44:22",
"url": "https://files.pythonhosted.org/packages/3f/87/16419937addd9c95869248a32d8265b8d25679441fc77a6dbe54dbf7907a/funcy-1.4.tar.gz"
}
],
"1.5": [
{
"comment_text": "",
"digests": {
"md5": "ff79155ec8e61b0b08b1a9d412f6cd5f",
"sha256": "f4223a9b0a679795b93d0c42d38d6a4e86f1bb9d65097f38b2a3ed0cfe6ed75b"
},
"downloads": -1,
"filename": "funcy-1.5.tar.gz",
"has_sig": false,
"md5_digest": "ff79155ec8e61b0b08b1a9d412f6cd5f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24405,
"upload_time": "2015-04-24T05:12:50",
"url": "https://files.pythonhosted.org/packages/df/7c/cfa33f3c1f719ead16b4f251a3aaad6f3ec8605ffc79240a61591cc4e1e0/funcy-1.5.tar.gz"
}
],
"1.6": [
{
"comment_text": "",
"digests": {
"md5": "41c5e1555077334ee1a669416863df68",
"sha256": "511495db0c5660af18d3151b008c6ce698ae7fbf60887278e79675e35eed1f01"
},
"downloads": -1,
"filename": "funcy-1.6.tar.gz",
"has_sig": false,
"md5_digest": "41c5e1555077334ee1a669416863df68",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24798,
"upload_time": "2015-09-21T14:05:08",
"url": "https://files.pythonhosted.org/packages/b8/81/37cab2771600d8b4f473bf5d6dad6e13dd3c3d16bbaedc0158d46d105b5e/funcy-1.6.tar.gz"
}
],
"1.7": [
{
"comment_text": "",
"digests": {
"md5": "cfbeb2f506a320bef3bcd57409b7c8c4",
"sha256": "20e384452d7c11a21a55b66c940290189ef2dcfe08b284aecb270e233ba7ec2d"
},
"downloads": -1,
"filename": "funcy-1.7.tar.gz",
"has_sig": false,
"md5_digest": "cfbeb2f506a320bef3bcd57409b7c8c4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24150,
"upload_time": "2016-02-21T10:03:13",
"url": "https://files.pythonhosted.org/packages/d7/a9/da27d30304eaf4aae6a3c49a56c68964405fd5e9d33ff4aa50dd1ef7c1bd/funcy-1.7.tar.gz"
}
],
"1.7.1": [
{
"comment_text": "",
"digests": {
"md5": "d3fd930a84d6d252d2f357083f89e62f",
"sha256": "cc66a1f614c049d77481a7da94f6aca7ba958a97d6a16e47b58c3d60f8f14612"
},
"downloads": -1,
"filename": "funcy-1.7.1.tar.gz",
"has_sig": false,
"md5_digest": "d3fd930a84d6d252d2f357083f89e62f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24179,
"upload_time": "2016-03-02T07:04:55",
"url": "https://files.pythonhosted.org/packages/1e/92/3d3cfd987ff1eea1b669dc525ef6ae8e8bbe9a82a72c4185ee77db84eed1/funcy-1.7.1.tar.gz"
}
],
"1.7.2": [
{
"comment_text": "",
"digests": {
"md5": "f4728924a4d1c390c0bc6e61625dfa33",
"sha256": "69c046b8fa07fe34fb6b7ef3b9dcd900f9527b39af35b81429de26003c3bc5fe"
},
"downloads": -1,
"filename": "funcy-1.7.2.tar.gz",
"has_sig": false,
"md5_digest": "f4728924a4d1c390c0bc6e61625dfa33",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24420,
"upload_time": "2016-11-13T06:12:37",
"url": "https://files.pythonhosted.org/packages/07/39/bbf32f7a6077b061ee070a784bb874f9e09a19a916fbe646ad34fa9d439c/funcy-1.7.2.tar.gz"
}
],
"1.7.3": [
{
"comment_text": "",
"digests": {
"md5": "a9dae26cccfd5ac412f792e71b71036f",
"sha256": "30326d7094f91f621d7f3af2718090faef7b9bc537cc79485b7521673567e14e"
},
"downloads": -1,
"filename": "funcy-1.7.3.tar.gz",
"has_sig": false,
"md5_digest": "a9dae26cccfd5ac412f792e71b71036f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24636,
"upload_time": "2017-02-14T13:49:19",
"url": "https://files.pythonhosted.org/packages/c6/81/1d98289af59d9f2aa58f03e2e6c3bb7cb5f8e74b4974f7d9a509c51325af/funcy-1.7.3.tar.gz"
}
],
"1.7.4": [
{
"comment_text": "",
"digests": {
"md5": "7c613f5bd8ae0b9d931641f361060ce7",
"sha256": "98099603d76a5cff83822721c6500d4814a3952562928613cf7cd5cf14d2807e"
},
"downloads": -1,
"filename": "funcy-1.7.4.tar.gz",
"has_sig": false,
"md5_digest": "7c613f5bd8ae0b9d931641f361060ce7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24733,
"upload_time": "2017-05-13T11:43:28",
"url": "https://files.pythonhosted.org/packages/65/75/23ae4b012cad5f8b6bba3cd794c425e7c0e640ab426ffcadc238eedc180e/funcy-1.7.4.tar.gz"
}
],
"1.7.5": [
{
"comment_text": "",
"digests": {
"md5": "80cc896b43af3ff7704a2b4497a52bb0",
"sha256": "df25de7629392608bce7478196a2f65201bf40a0365b46f4ce01f2dfdddef0d7"
},
"downloads": -1,
"filename": "funcy-1.7.5.tar.gz",
"has_sig": false,
"md5_digest": "80cc896b43af3ff7704a2b4497a52bb0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24752,
"upload_time": "2017-05-17T07:47:20",
"url": "https://files.pythonhosted.org/packages/5d/9a/06214a2cc56785757e9f6aa085b06f755fe063a616511ae1773c0ad87af4/funcy-1.7.5.tar.gz"
}
],
"1.8": [
{
"comment_text": "",
"digests": {
"md5": "9d97a7ddd61fed04f0698cd6d7e2328c",
"sha256": "b23d76972890f4e9c7cee540f522b318548b914992015dc5823f2484d46feadf"
},
"downloads": -1,
"filename": "funcy-1.8.tar.gz",
"has_sig": false,
"md5_digest": "9d97a7ddd61fed04f0698cd6d7e2328c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 25642,
"upload_time": "2017-06-22T04:59:36",
"url": "https://files.pythonhosted.org/packages/d2/9e/f41506cec736f8ce59c88b018cc03f6214474f87546208b4af7d822db868/funcy-1.8.tar.gz"
}
],
"1.9": [
{
"comment_text": "",
"digests": {
"md5": "4e059afa6cd9e020d328fb53f703e528",
"sha256": "30c0753228b4f1fceb653cccca995166da336680a556d70784dca91a388bd40f"
},
"downloads": -1,
"filename": "funcy-1.9.tar.gz",
"has_sig": false,
"md5_digest": "4e059afa6cd9e020d328fb53f703e528",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 29040,
"upload_time": "2017-09-13T10:23:48",
"url": "https://files.pythonhosted.org/packages/12/ca/bddedb88dfd46577a5b72384cef75fb2b27bbf256ed7373e08571cbc8e84/funcy-1.9.tar.gz"
}
],
"1.9.1": [
{
"comment_text": "",
"digests": {
"md5": "75b3c320e4ed13a6ffe032043b033a82",
"sha256": "a33ea9ccdc5d81ad68caff20d3b0cc232b15de5574d22c239784facaf567a9bc"
},
"downloads": -1,
"filename": "funcy-1.9.1.tar.gz",
"has_sig": false,
"md5_digest": "75b3c320e4ed13a6ffe032043b033a82",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 29230,
"upload_time": "2017-10-02T09:11:29",
"url": "https://files.pythonhosted.org/packages/ed/96/33b0f7c14e5ca27a2e49b3d4f1faf6b87db77da77f8fcf2bfe85eb3aa3f0/funcy-1.9.1.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "4461a00fdef4f8d0e7aba7ba0ed0c268",
"sha256": "141950038e72bdc2d56fa82468586a1d1291b9cc9346daaaa322dffed1d1da6e"
},
"downloads": -1,
"filename": "funcy-1.13-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "4461a00fdef4f8d0e7aba7ba0ed0c268",
"packagetype": "bdist_wheel",
"python_version": "3.7",
"requires_python": null,
"size": 31910,
"upload_time": "2019-08-04T11:56:25",
"url": "https://files.pythonhosted.org/packages/eb/3a/fc8323f913e8a9c6f33f7203547f8a2171223da5ed965f2541dafb10aa09/funcy-1.13-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "29d945f0082a702d181df33a0db10b3c",
"sha256": "918f333f675d9841ec7d77b9f0d5a272ed290393a33c8ef20e605847de89b1c3"
},
"downloads": -1,
"filename": "funcy-1.13.tar.gz",
"has_sig": false,
"md5_digest": "29d945f0082a702d181df33a0db10b3c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 493223,
"upload_time": "2019-08-04T11:56:22",
"url": "https://files.pythonhosted.org/packages/a0/50/68e2202b1d3913a0fcef9ac53b9909a47da2f022844ae043f9425777352b/funcy-1.13.tar.gz"
}
]
}