{ "info": { "author": "GRyCAP - Universitat Politecnica de Valencia", "author_email": "micafer1@upv.es", "bugtrack_url": null, "classifiers": [], "description": "# IM - Infrastructure Manager\n\n[![PyPI](https://img.shields.io/pypi/v/im.svg)](https://pypi.org/project/im)\n[![Build Status](https://jenkins.i3m.upv.es/buildStatus/icon?job=grycap/im-unit-master)](https://jenkins.i3m.upv.es/job/grycap/job/im-unit-master/)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/582a0d6e763f44bdade11133e5191439)](https://www.codacy.com/gh/grycap/im/dashboard?utm_source=github.com&utm_medium=referral&utm_content=grycap/im&utm_campaign=Badge_Grade)\n[![Codacy Badge](https://app.codacy.com/project/badge/Coverage/582a0d6e763f44bdade11133e5191439)](https://www.codacy.com/gh/grycap/im/dashboard?utm_source=github.com&utm_medium=referral&utm_content=grycap/im&utm_campaign=Badge_Coverage)\n[![License](https://img.shields.io/badge/license-GPL%20v3.0-brightgreen.svg)](LICENSE)\n[![Docs](https://img.shields.io/badge/docs-latest-brightgreen.svg)](https://imdocs.readthedocs.io/en/latest/)\n\nIM is a tool that deploys complex and customized virtual infrastructures on IaaS\nCloud deployments (such as AWS, OpenStack, etc.). It eases the access and the\nusability of IaaS clouds by automating the VMI (Virtual Machine Image)\nselection, deployment, configuration, software installation, monitoring and\nupdate of the virtual infrastructure. It supports APIs from a large number of virtual\nplatforms, making user applications cloud-agnostic. In addition it integrates a\ncontextualization system to enable the installation and configuration of all the\nuser required applications providing the user with a fully functional\ninfrastructure.\n\nRead the documentation and more at http://www.grycap.upv.es/im.\n\nThere is also an Infrastructure Manager YouTube reproduction list with a set of videos with demos\nof the functionality of the platform: https://www.youtube.com/playlist?list=PLgPH186Qwh_37AMhEruhVKZSfoYpHkrUp.\n\nPlease acknowledge the use of this software in your scientific publications by including the following reference:\n\nMiguel Caballer, Ignacio Blanquer, German Molto, and Carlos de Alfonso. \"[Dynamic management of virtual infrastructures](https://link.springer.com/article/10.1007/s10723-014-9296-5)\". Journal of Grid Computing, Volume 13, Issue 1, Pages 53-70, 2015, ISSN 1570-7873, DOI: 10.1007/s10723-014-9296-5.\n\n\n## 1 DOCKER IMAGE (Recommended Option)\n\nThe recommended option to use the Infrastructure Manager service is using the available docker image.\nA Docker image named `grycap/im` has been created to make easier the deployment of an IM service using the \ndefault configuration. Information about this image can be found here: https://hub.docker.com/r/grycap/im/.\nIt is also available in Github Container registry `ghcr.io/grycap/im`: https://github.com/grycap/im/pkgs/container/im.\n\nHow to launch the IM service using docker::\n\n```sh\n$ sudo docker run -d -p 8899:8899 -p 8800:8800 --name im grycap/im\n```\n\nTo make the IM data persistent you also have to specify a persistent location for the IM database using the IM_DATA_DB environment variable and adding a volume::\n\n```sh\n$ sudo docker run -d -p 8899:8899 -p 8800:8800 -v \"/some_local_path/db:/db\" -e IM_DATA_DB=/db/inf.dat --name im grycap/im\n```\n\nYou can also specify an external MySQL server to store IM data using the IM_DATA_DB environment variable::\n\n```sh\n$ sudo docker run -d -p 8899:8899 -p 8800:8800 -e IM_DATA_DB=mysql://username:password@server/db_name --name im grycap/im \n```\n\nOr you can also add a volume with all the IM configuration::\n\n```sh\n$ sudo docker run -d -p 8899:8899 -p 8800:8800 -v \"/some_local_path/im.cfg:/etc/im/im.cfg\" --name im grycap/im\n```\n\n## 2 Kubernetes Helm Chart\n\nThe IM service and web interface can be installed on top of [Kubernetes](https://kubernetes.io/) using [Helm](https://helm.sh/).\n\nHow to install the IM chart:\n\nFirst add the GRyCAP repo:\n\n```sh\nhelm repo add grycap https://grycap.github.io/helm-charts/\n```\n\nThen install the IM chart (with Helm v2):\n\n```sh\nhelm install --namespace=im --name=im grycap/IM\n```\n\nThen install the IM chart (with Helm v3):\n\n```sh\nhelm install --namespace=im --create-namespace im grycap/IM\n```\n\nAll the information about this chart is available at the [IM chart README](https://github.com/grycap/helm-charts/blob/master/IM/README.md).\n\n## 3 INSTALLATION\n\n### 3.1 REQUISITES\n\nIM is based on Python, so Python 2.7 or higher (Python 3.6 or higher recommended) runtime and\nstandard library must be installed in the system.\n\nIf you use pip to install the IM, all the requisites will be installed.\nHowever, if you install IM from sources you should install:\n\n * The RADL parser (https://github.com/grycap/radl), available in pip\n as the ``RADL`` package.\n\n * The paramiko ssh2 protocol library for python version 1.14 or later\n(http://www.lag.net/paramiko/), typically available as the ``python-paramiko`` package.\n\n * The YAML library for Python, typically available as the ``python-yaml`` or ``PyYAML`` package.\n\n * The suds library for Python, typically available as the ``python-suds`` package.\n\n * The Netaddr library for Python, typically available as the ``python-netaddr`` package.\n\n * The Requests library for Python, typically available as the ``python-requests`` package.\n\n * TOSCA parser library for Python, available as the ``tosca-parser`` package in pip.\n\n * Ansible (http://www.ansibleworks.com/) to configure nodes in the infrastructures.\n In particular, Ansible 2.4+ must be installed.\n To ensure the functionality the following values must be set in the ansible.cfg file (usually found in /etc/ansible/):\n\n```yml\n[defaults]\ntransport = smart\nhost_key_checking = False\nnocolor = 1\n\nbecome_user = root\nbecome_method = sudo\n\n[paramiko_connection]\n\nrecord_host_keys=False\n\n[ssh_connection]\n\n# Only in systems with OpenSSH support to ControlPersist\nssh_args = -o ControlMaster=auto -o ControlPersist=900s -o UserKnownHostsFile=/dev/null\n# In systems with older versions of OpenSSH (RHEL 6, CentOS 6, SLES 10 or SLES 11) \n#ssh_args = -o UserKnownHostsFile=/dev/null\npipelining = True\n```\n\n### 3.2 OPTIONAL PACKAGES\n\nThe Bottle framework (http://bottlepy.org/) is used for the REST API. \nIt is typically available as the ``python-bottle`` system package or ``bottle`` pip package.\n\nThe CherryPy Web framework (http://www.cherrypy.org/), is needed for the REST API. \nIt is typically available as the ``python-cherrypy`` or ``python-cherrypy3`` system package\nor ``CherryPy`` pip package.\nIn newer versions (9.0 and later) the functionality has been moved to the ``cheroot`` library\n(https://github.com/cherrypy/cheroot) it can be installed using pip.\n\nApache-libcloud (http://libcloud.apache.org/) 3.0 or later is used in the\nLibCloud, OpenStack and GCE connectors. It is typically available as the ``python-libcloud`` \nsystem package or ``apache-libcloud`` pip package.\n\nBoto (http://boto.readthedocs.org) 2.29.0 or later is used as interface to\nAmazon EC2. It is available as package named ``python-boto`` in Debian based\ndistributions or ``boto`` pip package. It can also be downloaded from boto GitHub repository (https://github.com/boto/boto).\nDownload the file and copy the boto subdirectory into the IM install path.\n\nIn case of using the a MySQL DB as the backend to store IM data. The Python interface to MySQL\nmust be installed, typically available as the package ``python-mysqldb`` or ``MySQL-python`` package.\nIn case of using Python 3 use the PyMySQL package, available as the package ``python3-pymysql`` on \ndebian systems or ``PyMySQL`` package in pip. \n\nIn case of using the a MongoDB as the backend to store IM data. The Python interface to MongoDB\nmust be installed, typically available as the package ``python-pymongo``package in most distributions\nor ``pymongo`` pip package.\n\nIn case of using the SSL secured version of the REST API pyOpenSSL (https://pyopenssl.org/) must be installed.\navailable as ``pyOpenSSL`` package in pip. \n\nAzure python SDK (https://azure.microsoft.com/es-es/develop/python/) is used to connect with the \nMicrosoft Azure platform. The easiest way is to install all the required packages with pip:\n\n```sh\n$ pip install msrest msrestazure azure-common azure-mgmt-storage azure-mgmt-compute azure-mgmt-network azure-mgmt-resource azure-mgmt-dns azure-identity\n```\n\nThe VMware vSphere API Python Bindings (https://github.com/vmware/pyvmomi/) are needed by the vSphere\nconnector. It is available as the package ``pyvmomi`` at the pip repository. \n\n\n### 3.3 INSTALLING\n\n#### 3.3.1 From PIP\n\nFirst you need to install pip tool and some packages needed to compile some of the IM requirements.\nTo install them in Debian and Ubuntu based distributions, do::\n\n```sh\n$ apt update\n$ apt install -y gcc python3-dev libffi-dev libssl-dev python3-pip sshpass default-libmysqlclient-dev\n```\n\nIn Red Hat based distributions (RHEL, CentOS, Amazon Linux, Oracle Linux,\nFedora, etc.), do:\n\n```sh\n$ yum install -y epel-release\n$ yum install -y which gcc python3-devel libffi-devel openssl-devel python3-pip sshpass\n```\n\nThen you only have to call the install command of the pip tool with the IM package:\n\n```sh\n$ pip3 install IM\n```\n\nYou can also install an specific branch of the Github repository:\n\n```sh\n$ pip install git+https://github.com/grycap/im.git@master\n```\n\nPip will also install the, non installed, pre-requisites needed. So Ansible 2.4 or later will \nbe installed in the system. Some of the optional packages are also installed please check if some\nof IM features that you need requires to install some of the packages of section OPTIONAL PACKAGES. \n\nYou must also remember to modify the ansible.cfg file setting as specified in the \nREQUISITES section.\n\n### 3.4 START IM ON BOOT\n\nIn case that you want the IM service to be started at boot time, you must\nexecute the next set of commands:\n\nOn Debian Systems:\n\n```sh\n$ chkconfig im on\n```\n\nOr for newer systems like ubuntu 14.04:\n\n```sh\n$ sysv-rc-conf im on\n```\n\nOn RedHat Systems:\n\n```sh\n$ update-rc.d im start 99 2 3 4 5 . stop 05 0 1 6 .\n```\n\nOr you can do it manually:\n\n```sh\n$ ln -s /etc/init.d/im /etc/rc2.d/S99im\n$ ln -s /etc/init.d/im /etc/rc3.d/S99im\n$ ln -s /etc/init.d/im /etc/rc5.d/S99im\n$ ln -s /etc/init.d/im /etc/rc1.d/K05im\n$ ln -s /etc/init.d/im /etc/rc6.d/K05im\n```\n\nAdjust the installation path by setting the IMDAEMON variable at /etc/init.d/im\nto the path where the IM im_service.py file is installed (e.g. /usr/local/im/im_service.py),\nor set the name of the script file (im_service.py) if the file is in the PATH\n(pip puts the im_service.py file in the PATH as default).\n\n### 4 CONFIGURATION\n\nCheck the parameters in $IM_PATH/etc/im.cfg or /etc/im/im.cfg.\nSee [IM Manual](https://imdocs.readthedocs.io/en/latest/manual.html#configuration) to get a full\nreference of the configuration variables.\n\nPlease pay attention to the next configuration variables, as they are the most important:\n\nDATA_DB - must be set to the URL to access the database to store the IM data. \n Be careful if you have two different instances of the IM service running in the same machine!!.\n It can be a MySQL DB: `mysql://username:password@server/db_name`,\n SQLite: `sqlite:///etc/im/inf.dat` or MongoDB: `mongodb://username:password@server/db_name`,\n\n\n#### 4.1 SECURITY\n\nSecurity is disabled by default. Please notice that someone with local network access can \"sniff\" the traffic and\nget the messages with the IM with the authorisation data with the cloud providers.\n\nSecurity can be activated both in the XMLRPC and REST APIs. Setting this variables:\n\n```sh\nXMLRCP_SSL = True\n```\n\nor\n\n```sh\nREST_SSL = True\n```\n\nAnd then set the variables: XMLRCP_SSL_* or REST_SSL_* to your certificates paths.", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://www.grycap.upv.es/im", "keywords": "", "license": "GPL version 3, http://www.gnu.org/licenses/gpl-3.0.txt", "maintainer": "", "maintainer_email": "", "name": "IM", "package_url": "https://pypi.org/project/IM/", "platform": "any", "project_url": "https://pypi.org/project/IM/", "project_urls": { "Homepage": "http://www.grycap.upv.es/im" }, "release_url": "https://pypi.org/project/IM/1.11.1/", "requires_dist": null, "requires_python": "", "summary": "IM is a tool to manage virtual infrastructures on Cloud deployments", "version": "1.11.1", "yanked": false, "yanked_reason": null }, "last_serial": 13474456, "releases": { "1.10.0": [ { "comment_text": "", "digests": { "md5": "f583a01150404a3c95504b6c2a4609e5", "sha256": "b3618c5227938b1aa174c8899e6a5c5505d43f244466f4d66264c3ac708c0215" }, "downloads": -1, "filename": "IM-1.10.0.tar.gz", "has_sig": false, "md5_digest": "f583a01150404a3c95504b6c2a4609e5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 272182, "upload_time": "2021-03-02T15:56:26", "upload_time_iso_8601": "2021-03-02T15:56:26.062798Z", "url": "https://files.pythonhosted.org/packages/ee/7f/ca2ca8cb78eb4f07cca2698e96f1641faaff6fb22207a003ce003d0965a5/IM-1.10.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.10.1": [ { "comment_text": "", "digests": { "md5": "fa9ce0e54635a04d4d43ad2fa875d497", "sha256": "349bf052d7c6d034b5c4996309cbb6594f9bbec084ac9de1d9bb03136a43597b" }, "downloads": -1, "filename": "IM-1.10.1.tar.gz", "has_sig": false, "md5_digest": "fa9ce0e54635a04d4d43ad2fa875d497", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 272702, "upload_time": "2021-03-22T14:46:15", "upload_time_iso_8601": "2021-03-22T14:46:15.072410Z", "url": "https://files.pythonhosted.org/packages/4f/57/7aef1dbb0bd041f0620b4ebaee17e0e16848e2181e348a7c71dd1f09a47d/IM-1.10.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.10.2": [ { "comment_text": "", "digests": { "md5": "55f28aaa4a34a2b75588f2af3d1d601f", "sha256": "609a325da6ed25a37159e4f052d5957705b6a796612fd2f8d97a80daeb6ec0dd" }, "downloads": -1, "filename": "IM-1.10.2.tar.gz", "has_sig": false, "md5_digest": "55f28aaa4a34a2b75588f2af3d1d601f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 276115, "upload_time": "2021-04-26T11:12:31", "upload_time_iso_8601": "2021-04-26T11:12:31.971817Z", "url": "https://files.pythonhosted.org/packages/c0/cc/cc90f6bbcdb982a316da678b0b83d42094db2e8601aab07a859fc4d3dcf6/IM-1.10.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.10.3": [ { "comment_text": "", "digests": { "md5": "2be1e467c3760c5093bca72fe69ced92", "sha256": "47d48cdbf134ff35040673b7c54f24261019c5b5791681487dbd28ba994a135f" }, "downloads": -1, "filename": "IM-1.10.3.tar.gz", "has_sig": false, "md5_digest": "2be1e467c3760c5093bca72fe69ced92", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 276536, "upload_time": "2021-05-19T14:53:01", "upload_time_iso_8601": "2021-05-19T14:53:01.303341Z", "url": "https://files.pythonhosted.org/packages/23/21/9ab84afb8d788bbace58ebc4912801c983908f0218055cb4aa420dd188cf/IM-1.10.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.10.4": [ { "comment_text": "", "digests": { "md5": "0d6055e9fd44f0f0fcafd9331caf87be", "sha256": "d146568ca5eb56b47fbe9d3bc3fedf4546f06a2a9b67d2a670c1d74f2f40520d" }, "downloads": -1, "filename": "IM-1.10.4.tar.gz", "has_sig": false, "md5_digest": "0d6055e9fd44f0f0fcafd9331caf87be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 277159, "upload_time": "2021-06-16T08:43:16", "upload_time_iso_8601": "2021-06-16T08:43:16.277893Z", "url": "https://files.pythonhosted.org/packages/9d/31/7d932c666d2dd0f3e509e2eeba99bd2bf98aa2b6997a9fac76f0a577fec4/IM-1.10.4.tar.gz", "yanked": false, "yanked_reason": null } ], "1.10.5": [ { "comment_text": "", "digests": { "md5": "bd5d369dd8063a5fa56905c8d7ea8b35", "sha256": "b9a0d8c81a64238c2c019f934437d5d811e91673e060302c351552b3ca92a04a" }, "downloads": -1, "filename": "IM-1.10.5.tar.gz", "has_sig": false, "md5_digest": "bd5d369dd8063a5fa56905c8d7ea8b35", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 277419, "upload_time": "2021-07-28T10:27:59", "upload_time_iso_8601": "2021-07-28T10:27:59.234785Z", "url": "https://files.pythonhosted.org/packages/5d/a3/5a9c7c7d98c98eca305b66fd83f5991ccb9919fb5ae251b85a71ba5e26d0/IM-1.10.5.tar.gz", "yanked": false, "yanked_reason": null } ], "1.10.6": [ { "comment_text": "", "digests": { "md5": "ec3977d0a02bc951f4872e5c18ccb0c9", "sha256": "0a3d6e27da027e590487a10bb4b015e398fb98dcc8b23eb39574687ca75a813a" }, "downloads": -1, "filename": "IM-1.10.6.tar.gz", "has_sig": false, "md5_digest": "ec3977d0a02bc951f4872e5c18ccb0c9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 278105, "upload_time": "2021-10-21T14:27:32", "upload_time_iso_8601": "2021-10-21T14:27:32.646093Z", "url": "https://files.pythonhosted.org/packages/f0/a1/eacee3d5ec533ae7a62ec4a41900304a125d7bae2bc5e245001a10139505/IM-1.10.6.tar.gz", "yanked": false, "yanked_reason": null } ], "1.10.7": [ { "comment_text": "", "digests": { "md5": "c8b46f4c732f9b7196d498babbc949ba", "sha256": "30bc1deb60c92696749dd8c36eb660220d05cb5828a4501f2c629d83638f4166" }, "downloads": -1, "filename": "IM-1.10.7.tar.gz", "has_sig": false, "md5_digest": "c8b46f4c732f9b7196d498babbc949ba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 280783, "upload_time": "2021-11-22T15:09:21", "upload_time_iso_8601": "2021-11-22T15:09:21.029895Z", "url": "https://files.pythonhosted.org/packages/40/fa/c43f5e1bad691d61846273d72cd1ca797a93f11dc741d62fccf7df35be1b/IM-1.10.7.tar.gz", "yanked": false, "yanked_reason": null } ], "1.10.8": [ { "comment_text": "", "digests": { "md5": "26beeeaed05f9ac073d67c64585a72a8", "sha256": "5c2735a3d7b3623c36781c1bcb1e9941d3d0dd4f4bc4d3e9db82e5abef470e32" }, "downloads": -1, "filename": "IM-1.10.8.tar.gz", "has_sig": false, "md5_digest": "26beeeaed05f9ac073d67c64585a72a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 279341, "upload_time": "2022-02-07T10:53:14", "upload_time_iso_8601": "2022-02-07T10:53:14.355968Z", "url": "https://files.pythonhosted.org/packages/d6/af/b22266b4e507fd1c14c340dbdac7b9b4e0a0120b5164176de1be2fdae8d3/IM-1.10.8.tar.gz", "yanked": false, "yanked_reason": null } ], "1.11.0": [ { "comment_text": "", "digests": { "md5": "0b345104ce1d79d958bc818fd7618a7b", "sha256": "fe07f5752c24b33f1d393013fb15fc2ed27113cae83f393a68852326e0e1606e" }, "downloads": -1, "filename": "IM-1.11.0.tar.gz", "has_sig": false, "md5_digest": "0b345104ce1d79d958bc818fd7618a7b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 280782, "upload_time": "2022-03-31T12:47:58", "upload_time_iso_8601": "2022-03-31T12:47:58.811385Z", "url": "https://files.pythonhosted.org/packages/75/33/c54b8b108c2b48cf955e93821148fa05b77cdf99245595e97feee26ff510/IM-1.11.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.11.0.post1": [ { "comment_text": "", "digests": { "md5": "3a291544c23ef3a0084f4c4661dde18a", "sha256": "111d8418e1c6d1c94cb82ff7ec2220d8f692cced49543196984c94ba9935850e" }, "downloads": -1, "filename": "IM-1.11.0.post1.tar.gz", "has_sig": false, "md5_digest": "3a291544c23ef3a0084f4c4661dde18a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 283184, "upload_time": "2022-04-01T06:21:17", "upload_time_iso_8601": "2022-04-01T06:21:17.120015Z", "url": "https://files.pythonhosted.org/packages/da/8b/7398a231b4ea596a29ba8d54ea04e25fe014095267526f6e5cf867af2dbd/IM-1.11.0.post1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.11.1": [ { "comment_text": "", "digests": { "md5": "0c6cb341518a1bf8224e3d3329f9048a", "sha256": "60426929065bc92eb6711b12e59795cd0144c7b568e5156b1a637014109b0b48" }, "downloads": -1, "filename": "IM-1.11.1.tar.gz", "has_sig": false, "md5_digest": "0c6cb341518a1bf8224e3d3329f9048a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 281237, "upload_time": "2022-04-11T07:08:34", "upload_time_iso_8601": "2022-04-11T07:08:34.804492Z", "url": "https://files.pythonhosted.org/packages/b3/48/f5b258a101edc230c046d4325c2b063ab79e89c4c2d9af4829e03ed2cdd2/IM-1.11.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "58793fe75e8c1dc8abb7596bff207cc6", "sha256": "b268d7ceb90760acbff9d89b47250c9cf510844d5a7ba6b60a3f6239dcecaa46" }, "downloads": -1, "filename": "IM-1.4.0.tar.gz", "has_sig": false, "md5_digest": "58793fe75e8c1dc8abb7596bff207cc6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 161537, "upload_time": "2015-11-30T11:53:24", "upload_time_iso_8601": "2015-11-30T11:53:24.479377Z", "url": "https://files.pythonhosted.org/packages/2b/a2/8f71efafecf1477e225fc2749096d8b1a71d259585f8050a1d7e9f054be7/IM-1.4.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.1": [ { "comment_text": "", "digests": { "md5": "b1a07bef5faa2807b64048ddbe173364", "sha256": "8348b462fbcadc03394de008d9b5a33499357c899fc24e03d56dde71c4693353" }, "downloads": -1, "filename": "IM-1.4.1.tar.gz", "has_sig": false, "md5_digest": "b1a07bef5faa2807b64048ddbe173364", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 165081, "upload_time": "2016-01-14T12:04:16", "upload_time_iso_8601": "2016-01-14T12:04:16.044162Z", "url": "https://files.pythonhosted.org/packages/bf/34/8c890ac69d7897d41d54983cf3faa95348aae29986193daf919ba1647c9b/IM-1.4.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.2": [ { "comment_text": "", "digests": { "md5": "279aa85e4994b72386ed6c91e4d0cf8b", "sha256": "9ebbf180817c1ded544ec7c6551e88a79dd0f0b44191725d7b047b122d2ea7a8" }, "downloads": -1, "filename": "IM-1.4.2.tar.gz", "has_sig": false, "md5_digest": "279aa85e4994b72386ed6c91e4d0cf8b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 167713, "upload_time": "2016-01-28T11:59:07", "upload_time_iso_8601": "2016-01-28T11:59:07.082710Z", "url": "https://files.pythonhosted.org/packages/9c/60/aa888cb8871828b1b5acbfd1a61167c83b50a0704a667a939d00ed9e78d2/IM-1.4.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.3": [ { "comment_text": "", "digests": { "md5": "18a98182d3b630d5e16ec485d412811a", "sha256": "3dfd392bc10c58e025d75c0455a28fc53aba398a257615ef88544e63265d8e86" }, "downloads": -1, "filename": "IM-1.4.3.tar.gz", "has_sig": false, "md5_digest": "18a98182d3b630d5e16ec485d412811a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 155751, "upload_time": "2016-03-14T09:22:35", "upload_time_iso_8601": "2016-03-14T09:22:35.467597Z", "url": "https://files.pythonhosted.org/packages/41/a6/b345884b7b99d797ec279850f71152080dc696ba76db363e4c142f66de9c/IM-1.4.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.4": [ { "comment_text": "", "digests": { "md5": "b5dff633387bd5d3bdbc98aad06ca7c0", "sha256": "fd9b1f40a0c5041565af1571fa8c0c29585015b7d6653f3c573f3976d99cc28e" }, "downloads": -1, "filename": "IM-1.4.4.tar.gz", "has_sig": false, "md5_digest": "b5dff633387bd5d3bdbc98aad06ca7c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 162268, "upload_time": "2016-05-16T12:49:55", "upload_time_iso_8601": "2016-05-16T12:49:55.378892Z", "url": "https://files.pythonhosted.org/packages/ae/9b/f26ef4e7ab30fc237d8d4b2b60fefe281ae6ef6bdc1fbedac419aebfb194/IM-1.4.4.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.5": [ { "comment_text": "", "digests": { "md5": "6b178ae8f64d906c9a82085ce821c328", "sha256": "cb3d930f3679cc00e9e037e56d2483b7347cf979af34933c274ad11876e8bf8f" }, "downloads": -1, "filename": "IM-1.4.5.tar.gz", "has_sig": false, "md5_digest": "6b178ae8f64d906c9a82085ce821c328", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 157691, "upload_time": "2016-06-21T10:33:59", "upload_time_iso_8601": "2016-06-21T10:33:59.258163Z", "url": "https://files.pythonhosted.org/packages/1f/a5/2d42e027bb052589a1b43f54677571c8b07a96c214e5c583694630b6f95e/IM-1.4.5.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.6": [ { "comment_text": "", "digests": { "md5": "d871682fc174532b0b018f374e672426", "sha256": "9786ff1baff86773bc1d8a7efc63c17826489d8f05f782487e486aa7acee0398" }, "downloads": -1, "filename": "IM-1.4.6.tar.gz", "has_sig": false, "md5_digest": "d871682fc174532b0b018f374e672426", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 160535, "upload_time": "2016-07-26T07:01:44", "upload_time_iso_8601": "2016-07-26T07:01:44.542535Z", "url": "https://files.pythonhosted.org/packages/72/95/7a543a42a061f117ebdb388b173541f85bbddc183a549851060fd71b9c2d/IM-1.4.6.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.7": [ { "comment_text": "", "digests": { "md5": "537f22338022d9c4118b6c7e45e27414", "sha256": "1e246fdd5d93c30b2d3b39c3f39a73af250357f30f7fbeda4f98aca1e3f30696" }, "downloads": -1, "filename": "IM-1.4.7.tar.gz", "has_sig": false, "md5_digest": "537f22338022d9c4118b6c7e45e27414", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 163322, "upload_time": "2016-09-26T07:39:43", "upload_time_iso_8601": "2016-09-26T07:39:43.505117Z", "url": "https://files.pythonhosted.org/packages/39/8b/47bb5ff05fd92cb874956486a2067f2e8ef47a1dec7525aa8936e3b73f02/IM-1.4.7.tar.gz", "yanked": false, "yanked_reason": null } ], "1.4.8": [ { "comment_text": "", "digests": { "md5": "7ec32470482c0a5ceb8aa867b1cb1d03", "sha256": "c09dfd09d97a8feac519f87fd6bddb5da9e15065c08eabe7c1c50921cd350ea6" }, "downloads": -1, "filename": "IM-1.4.8.tar.gz", "has_sig": false, "md5_digest": "7ec32470482c0a5ceb8aa867b1cb1d03", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 164288, "upload_time": "2016-11-14T10:30:05", "upload_time_iso_8601": "2016-11-14T10:30:05.336012Z", "url": "https://files.pythonhosted.org/packages/a0/ed/7cbee3dba5df1a68fcecba76bc43a459a26628e032dd1541e153610495db/IM-1.4.8.tar.gz", "yanked": false, "yanked_reason": null } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "280b2dd47f2188a16c59610eee04dca4", "sha256": "dfdee6c885044da64a532b2bb012cf8790aa1209393b336c832a241929c064cb" }, "downloads": -1, "filename": "IM-1.5.0-4.tar.gz", "has_sig": false, "md5_digest": "280b2dd47f2188a16c59610eee04dca4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 175089, "upload_time": "2017-01-27T10:02:07", "upload_time_iso_8601": "2017-01-27T10:02:07.315979Z", "url": "https://files.pythonhosted.org/packages/56/55/f56269b7c35b669daf7272671ecd5c521b71f43b2feb51528e40f1bdb355/IM-1.5.0-4.tar.gz", "yanked": false, "yanked_reason": null } ], "1.5.1": [ { "comment_text": "", "digests": { "md5": "1ddd31541dccd4a2378d781e9a739054", "sha256": "afa898ab53aa13163c444ebe7d690899481a903abbceb99b1530d51f5f979946" }, "downloads": -1, "filename": "IM-1.5.1-1.tar.gz", "has_sig": false, "md5_digest": "1ddd31541dccd4a2378d781e9a739054", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 176874, "upload_time": "2017-02-23T11:51:45", "upload_time_iso_8601": "2017-02-23T11:51:45.668099Z", "url": "https://files.pythonhosted.org/packages/61/50/2d2f09c6d2313118a8d05ea094d79c1dba788f19bb802e001a86266da5c2/IM-1.5.1-1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.5.2": [ { "comment_text": "", "digests": { "md5": "5e1d1d5ee3562f9279212cb058e0170c", "sha256": "a461b8944200d09b53359ed9648c2a6375792de5a3261d2c6bdb4db5e0ca70f5" }, "downloads": -1, "filename": "IM-1.5.2.tar.gz", "has_sig": false, "md5_digest": "5e1d1d5ee3562f9279212cb058e0170c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 178215, "upload_time": "2017-03-13T10:34:52", "upload_time_iso_8601": "2017-03-13T10:34:52.353145Z", "url": "https://files.pythonhosted.org/packages/3f/ac/4da986b7604e8361129eb37d0bbed486a523cae60cd255ef1d8449f8ac9b/IM-1.5.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.5.3": [ { "comment_text": "", "digests": { "md5": "d8b7989dcca367d6912b4e3f5474edf3", "sha256": "f62f3ddc177404adb7825458066f7aa3f16d617e1c2f92d8700fe0d5bb036794" }, "downloads": -1, "filename": "IM-1.5.3.tar.gz", "has_sig": false, "md5_digest": "d8b7989dcca367d6912b4e3f5474edf3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 183218, "upload_time": "2017-04-26T15:50:41", "upload_time_iso_8601": "2017-04-26T15:50:41.477691Z", "url": "https://files.pythonhosted.org/packages/7e/55/0de18a825aefe63d511f8fe1400b1b26a9869b0f7ccbe63bb465fcf26478/IM-1.5.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.5.4": [ { "comment_text": "", "digests": { "md5": "36faa7c6de675bcee20c67078b792fbf", "sha256": "0f3cdc40aac1ee067353eb2fe1add43fd3de255202a5092c4022cabf56e7f7e5" }, "downloads": -1, "filename": "IM-1.5.4.tar.gz", "has_sig": false, "md5_digest": "36faa7c6de675bcee20c67078b792fbf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 184973, "upload_time": "2017-05-23T10:39:36", "upload_time_iso_8601": "2017-05-23T10:39:36.075442Z", "url": "https://files.pythonhosted.org/packages/f7/e6/1a81ebdf2cc592c5ddf987dbaaa2ac67f384fd79dee7b7a181fe01706926/IM-1.5.4.tar.gz", "yanked": false, "yanked_reason": null } ], "1.5.5": [ { "comment_text": "", "digests": { "md5": "67e52728e3c9b7447d4c11d197abab21", "sha256": "a76b304538a410b63af83c1ee12848e45908b80ad087b655f17a3e06781afdee" }, "downloads": -1, "filename": "IM-1.5.5.tar.gz", "has_sig": false, "md5_digest": "67e52728e3c9b7447d4c11d197abab21", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 189268, "upload_time": "2017-06-07T14:14:38", "upload_time_iso_8601": "2017-06-07T14:14:38.135503Z", "url": "https://files.pythonhosted.org/packages/d1/4e/2c16276a8daa79da22b71e610504373b354e62ddaf429f14cc1d72301058/IM-1.5.5.tar.gz", "yanked": false, "yanked_reason": null } ], "1.6.0.post2": [ { "comment_text": "", "digests": { "md5": "7a8669c05619f1738022db47f0698c95", "sha256": "27afbaccc1b3c63274afe6a23700f82789171f79524370a2e582946bdf5bf833" }, "downloads": -1, "filename": "IM-1.6.0.post2.tar.gz", "has_sig": false, "md5_digest": "7a8669c05619f1738022db47f0698c95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 199864, "upload_time": "2017-09-13T10:55:05", "upload_time_iso_8601": "2017-09-13T10:55:05.114858Z", "url": "https://files.pythonhosted.org/packages/b3/80/776b8cc6005f181100b751b9a1838344e4e5b140e6d91addaf708b919990/IM-1.6.0.post2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.6.1": [ { "comment_text": "", "digests": { "md5": "f7249d36609799da09fc8f08c588ab1e", "sha256": "04761634490efa20b34e72e9e2dc284546b74273ee56ed72e2bdaa19fff10470" }, "downloads": -1, "filename": "IM-1.6.1.tar.gz", "has_sig": false, "md5_digest": "f7249d36609799da09fc8f08c588ab1e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 200281, "upload_time": "2017-09-20T07:50:32", "upload_time_iso_8601": "2017-09-20T07:50:32.088189Z", "url": "https://files.pythonhosted.org/packages/71/13/a34357a17eedba5b3509dfcee20bb59aab7798efd88be912d83e399b38fe/IM-1.6.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.6.2": [ { "comment_text": "", "digests": { "md5": "45c8700a8d22d14c28b777149f01ac7c", "sha256": "8113f84f7ca246b12d536f3d961d65f309a451efb5c9ad2420bc7e3ab4469ea9" }, "downloads": -1, "filename": "IM-1.6.2.tar.gz", "has_sig": false, "md5_digest": "45c8700a8d22d14c28b777149f01ac7c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 202081, "upload_time": "2017-10-13T06:53:50", "upload_time_iso_8601": "2017-10-13T06:53:50.845080Z", "url": "https://files.pythonhosted.org/packages/54/c0/caf5a7c14928935fc7ecb0351f2d7460605f8196ff0e48c8d45497acbd0c/IM-1.6.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.6.3": [ { "comment_text": "", "digests": { "md5": "6078b1ec549fb413c082a38e28083171", "sha256": "929d509a22d4c0d57d736783ece85f0f8ff188ad0cfb93d27cf036bb8a08a91f" }, "downloads": -1, "filename": "IM-1.6.3.tar.gz", "has_sig": false, "md5_digest": "6078b1ec549fb413c082a38e28083171", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 202765, "upload_time": "2017-10-31T14:17:44", "upload_time_iso_8601": "2017-10-31T14:17:44.712735Z", "url": "https://files.pythonhosted.org/packages/7e/42/972b3ad68a53abc83a06d04a4b27d9bf180a1a6995757f06f02455a1772a/IM-1.6.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.6.4": [ { "comment_text": "", "digests": { "md5": "cbdf37fec2cbc9edc39fbe8e2e67a14d", "sha256": "e1aaf8bb0cfd3d09207535162ea44592072edae3ad2ed0cecc8dfda2b4f80a37" }, "downloads": -1, "filename": "IM-1.6.4.tar.gz", "has_sig": false, "md5_digest": "cbdf37fec2cbc9edc39fbe8e2e67a14d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 203075, "upload_time": "2017-11-10T09:42:48", "upload_time_iso_8601": "2017-11-10T09:42:48.628061Z", "url": "https://files.pythonhosted.org/packages/97/4c/b58f0c24011c7969621345b162a40d3b03068617cb551d7bc516b4e5b115/IM-1.6.4.tar.gz", "yanked": false, "yanked_reason": null } ], "1.6.5": [ { "comment_text": "", "digests": { "md5": "151d1e3dc6ccdcd8238ce5f48490dedb", "sha256": "6605d648ea23fa81ba4c5787a1ddc04b269ba3802cf396b69c416cac383a8a46" }, "downloads": -1, "filename": "IM-1.6.5.tar.gz", "has_sig": false, "md5_digest": "151d1e3dc6ccdcd8238ce5f48490dedb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 203732, "upload_time": "2017-11-20T07:34:52", "upload_time_iso_8601": "2017-11-20T07:34:52.013700Z", "url": "https://files.pythonhosted.org/packages/05/26/f2e47d14edcde96974fa6481d1540370e699ba14b2fe6378e5f5a7f0e56d/IM-1.6.5.tar.gz", "yanked": false, "yanked_reason": null } ], "1.6.6": [ { "comment_text": "", "digests": { "md5": "3f4b9790a1feef0a3be63628000dbda9", "sha256": "d30e2c7016d46fdbea3bd602ac8bf61a419386c5f3d1d0b840a4d846e16b5db0" }, "downloads": -1, "filename": "IM-1.6.6.tar.gz", "has_sig": false, "md5_digest": "3f4b9790a1feef0a3be63628000dbda9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 204269, "upload_time": "2017-12-18T14:55:51", "upload_time_iso_8601": "2017-12-18T14:55:51.660804Z", "url": "https://files.pythonhosted.org/packages/93/6c/b436800e6a8246278993d8221c3884f4b88403681a6a91fba861a600734e/IM-1.6.6.tar.gz", "yanked": false, "yanked_reason": null } ], "1.6.7": [ { "comment_text": "", "digests": { "md5": "b334b4f1f2df30b94acdc30970a7dbb9", "sha256": "f1beb976827628604d21a0b864337650f4f700cc1e0820de997233bb22e5fa41" }, "downloads": -1, "filename": "IM-1.6.7.tar.gz", "has_sig": false, "md5_digest": "b334b4f1f2df30b94acdc30970a7dbb9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 204988, "upload_time": "2018-02-15T08:33:14", "upload_time_iso_8601": "2018-02-15T08:33:14.700611Z", "url": "https://files.pythonhosted.org/packages/0a/95/4b945affcf34483dd1fef4a68e7010e438eaa511cee18a83444c6c040108/IM-1.6.7.tar.gz", "yanked": false, "yanked_reason": null } ], "1.7.0": [ { "comment_text": "", "digests": { "md5": "60aaa1c293a7ed4be779517020db6be1", "sha256": "bab7343f7e037f015c261d738614a9b283ee73d5f25522e915f09735017db654" }, "downloads": -1, "filename": "IM-1.7.0.tar.gz", "has_sig": false, "md5_digest": "60aaa1c293a7ed4be779517020db6be1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 224756, "upload_time": "2018-05-09T09:27:06", "upload_time_iso_8601": "2018-05-09T09:27:06.566271Z", "url": "https://files.pythonhosted.org/packages/dd/33/795aa106e8bb94bd33f1433d8d0c422a19ee766f23c184cb3790d7bb62e5/IM-1.7.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.7.1": [ { "comment_text": "", "digests": { "md5": "bd6a24732c4aca655f9cbf63f26014e2", "sha256": "9ae774ee679788bce540f1d9d71d712456fa8b750e5df67094a969248542e4fa" }, "downloads": -1, "filename": "IM-1.7.1.tar.gz", "has_sig": false, "md5_digest": "bd6a24732c4aca655f9cbf63f26014e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 225223, "upload_time": "2018-05-16T06:48:41", "upload_time_iso_8601": "2018-05-16T06:48:41.690910Z", "url": "https://files.pythonhosted.org/packages/44/a0/86acf030afdfc6a2546f4239ac4b4d2f16a27abd9d1294f357bebd069cee/IM-1.7.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.7.2": [ { "comment_text": "", "digests": { "md5": "157de5672875a52e428d11b23dda0b01", "sha256": "42d2fe074507ac2583799945777d351702ece2f0e4fa7042841c415e24eafbab" }, "downloads": -1, "filename": "IM-1.7.2.tar.gz", "has_sig": false, "md5_digest": "157de5672875a52e428d11b23dda0b01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 226407, "upload_time": "2018-05-24T06:11:58", "upload_time_iso_8601": "2018-05-24T06:11:58.892077Z", "url": "https://files.pythonhosted.org/packages/69/c6/fb1dc84d18bc20478ab503ff3998ea7219433e0fcf8b88c8c061d78a2c3d/IM-1.7.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.7.3": [ { "comment_text": "", "digests": { "md5": "11094cd77e5d16fb98a4f953a0c7be28", "sha256": "1d0d3b362b0a5e48d6f8adad97a0c62881867a4feb555dce243785afc7f861a2" }, "downloads": -1, "filename": "IM-1.7.3.tar.gz", "has_sig": false, "md5_digest": "11094cd77e5d16fb98a4f953a0c7be28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 226766, "upload_time": "2018-06-07T06:52:34", "upload_time_iso_8601": "2018-06-07T06:52:34.129104Z", "url": "https://files.pythonhosted.org/packages/6a/ec/c17ce858cfdb9438525c3a17784a6921974781d5776d1aa4167b81810cb5/IM-1.7.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.7.4": [ { "comment_text": "", "digests": { "md5": "75fdee49b77a49977ff90d60ce431a9f", "sha256": "6c31e79a06ea07ea03c30ec45329ccb23d6620d89e821644f36075e02a03cc8d" }, "downloads": -1, "filename": "IM-1.7.4.tar.gz", "has_sig": false, "md5_digest": "75fdee49b77a49977ff90d60ce431a9f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 227482, "upload_time": "2018-06-20T09:55:36", "upload_time_iso_8601": "2018-06-20T09:55:36.011893Z", "url": "https://files.pythonhosted.org/packages/9f/eb/5d9348a76964ae689010a1d2534a3d6c5c2fc524024b72d86e7125bb957c/IM-1.7.4.tar.gz", "yanked": false, "yanked_reason": null } ], "1.7.5": [ { "comment_text": "", "digests": { "md5": "6b6791ba244f116a9916b4f12673718a", "sha256": "3cd4a81dce041c13fe5b2be6d199a21ca6e2bdc55b2ee67adf5cfb273eddb049" }, "downloads": -1, "filename": "IM-1.7.5.tar.gz", "has_sig": false, "md5_digest": "6b6791ba244f116a9916b4f12673718a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 237228, "upload_time": "2018-10-10T06:25:04", "upload_time_iso_8601": "2018-10-10T06:25:04.850464Z", "url": "https://files.pythonhosted.org/packages/eb/83/98ce519ad03c02381a77034c0be2dbaea9f649f9e0b35871f646afe6aa0e/IM-1.7.5.tar.gz", "yanked": false, "yanked_reason": null } ], "1.7.6": [ { "comment_text": "", "digests": { "md5": "3573182acc0c960ae91fd9d3e3f27f63", "sha256": "cc7c29b69a6d869a935b9a7e462fcb72fb8f741c61d8e3d44fc0379bc3412719" }, "downloads": -1, "filename": "IM-1.7.6.tar.gz", "has_sig": false, "md5_digest": "3573182acc0c960ae91fd9d3e3f27f63", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 236197, "upload_time": "2018-11-22T07:18:26", "upload_time_iso_8601": "2018-11-22T07:18:26.466123Z", "url": "https://files.pythonhosted.org/packages/ab/36/7c8196e3083c875c2b1c3b8a6bf2a5f481f45936980b2043e5a85fccb407/IM-1.7.6.tar.gz", "yanked": false, "yanked_reason": null } ], "1.7.7.1": [ { "comment_text": "", "digests": { "md5": "a21d60210015b6437d61137bcf1f317c", "sha256": "96548aad4b01a8522f92ea0726e63168b166d41a19ca4d547069942ab625923c" }, "downloads": -1, "filename": "IM-1.7.7.1.tar.gz", "has_sig": false, "md5_digest": "a21d60210015b6437d61137bcf1f317c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 235737, "upload_time": "2018-12-20T11:25:20", "upload_time_iso_8601": "2018-12-20T11:25:20.294749Z", "url": "https://files.pythonhosted.org/packages/e4/60/0e7bf1a3092a8d058c7c5e2ca6c7f124f5b345797bd5909c9f646dad3fd4/IM-1.7.7.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.8.0": [ { "comment_text": "", "digests": { "md5": "c2cb54eeea39f77aa0c2ee0109ddb024", "sha256": "3d83980bb3e0daf21a88c3ff9f60e2ebb47e72e193942c8e6575c49bd3a35e10" }, "downloads": -1, "filename": "IM-1.8.0.tar.gz", "has_sig": false, "md5_digest": "c2cb54eeea39f77aa0c2ee0109ddb024", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 245624, "upload_time": "2019-01-18T09:36:33", "upload_time_iso_8601": "2019-01-18T09:36:33.613665Z", "url": "https://files.pythonhosted.org/packages/68/4b/bec8fa600e6f7e05e62540e9482ef17737413b9061dac18e2307fa600494/IM-1.8.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.8.1": [ { "comment_text": "", "digests": { "md5": "106488948cc20754d9b7ea8ea27e6abc", "sha256": "e7ca66f89e51fdaa4c7dd905eb4a59061c6377d8c1e0bc6dfb9566d33e3ce9aa" }, "downloads": -1, "filename": "IM-1.8.1.tar.gz", "has_sig": false, "md5_digest": "106488948cc20754d9b7ea8ea27e6abc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 245759, "upload_time": "2019-01-24T12:21:05", "upload_time_iso_8601": "2019-01-24T12:21:05.341293Z", "url": "https://files.pythonhosted.org/packages/38/72/7115d38a866f07957fd861ced4d4eaaf273510aeac95c2da70a098389264/IM-1.8.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.8.2": [ { "comment_text": "", "digests": { "md5": "030bcb72a55650cf6d885af8ab2f8724", "sha256": "be53b789ce138e9a336f7bae9910bc5405280703612a3a09a3d418fe5ddddf5c" }, "downloads": -1, "filename": "IM-1.8.2.tar.gz", "has_sig": false, "md5_digest": "030bcb72a55650cf6d885af8ab2f8724", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 240782, "upload_time": "2019-03-06T09:20:26", "upload_time_iso_8601": "2019-03-06T09:20:26.661498Z", "url": "https://files.pythonhosted.org/packages/fe/48/4871308ef8909735cc45edd0eb2d7b7aa572a5590df446383a011d14309c/IM-1.8.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.8.3": [ { "comment_text": "", "digests": { "md5": "c85fd0b80b0fe3a94806721ae3cc4d8b", "sha256": "9e60d03370eaa9741d7d33cffc4c241c11b90776af6a723391fea42492efea0a" }, "downloads": -1, "filename": "IM-1.8.3.tar.gz", "has_sig": false, "md5_digest": "c85fd0b80b0fe3a94806721ae3cc4d8b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 239397, "upload_time": "2019-05-02T10:11:59", "upload_time_iso_8601": "2019-05-02T10:11:59.793843Z", "url": "https://files.pythonhosted.org/packages/8f/1b/4e2376a5a3b90aa403a803b65ac0c1011906650951ab0d210da71a4233fa/IM-1.8.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.8.4": [ { "comment_text": "", "digests": { "md5": "58c6bdd529d09c63608ae9667438175a", "sha256": "3f857722fc56b593b5a82e42c50c12387c598e69daef0864d6ef5cf13ecb1f6c" }, "downloads": -1, "filename": "IM-1.8.4.tar.gz", "has_sig": false, "md5_digest": "58c6bdd529d09c63608ae9667438175a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 248337, "upload_time": "2019-06-17T07:12:54", "upload_time_iso_8601": "2019-06-17T07:12:54.193279Z", "url": "https://files.pythonhosted.org/packages/2e/a1/ec0b27bd824f32aff8a361f737ea8533f97984e34c3ed0bb8fee17270889/IM-1.8.4.tar.gz", "yanked": false, "yanked_reason": null } ], "1.8.5": [ { "comment_text": "", "digests": { "md5": "3f3c6cfd28295034daf2f3e637e45636", "sha256": "b248511140b25b3dcb054688bff1f1b814c7f48ddcbcb8033a8ac76ed57078bd" }, "downloads": -1, "filename": "IM-1.8.5.tar.gz", "has_sig": false, "md5_digest": "3f3c6cfd28295034daf2f3e637e45636", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 252007, "upload_time": "2019-09-03T08:20:07", "upload_time_iso_8601": "2019-09-03T08:20:07.062780Z", "url": "https://files.pythonhosted.org/packages/b3/bd/360ab8a9115e844ab969437dfac75bcd7c1046e004d76d224b6c7e35f57b/IM-1.8.5.tar.gz", "yanked": false, "yanked_reason": null } ], "1.8.6.post1": [ { "comment_text": "", "digests": { "md5": "c32d03727d080cd125fa43b5fcd610f1", "sha256": "6d5a62c46db54dfaf2a2c8c8fca696d014d6fba8d13eb5073fad4c5fc143fcf6" }, "downloads": -1, "filename": "IM-1.8.6.post1.tar.gz", "has_sig": false, "md5_digest": "c32d03727d080cd125fa43b5fcd610f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 250429, "upload_time": "2019-10-21T07:16:22", "upload_time_iso_8601": "2019-10-21T07:16:22.504948Z", "url": "https://files.pythonhosted.org/packages/21/59/c12c35a761bb8b59400c1dcfd2ceeeb9dc2fbb17072585a3a29e98ba80c9/IM-1.8.6.post1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.9.0": [ { "comment_text": "", "digests": { "md5": "aa4d1bcfffaa72f118caf62ee411828b", "sha256": "572d28949bec45142ddd8a24773be99c6b0db5f4ec2cf969a9e439ca67053b80" }, "downloads": -1, "filename": "IM-1.9.0.tar.gz", "has_sig": false, "md5_digest": "aa4d1bcfffaa72f118caf62ee411828b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 254972, "upload_time": "2019-12-20T08:25:01", "upload_time_iso_8601": "2019-12-20T08:25:01.785868Z", "url": "https://files.pythonhosted.org/packages/23/28/59bfa1c82f401ab4ec51043503022e84c4e43197e4fa4363bcdf88b39982/IM-1.9.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.9.1": [ { "comment_text": "", "digests": { "md5": "9f7ff971135bdfd9c4f3b1e1de9190a6", "sha256": "19d801b7f5661d622ac03d32963f33acfa0d839e3ec1555458c4957ccbd75a09" }, "downloads": -1, "filename": "IM-1.9.1.tar.gz", "has_sig": false, "md5_digest": "9f7ff971135bdfd9c4f3b1e1de9190a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 256642, "upload_time": "2020-02-17T07:35:26", "upload_time_iso_8601": "2020-02-17T07:35:26.667709Z", "url": "https://files.pythonhosted.org/packages/47/9b/72bc6909c5004d0d90b8739c7e866b534c27783d7c7841dc26cb0f7f838b/IM-1.9.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.9.2": [ { "comment_text": "", "digests": { "md5": "cf76d9b6bb4f2f43d4610ee42e483c9a", "sha256": "e25498f6cb29e0f5ce9b84a26345813c781e0d955f93f438fd9d7d6404063d71" }, "downloads": -1, "filename": "IM-1.9.2.tar.gz", "has_sig": false, "md5_digest": "cf76d9b6bb4f2f43d4610ee42e483c9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 259655, "upload_time": "2020-04-28T08:56:38", "upload_time_iso_8601": "2020-04-28T08:56:38.940119Z", "url": "https://files.pythonhosted.org/packages/50/34/32d2fb1896542f503f2e1cf285251057cb8a6319a66dad0ea9497b42a878/IM-1.9.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.9.3": [ { "comment_text": "", "digests": { "md5": "3a4b6d6e4f7976f0feedee22ea548057", "sha256": "18d8923e7906cf8d84624d8a67fb165c756d13a0e43b05baa1eaa2b46274ff70" }, "downloads": -1, "filename": "IM-1.9.3.tar.gz", "has_sig": false, "md5_digest": "3a4b6d6e4f7976f0feedee22ea548057", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 260004, "upload_time": "2020-07-06T06:29:00", "upload_time_iso_8601": "2020-07-06T06:29:00.488262Z", "url": "https://files.pythonhosted.org/packages/48/3c/e1207940d6b7b7654224ce81ff497c26366745fff14ec4357350304ccbdb/IM-1.9.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.9.4": [ { "comment_text": "", "digests": { "md5": "f560bce79532d02fa9a0d73ddb3f0b87", "sha256": "ec1fdd29b1fc9a240d368ec81bdc2ffa4c7d27e46ae783bfd5438d4c60d7572e" }, "downloads": -1, "filename": "IM-1.9.4.tar.gz", "has_sig": false, "md5_digest": "f560bce79532d02fa9a0d73ddb3f0b87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 260293, "upload_time": "2020-07-29T07:56:56", "upload_time_iso_8601": "2020-07-29T07:56:56.770865Z", "url": "https://files.pythonhosted.org/packages/94/22/6a78763cb97eeb3c1c0c9ef768f11063af712ee66edf3f02d68a7fa9f0d0/IM-1.9.4.tar.gz", "yanked": false, "yanked_reason": null } ], "1.9.5": [ { "comment_text": "", "digests": { "md5": "cf8c356f6fd8c9d00bd8db748e24f303", "sha256": "0f0a5379efd21e648d1ad54a4be4dddf87ebc6af57a9b9cd46d33cdcf6981b0f" }, "downloads": -1, "filename": "IM-1.9.5.tar.gz", "has_sig": false, "md5_digest": "cf8c356f6fd8c9d00bd8db748e24f303", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 261402, "upload_time": "2020-11-05T08:08:04", "upload_time_iso_8601": "2020-11-05T08:08:04.085967Z", "url": "https://files.pythonhosted.org/packages/78/17/08ca764b2b9aa8c878a5f50e3e3a785f840699e58adee70f2caca9cd3590/IM-1.9.5.tar.gz", "yanked": false, "yanked_reason": null } ], "1.9.6": [ { "comment_text": "", "digests": { "md5": "e1b5207c095d8d108a14a886ddc401f5", "sha256": "99bf6d3b4a929669d4d06c087c71045b8752b06d4d3effcae5eb3f7602c80a92" }, "downloads": -1, "filename": "IM-1.9.6.tar.gz", "has_sig": false, "md5_digest": "e1b5207c095d8d108a14a886ddc401f5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 265634, "upload_time": "2020-12-17T12:30:13", "upload_time_iso_8601": "2020-12-17T12:30:13.058371Z", "url": "https://files.pythonhosted.org/packages/78/db/bad0a304b427859cbb81f67df3fd07f6ed4ec5aa57d14827ae947b4de260/IM-1.9.6.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0c6cb341518a1bf8224e3d3329f9048a", "sha256": "60426929065bc92eb6711b12e59795cd0144c7b568e5156b1a637014109b0b48" }, "downloads": -1, "filename": "IM-1.11.1.tar.gz", "has_sig": false, "md5_digest": "0c6cb341518a1bf8224e3d3329f9048a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 281237, "upload_time": "2022-04-11T07:08:34", "upload_time_iso_8601": "2022-04-11T07:08:34.804492Z", "url": "https://files.pythonhosted.org/packages/b3/48/f5b258a101edc230c046d4325c2b063ab79e89c4c2d9af4829e03ed2cdd2/IM-1.11.1.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }