{ "info": { "author": "Sylvain Lebresne", "author_email": "sylvain@datastax.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: Apache Software License", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "CCM (Cassandra Cluster Manager)\n====================================================\n\nA script/library to create, launch and remove an Apache Cassandra cluster on\nlocalhost.\n\nThe goal of ccm and ccmlib is to make it easy to create, manage and destroy a\nsmall Cassandra cluster on a local box. It is meant for testing a Cassandra cluster.\n\n\nRequirements\n------------\n\n- A working python installation (tested to work with python 2.7).\n- pyYAML (http://pyyaml.org/ -- `sudo easy_install pyYaml`)\n- six (https://pypi.python.org/pypi/six -- `sudo easy_install six`)\n- ant (http://ant.apache.org/, on Mac OS X, `brew install ant`)\n- psutil (https://pypi.python.org/pypi/psutil)\n- Java (which version depends on the version of Cassandra you plan to use. If\n unsure, use Java 7 as it is known to work with current versions of Cassandra).\n- If you want to create multiple node clusters, the simplest way is to use\n multiple loopback aliases. On modern linux distributions you probably don't\n need to do anything, but on Mac OS X, you will need to create the aliases with\n\n sudo ifconfig lo0 alias 127.0.0.2 up\n sudo ifconfig lo0 alias 127.0.0.3 up\n ...\n\n Note that the usage section assumes that at least 127.0.0.1, 127.0.0.2 and\n 127.0.0.3 are available.\n\n### Optional Requirements\n\n- Paramiko (http://www.paramiko.org/): Paramiko adds the ability to execute CCM\n remotely; `pip install paramiko`\n\n__Note__: The remote machine must be configured with an SSH server and a working\n CCM. When working with multiple nodes each exposed IP address must be\n in sequential order. For example, the last number in the 4th octet of\n a IPv4 address must start with `1` (e.g. 192.168.33.11). See\n [Vagrantfile](misc/Vagrantfile) for help with configuration of remote\n CCM machine.\n\n\nKnown issues\n------------\nWindows only:\n - `node start` pops up a window, stealing focus.\n - cqlsh started from ccm show incorrect prompts on command-prompt\n - non nodetool-based command-line options fail (sstablesplit, scrub, etc)\n - To install psutil, you must use the .msi from pypi. pip install psutil will not work\n - You will need ant.bat in your PATH in order to build C* from source\n - You must run with an Unrestricted Powershell Execution-Policy if using Cassandra 2.1.0+\n - Ant installed via [chocolatey](https://chocolatey.org/) will not be found by ccm, so you must create a symbolic\n link in order to fix the issue (as administrator):\n - cmd /c mklink C:\\ProgramData\\chocolatey\\bin\\ant.bat C:\\ProgramData\\chocolatey\\bin\\ant.exe\n\nRemote Execution only:\n - Using `--config-dir` and `--install-dir` with `create` may not work as\n expected; since the configuration directory and the installation directory\n contain lots of files they will not be copied over to the remote machine\n like most other options for cluster and node operations\n - cqlsh started from ccm using remote execution will not start\n properly (e.g.`ccm --ssh-host 192.168.33.11 node1 cqlsh`); however\n `-x ` or `--exec=CMDS` can still be used to execute a CQLSH command\n on a remote node.\n\nInstallation\n------------\n\nccm uses python distutils so from the source directory run:\n\n sudo ./setup.py install\n\nccm is available on the [Python Package Index][pip]:\n\n pip install ccm\n\nThere is also a [Homebrew package][brew] available:\n\n brew install ccm\n\n [pip]: https://pypi.python.org/pypi/ccm\n [brew]: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/ccm.rb\n\nUsage\n-----\n\nLet's say you wanted to fire up a 3 node Cassandra cluster.\n\n### Short version\n\n ccm create test -v 2.0.5 -n 3 -s\n\nYou will of course want to replace `2.0.5` by whichever version of Cassandra\nyou want to test.\n\n### Longer version\n\nccm works from a Cassandra source tree (not the jars). There are two ways to\ntell ccm how to find the sources:\n 1. If you have downloaded *and* compiled Cassandra sources, you can ask ccm\n to use those by initiating a new cluster with:\n\n ccm create test --install-dir=\n\n or, from that source tree directory, simply\n\n ccm create test\n\n 2. You can ask ccm to use a released version of Cassandra. For instance to\n use Cassandra 2.0.5, run\n\n ccm create test -v 2.0.5\n\n ccm will download the binary (from http://archive.apache.org/dist/cassandra),\n and set the new cluster to use it. This means\n that this command can take a few minutes the first time you\n create a cluster for a given version. ccm saves the compiled\n source in `~/.ccm/repository/`, so creating a cluster for that\n version will be much faster the second time you run it\n (note however that if you create a lot of clusters with\n different versions, this will take up disk space).\n\nOnce the cluster is created, you can populate it with 3 nodes with:\n\n ccm populate -n 3\n\nFor Mac OSX, create a new interface for every node besides the first, for example if you populated your cluster with 3 nodes, create interfaces for 127.0.0.2 and 127.0.0.3 like so:\n\n sudo ifconfig lo0 alias 127.0.0.2\n sudo ifconfig lo0 alias 127.0.0.3\n\nNote these aliases will disappear on reboot. For permanent network aliases on Mac OSX see ![Network Aliases](./NETWORK_ALIASES.md).\n\nAfter that execute:\n\n ccm start\n\nThat will start 3 nodes on IP 127.0.0.[1, 2, 3] on port 9160 for thrift, port\n7000 for the internal cluster communication and ports 7100, 7200 and 7300 for JMX.\nYou can check that the cluster is correctly set up with\n\n ccm node1 ring\n\nYou can then bootstrap a 4th node with\n\n ccm add node4 -i 127.0.0.4 -j 7400 -b\n\n(populate is just a shortcut for adding multiple nodes initially)\n\nccm provides a number of conveniences, like flushing all of the nodes of\nthe cluster:\n\n ccm flush\n\nor only one node:\n\n ccm node2 flush\n\nYou can also easily look at the log file of a given node with:\n\n ccm node1 showlog\n\nFinally, you can get rid of the whole cluster (which will stop the node and\nremove all the data) with\n\n ccm remove\n\nThe list of other provided commands is available through\n\n ccm\n\nEach command is then documented through the `-h` (or `--help`) flag. For\ninstance `ccm add -h` describes the options for `ccm add`.\n\n### Remote Usage (SSH/Paramiko)\n\nAll the usage examples above will work exactly the same for a remotely\nconfigured machine; however remote options are required in order to establish a\nconnection to the remote machine before executing the CCM commands:\n\n| Argument | Value | Description |\n| :--- | :--- | :--- |\n| --ssh-host | string | Hostname or IP address to use for SSH connection |\n| --ssh-port | int | Port to use for SSH connection
Default is 22 |\n| --ssh-username | string | Username to use for username/password or public key authentication |\n| --ssh-password | string | Password to use for username/password or private key passphrase using public key authentication |\n| --ssh-private-key | filename | Private key to use for SSH connection |\n\n#### Special Handling\n\nSome commands require files to be located on the remote server. Those commands\nare pre-processed, file transfers are initiated, and updates are made to the\nargument value for the remote execution of the CCM command:\n\n| Parameter | Description |\n| :--- | :--- |\n| `--dse-credentials` | Copy local DSE credentials file to remote server |\n| `--node-ssl` | Recursively copy node SSL directory to remote server |\n| `--ssl` | Recursively copy SSL directory to remote server |\n\n#### Short Version\n\n ccm --ssh-host=192.168.33.11 --ssh-username=vagrant --ssh-password=vagrant create test -v 2.0.5 -n 3 -i 192.168.33.1 -s\n\n__Note__: `-i` is used to add an IP prefix during the create process to ensure\n that the nodes communicate using the proper IP address for their node\n\n### Source Distribution\n\nIf you'd like to use a source distribution instead of the default binary each time (for example, for Continuous Integration), you can prefix cassandra version with `source:`, for example:\n\n```\nccm create test -v source:2.0.5 -n 3 -s\n```\n\n### Automatic Version Fallback\n\nIf 'binary:' or 'source:' are not explicitly specified in your version string, then ccm will fallback to building the requested version from git if it cannot access the apache mirrors.\n\n### Git and GitHub\n\nTo use the latest version from the [canonical Apache Git repository](https://git-wip-us.apache.org/repos/asf?p=cassandra.git), use the version name `git:branch-name`, e.g.:\n\n```\nccm create trunk -v git:trunk -n 5\n```\n\nand to download a branch from a GitHub fork of Cassandra, you can prefix the repository and branch with `github:`, e.g.:\n\n```\nccm create patched -v github:jbellis/trunk -n 1\n```\n\n### Bash command-line completion\nccm has many sub-commands for both cluster commands as well as node commands, and sometimes you don't quite remember the name of the sub-command you want to invoke. Also, command lines may be long due to long cluster or node names.\n\nLeverage bash's *programmable completion* feature to make ccm use more pleasant. Copy `misc/ccm-completion.bash` to somewhere in your home directory (or /etc if you want to make it accessible to all users of your system) and source it in your `.bash_profile`:\n```\n. ~/scripts/ccm-completion.bash\n```\n\nOnce set up, `ccm sw` expands to `ccm switch `, for example. The `switch` sub-command has extra completion logic to help complete the cluster name. So `ccm switch cl` would expand to `ccm switch cluster-58` if cluster-58 is the only cluster whose name starts with \"cl\". If there is ambiguity, hitting `` a second time shows the choices that match:\n```\n$ ccm switch cl\n ... becomes ...\n$ ccm switch cluster-\n ... then hit tab twice ...\ncluster-56 cluster-85 cluster-96\n$ ccm switch cluster-8\n ... becomes ...\n$ ccm switch cluster-85\n```\n\nIt dynamically determines available sub-commands based on the ccm being invoked. Thus, users running multiple ccm's (or a ccm that they are continuously updating with new commands) will automagically work.\n\nThe completion script relies on ccm having two hidden subcommands:\n* show-cluster-cmds - emits the names of cluster sub-commands.\n* show-node-cmds - emits the names of node sub-commands.\n\nThus, it will not work with sufficiently old versions of ccm.\n\nRemote debugging\n-----------------------\n\nIf you would like to connect to your Cassandra nodes with a remote debugger you have to pass the `-d` (or `--debug`) flag to the populate command:\n\n ccm populate -d -n 3\n\nThat will populate 3 nodes on IP 127.0.0.[1, 2, 3] setting up the remote debugging on ports 2100, 2200 and 2300.\nThe main thread will not be suspended so you don't have to connect with a remote debugger to start a node.\n\nAlternatively you can also specify a remote port with the `-r` (or `--remote-debug-port`) flag while adding a node\n\n ccm add node4 -r 5005 -i 127.0.0.4 -j 7400 -b\n\nWhere things are stored\n-----------------------\n\nBy default, ccm stores all the node data and configuration files under `~/.ccm/cluster_name/`.\nThis can be overridden using the `--config-dir` option with each command.\n\nDataStax Enterprise\n-------------------\n\nCCM 2.0 supports creating and interacting with DSE clusters. The --dse\noption must be used with the `ccm create` command. See the `ccm create -h`\nhelp for assistance.\n\nCCM Lib\n-------\n\nThe ccm facilities are available programmatically through ccmlib. This could\nbe used to implement automated tests against Cassandra. A simple example of\nhow to use ccmlib follows:\n\n import ccmlib.cluster\n\n CLUSTER_PATH=\".\"\n cluster = ccmlib.cluster.Cluster(CLUSTER_PATH, 'test', cassandra_version='2.1.14')\n cluster.populate(3).start()\n [node1, node2, node3] = cluster.nodelist()\n\n # do some tests on the cluster/nodes. To connect to a node through thrift,\n # the host and port to a node is available through\n # node.network_interfaces['thrift']\n\n cluster.flush()\n node2.compact()\n\n # do some other tests\n\n # after the test, you can leave the cluster running, you can stop all nodes\n # using cluster.stop() but keep the data around (in CLUSTER_PATH/test), or\n # you can remove everything with cluster.remove()\n\n--\nSylvain Lebresne \n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/pcmanus/ccm", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "ccm", "package_url": "https://pypi.org/project/ccm/", "platform": "", "project_url": "https://pypi.org/project/ccm/", "project_urls": { "Homepage": "https://github.com/pcmanus/ccm" }, "release_url": "https://pypi.org/project/ccm/3.1.4/", "requires_dist": null, "requires_python": "", "summary": "Cassandra Cluster Manager", "version": "3.1.4" }, "last_serial": 3602982, "releases": { "0.9": [ { "comment_text": "", "digests": { "md5": "5e64e1f896a8d30ae226b44aa5ce209b", "sha256": "40cf75ab8b8ea5e17330d84e8379f9b3cfbe5b05a64a90aedc2a75531ba2c340" }, "downloads": -1, "filename": "ccm-0.9.tar.gz", "has_sig": false, "md5_digest": "5e64e1f896a8d30ae226b44aa5ce209b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24884, "upload_time": "2013-03-22T08:05:29", "url": "https://files.pythonhosted.org/packages/10/0b/5405f31e7ae1f6273db1944fe6b7ff20cfa2bf61a194f32f8073674e1566/ccm-0.9.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "1e51e20ed49249baf0e748bdfaac681b", "sha256": "4834cde1fb679e5558764a383b678ac2cb84d24f50d332a7dde1b5bb1f7b6f54" }, "downloads": -1, "filename": "ccm-1.1.tar.gz", "has_sig": false, "md5_digest": "1e51e20ed49249baf0e748bdfaac681b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37750, "upload_time": "2014-09-02T15:55:13", "url": "https://files.pythonhosted.org/packages/cc/0d/550469ae56b4fbdb382346c090d208e1c31aba0f629a8247eb2f4bbce6ec/ccm-1.1.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "d5a0dafab3a8c1e487019f22e89a7c47", "sha256": "ab17922f9049caae9a61238461d5dfa1aeb53ec430ace3b164e2a9e3358a6302" }, "downloads": -1, "filename": "ccm-1.2.tar.gz", "has_sig": false, "md5_digest": "d5a0dafab3a8c1e487019f22e89a7c47", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38314, "upload_time": "2014-09-03T14:12:20", "url": "https://files.pythonhosted.org/packages/92/37/14000437880f664aa8455c6d2204c8e84c439b5927681b34772d3431ac50/ccm-1.2.tar.gz" } ], "2.0": [ { "comment_text": "", "digests": { "md5": "8a1110d62c82a61fcde2a68d05c852fc", "sha256": "acec16eea062bae7f7dc20a6d8acd54077bb5a1929fcdc58c0877ad4510e1d61" }, "downloads": -1, "filename": "ccm-2.0.tar.gz", "has_sig": false, "md5_digest": "8a1110d62c82a61fcde2a68d05c852fc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 44342, "upload_time": "2014-10-28T16:55:20", "url": "https://files.pythonhosted.org/packages/5a/e6/01c6a9cbab046bea5dfbad92b2dc5b2ecfe5e2870f471cf26af646ef1e3b/ccm-2.0.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "4662d644049ef843fc7d04fc691fc081", "sha256": "808d1dcec4e99b2e3d844c31d0506b92ec29547afadbdb762224209a4893c453" }, "downloads": -1, "filename": "ccm-2.0.2.tar.gz", "has_sig": false, "md5_digest": "4662d644049ef843fc7d04fc691fc081", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45307, "upload_time": "2014-12-23T17:38:10", "url": "https://files.pythonhosted.org/packages/f2/4f/1df7eff8c658f310ecb634286e7a0016382f4d52d25cccc488ca5773e8b7/ccm-2.0.2.tar.gz" } ], "2.0.3": [], "2.0.3.1": [ { "comment_text": "", "digests": { "md5": "9c22162d8fa9395bbd87dea3adfb74a6", "sha256": "3e4dc3a67fae069155f96c7614bac9816da94023c0fc06fa405c8d76d3878710" }, "downloads": -1, "filename": "ccm-2.0.3.1.tar.gz", "has_sig": false, "md5_digest": "9c22162d8fa9395bbd87dea3adfb74a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47341, "upload_time": "2015-03-24T01:33:39", "url": "https://files.pythonhosted.org/packages/7e/99/223bf6546ca0fd18bc728d198b9d32f034a7c0cfe9630e1a07491b61f4dc/ccm-2.0.3.1.tar.gz" } ], "2.0.4": [ { "comment_text": "", "digests": { "md5": "17746ca8103d3142afd251159bda71d9", "sha256": "6fbe5d4406355bde1eabd89e25a1169c75eb6c45adce953aed44dfa510550187" }, "downloads": -1, "filename": "ccm-2.0.4.tar.gz", "has_sig": false, "md5_digest": "17746ca8103d3142afd251159bda71d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50112, "upload_time": "2015-05-12T14:30:44", "url": "https://files.pythonhosted.org/packages/e7/3f/b3292ec1f81efa04675e03186ff2f1ee4e9940e2fac4fc2829dc1ce00b56/ccm-2.0.4.tar.gz" } ], "2.0.4.1": [ { "comment_text": "", "digests": { "md5": "4508874a1a776afbbc1ced91cc0c615b", "sha256": "e959ad5b4a6dfe3531d2be7e88b802d0768710feecb36e76147a511584e032a5" }, "downloads": -1, "filename": "ccm-2.0.4.1.tar.gz", "has_sig": false, "md5_digest": "4508874a1a776afbbc1ced91cc0c615b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50250, "upload_time": "2015-05-13T17:32:55", "url": "https://files.pythonhosted.org/packages/82/31/8efb43034eb249fced12542311c73adb3251bdc54255920ce977a3fa7918/ccm-2.0.4.1.tar.gz" } ], "2.0.5": [ { "comment_text": "", "digests": { "md5": "04545e3be4ef0716a051bbfffc02ce2b", "sha256": "d903b3081fe092e229236ffa06c89508becb02d63e384bf8d47e2cb744a33ed5" }, "downloads": -1, "filename": "ccm-2.0.5.tar.gz", "has_sig": false, "md5_digest": "04545e3be4ef0716a051bbfffc02ce2b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54181, "upload_time": "2015-10-01T19:35:19", "url": "https://files.pythonhosted.org/packages/bd/e7/cf515ba202619de4bb43bcbaec1b91b655ab6e9e797f3d3fe05d1a5e30f8/ccm-2.0.5.tar.gz" } ], "2.0.6": [ { "comment_text": "", "digests": { "md5": "60e115ff01038bab0b8dae063870004f", "sha256": "a1cbccdacb976da0ec9df98a25835605901176cfa9c9cabaa594feba6a731ab9" }, "downloads": -1, "filename": "ccm-2.0.6.tar.gz", "has_sig": false, "md5_digest": "60e115ff01038bab0b8dae063870004f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56272, "upload_time": "2015-12-02T21:31:15", "url": "https://files.pythonhosted.org/packages/a1/67/0752d86687459b5d02a3a52137a49fe2e353e679331aac386477d6b543db/ccm-2.0.6.tar.gz" } ], "2.0.7": [ { "comment_text": "", "digests": { "md5": "792420d950566ecba62f457ae5f1119d", "sha256": "c28f9d55fd3ef933e4009537aa7ecb3671cfdad412148023ac8697054f54a575" }, "downloads": -1, "filename": "ccm-2.0.7.tar.gz", "has_sig": false, "md5_digest": "792420d950566ecba62f457ae5f1119d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56412, "upload_time": "2015-12-14T18:07:53", "url": "https://files.pythonhosted.org/packages/a4/3b/05fff841833834678c8decd6ef334acedc1baba3dda946c34d4af24a2859/ccm-2.0.7.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "d48dc1bce0b2bf3fb79f82b739f06a95", "sha256": "0f1c40214a0f986df86f96fc4816175b6ebf43315fd569a012fe23905785c2a2" }, "downloads": -1, "filename": "ccm-2.1.0.tar.gz", "has_sig": false, "md5_digest": "d48dc1bce0b2bf3fb79f82b739f06a95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57638, "upload_time": "2016-01-05T16:03:16", "url": "https://files.pythonhosted.org/packages/ba/f4/23db6241328163daea3b03bd4b028f9eca787369bef072d786585aafc096/ccm-2.1.0.tar.gz" } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "78b5aee98bbb153c73509f1a9562ebd6", "sha256": "ab89af29acb7e86b8c1643562a9a3b518cc6f5d28531b3b10e37005a0cdb5144" }, "downloads": -1, "filename": "ccm-2.1.1.tar.gz", "has_sig": false, "md5_digest": "78b5aee98bbb153c73509f1a9562ebd6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57645, "upload_time": "2016-01-05T16:04:50", "url": "https://files.pythonhosted.org/packages/40/d6/3b3fb7a3d904b3b31e1451ee68b4e85293fe856441299aa7031484d870c4/ccm-2.1.1.tar.gz" } ], "2.1.10": [ { "comment_text": "", "digests": { "md5": "d0921ebf2b6049123d589f32b4fe74bf", "sha256": "07785a7aa9e3b84cab495c6c3329fcd2d0062d34e52120ed5892805bf3e39ab0" }, "downloads": -1, "filename": "ccm-2.1.10.tar.gz", "has_sig": false, "md5_digest": "d0921ebf2b6049123d589f32b4fe74bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63846, "upload_time": "2016-06-24T18:33:27", "url": "https://files.pythonhosted.org/packages/ad/f5/71ebd0b78eb594e13247ce0cffafdbd21b3f9940a12a5c035b7f397363cc/ccm-2.1.10.tar.gz" } ], "2.1.11": [ { "comment_text": "", "digests": { "md5": "07fc955cd64b120aa5d892f47bf4ed60", "sha256": "483b89f7766d3693ef69fde050feb1cbbe2d8e1e3f051e26797932cc05aebe10" }, "downloads": -1, "filename": "ccm-2.1.11.tar.gz", "has_sig": false, "md5_digest": "07fc955cd64b120aa5d892f47bf4ed60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63852, "upload_time": "2016-06-24T18:36:18", "url": "https://files.pythonhosted.org/packages/ce/d3/1ca42101ecaffec0bcd2eacb5560d462e12568de065819256a58ed6f00b3/ccm-2.1.11.tar.gz" } ], "2.1.2": [ { "comment_text": "", "digests": { "md5": "41999e490cb0617402f21d8fb31aaed6", "sha256": "990f2d442c94f17e7a07956c74a779e714cffd14166d8b18b54176e7a7bf4a95" }, "downloads": -1, "filename": "ccm-2.1.2.tar.gz", "has_sig": false, "md5_digest": "41999e490cb0617402f21d8fb31aaed6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57650, "upload_time": "2016-01-05T16:21:23", "url": "https://files.pythonhosted.org/packages/0e/d4/d5e15947c5ecf46c406c6a5f3f932d41190b8a9b188b8796255b16600be5/ccm-2.1.2.tar.gz" } ], "2.1.3": [ { "comment_text": "", "digests": { "md5": "026346984b2d18ea80d8523248de9a8c", "sha256": "367057d06da94830fcfc055e12992df51390c9b74a1c2bb5eb51e82be9b1c613" }, "downloads": -1, "filename": "ccm-2.1.3.tar.gz", "has_sig": false, "md5_digest": "026346984b2d18ea80d8523248de9a8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 58383, "upload_time": "2016-02-02T21:18:07", "url": "https://files.pythonhosted.org/packages/18/f6/4fc6811973d526bfe596b60dd4ddab5a01461e17844583989703ea3b60ab/ccm-2.1.3.tar.gz" } ], "2.1.4": [ { "comment_text": "", "digests": { "md5": "5c374e921d245eef86a12fc5e96220be", "sha256": "949522b54cafcce41acfdb48cff8b87faba2c24f53d30e93e5e016fdbbcd3a83" }, "downloads": -1, "filename": "ccm-2.1.4.tar.gz", "has_sig": false, "md5_digest": "5c374e921d245eef86a12fc5e96220be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 61323, "upload_time": "2016-03-31T15:29:37", "url": "https://files.pythonhosted.org/packages/43/59/b46ba096c726cf799c404fd45be7a90656f5a0f4b2585b2a9f3a540c2d5e/ccm-2.1.4.tar.gz" } ], "2.1.5": [ { "comment_text": "", "digests": { "md5": "514840eb800b4f189375401cd078b60c", "sha256": "e2a871c5c5e43716e1a397bc8ed2576c78ecd6bc0e879cda6c2adcbbd46b6bed" }, "downloads": -1, "filename": "ccm-2.1.5.tar.gz", "has_sig": false, "md5_digest": "514840eb800b4f189375401cd078b60c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 61462, "upload_time": "2016-04-04T15:58:31", "url": "https://files.pythonhosted.org/packages/cd/58/991ff4141f746ba9d9183fca1818b5702d44f92fa6e4f77874c7e55161d0/ccm-2.1.5.tar.gz" } ], "2.1.6": [ { "comment_text": "", "digests": { "md5": "4a390f72d8de3872bd17f1073841885b", "sha256": "16b1d1db66239e7af801ec1a6d4fc796c0155243db40676064648e597577ed9c" }, "downloads": -1, "filename": "ccm-2.1.6.tar.gz", "has_sig": false, "md5_digest": "4a390f72d8de3872bd17f1073841885b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 61441, "upload_time": "2016-04-04T16:00:20", "url": "https://files.pythonhosted.org/packages/c6/11/f9d69d65ca3f8995aea37d94c8636b3662340a355ab61b583316a1cc36d1/ccm-2.1.6.tar.gz" } ], "2.1.7": [ { "comment_text": "", "digests": { "md5": "b38dbbb5e343219dabf766adaf41a29c", "sha256": "f849604464b8d9cc15d475aed373da03b988e2a1038bd65c0c13dfce674a32b9" }, "downloads": -1, "filename": "ccm-2.1.7.tar.gz", "has_sig": false, "md5_digest": "b38dbbb5e343219dabf766adaf41a29c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63786, "upload_time": "2016-06-24T18:03:32", "url": "https://files.pythonhosted.org/packages/59/7b/afd7a0c57e18fdb0abe8c288311d090ef01b41cbdccc26fe2c0cbf517e7f/ccm-2.1.7.tar.gz" } ], "2.1.8": [ { "comment_text": "", "digests": { "md5": "dbc4da372abcf6b250b4b2deb8a634d0", "sha256": "08ba5926a815bf00383b920a34067cb11401c66b1c0be92c9b82aff133185a30" }, "downloads": -1, "filename": "ccm-2.1.8.tar.gz", "has_sig": false, "md5_digest": "dbc4da372abcf6b250b4b2deb8a634d0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63844, "upload_time": "2016-06-24T18:31:33", "url": "https://files.pythonhosted.org/packages/b1/9f/e7b15e9a1ded40e0a93657a84d59c0d5bc283f9c33fcbbdcf016375735d3/ccm-2.1.8.tar.gz" } ], "2.1.9": [ { "comment_text": "", "digests": { "md5": "dc7aafabd90952e49618b08d0ac24b1c", "sha256": "fc2dc2926acb036f33da16562d4181f66dae9b5b481d90730e70666b70d50ec9" }, "downloads": -1, "filename": "ccm-2.1.9.tar.gz", "has_sig": false, "md5_digest": "dc7aafabd90952e49618b08d0ac24b1c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63838, "upload_time": "2016-06-24T18:32:16", "url": "https://files.pythonhosted.org/packages/8f/3d/db421063b22523e0ea6a3316d360edd80b69fc04796d14800c391f0f01d7/ccm-2.1.9.tar.gz" } ], "2.2.0": [ { "comment_text": "", "digests": { "md5": "32a0540100f8d3113b81b9ad60519481", "sha256": "934809d20dd86e81a76ff13768d3588bff17c021739d82d0a3bf592232488493" }, "downloads": -1, "filename": "ccm-2.2.0.tar.gz", "has_sig": false, "md5_digest": "32a0540100f8d3113b81b9ad60519481", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 64176, "upload_time": "2016-07-19T18:20:48", "url": "https://files.pythonhosted.org/packages/bb/4c/ee848e222196b04558e15b7186693755c1e175b7d6aa29958234adc5f2a4/ccm-2.2.0.tar.gz" } ], "2.3.0": [ { "comment_text": "", "digests": { "md5": "dba25ddbf8e618bfab9efd906aa18c65", "sha256": "c74ff96bfdd14da5a85d36cd09270a60b7f6c06582478679f9a9fe58b2d49715" }, "downloads": -1, "filename": "ccm-2.3.0.tar.gz", "has_sig": false, "md5_digest": "dba25ddbf8e618bfab9efd906aa18c65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 65189, "upload_time": "2016-08-04T16:55:31", "url": "https://files.pythonhosted.org/packages/ce/9b/3a3f552bb1372bfab2df8dbe95c565869c7f1a6f8525c9bfe3fcd5eb2cdd/ccm-2.3.0.tar.gz" } ], "2.3.1": [ { "comment_text": "", "digests": { "md5": "d89af174f60e9aa349d3d15c25e874c1", "sha256": "8daf9460ae5002f2f5b04344566b50c8e4e87745e6b4ed7ee8f0b9afd1a1faaa" }, "downloads": -1, "filename": "ccm-2.3.1.tar.gz", "has_sig": false, "md5_digest": "d89af174f60e9aa349d3d15c25e874c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 65035, "upload_time": "2016-08-05T17:32:36", "url": "https://files.pythonhosted.org/packages/48/9d/1e4a120b6a8b8119d8f64412483825ee4a8c3b4d8f1cf7bf48730696bdc2/ccm-2.3.1.tar.gz" } ], "2.3.2": [ { "comment_text": "", "digests": { "md5": "930ee9eeb99631afd131cecf62d53c8d", "sha256": "1513361d087d101e680f44ac2a1deaa5c23eeb2cd99b2586c498ea927ef489b5" }, "downloads": -1, "filename": "ccm-2.3.2.tar.gz", "has_sig": false, "md5_digest": "930ee9eeb99631afd131cecf62d53c8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 64936, "upload_time": "2016-08-12T16:19:58", "url": "https://files.pythonhosted.org/packages/a9/1d/497667cf59a8fd09152ecff3aa717b2d4735ff8c7bf13681ab0c56013590/ccm-2.3.2.tar.gz" } ], "2.3.3": [ { "comment_text": "", "digests": { "md5": "f552583cc881c0a7f9de0e89375e27fd", "sha256": "eb871b99845e2565451f0a8321e22de887f8ec16c9dbe9c20df2077c56249f32" }, "downloads": -1, "filename": "ccm-2.3.3.tar.gz", "has_sig": false, "md5_digest": "f552583cc881c0a7f9de0e89375e27fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66095, "upload_time": "2016-09-15T15:55:21", "url": "https://files.pythonhosted.org/packages/ad/e8/7b63e1f970ef8e36f9b9936e8d580c89cc1fd23f2cb4dc77024fad0a9aa6/ccm-2.3.3.tar.gz" } ], "2.4.0": [ { "comment_text": "", "digests": { "md5": "d84ecdfc1f90225c465fe49794569029", "sha256": "deea2d7cb36343ec1b4d6bfdee7bad31abe770b9facc7fb543541cd80419ae1a" }, "downloads": -1, "filename": "ccm-2.4.0.tar.gz", "has_sig": false, "md5_digest": "d84ecdfc1f90225c465fe49794569029", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66085, "upload_time": "2016-09-15T17:58:32", "url": "https://files.pythonhosted.org/packages/a8/11/abda09a7de5663b74f52c636c857ce5a6a87ec7e73da0eddd22019d6459f/ccm-2.4.0.tar.gz" } ], "2.4.1": [ { "comment_text": "", "digests": { "md5": "d71af54fd55db878019ab4c4ff9b6fe6", "sha256": "f54107e244a87e2f396c783dae5209bb6d6f0d58c88b8acf753c799b759dd0eb" }, "downloads": -1, "filename": "ccm-2.4.1.tar.gz", "has_sig": false, "md5_digest": "d71af54fd55db878019ab4c4ff9b6fe6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66091, "upload_time": "2016-09-15T19:46:44", "url": "https://files.pythonhosted.org/packages/da/01/9f3b167d6dd9b1639ec59240fb2bf165bbad5181812ff2f20bb43ce610ce/ccm-2.4.1.tar.gz" } ], "2.4.10": [ { "comment_text": "", "digests": { "md5": "a6b58d29efdcdab7171f9ce737811096", "sha256": "ca6a61ce618da0fdbafa3ca58dd07350415d50def8e62f3305463b8e32bba233" }, "downloads": -1, "filename": "ccm-2.4.10.tar.gz", "has_sig": false, "md5_digest": "a6b58d29efdcdab7171f9ce737811096", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 67561, "upload_time": "2017-01-23T15:43:19", "url": "https://files.pythonhosted.org/packages/84/24/5255e7ee077482f513d1a7b340a6fe1ad2431e0054b8d2a64f644fc3dda8/ccm-2.4.10.tar.gz" } ], "2.4.11": [ { "comment_text": "", "digests": { "md5": "2277930e73988a81f95ec8ea659e956e", "sha256": "6863e4270032c8a61a74b700cda5a30334575dfb463c486bafe974c57ae2da81" }, "downloads": -1, "filename": "ccm-2.4.11.tar.gz", "has_sig": false, "md5_digest": "2277930e73988a81f95ec8ea659e956e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 67579, "upload_time": "2017-01-31T19:17:36", "url": "https://files.pythonhosted.org/packages/a8/c9/707b02ce8f8dcebac2150015a1af34a068d604aadb0da8f31a0dd0dc3612/ccm-2.4.11.tar.gz" } ], "2.4.2": [ { "comment_text": "", "digests": { "md5": "f5c30bad1ff4b55de26a683939193b8a", "sha256": "baa5da96d336ab203917773903871ac2d2a74b413abe58a07af864e23648d325" }, "downloads": -1, "filename": "ccm-2.4.2.tar.gz", "has_sig": false, "md5_digest": "f5c30bad1ff4b55de26a683939193b8a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66364, "upload_time": "2016-09-22T18:20:54", "url": "https://files.pythonhosted.org/packages/0c/49/c1fed378cca1f9ea27242ba08ee39e0b56a2804ea55e90e8982b02d7feb7/ccm-2.4.2.tar.gz" } ], "2.4.3": [ { "comment_text": "", "digests": { "md5": "29580e1199358aca043bf1fe08f57f9d", "sha256": "8588fb19cf6b02f9b17f9cfa1cbc426e85d40c42da1ad5a7cd90f9e6fb8a2a7a" }, "downloads": -1, "filename": "ccm-2.4.3.tar.gz", "has_sig": false, "md5_digest": "29580e1199358aca043bf1fe08f57f9d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66395, "upload_time": "2016-09-26T13:55:17", "url": "https://files.pythonhosted.org/packages/22/c4/f590fa76f2272fd7a1037e1f2434412ca96426d741858b2773e35ce41ec4/ccm-2.4.3.tar.gz" } ], "2.4.4": [ { "comment_text": "", "digests": { "md5": "7ea4997e8dcf3f2fc761dca1f93fb253", "sha256": "e270bb19ca38bb920aded4daa2213179558af7058396b4a897bb41e4d93b815e" }, "downloads": -1, "filename": "ccm-2.4.4.tar.gz", "has_sig": false, "md5_digest": "7ea4997e8dcf3f2fc761dca1f93fb253", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66606, "upload_time": "2016-10-06T15:40:36", "url": "https://files.pythonhosted.org/packages/c3/e8/77df1379b012e835e201a78ee18e0df8b460250ec16c0a4608186245da4a/ccm-2.4.4.tar.gz" } ], "2.4.5": [ { "comment_text": "", "digests": { "md5": "13d1d47e1db340a182ef320cddceea01", "sha256": "05bc19367dfef6181ed661f4bcec3e15f176b06c553dd1d1cc357531095c08e7" }, "downloads": -1, "filename": "ccm-2.4.5.tar.gz", "has_sig": false, "md5_digest": "13d1d47e1db340a182ef320cddceea01", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66514, "upload_time": "2016-10-11T14:45:28", "url": "https://files.pythonhosted.org/packages/10/e2/5ad73a24619239e0ee0c04d8cead46b3cbec6c5e6ddd2a8e664a029b203e/ccm-2.4.5.tar.gz" } ], "2.4.6": [ { "comment_text": "", "digests": { "md5": "cbfcd10ae6f42fdd8a1a45013fd0ebea", "sha256": "32f711914cfdad69b3c5c14d75ce1a277b4b3152ec896ce7507a5c391a679d4d" }, "downloads": -1, "filename": "ccm-2.4.6.tar.gz", "has_sig": false, "md5_digest": "cbfcd10ae6f42fdd8a1a45013fd0ebea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66706, "upload_time": "2016-11-01T17:44:44", "url": "https://files.pythonhosted.org/packages/b4/7f/321b59b1787961cf87d852a13e368e52712a9a18a99eac146248089fffbc/ccm-2.4.6.tar.gz" } ], "2.4.7": [ { "comment_text": "", "digests": { "md5": "41ece7c39e551b1dfa9e91001b7e06f0", "sha256": "dec4add7d9c0b77c28f5ca45495e0942f55533af9ff004a6b10eca0ea622ea40" }, "downloads": -1, "filename": "ccm-2.4.7.tar.gz", "has_sig": false, "md5_digest": "41ece7c39e551b1dfa9e91001b7e06f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 66813, "upload_time": "2016-12-13T16:28:40", "url": "https://files.pythonhosted.org/packages/93/26/dd9aaecadfc2553cf156ed3df2bf15d418ad77810ac068707f912faa628d/ccm-2.4.7.tar.gz" } ], "2.4.8": [ { "comment_text": "", "digests": { "md5": "2a939c998882b16abe48c2ffd96868e5", "sha256": "c1aa75eceb9254526f0fb90e87c2c495bb918c4148c6593e03213f2ef3ae1f5b" }, "downloads": -1, "filename": "ccm-2.4.8.tar.gz", "has_sig": false, "md5_digest": "2a939c998882b16abe48c2ffd96868e5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 67255, "upload_time": "2016-12-19T16:18:00", "url": "https://files.pythonhosted.org/packages/6a/9f/4adc656ff1ae29652f9e923a30cc25cec3e1b4c61b104615a51f7e2f064d/ccm-2.4.8.tar.gz" } ], "2.4.9": [ { "comment_text": "", "digests": { "md5": "e6c9b03ba55453f89c188b3ca2698e55", "sha256": "1a30e32045ca57184693c61c2d05546f1caefc9a8c5456c795ad577e7fc49e2e" }, "downloads": -1, "filename": "ccm-2.4.9.tar.gz", "has_sig": false, "md5_digest": "e6c9b03ba55453f89c188b3ca2698e55", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 67262, "upload_time": "2016-12-19T19:31:56", "url": "https://files.pythonhosted.org/packages/76/b6/049470d729180a13ae6a9ce2d89951161e063779baa6539169c4d71653b5/ccm-2.4.9.tar.gz" } ], "2.5.0": [ { "comment_text": "", "digests": { "md5": "c93007e67dbf31d6405e55aa3b5c1d51", "sha256": "c1d3ee12cf2a06eb3b0916874c51452031882ecbe527dcdeea462f07209f8ac1" }, "downloads": -1, "filename": "ccm-2.5.0.tar.gz", "has_sig": false, "md5_digest": "c93007e67dbf31d6405e55aa3b5c1d51", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 67836, "upload_time": "2017-02-02T19:49:12", "url": "https://files.pythonhosted.org/packages/1a/cd/b8a5132da6596ab87ac87c667d9bb8d114a6b40188b7235753cfe1ff46d7/ccm-2.5.0.tar.gz" } ], "2.5.1": [ { "comment_text": "", "digests": { "md5": "1050d4e7829b8b80a6c9b636ce1d7991", "sha256": "5c0e01ba02df7944ce1a4dbea4c53cba6806fc3d056a72d52995e22fd738f09e" }, "downloads": -1, "filename": "ccm-2.5.1.tar.gz", "has_sig": false, "md5_digest": "1050d4e7829b8b80a6c9b636ce1d7991", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 67856, "upload_time": "2017-02-06T18:33:01", "url": "https://files.pythonhosted.org/packages/c8/b7/1e9fbf84f485207c24546fc07a2673f1e07b4c4c05277cf01f6f4bdbc9c2/ccm-2.5.1.tar.gz" } ], "2.5.2": [ { "comment_text": "", "digests": { "md5": "41101e1e20489aced2b0e3c77a7d9fa0", "sha256": "25ec3b39251b01c2397ca8b1616aba7c06563b380731c608070bdcc0f74e5af8" }, "downloads": -1, "filename": "ccm-2.5.2.tar.gz", "has_sig": false, "md5_digest": "41101e1e20489aced2b0e3c77a7d9fa0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 67997, "upload_time": "2017-02-08T18:19:25", "url": "https://files.pythonhosted.org/packages/4d/70/43ea9d1db287f062f4ee673946802e5162d5ed2679a67c9272acdaa59584/ccm-2.5.2.tar.gz" } ], "2.6.0": [ { "comment_text": "", "digests": { "md5": "93eaf1736aeadba1301b9a531cf59717", "sha256": "7966166d3a7d0ab1d07a67a9a8b23eea566c6cd1d4232504ecf6378ba494c0ac" }, "downloads": -1, "filename": "ccm-2.6.0.tar.gz", "has_sig": false, "md5_digest": "93eaf1736aeadba1301b9a531cf59717", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68409, "upload_time": "2017-02-16T17:26:00", "url": "https://files.pythonhosted.org/packages/89/db/3c8c541df561f6a2040cf626c7df0bfb9b20ab2f1c1bea3ce7e3ae85fbd9/ccm-2.6.0.tar.gz" } ], "2.6.1": [ { "comment_text": "", "digests": { "md5": "cf276541c3ca994be71e86282a84b300", "sha256": "b107c256b603e51f45439e755a61ffff5e50eb6ab70e859800c35cbc75035208" }, "downloads": -1, "filename": "ccm-2.6.1.tar.gz", "has_sig": false, "md5_digest": "cf276541c3ca994be71e86282a84b300", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68433, "upload_time": "2017-02-23T22:38:20", "url": "https://files.pythonhosted.org/packages/65/a4/548b64739df50b3c09eb4b7aa009f693c6da950b08131133f85f7b62eaf5/ccm-2.6.1.tar.gz" } ], "2.6.2": [ { "comment_text": "", "digests": { "md5": "28262ee28c5badf09a2ecb07a73bbfde", "sha256": "872f1228ba5b47d5c45b43e9beae156628de02e3e42bb9ac06063a5496ad6546" }, "downloads": -1, "filename": "ccm-2.6.2.tar.gz", "has_sig": false, "md5_digest": "28262ee28c5badf09a2ecb07a73bbfde", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68592, "upload_time": "2017-04-10T14:28:40", "url": "https://files.pythonhosted.org/packages/37/7f/7d4dfd7784cf3837d369a55434a47eb4b1fc2ef6d5c632affcfa2f57b582/ccm-2.6.2.tar.gz" } ], "2.6.3": [ { "comment_text": "", "digests": { "md5": "5e97c447d41ccca3cde3105684ec636d", "sha256": "d0a26c52ce1e45c050595ec928b5f94675bf9935df6c428d869452b97b94e85f" }, "downloads": -1, "filename": "ccm-2.6.3.tar.gz", "has_sig": false, "md5_digest": "5e97c447d41ccca3cde3105684ec636d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68741, "upload_time": "2017-05-31T14:01:59", "url": "https://files.pythonhosted.org/packages/9f/ae/12b512659b46793b92bb79864015faad8b86e9a1fcf6f6860a984b5fc753/ccm-2.6.3.tar.gz" } ], "2.7.0": [ { "comment_text": "", "digests": { "md5": "c64d436e464118fd5009d013c54a895a", "sha256": "eabba2792958f058e331862b69eeb135ab9ffbacebaadea0760f81fd34dafecb" }, "downloads": -1, "filename": "ccm-2.7.0.tar.gz", "has_sig": false, "md5_digest": "c64d436e464118fd5009d013c54a895a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68844, "upload_time": "2017-06-26T12:55:28", "url": "https://files.pythonhosted.org/packages/8a/56/b4b9103b451a29c1f897b62394b262a698b64a7b5b9a318b73c98ad34b60/ccm-2.7.0.tar.gz" } ], "2.8.0": [ { "comment_text": "", "digests": { "md5": "607c5f1dfa89ce46892317d177a57982", "sha256": "b1293902f1e2da1a8a06d678e1e07f111b2fa5020f5439f745fb9ced508b837b" }, "downloads": -1, "filename": "ccm-2.8.0.tar.gz", "has_sig": false, "md5_digest": "607c5f1dfa89ce46892317d177a57982", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68895, "upload_time": "2017-07-28T07:52:13", "url": "https://files.pythonhosted.org/packages/fd/d8/8fe2b991abc7c1092313666d2a85a6982feae2d583ba27aca3cb2726b0c0/ccm-2.8.0.tar.gz" } ], "2.8.1": [ { "comment_text": "", "digests": { "md5": "d4852348a9945bc48db64b1913e15cbd", "sha256": "0062e3b03e3258c0e5b3a11c31cfca1c5d0865bc8c2c3a04163c11939df2ccca" }, "downloads": -1, "filename": "ccm-2.8.1.tar.gz", "has_sig": false, "md5_digest": "d4852348a9945bc48db64b1913e15cbd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 68904, "upload_time": "2017-07-28T07:52:52", "url": "https://files.pythonhosted.org/packages/97/e8/25d6f6bc71f5dcdc1fcc19a0f4e39871cc6248b342609cfae362f458700e/ccm-2.8.1.tar.gz" } ], "2.8.2": [ { "comment_text": "", "digests": { "md5": "cc281b3939d815507e148a52a22d6e25", "sha256": "ffb8520756e2a2630bb8eed804c1d9cfcc9e09faf12840c98ff7f24a59665bd5" }, "downloads": -1, "filename": "ccm-2.8.2.tar.gz", "has_sig": false, "md5_digest": "cc281b3939d815507e148a52a22d6e25", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 70320, "upload_time": "2017-08-30T12:13:42", "url": "https://files.pythonhosted.org/packages/99/4f/d2ea0eb3b200093648c9ea3c81bd532388cb46d2734ec2f83bbab4d765f8/ccm-2.8.2.tar.gz" } ], "2.8.3": [ { "comment_text": "", "digests": { "md5": "88366c93f9a3812f23675599a94706a2", "sha256": "da8c4f0ababc372de2baf259dc9a6461e278e9cb20a0cc5a4adbc001c662cbc1" }, "downloads": -1, "filename": "ccm-2.8.3.tar.gz", "has_sig": false, "md5_digest": "88366c93f9a3812f23675599a94706a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 70473, "upload_time": "2017-09-04T10:55:26", "url": "https://files.pythonhosted.org/packages/3a/0e/66cd74ac3476ca79f9b467bcafeb95a9db7688b61d6c10fced7db4a53bbc/ccm-2.8.3.tar.gz" } ], "2.8.4": [ { "comment_text": "", "digests": { "md5": "f60e8a1dfaaa0e767e19af05e0c8db05", "sha256": "8d46669127b4fbd517bc06488e1215475e3850fc97f565c092aa964ecb7674e9" }, "downloads": -1, "filename": "ccm-2.8.4.tar.gz", "has_sig": false, "md5_digest": "f60e8a1dfaaa0e767e19af05e0c8db05", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 70518, "upload_time": "2017-09-06T17:46:33", "url": "https://files.pythonhosted.org/packages/26/8a/8bb98faa4ec409efca803d6252ab424a47b7b0ff81f345b1f2813766751e/ccm-2.8.4.tar.gz" } ], "3.0.0": [ { "comment_text": "", "digests": { "md5": "f4e3835ee8ca6adec076a85715545054", "sha256": "cbb4365c1fd32eababac5619a3ba9bbfea3560323bfc50a9db661aa20685ab9f" }, "downloads": -1, "filename": "ccm-3.0.0.tar.gz", "has_sig": false, "md5_digest": "f4e3835ee8ca6adec076a85715545054", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 77004, "upload_time": "2017-09-27T12:30:47", "url": "https://files.pythonhosted.org/packages/55/3d/62fba990f24b7ce67a0d751c7270891c9c3df41b330e72d8865c6148c81d/ccm-3.0.0.tar.gz" } ], "3.0.1": [ { "comment_text": "", "digests": { "md5": "951bafae66708d6df61c19e6e89f82c4", "sha256": "2e15759159b9b4e68ef97f5a85e3a65d43486ae9f23f450971d93e4f885d014c" }, "downloads": -1, "filename": "ccm-3.0.1.tar.gz", "has_sig": false, "md5_digest": "951bafae66708d6df61c19e6e89f82c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 77095, "upload_time": "2017-10-02T14:34:38", "url": "https://files.pythonhosted.org/packages/e7/8c/f9a6b7338615baf3992d50a497aa4408e4a1d5356869dd27da3455fe2992/ccm-3.0.1.tar.gz" } ], "3.0.2": [ { "comment_text": "", "digests": { "md5": "b8ec987b953d4f8bdae0f65d7069a3d2", "sha256": "bcd02fbc90bff81727b2ecea0e8c7ac2ebd8c04518f50c3b415ce0300fe84256" }, "downloads": -1, "filename": "ccm-3.0.2.tar.gz", "has_sig": false, "md5_digest": "b8ec987b953d4f8bdae0f65d7069a3d2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 77259, "upload_time": "2017-10-24T11:43:39", "url": "https://files.pythonhosted.org/packages/9c/fb/090f431f2120ba269858b851d0e6b37bde87fd2e4cab80a0c94e783b232e/ccm-3.0.2.tar.gz" } ], "3.1.0": [ { "comment_text": "", "digests": { "md5": "1eeedb2053325dd3b0e84047e9f99b52", "sha256": "4fe1c3c0ef0599ce7d98f61d9ca6c491c9ae29431b0fc1a26ead5e26e9ba85ca" }, "downloads": -1, "filename": "ccm-3.1.0.tar.gz", "has_sig": false, "md5_digest": "1eeedb2053325dd3b0e84047e9f99b52", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 77512, "upload_time": "2017-11-03T11:44:51", "url": "https://files.pythonhosted.org/packages/ed/c5/9ea6b1e5b8ff8874f73a9efdddb8873d801d0f88b5bb2b084e0de03c2760/ccm-3.1.0.tar.gz" } ], "3.1.1": [ { "comment_text": "", "digests": { "md5": "575f03a86258aeb76c59bcb4a28b468c", "sha256": "49e07fee97c1df10b2d60c9ffcb1e5d4d12a4d9d18148ae1995bb8d3d72eeed3" }, "downloads": -1, "filename": "ccm-3.1.1.tar.gz", "has_sig": false, "md5_digest": "575f03a86258aeb76c59bcb4a28b468c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 77507, "upload_time": "2017-11-17T17:54:56", "url": "https://files.pythonhosted.org/packages/f1/4b/04f57158a0fb15473c37096b8beca725321bf969f15b7d190333ab019c94/ccm-3.1.1.tar.gz" } ], "3.1.2": [ { "comment_text": "", "digests": { "md5": "a7517ec88809995f21389206d61d2db3", "sha256": "62c51165f3ba3a823050f29f276dc5966cbc90860323bc8e88d16f8524932e28" }, "downloads": -1, "filename": "ccm-3.1.2.tar.gz", "has_sig": false, "md5_digest": "a7517ec88809995f21389206d61d2db3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72189, "upload_time": "2018-01-18T09:20:00", "url": "https://files.pythonhosted.org/packages/5c/23/104e851fd83c00c516b7f56d6c93bacb3ce3bcaf1ebd47570e17eb464572/ccm-3.1.2.tar.gz" } ], "3.1.3": [ { "comment_text": "", "digests": { "md5": "6b80fda984de10dbc219c1aa5b86abb0", "sha256": "7b38b8facf7317afa69335000491d29e3abd3201d2d20ace99ff39c493a9aa44" }, "downloads": -1, "filename": "ccm-3.1.3.tar.gz", "has_sig": false, "md5_digest": "6b80fda984de10dbc219c1aa5b86abb0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72115, "upload_time": "2018-01-30T21:13:39", "url": "https://files.pythonhosted.org/packages/49/d5/07d0611fc69e09ac8c40ab849c4bf3d3d0567ed3b2c886228361a51d6b22/ccm-3.1.3.tar.gz" } ], "3.1.4": [ { "comment_text": "", "digests": { "md5": "8bf52abfe0ef1962cbb4b06b8be9630f", "sha256": "a98268c2d8e5534d8d2d94267060e9ee9105b35e43d704bac0fa495a773acf7d" }, "downloads": -1, "filename": "ccm-3.1.4.tar.gz", "has_sig": false, "md5_digest": "8bf52abfe0ef1962cbb4b06b8be9630f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72125, "upload_time": "2018-02-21T18:48:22", "url": "https://files.pythonhosted.org/packages/fc/ab/b51afd466cc4acf2192e230ddb6fd3adb56066f05c7be1852af7bd655068/ccm-3.1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8bf52abfe0ef1962cbb4b06b8be9630f", "sha256": "a98268c2d8e5534d8d2d94267060e9ee9105b35e43d704bac0fa495a773acf7d" }, "downloads": -1, "filename": "ccm-3.1.4.tar.gz", "has_sig": false, "md5_digest": "8bf52abfe0ef1962cbb4b06b8be9630f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72125, "upload_time": "2018-02-21T18:48:22", "url": "https://files.pythonhosted.org/packages/fc/ab/b51afd466cc4acf2192e230ddb6fd3adb56066f05c7be1852af7bd655068/ccm-3.1.4.tar.gz" } ] }