{ "info": { "author": "Fran\u00e7ois Durand", "author_email": "fradurand@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "==============\nMy Toy Package\n==============\n\n\n.. image:: https://img.shields.io/pypi/v/my_toy_package.svg\n :target: https://pypi.python.org/pypi/my_toy_package\n\n.. image:: https://img.shields.io/travis/francois-durand/my_toy_package.svg\n :target: https://travis-ci.org/francois-durand/my_toy_package\n\n.. image:: https://readthedocs.org/projects/my-toy-package/badge/?version=latest\n :target: https://my-toy-package.readthedocs.io/en/latest/?badge=latest\n :alt: Documentation Status\n\n.. image:: https://pyup.io/repos/github/francois-durand/my_toy_package/shield.svg\n :target: https://pyup.io/repos/github/francois-durand/my_toy_package/\n :alt: Updates\n\nMy Toy Package shows how to use Cookiecutter.\n\n* Free software: GNU General Public License v3.\n* Documentation: https://my-toy-package.readthedocs.io.\n\nThe following walk-through is a checklist of how to create and maintain your Python package, especially relying on\nCookiecutter, by Audrey Roy Greenfeld, and PyCharm. We will also use GitHub, ReadTheDocs, PyPI, Travis CI and Pyup.\n\nIn the end, here is how it will work.\n\n* When you push modifications to GitHub:\n\n * Travis CI automatically runs all the tests and checks that everything is working on several versions of Python\n (e.g. 3.5, 3.6, 3.7).\n * ReadTheDocs automatically generates the documentation and publishes it online.\n\n* When you \"tag\" a version on GitHub, in other words when you \"draft a release\": Travis CI not only performs\n the tests but also generates the distribution files of your package and publishes them on PyPI. As a consequence,\n any Python user will be able to install you package via ``pip install the_name_of_your_package``.\n\n* Generally, your package has dependencies on other packages. PyUp informs you when a new version of these\n third-party packages are released. You receive a pull request in GitHub, Travis CI checks that everything is OK,\n and you just have to accept the pull request in GitHub.\n\n-------------------\nCreate your package\n-------------------\n\nThis section is adapted from: https://cookiecutter-pypackage.readthedocs.io/en/latest/tutorial.html .\n\nPreliminaries\n=============\n\nEnsure that you have accounts (preferably with the same login) on:\n\n* GitHub_,\n* ReadTheDocs_,\n* PyPI_,\n* Travis-CI_,\n* Pyup_.\n\n.. _GitHub: https://github.com\n.. _ReadTheDocs: https://readthedocs.org\n.. _PyPI: https://pypi.python.org/pypi\n.. _Travis-CI: https://travis-ci.org\n.. _Pyup: https://pyup.io\n\nInstall Cookiecutter\n====================\n\nIn a terminal (e.g. Anaconda Prompt)::\n\n pip install cookiecutter\n\nOr, if you prefer::\n\n easy_install cookiecutter\n\nInstall Git\n===========\n\nIf necessary, install git: https://git-scm.com/downloads .\n\nGenerate Your Package\n=====================\n\n#. Your project will need a project name (e.g. *My Toy Package*) and a project slug (typically ``my_toy_package``).\n Before starting, check that your project slug is not used in PyPI.\n#. In a terminal (e.g. Anaconda Prompt):\n\n #. Go to the parent directory of where you want to put the directory of your package, e.g. ``D:\\GitHub\\``.\n #. ``cookiecutter https://github.com/audreyr/cookiecutter-pypackage.git``\n #. Answer the questions. Here is an example (some explanations follow)::\n\n full_name [Audrey Roy Greenfeld]: Fran\u00e7ois Durand\n email [aroy@alum.mit.edu]: fradurand@gmail.com\n github_username [audreyr]: francois-durand\n project_name [Python Boilerplate]: My Toy Package\n project_slug [my_toy_package]:\n project_short_description [Python Boilerplate contains all the boilerplate\n you need to create a Python package.]: My Toy Package shows how to use\n Cookiecutter.\n pypi_username [francois-durand]:\n version [0.1.0]:\n use_pytest [n]: y\n use_pypi_deployment_with_travis [y]:\n add_pyup_badge [n]: y\n Select command_line_interface:\n 1 - Click\n 2 - No command-line interface\n Choose from 1, 2 [1]: 2\n create_author_file [y]:\n Select open_source_license:\n 1 - MIT license\n 2 - BSD license\n 3 - ISC license\n 4 - Apache Software License 2.0\n 5 - GNU General Public License v3\n 6 - Not open source\n Choose from 1, 2, 3, 4, 5, 6 [1]: 5\n\nSome explanations now:\n\n* ``use_pytest``: there are essentially three ways to do unit tests in Python: unittest (the standard solution),\n pytest (another test package) and doctest (where tests are integrated in the docstrings). If you are new to\n testing, I suggest using doctest. But even so, pytest is useful to configure your tests (as we will do a bit\n later). For this reason, my advice is to answer yes.\n* ``use_pypi_deployment_with_travis``: when you will do a *release* in GitHub, Travis will automatically release\n your package on PyPI.\n* ``add_pyup_badge``: a pyup badge will appear in the readme of your package.\n* ``Click``: this allows you to easily call your program with unix-style command, e.g. ``python my_program.py --help``\n You can answer yes, even if you do not use it for the moment. But personally, I answer no.\n* ``create_author_file``: I suggest to answer yes.\n\nCreate the PyCharm Project\n==========================\n\nIn PyCharm:\n\n#. Create new project.\n#. In *Location*, fetch the directory of your project, e.g. ``D:\\GitHub\\my_toy_package``. Validate.\n#. Warning that the directory is not empty: validate.\n#. Menu File \u2192 Settings \u2192 Project \u2192 Project Interpreter. (For Apple users: PyCharm \u2192 Preferences \u2192 Project \u2192\n Project Interpreter.)\n#. Click on the gear-shaped icon \u2192 Add.\n#. Fill in the form: New environment using Virtualenv. This directory proposed is just fine. Validate.\n#. Open the file ``.gitignore`` (you can do so in PyCharm).\n\n #. Add these lines (e.g. at the end of the file)::\n\n # PyCharm project settings\n .idea\n\n #. Check that ``venv`` is also excluded, i.e. there should be a line ``venv/`` in the file ``.gitignore``.\n\nCreate the GitHub Repo\n======================\n\nIn PyCharm:\n\n#. If it is not already done, register your GitHub account in PyCharm:\n\n #. Menu File \u2192 Settings \u2192 Version Control \u2192 GitHub.\n #. Click on the \"+\" icon.\n #. Fill in the form and validate.\n\n#. Menu VCS \u2192 Import into version control \u2192 Share project on GitHub.\n\n#. Fill in the form and validate, e.g.::\n\n New repository name: my_toy_package\n Remote name: origin\n Description: My Toy Package shows how to use cookiecutter.\n\nIn a browser, you can go to your GitHub account to check that everything is there. If not, do an initial commit in\nPyCharm: VCS \u2192 Commit...\n\nN.B.: if you use a public GitHub repository, using PyPI is free (but not for a private repository).\n\nInstall Dev Requirements\n========================\n\nIn the PyCharm terminal:\n\n#. Ensure you are in the directory of your package (e.g. ``D:\\GitHub\\my_toy_package``).\n#. Ensure that your virtual environment is activated: there should be ``(venv)`` at the beginning of the line. If not::\n\n Windows: venv\\Scripts\\activate\n Linux: source venv/bin/activate\n\n#. ``pip install -r requirements_dev.txt``\n\nInstall Your Package in \"Development Mode\"\n==========================================\n\nThis way, your package behaves as if it were installed, but any change you make will have effect immediately.\nIn the PyCharm terminal, you should still be in the directory of your package, with your virtual environment activated.\nDo::\n\n python setup.py develop\n\nSet Up Travis CI\n================\n\nEnsure that Travis CLI is installed on your computer.\n\n* Under Windows:\n\n #. Install Ruby (https://rubyinstaller.org/ ).\n #. In PyCharm terminal, do: ``gem install -V travis --no-rdoc --no-ri``.\n\n* Under Debian, run as root::\n\n apt-get update\n apt-get install cookie-cutter ruby ruby-dev gcc\n gem install -V travis --no-rdoc --no-ri\n\n* Under Ubuntu 16, run::\n\n sudo apt-get install ruby-dev\n sudo gem install -V travis --no-rdoc --no-ri\n\nIf you experience troubles installing travis, cf. https://github.com/travis-ci/travis.rb#installation.\n\nOnce Travis CLI is installed:\n\n#. On Travis website:\n\n #. Login using your Github credentials.\n #. It may take a few minutes for Travis CI to load up a list of all your GitHub repos. They will be listed with\n boxes to the left of the repo name, where the boxes have an X in them, meaning it is not connected to Travis CI.\n Add the public repo to your Travis CI account by clicking the X to switch it \u201con\u201d in the box next to the\n ``my_toy_package`` repo. Do not try to follow the other instructions, that will be taken care of next.\n\n#. In PyCharm terminal, ensure that you are in the directory of your project and::\n\n travis encrypt --add deploy.password \"My PyPI password\"\n\n (replace with your actual password, in quotation marks).\n\n#. Open the file ``.travis.yml`` (you can do so in PyCharm).\n\n #. Check that ``deploy.password.secure`` is encoded.\n #. Suppress the line ``- 2.7`` (unless you plan to write code that is compatible with Python 2.7).\n\nSet Up ReadTheDocs\n==================\n\n#. On ReadTheDocs website:\n\n #. Param\u00e8tres \u2192 Comptes li\u00e9s. Check that your GitHub account is listed here.\n #. Go to \u201cMy Projects\u201d. Import a Project \u2192 Importer manuellement. Fill in the form and validate, e.g.::\n\n my_toy_package\n https://github.com/francois-durand/my_toy_package\n Git\n\n #. Admin \u2192 Advanced settings.\n\n #. Check \"Installer votre projet dans un virtualenv via setup.py install\".\n #. In \"Python interpreter\", choose \"CPython 3.x\".\n\n#. In PyCharm, commit/push, i.e.:\n\n #. Menu VCS \u2192 Commit.\n #. Enter a commit message, e.g. ``Initial settings``.\n #. Commit \u2192 Commit and push.\n #. Push.\n\nSet Up Pyup\n===========\n\n#. On Pyup website:\n\n #. Click on the green *Add Repo* button and select the repo you created.\n #. A pop up appears. Personally, I checked the first item and unchecked the two others.\n\n Within a few minutes, you will probably receive a pull request in GitHub (and in your email).\n\n#. On GitHub website:\n\n #. Accept merge.\n #. Delete branch.\n\n#. In PyCharm, menu VCS \u2192 Update project. This does a git update (to get the modifications done by Pyup).\n\nAdd the Example Files\n=====================\n\n#. On GitHub website, download `My Toy Package`_.\n#. In a terminal or file explorer:\n\n #. Move the directories ``my_toy_package\\my_toy_package\\SubPackage1`` and ``my_toy_package\\my_toy_package\\SubPackage2``\n into the corresponding places of your project.\n #. Move the file ``my_toy_package\\docs\\reference`` into the corresponding place of your project.\n #. You can throw away the other files you downloaded.\n\n#. In PyCharm:\n\n #. Right-click on the files you added. Git \u2192 Add.\n #. In the file ``MyClass1``, replace ``my_toy_package`` with the name of your package.\n #. Manually modify the copyright statement in files ``MyClass1``, ``MyClass2`` and ``MyClass3``.\n #. In the file ``reference``, replace ``my_toy_package`` with the name of your package.\n #. In the file ``index.rst``, just after the line ``usage``, add ``reference``.\n #. In the file ``__init__.py``, add the following shortcuts::\n\n from .SubPackage1.MyClass1 import MyClass1\n from .SubPackage2.MyClass2 import MyClass2\n from .SubPackage2.MyClass3 import MyClass3\n\n #. In the file ``setup.py``:\n\n #. Remove the two lines about Python 2 (unless you plan to write code that is compatible with Python 2).\n #. Delete the argument of ``find_packages()``.\n\n.. _`My Toy Package`: https://github.com/francois-durand/my_toy_package\n\n\nAdd a Run Configuration for Doctest\n===================================\n\nIn PyCharm:\n\n#. Menu Run \u2192 Edit Configurations.\n#. Add a new configuration by clicking the + button \u2192 Python tests \u2192 py.test.\n#. Give a name to the configuration, e.g. ``All tests``.\n#. In *Additional Arguments* field, add ``--doctest-modules``.\n#. Ignore the warning and validate.\n\nRun this configuration: normally, it runs all the tests of the project.\n\nAdd a Run Configuration for Sphinx\n==================================\n\nIn PyCharm:\n\n#. Menu Run \u2192 Edit Configurations.\n#. Plus icon (top left) \u2192 Python docs \u2192 Sphinx task.\n#. Give a name to the configuration, e.g. ``Generate docs``.\n#. Input: the \"docs\" directory of your project.\n#. Output: the \"build\" directory of your project.\n#. OK.\n\nRun this configuration: normally, it generates the documentation. To check the result, you can open the file\n``build/index.html``.\n\nCheck that Everything is Working\n================================\n\n#. In PyCharm: commit/push.\n#. In Travis CI: go to Current. The build should be a success (it may take several minutes).\n#. In ReadTheDocs:\n\n #. In *Compilations*, the doc should be *transmis*.\n #. Open the documentation.\n #. In the table of contents, click on the first page (e.g. *My Toy Package*). You should have four *badges*:\n\n #. PyPI: invalid (there will be the version number after your first release).\n #. Build: passing.\n #. Docs: passing.\n #. Pyup: up-to-date.\n\n #. In the table of contents, click on *Reference*. You should see the doc of your functions.\n\nIf you wish, you are now ready to release your first version (cf. below).\n\n-------------------------------\nDuring the Life of Your Package\n-------------------------------\n\nRelease a Version\n=================\n\nIn PyCharm:\n\n#. Update the file ``HISTORY.rst``.\n#. In PyCharm terminal, do one of the following:\n\n * ``bumpversion patch`` (version x.y.z \u2192 x.y.(z+1)) when you made a backwards-compatible modification (such as a\n bug fix).\n * ``bumpversion minor`` (version x.y.z \u2192 x.(y+1).0) when you added a functionality.\n * ``bumpversion major`` (version x.y.z \u2192 (x+1).0.0) when you changed the API. Note: in versions 0.y.z, the API is\n not expected to be stable anyway.\n\n#. Commit/push.\n\nIf you were working on a secondary branch, do what you have to (pull request to master, etc).\n\nOn Github website, go to \"releases\". Select \"Draft a new release\", add a tag name (e.g. ``v0.1.0``) and a message\n(e.g. ``First stable version``). Select \"Publish release\".\n\nAfter a few minutes, Travis CI has finished the built and it is deployed on PyPI.\n\nAdd a Module (= a File)\n=======================\n\nTypically, this is a file ``SubPackage\\MyClass``, containing class ``MyClass``.\n\n#. In the file ``__init__.py``: add the shortcut.\n#. In the file ``reference.rst``: add the auto-documentation.\n\nUse a Third-Party Package\n=========================\n\nFor example, you want to use Numpy in your module.\n\nIn the file ``setup.py``, in the list ``requirements``, add the name of the package (e.g. ``'numpy``).\n\nWhen You Receive a Pull Request from Pyup\n=========================================\n\n#. In GitHub website:\n\n #. Open the pull request.\n #. If necessary, wait until Travis CI has finished the build, so that you know there is no problem.\n #. Merge pull request.\n #. Confirm merge.\n #. Delete branch.\n #. In the front page, you Pyup badge should be up-to-date. If not, this is probably just a matter of time.\n You can go to the Pyup website, click on the gear \u2192 reload.\n\n#. In PyCharm, Menu VCS \u2192 Update project.\n\n-------\nCredits\n-------\n\nThis package was created with Cookiecutter_ and the `audreyr/cookiecutter-pypackage`_ project template.\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n\n\n=======\nHistory\n=======\n\n0.2.2 (2019-04-03)\n------------------\n\n* Minor updates in documentation.\n\n0.2.1 (2019-03-27)\n------------------\n\n* Update flake.\n\n0.2.0 (2019-03-27)\n------------------\n\n* Configuration for local build of documentation with Sphinx.\n* Release a version directly on Github's website.\n* Minor edits in documentation.\n\n0.1.6 (2018-03-06)\n------------------\n\n* Minor edit in documentation.\n\n0.1.5 (2018-03-06)\n------------------\n\n* Patch upload subpackages.\n\n0.1.0 (2018-03-06)\n------------------\n\n* First release on PyPI.\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/francois-durand/my_toy_package", "keywords": "my_toy_package", "license": "GNU General Public License v3", "maintainer": "", "maintainer_email": "", "name": "my-toy-package", "package_url": "https://pypi.org/project/my-toy-package/", "platform": "", "project_url": "https://pypi.org/project/my-toy-package/", "project_urls": { "Homepage": "https://github.com/francois-durand/my_toy_package" }, "release_url": "https://pypi.org/project/my-toy-package/0.2.2/", "requires_dist": [ "Click (>=6.0)" ], "requires_python": "", "summary": "My Toy Package shows how to use Cookiecutter.", "version": "0.2.2" }, "last_serial": 5090395, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "a7c4a4f742319eccf47fa0610348f5a4", "sha256": "e5ab2acaab00dee243fadfacb68ed012bb2b62dce29a1edf651d7815af7b7d6c" }, "downloads": -1, "filename": "my_toy_package-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a7c4a4f742319eccf47fa0610348f5a4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13082, "upload_time": "2018-03-06T10:13:53", "url": "https://files.pythonhosted.org/packages/76/8c/48326ad574a8306d8ffc81bb8a61b35ae290efaa4e9f1a5098e57ba71a68/my_toy_package-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cfeea3152bd434fbcd48fe249746dfed", "sha256": "1fafe11a4281d096580fdd38ffd3daa0fc1b33f1a2723d1c18d1c7baa08d0f23" }, "downloads": -1, "filename": "my_toy_package-0.1.0.tar.gz", "has_sig": false, "md5_digest": "cfeea3152bd434fbcd48fe249746dfed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18641, "upload_time": "2018-03-06T10:13:54", "url": "https://files.pythonhosted.org/packages/06/82/d5b21c7011e07d8c2bd797d2e880851ede56d73956be37dfcb5e2e009ba6/my_toy_package-0.1.0.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "b7d243d72d4c6f1ee699811ab03f0e7c", "sha256": "928cf2524fc550054c80c805bea9911e576abc7109e880de3be8b4f455ac980a" }, "downloads": -1, "filename": "my_toy_package-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b7d243d72d4c6f1ee699811ab03f0e7c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17052, "upload_time": "2018-03-06T10:48:46", "url": "https://files.pythonhosted.org/packages/7e/e6/992afac9c341d61b11c4f7484c2c95c5167ead0aea4b237c15fc14ade764/my_toy_package-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2d8b4427562e9128e8d93be428a609b6", "sha256": "ad1f89d7de1a78e6bcb34510a371c4633f5152e4027f427411559230cd346cba" }, "downloads": -1, "filename": "my_toy_package-0.1.3.tar.gz", "has_sig": false, "md5_digest": "2d8b4427562e9128e8d93be428a609b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20311, "upload_time": "2018-03-06T10:48:47", "url": "https://files.pythonhosted.org/packages/58/40/a247c07a8f120ccaee083e4964ae61f341d2c23e5cf386b26cda47d14a9e/my_toy_package-0.1.3.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "d14ae64e1a4a49827e140414dea4d9f1", "sha256": "8d0cc34bc320ff568ab407d2a408c134e51379924156bdf63df709ace3d2ef42" }, "downloads": -1, "filename": "my_toy_package-0.1.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d14ae64e1a4a49827e140414dea4d9f1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17104, "upload_time": "2018-03-06T11:01:43", "url": "https://files.pythonhosted.org/packages/0e/9c/b7a6ea38a8052d32445aa281a723629d550e84b4d027abbc7129122a6493/my_toy_package-0.1.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8b74930551c13dbdd0d3cd43cb5c28cc", "sha256": "46f2d8671507b24802edd152b4b9e139a6d09d3b94036fe53bf93cf8851a2ea2" }, "downloads": -1, "filename": "my_toy_package-0.1.5.tar.gz", "has_sig": false, "md5_digest": "8b74930551c13dbdd0d3cd43cb5c28cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20358, "upload_time": "2018-03-06T11:01:45", "url": "https://files.pythonhosted.org/packages/82/87/f9449879301c4a9feb6d733128e3d72de1000fb87c32a5c4a733416839d0/my_toy_package-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "01183c12541c96576af6ca36f13f6f98", "sha256": "54b7033d61e60d8fa2d6694bf99d9275f489bf42ba59ff03557bf1cd60add0e3" }, "downloads": -1, "filename": "my_toy_package-0.1.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "01183c12541c96576af6ca36f13f6f98", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 17136, "upload_time": "2018-03-06T12:31:05", "url": "https://files.pythonhosted.org/packages/8c/27/259109a155f333f18d9bc6b3c24275c341b27723cac6b079f31442a61c07/my_toy_package-0.1.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8d390166f2c2e05a9d1538e6d6cac80a", "sha256": "c0b72e21a8cbcf316108498a29cae9c58b0d197e80bc78b8ba6e0f6882c2f27a" }, "downloads": -1, "filename": "my_toy_package-0.1.6.tar.gz", "has_sig": false, "md5_digest": "8d390166f2c2e05a9d1538e6d6cac80a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20410, "upload_time": "2018-03-06T12:31:06", "url": "https://files.pythonhosted.org/packages/66/36/5199e4757fb60fc93a19bfedcc72f1ba5f8caa4c8e8cb64235a55c5b124e/my_toy_package-0.1.6.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "f6ba1ffbb5ff8a9ec220f081b350c15d", "sha256": "31cd55b38fdace05d084dc89c96e234ed9bf56c0cf0d4a560b6999492d372f1f" }, "downloads": -1, "filename": "my_toy_package-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f6ba1ffbb5ff8a9ec220f081b350c15d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12789, "upload_time": "2019-03-27T11:18:40", "url": "https://files.pythonhosted.org/packages/5a/9d/804b79a5cb4b4dd49ca184465f1306faabb76917a947ac858c4987900dba/my_toy_package-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0e9e7040795b672670000e99b5121bb4", "sha256": "6c0d54187bf25b599f1d9e262fd1564def6ecc480eff16a1cacfa19c48ea3886" }, "downloads": -1, "filename": "my_toy_package-0.2.0.tar.gz", "has_sig": false, "md5_digest": "0e9e7040795b672670000e99b5121bb4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17317, "upload_time": "2019-03-27T11:18:41", "url": "https://files.pythonhosted.org/packages/e1/20/b7266635cce9648b798ae17c15c6d507775ad2ac0ee95a762f859343653b/my_toy_package-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "73acb083544ecb3433f4794dfc24edd9", "sha256": "9eac020cfbd1b7cb821b070fd458e8b113ef1e36640df756c00a15e5483afcfc" }, "downloads": -1, "filename": "my_toy_package-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "73acb083544ecb3433f4794dfc24edd9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12798, "upload_time": "2019-03-27T13:18:04", "url": "https://files.pythonhosted.org/packages/30/af/b8b29a6f3769a0c22d97c310262877e3b4db76384aad5ff2ef43e44a89ea/my_toy_package-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0e5821bc2e7bd356a421ef5c60a4f2ee", "sha256": "ded5c93fcd02e94323769116c55c809de82f97a53d504c6c8d1b799178db4bec" }, "downloads": -1, "filename": "my_toy_package-0.2.1.tar.gz", "has_sig": false, "md5_digest": "0e5821bc2e7bd356a421ef5c60a4f2ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17339, "upload_time": "2019-03-27T13:18:06", "url": "https://files.pythonhosted.org/packages/b1/3e/3c04c4f599e8e6c7eca4aa34c0e42d0df0babc9849bebd94c2b6411180f0/my_toy_package-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "7ea389ec729b2512d8ad5c5cbe502e6c", "sha256": "d93f43a9f5c10e3f6a199cc92830327048a0a057b483f273e7d7f6aad2667fdf" }, "downloads": -1, "filename": "my_toy_package-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7ea389ec729b2512d8ad5c5cbe502e6c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13331, "upload_time": "2019-04-03T11:46:40", "url": "https://files.pythonhosted.org/packages/1c/2e/786a6d179dca6c4270f729938ecf347c1e7c5ab2f35fa4e63dfa2f4ba916/my_toy_package-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f3832fd6c9208be743714becc60733c9", "sha256": "e1ee269a3fca2a690c79c3df0839e0b962d0c70da0895b463491e56bb89f4d56" }, "downloads": -1, "filename": "my_toy_package-0.2.2.tar.gz", "has_sig": false, "md5_digest": "f3832fd6c9208be743714becc60733c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21944, "upload_time": "2019-04-03T11:46:41", "url": "https://files.pythonhosted.org/packages/d0/61/06bf093c343fc44917ebf9546a914f22bcf95477b0d5b51149b403c0be81/my_toy_package-0.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "7ea389ec729b2512d8ad5c5cbe502e6c", "sha256": "d93f43a9f5c10e3f6a199cc92830327048a0a057b483f273e7d7f6aad2667fdf" }, "downloads": -1, "filename": "my_toy_package-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "7ea389ec729b2512d8ad5c5cbe502e6c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13331, "upload_time": "2019-04-03T11:46:40", "url": "https://files.pythonhosted.org/packages/1c/2e/786a6d179dca6c4270f729938ecf347c1e7c5ab2f35fa4e63dfa2f4ba916/my_toy_package-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f3832fd6c9208be743714becc60733c9", "sha256": "e1ee269a3fca2a690c79c3df0839e0b962d0c70da0895b463491e56bb89f4d56" }, "downloads": -1, "filename": "my_toy_package-0.2.2.tar.gz", "has_sig": false, "md5_digest": "f3832fd6c9208be743714becc60733c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21944, "upload_time": "2019-04-03T11:46:41", "url": "https://files.pythonhosted.org/packages/d0/61/06bf093c343fc44917ebf9546a914f22bcf95477b0d5b51149b403c0be81/my_toy_package-0.2.2.tar.gz" } ] }