{
"info": {
"author": "Mozilla Services",
"author_email": "services-dev@mozilla.com",
"bugtrack_url": null,
"classifiers": [
"License :: OSI Approved :: Apache Software License",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Topic :: Internet :: WWW/HTTP",
"Topic :: Internet :: WWW/HTTP :: WSGI :: Application"
],
"description": "Firefox Accounts support in Kinto\n=================================\n\n|travis| |master-coverage|\n\n.. |travis| image:: https://travis-ci.org/Kinto/kinto-fxa.svg?branch=master\n :target: https://travis-ci.org/Kinto/kinto-fxa\n\n.. |master-coverage| image::\n https://coveralls.io/repos/Kinto/kinto-fxa/badge.png?branch=master\n :alt: Coverage\n :target: https://coveralls.io/r/Kinto/kinto-fxa\n\n*Kinto-fxa* enables authentication in *Kinto* applications using\n*Firefox Accounts* OAuth2 bearer tokens.\n\nN.B. This project used to be called *cliquet-fxa*, but was renamed to\n *kinto-fxa* following the rename of the *cliquet* project to\n *kinto*.\n\nIt provides:\n\n* An authentication policy class;\n* Integration with *Kinto* cache backend for token verifications;\n* Integration with *Kinto* for heartbeat view checks;\n* Some optional endpoints to perform the *OAuth* dance (*optional*).\n\n\n* `Kinto documentation `_\n* `Issue tracker `_\n\n\nInstallation\n------------\n\nAs `stated in the official documentation `_,\nFirefox Accounts OAuth integration is currently limited to Mozilla relying services.\n\nInstall the Python package:\n\n::\n\n pip install kinto-fxa\n\n\nInclude the package in the project configuration:\n\n::\n\n kinto.includes = kinto_fxa\n\nAnd configure authentication policy using `pyramid_multiauth\n`_ formalism:\n\n::\n\n multiauth.policies = fxa\n multiauth.policy.fxa.use = kinto_fxa.authentication.FxAOAuthAuthenticationPolicy\n\nBy default, it will rely on the cache configured in *Kinto*.\n\n\nConfiguration\n-------------\n\nFill those settings with the values obtained during the application registration:\n\n::\n\n fxa-oauth.client_id = 89513028159972bc\n fxa-oauth.client_secret = 9aced230585cc0aaea0a3467dd800\n fxa-oauth.oauth_uri = https://oauth-stable.dev.lcip.org/v1\n fxa-oauth.requested_scope = profile kinto\n fxa-oauth.required_scope = kinto\n fxa-oauth.webapp.authorized_domains = *\n # fxa-oauth.cache_ttl_seconds = 300\n # fxa-oauth.state.ttl_seconds = 3600\n\n\nIn case the application shall not behave as a relier (a.k.a. OAuth dance\nendpoints disabled):\n\n::\n\n fxa-oauth.relier.enabled = false\n\n\nIf necessary, override default values for authentication policy:\n\n::\n\n # multiauth.policy.fxa.realm = Realm\n\nHandling multiple FxA clients\n:::::::::::::::::::::::::::::\n\nIf you want to isolate data between two FxA apps using the same Kinto\nservice to sync their data you can define client specific\nconfiguration:\n\n::\n\n fxa-oauth.clients.notes.client_id = 89513028159972bc\n fxa-oauth.clients.notes.required_scope = profile app-notes\n\n fxa-oauth.clients.todo.client_id = 1805184631529d5a\n fxa-oauth.clients.todo.required_scope = profile app-todo\n\n\nDepending on the requested scopes, Kinto Fxa will assign a user id or\nanother (using a suffix):\n\n - `fxa:{user_id}-notes` for the former\n - `fxa:{user_id}-todo` for the later\n\nNote that you can still use `fxa:{user_id}` to explicitely share data between\napps for a given FxA user.\n\nIf you don't give any specific permission, it will be impossible for\nsomeone logged in in with the `app-notes` scope in their Bearer token to\naccess the todo app data.\n\nThe default buckets will also be isolated, one for `notes` and one for\n`todo`.\n\nLogin flow\n----------\n\nOAuth Bearer token\n::::::::::::::::::\n\nUse the OAuth token with this header:\n\n::\n\n Authorization: Bearer \n\n\n:notes:\n\n If the token is not valid, this will result in a ``401`` error response.\n\n\nObtain token using Web UI\n:::::::::::::::::::::::::\n\n* Navigate the client to ``GET /fxa-oauth/login?redirect=http://app-endpoint/#``.\n There, a session cookie will be set, and the client will be redirected to a login\n form on the FxA content server;\n* After submitting the credentials on the login page, the client will\n be redirected to ``http://app-endpoint/#{token}`` (the web-app).\n\n\nObtain token custom flow\n::::::::::::::::::::::::\n\nThe ``GET /v1/fxa-oauth/params`` endpoint can be use to get the\nconfiguration in order to trade the *Firefox Accounts* BrowserID with a\n*Bearer Token*. `See Firefox Account documentation about this behavior\n`_\n\n.. code-block:: http\n\n $ http GET http://localhost:8000/v0/fxa-oauth/params -v\n\n GET /v0/fxa-oauth/params HTTP/1.1\n Accept: */*\n Accept-Encoding: gzip, deflate\n Host: localhost:8000\n User-Agent: HTTPie/0.8.0\n\n\n HTTP/1.1 200 OK\n Content-Length: 103\n Content-Type: application/json; charset=UTF-8\n Date: Thu, 19 Feb 2015 09:28:37 GMT\n Server: waitress\n\n {\n \"client_id\": \"89513028159972bc\",\n \"oauth_uri\": \"https://oauth-stable.dev.lcip.org\",\n \"scope\": \"profile\"\n }\n\n\nScripts\n-------\n\nThe ``kinto-fxa`` library installs a ``kinto-fxa`` command which is\nused to run utility scripts that come with the ``kinto-fxa``\nplugin. Right now the only one is ``process-account-events``, which\nlistens to an Amazon SQS queue for account deletion events and tries\nto delete a user's data to comply with GDPR.\n\nThese scripts have some additional dependencies; you may need to ``pip\ninstall kinto-fxa[scripts]`` to install them.\n\nTo use them, run ``kinto-fxa [script-name] [arguments]``.\n\n\nChangelog\n=========\n\nThis document describes changes between each past release.\n\n2.5.3 (2019-07-02)\n------------------\n\n**Optimization**\n\n- Try to keep ``OAuthClient`` around longer to take advantage of HTTP keepalives (#133).\n\n\n2.5.2 (2018-07-05)\n------------------\n\n**Bug fixes**\n\n- Fix the ``process-account-events`` script to take client user ID suffixes into account (fixes #61)\n\n\n2.5.1 (2018-06-28)\n------------------\n\n- Set up metrics on the ``process-account-events`` script (#57).\n- Set up logging on the ``kinto_fxa.scripts`` programs (#58).\n\n\n2.5.0 (2018-05-17)\n------------------\n\n- Introduce new ``kinto_fxa.scripts``. Right now the only script\n available is ``process-account-events``, which listens to an SQS\n queue for user delete events and deletes data from that user's\n default bucket, in order to comply with GDPR.\n\n\n2.4.1 (2018-03-15)\n------------------\n\n- Move kinto-fxa to the Kinto github org. (#54)\n\n\n2.4.0 (2017-11-27)\n------------------\n\n- Add support for multiple FxA Clients (#52)\n\n\n2.3.1 (2017-01-30)\n------------------\n\n**Bug fixes**\n\n- Make sure that caching of token verification nevers prevents from authenticating\n requests (see Mozilla/PyFxA#48)\n\n\n2.3.0 (2016-12-22)\n------------------\n\n**Internal changes**\n\n- Migrate schemas to Cornice 2 #38\n\n\n2.2.0 (2016-10-27)\n------------------\n\n**New features**\n\n- Improve FxA error messages (fixes #1)\n\n**Bug fixes**\n\n- Optimize authentication policy to avoid validating the token several times\n per request (fixes #33)\n\n**Internal changes**\n\n- Use Service from kinto.core (fixes #28)\n- Make sure it does not catch Cornice 2 dependency (#36)\n\n\n2.1.0 (2016-09-08)\n------------------\n\n- Add the plugin version in the capability.\n\n\n2.0.0 (2016-05-19)\n------------------\n\n**Breaking changes**\n\n- Project renamed to *Kinto-fxa* to match the rename of ``cliquet`` to\n ``kinto.core``.\n\n- Update to ``kinto.core`` for compatibility with Kinto 3.0. This\n release is no longer compatible with Kinto < 3.0, please upgrade!\n\n- With *Kinto* > 2.12*, the setting ``multiauth.policy.fxa.use`` must now\n be explicitly set to ``kinto_fxa.authentication.FxAOAuthAuthenticationPolicy``\n\n**Bug fixes**\n\n- Fix checking of ``Authorization`` header when python is ran ``-O``\n (ref mozilla-services/cliquet#592)\n\n\n1.4.0 (2015-10-28)\n------------------\n\n- Updated to *Cliquet* 2.9.0\n\n**Breaking changes**\n\n- *cliquet-fxa* cannot be included using ``pyramid.includes`` setting.\n Use ``cliquet.includes`` instead.\n\n\n1.3.2 (2015-10-22)\n------------------\n\n**Bug fixes**\n\n- In case the Oauth dance is interrupted, return a ``408 Request Timeout``\n error instead of the ``401 Unauthenticated`` one. (#11)\n- Do not call ``cliquet.load_default_settings`` from cliquet-fxa (#12)\n\n\n1.3.1 (2015-09-29)\n------------------\n\n- Separate multiple scopes by a + in login URL.\n\n\n1.3.0 (2015-09-29)\n------------------\n\n**Bug fixes**\n\n- Multiple scopes can be requested on the login flow.\n- Multiple scopes can be required for the app.\n\n**Configuration changes**\n\n- ``fxa-oauth.scope`` is now deprecated. ``fxa-oauth.requested_scope`` and\n ``fxa-oauth.required_scope`` should be used instead.\n\n\n1.2.0 (2015-06-24)\n------------------\n\n- Add default settings to define a policy \"fxa\".\n It is now possible to just include ``cliquet_fxa`` and\n add ``fxa`` to ``multiauth.policies`` setting list.\n- Do not check presence of cliquet cache in initialization\n phase.\n- Do not use Cliquet logger to prevent initialization errors.\n\n\n1.1.0 (2015-06-18)\n------------------\n\n- Do not prefix authenticated user with ``fxa_`` anymore (#5)\n\n\n1.0.0 (2015-06-09)\n------------------\n\n- Imported code from *Cliquet*\n\n\nContributors\n============\n\n* Alexis Metaireau \n* Mathieu Leplatre \n* Nicolas Perriault \n* R\u00e9my Hubscher \n* Tarek Ziade \n* Lavish Aggarwal \n\n\n",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/Kinto/kinto-fxa",
"keywords": "web services",
"license": "Apache License (2.0)",
"maintainer": "",
"maintainer_email": "",
"name": "kinto-fxa",
"package_url": "https://pypi.org/project/kinto-fxa/",
"platform": "",
"project_url": "https://pypi.org/project/kinto-fxa/",
"project_urls": {
"Homepage": "https://github.com/Kinto/kinto-fxa"
},
"release_url": "https://pypi.org/project/kinto-fxa/2.5.3/",
"requires_dist": [
"kinto (>=5.0)",
"pyfxa (>=0.0.9)",
"SQLAlchemy; extra == 'scripts'",
"boto3; extra == 'scripts'",
"ec2-metadata; extra == 'scripts'",
"psycopg2 (>2.5); extra == 'scripts'",
"zope.sqlalchemy; extra == 'scripts'"
],
"requires_python": "",
"summary": "Firefox Accounts support in Kinto",
"version": "2.5.3"
},
"last_serial": 5480026,
"releases": {
"1.4.0": [],
"2.0.0": [
{
"comment_text": "",
"digests": {
"md5": "3b7260de1bdccbd580ff65924a2c1c6e",
"sha256": "3ccac602afd7f9c64eb552e9863278d404e0533d0b252426c0f7fdae028a29ed"
},
"downloads": -1,
"filename": "kinto_fxa-2.0.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "3b7260de1bdccbd580ff65924a2c1c6e",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 17172,
"upload_time": "2016-05-20T13:21:06",
"url": "https://files.pythonhosted.org/packages/3d/06/72f1ebe9fcd91cd102f3c52fab25e50121c03d8d0eda970539ea15c1450a/kinto_fxa-2.0.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "abe2bbb1df9125560a2df114f88d1feb",
"sha256": "693f9097fc06069c1d3528e6471d8160b6026a877b419aa1256b360addb4bd7c"
},
"downloads": -1,
"filename": "kinto-fxa-2.0.0.tar.gz",
"has_sig": false,
"md5_digest": "abe2bbb1df9125560a2df114f88d1feb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11781,
"upload_time": "2016-05-20T13:21:16",
"url": "https://files.pythonhosted.org/packages/86/f4/de808ecb5ae7526d2d983b9c1467b5040fbdcc1c35961c30baee08a0759e/kinto-fxa-2.0.0.tar.gz"
}
],
"2.1.0": [
{
"comment_text": "",
"digests": {
"md5": "e8e4bd4addf95584276652d48aeff7c7",
"sha256": "c519b628be39c7d112423ee220f7a1e2c2a92de62c5aaf9b760e0386a676c8a6"
},
"downloads": -1,
"filename": "kinto_fxa-2.1.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "e8e4bd4addf95584276652d48aeff7c7",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 17699,
"upload_time": "2016-09-08T13:49:27",
"url": "https://files.pythonhosted.org/packages/69/7b/e23341a5f48066037b45b2229f33d151ea8b8cdb4d0abd1d03cddf2e94f5/kinto_fxa-2.1.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "563c9eda287eef2ffca5018d5e4fdfc0",
"sha256": "2425dc5c33cc469c0da7e71b3d4b5542921abdb8b9314db70b33e9027b9286c1"
},
"downloads": -1,
"filename": "kinto-fxa-2.1.0.tar.gz",
"has_sig": false,
"md5_digest": "563c9eda287eef2ffca5018d5e4fdfc0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13421,
"upload_time": "2016-09-08T13:49:29",
"url": "https://files.pythonhosted.org/packages/2e/06/e1765fe8665f54b437cb1aac1b458801d39a6c56697e530dab6af45a543d/kinto-fxa-2.1.0.tar.gz"
}
],
"2.2.0": [
{
"comment_text": "",
"digests": {
"md5": "2737daefa1ed9dfe268e4881147746a7",
"sha256": "9cfd0f2d7ba2db4b3afdf43933f8330d59bae4147154c27ce40cb4ac5488eb86"
},
"downloads": -1,
"filename": "kinto_fxa-2.2.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "2737daefa1ed9dfe268e4881147746a7",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 18749,
"upload_time": "2016-10-28T15:54:30",
"url": "https://files.pythonhosted.org/packages/b8/00/afb5182bc85aa2037c708c3475d0e0644e833e0194457174932a0a71056c/kinto_fxa-2.2.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "56100c149e8b3f3b8cd506bb6aa145f0",
"sha256": "d83600420a6a0c1900f82a80afb9b5fb8d6be3a517aa1306b8eae4d42d6834ad"
},
"downloads": -1,
"filename": "kinto-fxa-2.2.0.zip",
"has_sig": false,
"md5_digest": "56100c149e8b3f3b8cd506bb6aa145f0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 24255,
"upload_time": "2016-10-28T15:54:00",
"url": "https://files.pythonhosted.org/packages/fc/cc/8874df83f5829caa2cdbf3e20d349965ee7e13ba5231edaa40168564f505/kinto-fxa-2.2.0.zip"
}
],
"2.3.0": [
{
"comment_text": "",
"digests": {
"md5": "7aa7b4b89ef2ce095435fcf94aa4ac6b",
"sha256": "44cbe9f80fe7ac1b09e6e76517219496f79b157fc5da33ac5a246efc0b1cb5fe"
},
"downloads": -1,
"filename": "kinto_fxa-2.3.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "7aa7b4b89ef2ce095435fcf94aa4ac6b",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 18671,
"upload_time": "2016-12-22T15:46:24",
"url": "https://files.pythonhosted.org/packages/60/ea/14f9a9e2f84f291971f24c076836bca03a97405363f0aec69dea69ce17f2/kinto_fxa-2.3.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "6bd9a7ff5bc47d3d7443b9b7c75533d9",
"sha256": "8a62e8fb24aee2ffa4eea0e3042d485ea6c9ae7752127ef3ab4736c80b9431c6"
},
"downloads": -1,
"filename": "kinto-fxa-2.3.0.tar.gz",
"has_sig": false,
"md5_digest": "6bd9a7ff5bc47d3d7443b9b7c75533d9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13173,
"upload_time": "2016-12-22T15:46:27",
"url": "https://files.pythonhosted.org/packages/9e/28/def9c53762c06ec9a15d30d7ba74bfaa15e6bd9e50af51b71520827105fb/kinto-fxa-2.3.0.tar.gz"
}
],
"2.3.1": [
{
"comment_text": "",
"digests": {
"md5": "50dc98a0631309cbeb925cd2b401cbbd",
"sha256": "0f8c9bbdbfbda5b8a6b4b1d0ea3957f54fe231cf085f12b43a9326ccde33beec"
},
"downloads": -1,
"filename": "kinto_fxa-2.3.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "50dc98a0631309cbeb925cd2b401cbbd",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 18916,
"upload_time": "2017-01-30T14:06:48",
"url": "https://files.pythonhosted.org/packages/6d/fc/cd72589cf69bcecfada47c7848f93a8e66b637c1cf423944b19c0e4c1d02/kinto_fxa-2.3.1-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "8554016afd2b28a6ec17b4f200f42aa1",
"sha256": "5d23cc801fc35603802979692196bc8ccc701ced97c52cb364daf14d3dc292d4"
},
"downloads": -1,
"filename": "kinto-fxa-2.3.1.tar.gz",
"has_sig": false,
"md5_digest": "8554016afd2b28a6ec17b4f200f42aa1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 13411,
"upload_time": "2017-01-30T14:06:47",
"url": "https://files.pythonhosted.org/packages/11/a5/9446a8487b4b9ec59e6dba7ce5fab23f12e49e93193895df1c85b327f031/kinto-fxa-2.3.1.tar.gz"
}
],
"2.4.0": [
{
"comment_text": "",
"digests": {
"md5": "be3e1c05eef04095bc7142404669ec85",
"sha256": "aeb70dd9b9078a64cbeb78690bc673ba29b0bfe72d450d32a23a675177b945ca"
},
"downloads": -1,
"filename": "kinto_fxa-2.4.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "be3e1c05eef04095bc7142404669ec85",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 21442,
"upload_time": "2017-11-27T15:27:05",
"url": "https://files.pythonhosted.org/packages/b2/64/7c3f7c5e0ab881a6dda59ccceb9561f27cda68c42a81bf7ef07cd8f1bad6/kinto_fxa-2.4.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "be0639759661365d9e6fef5b20e004af",
"sha256": "f55572e9c4f6b7473bd4bd9ce613a3fae5187dc2acface35327e20ce9612fba5"
},
"downloads": -1,
"filename": "kinto-fxa-2.4.0.tar.gz",
"has_sig": false,
"md5_digest": "be0639759661365d9e6fef5b20e004af",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15203,
"upload_time": "2017-11-27T15:27:07",
"url": "https://files.pythonhosted.org/packages/45/82/0fcb1ddc079ba16a96ace3b57afc67561683c68f4927a69ec22ce546c006/kinto-fxa-2.4.0.tar.gz"
}
],
"2.4.1": [
{
"comment_text": "",
"digests": {
"md5": "ff8b8357008191dbf7ffd77887196840",
"sha256": "78612aae0c98cab05c4618e5ec6450699717f8333e14f0af986152e1ee7f9e4d"
},
"downloads": -1,
"filename": "kinto_fxa-2.4.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "ff8b8357008191dbf7ffd77887196840",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 21488,
"upload_time": "2018-03-15T10:51:45",
"url": "https://files.pythonhosted.org/packages/73/67/8639d1f65262abdd45fa6df82a5d4828533a1c9b16b34016c7464e7aed1d/kinto_fxa-2.4.1-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "9a9cb911614cd218263b1b7d06c96a30",
"sha256": "64e4e28ea45610e6ea606f2d326e1984388180ef89fd857342c31096c3a26548"
},
"downloads": -1,
"filename": "kinto-fxa-2.4.1.tar.gz",
"has_sig": false,
"md5_digest": "9a9cb911614cd218263b1b7d06c96a30",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 18267,
"upload_time": "2018-03-15T10:51:43",
"url": "https://files.pythonhosted.org/packages/87/60/2a7675978932a6476b7f001c5818990c2af962847fe982affcc0c88a5acc/kinto-fxa-2.4.1.tar.gz"
}
],
"2.5.0": [
{
"comment_text": "",
"digests": {
"md5": "0963b14dd9ac809a663c7b84338f5df5",
"sha256": "3ac07107e456f7f97e8f8ac27108b0b72217b3d169307817441aadabce285bff"
},
"downloads": -1,
"filename": "kinto_fxa-2.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0963b14dd9ac809a663c7b84338f5df5",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 23255,
"upload_time": "2018-05-17T21:10:29",
"url": "https://files.pythonhosted.org/packages/63/f7/d2328392b8f6e02afd9e2be4ee254c8686e829dea392921c854692d710fd/kinto_fxa-2.5.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "25d999791b56bd8263d8dc5296460262",
"sha256": "c436fa1606fe065011d1c58e4754c439f9c805a9b545fd0b5b71c3b99cffe494"
},
"downloads": -1,
"filename": "kinto-fxa-2.5.0.tar.gz",
"has_sig": false,
"md5_digest": "25d999791b56bd8263d8dc5296460262",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 20335,
"upload_time": "2018-05-17T21:10:28",
"url": "https://files.pythonhosted.org/packages/c0/02/b630b7e6636b216ad73ce7ef19e8cad1bd3c3cef4938ba690a20f0493736/kinto-fxa-2.5.0.tar.gz"
}
],
"2.5.1": [
{
"comment_text": "",
"digests": {
"md5": "9ea39ff32ebe18641fbae2da28edad8e",
"sha256": "1578d99666ad8041616d9623cb4dac74a8e08b9e8756feef55ecdce9fa6dda6e"
},
"downloads": -1,
"filename": "kinto_fxa-2.5.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9ea39ff32ebe18641fbae2da28edad8e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 23562,
"upload_time": "2018-06-28T15:54:05",
"url": "https://files.pythonhosted.org/packages/b0/80/9e570e7f633b32ac339a2db324a02ff12f2ca937a07065aec482e110fe28/kinto_fxa-2.5.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "52cf299f80c2067a38f669c983379eb2",
"sha256": "052eb0262d5d01938695e69b333d0e94e9a78811065b271c9e936bf64733497e"
},
"downloads": -1,
"filename": "kinto-fxa-2.5.1.tar.gz",
"has_sig": false,
"md5_digest": "52cf299f80c2067a38f669c983379eb2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 20689,
"upload_time": "2018-06-28T15:54:04",
"url": "https://files.pythonhosted.org/packages/36/71/d37e21d27c9243a8b63f564573bfdbcc2374831801d4240a4abba6585dce/kinto-fxa-2.5.1.tar.gz"
}
],
"2.5.2": [
{
"comment_text": "",
"digests": {
"md5": "af3fecff39ae077c1a0c53a1edf48f8b",
"sha256": "c49fa9904326a35477fb26058c746390459597574fb7b8b26c984771f4b8551a"
},
"downloads": -1,
"filename": "kinto_fxa-2.5.2-py2-none-any.whl",
"has_sig": false,
"md5_digest": "af3fecff39ae077c1a0c53a1edf48f8b",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 28635,
"upload_time": "2018-07-05T09:21:46",
"url": "https://files.pythonhosted.org/packages/03/a5/61c6612591cb8fefab00cd5b8cb2c7da28b5e2a335be7c3697d6bcf544bc/kinto_fxa-2.5.2-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "82ce759baa68e9724d8237aa41bcdbea",
"sha256": "3c16b053ba835d2190bdaabd2018f824f624849369b4dfe53097ed4a4e466cb6"
},
"downloads": -1,
"filename": "kinto-fxa-2.5.2.tar.gz",
"has_sig": false,
"md5_digest": "82ce759baa68e9724d8237aa41bcdbea",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 21374,
"upload_time": "2018-07-05T09:21:44",
"url": "https://files.pythonhosted.org/packages/7d/84/8662667f70dfce05741246e2b7e2bbff148f798cb47e75619b07076d4499/kinto-fxa-2.5.2.tar.gz"
}
],
"2.5.3": [
{
"comment_text": "",
"digests": {
"md5": "9e1b95e5b26e541bf2b02204c8df8b03",
"sha256": "86878cc3c3e93dfabd3298e3a7e557aa15bd92328902d8197b57bf6c9eda0c52"
},
"downloads": -1,
"filename": "kinto_fxa-2.5.3-py2-none-any.whl",
"has_sig": false,
"md5_digest": "9e1b95e5b26e541bf2b02204c8df8b03",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 28874,
"upload_time": "2019-07-03T07:51:17",
"url": "https://files.pythonhosted.org/packages/76/0d/cf3c999dc16f0cacfb1cf48fdfa4ca0b6efb12b455fe267b12f4d9ca5f02/kinto_fxa-2.5.3-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "62b80285acc1222053dda39783cd64b2",
"sha256": "927b8bf6365a8f5d898e46428a2888d4007641b7e8de59aa37488cfebf22b3a8"
},
"downloads": -1,
"filename": "kinto-fxa-2.5.3.tar.gz",
"has_sig": false,
"md5_digest": "62b80285acc1222053dda39783cd64b2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 21617,
"upload_time": "2019-07-03T07:51:20",
"url": "https://files.pythonhosted.org/packages/5c/fc/da80773fd4153f1c13b35c40166d3232c0121c0ab5ce4b7e0821c48f54c5/kinto-fxa-2.5.3.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "9e1b95e5b26e541bf2b02204c8df8b03",
"sha256": "86878cc3c3e93dfabd3298e3a7e557aa15bd92328902d8197b57bf6c9eda0c52"
},
"downloads": -1,
"filename": "kinto_fxa-2.5.3-py2-none-any.whl",
"has_sig": false,
"md5_digest": "9e1b95e5b26e541bf2b02204c8df8b03",
"packagetype": "bdist_wheel",
"python_version": "py2",
"requires_python": null,
"size": 28874,
"upload_time": "2019-07-03T07:51:17",
"url": "https://files.pythonhosted.org/packages/76/0d/cf3c999dc16f0cacfb1cf48fdfa4ca0b6efb12b455fe267b12f4d9ca5f02/kinto_fxa-2.5.3-py2-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "62b80285acc1222053dda39783cd64b2",
"sha256": "927b8bf6365a8f5d898e46428a2888d4007641b7e8de59aa37488cfebf22b3a8"
},
"downloads": -1,
"filename": "kinto-fxa-2.5.3.tar.gz",
"has_sig": false,
"md5_digest": "62b80285acc1222053dda39783cd64b2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 21617,
"upload_time": "2019-07-03T07:51:20",
"url": "https://files.pythonhosted.org/packages/5c/fc/da80773fd4153f1c13b35c40166d3232c0121c0ab5ce4b7e0821c48f54c5/kinto-fxa-2.5.3.tar.gz"
}
]
}