{ "info": { "author": "Juntos Somos Mais", "author_email": "labs@juntossomosmais.com.br", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 2.1", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: Portuguese (Brazilian)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.7" ], "description": "# JSM User JWT Service\n\nMiddleware to intercept JWT auth token and more utils functions\n\n## Local development\n\n### Running tests\n\n`docker-compose up integration-tests`\n\n## Install - For Django users\n\n`pip install jsm-user-services[drf]`\n\nAdd `jsm_user_services` to your `INSTALLED_APPS`:\n\n```python\nINSTALLED_APPS = [\n \"django.contrib.admin\",\n \"django.contrib.auth\",\n \"django.contrib.contenttypes\",\n \"django.contrib.sessions\",\n \"django.contrib.messages\",\n \"django.contrib.staticfiles\",\n \"jsm_user_services\",\n \"app_test\",\n]\n```\n\nAdd the Middleware:\n\n```python\nMIDDLEWARE = [\n ...\n \"jsm_user_services.middleware.JsmJwtService\",\n]\n\n# Dev url\nUSER_API_HOST = \"http://ishtar-gate.dev.juntossomosmaisi.com.br/api/v1\"\nUSER_API_TOKEN = \"user_api_token\"\n```\n\n## Install - For Flask users\n\n`pip install jsm-user-services[flask]`\n\nAdd the middleware in your Flask app:\n\n```python\nfrom flask import Flask\nfrom jsm_user_services.flask import middleware\n\napp = Flask(__name__)\n\nmiddleware.JsmJwtService(app)\napp.config.update(\n USER_API_HOST=\"http://ishtar-gate.dev.juntossomosmaisi.com.br/api/v1\", USER_API_TOKEN=\"user_api_token\"\n)\n```\n\n**DISCLAIMER**\n- Currently, only the middleware is implemented for Flask apps\n\n## Use\n\n```python\nfrom jsm_user_services.services.user import current_jwt_token\nfrom jsm_user_services.services.user import get_jsm_token\nfrom jsm_user_services.services.user import get_jsm_user_data_from_jwt\nfrom jsm_user_services.services.user import get_ltm_token\nfrom jsm_user_services.services.user import get_user_email_from_jwt\nfrom jsm_user_services.services.user import get_user_id_from_jwt\nfrom jsm_user_services.services.user import get_user_data_from_server\nfrom jsm_user_services.services.user import get_user_data_from_cpf\nfrom jsm_user_services.services.user import get_cpf_from_jwt\n\ncurrent_jwt_token()\n\"\"\"\nResponse example:\n\"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwiZXhwIjoxNTY1ODc4MjI4LCJqdGkiOiJiZDFmMzBiMGEzMTc0MmRmYjk3MTBiMzEzMTY0M2E2ZiIsInl1bnRpYW5kdSI6IjhyR0NjVHZGTE9VemR2LWRhTFk4SzdHZTF2MmVyQS01TWJOVkZ4TFBwTUNDTmRwTjQ2bDlJMHZFNG9aTmNNanRfZTh5SWJkTlczN0tKRUhWdzM3dmJjOEdLZmlfd0ZmZDJTRDlIYUJuNk80SVVabWVNUjlROVRqVTd0WFI1WDZPeFoyRDRiNXNHSWlKWGQwcGtPcXptOFpFSUl2Y2xtLUNuMjVJMklKNGJ2M2RaeTVtQUhqUnhaTmNMM2RyX1NkX1FGTFpVMWthNmtfQ0FFTkZxOE9CR1RoelNlRmtxeDFfTFBDLXE1dUVCUE9FSmpVdlF0bXhHTF8zUHNiZ0twLXFaazRfQUJ1enY1Zmk5XzFSaHJ5ZzZVWWF6WFRYNkVxcTdDdUJTUlBRMWFqM0FpU1VadGFmNjZjSTZJSThHMkxKYmd3bHhSZ19aRzY1QlpielJ3QnRvUTllUkNxY2FSRG56ZXhKVEhKMUJ0X2N6Z0J5NGxhRnFmbUZFYWZ6b3RNa0ZrZ2lLT1BNRnhMaFdaZlBEYVB0UFA0UjJjeXJEWWxaMkxNdGhrY09lZmVxMTNLa0doT0FRV2FQUHpEbzBNekRXa0VmbEVFUlpRTHo2NkItSE1TaDE1cHNBR09hUS1YcV85SWNLY05paUUzTVBfSWFpU3ZwbVQteGx2VXFiZFR5NDJkMUhhUWh6RmdPaHFoZ2F1cHoxejN0Z0VIWnNwaFdidmdBMlZQaVIyeUUzTnBLMEhPekkwMTk4NnhJRjFiRmlCOGdLMHhCQnBqRjd2bmcxU0N1OEl0TTJGRjNRQUV3czltakgyTXBMZEp5T0ViWmRGT2FLb29SeEZlY3hzRkhaV19LeEsweFdsRVBBZ2loV1NNWmNwRnpZTExiZGlLVDYtamtNckVXZ1NuRk9xajZPeWJxT05NdzRqdVZ3YTV2TTlmcVkzY0EyVlZsOU12dWlieWZRdWV1c3pJa2RaYlMyLW9YZ0oxYmZETERjckp4YWtjVXZMUE0wdmtlZjllZSIsImpzbV9pZGVudGl0eSI6ImV5SmhiR2NpT2lKSVV6STFOaUlzSW5SNWNDSTZJa3BYVkNKOS5leUpsYldGcGJDSTZJakV5TXpRMVFHeHZlV0ZzZEhsS1UwMHVZMjl0SWl3aWRXNXBjWFZsWDI1aGJXVWlPaUpoYzJRaUxDSjNaV0p6YVhSbElqb2lRMnhwWlc1MFFYQndiR2xqWVhScGIyNGlMQ0oxYVdRaU9pSTROVEEzTVdSa1pTMWlOVFk0TFRReFlXWXRZVFUzT1MwelpqUXlZekZrWmpBNU9UZ2lMQ0p6Wld4c1pYSnpJam9pTVdVellqZ3pNV1l0T1RWa01DMDBNV0UzTFdJelpURXRNV1psTURObVlXVXlNRFEySWl3aWNtOXNaU0k2SWtOMWMzUnZiV1Z5SWl3aVkyNXdhbk1pT2lJMk9DNDFPVGN1TWpnd0x6QXdNREV0TURraUxDSnVZbVlpT2pFMU5qRTFOVGd5T0Rjc0ltVjRjQ0k2TVRVMk1qRTJNekE0Tnl3aWFXRjBJam94TlRZeE5UVTRNamczTENKcGMzTWlPaUowWm5BNkx5OXBaR1Z1ZEdsMGVTNXFjMjB2WVhWMGFHOXlhWFI1SWl3aVlYVmtJam9pWW1Nd05URmtaVE10WVdWaFlTMDBZV001TFRobVltWXRNRFZoT0RabE1EZ3pabU5tSW4wLlBVQnRFbGE5ajJHSFFqNEk2TmxpVHV3cjZ4d1M4czZ2UkNWRGp6dy1QeEEifQ.oZvlK-XOBrgN9xZrChHHRdQ0rLMFTPp9jjuGvGM1U78\"\n\"\"\"\n\nget_jsm_token()\n\"\"\"\nResponse example:\n\"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6IjY0NzIyMzM4NjEyQGxveWFsdHlKU00uY29tIiwidW5pcXVlX25hbWUiOiJUZXN0IFVzZXIiLCJ3ZWJzaXRlIjoiQ2xpZW50QXBwbGljYXRpb24iLCJ1aWQiOiI4NzM1YmY4ZC01NDc5LTQ0NDgtODNjZi04OTk5N2Q3ZGY2MDgiLCJzZWxsZXJzIjoiMWUzYjgzMWYtOTVkMC00MWE3LWIzZTEtMWZlMDNmYWUyMDQ2Iiwicm9sZSI6IkN1c3RvbWVyIiwiY25wanMiOiI2OC41OTcuMjgwLzAwMDEtMDkiLCJuYmYiOjE1NjE1NTg2MzUsImV4cCI6MTU2MjE2MzQzNSwiaWF0IjoxNTYxNTU4NjM1LCJpc3MiOiJ0ZnA6Ly9pZGVudGl0eS5qc20vYXV0aG9yaXR5IiwiYXVkIjoiYmMwNTFkZTMtYWVhYS00YWM5LThmYmYtMDVhODZlMDgzZmNmIn0.4dT-6_PmJEbWGw5Q1F18mJBQcXcVmNugQwiLxp6e4Ew\"\n\"\"\"\nget_ltm_token()\n\"\"\"\nResponse example:\n\"b51yreTQ3_4l2Z7zGsEb7UCosv-xulOtzkfflxsxTwrbOYva7loVGhxHmD6Qv5P0x5enm3LuykiAOGvf9fjDkr7qUETk5_OPONonkw1roSwHBpCCjS_IiGWdk2t2mpR4o-SFKMPfKyATzQQkBi886wMJ5g8Sg7GJNaQBHimbHDoWsvSF4zZhMin3IkD-3aVruS3IpBM6-72f4mabCB2kbtRQfTfjU5BvMYYKQzEp79_AWHbUm34gpgh5OJEt9VynHVb0Wzj-_M5sNl8uzEEQ0kixlWyueha2e5gZPHPA2TiSb0dt4WdBUqSL9BPXpsCB9TBtyRkU6JeH-DXo05Px02joOUh_MrjqhbXxYtJXWTkX4E6krHI1kS2r75DFU3dUTfQtELrvn1lQxpNCG_FAX0gB5B_XMWiX2Pn6hWE-QO9uglJgnkllxwhBBiwC1K57ony1tgpZLPY7kapAQveGmJAgWAkFXKtR2s4DK9Bkz_Xz-dUdZRONlBIH6yP4QotiE58QT0DFEluRMXhQX6huPSKuVnyaGLRrbFxdocUPuVgLTigg4rk9zgXX-GmOdHD5sxvC-cd8OWep0r7Pn5URwIdkWFjY_vly8dQDb3Cx2TXx2lXQeXBlj4XwQNlrAJTBGdmnL-Nu6Sk3oyh1_r-u53JyaF4frbt8Q6ZZsNAeZtRNLvM3l1JJ591XpApteouRRFakC6Iu8ED3IRmuzYvCgajDIDede7vtpsBvEp4yxl0\"\n\"\"\"\n\nget_jsm_user_data_from_jwt()\n\"\"\"\nResponse example:\n{\n \"email\": \"64722338612@loyaltyJSM.com\",\n \"unique_name\": \"Test User\",\n \"website\": \"ClientApplication\",\n \"uid\": \"8735bf8d-5479-4448-83cf-89997d7df608\",\n \"sellers\": \"1e3b831f-95d0-41a7-b3e1-1fe03fae2046\",\n \"role\": \"Customer\",\n \"cnpjs\": \"68.597.280/0001-09\",\n \"nbf\": 1561558635,\n \"exp\": 1562163435,\n \"iat\": 1561558635,\n \"iss\": \"tfp://identity.jsm/authority\",\n \"aud\": \"bc051de3-aeaa-4ac9-8fbf-05a86e083fcf\"\n}\n\"\"\"\n\nget_user_email_from_jwt()\n\"\"\"\nResponse example:\n\"64722338612@loyaltyJSM.com\"\n\"\"\"\n\nget_user_id_from_jwt()\n\"\"\"\nResponse example:\n\"85071dde-b568-41af-a579-3f42c1df0998\"\n\"\"\"\n\nget_user_data_from_server()\n\"\"\"\nResponse example:\n{\n \"id\": \"85071dde-b568-41af-a579-3f42c1df0998\",\n \"username\": \"44444444444\",\n \"cpf\": \"44444444444\",\n \"occupation\": \"owner\",\n \"name\": \"ca1bd09f-b109-435f-b6d5-206d28a3e5e2\",\n \"birthday\": \"1990-06-15\",\n \"phones\": [{\"number\": \"5511111111111\", \"type\": \"MOBILE\"}],\n \"emails\": [{\"email\": \"fernando@gmail.com\", \"type\": \"PERSONAL\"}],\n \"roles\": [\"Propriet\u00e1rio\"],\n \"gender\": \"male\",\n \"allow_contact\": True,\n \"mediums\": [\"SMS\", \"Push\"],\n \"rules_agreement\": True,\n \"addresses\": [\n {\n \"postal_code\": \"06763180\",\n \"street\": \"Rua Adolfino Arruda Castanho\",\n \"number\": \"200\",\n \"complement\": \"Ap 133\",\n \"district\": \"Jardim Bom Tempo\",\n \"city\": \"Taboao da Serra\",\n \"state\": \"SP\",\n \"country\": \"Brazil\",\n \"type\": \"HOME\",\n }\n ]\n}\n\"\"\"\n\nget_user_data_from_cpf(cpf)\n\"\"\"\nResponse example:\n{\n \"count\": 1,\n \"next\": null,\n \"previous\": null,\n \"results\": [\n {\n \"id\": \"888707ab-9866-42a3-a67e-23a937cb3e7f\",\n \"created_at\": \"2019-10-18T20:06:44.552669Z\",\n \"updated_at\": \"2019-10-23T14:08:05.737326Z\",\n \"user_id_ref\": \"5cfd56c1-1bc1-4175-9fa9-00449ec448b8\",\n \"metadata\": {\n \"id\": \"5cfd56c1-1bc1-4175-9fa9-00449ec448b8\",\n \"cpf\": \"42879321964\",\n \"name\": \"Fernanda Gabrielly Duarte\",\n \"roles\": [\n \"manager\"\n ],\n \"emails\": [\n {\n \"type\": \"personal\",\n \"email\": \"fernandagabriellyduarte@ymail.com\"\n }\n ],\n \"gender\": \"female\",\n \"phones\": [\n {\n \"type\": \"mobile\",\n \"number\": \"5519991901717\"\n }\n ],\n \"status\": \"active\",\n \"mediums\": [\n \"sms\"\n ],\n \"birthday\": \"1982-06-04\",\n \"username\": \"42879321964\",\n \"addresses\": [\n {\n \"city\": \"Cascavel\",\n \"type\": \"main\",\n \"state\": \"PR\",\n \"number\": \"217\",\n \"street\": \"Rua Riachuelo\",\n \"country\": \"Brazil\",\n \"district\": \"Centro\",\n \"postal_code\": \"85812110\"\n },\n {\n \"city\": \"Cascavel\",\n \"type\": \"shipping\",\n \"state\": \"PR\",\n \"number\": \"217\",\n \"street\": \"Rua Riachuelo\",\n \"country\": \"Brazil\",\n \"district\": \"Centro\",\n \"postal_code\": \"85812110\"\n }\n ],\n \"occupation\": \"c85583ef-b602-4fea-b202-6fc5c58d8189\",\n \"allow_contact\": true,\n \"blocked_reason\": null,\n \"favorite_medium\": \"sms\",\n \"registered_date\": \"2019-10-18T20:06:31.705758+00:00\",\n \"rules_agreement\": true,\n \"rules_agreement_date\": \"2019-10-18T20:06:31.708640+00:00\"\n },\n \"emails\": \"fernandagabriellyduarte@ymail.com\",\n \"phones\": \"5519991901717\"\n }\n ]\n}\n\"\"\"\n\nget_cpf_from_jwt()\n\"\"\"\nResponse example:\n\"09345699823\"\n\"\"\"\n\nget_user_ip()\n\"\"\"\nResponse example:\n\"192.168.0.1\" or None\n\"\"\"\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/juntossomosmais/jsm-user-service", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "jsm-user-services", "package_url": "https://pypi.org/project/jsm-user-services/", "platform": "", "project_url": "https://pypi.org/project/jsm-user-services/", "project_urls": { "Homepage": "https://github.com/juntossomosmais/jsm-user-service" }, "release_url": "https://pypi.org/project/jsm-user-services/1.2.0/", "requires_dist": [ "PyJWT (==2.1.0)", "requests", "djangorestframework ; extra == 'drf'", "request-id-django-log ; extra == 'drf'", "flask ; extra == 'flask'", "flask-log-request-id ; extra == 'flask'" ], "requires_python": "", "summary": "Middleware to intercept JWT auth token and more utils functions", "version": "1.2.0", "yanked": false, "yanked_reason": null }, "last_serial": 11645088, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "58baba10dac6755263ff19817a41c566", "sha256": "04fb821a5b6665354f70fad0ec50c436fdef88f355b9e7f55eaa3bdf7a4b5e7f" }, "downloads": -1, "filename": "jsm_user_services-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "58baba10dac6755263ff19817a41c566", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12161, "upload_time": "2019-06-03T18:15:47", "upload_time_iso_8601": "2019-06-03T18:15:47.287066Z", "url": "https://files.pythonhosted.org/packages/3b/3e/92c332b5b4a6475d3da1ee78591f850151f7c4e189843c91782047151239/jsm_user_services-0.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f89d91b06abf52f9440f0629482182fa", "sha256": "199426f21146af6e622cdb81935f94014217c375d50cb21847c6ec56a9e0da89" }, "downloads": -1, "filename": "jsm_user_services-0.0.1.tar.gz", "has_sig": false, "md5_digest": "f89d91b06abf52f9440f0629482182fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7788, "upload_time": "2019-06-03T18:15:49", "upload_time_iso_8601": "2019-06-03T18:15:49.424554Z", "url": "https://files.pythonhosted.org/packages/05/1c/0becfbc1f231c8505cd9efe844264f5af88e796c9199e609f7c990b42ad3/jsm_user_services-0.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "5765d4da490d9f754a4399b056d74d8d", "sha256": "0027162caf27a32d6f23394ff2dea7329ca1e452c5ed6b976463da7f2cbdca54" }, "downloads": -1, "filename": "jsm_user_services-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "5765d4da490d9f754a4399b056d74d8d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12498, "upload_time": "2019-06-05T16:59:05", "upload_time_iso_8601": "2019-06-05T16:59:05.539844Z", "url": "https://files.pythonhosted.org/packages/8a/76/3e4cf85c7228bb4d7ee8ddd41bfc7cf8c7632b0a72496ca9faf3dd3ba923/jsm_user_services-0.0.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "69ebdbe56c43a0d6a971c14a35b0788e", "sha256": "94e1d7016295b19f3e8a6381502b3f261eee2066061109e05a207479d11437f3" }, "downloads": -1, "filename": "jsm_user_services-0.0.2.tar.gz", "has_sig": false, "md5_digest": "69ebdbe56c43a0d6a971c14a35b0788e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8200, "upload_time": "2019-06-05T16:59:07", "upload_time_iso_8601": "2019-06-05T16:59:07.957958Z", "url": "https://files.pythonhosted.org/packages/eb/f6/7d92038f4f19f5f103b9ed5b54c2d7613485fa5b878f6b7f49f236ffcb57/jsm_user_services-0.0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "9b721fe56ebe81af620bc4d7845cadf4", "sha256": "fda56218f5f2a358e5d93a3f33f2085e68fc54b1f9d8837ae08f569133065862" }, "downloads": -1, "filename": "jsm_user_services-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "9b721fe56ebe81af620bc4d7845cadf4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 12510, "upload_time": "2019-06-10T11:22:31", "upload_time_iso_8601": "2019-06-10T11:22:31.307845Z", "url": "https://files.pythonhosted.org/packages/5b/16/78465cc1ad104db2e9dee79a5c92b49a71746d211dceffa757f63e2712dc/jsm_user_services-0.0.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "72ae60b0c04d93eeb3159a03d02d50c6", "sha256": "dfe2945f7296d3e958b09150ede1be7bbe0ff9c34acec6301e1e77ddd4af186e" }, "downloads": -1, "filename": "jsm_user_services-0.0.3.tar.gz", "has_sig": false, "md5_digest": "72ae60b0c04d93eeb3159a03d02d50c6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8202, "upload_time": "2019-06-10T11:22:34", "upload_time_iso_8601": "2019-06-10T11:22:34.028803Z", "url": "https://files.pythonhosted.org/packages/bf/88/33abcd9c486cece8b1cd3a66eab8d45557f6bfaa8e852c80eac83167a53b/jsm_user_services-0.0.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "e73466924f2b6dee26cf5abc4173c8f0", "sha256": "d7c4e0276ddc5dac89e1bc877d74f77b636f9960fce49767edc98219d78f4991" }, "downloads": -1, "filename": "jsm_user_services-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "e73466924f2b6dee26cf5abc4173c8f0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16610, "upload_time": "2019-06-26T15:53:38", "upload_time_iso_8601": "2019-06-26T15:53:38.294177Z", "url": "https://files.pythonhosted.org/packages/60/45/a65b756f3e7849b4fd12f21e27d6735e61769e944877a36d9254d538170c/jsm_user_services-0.0.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "6b76ed5356b43d51ce45772553043a70", "sha256": "400e9070e2ff005ae202e9af05d70eecc771a7fe777993d6d100e04d25d4139f" }, "downloads": -1, "filename": "jsm_user_services-0.0.4.tar.gz", "has_sig": false, "md5_digest": "6b76ed5356b43d51ce45772553043a70", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15851, "upload_time": "2019-06-26T15:53:43", "upload_time_iso_8601": "2019-06-26T15:53:43.556607Z", "url": "https://files.pythonhosted.org/packages/16/de/2792e7d7e0160dc25c25248a6b9db39eb1a740a1e539f183cdbc33d40fd9/jsm_user_services-0.0.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "4964488d7a96e37a8d8f2e1901852286", "sha256": "2240409c7abfd936c78455954e0716d448e2aa009987bc154099dfb9682e4eb2" }, "downloads": -1, "filename": "jsm_user_services-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "4964488d7a96e37a8d8f2e1901852286", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18391, "upload_time": "2019-06-28T15:03:23", "upload_time_iso_8601": "2019-06-28T15:03:23.678301Z", "url": "https://files.pythonhosted.org/packages/36/df/f9054e49365dee371f018bb4eaeb4c87a34d45462a60dbb0283628871a1a/jsm_user_services-0.0.5-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f28b850e92d071c8954d5bf118669c64", "sha256": "438e597a6bb0ba07a134cd7afb7c1635c165f97d8f990f37c0a17341107a5f76" }, "downloads": -1, "filename": "jsm_user_services-0.0.5.tar.gz", "has_sig": false, "md5_digest": "f28b850e92d071c8954d5bf118669c64", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16871, "upload_time": "2019-06-28T15:03:26", "upload_time_iso_8601": "2019-06-28T15:03:26.082491Z", "url": "https://files.pythonhosted.org/packages/85/dc/ca307972405511f6570eb361ab102e52591b6b6ee6e40090e44223345173/jsm_user_services-0.0.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "1ca231b5004eedc8435cb91d6c4b79c7", "sha256": "ad2c943fe45f2e4edfa94c941b36f7d4b1ef4d25f0d49a4564304d52e0f45df6" }, "downloads": -1, "filename": "jsm_user_services-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "1ca231b5004eedc8435cb91d6c4b79c7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18280, "upload_time": "2019-07-09T21:37:44", "upload_time_iso_8601": "2019-07-09T21:37:44.786320Z", "url": "https://files.pythonhosted.org/packages/fc/ef/d56893f8b6d3f7d09dca0ffc646dfbe8b4ab7df9a7fbe8e0756e6fa9fec9/jsm_user_services-0.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "aafc7793702ae605f5829b6fb971df24", "sha256": "9c0d35a0008f944a2f1d50e12451f4bcf5c6f15abb1daa84e275d02acebefbcc" }, "downloads": -1, "filename": "jsm_user_services-0.1.0.tar.gz", "has_sig": false, "md5_digest": "aafc7793702ae605f5829b6fb971df24", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16784, "upload_time": "2019-07-09T21:37:48", "upload_time_iso_8601": "2019-07-09T21:37:48.167958Z", "url": "https://files.pythonhosted.org/packages/a6/67/e566cffc2f82d814a40195fd9458533e774bb8a8bd0613b8aae052067b02/jsm_user_services-0.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "9d24559915e9b914404f8c7cd21cdc60", "sha256": "7054716e6d1509ef5c58ae5c634bdde5f24142185e81b444c8490fae8bbe389e" }, "downloads": -1, "filename": "jsm_user_services-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "9d24559915e9b914404f8c7cd21cdc60", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18277, "upload_time": "2019-07-09T21:38:20", "upload_time_iso_8601": "2019-07-09T21:38:20.220463Z", "url": "https://files.pythonhosted.org/packages/97/94/4bd8b2d7a8dabd6a73ebb2ede84caeb592b0d35078d923cc6801be6861b4/jsm_user_services-0.1.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9c1381100c4b3c2aaf4ab19c9064e23e", "sha256": "58693a9fd5004776d816fa97dad89f2b0c1fb845a8b426bc9c935ac69da842e9" }, "downloads": -1, "filename": "jsm_user_services-0.1.1.tar.gz", "has_sig": false, "md5_digest": "9c1381100c4b3c2aaf4ab19c9064e23e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16786, "upload_time": "2019-07-09T21:38:25", "upload_time_iso_8601": "2019-07-09T21:38:25.603147Z", "url": "https://files.pythonhosted.org/packages/8b/92/cfe84e70c258acb59ebaae5bde25a03f43498ec71e5394dcf0ca3dedbd86/jsm_user_services-0.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.10.0": [ { "comment_text": "", "digests": { "md5": "40f2a2477ccd42a83a85e6a7e42e7a0c", "sha256": "9338904428788bcde4aadac7a43cc0be9da9c44b4d47f07c7f909ace84cca35e" }, "downloads": -1, "filename": "jsm_user_services-0.10.0.tar.gz", "has_sig": false, "md5_digest": "40f2a2477ccd42a83a85e6a7e42e7a0c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23165, "upload_time": "2020-06-23T12:35:37", "upload_time_iso_8601": "2020-06-23T12:35:37.013864Z", "url": "https://files.pythonhosted.org/packages/29/9e/cbd3f62efd6b873e5c8cdc8de7a8a9655ee342ee0583e5e8cdacd852aba9/jsm_user_services-0.10.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.10.1": [ { "comment_text": "", "digests": { "md5": "c3af391e827ba639f0b3815aa44b080b", "sha256": "5659fa48a3a640764419e09d6ce8b82448e95f26a2b983fd123998446cd45752" }, "downloads": -1, "filename": "jsm_user_services-0.10.1.tar.gz", "has_sig": false, "md5_digest": "c3af391e827ba639f0b3815aa44b080b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23832, "upload_time": "2020-06-23T18:49:48", "upload_time_iso_8601": "2020-06-23T18:49:48.602315Z", "url": "https://files.pythonhosted.org/packages/a5/4c/92840fa5a420c6c1f4aaa1896ff181e37606aa3db5438730c8919f595f1d/jsm_user_services-0.10.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "304e42adc0e06a446c3079ed6bd3ed78", "sha256": "a29bbb194c21ed28984afaf6ed9153e3ffea1c6c0bcc1fb5883136fc2fa12c8c" }, "downloads": -1, "filename": "jsm_user_services-0.11.0.tar.gz", "has_sig": false, "md5_digest": "304e42adc0e06a446c3079ed6bd3ed78", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25303, "upload_time": "2020-07-27T18:19:31", "upload_time_iso_8601": "2020-07-27T18:19:31.493601Z", "url": "https://files.pythonhosted.org/packages/b4/80/3c0a5463eebac6e9fc04f8b06554b3f9cd489ea57c2b74ef6609fc46b58e/jsm_user_services-0.11.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.12.0": [ { "comment_text": "", "digests": { "md5": "a9d830ce8d03526e334fe2d151635078", "sha256": "04741838c0a2722f8aa41a8e64e91f67b5b9179044dc51660189918f1ee8acdf" }, "downloads": -1, "filename": "jsm_user_services-0.12.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a9d830ce8d03526e334fe2d151635078", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35092, "upload_time": "2020-07-29T12:23:01", "upload_time_iso_8601": "2020-07-29T12:23:01.436650Z", "url": "https://files.pythonhosted.org/packages/58/d8/76fb4f579436c79b2184fea2c4ee827c4e30bba48ed3ad82e48ab4585470/jsm_user_services-0.12.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "81851f2ea753c710f37aa200a58329f8", "sha256": "01d74f1ff1c4ab3e399def7a6184bf7722c426eff76a592d7c1b8c75515477ea" }, "downloads": -1, "filename": "jsm_user_services-0.12.0.tar.gz", "has_sig": false, "md5_digest": "81851f2ea753c710f37aa200a58329f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30095, "upload_time": "2020-07-29T12:23:04", "upload_time_iso_8601": "2020-07-29T12:23:04.344169Z", "url": "https://files.pythonhosted.org/packages/4f/de/3f9ac66a66644c948c3cb7a399942956ec8984c0a8d0385925dee63e77f8/jsm_user_services-0.12.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.12.1": [ { "comment_text": "", "digests": { "md5": "edc9a45e453ac9e696c82948b3f35c1d", "sha256": "e7f212336b817d8defbd0c5d8edd893b8f40d2ea18caace2b1b7030dff9e8313" }, "downloads": -1, "filename": "jsm_user_services-0.12.1-py3-none-any.whl", "has_sig": false, "md5_digest": "edc9a45e453ac9e696c82948b3f35c1d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35642, "upload_time": "2020-07-29T16:56:23", "upload_time_iso_8601": "2020-07-29T16:56:23.989972Z", "url": "https://files.pythonhosted.org/packages/93/ef/59c664737c2e9452137637ea605516af83bf5ff71eba6364c4877cdd4c2b/jsm_user_services-0.12.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f1282da569c6def1190e1480554920f5", "sha256": "45c7a78db8537d1b359aaa794baa9ecc968fdc073551c02f899a0e98fc6ea33d" }, "downloads": -1, "filename": "jsm_user_services-0.12.1.tar.gz", "has_sig": false, "md5_digest": "f1282da569c6def1190e1480554920f5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30312, "upload_time": "2020-07-29T16:56:25", "upload_time_iso_8601": "2020-07-29T16:56:25.492890Z", "url": "https://files.pythonhosted.org/packages/90/72/7ffecbf460731dcb31f340e52fbb65719cdc64bdcf977a6c7d7a751db4fd/jsm_user_services-0.12.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.13.0": [ { "comment_text": "", "digests": { "md5": "032d15cb54121c9b6e7b7d770c45b6e3", "sha256": "a10f2b81ac1401e93b9f8a836bdf96f303544900585ec477b450aa3ecd08bc70" }, "downloads": -1, "filename": "jsm_user_services-0.13.0-py3-none-any.whl", "has_sig": false, "md5_digest": "032d15cb54121c9b6e7b7d770c45b6e3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35679, "upload_time": "2020-12-10T20:55:54", "upload_time_iso_8601": "2020-12-10T20:55:54.048239Z", "url": "https://files.pythonhosted.org/packages/97/af/08705c5fcb42ff64266ba06c02b54c2da896ef4a0a677d075f58eeed3fd6/jsm_user_services-0.13.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "29e5f7e5a06ded856eea459bcebd406b", "sha256": "85525a5efce706078ecde4f7ec7a84d176075bb956bb6061f6e2e77e1272e543" }, "downloads": -1, "filename": "jsm_user_services-0.13.0.tar.gz", "has_sig": false, "md5_digest": "29e5f7e5a06ded856eea459bcebd406b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30506, "upload_time": "2020-12-10T20:55:55", "upload_time_iso_8601": "2020-12-10T20:55:55.792560Z", "url": "https://files.pythonhosted.org/packages/aa/e3/b470e9e1fa65906659ccc85e6edef3ba5fcbb3e2a263b63a24eb8633b31e/jsm_user_services-0.13.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.13.1": [ { "comment_text": "", "digests": { "md5": "238911b4aff672a21d4951d9f81163da", "sha256": "d6fe2ab3c163d46320c3d082847fd9ffb525a2f5d3fb809a024b74035dadc4e7" }, "downloads": -1, "filename": "jsm_user_services-0.13.1-py3-none-any.whl", "has_sig": false, "md5_digest": "238911b4aff672a21d4951d9f81163da", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 35687, "upload_time": "2020-12-29T17:19:12", "upload_time_iso_8601": "2020-12-29T17:19:12.037614Z", "url": "https://files.pythonhosted.org/packages/42/13/cedf17a1cb3b52d5c211fb3def31522df8ca5636c49c1a84f15c9c944c66/jsm_user_services-0.13.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8d36f810d2ba624e2dcde7f79dbd8456", "sha256": "497c1bb14d0c4c8ab123c9fa3bf9b86a0edf6ba44f40d3c6aeac3eb076e8ef4a" }, "downloads": -1, "filename": "jsm_user_services-0.13.1.tar.gz", "has_sig": false, "md5_digest": "8d36f810d2ba624e2dcde7f79dbd8456", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30515, "upload_time": "2020-12-29T17:19:13", "upload_time_iso_8601": "2020-12-29T17:19:13.253531Z", "url": "https://files.pythonhosted.org/packages/fe/06/4f2d093e11f7234c315fb6a238814406ce1498342f966253b6d81371910b/jsm_user_services-0.13.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.14.0": [ { "comment_text": "", "digests": { "md5": "069954930f84ed28f16d74c6a51e3d7d", "sha256": "839d166ec351a4f0e20a8deff1094bd6a2c4d0635d76aede9ca3e52d35bf3627" }, "downloads": -1, "filename": "jsm_user_services-0.14.0-py3-none-any.whl", "has_sig": false, "md5_digest": "069954930f84ed28f16d74c6a51e3d7d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 42489, "upload_time": "2021-04-20T12:24:53", "upload_time_iso_8601": "2021-04-20T12:24:53.685209Z", "url": "https://files.pythonhosted.org/packages/3b/23/008766272e75ec31e100efd9a2eb053d1df190dd69ad44ce593faf3d61e6/jsm_user_services-0.14.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8cefa2f31d00e7c8be137de23c7ecc9b", "sha256": "327a3f3825f693557813f936929a5358789decd1c8c46fc48bc3080d9f46f168" }, "downloads": -1, "filename": "jsm_user_services-0.14.0.tar.gz", "has_sig": false, "md5_digest": "8cefa2f31d00e7c8be137de23c7ecc9b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35515, "upload_time": "2021-04-20T12:24:55", "upload_time_iso_8601": "2021-04-20T12:24:55.106746Z", "url": "https://files.pythonhosted.org/packages/64/49/4cac68816fa4e2d8927de5bd68737b3c45790548815767ca2e5184d5e263/jsm_user_services-0.14.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.14.1": [ { "comment_text": "", "digests": { "md5": "e0b8b12453dbcbee10b1409f9a4663e5", "sha256": "67a8f3fb895ee0ae9778a469aa21d6c6356eaaad85bfe63dcdd8508707b93d76" }, "downloads": -1, "filename": "jsm_user_services-0.14.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e0b8b12453dbcbee10b1409f9a4663e5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 42591, "upload_time": "2021-04-20T17:21:03", "upload_time_iso_8601": "2021-04-20T17:21:03.800738Z", "url": "https://files.pythonhosted.org/packages/ca/7a/fb96d78fe9fdfdcf929f9495c5dc418aa69c5094df805d7263a88a5a25b3/jsm_user_services-0.14.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "0cede063fce9ffb9abcc8c5572009535", "sha256": "3c2fe5c7c05775b98399a4bc6b6455ea47b48a1801d5ce4c10cd2187c513767c" }, "downloads": -1, "filename": "jsm_user_services-0.14.1.tar.gz", "has_sig": false, "md5_digest": "0cede063fce9ffb9abcc8c5572009535", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35606, "upload_time": "2021-04-20T17:21:04", "upload_time_iso_8601": "2021-04-20T17:21:04.846949Z", "url": "https://files.pythonhosted.org/packages/4b/ea/3207237a2d28ea4d662777a9062f88ebe9f7b8fddc8dabb1956356ebf0f0/jsm_user_services-0.14.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.14.2": [ { "comment_text": "", "digests": { "md5": "da8f029cfb629129f4ee96f188a08cdc", "sha256": "d3e8ba8990ea45ec2a092198e611d91f47c62935e6f3f688e11cbb43b07ba6e3" }, "downloads": -1, "filename": "jsm_user_services-0.14.2-py3-none-any.whl", "has_sig": false, "md5_digest": "da8f029cfb629129f4ee96f188a08cdc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 42629, "upload_time": "2021-05-12T16:22:16", "upload_time_iso_8601": "2021-05-12T16:22:16.060717Z", "url": "https://files.pythonhosted.org/packages/cc/89/24ae20902ff769048ee09894a87157882342d3444dea7b56c4bcabcce555/jsm_user_services-0.14.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ea4542db5854969ec6050f9a3ed6d1a1", "sha256": "6182e63d3c5ebde5eb18961b204dbb0cc0897b70ef01a429ff8cd7ed909da642" }, "downloads": -1, "filename": "jsm_user_services-0.14.2.tar.gz", "has_sig": false, "md5_digest": "ea4542db5854969ec6050f9a3ed6d1a1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36324, "upload_time": "2021-05-11T17:57:19", "upload_time_iso_8601": "2021-05-11T17:57:19.257251Z", "url": "https://files.pythonhosted.org/packages/7c/06/f655cc480abde440d229196c3f385de18ab6cc0459c652fa3e3bbbe3f126/jsm_user_services-0.14.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.14.3": [ { "comment_text": "", "digests": { "md5": "9cbf596b78ae26769e60868785e5281b", "sha256": "3d9469c8ca117a9de2a03aaf8e88665ca917e1a0917693f41bfddba7179f6786" }, "downloads": -1, "filename": "jsm_user_services-0.14.3-py3-none-any.whl", "has_sig": false, "md5_digest": "9cbf596b78ae26769e60868785e5281b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 42591, "upload_time": "2021-05-12T18:45:35", "upload_time_iso_8601": "2021-05-12T18:45:35.331948Z", "url": "https://files.pythonhosted.org/packages/a9/29/4cb0a0c109b37ea3b302e6221e357c74aa5cb091068bde9dc400ccfaaf85/jsm_user_services-0.14.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "76df8cb5ef5689d69784c8e582613e3b", "sha256": "9e21e3ee9808591c7191212685346ddb5f9718951668535823ab83f69b6c5ba4" }, "downloads": -1, "filename": "jsm_user_services-0.14.3.tar.gz", "has_sig": false, "md5_digest": "76df8cb5ef5689d69784c8e582613e3b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40946, "upload_time": "2021-05-12T16:47:09", "upload_time_iso_8601": "2021-05-12T16:47:09.789856Z", "url": "https://files.pythonhosted.org/packages/64/42/d3d2a942a16d109e344e7ddf2b5ea34e485126e1527d51efbbff5a193ae4/jsm_user_services-0.14.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.15.0": [ { "comment_text": "", "digests": { "md5": "6c659c11e16a331beebf5156ca47f57b", "sha256": "55ab0cfc7c7d865140d9ad58ece30705d533bf860402ffdede5e692782126625" }, "downloads": -1, "filename": "jsm_user_services-0.15.0-py3-none-any.whl", "has_sig": false, "md5_digest": "6c659c11e16a331beebf5156ca47f57b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 42805, "upload_time": "2021-06-12T21:33:10", "upload_time_iso_8601": "2021-06-12T21:33:10.990288Z", "url": "https://files.pythonhosted.org/packages/cb/b7/8ddbb34496cdda948fd78a5f6d83634d13443f881119f5ebb2e836e48d6f/jsm_user_services-0.15.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f69dffe169efc1150031b09c06395172", "sha256": "3da5c70f39a80e2a21cadb9ccfe2e01ec025c1054eee603ab337a834f6b3bd6a" }, "downloads": -1, "filename": "jsm_user_services-0.15.0.tar.gz", "has_sig": false, "md5_digest": "f69dffe169efc1150031b09c06395172", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35808, "upload_time": "2021-06-12T21:33:12", "upload_time_iso_8601": "2021-06-12T21:33:12.764401Z", "url": "https://files.pythonhosted.org/packages/48/e1/f5516e2edf4a3130f1a4e290ed02ec342b3eca62c1a219fb5ec19dc54596/jsm_user_services-0.15.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "45a7afd0c67be460193019d0b9a0ca95", "sha256": "08a9a56c1e1ee106c44d7e99e2051a773c044e4cbaa1678ab7daac3c61b8fea9" }, "downloads": -1, "filename": "jsm_user_services-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "45a7afd0c67be460193019d0b9a0ca95", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18379, "upload_time": "2019-07-20T16:49:38", "upload_time_iso_8601": "2019-07-20T16:49:38.697730Z", "url": "https://files.pythonhosted.org/packages/f4/74/ce8d7fc1951133498cc3d36f19607fbeb1a52d539fc8d9110837ae884f34/jsm_user_services-0.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f736b906b29d0f4f3486a3f3931aad83", "sha256": "0b8346ed645a0ac24c9f063ae25a54c13e2c3838583ada1ffb77c2706168d7a1" }, "downloads": -1, "filename": "jsm_user_services-0.2.0.tar.gz", "has_sig": false, "md5_digest": "f736b906b29d0f4f3486a3f3931aad83", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16873, "upload_time": "2019-07-20T16:49:46", "upload_time_iso_8601": "2019-07-20T16:49:46.566916Z", "url": "https://files.pythonhosted.org/packages/9c/5a/4b1995604f8254a589f0cd49960e647655994167fc1fae5b0204e044b445/jsm_user_services-0.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "b5a8d2583fae9653a133588a7faac9f4", "sha256": "b61dbac2bb5cddbc5c6203140f7ecba19fbfaeb21a6cb8aafa56ff28cb4b5575" }, "downloads": -1, "filename": "jsm_user_services-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "b5a8d2583fae9653a133588a7faac9f4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18412, "upload_time": "2019-08-02T14:00:49", "upload_time_iso_8601": "2019-08-02T14:00:49.222019Z", "url": "https://files.pythonhosted.org/packages/18/e1/25734ec8e55bcfe79304aaea6c1d7907fcb597c20242ca5616c3095f843e/jsm_user_services-0.2.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8aab6d46f244cef57d69530414263b06", "sha256": "41236806d34338632d6047cef8dd21f916ec2d603ded0e4a5edc9a333ba4e016" }, "downloads": -1, "filename": "jsm_user_services-0.2.1.tar.gz", "has_sig": false, "md5_digest": "8aab6d46f244cef57d69530414263b06", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17001, "upload_time": "2019-08-02T14:00:55", "upload_time_iso_8601": "2019-08-02T14:00:55.847001Z", "url": "https://files.pythonhosted.org/packages/10/e2/5caa8922301d9d3465c0411d96725dab7364e472c64832ef02d20f213a0b/jsm_user_services-0.2.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "6e6e6962d813c32a60dd80041df32a0c", "sha256": "4025f5f5525637a404c17faed5e0d9b08d1151d2e94bf5f4a023e4bbd320e2ca" }, "downloads": -1, "filename": "jsm_user_services-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "6e6e6962d813c32a60dd80041df32a0c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18400, "upload_time": "2019-08-02T19:29:13", "upload_time_iso_8601": "2019-08-02T19:29:13.859485Z", "url": "https://files.pythonhosted.org/packages/f8/0c/9c1a18ee0eac715429a5cfff98e24f4c86e05151b9ee81eb8ca76ee82b56/jsm_user_services-0.2.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b68b32d8e9e912b5aa6d1079236c8621", "sha256": "37ecd6ddb32a371a6dbb44f10ca89410ff82efacf805f6e68447317c4802992d" }, "downloads": -1, "filename": "jsm_user_services-0.2.2.tar.gz", "has_sig": false, "md5_digest": "b68b32d8e9e912b5aa6d1079236c8621", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16983, "upload_time": "2019-08-02T19:29:20", "upload_time_iso_8601": "2019-08-02T19:29:20.199324Z", "url": "https://files.pythonhosted.org/packages/74/92/eb9385bd855e0c0f6083e15648a6783db0300d4c727b65ddc9964b99f6fe/jsm_user_services-0.2.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "49063fabc1563a51f89fcc9955c37db9", "sha256": "c8b181e3403c12e0a37de7028b52639c1a5fabfdf3fb1f64fa3a304d1d8d3160" }, "downloads": -1, "filename": "jsm_user_services-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "49063fabc1563a51f89fcc9955c37db9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18416, "upload_time": "2019-08-04T20:14:26", "upload_time_iso_8601": "2019-08-04T20:14:26.871864Z", "url": "https://files.pythonhosted.org/packages/00/86/337237d49e12bceab74f817d51c32807409ea64cf7ed8dbdaae58f3c8a8e/jsm_user_services-0.3.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b3517f4e667e4f0cf900fdffa5180104", "sha256": "7add406373ceaae238a9e847a69649961e805e73e59a68f69b0a0cad1c6cd37c" }, "downloads": -1, "filename": "jsm_user_services-0.3.0.tar.gz", "has_sig": false, "md5_digest": "b3517f4e667e4f0cf900fdffa5180104", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17001, "upload_time": "2019-08-04T20:14:38", "upload_time_iso_8601": "2019-08-04T20:14:38.638863Z", "url": "https://files.pythonhosted.org/packages/c1/85/8c1aadd8ed5f88c720f1f5146a612febfe59d804b60e546ecd88b67dc8f5/jsm_user_services-0.3.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "aabcaee2617cd0bdcffe7865442c4e84", "sha256": "24606716f3c30fb9121543007402f39c47255058dc75d75e346e4acc51ec787b" }, "downloads": -1, "filename": "jsm_user_services-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "aabcaee2617cd0bdcffe7865442c4e84", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15037, "upload_time": "2019-10-23T16:36:23", "upload_time_iso_8601": "2019-10-23T16:36:23.517623Z", "url": "https://files.pythonhosted.org/packages/d0/db/9cf06c75a581e109df8a2339daec35584cd16ada5cf239995cf21f5eb584/jsm_user_services-0.4.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "54b981847a2bdda03d6470a55ceb563f", "sha256": "9a580d276a26d4e631d2115e5f72e9aafa7865492c5add217411ff75c995324e" }, "downloads": -1, "filename": "jsm_user_services-0.4.0.tar.gz", "has_sig": false, "md5_digest": "54b981847a2bdda03d6470a55ceb563f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15667, "upload_time": "2019-10-23T16:36:25", "upload_time_iso_8601": "2019-10-23T16:36:25.820363Z", "url": "https://files.pythonhosted.org/packages/33/0c/06404b72205b96b274bbe07f6bea4ed0247fd1e95f6676424ef3bb505ef0/jsm_user_services-0.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "71ea8d982ab02faea2b3b2d9021ef908", "sha256": "7ca2615b7f61d98570438e9e6b08112f05188e115f918e46da8b031b6e6628f0" }, "downloads": -1, "filename": "jsm_user_services-0.5.0-py3-none-any.whl", "has_sig": false, "md5_digest": "71ea8d982ab02faea2b3b2d9021ef908", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 17660, "upload_time": "2019-12-17T16:05:51", "upload_time_iso_8601": "2019-12-17T16:05:51.091662Z", "url": "https://files.pythonhosted.org/packages/ba/c9/907b191a304e14c75ea4838f3f49cf23e253cd48755d7d8858e52b4bd156/jsm_user_services-0.5.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "8e6493f1c527762716b9ed620217524f", "sha256": "ced2d2972633bb1f06bc942ad9cf96549abda05ab882ac8bba04c9a9144790ec" }, "downloads": -1, "filename": "jsm_user_services-0.5.0.tar.gz", "has_sig": false, "md5_digest": "8e6493f1c527762716b9ed620217524f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18093, "upload_time": "2019-12-17T16:05:52", "upload_time_iso_8601": "2019-12-17T16:05:52.659508Z", "url": "https://files.pythonhosted.org/packages/4d/8f/f1e707f1da33b09decd72ad229c7c5cb2563687d2a1ce46efbb6fe3d4443/jsm_user_services-0.5.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "bf486368c2cadb9cc34375618a952608", "sha256": "38e4647a359692891fe2c941c8f72072d8a16aa1562812426763d064a36bfc89" }, "downloads": -1, "filename": "jsm_user_services-0.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "bf486368c2cadb9cc34375618a952608", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18164, "upload_time": "2020-04-13T22:07:53", "upload_time_iso_8601": "2020-04-13T22:07:53.598156Z", "url": "https://files.pythonhosted.org/packages/48/79/9f209fd9e845d4d3911b836934cc47445c6197099b5e55fa1c266239566a/jsm_user_services-0.6.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "d32ac2835782c73eeae26d5160dd15de", "sha256": "b15bb08ae319427ac9df3e93108535e174c187f0302e39b09733970c49c53687" }, "downloads": -1, "filename": "jsm_user_services-0.6.0.tar.gz", "has_sig": false, "md5_digest": "d32ac2835782c73eeae26d5160dd15de", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18630, "upload_time": "2020-04-13T22:07:54", "upload_time_iso_8601": "2020-04-13T22:07:54.880932Z", "url": "https://files.pythonhosted.org/packages/c7/b6/d385c5624d82e47845d370b74051f95c0942e8a149a83aa496f49e78470c/jsm_user_services-0.6.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "e029afc576057cce3783d8faccd9b52c", "sha256": "7ca73d4e1e580efb76b59cac394775a3badf00bcabf42fd1d4c6408e6155b29d" }, "downloads": -1, "filename": "jsm_user_services-0.7.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e029afc576057cce3783d8faccd9b52c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 18771, "upload_time": "2020-04-22T19:03:01", "upload_time_iso_8601": "2020-04-22T19:03:01.143699Z", "url": "https://files.pythonhosted.org/packages/45/e8/67a21bfc75e5a76134a3f7525792c09a341e676ec419521609187c8787b2/jsm_user_services-0.7.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "15cd987ccc8701c605490a8129a807f1", "sha256": "6bd80331ca927ce29a53793cc777dadda920df84969de3f152b1992e6b2aeb28" }, "downloads": -1, "filename": "jsm_user_services-0.7.0.tar.gz", "has_sig": false, "md5_digest": "15cd987ccc8701c605490a8129a807f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18927, "upload_time": "2020-04-22T19:03:02", "upload_time_iso_8601": "2020-04-22T19:03:02.682594Z", "url": "https://files.pythonhosted.org/packages/92/91/04506e980a543d517a1e3ea3f46399bf0dd65f0e00899c672109d7143eaa/jsm_user_services-0.7.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "56d26dda9d5a23c5a4bdb88a1a106548", "sha256": "a4391617a111eaf3b13b35ddca2befa55dd9c47fe722e97fd680d566427ba6a7" }, "downloads": -1, "filename": "jsm_user_services-0.8.0.tar.gz", "has_sig": false, "md5_digest": "56d26dda9d5a23c5a4bdb88a1a106548", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19561, "upload_time": "2020-05-29T22:11:27", "upload_time_iso_8601": "2020-05-29T22:11:27.100524Z", "url": "https://files.pythonhosted.org/packages/fe/7e/bb373d7777d0c318fe4d7d018b1d854278761efdeb703802a612d9059b87/jsm_user_services-0.8.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "19584ed191ebf85d53759bbf833afc23", "sha256": "172f70e22bfdcd2101890eb1979b3095d7338812aae7b386ac49a4afd0e7839b" }, "downloads": -1, "filename": "jsm_user_services-0.8.1.tar.gz", "has_sig": false, "md5_digest": "19584ed191ebf85d53759bbf833afc23", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20129, "upload_time": "2020-06-03T01:49:20", "upload_time_iso_8601": "2020-06-03T01:49:20.256922Z", "url": "https://files.pythonhosted.org/packages/fd/4b/dc2916c62840b1dda14d2021d54f784ee8d872ce6c0586e3a069e6a3f083/jsm_user_services-0.8.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "0d35aae2468708f6d328312aedee4bd4", "sha256": "24d8eaf19b6ad4c2c8756be9f0de762830cac2129aeec0459f7f79013adf3176" }, "downloads": -1, "filename": "jsm_user_services-0.9.0.tar.gz", "has_sig": false, "md5_digest": "0d35aae2468708f6d328312aedee4bd4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21658, "upload_time": "2020-06-12T15:40:28", "upload_time_iso_8601": "2020-06-12T15:40:28.086779Z", "url": "https://files.pythonhosted.org/packages/3e/39/52a8c96280148665531b2a6f8c5145bf14ba494f990c1306b912eccd0aeb/jsm_user_services-0.9.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "f0c59b56f1408e268e6b9eb34a29ebb3", "sha256": "ad776d59651656285a44f3a6f69d467a961d184b5414e4dd28536f673f95007a" }, "downloads": -1, "filename": "jsm_user_services-0.9.1.tar.gz", "has_sig": false, "md5_digest": "f0c59b56f1408e268e6b9eb34a29ebb3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22110, "upload_time": "2020-06-15T18:41:16", "upload_time_iso_8601": "2020-06-15T18:41:16.233545Z", "url": "https://files.pythonhosted.org/packages/17/73/dd84a04f01a872cf4883c61c3fa5d9fe58ae326d5cbba20ee5573d11855e/jsm_user_services-0.9.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "357403b39d82d2331a86afb4b3fba726", "sha256": "bb4cdc0abf426b031dd032175f54ae9df84296b96cc72069bd30d6495f638d6b" }, "downloads": -1, "filename": "jsm_user_services-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "357403b39d82d2331a86afb4b3fba726", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 42845, "upload_time": "2021-06-15T21:58:47", "upload_time_iso_8601": "2021-06-15T21:58:47.830821Z", "url": "https://files.pythonhosted.org/packages/ce/4a/cb60c7e7531e31ecaee34f4cf8a414efd85b9cc70c38b72de71361232dc1/jsm_user_services-1.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a6c7a2576b8c9a8c324ef41bc8634a95", "sha256": "598c27bea0608f2f9e4f69c33800f2639733512657a2847810056aae87fcfb45" }, "downloads": -1, "filename": "jsm_user_services-1.0.0.tar.gz", "has_sig": false, "md5_digest": "a6c7a2576b8c9a8c324ef41bc8634a95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35855, "upload_time": "2021-06-15T21:58:49", "upload_time_iso_8601": "2021-06-15T21:58:49.279714Z", "url": "https://files.pythonhosted.org/packages/43/ae/2f6b2250d5093d3ef2d7b4315aae1f1b684dd6835b550a46581c61010123/jsm_user_services-1.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "e3982ea8f365cc4886135c666b335ea8", "sha256": "aa44f6b8092fc63909514dcf4578a66421feaab2f26a20fd81ea4738ea4b5e4c" }, "downloads": -1, "filename": "jsm_user_services-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e3982ea8f365cc4886135c666b335ea8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46160, "upload_time": "2021-07-16T12:40:54", "upload_time_iso_8601": "2021-07-16T12:40:54.137573Z", "url": "https://files.pythonhosted.org/packages/4b/92/5a14e406b5fdc06ac54f42dbe051766fd1bea6300d30b634fc28e10f399f/jsm_user_services-1.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "0067b328490c9a4f6cfa2d6e3482a5a5", "sha256": "886bfd5a0f8beecbc6c58f5066ce48f0f871ac96d6716c972955e16661af5097" }, "downloads": -1, "filename": "jsm_user_services-1.1.0.tar.gz", "has_sig": false, "md5_digest": "0067b328490c9a4f6cfa2d6e3482a5a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38064, "upload_time": "2021-07-16T12:40:55", "upload_time_iso_8601": "2021-07-16T12:40:55.517386Z", "url": "https://files.pythonhosted.org/packages/71/3d/72ab42e3a06f6173b7b793a32c110142ad6638a28c558b24e6bb5e5fdbab/jsm_user_services-1.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "e76e2cb68273b97bfbac7fa1f92d0b16", "sha256": "8a2e3b4f1f4028d148c0a97af9b00f2b353136199d532a081f2ce238f1f797c9" }, "downloads": -1, "filename": "jsm_user_services-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e76e2cb68273b97bfbac7fa1f92d0b16", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46146, "upload_time": "2021-07-20T17:46:41", "upload_time_iso_8601": "2021-07-20T17:46:41.054786Z", "url": "https://files.pythonhosted.org/packages/db/48/fdfc72480a70e00be444c4e7f7f0af23fd96d5c63c1b5d123faf3a22d89b/jsm_user_services-1.1.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "1df40ac3d7af1d74b1d82d294b299b80", "sha256": "122d3efb55bcaeac26f91d836819d764bf63033067f30ee19eab82cf52a543eb" }, "downloads": -1, "filename": "jsm_user_services-1.1.1.tar.gz", "has_sig": false, "md5_digest": "1df40ac3d7af1d74b1d82d294b299b80", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38058, "upload_time": "2021-07-20T17:46:42", "upload_time_iso_8601": "2021-07-20T17:46:42.552935Z", "url": "https://files.pythonhosted.org/packages/ed/c6/110bf9c26522235d4f8b4ac1abe28b1daa076bfe3eb7a65288c3c57f26f2/jsm_user_services-1.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "48c68281b9f59034dbc8f16b2864ad05", "sha256": "1d6ebaad3b3051edfd9f105b70bdc8459324dabaa0eb779114294de115a5eaee" }, "downloads": -1, "filename": "jsm_user_services-1.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "48c68281b9f59034dbc8f16b2864ad05", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46456, "upload_time": "2021-07-27T13:30:34", "upload_time_iso_8601": "2021-07-27T13:30:34.479489Z", "url": "https://files.pythonhosted.org/packages/65/3b/204eed8e27d273284cab07362782b58045633eed9b1f895cf09499e35640/jsm_user_services-1.1.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4574b6b71c930899af8b8003a060055b", "sha256": "94015b56fd522102c0e4305e78e6dd3d5699d3e868fd87623e474b609958e4d7" }, "downloads": -1, "filename": "jsm_user_services-1.1.2.tar.gz", "has_sig": false, "md5_digest": "4574b6b71c930899af8b8003a060055b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38340, "upload_time": "2021-07-27T13:30:36", "upload_time_iso_8601": "2021-07-27T13:30:36.538007Z", "url": "https://files.pythonhosted.org/packages/cf/35/e59acbde36d421e8fe1c956158d4d7c12608f8bc6ae23be1a883e2dc6e38/jsm_user_services-1.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "3967bf8cd55de15b063e270f5b34b464", "sha256": "8fabd5d28d99a48826f41c18b17730fb9488c610033d9cfa873f80536c6ce952" }, "downloads": -1, "filename": "jsm_user_services-1.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "3967bf8cd55de15b063e270f5b34b464", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 46527, "upload_time": "2021-08-23T19:19:52", "upload_time_iso_8601": "2021-08-23T19:19:52.606778Z", "url": "https://files.pythonhosted.org/packages/f5/d2/84c5d995d6590f67afaa5e0af700198de3567c56dec825f073d648c1d781/jsm_user_services-1.1.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a7d8bc6730573401cd0ad26f836d7561", "sha256": "70fa2a0309469b6497c2bf7087eb7cf2faeb5953ae0bba2a99419871d2e6b5f8" }, "downloads": -1, "filename": "jsm_user_services-1.1.3.tar.gz", "has_sig": false, "md5_digest": "a7d8bc6730573401cd0ad26f836d7561", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38492, "upload_time": "2021-08-23T19:19:54", "upload_time_iso_8601": "2021-08-23T19:19:54.057118Z", "url": "https://files.pythonhosted.org/packages/36/a6/c90e18c1f406080db19c97d9e3f045ade435c9e705372b7f3d9e9a162d1e/jsm_user_services-1.1.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "b3dddcd2af1a7c2dd9fa206f98277275", "sha256": "567f6a8e623f24823cced12a39c0830fb1226524c1d50bc0b9570876cd47ccaf" }, "downloads": -1, "filename": "jsm_user_services-1.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b3dddcd2af1a7c2dd9fa206f98277275", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 47351, "upload_time": "2021-10-06T14:51:31", "upload_time_iso_8601": "2021-10-06T14:51:31.864889Z", "url": "https://files.pythonhosted.org/packages/a8/5a/44ed933a645269cf672681e80a81cd30cd39f02f797dc1d8ad0576cfcb50/jsm_user_services-1.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "473fa985c116031ec5adceffe1558418", "sha256": "0f50ad60bc8e686651d19e45ad6521f596eb1e39e9e8eef39d508a525d49a563" }, "downloads": -1, "filename": "jsm_user_services-1.2.0.tar.gz", "has_sig": false, "md5_digest": "473fa985c116031ec5adceffe1558418", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39010, "upload_time": "2021-10-06T14:51:33", "upload_time_iso_8601": "2021-10-06T14:51:33.429524Z", "url": "https://files.pythonhosted.org/packages/1d/1d/99a0a9a365b650301f1e31d4ee7e817b98440bd65f60fd32648d4fd86b89/jsm_user_services-1.2.0.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b3dddcd2af1a7c2dd9fa206f98277275", "sha256": "567f6a8e623f24823cced12a39c0830fb1226524c1d50bc0b9570876cd47ccaf" }, "downloads": -1, "filename": "jsm_user_services-1.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b3dddcd2af1a7c2dd9fa206f98277275", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 47351, "upload_time": "2021-10-06T14:51:31", "upload_time_iso_8601": "2021-10-06T14:51:31.864889Z", "url": "https://files.pythonhosted.org/packages/a8/5a/44ed933a645269cf672681e80a81cd30cd39f02f797dc1d8ad0576cfcb50/jsm_user_services-1.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "473fa985c116031ec5adceffe1558418", "sha256": "0f50ad60bc8e686651d19e45ad6521f596eb1e39e9e8eef39d508a525d49a563" }, "downloads": -1, "filename": "jsm_user_services-1.2.0.tar.gz", "has_sig": false, "md5_digest": "473fa985c116031ec5adceffe1558418", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39010, "upload_time": "2021-10-06T14:51:33", "upload_time_iso_8601": "2021-10-06T14:51:33.429524Z", "url": "https://files.pythonhosted.org/packages/1d/1d/99a0a9a365b650301f1e31d4ee7e817b98440bd65f60fd32648d4fd86b89/jsm_user_services-1.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }