{ "info": { "author": "Rich Fernandez, Sean Massot, Brian Tenazas, Luke Orland", "author_email": "devs@newsela.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6" ], "description": "# pandas_ext\nPython Pandas extensions for pandas dataframes\n\n\n# Usage\n```\nimport pandas_ext as px\n```\n\n## CSV\n\nBy default, pandas will natively read to s3 but won't write to s3.\n```\npx.read_csv\npx.to_csv\n\n```\n## Excel\n\nBy default, pandas will natively read to s3 but won't write to s3.\n\nTo write to xls:\n```bash\npip install pandas_ext[xls]\n```\n\nTo write xlsx:\n```bash\npip install pandas_ext[xlsx]\n```\n\n## Gdrive\nBy default, pandas does not read/write to Gdrive. \n\n### For G Suite administrators\nAt the organization level, one must do the necessary installation and\n deployment of the [gdrive lambda service](https://github.com/richiverse/gdrive-lambda/) to get this to work.\n\nYou will have to create a service account that shares your G Apps domain with the following APIs enabled:\n\n- Google Drive\n\n- Google Sheets\n\nFrom there you must download the p12 credentials file and reference it in your settings.yml when deploying the gdrive service.\n\n### For Gdrive clients\nOnce that is complete, you must share the folder you are interested in reading/writing to the service account email you've received from your administrator. \n\nLocally, for client access you must set the `GDRIVE_URL` and `GDRIVE_KEY` in your projects environment variable in order to talk to\nthe gdrive lambda service.\n\n\n```\npx.read_gdrive\npx.to_gdrive\n```\n\n## Parquet\nBy default, pandas ~does not read/write to Parquet~. This has been added in pandas version 24 and my methods will eventually update to use them but still allow writing to s3.\n\n```\npx.read_parquet\npx.to_parquet\n```\n\n## Spectrum\nto_spectrum is unique to pandas_ext. \n\n```\npx.to_spectrum\n```\n\n## Salesforce\nsalesforce methods are unique to pandas_ext.\n\n```\npx.read_sfdc\npx.sfdc_metadata\npx.patch_sfdc\npx.async_patch_sfdc\n```\n\n## SQL service\n\n```\npx.read_sql\npx.list_backends\n\n## XML\nPandas doesn't natively support writing to XML format.\n```\npx.to_xml\n```", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/newsela/pandas_ext", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pandas-ext", "package_url": "https://pypi.org/project/pandas-ext/", "platform": "", "project_url": "https://pypi.org/project/pandas-ext/", "project_urls": { "Homepage": "https://github.com/newsela/pandas_ext" }, "release_url": "https://pypi.org/project/pandas-ext/0.5.1/", "requires_dist": null, "requires_python": "", "summary": "Python Pandas extensions for pandas dataframes", "version": "0.5.1" }, "last_serial": 5248232, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "8e6a734f22c719fa9ffa62255c85d759", "sha256": "d3322ef717d893b5e3557a93ff2808dcc6fae6c22e9605a7db7a23c7cad2886b" }, "downloads": -1, "filename": "pandas_ext-0.1.0.tar.gz", "has_sig": false, "md5_digest": "8e6a734f22c719fa9ffa62255c85d759", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5198, "upload_time": "2018-01-30T02:52:59", "url": "https://files.pythonhosted.org/packages/ff/96/0918dfe597c156989632211acca668e0b012714ad1241b72cfd7eabfdf88/pandas_ext-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "1f83a9046c6a0e1a768acebb97f06661", "sha256": "b794f50610cda87cee6fc9882a9465c98532e19f5e3c00ba887e48c71a511330" }, "downloads": -1, "filename": "pandas_ext-0.2.0.tar.gz", "has_sig": false, "md5_digest": "1f83a9046c6a0e1a768acebb97f06661", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5882, "upload_time": "2018-01-30T03:36:46", "url": "https://files.pythonhosted.org/packages/5f/99/881a02b2e69f9121e3ee282ee92babc6218c840efabbd3e6d94078ff8564/pandas_ext-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "6538fa68a35f52091ccece4d5fe8a4b2", "sha256": "e2c0316af8c4f0ef819faa8226d0514787c2ce263352d2d131d6ef265027b96f" }, "downloads": -1, "filename": "pandas_ext-0.3.0.tar.gz", "has_sig": false, "md5_digest": "6538fa68a35f52091ccece4d5fe8a4b2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6027, "upload_time": "2018-01-30T19:34:31", "url": "https://files.pythonhosted.org/packages/5c/67/6dd382a088542f761f9ed80d559e1537f2cddf56b9dcd291ef2cab47f3fe/pandas_ext-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "54ae1c282dc8bd2cf348df4bbb887c5e", "sha256": "f9c3d895038d24fb6c83dddb26d312e4250b73f870dd5a2d615aa6965a5f2d63" }, "downloads": -1, "filename": "pandas_ext-0.3.1.tar.gz", "has_sig": false, "md5_digest": "54ae1c282dc8bd2cf348df4bbb887c5e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6051, "upload_time": "2018-01-30T23:10:06", "url": "https://files.pythonhosted.org/packages/aa/0c/196b33003cc9b408d7fed88dd33727cbfe6d71d0d5da4cd0980a0e30a413/pandas_ext-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "2b9565c53564bfe55f87920c2ce0d931", "sha256": "726c8dae49fbe90b72c59b5219af476c1cc7fb920f5bd53a62c54528032f4da5" }, "downloads": -1, "filename": "pandas_ext-0.3.2.tar.gz", "has_sig": false, "md5_digest": "2b9565c53564bfe55f87920c2ce0d931", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6062, "upload_time": "2018-01-30T23:13:56", "url": "https://files.pythonhosted.org/packages/53/fa/28dab6f0714e30d819544893cc1d5a3bf3cdc2a1cbc8309e0dda6af3cb08/pandas_ext-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "14584805ed30788dd17c928f6a1d1e29", "sha256": "b26664d363a7229f1ce61e79cdd72ea9017e1c2820cf157dcde0e633955238b2" }, "downloads": -1, "filename": "pandas_ext-0.3.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "14584805ed30788dd17c928f6a1d1e29", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9414, "upload_time": "2018-01-31T03:39:05", "url": "https://files.pythonhosted.org/packages/29/c6/083dff987e06a40dd748d22b62e2398516e744cc1797d649a2156b2bc61b/pandas_ext-0.3.3-py2.py3-none-any.whl" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "402e4727bb78328fc17f9dc9b648670f", "sha256": "ecd69ab75a8805ff1c2e27079934658be9c6aea6cc96c287d56eb11cf6a63b21" }, "downloads": -1, "filename": "pandas_ext-0.3.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "402e4727bb78328fc17f9dc9b648670f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9450, "upload_time": "2018-01-31T15:53:44", "url": "https://files.pythonhosted.org/packages/cf/1e/5a6ffd69f0e909426c504164d2e3471e4045de866ed9f8c5c0f42e61b99d/pandas_ext-0.3.4-py2.py3-none-any.whl" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "fc80046a0fa2e2d6ddb33a6f685239bd", "sha256": "ffe8823c62c012eaf36ab743d6beddaf7a8a00ecb26ea454ea407f1797d254d5" }, "downloads": -1, "filename": "pandas_ext-0.3.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fc80046a0fa2e2d6ddb33a6f685239bd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9431, "upload_time": "2018-01-31T16:00:24", "url": "https://files.pythonhosted.org/packages/51/8f/03580d49699cd068eb04ef826d846c6eb07ea4c33f2bb251a294c52de784/pandas_ext-0.3.5-py2.py3-none-any.whl" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "47f6d39bc3541d5371cf19e7f3f19be9", "sha256": "385569d6be49e7a2aeb82530b9cb076fd65d8a1f148504a226f86c6525b16ee0" }, "downloads": -1, "filename": "pandas_ext-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "47f6d39bc3541d5371cf19e7f3f19be9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10564, "upload_time": "2018-01-31T21:39:19", "url": "https://files.pythonhosted.org/packages/64/bf/f4c82f2950836ab8de97283269f4d1d84794674e871fa46f059dfcceafb3/pandas_ext-0.4.0-py2.py3-none-any.whl" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "1362d648985da73c5c950c9b253bfb13", "sha256": "5febc4a755f1a44e80936177ab5eea54feac4192d160ec7ae0d5e073a715d05d" }, "downloads": -1, "filename": "pandas_ext-0.4.1.tar.gz", "has_sig": false, "md5_digest": "1362d648985da73c5c950c9b253bfb13", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8827, "upload_time": "2018-11-05T21:09:07", "url": "https://files.pythonhosted.org/packages/f6/53/a5ad5717e716d1dd46e1931cf1e28359b2cf9d23bbd11a122c82b6dc9c3f/pandas_ext-0.4.1.tar.gz" } ], "0.4.10": [ { "comment_text": "", "digests": { "md5": "88c0edaab61e947b314fcda302242cdc", "sha256": "b5e6eedd32842d9af711d9994653e869c658a981cbb9d37e02880995bbd7466c" }, "downloads": -1, "filename": "pandas_ext-0.4.10-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "88c0edaab61e947b314fcda302242cdc", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 11826, "upload_time": "2019-03-20T13:47:58", "url": "https://files.pythonhosted.org/packages/a0/e8/98f7819487aef2e3dfd4f7f6966fcd02c8016134b60a3bbf2efb1bb61621/pandas_ext-0.4.10-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e92e1f1afec024f0485352ca901d2b39", "sha256": "6c6945be03d63ec5e639a941fa6c7ae398356366f6f39b61a4914de6f2e10a5a" }, "downloads": -1, "filename": "pandas_ext-0.4.10.tar.gz", "has_sig": false, "md5_digest": "e92e1f1afec024f0485352ca901d2b39", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8931, "upload_time": "2019-03-20T13:47:55", "url": "https://files.pythonhosted.org/packages/89/3e/4873fc8cc5cca415cafd4915606ac1a574cafd3292d1caa324efa51f0bf8/pandas_ext-0.4.10.tar.gz" } ], "0.4.11": [ { "comment_text": "", "digests": { "md5": "1ee60d7ec0bb51fe65f879af9ec32ba9", "sha256": "0036ec30d731c878b943da92eacd383f05db8216137cd64d5c28186b804810a8" }, "downloads": -1, "filename": "pandas_ext-0.4.11.tar.gz", "has_sig": false, "md5_digest": "1ee60d7ec0bb51fe65f879af9ec32ba9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9193, "upload_time": "2019-03-20T15:52:18", "url": "https://files.pythonhosted.org/packages/cb/a8/c36983cfd30a49f6fd35cc25b2e016932f91d07e6ec5d2498144d7bf1269/pandas_ext-0.4.11.tar.gz" } ], "0.4.12": [ { "comment_text": "", "digests": { "md5": "4655d2b0024276edf346c4adb76fa4ce", "sha256": "cd8b01c4c156a60c5d3b86d9ba1ef0025f5ea46b17684b7f60884d90937e639f" }, "downloads": -1, "filename": "pandas_ext-0.4.12.tar.gz", "has_sig": false, "md5_digest": "4655d2b0024276edf346c4adb76fa4ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9372, "upload_time": "2019-03-29T12:54:40", "url": "https://files.pythonhosted.org/packages/1c/96/13698b6e9da316ef0d580273ce7929b18b2bd2b7915eec1b841bd17ad40d/pandas_ext-0.4.12.tar.gz" } ], "0.4.13": [ { "comment_text": "", "digests": { "md5": "0b9db30c0708993684d4b7af92da8db9", "sha256": "0b7a282893c2cdba8c0577dd9c678d0fe5a0f4842519311af1f0300535183093" }, "downloads": -1, "filename": "pandas_ext-0.4.13.tar.gz", "has_sig": false, "md5_digest": "0b9db30c0708993684d4b7af92da8db9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10957, "upload_time": "2019-03-29T21:10:59", "url": "https://files.pythonhosted.org/packages/17/53/c08db02adbe290e397f439a1b466a78128fae7de68e2da7ca2aa63b5843e/pandas_ext-0.4.13.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "b9f9d9178e7740e32673f9587b5b60dd", "sha256": "a4a4ebddd87ff6ebeea57d775298961742dfe4b52ec8d6b0293c3d1e4df6bcbc" }, "downloads": -1, "filename": "pandas_ext-0.4.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b9f9d9178e7740e32673f9587b5b60dd", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13076, "upload_time": "2018-11-05T21:30:38", "url": "https://files.pythonhosted.org/packages/60/c7/0323cca6b762d640d5ceb9a8aec2f4614e9a2a56b49c91dc7bc3e3c4bfe1/pandas_ext-0.4.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3bdbd9b2da1d72485ae498fe275784d2", "sha256": "222689c28569b3291a05682559e3cd20644997893ca168b6885a0834e87a4ba0" }, "downloads": -1, "filename": "pandas_ext-0.4.2.tar.gz", "has_sig": false, "md5_digest": "3bdbd9b2da1d72485ae498fe275784d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8831, "upload_time": "2018-11-05T21:32:57", "url": "https://files.pythonhosted.org/packages/de/d7/2934345ac5a33e93ae55ce2112c062be4d173ae252d224d318042ae70836/pandas_ext-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "d60c8951321d23e46aa6e0fa2bd4c40f", "sha256": "24cb8d028c3f30c070994ec79f50ae3ce892d84750dca127f42895b814f58319" }, "downloads": -1, "filename": "pandas_ext-0.4.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d60c8951321d23e46aa6e0fa2bd4c40f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11898, "upload_time": "2018-11-05T21:47:08", "url": "https://files.pythonhosted.org/packages/aa/3b/e99f1da312492ab1b9955cd74303b10f827c9eda115068cd8672e6ba0395/pandas_ext-0.4.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "96c1875988428cc911a92a3055bf1004", "sha256": "afa81861e4c18d7196c3d758911ecc8a26474aca3ec291ba72ec8e2d06a6c5cd" }, "downloads": -1, "filename": "pandas_ext-0.4.3.tar.gz", "has_sig": false, "md5_digest": "96c1875988428cc911a92a3055bf1004", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8845, "upload_time": "2018-11-05T21:48:17", "url": "https://files.pythonhosted.org/packages/39/8c/e9bb451b99fc17ae18c5b5f314f608a127cb74c6701007e545096a7c993b/pandas_ext-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "5e9cbeb2916c2c1b40f8f9333024e358", "sha256": "2139db1f8d43a336ec4d780e254896415330872d2cc898a0f12fbfa37a339b34" }, "downloads": -1, "filename": "pandas_ext-0.4.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5e9cbeb2916c2c1b40f8f9333024e358", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11953, "upload_time": "2018-11-07T21:01:59", "url": "https://files.pythonhosted.org/packages/26/8d/767d2939a04ed362acabfe622731215f3d897ec33988a7e460dc66e60b9d/pandas_ext-0.4.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7519804e9c5b59a624b4ec348d79fc9a", "sha256": "c3fa03517fa49dcc291d33d258ba406f6d962c274b476caabd153493302e7701" }, "downloads": -1, "filename": "pandas_ext-0.4.4.tar.gz", "has_sig": false, "md5_digest": "7519804e9c5b59a624b4ec348d79fc9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8898, "upload_time": "2018-11-07T21:02:15", "url": "https://files.pythonhosted.org/packages/62/9d/3d78470a70bfc3700fa4f73c6a659648d791830177d0ade60677fd439988/pandas_ext-0.4.4.tar.gz" } ], "0.4.5": [ { "comment_text": "", "digests": { "md5": "bd2a8a1d0f7c2d68860fbbd596e47602", "sha256": "2c14aed9a7832aaeb6eda08c076876c6c0e92fa96c2acfbc287e7c8ce5be449b" }, "downloads": -1, "filename": "pandas_ext-0.4.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bd2a8a1d0f7c2d68860fbbd596e47602", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11954, "upload_time": "2018-11-07T22:31:46", "url": "https://files.pythonhosted.org/packages/a7/00/fbaa1e6b54afb59b5ac3214e88a9b6b82fc5819d64b1316f6fd2ce86d643/pandas_ext-0.4.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ec8ff2a8911426e0fccfd2c2d73e9d6c", "sha256": "76789428982884b671245fa6df90c48a39bf2c19db801cf86658767692556807" }, "downloads": -1, "filename": "pandas_ext-0.4.5.tar.gz", "has_sig": false, "md5_digest": "ec8ff2a8911426e0fccfd2c2d73e9d6c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8900, "upload_time": "2018-11-07T22:31:48", "url": "https://files.pythonhosted.org/packages/52/9c/31ba3428b0e4b723e09e78c52638c8b0d2c6b60d4536ed282bc9d567748f/pandas_ext-0.4.5.tar.gz" } ], "0.4.7": [ { "comment_text": "", "digests": { "md5": "4dcfd5dde8c7f4cc2f4f2f7d114db41a", "sha256": "2044903e6d69361cf4c27d465d10288ac4fb94728d4d0bed13a9b07062025c8b" }, "downloads": -1, "filename": "pandas_ext-0.4.7.tar.gz", "has_sig": false, "md5_digest": "4dcfd5dde8c7f4cc2f4f2f7d114db41a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9130, "upload_time": "2019-01-17T02:30:28", "url": "https://files.pythonhosted.org/packages/70/d6/d6c57b9c7df0c8761e8ba674cb4a12ace77032e00af03506869adcf8eec5/pandas_ext-0.4.7.tar.gz" } ], "0.4.8": [ { "comment_text": "", "digests": { "md5": "4f3e2c682bee825ed4269a21f0ff72df", "sha256": "a6a76c8719b5613a0d7db9a6743e7b1dcaf1e4172d94ab2a58f4744d53ec60f0" }, "downloads": -1, "filename": "pandas_ext-0.4.8.tar.gz", "has_sig": false, "md5_digest": "4f3e2c682bee825ed4269a21f0ff72df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9103, "upload_time": "2019-01-23T18:13:46", "url": "https://files.pythonhosted.org/packages/b4/52/faf21a4822d1f8bbb0f256247af8304dc8442dd1fbfcba772990b12aaff2/pandas_ext-0.4.8.tar.gz" } ], "0.4.9": [ { "comment_text": "", "digests": { "md5": "0f05386a57b0668bbbab8a9ed3e9d943", "sha256": "6bea7a0f078d38ffe0f5fa5d6499f354250b17581ed97b6df44d9ab1a9417016" }, "downloads": -1, "filename": "pandas_ext-0.4.9.tar.gz", "has_sig": false, "md5_digest": "0f05386a57b0668bbbab8a9ed3e9d943", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9125, "upload_time": "2019-01-29T15:54:20", "url": "https://files.pythonhosted.org/packages/08/7d/ce910e8e9ae61aecfd9750e0c584c5109d1d779cc58d31d10bd70fdf60ba/pandas_ext-0.4.9.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "7270fb7991f7df0405c6bc600ce569d1", "sha256": "f5b4659b0bb63242e4184b8e15aff4ca1b6f5b25038a0cefbeb1770a816fe3e9" }, "downloads": -1, "filename": "pandas_ext-0.5.1.tar.gz", "has_sig": false, "md5_digest": "7270fb7991f7df0405c6bc600ce569d1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11722, "upload_time": "2019-05-09T16:15:22", "url": "https://files.pythonhosted.org/packages/30/72/50c7c2aadc3975ebd1ad96173957db4a1b2725d318e3d3b8706fb13b451f/pandas_ext-0.5.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7270fb7991f7df0405c6bc600ce569d1", "sha256": "f5b4659b0bb63242e4184b8e15aff4ca1b6f5b25038a0cefbeb1770a816fe3e9" }, "downloads": -1, "filename": "pandas_ext-0.5.1.tar.gz", "has_sig": false, "md5_digest": "7270fb7991f7df0405c6bc600ce569d1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11722, "upload_time": "2019-05-09T16:15:22", "url": "https://files.pythonhosted.org/packages/30/72/50c7c2aadc3975ebd1ad96173957db4a1b2725d318e3d3b8706fb13b451f/pandas_ext-0.5.1.tar.gz" } ] }