{ "info": { "author": "Seva Gavrilov", "author_email": "gavrilovseva@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "\n# Laika\n\n![laika_stamp](http://3.bp.blogspot.com/_r7sReQYd6vU/R_eomB1FWfI/AAAAAAAAAVM/PBKP7ng7KVA/s400/Romania_Laika.jpg)\n\n*laika* is a business reporting library that allows you to request data from different sources and send it to someone or save it at some destination. For example: you can query your database, send the result as an excel attachment via email and save it on Google Drive or Amazon S3.\n\nCheck out the documentation at [readthedocs](http://laika.readthedocs.io/en/latest/index.html).\n\n\n\nLaika was tested on Python 2.7 and 3.5 or higher.\n\n## Installation\n\nYou can install it directly using `pip`:\n\n```bash\n$ pip install laika-lib\n```\n\nYou can specify extra dependencies. To find out what dependencies you need to install, check out reports and results documentation. For example, to install libraries to use Google Drive and Amazon S3 in your reports you must run:\n\n```bash\n$ pip install laika-lib[drive, s3]\n```\n\n## Usage\n\n`laika.py` is a script that lets you use laika library. You can run it like this:\n\n```bash\n$ laika.py some_report\n```\n\nThis command will run the report named *some_report*. This report must be defined in some configuration file. By default laika looks for `config.json` in the same directory. You can specify a custom config passing `-c` parameter:\n\n```bash\n$ laika.py -c my_config.json\n```\n\nPath to configuration file can also be specified with the `LAIKA_CONFIG_FILE_PATH` environment variable:\n\n```bash\n$ export LAIKA_CONFIG_FILE_PATH='/home/me/my_config.json'\n$ laika.py my_report\n```\n\nAnother parameter you can use is `--pwd` which serves for specifying working directory. It can also be specified in configuration file or `LAIKA_PWD` environment variable.\n\n### Arguments\n\nYou can check all the predefined `laika.py` arguments with `--help`.\n\nUndefined arguments will be added to report's definition overwriting default values. Thus, if for example the configuration for `my_report` defines field `my_field` with value `foo`, if you execute it like this:\n\n```bash\n$ laika.py my_report --my_field bar\n```\n\n`my_field` configuration will contain `bar` as value.\n\n\n## Testing\n\nTo run test, you must install test dependencies:\n\n```bash\n$ pip install laika-lib[test]\n```\n\nThen, run test from laika directory:\n\n```bash\n$ cd path/to/laika\n$ python -m unittest discover\n```\n\n\n", "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/trocafone/laika", "keywords": "report reporting etl sql s3 drive ftp adwords", "license": "MIT", "maintainer": "Trocafone Data Science Team", "maintainer_email": "ds@trocafone.com", "name": "laika-lib", "package_url": "https://pypi.org/project/laika-lib/", "platform": "", "project_url": "https://pypi.org/project/laika-lib/", "project_urls": { "Homepage": "https://github.com/trocafone/laika" }, "release_url": "https://pypi.org/project/laika-lib/1.3.4/", "requires_dist": [ "click (==6.2)", "pandas (==0.23.4)", "requests (>=2.21.0)", "six (>=1.11.0)", "googleads (==19.0.0) ; extra == 'adwords'", "xlrd (==1.1.0) ; extra == 'all_reports'", "XlsxWriter (==0.8.4) ; extra == 'all_reports'", "SQLAlchemy (==1.2.17) ; extra == 'all_reports'", "psycopg2 (==2.7.7) ; extra == 'all_reports'", "PyHive[presto] (==0.6.1) ; extra == 'all_reports'", "PyDrive (==1.3.1) ; extra == 'all_reports'", "googleads (==19.0.0) ; extra == 'all_reports'", "boto3 (==1.4.3) ; extra == 'all_reports'", "paramiko (==2.6.0) ; extra == 'all_reports'", "Sphinx (>=1.7.1) ; extra == 'docs'", "sphinx-rtd-theme (>=0.2.4) ; extra == 'docs'", "PyDrive (==1.3.1) ; extra == 'drive'", "xlrd (==1.1.0) ; extra == 'excel'", "XlsxWriter (==0.8.4) ; extra == 'excel'", "SQLAlchemy (==1.2.17) ; extra == 'postgres'", "psycopg2 (==2.7.7) ; extra == 'postgres'", "SQLAlchemy (==1.2.17) ; extra == 'presto'", "PyHive[presto] (==0.6.1) ; extra == 'presto'", "boto3 (==1.4.3) ; extra == 's3'", "paramiko (==2.6.0) ; extra == 'sftp'", "SQLAlchemy (==1.2.17) ; extra == 'sql'", "mock (==1.3.0) ; extra == 'test'" ], "requires_python": "", "summary": "A simple business reporting library", "version": "1.3.4" }, "last_serial": 5826288, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "6b06b72d51eba5c1088adf67db91ad14", "sha256": "59dae27096ad75202441ba0675d7ce8c4bf298de268eabaa8ba871e45ce78410" }, "downloads": -1, "filename": "laika_lib-1.0.0-py2-none-any.whl", "has_sig": false, "md5_digest": "6b06b72d51eba5c1088adf67db91ad14", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 18666, "upload_time": "2018-05-09T15:45:25", "url": "https://files.pythonhosted.org/packages/b3/a6/be0e2d515e29d7b6d83e25f27b321eaabbcf0f0fb3fec39c536fa20d8ddc/laika_lib-1.0.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "450690103bcf978439d4d335db0836c9", "sha256": "653740aa66244334e91d0cda666b17a5970ebb7755588df795b89c22a2dc592e" }, "downloads": -1, "filename": "laika-lib-1.0.0.tar.gz", "has_sig": false, "md5_digest": "450690103bcf978439d4d335db0836c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20005, "upload_time": "2018-05-09T15:45:26", "url": "https://files.pythonhosted.org/packages/1d/5c/47e135d7d279fa09c2d7545f235c2d938f8aee78ed1d05ca4bcbb49e6c0b/laika-lib-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "c046a6fc716ec091400fcb5462419714", "sha256": "4a1fe9590da86073bb084d881bb2a1aca99cd0c9958dacad56109fe88ae42f5e" }, "downloads": -1, "filename": "laika_lib-1.0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "c046a6fc716ec091400fcb5462419714", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 21899, "upload_time": "2018-05-17T20:24:04", "url": "https://files.pythonhosted.org/packages/12/80/0ca05bfca1b5cd20ea764a612fcb16656182ac31c5ac010e1287cd37d960/laika_lib-1.0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "17d500300700950d1005729bde49e79e", "sha256": "6d025aa22c1884561edcf059809e1e0018c884040a1b68f5af3ca21f1415c245" }, "downloads": -1, "filename": "laika-lib-1.0.1.tar.gz", "has_sig": false, "md5_digest": "17d500300700950d1005729bde49e79e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19775, "upload_time": "2018-05-17T20:24:06", "url": "https://files.pythonhosted.org/packages/28/46/6ca66532695e40119ac210c2ec391dad8392c1cbcb63e174f17f9e2593c2/laika-lib-1.0.1.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "c6a86168bb3e2bae9d4064ea9a20d6a9", "sha256": "495c78a68888fd12dc16917e76c809e325bddae72764bda72e73ea554bf30a18" }, "downloads": -1, "filename": "laika_lib-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "c6a86168bb3e2bae9d4064ea9a20d6a9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22197, "upload_time": "2018-07-24T13:31:14", "url": "https://files.pythonhosted.org/packages/23/27/0c5ea2b3c60ccfe78d47eb2c8a768e5b95cbf25698842813513fbbb3d2ad/laika_lib-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3a7cc1e9b0e30d4f0284a07a149d714c", "sha256": "c89b1e54f90a49606749129cb3e550eb3947b729d18436a453e3be9c98797a2a" }, "downloads": -1, "filename": "laika-lib-1.1.0.tar.gz", "has_sig": false, "md5_digest": "3a7cc1e9b0e30d4f0284a07a149d714c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20218, "upload_time": "2018-07-24T13:31:15", "url": "https://files.pythonhosted.org/packages/83/41/1cf91c38723706b1b7bcbae5dac4dcb7cca6d26938cbb850c046787c466f/laika-lib-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "d8d0c19a277bfa40f6108de5da5a6646", "sha256": "c59cfd0f34deae2f3266b4ea52092e0a7b2c4311f88e11eadc22ae0f3c7c7842" }, "downloads": -1, "filename": "laika_lib-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d8d0c19a277bfa40f6108de5da5a6646", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22326, "upload_time": "2018-09-10T20:27:06", "url": "https://files.pythonhosted.org/packages/75/64/3166f65b56a2d51cd0636ef916dc5c435197a2c7bbbb1388d1dd9f5bf7c3/laika_lib-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4f72a46925fb7ba6d84d940680ac2801", "sha256": "5efdc7042c82544797922a4480f0d67e4310fbe6efeac47b751d820d5f2831c1" }, "downloads": -1, "filename": "laika-lib-1.1.1.tar.gz", "has_sig": false, "md5_digest": "4f72a46925fb7ba6d84d940680ac2801", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20461, "upload_time": "2018-09-10T20:27:08", "url": "https://files.pythonhosted.org/packages/f8/3c/a6a902a5d6f7e0c254a5cca3dde836a23192716677a15d0b607bcf4f9e5a/laika-lib-1.1.1.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "fee2c6722fae403b6c79eb348d4f06ef", "sha256": "5f5a43cc81f50004dfb328e954a1325aba3ecb839b2ba74b014ba8c22d7b4a01" }, "downloads": -1, "filename": "laika_lib-1.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "fee2c6722fae403b6c79eb348d4f06ef", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25172, "upload_time": "2019-02-15T20:04:29", "url": "https://files.pythonhosted.org/packages/35/bb/84261c8cffe032ab04eeb688ea5589d734fb82f4b5ef10b63cb98dd98a39/laika_lib-1.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6650fb38d72bd96cfb178c0a686aab2a", "sha256": "1b295cef6a251595898cb75e070b7af97528b1931c0d8174f840208662e323a2" }, "downloads": -1, "filename": "laika-lib-1.2.0.tar.gz", "has_sig": false, "md5_digest": "6650fb38d72bd96cfb178c0a686aab2a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22583, "upload_time": "2019-02-15T20:04:31", "url": "https://files.pythonhosted.org/packages/e7/69/08d7763ec52aa27b54627f02f7c1e5633af2a248c3ee58c384935afba9b0/laika-lib-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "00e1c118908803a739554e47dbb551c0", "sha256": "dc3f57895b73dd5140109ec9ad9beb74d30476a1a67385209210506395fa4434" }, "downloads": -1, "filename": "laika_lib-1.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "00e1c118908803a739554e47dbb551c0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25188, "upload_time": "2019-03-21T20:16:02", "url": "https://files.pythonhosted.org/packages/af/9f/9e93877380625da3997264c24f3b05bf574eba6c4125961662f615210bdf/laika_lib-1.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7f07fa77ea521a0a7442062b49f789ae", "sha256": "b0773c2cd282a4e6e6058abfca5ed3cf9265c850e465aedda42647497b446dec" }, "downloads": -1, "filename": "laika-lib-1.2.1.tar.gz", "has_sig": false, "md5_digest": "7f07fa77ea521a0a7442062b49f789ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22587, "upload_time": "2019-03-21T20:16:04", "url": "https://files.pythonhosted.org/packages/9c/a8/dbed070f28957433c8656a1e01b6b815d37cf16dbe120862bcd3a52538fb/laika-lib-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "717c61c524359379bfd4763a69fdec6b", "sha256": "0825e3eec4ae769df1dfe6258502f298721b1940cce751ab2a5f5675f0fc356d" }, "downloads": -1, "filename": "laika_lib-1.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "717c61c524359379bfd4763a69fdec6b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25191, "upload_time": "2019-05-17T20:37:35", "url": "https://files.pythonhosted.org/packages/2c/00/81db781a76a69140f14982e5281ba780c55c6184ffd7bdc48d635fa50d1b/laika_lib-1.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "89648574505d736d76016b305a14e832", "sha256": "863c92a08ca7dfd2e3ef333ad468e4d400bfd3727a0f011f519e34ee7db072af" }, "downloads": -1, "filename": "laika-lib-1.2.2.tar.gz", "has_sig": false, "md5_digest": "89648574505d736d76016b305a14e832", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22597, "upload_time": "2019-05-17T20:37:36", "url": "https://files.pythonhosted.org/packages/1e/77/32a6b2e9c22ec53cd5a8b2d1172a0ce309f5ba731c22da8e391f74212185/laika-lib-1.2.2.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "5713375f739c0f725017cd8b95218411", "sha256": "c1e28cd68359825e68d0a1e4d64dbf98053e3d6ab25ae457c14a91e8f1138274" }, "downloads": -1, "filename": "laika_lib-1.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "5713375f739c0f725017cd8b95218411", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 25891, "upload_time": "2019-05-24T13:21:38", "url": "https://files.pythonhosted.org/packages/fd/01/ad37d3b65c1d5c8247fd2a3ddf135833b8ad4e7bd0fec966ecdfe7fafdae/laika_lib-1.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e34dd7bb6a2dfaee7f6ce533a5774e6c", "sha256": "270970e3bfcc3ac41f123451af5828cf3c2134b8fa183bf5e4bc3737464c4625" }, "downloads": -1, "filename": "laika-lib-1.3.0.tar.gz", "has_sig": false, "md5_digest": "e34dd7bb6a2dfaee7f6ce533a5774e6c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23255, "upload_time": "2019-05-24T13:21:40", "url": "https://files.pythonhosted.org/packages/a9/2d/801c4d2731c1a8c76e546ae4bdada28cb52e81b4d1565ef7194231b4c307/laika-lib-1.3.0.tar.gz" } ], "1.3.1": [ { "comment_text": "", "digests": { "md5": "4e32a6a4291c0d0d70bb3d12dbaf1b0b", "sha256": "1c2e25267bed403794cd673840b05fdd185cec50a4f85ac8bcf0dc37bd6ed0ce" }, "downloads": -1, "filename": "laika_lib-1.3.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4e32a6a4291c0d0d70bb3d12dbaf1b0b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 26250, "upload_time": "2019-06-10T16:59:47", "url": "https://files.pythonhosted.org/packages/a0/f1/891a2238cb8c82045c62d99295171be79eb551ebc539691d765a2b98078d/laika_lib-1.3.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a125c29f1b8c7261da03d36646a7311e", "sha256": "25aeebe1fed96e2296d1a8cc8dd7c3041550cbc92d771ce87f38dad47fdb6ab7" }, "downloads": -1, "filename": "laika-lib-1.3.1.tar.gz", "has_sig": false, "md5_digest": "a125c29f1b8c7261da03d36646a7311e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24092, "upload_time": "2019-06-10T16:59:49", "url": "https://files.pythonhosted.org/packages/00/e9/32182fbb6017e6074a260cad7de5b1ca3fd9862301f9d5dfaba044bbdaa5/laika-lib-1.3.1.tar.gz" } ], "1.3.2": [ { "comment_text": "", "digests": { "md5": "2e23153472e170161eb496bb4f47e216", "sha256": "8192b6ffed60dd1ae2ec0df034ed8f8473965792675933f6cb786eb3c36542e1" }, "downloads": -1, "filename": "laika_lib-1.3.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2e23153472e170161eb496bb4f47e216", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 26253, "upload_time": "2019-07-02T19:16:55", "url": "https://files.pythonhosted.org/packages/be/94/dc61f43a24c72b09cf3a9d0b13414d849af6b1f42205d41605a934dcf3eb/laika_lib-1.3.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "346a37a668024c8d055d0b88e9c9d60c", "sha256": "e4abe033abfd21c28862f7ccf497e57f3bbffe5246feff58ded5208a35ba047c" }, "downloads": -1, "filename": "laika-lib-1.3.2.tar.gz", "has_sig": false, "md5_digest": "346a37a668024c8d055d0b88e9c9d60c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24097, "upload_time": "2019-07-02T19:16:57", "url": "https://files.pythonhosted.org/packages/24/5f/b69ab78fa0b0e27f0fc5068a4371d7ed2271a7733443f9fb8cc62d918ae7/laika-lib-1.3.2.tar.gz" } ], "1.3.3": [ { "comment_text": "", "digests": { "md5": "5622443b8da949acb5efdadc7f6ad5fb", "sha256": "9ea921a9b11b39b4363fec27e77795e4041f542f0e03a7ff4a4611b9a37c784d" }, "downloads": -1, "filename": "laika_lib-1.3.3-py3-none-any.whl", "has_sig": false, "md5_digest": "5622443b8da949acb5efdadc7f6ad5fb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 26354, "upload_time": "2019-08-16T20:51:38", "url": "https://files.pythonhosted.org/packages/6a/68/083c276442a2e4d1688d3880ea54912d113cb167e85f8476dfc9f4667e39/laika_lib-1.3.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c46a3a6fef11654f0ca591d12c1c666d", "sha256": "02843d1e01f0205f85160add2fbfa25e8c614c452bfc38e1e5017758c72c8041" }, "downloads": -1, "filename": "laika-lib-1.3.3.tar.gz", "has_sig": false, "md5_digest": "c46a3a6fef11654f0ca591d12c1c666d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24188, "upload_time": "2019-08-16T20:51:41", "url": "https://files.pythonhosted.org/packages/c8/52/ec51bcf8c6d953dba6dda203984d98f653e2e67bd22dd16eaed774e78be7/laika-lib-1.3.3.tar.gz" } ], "1.3.4": [ { "comment_text": "", "digests": { "md5": "c403cdbd7b04053eb0c9df707a2e3f3b", "sha256": "f1db6d0355ff5ebae8a759c45193c4b946ee135e29d4c938a74c0c6fb2b4c2f5" }, "downloads": -1, "filename": "laika_lib-1.3.4-py3-none-any.whl", "has_sig": false, "md5_digest": "c403cdbd7b04053eb0c9df707a2e3f3b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 26372, "upload_time": "2019-09-13T15:23:45", "url": "https://files.pythonhosted.org/packages/08/08/42d7903f7cbc58b9646403876fa5caa49f7226065eda3fc8824fa794a89f/laika_lib-1.3.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "69b7a61afd5053cf91cdb45f549d88fc", "sha256": "4ecdeab6b88e25dd6a4c95cc0f154240ae38c2d90f74bd3ce0375810fbe35e89" }, "downloads": -1, "filename": "laika-lib-1.3.4.tar.gz", "has_sig": false, "md5_digest": "69b7a61afd5053cf91cdb45f549d88fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24205, "upload_time": "2019-09-13T15:23:47", "url": "https://files.pythonhosted.org/packages/e4/f4/286aaaa90fb88288148182f164e5b60c15fd5f61a58f7395de4fbe42d992/laika-lib-1.3.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c403cdbd7b04053eb0c9df707a2e3f3b", "sha256": "f1db6d0355ff5ebae8a759c45193c4b946ee135e29d4c938a74c0c6fb2b4c2f5" }, "downloads": -1, "filename": "laika_lib-1.3.4-py3-none-any.whl", "has_sig": false, "md5_digest": "c403cdbd7b04053eb0c9df707a2e3f3b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 26372, "upload_time": "2019-09-13T15:23:45", "url": "https://files.pythonhosted.org/packages/08/08/42d7903f7cbc58b9646403876fa5caa49f7226065eda3fc8824fa794a89f/laika_lib-1.3.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "69b7a61afd5053cf91cdb45f549d88fc", "sha256": "4ecdeab6b88e25dd6a4c95cc0f154240ae38c2d90f74bd3ce0375810fbe35e89" }, "downloads": -1, "filename": "laika-lib-1.3.4.tar.gz", "has_sig": false, "md5_digest": "69b7a61afd5053cf91cdb45f549d88fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24205, "upload_time": "2019-09-13T15:23:47", "url": "https://files.pythonhosted.org/packages/e4/f4/286aaaa90fb88288148182f164e5b60c15fd5f61a58f7395de4fbe42d992/laika-lib-1.3.4.tar.gz" } ] }