{ "info": { "author": "Michael McNeil Forbes", "author_email": "michael.forbes+bitbucket@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": ".. -*- rst -*- -*- restructuredtext -*-\n\n.. This file should be written using the restructure text\n.. conventions. It will be displayed on the bitbucket source page and\n.. serves as the documentation of the directory.\n\n.. |virtualenv.py| replace:: ``virtualenv.py``\n.. _virtualenv.py: https://raw.github.com/pypa/virtualenv/master/virtualenv.py\n\n.. |EPD| replace:: Enthough Python Distribution\n.. _EPD: http://www.enthought.com/products/epd.php\n.. _Anaconda: https://store.continuum.io/cshop/anaconda\n.. _Conda: http://docs.continuum.io/conda\n.. _Miniconda: http://conda.pydata.org/miniconda.html\n\n.. _Enthought: http://www.enthought.com\n.. _Continuum Analytics: http://continuum.io\n\n.. _Spyder: https://code.google.com/p/spyderlib/\n.. _Wakari: https://www.wakari.io\n.. _Canopy: https://www.enthought.com/products/canopy/\n\n.. _mercurial: http://mercurial.selenic.com/\n.. _virtualenv: http://www.virtualenv.org/en/latest/\n.. _IPython: http://ipython.org/\n.. _Ipython notebook: \\\n http://ipython.org/ipython-doc/dev/interactive/htmlnotebook.html\n.. _NBViewer: http://nbviewer.ipython.org\n.. |pip| replace:: ``pip``\n.. _pip: http://www.pip-installer.org/\n.. _git: http://git-scm.com/\n.. _github: https://github.com\n.. _RunSnakeRun: http://www.vrplumber.com/programming/runsnakerun/\n.. _GSL: http://www.gnu.org/software/gsl/\n.. _pygsl: https://bitbucket.org/mforbes/pygsl\n.. _Sphinx: http://sphinx-doc.org/\n.. _SciPy: http://www.scipy.org/\n.. _Mayavi: http://code.enthought.com/projects/mayavi/\n.. _NumPy: http://numpy.scipy.org/\n.. _Numba: https://github.com/numba/numba#readme\n.. _NumbaPro: http://docs.continuum.io/numbapro/\n.. _Blaze: http://blaze.pydata.org\n.. _Python: http://www.python.org/\n.. _matplotlib: http://matplotlib.org/\n.. _Matlab: http://www.mathworks.com/products/matlab/\n.. _MKL: http://software.intel.com/en-us/intel-mkl\n.. _Intel compilers: http://software.intel.com/en-us/intel-compilers\n.. _Bento: http://cournape.github.com/Bento/\n.. _pyaudio: http://people.csail.mit.edu/hubert/pyaudio/\n.. _PortAudio: http://www.portaudio.com/archives/pa_stable_v19_20111121.tgz\n.. _MathJax: http://www.mathjax.org/\n.. _reStructuredText: http://docutils.sourceforge.net/rst.html\n.. _Emacs: http://www.gnu.org/software/emacs/\n.. _Pymacs: https://github.com/pinard/Pymacs\n.. _Ropemacs: http://rope.sourceforge.net/ropemacs.html\n.. _PyPI: https://pypi.python.org/pypi\n\n.. _FFTW: http://www.fftw.org\n.. _EC2: http://aws.amazon.com/ec2/\n.. _QT: http://qt.digia.com\n\n.. |site.USER_BASE| replace:: ``site.USER_BASE``\n.. _site.USER_BASE: https://docs.python.org/2/library/site.html#site.USER_BASE\n\n\n.. default-role:: math\n\n.. This is so that I can work offline. It should be ignored on bitbucket for\n.. example.\n\n.. sidebar:: Sidebar\n\n .. contents::\n\n===========\n mmf_setup\n===========\nThis meta-project provides an easy way to install all of the python\ntools I typically use. It also serves as a fairly minimal example of\nsetting up a package the |pip|_ can install, and specifying\ndependencies.\n\nIn particular, I structure it for the following use-cases:\n\n1. Rapid installation and configuration of the tools I need. For\n example, I often use [Sage Mathcloud](cloud.sagemath.com).\n Whenever I create a new project, I need to perform some\n initialization. With this project, it is simply a matter of using\n |pip|_ to install this package, and then using some of the tools.\n2. Initial setup of a python distribution on a new computer. This is\n a little more involved since one needs to first install python (I\n recommend using Miniconda_) and then updating the tools.\n3. A place to document various aspects of installing and setting up\n python and related tools. Some of this is old, but kept here for\n reference.\n\n\n====================\n Quickstart (TL;DR)\n====================\n\n1. To get the notebook initialization features without having to install the\n package, just copy `nbinit.py `_ to your project. Importing this\n will try to execute `import mmf_setup;mmf_setup.nbinit()` but failing this,\n will manually run a similar code.\n\n2. Install this package from the source directory, PyPI_, etc. with\n one of the following:\n\n * **Directly from PyPI**\n\n ``pip install --process-dependency-links --user mmf_setup[nbextensions]``\n\n * **From Source**\n\n ``pip install --process-dependency-links --user hg+https://bitbucket.org/mforbes/mmf_setup[nbextensions]``\n\n * **From Local Source** (*Run this from the source directory after you unpack it.*)\n\n ``pip install --process-dependency-links --user .[nbextnensions]``\n\n Note: these can be run without the ``--user`` flag if you want to\n install them system-wide rather than into |site.USER_BASE|_.\n\n3. To get the notebook tools for Jupyter (IPython) notebooks, execute\n the following as a code cell in your notebook and then trust the\n notebook with ``File/Trust Notebook``::\n\n import mmf_setup; mmf_setup.nbinit()\n\n This will download and enable the calico extensions, as well as set\n the theme which is implemented in the output cell so it is stored\n for use online such as when rendered through NBViewer_. One can\n specify different themes. (Presently only ``theme='default'`` and\n ``theme='mmf'`` are supported.)\n\n4. To use the mercurial notebook cleaning tools, simply source the\n ``mmf_setup`` script::\n\n . mmf_setup -v\n\n To do this automatically when you login, add this line to your\n ``~/.bashc`` or ``~/.bash_profile`` scripts. These can also be\n enabled manually by adding the following to your ``~/.hgrc`` file::\n\n [extensions]\n strip=\n mmf_setup.nbclean=$MMF_UTILS/nbclean.py\n\n\n where ``$MMF_UTILS`` expands to the install location for the\n package (which can be seen by running ``mmf_setup -v``).\n\n This will provide commands for committing clean notebooks such as\n ``hg cstatus``, ``hg cdiff`` and ``hg ccommit``.\n\n\n==================\n Installing Tools\n==================\n\nThe following code will download and install the `Calico notebook\nextensions`__ from `here`__::\n\n import mmf_setup.notebook_configuration\n mmf_setup.notebook_configuration.install_extensions()\n\n======================\n Mercurial (hg) Tools\n======================\n\nIf you source the output of the ``mmf_setup`` script::\n\n . mmf_setup\n\nthen your ``HGRCPATH`` will be amended to include this projects\n``hgrc`` file which does the following:\n\n1. Adds some useful extensions.\n2. Adds the following commands:\n\n * ``hg lga`` (or ``hg lg``): provides a nice concise graphical\n display of the repo.\n * ``hg cstatus`` (or ``hg cst``):\n * ``hg cdiff``: same for ``hg diff``\n * ``hg cediff``: same for ``hg ediff``\n * ``hg crecord``: same for ``hg record``. Note, this does not\n function like commit - it will not record the notebooks with the\n full output.\n * ``hg ccommit`` (or ``hg ccom``): same for ``hg com`` but also\n commits the full version of the notebooks with output as a new\n node off the present node with the message ``..: Automatic commit of\n output``. This command has two behaviours depending on the\n configuration option ``nbclean.output_branch``. If this is not\n set::\n\n [nbclean]\n output_branch =\n\n then ``hg ccommit`` will commit a cleaned copy of your notebooks\n with the output stripped, and then will commit the full notebook\n with output (provided that the notebooks have output) as a new\n head::\n\n | o 4: test ...: Automatic commit with .ipynb output\n |/\n @ 3: test ccommit 3\n |\n | o 2: test ...: Automatic commit with .ipynb output\n |/\n o 1: test ccommit 1\n |\n o 0: test commit 0\n\n The parent will always be set to the clean node so that the output\n commits can be safely stripped from your repository if you choose\n not to keep them.\n\n The other mode of operation can be enabled by specifying a name for\n the output branch::\n\n [nbclean]\n output_branch = auto_output\n\n This will merge the changes into a branch with the specified name::\n\n | o 4: test ...: Automatic commit with .ipynb output (...) auto_output\n |/|\n @ | 3: test ccommit 3\n | |\n | o 2: test ...: Automatic commit with .ipynb output (...) auto_output\n |/\n o 1: test ccommit 1\n |\n o 0: test commit 0\n\n This facilitates stripping the output ``hg strip 2`` for example\n will remove all output. It also allows you to track the changes in\n the output.\n\n\nDeveloper Notes\n---------------\n\nThere are a couple of subtle points here that should be mentioned.\n\n* I explored both ``(un)shelve`` and ``commit/strip`` versions of\n saving the current state. While the former allows for shorter\n aliases, it can potentially trigger merges, so we use the latter.\n* I sometimes write commit hook. These should only be run on the real\n commit, so we define the alias ``_commit`` which will bypass the\n hooks as `discussed here`__.\n* The list of files to strip is generated by ``hg status -man``. This\n only includes added or modified files. This, if a notebook was\n commited with output (using ``hg com``) then it will not be\n stripped.\n* Our approach of ``. mmf_setup`` sets ``HGRCPATH`` but if this was\n not set before, then this will skip the default search. As such, we\n insert ``~/.hgrc`` if ``HGRCPATH`` was not previously set. This is\n not ideal, but short of sticking an ``%include`` statement in the\n users ``~/.hgrc`` file, or creating an ``hg`` alias, I do not see a\n robust solution. Note: we only insert ``~/.hgrc`` if ``HGRCPATH``\n is not defined - I ran into problems when always inserting it since\n this can change the order of precedence.\n* Chain commands with semicolons ``;`` not ``&&`` so that things are\n restored even if a command fails. (For example, ``hg ccom`` with a\n notebook that only has output changes used to fail early.)\n\n__ https://selenic.com/pipermail/mercurial-devel/2011-December/036480.html\n\nReleases\n++++++++\n\nTo release a new version be sure to do the following. (The examples use revision\nnumbers etc. for release 0.1.11.)\n\n1. Make sure your code works and that the tests pass. Pull any open issues\n\t into the main release branch, closing those issue branches.\n2. Commit all your changes. (This is an optional commit, if the changes are\n\t small, this can be rolled in with the following commit.)\n3. Remove the ``'dev'`` from the version in ``setup.py`` (i.e.\n\t ``'0.1.11dev' -> '0.1.11'``).\n4. Add a note about the changes in ``CHANGES.txt``.\n5. Commit the changes. Start the commit message with::\n\n\t hg com -m \"REL: 0.1.11 ...\"\n\n6. Create a pull request (PR) on bitbucket to pull this branch to ``default`` and\n\t make sure to specify to close the branch on pull.\n7. Check, approve, and merge the PR.\n8. Upload your package to ``pypi`` with ``twine``::\n\n\t\t python setup.py sdist bdist_wheel\n\n9. Pull the merge from bitbucket to your development machine but **do not update**.\n10. Update the version in ``setup.py`` to ``'0.1.12dev'`` or whatever is relevant.\n11. From the previous commit (the last commit on branch ``0.1.11`` in this case),\n\t change the branch::\n\n\t hg branch 0.1.12\n\n12. Commit and optionally push. Now you are ready to work on new changes::\n\n\t\t\thg com -m \"BRN: Start branch 0.1.12\"\n\t\t\thg push -r . --new-branch\n\n\nNotes\n=====\n\nVarious notes about python, IPython, etc. are stored in the docs folder.\n\n\n\n__ http://jupyter.cs.brynmawr.edu/hub/dblank/public/Jupyter%20Help.ipynb#2.-Installing-extensions\n__ https://bitbucket.org/ipre/calico/downloads/\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/mforbes/mmf_setup", "keywords": "ipython jupyter notebook setup mercurial", "license": "GNU GPLv2 or any later version", "maintainer": "", "maintainer_email": "", "name": "mmf-setup", "package_url": "https://pypi.org/project/mmf-setup/", "platform": "", "project_url": "https://pypi.org/project/mmf-setup/", "project_urls": { "Homepage": "https://bitbucket.org/mforbes/mmf_setup" }, "release_url": "https://pypi.org/project/mmf-setup/0.1.12/", "requires_dist": [ "nbstripout (>=0.2.0)", "python-hglib", "Python-contrib-nbextensions ; extra == 'nbextensions'" ], "requires_python": "", "summary": "Python Tools", "version": "0.1.12" }, "last_serial": 4779168, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "00af03720ab6f9bfe910aaf3f9a74c4c", "sha256": "4847956a969389bab2217f066827bf91dd141f7f35fdd613532c17e9790e5c12" }, "downloads": -1, "filename": "mmf_setup-0.1.0.tar.gz", "has_sig": false, "md5_digest": "00af03720ab6f9bfe910aaf3f9a74c4c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47535, "upload_time": "2016-01-02T20:32:06", "url": "https://files.pythonhosted.org/packages/6b/da/99f0c81c2d191556d3856e2261dcae4d0edd7627778c45e397b2cf7bde4c/mmf_setup-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "a1e86d69f727dd731136b4d8fbe74a0d", "sha256": "f3f94322d5ad991de4588761470b0a291fce2f090bcf4cce430d4cfd061084d0" }, "downloads": -1, "filename": "mmf_setup-0.1.1.tar.gz", "has_sig": false, "md5_digest": "a1e86d69f727dd731136b4d8fbe74a0d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50018, "upload_time": "2016-01-02T20:58:26", "url": "https://files.pythonhosted.org/packages/83/2e/3926fed1f4b38ccedbc55c010e17fecc8336d0f188814c5dfb5a425a9088/mmf_setup-0.1.1.tar.gz" } ], "0.1.10": [ { "comment_text": "", "digests": { "md5": "835d82e8b9bc0dcd37c459ae2f9fd89d", "sha256": "856ddbbae0593ab292d20059cdf1815ea5d87cce68020632f6349fc4d223c14d" }, "downloads": -1, "filename": "mmf_setup-0.1.10-py2-none-any.whl", "has_sig": false, "md5_digest": "835d82e8b9bc0dcd37c459ae2f9fd89d", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 346848, "upload_time": "2017-11-30T13:24:41", "url": "https://files.pythonhosted.org/packages/36/96/7710673fdf0637dd08dc0ec50b5297486fb8b32b3ddecdd67d6be85e93a6/mmf_setup-0.1.10-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5ffc38b791ef78431092b6b38eeca9f2", "sha256": "56730f98a831791b19bb123410f80c72a1ee3aaeadde26189b4d63a550dfb453" }, "downloads": -1, "filename": "mmf_setup-0.1.10.tar.gz", "has_sig": false, "md5_digest": "5ffc38b791ef78431092b6b38eeca9f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 368057, "upload_time": "2017-11-30T13:24:45", "url": "https://files.pythonhosted.org/packages/a8/8c/d801778b78d3cf9a1b3c51e8044aad83b7c8c0d70066d8972b98416ac202/mmf_setup-0.1.10.tar.gz" } ], "0.1.11": [ { "comment_text": "", "digests": { "md5": "1e2e55b90b6097e971a2df1d99cc0dd0", "sha256": "71c886802b6f000a7eaa967bcc25a12d7fcbfd817316bf79987a7e89e2fb1f84" }, "downloads": -1, "filename": "mmf_setup-0.1.11-py2-none-any.whl", "has_sig": false, "md5_digest": "1e2e55b90b6097e971a2df1d99cc0dd0", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 348329, "upload_time": "2018-03-02T21:18:30", "url": "https://files.pythonhosted.org/packages/4e/bf/d503e36021b3495b514018e248f9de8d21387613ec7fbcb520c015a0bd81/mmf_setup-0.1.11-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "58fbfef225e046d2709242529e7cd045", "sha256": "838b25ccc42a00ca19fe6c8dab3ccc5cc04c9921441b581b68ce7f249115563b" }, "downloads": -1, "filename": "mmf_setup-0.1.11.tar.gz", "has_sig": false, "md5_digest": "58fbfef225e046d2709242529e7cd045", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 369652, "upload_time": "2018-03-02T21:18:34", "url": "https://files.pythonhosted.org/packages/f5/8c/a4c522594ce80725c5f3e90d638b811e699fb3b2c4c1c071103d6624f9ad/mmf_setup-0.1.11.tar.gz" } ], "0.1.12": [ { "comment_text": "", "digests": { "md5": "9fe93f984983f38a6d23df9e08f92671", "sha256": "9797baf3f2f79c0a6a54f37234863b66cc3014f4b31f55a97cd9190456b02af5" }, "downloads": -1, "filename": "mmf_setup-0.1.12-py3-none-any.whl", "has_sig": false, "md5_digest": "9fe93f984983f38a6d23df9e08f92671", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 350595, "upload_time": "2019-02-04T19:28:31", "url": "https://files.pythonhosted.org/packages/cc/b5/a03711e21b48aeacf181382d4d34cad013ae2a906b8bb460b9568f7e0658/mmf_setup-0.1.12-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f65fddb8e6c519dc83de7be8088f5550", "sha256": "7be7ee8cecc80c4f73080618ee16eef119ec4cbe608b37753e768378959916e1" }, "downloads": -1, "filename": "mmf_setup-0.1.12.tar.gz", "has_sig": false, "md5_digest": "f65fddb8e6c519dc83de7be8088f5550", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 374846, "upload_time": "2019-02-04T19:28:36", "url": "https://files.pythonhosted.org/packages/3e/f7/9ffc3a66fd3409a1f50be33b97880cb6bfbb5e38f520358e68f836ea8af8/mmf_setup-0.1.12.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "fb1b9f317a1bae5c05bfbfbf37d03023", "sha256": "95c09d9e0f7b41c9dc70b9199dc8525ee4f9cfc7eee17325de930193224ecf79" }, "downloads": -1, "filename": "mmf_setup-0.1.2.tar.gz", "has_sig": false, "md5_digest": "fb1b9f317a1bae5c05bfbfbf37d03023", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52698, "upload_time": "2016-01-17T05:59:41", "url": "https://files.pythonhosted.org/packages/e3/e9/c3beeea36043d682f08a394984b926cf48b4d6662a3ba2fc81790cf279eb/mmf_setup-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "b62b51f199395e5f453dd34021bfe18f", "sha256": "d97c4febdf79c68b82a24f6504a393f95809d48a51e73aca0ae7b40e74b16b58" }, "downloads": -1, "filename": "mmf_setup-0.1.3.tar.gz", "has_sig": false, "md5_digest": "b62b51f199395e5f453dd34021bfe18f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 53913, "upload_time": "2016-01-17T08:18:50", "url": "https://files.pythonhosted.org/packages/30/8d/e198eebafc36b9e7cd75d807caba49b17d1a976060d7b11b068d1c0270ca/mmf_setup-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "e3cd8f5fc4edc477e17672ef3ebf8336", "sha256": "397e4951d3f43811d5124b15c2042ccc46f4461a6a523f1481ae5ce03fb4ce8f" }, "downloads": -1, "filename": "mmf_setup-0.1.4.tar.gz", "has_sig": false, "md5_digest": "e3cd8f5fc4edc477e17672ef3ebf8336", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 53822, "upload_time": "2016-01-19T00:49:13", "url": "https://files.pythonhosted.org/packages/e6/ef/f794b2bde150dcaf1f12f4810a53a78978043c3be59054e083d10b5d6800/mmf_setup-0.1.4.tar.gz" } ], "0.1.4.dev0": [ { "comment_text": "", "digests": { "md5": "d2f4eb142e9d10b9e16597b753b68a2b", "sha256": "cafeb94763de67d3ccfb66616b9748e6fe3f26a0c0fbfc9f97edac49381c190a" }, "downloads": -1, "filename": "mmf_setup-0.1.4.dev0.tar.gz", "has_sig": false, "md5_digest": "d2f4eb142e9d10b9e16597b753b68a2b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 53887, "upload_time": "2016-01-19T00:42:20", "url": "https://files.pythonhosted.org/packages/07/e3/c45c19902e32c32c749a7f37cef9fa59e73b2b2ded97040caa9b4118e3b1/mmf_setup-0.1.4.dev0.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "323d45507b0cc6cc01222b7ab91ac2d4", "sha256": "e1f4ee49fc5720515344dfd00cdc011a327d928dcfc53f85085f402cc3cdf82d" }, "downloads": -1, "filename": "mmf_setup-0.1.5.tar.gz", "has_sig": false, "md5_digest": "323d45507b0cc6cc01222b7ab91ac2d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55214, "upload_time": "2016-01-23T03:15:36", "url": "https://files.pythonhosted.org/packages/a0/dc/2f0148e26b7635c8dc67ae28fd91109b1c8ecac522f62f5a2b0acbabd9dc/mmf_setup-0.1.5.tar.gz" } ], "0.1.5.dev0": [ { "comment_text": "", "digests": { "md5": "5f4e3001472f4d6ff5386db21f5b22b0", "sha256": "82670664dcfe6e940464360ac04abbc3c9aa8686cc5f169ebafe114a0ddc7029" }, "downloads": -1, "filename": "mmf_setup-0.1.5.dev0.tar.gz", "has_sig": false, "md5_digest": "5f4e3001472f4d6ff5386db21f5b22b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55263, "upload_time": "2016-01-23T03:13:43", "url": "https://files.pythonhosted.org/packages/68/a0/6fe8ba8172ff4b7dfb1c27186be5490930db7331a1d728d478a4c76cba51/mmf_setup-0.1.5.dev0.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "ee97225d479513c775599f70245265a2", "sha256": "7291014651dadc09897b4e8d626bee4b9e55ec122b3463d2afb557c08535e3f3" }, "downloads": -1, "filename": "mmf_setup-0.1.6.tar.gz", "has_sig": false, "md5_digest": "ee97225d479513c775599f70245265a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56676, "upload_time": "2016-01-31T09:02:59", "url": "https://files.pythonhosted.org/packages/f4/7f/917a17c0df4e0dcb6791afa883871590a65b10e305e6053bb72cc794e379/mmf_setup-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "a152958b81efeee767a56dacc19aba2f", "sha256": "fd394f80b7f560fe20d7b7729b7da0a69028f2948843368ff58ebf36a28b433a" }, "downloads": -1, "filename": "mmf_setup-0.1.7.tar.gz", "has_sig": false, "md5_digest": "a152958b81efeee767a56dacc19aba2f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 366700, "upload_time": "2017-01-19T06:10:42", "url": "https://files.pythonhosted.org/packages/b4/ca/a64f2f787649b8bc5b8146733e34c4787469b4e3a020dedc4fcf86df5765/mmf_setup-0.1.7.tar.gz" } ], "0.1.7.dev0": [ { "comment_text": "", "digests": { "md5": "8024e76662a6197e730abd21c042a487", "sha256": "f2731c6f54e31e5aa8cd644a00bcbbdde60966e443defcb3d7cde95d3db3d1a3" }, "downloads": -1, "filename": "mmf_setup-0.1.7.dev0-py2.7.egg", "has_sig": false, "md5_digest": "8024e76662a6197e730abd21c042a487", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 347015, "upload_time": "2017-11-08T06:32:12", "url": "https://files.pythonhosted.org/packages/f4/86/b1360900d71065f99ece1b1aaf5da8dbb92af79ea0d747d020071f392108/mmf_setup-0.1.7.dev0-py2.7.egg" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "0aeb08da8a34fb8e68633c29a62375ee", "sha256": "49a127920af1f87fada55d92c2ef564869058fed516b9d23c628c2d9c9f1c41e" }, "downloads": -1, "filename": "mmf_setup-0.1.8.tar.gz", "has_sig": false, "md5_digest": "0aeb08da8a34fb8e68633c29a62375ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 367135, "upload_time": "2017-03-02T01:40:32", "url": "https://files.pythonhosted.org/packages/d8/37/8bb7cad7ad034d77c924aaa6d83824416adb473a132157c5fe8da2ad50ab/mmf_setup-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "b11640a60c9aab1f0d4979e7be363980", "sha256": "703583a4ff20dd739ae0bb80141442cd89c24b2bd186a6d227f05e1e8019fa57" }, "downloads": -1, "filename": "mmf_setup-0.1.9-py2-none-any.whl", "has_sig": false, "md5_digest": "b11640a60c9aab1f0d4979e7be363980", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 347412, "upload_time": "2017-11-08T06:32:05", "url": "https://files.pythonhosted.org/packages/80/8c/5788b624c720e8e217245a0f366eef5132f8873f0c5ada727e98f86be0db/mmf_setup-0.1.9-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9bb2dcee8ce95362dfb02b949ffa21eb", "sha256": "3c1739ae5ca67a4ef2a3c7558828ebcaee4e7edcc78c615a6be20b1cfda04be7" }, "downloads": -1, "filename": "mmf_setup-0.1.9.tar.gz", "has_sig": false, "md5_digest": "9bb2dcee8ce95362dfb02b949ffa21eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 368174, "upload_time": "2017-11-08T06:32:20", "url": "https://files.pythonhosted.org/packages/fe/4c/999945deef83335c5dfb2116894542da6d9540b0d03b157cf8cc1a9432ce/mmf_setup-0.1.9.tar.gz" } ], "0.1.9dev": [ { "comment_text": "", "digests": { "md5": "2459d591f9dfb3637f6fab0a4bfbbdc9", "sha256": "925569961e868829b7b98d02c51b20ca49706950236f43477b7ff80152305b64" }, "downloads": -1, "filename": "mmf_setup-0.1.9dev-py2.7.egg", "has_sig": false, "md5_digest": "2459d591f9dfb3637f6fab0a4bfbbdc9", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 361940, "upload_time": "2017-11-08T06:32:23", "url": "https://files.pythonhosted.org/packages/b4/08/36320dca939a03f005a1f1c47317440cf498de78cad1617a68d4df28080f/mmf_setup-0.1.9dev-py2.7.egg" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9fe93f984983f38a6d23df9e08f92671", "sha256": "9797baf3f2f79c0a6a54f37234863b66cc3014f4b31f55a97cd9190456b02af5" }, "downloads": -1, "filename": "mmf_setup-0.1.12-py3-none-any.whl", "has_sig": false, "md5_digest": "9fe93f984983f38a6d23df9e08f92671", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 350595, "upload_time": "2019-02-04T19:28:31", "url": "https://files.pythonhosted.org/packages/cc/b5/a03711e21b48aeacf181382d4d34cad013ae2a906b8bb460b9568f7e0658/mmf_setup-0.1.12-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f65fddb8e6c519dc83de7be8088f5550", "sha256": "7be7ee8cecc80c4f73080618ee16eef119ec4cbe608b37753e768378959916e1" }, "downloads": -1, "filename": "mmf_setup-0.1.12.tar.gz", "has_sig": false, "md5_digest": "f65fddb8e6c519dc83de7be8088f5550", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 374846, "upload_time": "2019-02-04T19:28:36", "url": "https://files.pythonhosted.org/packages/3e/f7/9ffc3a66fd3409a1f50be33b97880cb6bfbb5e38f520358e68f836ea8af8/mmf_setup-0.1.12.tar.gz" } ] }