{
"info": {
"author": "Benjamin Bertrand",
"author_email": "beenje@gmail.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3 :: Only"
],
"description": "gidgetlab\n=========\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :target: https://github.com/ambv/black\n\n.. image:: https://readthedocs.org/projects/gidgetlab/badge/?version=latest\n :target: https://gidgetlab.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\nAn asynchronous `GitLab API`_ library.\n\nThis library is based on gidgethub_ from Brett Cannon,\nan async GitHub API library.\n\nI liked the concept with the asynchronous and `sans-I/O`_\napproach and decided to adapt it to the GitLab's API.\nAll credit to `Brett Cannon `_ for the initial library!\n\nQuick start\n-----------\n\nHere is a complete example of a server that responds to\nwebhooks which will greet the author and say thanks\nwhenever an issue is opened::\n\n from gidgetlab.aiohttp import GitLabBot\n\n bot = GitLabBot(\"beenje\")\n\n\n @bot.router.register(\"Issue Hook\", action=\"open\")\n async def issue_opened_event(event, gl, *args, **kwargs):\n \"\"\"Whenever an issue is opened, greet the author and say thanks.\"\"\"\n url = f\"/projects/{event.project_id}/issues/{event.object_attributes['iid']}/notes\"\n message = f\"Thanks for the report @{event.data['user']['username']}! I will look into it ASAP! (I'm a bot).\"\n await gl.post(url, data={\"body\": message})\n\n\n if __name__ == \"__main__\":\n bot.run()\n\nInstallation\n------------\n\nGidgetlab is `available on PyPI `_.\n\n::\n\n python3 -m pip install gidgetlab\n\nTo install web server support (e.g. for ``aiohttp``, ``treq``, or ``tornado``), specify it as an extra dependency:\n\n::\n\n python3 -m pip install gidgetlab[aiohttp]\n\nNote that the library is still in alpha development stage.\n\nGoals\n-----\n\nThe key goal is the same as gidgethub_ (but for GitLab):\nto provide an async base library for the `GitLab API`_\nwhich performs no I/O of its own (a `sans-I/O`_ library).\n\nAnother goal is to easily write GitLab bots: applications that\nrun automation on GitLab, using GitLab WebHooks and API.\nThis was inspired by `Mariatta `_ PyCon 2018 workshop:\n`Build-a-GitHub-Bot Workshop `_.\n\n\nAlternative libraries\n---------------------\n\nIf you think you want a different approach to the GitLab API,\n`GitLab maintains a list of libraries `_.\n\n.. _gidgethub: https://github.com/brettcannon/gidgethub\n.. _`GitLab API`: https://docs.gitlab.com/ce/api/\n.. _`sans-I/O`: https://sans-io.readthedocs.io/\n\n\n",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://gitlab.com/beenje/gidgetlab",
"keywords": "gitlab sans-io async",
"license": "Apache",
"maintainer": "",
"maintainer_email": "",
"name": "gidgetlab",
"package_url": "https://pypi.org/project/gidgetlab/",
"platform": "",
"project_url": "https://pypi.org/project/gidgetlab/",
"project_urls": {
"Homepage": "https://gitlab.com/beenje/gidgetlab"
},
"release_url": "https://pypi.org/project/gidgetlab/0.5.0/",
"requires_dist": [
"aiohttp; extra == 'aiohttp'",
"cachetools; extra == 'aiohttp'",
"aiohttp; extra == 'dev'",
"cachetools; extra == 'dev'",
"pytest (>=3.0.0); extra == 'dev'",
"pytest-aiohttp; extra == 'dev'",
"pytest-asyncio; extra == 'dev'",
"pytest-cov; extra == 'dev'",
"sphinx; extra == 'dev'",
"sphinx-autodoc-typehints; extra == 'dev'",
"tornado; extra == 'dev'",
"treq; extra == 'dev'",
"twisted[tls]; extra == 'dev'",
"sphinx; extra == 'docs'",
"sphinx-autodoc-typehints; extra == 'docs'",
"pytest (>=3.0.0); extra == 'tests'",
"pytest-aiohttp; extra == 'tests'",
"pytest-asyncio; extra == 'tests'",
"pytest-cov; extra == 'tests'",
"tornado; extra == 'tornado'",
"treq; extra == 'treq'",
"twisted[tls]; extra == 'treq'"
],
"requires_python": ">=3.6.0",
"summary": "An async GitLab API library",
"version": "0.5.0"
},
"last_serial": 5502774,
"releases": {
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "141c141e9853c86e3100162e1b590b5a",
"sha256": "2c384781d20cd13b577c8b003bda1639b4f77a16503111f1ca4c8c48479650d7"
},
"downloads": -1,
"filename": "gidgetlab-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "141c141e9853c86e3100162e1b590b5a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 21882,
"upload_time": "2018-07-22T21:05:44",
"url": "https://files.pythonhosted.org/packages/8c/3b/c510d451692b9d1e8facf459ab23c7ec54e9ecb508c46c297e48a0c4d4bb/gidgetlab-0.1.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "ecba16b5c06a9b4c206b856bf800d056",
"sha256": "c91c23b28df6de91b9af8a84737276b7af6c34379f853ca992ed8a0f9439d8bf"
},
"downloads": -1,
"filename": "gidgetlab-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "ecba16b5c06a9b4c206b856bf800d056",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 21163,
"upload_time": "2018-07-22T21:05:46",
"url": "https://files.pythonhosted.org/packages/e2/6b/7124adac5b140fc4adcb60d1a2810a57427f60d7f6f9def553ef49a9f662/gidgetlab-0.1.0.tar.gz"
}
],
"0.1.0.post1": [
{
"comment_text": "",
"digests": {
"md5": "b793bf17e50d1f363795b2681703b244",
"sha256": "70d9283d3f6c1fa173dbe15d8001826ed70f9bb688e1afc476fe6b0dba7f5c14"
},
"downloads": -1,
"filename": "gidgetlab-0.1.0.post1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b793bf17e50d1f363795b2681703b244",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 21955,
"upload_time": "2018-07-22T21:26:12",
"url": "https://files.pythonhosted.org/packages/0e/d0/894945d40681be7fedbe1b26b05c96b9c9a5e48cadc873784fbb97a3fda9/gidgetlab-0.1.0.post1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "29430ee5e0d097677711558e2edb688f",
"sha256": "bc9648db475a1b6b7c81f48610f1ba5a59b7979999fd512292bea39b2f35bafc"
},
"downloads": -1,
"filename": "gidgetlab-0.1.0.post1.tar.gz",
"has_sig": false,
"md5_digest": "29430ee5e0d097677711558e2edb688f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 21174,
"upload_time": "2018-07-22T21:26:13",
"url": "https://files.pythonhosted.org/packages/8a/63/61a83b4a488428761a1784ee8d8a83e934523c12e1f3aaf4bcecba622175/gidgetlab-0.1.0.post1.tar.gz"
}
],
"0.2.0": [
{
"comment_text": "",
"digests": {
"md5": "034ec4aa3854bc83ab73aa4706c84c6a",
"sha256": "23f00697428c1f2126c0c36d93188c786896f172db8cd238f040f3eb7fd98548"
},
"downloads": -1,
"filename": "gidgetlab-0.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "034ec4aa3854bc83ab73aa4706c84c6a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 24335,
"upload_time": "2018-08-18T20:37:31",
"url": "https://files.pythonhosted.org/packages/93/cf/03b03b99f374da5dda29007d8e0fe5be0e64cb8d502e433252931d493d72/gidgetlab-0.2.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "006581fae123e8e4effc397fc45eb63a",
"sha256": "d7b09daf1c20c176f0d4e121605d199efbf4783377487b8be4706eec49d3880f"
},
"downloads": -1,
"filename": "gidgetlab-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "006581fae123e8e4effc397fc45eb63a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 44337,
"upload_time": "2018-08-18T20:37:33",
"url": "https://files.pythonhosted.org/packages/99/15/ef5b316c18fcfbfdc99434e1d3979e8a025827cf00640795c903dede99e3/gidgetlab-0.2.0.tar.gz"
}
],
"0.3.0": [
{
"comment_text": "",
"digests": {
"md5": "d9ae90c9a6d43b41cff7d9a7b02424a9",
"sha256": "ab49707b3e21efc2a5ee6b4e3e8677e3dd77f19237705222ce5dd1a863300337"
},
"downloads": -1,
"filename": "gidgetlab-0.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d9ae90c9a6d43b41cff7d9a7b02424a9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 26900,
"upload_time": "2018-08-21T20:55:49",
"url": "https://files.pythonhosted.org/packages/5e/2d/9a3eb4b78481ded3b8f49aef061f5165b65e13d07446c48076fc737a0777/gidgetlab-0.3.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "ca0efa576f198610857e85fee76ad0b6",
"sha256": "d40522932674e7f7a1101904c4f27f2a366448c74f36c55fb7e3e8ff12d207bd"
},
"downloads": -1,
"filename": "gidgetlab-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "ca0efa576f198610857e85fee76ad0b6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 45112,
"upload_time": "2018-08-21T20:55:51",
"url": "https://files.pythonhosted.org/packages/f0/a0/bd6b7207c05411e708b5bc890d8ce6023194da70c909eb7f712bdecad872/gidgetlab-0.3.0.tar.gz"
}
],
"0.3.1": [
{
"comment_text": "",
"digests": {
"md5": "222f7863b8a3cbd42a6b6eefc5b7cafe",
"sha256": "160f40ebbf34ad803f3a66dfd423486a13d3862b9b4d38e436634a26ce6b9dad"
},
"downloads": -1,
"filename": "gidgetlab-0.3.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "222f7863b8a3cbd42a6b6eefc5b7cafe",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 29089,
"upload_time": "2019-04-17T12:15:45",
"url": "https://files.pythonhosted.org/packages/73/af/2af12ad160e77c1705b7dd99ca973863a19ed5da8b6f8d75d860dbb3eaa8/gidgetlab-0.3.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "a1b7ae4fd036cd632cc7be6625ce7d3f",
"sha256": "1e7c236046d96bae3610b8a7d4ec494cc3413fb1bb52b55bf8cc4d051001c3e5"
},
"downloads": -1,
"filename": "gidgetlab-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "a1b7ae4fd036cd632cc7be6625ce7d3f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 46375,
"upload_time": "2019-04-17T12:15:46",
"url": "https://files.pythonhosted.org/packages/24/36/8656facd4b61b543bc63cd80a60ff61c6d1af269361dcbf188be8c884bbf/gidgetlab-0.3.1.tar.gz"
}
],
"0.4.0": [
{
"comment_text": "",
"digests": {
"md5": "099e4fb33da80667aa3c88e635fb1d03",
"sha256": "20890f5fec518fc26c8d0a05c82a235a65ff937caee6e03366695494ea8b92c1"
},
"downloads": -1,
"filename": "gidgetlab-0.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "099e4fb33da80667aa3c88e635fb1d03",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 27213,
"upload_time": "2019-05-20T12:55:49",
"url": "https://files.pythonhosted.org/packages/71/de/dd1ed4825d1de0724e0f916b71af6f288ce0ca9f8f1d1784298d7a75ac20/gidgetlab-0.4.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "3bceeb08c022d5b1b9a5fba0ebf7d108",
"sha256": "a336cea27eb6f655bf9d480f74c360f4ab7459d5b33ba09a90c7e9938cc32b0b"
},
"downloads": -1,
"filename": "gidgetlab-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "3bceeb08c022d5b1b9a5fba0ebf7d108",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 45925,
"upload_time": "2019-05-20T12:55:51",
"url": "https://files.pythonhosted.org/packages/74/5d/d0015ab6293e568a408a6d162526a0bf12e010c7a5c5b074d3554cf9ee58/gidgetlab-0.4.0.tar.gz"
}
],
"0.5.0": [
{
"comment_text": "",
"digests": {
"md5": "ae80363515112e4146f7b42784f5cd2f",
"sha256": "e2df10a59036ba18f024979c809f9e7b7e28c5bad9a86d35fa15e2a6d81363bd"
},
"downloads": -1,
"filename": "gidgetlab-0.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ae80363515112e4146f7b42784f5cd2f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 29747,
"upload_time": "2019-07-08T19:32:51",
"url": "https://files.pythonhosted.org/packages/2e/eb/1d69d85d7b0a200011ace1f0396868914265b2e12a734cec7d47366c885d/gidgetlab-0.5.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "a81234be6bbf45ca54c09d8915c3e3ed",
"sha256": "4cf1932ba0196353055f466ca1b56b47acb9b170cd7d8e48121e7c74f44575ca"
},
"downloads": -1,
"filename": "gidgetlab-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "a81234be6bbf45ca54c09d8915c3e3ed",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 47376,
"upload_time": "2019-07-08T19:32:53",
"url": "https://files.pythonhosted.org/packages/2a/02/b9a7b440aa766c6caa6453d7269d2e3d59c51dd0161236dd60e9ff242267/gidgetlab-0.5.0.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "ae80363515112e4146f7b42784f5cd2f",
"sha256": "e2df10a59036ba18f024979c809f9e7b7e28c5bad9a86d35fa15e2a6d81363bd"
},
"downloads": -1,
"filename": "gidgetlab-0.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ae80363515112e4146f7b42784f5cd2f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6.0",
"size": 29747,
"upload_time": "2019-07-08T19:32:51",
"url": "https://files.pythonhosted.org/packages/2e/eb/1d69d85d7b0a200011ace1f0396868914265b2e12a734cec7d47366c885d/gidgetlab-0.5.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "a81234be6bbf45ca54c09d8915c3e3ed",
"sha256": "4cf1932ba0196353055f466ca1b56b47acb9b170cd7d8e48121e7c74f44575ca"
},
"downloads": -1,
"filename": "gidgetlab-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "a81234be6bbf45ca54c09d8915c3e3ed",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6.0",
"size": 47376,
"upload_time": "2019-07-08T19:32:53",
"url": "https://files.pythonhosted.org/packages/2a/02/b9a7b440aa766c6caa6453d7269d2e3d59c51dd0161236dd60e9ff242267/gidgetlab-0.5.0.tar.gz"
}
]
}