{ "info": { "author": "Develatio Technologies S.L.", "author_email": "contacto@develat.io", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: BSD License", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Software Development :: Internationalization", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Software Development :: Localization" ], "description": "![PyPI](https://img.shields.io/pypi/v/django-walletpass.svg)\n![t](https://img.shields.io/badge/status-beta-red.svg)\n\n\n# django-walletpass\n\n\nThis application implements the creation of **signed .pkpass** files and\n**API endpoints** for pass registration, updates and logging.\n\n## Features\n\n- Build .pkpass with the `PassBuilder` class\n- Sign .pkpass with SMIME (as apple describes in their documentation)\n- Server implementation for store, registration, update and logging\n- Push notifications (APNs) on pass update\n- Individual storage backend setting\n- Support for mime-type upload using django-storages S3\n\n## Requirements\n\n- Django 2.*\n- Python >= 3.5\n- pyca/cryptography (for .pkpass SMIME sign)\n- djangorestframework >= 3.8\n\n## Getting Started\n\n### Install\n\n```\n$ pip install django-walletpass\n```\n\n### Configure\n\nAdd 'django_walletpass' to you installed apps in the settings.py file.\n\nLoad the content of your cert.pem and key.pem in your settings.py file.\n\n```\n\nWALLETPASS = {\n 'CERT_PATH': 'path/to/your/cert.pem',\n 'KEY_PATH': 'path/to/your/key.pem',\n # (None if isn't protected)\n # MUST be in bytes-like\n 'KEY_PASSWORD': b'1234',\n}\n```\n\nAdd extra needed conf to your settings.py file.\n\n```\nWALLETPASS = {\n 'CERT_PATH': 'path/to/your/cert.pem',\n 'KEY_PATH': 'path/to/your/key.pem',\n # (None if isn't protected)\n # MUST be in bytes-like\n 'KEY_PASSWORD': b'1234',\n\n 'PASS_TYPE_ID': 'pass.io.develat.devpubs.example',\n 'TEAM_ID': '123456',\n 'SERVICE_URL': 'https://example.com/passes/',\n}\n```\n\nYou should also import the urls into your site urls.\n```\nurlpatterns = [\n url(r'^api/passes/', include('django_walletpass.urls')),\n```\n\ndjango-walletpass signals certain events that might come handy in your\napplication.\n\n```\nfrom django_walletpass.views import pass_registered, pass_unregistered\n\n@receiver(pass_registered)\ndef pass_registered(sender, **kwargs):\n pass\n\n@receiver(pass_unregistered)\ndef pass_unregistered(sender, **kwargs):\n pass\n```\n\n\n### Configure storage and upload path (optional)\n\nDefault: DEFAULT_FILE_STORAGE\n\n```\nWALLETPASS_CONF = {\n # Defaults to DEFAULT_FILE_STORAGE\n 'STORAGE_CLASS': 'my.custom.storageclass,\n 'UPLOAD_TO': 'passes'\n}\n```\n\n### Push notifications sandbox (optional)\n\nDefault: False\n\n```\nWALLETPASS_CONF = {\n 'PUSH_SANDBOX': False,\n}\n```\n\n### CA certificates path (optional)\n\n```\nWALLETPASS_CONF = {\n # Cert in der format.\n 'APPLE_WWDRCA_CERT_PATH': 'path/to/cert.cer',\n # Cert in pem format.\n 'APPLE_WWDRCA_PEM_PATH': 'path/to/cert.pem',\n}\n```\n\n### Redirect to pass url (optional)\nUsefull if you are using `django-storages` and you want to serve your .pkpass\nfiles from `s3`.\n\nDefault: False\n\n```\nWALLETPASS_CONF = {\n STORAGE_HTTP_REDIRECT: True,\n}\n```\n\n\n## Build and sign passes\n\n### Init builder object:\n\nInit empty builder\n\n```\nfrom django_walletpass.models import PassBuilder\nbuilder = PassBuilder()\n```\n\nInit builder usign a directory as base\n\n```\nfrom django_walletpass.models import PassBuilder\nbuilder = PassBuilder(directory='/path/to/your.pass/')\n```\n\nIf the base directory contains a `pass.json` it will be loaded, but remember\nthat required attributes of `pass.json` will be overwritten during build process\nusing this values:\n\n```\n{\n \"passTypeIdentifier\": WALLETPASS_CONF['PASS_TYPE_ID'],\n \"serialNumber\": secrets.token_urlsafe(20),\n \"teamIdentifier\": WALLETPASS_CONF['TEAM_ID'],\n \"webServiceURL\": WALLETPASS_CONF['SERVICE_URL'],\n \"authenticationToken\": crypto.gen_random_token(),\n}\n```\n\n### Handle pass.json data\n\nTo handle `pass.json` data, there is a dict inside your builder instance, you\ncan manage it like a normal python dictionary.\n\n\nUpdate some attrs:\n\n```\nbuilder.pass_data.update({\n \"barcode\": {\n \"message\": \"123456789\",\n \"format\": \"PKBarcodeFormatPDF417\",\n \"messageEncoding\": \"iso-8859-1\"\n },\n \"organizationName\": \"Organic Produce\",\n \"description\": \"Organic Produce Loyalty Card\",\n})\n```\n\nUpdate one attr:\n\n```\nbuilder.pass_data['description'] = \"Organic Produce Loyalty Card\"\n```\n\n### Overwrite automatically generated required attribute values\n\n```\nbuilder.pass_data_required.update({\n \"passTypeIdentifier\": \"customvalue\",\n \"serialNumber\": \"customvalue\",\n \"teamIdentifier\": \"customvalue\",\n \"webServiceURL\": \"customvalue\",\n \"authenticationToken\": \"customvalue\",\n})\n```\n\nyou can overwrite individual attributes:\n\n\n```\nbuilder.pass_data_required.update({\n \"serialNumber\": \"customvalue\",\n})\nbuilder.pass_data_required['serialNumber] = 'cutomvalue'\n```\n\n### Add extra files\n\n```\nfile_content = open('myfile', 'rb').read()\nbuilder.add_file('image.png', file_content)\n```\n\nYou can also add files to directories:\n\n```\nfile_content = open('myfile', 'rb').read()\nbuilder.add_file('en.lproj/pass.strings', file_content)\n```\n\n\n### Build .pkpass\n\nBuild the content of .pkpass\n\n```\npkpass_content = builder.build()\n```\n\nWrite to file:\n\n```\npkpass_file = open('mypass.pkpass', 'rb')\npkpass_file.write(pkpass_content)\n```\n\nSave to new record in DB:\n\n```\npass_instance = builder.write_to_model()\npass_instance.save()\n```\n\nSave to existent record in DB:\n\n```\nbuilder.write_to_model(pass_instance)\npass_instance.save()\n```\n\n### Load .pkpass from DB and update\n\n```\nbuilder = pass_instance.get_pass_builder()\nbuilder.pass_data.update({'field': 'value'})\nbuilder.build()\nbuilder.save_to_db(pass_instance)\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": "http://github.com/develatio/django-walletpass/", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "django-walletpass", "package_url": "https://pypi.org/project/django-walletpass/", "platform": "", "project_url": "https://pypi.org/project/django-walletpass/", "project_urls": { "Homepage": "http://github.com/develatio/django-walletpass/" }, "release_url": "https://pypi.org/project/django-walletpass/1.0/", "requires_dist": [ "Django (>=2.0)", "cryptography (>=2.4.2)", "apns2 (>=0.5.0)", "djangorestframework (>=3.8)" ], "requires_python": ">=3.5.0", "summary": "Django .pkpass builder, server and push notifications", "version": "1.0" }, "last_serial": 5409507, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "07dcfb8e5459702fc3c35171d3f9c836", "sha256": "cf8cae419ce14cfbd22d0e938e2f6a230a0b43ad00adea63f51c21c8bb899c49" }, "downloads": -1, "filename": "django_walletpass-0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "07dcfb8e5459702fc3c35171d3f9c836", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 7231, "upload_time": "2019-04-29T19:46:26", "url": "https://files.pythonhosted.org/packages/b0/ae/ce8e1e12ac11e75589aec817889fd8ef3ad2b9635415a1e9ea466b9177ab/django_walletpass-0.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3d5a7629427e6c3db2ae828457993623", "sha256": "ee9e5e088c19a241986cb81c3ac0270a71b8a4d0e8718e2bbf727ed7587c113f" }, "downloads": -1, "filename": "django-walletpass-0.1.tar.gz", "has_sig": false, "md5_digest": "3d5a7629427e6c3db2ae828457993623", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4773, "upload_time": "2019-04-29T19:46:52", "url": "https://files.pythonhosted.org/packages/0a/bb/cd1136c2be5deb4a0889c4d11c650ed1acb51b34846e827ef4387a6738fd/django-walletpass-0.1.tar.gz" } ], "0.10": [ { "comment_text": "", "digests": { "md5": "75bc4642597b87fc5fe69e2737868757", "sha256": "1ab8abe566b0855b7079aab551f703e3bd2e7f93fe30af37eb9e460fbc987ccc" }, "downloads": -1, "filename": "django_walletpass-0.10-py2-none-any.whl", "has_sig": false, "md5_digest": "75bc4642597b87fc5fe69e2737868757", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 21776, "upload_time": "2019-06-13T16:13:41", "url": "https://files.pythonhosted.org/packages/ba/1b/53b0243acf8746e19ab8a700c9cb27b7d251a248909a981fc9b568312ea3/django_walletpass-0.10-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0b1b30e402589bd9af56a50a0e9a00b2", "sha256": "0e7eeafb253847392a908a2aaed5e54ef72282ba36b71bad5f4642e23e945efa" }, "downloads": -1, "filename": "django-walletpass-0.10.tar.gz", "has_sig": false, "md5_digest": "0b1b30e402589bd9af56a50a0e9a00b2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 16369, "upload_time": "2019-06-13T16:13:43", "url": "https://files.pythonhosted.org/packages/b0/ad/41832677d898fb9e5486476872bd71f6c5feb78f31ef505dc107c5cf6cd3/django-walletpass-0.10.tar.gz" } ], "0.11": [ { "comment_text": "", "digests": { "md5": "180ce135e5f3a30d265723c80dcd1912", "sha256": "adb76df28b99fc8f67e9b7f2843ae5837e97b24c9acf3760fe0bc627db385ee5" }, "downloads": -1, "filename": "django_walletpass-0.11-py2-none-any.whl", "has_sig": false, "md5_digest": "180ce135e5f3a30d265723c80dcd1912", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 22345, "upload_time": "2019-06-13T18:12:48", "url": "https://files.pythonhosted.org/packages/7e/85/91f123864695b7646af886151787b650febb3aef5f0897bbc4b60b86ee5c/django_walletpass-0.11-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f40c9f08b2c913e23be622cfcaa50e1e", "sha256": "73049983edeed6a14480e102429d8a279916f7fb1153cf77a3d5c1679a148200" }, "downloads": -1, "filename": "django-walletpass-0.11.tar.gz", "has_sig": false, "md5_digest": "f40c9f08b2c913e23be622cfcaa50e1e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 16550, "upload_time": "2019-06-13T18:12:50", "url": "https://files.pythonhosted.org/packages/c9/5c/2e8556fe9569af808164e71d9ad0d9ef1a5df39e963872dbd1fb16ba7b0e/django-walletpass-0.11.tar.gz" } ], "0.12": [ { "comment_text": "", "digests": { "md5": "d0be7873826c60d618dbbd413cd369b0", "sha256": "e69f39191e21f275622f092dcef291022c67e38740d18d5d810cb3a92f8ef3a6" }, "downloads": -1, "filename": "django_walletpass-0.12-py2-none-any.whl", "has_sig": false, "md5_digest": "d0be7873826c60d618dbbd413cd369b0", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 22411, "upload_time": "2019-06-13T19:42:15", "url": "https://files.pythonhosted.org/packages/8b/88/b6a1d16668a445e41cccd3d1d6c66686b957c9b827dd1184bfe3b817300e/django_walletpass-0.12-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e64b0d2468dab6ed322e57e2a5a3eb97", "sha256": "5ca20c68f5a3d3628c67f8f1b11da2814e20d8e943bad925d6cb9e8985a13556" }, "downloads": -1, "filename": "django-walletpass-0.12.tar.gz", "has_sig": false, "md5_digest": "e64b0d2468dab6ed322e57e2a5a3eb97", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 16630, "upload_time": "2019-06-13T19:42:17", "url": "https://files.pythonhosted.org/packages/d6/28/800cbc520affebe7225fcc614b8709954254f7627708a456424bfce76542/django-walletpass-0.12.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "0f0fab9f25d785583b4470b9f43c5ce7", "sha256": "2489342270c6a5e6684dcd32e94f90c07ec31b46fdd2e04413acb1c2dcd2e04c" }, "downloads": -1, "filename": "django_walletpass-0.2-py2-none-any.whl", "has_sig": false, "md5_digest": "0f0fab9f25d785583b4470b9f43c5ce7", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 11642, "upload_time": "2019-06-08T17:55:30", "url": "https://files.pythonhosted.org/packages/6d/24/2953f3ea2a8e209c0ef9bc87d4225d773a4e301f205334b653ff2558c90e/django_walletpass-0.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fa4a3fee7ffaaeb719576a97ca6a61b8", "sha256": "4e6214e6b1dc75c66f1b6ca408818866d3728c065d65d4cf03220e1e893622d7" }, "downloads": -1, "filename": "django-walletpass-0.2.tar.gz", "has_sig": false, "md5_digest": "fa4a3fee7ffaaeb719576a97ca6a61b8", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 8655, "upload_time": "2019-06-08T17:55:31", "url": "https://files.pythonhosted.org/packages/be/8a/f9ca57fca7b21ef081ecf7b2fa5098f84d6c447dbc2b0e3f93f360aa85c9/django-walletpass-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "008f2f5bd495e66008a187e5c298646a", "sha256": "1b4e60055048e8896c23c2617acd31f5bec6222a278f448f84bfc2a71b4c1f32" }, "downloads": -1, "filename": "django_walletpass-0.3-py2-none-any.whl", "has_sig": false, "md5_digest": "008f2f5bd495e66008a187e5c298646a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 14268, "upload_time": "2019-06-10T16:44:20", "url": "https://files.pythonhosted.org/packages/23/09/cb2c9bd72bf3ff5b4774853b313f26fef821e046a4b7e26c8af169b27abc/django_walletpass-0.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ea6b1bdfcca364183b81757b2cc24576", "sha256": "9ed14a07dd2b7dcc3b52c688c6ac1df930bff77bdbefc710ae3528d38af68336" }, "downloads": -1, "filename": "django-walletpass-0.3.tar.gz", "has_sig": false, "md5_digest": "ea6b1bdfcca364183b81757b2cc24576", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 11555, "upload_time": "2019-06-10T16:44:22", "url": "https://files.pythonhosted.org/packages/e7/35/014b6ac8a16e084ccea6d4a5da0ba3374c51a881cd1313e38659883ea89d/django-walletpass-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "11bf7a0b8de05673bb8043102705d022", "sha256": "b7559dee2d5e89424f2d738ebf33b7a0a4eba1242f3a6e41a61884491a96804b" }, "downloads": -1, "filename": "django_walletpass-0.4-py2-none-any.whl", "has_sig": false, "md5_digest": "11bf7a0b8de05673bb8043102705d022", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 14355, "upload_time": "2019-06-10T17:09:08", "url": "https://files.pythonhosted.org/packages/18/c1/69abdd4f83f1b80e7aab73ced8504c5e28fe26db6a7d437513a3c13e1562/django_walletpass-0.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1f0e5de3a1e65d3f3ee593d087e2ccc5", "sha256": "ae05717d1d91187ec664040a42586ca3e6833ad91e8f8f86c629814955ec9622" }, "downloads": -1, "filename": "django-walletpass-0.4.tar.gz", "has_sig": false, "md5_digest": "1f0e5de3a1e65d3f3ee593d087e2ccc5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 11631, "upload_time": "2019-06-10T17:09:10", "url": "https://files.pythonhosted.org/packages/29/bc/e589eb060e90e89708f0788d974fb7fc75bef49e0f0c2a0005f19c0d0de7/django-walletpass-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "45fe4301b411c04fa333ad84263359a6", "sha256": "9faa9e82046917e65fbcf1eef148b0b087fb3cd410b5c1f5ff26b72487b40327" }, "downloads": -1, "filename": "django_walletpass-0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "45fe4301b411c04fa333ad84263359a6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5.0", "size": 19330, "upload_time": "2019-06-11T08:22:13", "url": "https://files.pythonhosted.org/packages/2a/d0/144ea89d0e5a31d7cf2f25323ae432ed646c22e7bfb8ad6dd49c0ba44972/django_walletpass-0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0b11df441a2f68a106009ebb93ca3966", "sha256": "e53df385947edc96ff619211240ff0157241bfe3fb2104f1db237828c7b42aec" }, "downloads": -1, "filename": "django-walletpass-0.5.tar.gz", "has_sig": false, "md5_digest": "0b11df441a2f68a106009ebb93ca3966", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 15308, "upload_time": "2019-06-11T08:22:15", "url": "https://files.pythonhosted.org/packages/56/47/9e371d334d5fc1e59cc64a3a9b4d5c7fe2cfec8c14a79a10cd31c427a751/django-walletpass-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "eb0d5b5023700862eb2cd4b87419f57d", "sha256": "284287a81a5eb924506d0414c2c2577129cd185912c90479dec69b58fbf3c4a3" }, "downloads": -1, "filename": "django_walletpass-0.6-py2-none-any.whl", "has_sig": false, "md5_digest": "eb0d5b5023700862eb2cd4b87419f57d", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 19520, "upload_time": "2019-06-11T10:17:14", "url": "https://files.pythonhosted.org/packages/f5/47/992fb32f3ae91ea0b6ce90a13349713abbd4ba882fa37d7623ab4bad997e/django_walletpass-0.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ebd092192b5992c14ddc9104a89ef526", "sha256": "79c9cf7796b1d4739f8de7f82ea29ef180c56b6ced834c2f2be88083c49999c8" }, "downloads": -1, "filename": "django-walletpass-0.6.tar.gz", "has_sig": false, "md5_digest": "ebd092192b5992c14ddc9104a89ef526", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 15514, "upload_time": "2019-06-11T10:17:15", "url": "https://files.pythonhosted.org/packages/66/67/ff10945148a8c5059c4d691c4af7b377154519a3c37e7f1130d6f9fe28d5/django-walletpass-0.6.tar.gz" } ], "0.7": [ { "comment_text": "", "digests": { "md5": "cb079484e3d2a1f2c7285d0ba14bfd12", "sha256": "85346ec939f8bb5f1e5c3aa9a6a8cd04039bc2cd7dae9a547a4c7821e54ba255" }, "downloads": -1, "filename": "django_walletpass-0.7-py2-none-any.whl", "has_sig": false, "md5_digest": "cb079484e3d2a1f2c7285d0ba14bfd12", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 20639, "upload_time": "2019-06-12T17:20:09", "url": "https://files.pythonhosted.org/packages/c4/1d/7120d2821ee0761f04cb0f2b6e714257c6839afc43536e3fa53f159aec36/django_walletpass-0.7-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1baaaf58b2a7722be2983269a7d87e2f", "sha256": "68fd4e574bc1d12f655864e23d2e85478e28454324ef43b7474c08ae1f7b56b4" }, "downloads": -1, "filename": "django-walletpass-0.7.tar.gz", "has_sig": false, "md5_digest": "1baaaf58b2a7722be2983269a7d87e2f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 16134, "upload_time": "2019-06-12T17:20:11", "url": "https://files.pythonhosted.org/packages/38/95/1167edc50d1baa8b94ed0875896dda04f48d4955ea14d3d284b21b01d268/django-walletpass-0.7.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "8b95a0de966ba6091a700e96599ba7cf", "sha256": "bea6b8032082e6e066547f22129f5b2fdf3a2eb061e3e323ac5f2caf218320c9" }, "downloads": -1, "filename": "django_walletpass-0.8-py2-none-any.whl", "has_sig": false, "md5_digest": "8b95a0de966ba6091a700e96599ba7cf", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 21178, "upload_time": "2019-06-13T14:39:27", "url": "https://files.pythonhosted.org/packages/df/be/add0d054b84305dfcf3f99415601717b796aaa5840442838669fab61fba9/django_walletpass-0.8-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ed12b5ffed18255671f2f1995763e260", "sha256": "1abca88e5d426cc2aaf58f4f96d9292a1a09016252dff120e5a63e79820f56cc" }, "downloads": -1, "filename": "django-walletpass-0.8.tar.gz", "has_sig": false, "md5_digest": "ed12b5ffed18255671f2f1995763e260", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 16241, "upload_time": "2019-06-13T14:39:29", "url": "https://files.pythonhosted.org/packages/fa/d9/a418a79250754b21b4f0bd0bead76f236a78001f82a1755a97000c6ca72d/django-walletpass-0.8.tar.gz" } ], "0.9": [ { "comment_text": "", "digests": { "md5": "10cea2caf24bbcd48d48298acc19d64c", "sha256": "654afc9327af1efb0e848df5d0fb58ab18cf913bd3ce7e5584fae5378b32fb35" }, "downloads": -1, "filename": "django_walletpass-0.9-py2-none-any.whl", "has_sig": false, "md5_digest": "10cea2caf24bbcd48d48298acc19d64c", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 21211, "upload_time": "2019-06-13T15:45:16", "url": "https://files.pythonhosted.org/packages/8c/db/c6dabf38507a72335119de9bd22a1a94194ca7bb108e03f9f5702dea2a18/django_walletpass-0.9-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4706c5391214a64bb70dbd65e1ecf585", "sha256": "77142457b79a0775485d866407f07c6752d0b2486b4a9a9e310b0c8ace0b5fc5" }, "downloads": -1, "filename": "django-walletpass-0.9.tar.gz", "has_sig": false, "md5_digest": "4706c5391214a64bb70dbd65e1ecf585", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 16258, "upload_time": "2019-06-13T15:45:18", "url": "https://files.pythonhosted.org/packages/e4/11/3dda3a692d8e1be37457c54fa3409fa08b2ad7c534580d869df56e2ec7c6/django-walletpass-0.9.tar.gz" } ], "1.0": [ { "comment_text": "", "digests": { "md5": "e25f9c89a52fc0134b5e2c36de09a89a", "sha256": "103e968a8fa33216c74ee16ca5820d229346abcd0b72fd727225d054585a2435" }, "downloads": -1, "filename": "django_walletpass-1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "e25f9c89a52fc0134b5e2c36de09a89a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 22555, "upload_time": "2019-06-17T10:20:59", "url": "https://files.pythonhosted.org/packages/98/c9/0a669dbfc9ee2db149b65df8addea51d8795c491759a8c81a889a3b197b0/django_walletpass-1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a575aba2928b1900f6e1d16c380621b5", "sha256": "079c0f4cf6114548a97a7d528850d03fa0f84c8e104c266de00b57af2e6c2585" }, "downloads": -1, "filename": "django-walletpass-1.0.tar.gz", "has_sig": false, "md5_digest": "a575aba2928b1900f6e1d16c380621b5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 16888, "upload_time": "2019-06-17T10:21:01", "url": "https://files.pythonhosted.org/packages/45/9c/c85e7ffc763f8ebb3c9517995081b18b3cdf9315ef78486f03d73c701746/django-walletpass-1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e25f9c89a52fc0134b5e2c36de09a89a", "sha256": "103e968a8fa33216c74ee16ca5820d229346abcd0b72fd727225d054585a2435" }, "downloads": -1, "filename": "django_walletpass-1.0-py2-none-any.whl", "has_sig": false, "md5_digest": "e25f9c89a52fc0134b5e2c36de09a89a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": ">=3.5.0", "size": 22555, "upload_time": "2019-06-17T10:20:59", "url": "https://files.pythonhosted.org/packages/98/c9/0a669dbfc9ee2db149b65df8addea51d8795c491759a8c81a889a3b197b0/django_walletpass-1.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a575aba2928b1900f6e1d16c380621b5", "sha256": "079c0f4cf6114548a97a7d528850d03fa0f84c8e104c266de00b57af2e6c2585" }, "downloads": -1, "filename": "django-walletpass-1.0.tar.gz", "has_sig": false, "md5_digest": "a575aba2928b1900f6e1d16c380621b5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 16888, "upload_time": "2019-06-17T10:21:01", "url": "https://files.pythonhosted.org/packages/45/9c/c85e7ffc763f8ebb3c9517995081b18b3cdf9315ef78486f03d73c701746/django-walletpass-1.0.tar.gz" } ] }