{ "info": { "author": "Jose Diaz-Gonzalez", "author_email": "opschops@josediazgonzalez.com", "bugtrack_url": null, "classifiers": [], "description": "===============\nAMQP Dispatcher\n===============\n\n.. image:: https://travis-ci.org/opschops/amqp-dispatcher.svg?branch=master\n :target: https://travis-ci.org/opschops/amqp-dispatcher\n\nA daemon to run AMQP consumers\n\nRequirements\n============\n\n* Python 2.6+\n\nInstallation\n============\n\nUsing PIP:\n\nFrom Github::\n\n pip install git+git://github.com/opschops/amqp-dispatcher.git@0.11.0#egg=amqp-dispatcher\n\nFrom PyPI::\n\n pip install amqp-dispatcher==0.11.0\n\n\nRunning\n=======\n\n.. code:: bash\n\n amqp-dispatcher --config amqp-dispatcher-config.yml\n\nThe environment variable ``RABBITMQ_URL`` can also be used which will cause\nattempt to connect to the defined data source name. Hosts are separated\nvia commas, and they are connected to in random order.\n\nNote that you can specify a heartbeat via the ``heartbeat`` querystring value\non the ``RABBITMQ_URL``. By default, it is set to ``None``, which ensures that\nthe client respects the broker specified heartbeat settings. You may wish to\noverride this for a particular environment.\n\nAdditionally, you can specifically set a heartbeat override via the ``RABBITMQ_HEARTBEAT`` environment variable.\nThis will take precedence over the heartbeat set in ``RABBITMQ_URL``.\n\nTo see an example run:\n\n.. code:: bash\n\n make example\n\nConsumers\n---------\n\nConsumers are a class with 2 required methods: ``consume`` and ``shutdown``.\namqp-dispatcher will not monkey patch the environment, you will have to do\nthat yourself.\n\n- ``consume``: ``consume`` is called once for each message being handled. It should take 2 parameters, a proxy for AMQP operations (``amqp``) and the message (``msg``).\n- ``shutdown`` - ``shutdown`` is called before the instance of the consumer is removed. It takes a single argument ``exception`` which may be ``None``. If your consumer raises an exception while consuming the ``shutdown`` method will be called. Once ``shutdown`` is finished a new instance of your consumer will be created to replace the one that raised the exception. If you would like to rate limit instance replacement you can call ``gevent.sleep(X)`` to sleep for ``X`` seconds after a failure.\n\n\nExample consumer:\n\n.. code:: python\n\n class Consumer(object):\n\n def __init__(self):\n self.init_msg = \"I've been initiliazed\"\n\n def consume(self, amqp, msg):\n print 'Consuming message', msg.body\n gevent.sleep(1)\n val = random.random()\n if val > .8:\n print 'publishing'\n amqp.publish('test_exchange', 'test_routing_key', {}, 'New body!')\n if val < .5:\n raise ValueError()\n print 'Done sleeping'\n amqp.ack()\n\n def shutdown(self, exception=None):\n print 'Shut down'\n\n\nConfiguration\n-------------\n\namqp-dispatcher will read environment variable for connection information and a\nYAML file for worker configuration.\n\nYou can validate the yaml file configuration with the following command:\n\n.. code:: bash\n\n amqp-dispatcher --validate --config amqp-dispatcher-config.yml\n\nThis will validate that the ``startup_handler`` and ``consumers`` exist and can be\nimported. Note that if there is any logic contained outside of those functions, said\nlogic will be executed.\n\nEnvironment Variables\n---------------------\n\n- ``RABBITMQ_URL``: Connection string of the form ``amqp://USER:PASS@HOST:PORT/VHOST``\n\nStartup Configuration\n---------------------\n\nIf you need to perform custom actions (configure your logging, create initial objects) you can add a startup handler.\n\nThis is configured in the config yml with the ``startup_handler`` option.\n\n.. code:: yaml\n\n startup_handler: amqpdispatcher.example_startup:startup\n\nQueue configuration\n-------------------\n\nQueues can be created on the fly by amqp dispatcher, and may bind existing exchanges on the fly as well.\n\nThere are a few obvious constraints:\n\n* To create a non-passive queue (typical behavior) the current user must have ``configure=queue`` permission\n* To bind to an exchange, the current user must have ``read`` permission on the binding exchange\n\nQueue configuration is as follows:\n\n- ``queue``: (required) name of the queue\n- ``durable``: (optional) queue created in \"durable\" mode (default = True)\n- ``auto_delete``: (optional) queue created in \"auto_delete\" mode (default = False), meaning it will be deleted automatically once all consumers disconnect from it (e.g. on restart)\n- ``exclusive``: (optional) queue created in \"exclusive\" mode (default = False) meaning it will only be accessible by this process\n- ``x_dead_letter_exchange``: (optional) name of dead letter exchange\n- ``x_dead_letter_routing_key``: (optional) dead letter routing key\n- ``x_max_length``: (optional) maximum length of ready messages. (default = INFINITE)\n- ``x_expires``: (optional) How long a queue can be unused for before it is automatically deleted (milliseconds) (default=INFINITE)\n- ``x_message_ttl``: (optional) How long a message published to a queue can live before it is discarded (milliseconds) (default=INFINITE)\n\nBindings\n--------\n\n``bindings`` should contain a list of ``exchange``/``routing_key`` pairs and defines the binding for the queue (there can be multiple)\n\nA complete configuration example would look like:\n\n.. code:: yaml\n\n queues:\n - queue: notify_mat_job\n durable: true\n auto_delete: false\n passive: true\n exclusive: false\n x_dead_letter_exchange: null\n x_dead_letter_routing_key: null\n x_max_length: null\n x_expires: null\n x_message_ttl: null\n bindings:\n - exchange: notify\n routing_key: transaction.*\n - exchange: notify\n routing_key: click.*\n\n - queue: notify_apsalar_job\n bindings:\n - exchange: notify\n routing_key: transaction.*\n - exchange: notify\n routing_key: click.*\n\nWorker configuration\n--------------------\n\nWorkers are autoloaded when AMQP Dispatcher starts. This means your worker must\nbe importable from the environment.\n\nA complete configuration example would look like:\n\n.. code:: yaml\n\n consumers:\n - consumer: workers.module:Consumer\n consumer_count: 1\n queue: test_queue\n prefetch_count: 2\n - consumer: workers.module_2:Consumer\n consumer_count: 2\n queue: test_queue_2\n prefetch_count: 10\n\n``prefetch_count`` is the AMQP ``prefetch_count`` when consuming. The\n``consumer_count`` is the number of instances of your consumer to handle messages\nfrom that queue. Connection pools are highly recommended. MySQL will require the\n`MySQL Connector `_ instead of\n``mysqldb`` in order for gevent to switch properly.\n\nPools can be created and attached to the consumer class during the ``__init__``. Example with SQLAlchemy\n\n.. code:: python\n\n class Consumer(object):\n\n session_maker = None\n\n def __init__(self):\n self.session = None\n\n if Consumer._engine is None:\n print 'Creating session maker'\n Consumer._engine = create_engine(...)\n Consumer.sessionmaker = sessionmaker(bind=Consumer._engine)\n\nAnd then a session created during the consume method.\n\n.. code:: python\n\n def consume(self, proxy, msg):\n session = self.sessionmaker()\n # Do something with the session\n session.close()\n\nLogging\n-------\n\nLogging is performed on the logger ``amqp-dispatcher``. The RabbitMQ connection\nprovided by Haigha will log on ``amqp-dispatcher.haigha``.\n\nYou can also configure the logger by using the ``LOGGING_FILE_CONFIG``\nenvironment variable to specify a file config path. This will be used by\n``logging.config.fileConfig`` before creating the initial logger.\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/opschops/amqp-dispatcher", "keywords": "amqp", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "amqp-dispatcher", "package_url": "https://pypi.org/project/amqp-dispatcher/", "platform": "", "project_url": "https://pypi.org/project/amqp-dispatcher/", "project_urls": { "Homepage": "http://github.com/opschops/amqp-dispatcher" }, "release_url": "https://pypi.org/project/amqp-dispatcher/0.11.0/", "requires_dist": null, "requires_python": "", "summary": "A daemon gevent to run AMQP consumers", "version": "0.11.0" }, "last_serial": 5269410, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "fc275a3902e37442fac237c79078699a", "sha256": "c932aeba9d14a64fd6c8c5b1a6d3d43888513b39aaf799bd1f1bf8baab39bbd2" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.1.tar.gz", "has_sig": false, "md5_digest": "fc275a3902e37442fac237c79078699a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3170, "upload_time": "2013-01-12T18:42:30", "url": "https://files.pythonhosted.org/packages/d8/a5/a9dae5ef703d2f7fb1a5e523eeb2d9ebb5840a955428e2a3d9b9cc1411d5/amqp-dispatcher-0.0.1.tar.gz" } ], "0.0.10": [ { "comment_text": "", "digests": { "md5": "f93c7bdfc22f93a1fd1fa118ec511112", "sha256": "baadff74cbca50ac0320bd920cb2fd5b69bd97f5792fcd48fa133cee039639df" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.10.tar.gz", "has_sig": false, "md5_digest": "f93c7bdfc22f93a1fd1fa118ec511112", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5534, "upload_time": "2014-11-07T22:23:00", "url": "https://files.pythonhosted.org/packages/fd/17/18dccc8180da75f326208029041c036c418fdd083095ed281743fe65284c/amqp-dispatcher-0.0.10.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "b5e397c3131dd1bbe10e1a9ccfb2177a", "sha256": "cb245d8428159155c30f200c91f49a937d264b7b7346e37df3dfc9ed48704a57" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.2.tar.gz", "has_sig": false, "md5_digest": "b5e397c3131dd1bbe10e1a9ccfb2177a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3168, "upload_time": "2013-01-12T19:06:25", "url": "https://files.pythonhosted.org/packages/23/34/af99a003f176e31530ffcf78f2d98902550ef50eb1d78381fda7dc1eb4d2/amqp-dispatcher-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "5802c882688d1be8e3cdfa394ffb7d93", "sha256": "1cb09b1dfb134d19284da9cb1842e42d0eb1ee56bf04008530c3fcaf7ad75ea6" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.3.tar.gz", "has_sig": false, "md5_digest": "5802c882688d1be8e3cdfa394ffb7d93", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3162, "upload_time": "2013-01-16T12:26:24", "url": "https://files.pythonhosted.org/packages/f6/a7/7228a2038f19e9cd0e92f11a149d5e1932b6670a943e15cdcd51b59da522/amqp-dispatcher-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "58a69f7fd674a3def1e3ef9e41768dec", "sha256": "cda8972543412da43631e885fed2e8dcdba76091965b6edbfede0d9566ab7cae" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.4.tar.gz", "has_sig": false, "md5_digest": "58a69f7fd674a3def1e3ef9e41768dec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4628, "upload_time": "2013-01-17T13:42:13", "url": "https://files.pythonhosted.org/packages/c6/9d/e1d0ca1c63e79768aa35a3a404dbf87cc5cc358b09f5db33ffb0afe3ae34/amqp-dispatcher-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "d24ca7f0f5c3982b5ab96e43657f02c0", "sha256": "32f1cdcfd66aec4b819340980844e1fbbcced5054769ccbcb02d34cfa8d4337c" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.5.tar.gz", "has_sig": false, "md5_digest": "d24ca7f0f5c3982b5ab96e43657f02c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5175, "upload_time": "2013-01-31T20:36:14", "url": "https://files.pythonhosted.org/packages/23/1a/9419c80c938f799200a113f6ae3b4dc69debfc3eef927625f22a3fe37c84/amqp-dispatcher-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "85e6f066a7b59b3253579bffb1b5a84b", "sha256": "dd828bb8aa5dd5545f1101ef3003c2c2dca3adc0ec1384781bbc56ee6c74e428" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.6.tar.gz", "has_sig": false, "md5_digest": "85e6f066a7b59b3253579bffb1b5a84b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5488, "upload_time": "2013-02-17T23:21:23", "url": "https://files.pythonhosted.org/packages/3d/34/56b121e49cb28767b5b0441ef115187393b7b8d679454c8544328ad54cca/amqp-dispatcher-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "0470e5e616ae032bcd4e124d506251fa", "sha256": "01d856b8997b6f634be6ba15e12df3c69f31f56a2aa5f01bf4d2e0d98c4d05d9" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.7.tar.gz", "has_sig": false, "md5_digest": "0470e5e616ae032bcd4e124d506251fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5511, "upload_time": "2013-02-17T23:30:39", "url": "https://files.pythonhosted.org/packages/c4/d9/b17a06aff4c71d1abb13e119f75bf8819c78bd2cf0b38abee47f7a3b4b53/amqp-dispatcher-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "9dd552e53f8ff36f2e4e84b4401fe2fb", "sha256": "ee825b6e5b5fbfd24e375e0fbc1eba8cda4bb6a3bbc464b4f1f82b7eea278ff7" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.8.tar.gz", "has_sig": false, "md5_digest": "9dd552e53f8ff36f2e4e84b4401fe2fb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5511, "upload_time": "2013-02-17T23:33:25", "url": "https://files.pythonhosted.org/packages/29/8d/70340139c38c7788adedd5d1af1245921df803042c4a36d5fac0982651c6/amqp-dispatcher-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "b960091fd5506494508b5120c5f846a8", "sha256": "f0ed4b579271baad90e55d8d0f1be73052fc44f7f934490499983266d011315f" }, "downloads": -1, "filename": "amqp-dispatcher-0.0.9.tar.gz", "has_sig": false, "md5_digest": "b960091fd5506494508b5120c5f846a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5561, "upload_time": "2013-06-10T19:50:30", "url": "https://files.pythonhosted.org/packages/95/8d/e2dfc95bb888f67c45597cd58b0a357939855fb9d0f97b01b1f1d2aa5e07/amqp-dispatcher-0.0.9.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "422f8f23be79af7e6ef4d892ef8106bc", "sha256": "514480bfca2b86bd524837907d2cf3ba712ccd213e3277f30a37e56fff0a08de" }, "downloads": -1, "filename": "amqp-dispatcher-0.1.0.tar.gz", "has_sig": false, "md5_digest": "422f8f23be79af7e6ef4d892ef8106bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7235, "upload_time": "2015-03-31T05:07:44", "url": "https://files.pythonhosted.org/packages/f4/3a/6fdec3d009a82e8d06a81cb92103006715dbb57afc84a8f7c12a1f8b62b7/amqp-dispatcher-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "4edc3e16994ec1487c4a45472af0cba6", "sha256": "171dfbfc581ce157cb054bc2908206085ab94cc330450b28d04f2ccb7bd7727a" }, "downloads": -1, "filename": "amqp-dispatcher-0.1.1.tar.gz", "has_sig": false, "md5_digest": "4edc3e16994ec1487c4a45472af0cba6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7238, "upload_time": "2015-03-31T05:08:06", "url": "https://files.pythonhosted.org/packages/d6/03/9f3253ff527084c66738df21cc4d05ec7bf2724f1db525d293ea91c2c61b/amqp-dispatcher-0.1.1.tar.gz" } ], "0.10.0": [ { "comment_text": "", "digests": { "md5": "a6c9b495e10afb194032c7ca24a8379c", "sha256": "f83a03a784c060c7a9bbf3123de963fdb60bd619ad9457166e47c33778d09f1e" }, "downloads": -1, "filename": "amqp_dispatcher-0.10.0-py2-none-any.whl", "has_sig": false, "md5_digest": "a6c9b495e10afb194032c7ca24a8379c", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17980, "upload_time": "2017-07-07T19:23:25", "url": "https://files.pythonhosted.org/packages/1f/80/ce76b8d90da0cd5d12abe53ea6969e780f349d4c766dc7cca1da7ff2ac44/amqp_dispatcher-0.10.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "942d6776075a9439066ef102c9831b1a", "sha256": "bc293a89801ddd4bb556b3aa7fba9b566b021f4000d130caacc39c9219e89f57" }, "downloads": -1, "filename": "amqp-dispatcher-0.10.0.tar.gz", "has_sig": false, "md5_digest": "942d6776075a9439066ef102c9831b1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17669, "upload_time": "2017-07-07T19:23:23", "url": "https://files.pythonhosted.org/packages/55/fa/926a6646dcf8f10e1bcecc759f533b02aaccc7a5078768ee841f30da7a39/amqp-dispatcher-0.10.0.tar.gz" } ], "0.11.0": [ { "comment_text": "", "digests": { "md5": "f76006ec75b19c5f313a4c2d3cc26a33", "sha256": "691e4361aea8a250afb7d15bb23834c7b7d431f8d45110094b12f0b4d5223e54" }, "downloads": -1, "filename": "amqp_dispatcher-0.11.0-py2-none-any.whl", "has_sig": false, "md5_digest": "f76006ec75b19c5f313a4c2d3cc26a33", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 15349, "upload_time": "2019-01-22T18:50:32", "url": "https://files.pythonhosted.org/packages/94/5f/60d8c9b58b32f56523914e75e82321e4035ba8f04a5812fd09de648756ed/amqp_dispatcher-0.11.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "21f3416ef19c54d52300e2f93e0a9fcd", "sha256": "4e95d2b4f61295902a825fd3061a84ecb6adc5b1f09351d717eb93dec0fa147f" }, "downloads": -1, "filename": "amqp-dispatcher-0.11.0.tar.gz", "has_sig": false, "md5_digest": "21f3416ef19c54d52300e2f93e0a9fcd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17975, "upload_time": "2019-01-22T18:50:31", "url": "https://files.pythonhosted.org/packages/20/55/76ff1dbd626f41202c4edf78cfcda82126b0ed1374e80c631b22f50cccba/amqp-dispatcher-0.11.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "b0f98db0b235ad7e9da1ab4aa99aa6af", "sha256": "1f68d41cc0558f84252136b17f2475660e5ab73ee7e44f7bc4ab1ab54d0e4dd2" }, "downloads": -1, "filename": "amqp-dispatcher-0.2.1.tar.gz", "has_sig": false, "md5_digest": "b0f98db0b235ad7e9da1ab4aa99aa6af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6892, "upload_time": "2015-07-05T07:12:46", "url": "https://files.pythonhosted.org/packages/42/1a/31994b53b5164a82a88b4c0afa0f79f64f341ae42a535c0ea474b8fcabd7/amqp-dispatcher-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "1fbfb221704b8f6b8c2736f9c0f88c4f", "sha256": "2607afcdadcb07a777baf542ad4c7545295dcb5a4b76ebefa09208f9dcabd159" }, "downloads": -1, "filename": "amqp-dispatcher-0.2.2.tar.gz", "has_sig": false, "md5_digest": "1fbfb221704b8f6b8c2736f9c0f88c4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6982, "upload_time": "2015-07-05T08:29:46", "url": "https://files.pythonhosted.org/packages/2f/75/094959598a3797265b19ed89cf845b93502d46085a4d4f230ad2c327cd98/amqp-dispatcher-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "40d0e8606a0d18ae3a716cbb9898f296", "sha256": "91aa735d2d0558dee8d098e1649ee46520fff5ee91c8850c3337047a84b93fa0" }, "downloads": -1, "filename": "amqp-dispatcher-0.3.0.tar.gz", "has_sig": false, "md5_digest": "40d0e8606a0d18ae3a716cbb9898f296", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10964, "upload_time": "2015-07-07T21:12:11", "url": "https://files.pythonhosted.org/packages/a9/78/4cf3cef89ce32e4133ace1c510191d605ffa6fa2e712cbbd84ba4c24a6fc/amqp-dispatcher-0.3.0.tar.gz" } ], "0.3.1": [], "0.3.2": [ { "comment_text": "", "digests": { "md5": "38785babe3513eb256f577ac34244ce7", "sha256": "e7d41d5eaff73648029b5f20d63957cc2694e1f0d0793a989af835e2b300afde" }, "downloads": -1, "filename": "amqp-dispatcher-0.3.2.tar.gz", "has_sig": false, "md5_digest": "38785babe3513eb256f577ac34244ce7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14118, "upload_time": "2015-08-07T18:57:11", "url": "https://files.pythonhosted.org/packages/17/fd/d386c3f058981c8045ab0210235ba191a2f513454269e2233014c72216a2/amqp-dispatcher-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "09f97dbe28f866de77f32a24263d8c6a", "sha256": "98919342356a5be7e0f7978c75a69d9403b8f310fb947d23320bd2bcd45ceee3" }, "downloads": -1, "filename": "amqp-dispatcher-0.3.3.tar.gz", "has_sig": false, "md5_digest": "09f97dbe28f866de77f32a24263d8c6a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14250, "upload_time": "2015-08-07T19:11:07", "url": "https://files.pythonhosted.org/packages/10/46/b37dabd5cacc826e4bb495db0438fc1885cb6ce0d3c2d9eefaddfe4fe1ac/amqp-dispatcher-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "dd8464a4f258a3dc81c414aff4b08ec6", "sha256": "561c43c58ae32d15f9133cea3f2d7dac5f7da7b13938331b746f08488fd1b41d" }, "downloads": -1, "filename": "amqp_dispatcher-0.3.4-py2-none-any.whl", "has_sig": false, "md5_digest": "dd8464a4f258a3dc81c414aff4b08ec6", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 15485, "upload_time": "2015-08-07T19:26:30", "url": "https://files.pythonhosted.org/packages/b7/fd/83bbe9ed7faea0658a5e37d59621c9533a0eeae6c2ca7b4ae586ac0065f4/amqp_dispatcher-0.3.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2883639180fe12681eef1c3389260432", "sha256": "c1e432b870b465fbe4ac0f1d9fe4e35143f3ce744325f0470f25ae03a009390b" }, "downloads": -1, "filename": "amqp-dispatcher-0.3.4.tar.gz", "has_sig": false, "md5_digest": "2883639180fe12681eef1c3389260432", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14339, "upload_time": "2015-08-07T19:26:27", "url": "https://files.pythonhosted.org/packages/51/dd/7bd4b9c4a2787931f977a2440247e5a31df05900e74eacc990ae1eac53c6/amqp-dispatcher-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "b25687a68574f82df7b32f1bddb1530d", "sha256": "f1901b9a52a3487fd68ea02226fb0838b2e05557cf58cfab7bc38b51c91987f1" }, "downloads": -1, "filename": "amqp_dispatcher-0.3.5-py2-none-any.whl", "has_sig": false, "md5_digest": "b25687a68574f82df7b32f1bddb1530d", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 15485, "upload_time": "2015-08-07T19:37:00", "url": "https://files.pythonhosted.org/packages/33/9f/080a9416a68cc7ccda9c849b2e93ae0a26c56809a7b430e093c8246f9a29/amqp_dispatcher-0.3.5-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4a66cfc9a5c691c5831b7c0a0d7dad8d", "sha256": "063b90d1ec0fd3b69cc219ae3bd5f3978d38453aa2f5c9b36600c4b1b8de6736" }, "downloads": -1, "filename": "amqp-dispatcher-0.3.5.tar.gz", "has_sig": false, "md5_digest": "4a66cfc9a5c691c5831b7c0a0d7dad8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14376, "upload_time": "2015-08-07T19:36:57", "url": "https://files.pythonhosted.org/packages/24/d9/d3803089e8fdc10b2f5a9c1da3a4b3232735a30070d29063eb3aa0e529c2/amqp-dispatcher-0.3.5.tar.gz" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "1d05660adfeb30a3c1e8dfec026e29c3", "sha256": "2bdc8c54afc4a63be0e923cd7181f92083adcccaf523439d7c2c3e164da239b3" }, "downloads": -1, "filename": "amqp_dispatcher-0.3.6-py2-none-any.whl", "has_sig": false, "md5_digest": "1d05660adfeb30a3c1e8dfec026e29c3", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 15582, "upload_time": "2015-09-03T16:21:08", "url": "https://files.pythonhosted.org/packages/3d/1f/e2988d48ef55570bea5aaceb426131b8f1e3f82530f6346974295739d890/amqp_dispatcher-0.3.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "35f9174ed332f14d63eff39e4af0ce38", "sha256": "65fbeee3860c970dcc69c2d5d5598dabb375eb9d0f2d14b35ae8479df7710bc8" }, "downloads": -1, "filename": "amqp-dispatcher-0.3.6.tar.gz", "has_sig": false, "md5_digest": "35f9174ed332f14d63eff39e4af0ce38", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14548, "upload_time": "2015-09-03T16:21:02", "url": "https://files.pythonhosted.org/packages/fb/16/4ad3b4c86f639cadd0e3bf8984398fafe89ba5f9fc4483a54f17bf0817f6/amqp-dispatcher-0.3.6.tar.gz" } ], "0.3.7": [ { "comment_text": "", "digests": { "md5": "d43ee5be3f238628cdf0f707a179c031", "sha256": "92fb8f84e5d2ef00e9e44363b9b777d790eb03d2a0ab876c43a0b9a754ca19de" }, "downloads": -1, "filename": "amqp_dispatcher-0.3.7-py2-none-any.whl", "has_sig": false, "md5_digest": "d43ee5be3f238628cdf0f707a179c031", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 15591, "upload_time": "2015-09-03T16:25:35", "url": "https://files.pythonhosted.org/packages/27/fb/088c03dd1a27fe865f4e93f8e7f549de4968a0415e67732e8e49b26e87cd/amqp_dispatcher-0.3.7-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d553cf486d8948bb102a23b9a8624cc1", "sha256": "acc715d80f6ed0bbf358263134dbc35bd116dec674ed2cb9af31c48a4a6493ee" }, "downloads": -1, "filename": "amqp-dispatcher-0.3.7.tar.gz", "has_sig": false, "md5_digest": "d553cf486d8948bb102a23b9a8624cc1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14550, "upload_time": "2015-09-03T16:25:32", "url": "https://files.pythonhosted.org/packages/4a/bf/d6139d13742dd352f2738d4910695a8a184aedc0e90b83e128bf540efcee/amqp-dispatcher-0.3.7.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "5ffbb38cc5357d48a5624955885de223", "sha256": "da7927d6e9a471346b74cb26942457c17172f2d9b3dced4c9420f27b7527f5e3" }, "downloads": -1, "filename": "amqp_dispatcher-0.4.0-py2-none-any.whl", "has_sig": false, "md5_digest": "5ffbb38cc5357d48a5624955885de223", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 16770, "upload_time": "2015-09-12T18:16:10", "url": "https://files.pythonhosted.org/packages/23/8a/e1899a5c01cac3628d9485e553b220e956f493b4e9a41b7e3cbc631b3f7e/amqp_dispatcher-0.4.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3d5bbcfd981a18424f90c56481a33163", "sha256": "979ad4c03a243df3a5bb1dfe3647270d9712d9776e3f446df62d3f6eb40553a2" }, "downloads": -1, "filename": "amqp-dispatcher-0.4.0.tar.gz", "has_sig": false, "md5_digest": "3d5bbcfd981a18424f90c56481a33163", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15443, "upload_time": "2015-09-12T18:16:03", "url": "https://files.pythonhosted.org/packages/57/f1/1cfc97b5d00f6782f0d1b81cc10a568d6d2a0be378647a62075ac688f7c1/amqp-dispatcher-0.4.0.tar.gz" } ], "0.4.1": [], "0.4.2": [ { "comment_text": "", "digests": { "md5": "28b1e20b9b7e1c0107a6175d41309218", "sha256": "28cef068594bde8b2117f106998c40775bcc88ecb77497a6e708baf1e68ed4c0" }, "downloads": -1, "filename": "amqp_dispatcher-0.4.2-py2-none-any.whl", "has_sig": false, "md5_digest": "28b1e20b9b7e1c0107a6175d41309218", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 16802, "upload_time": "2015-09-12T18:23:55", "url": "https://files.pythonhosted.org/packages/68/89/b5ad6691109263304443d10d2cd1435b8cbace8e248a37b5d5f6d284a6f9/amqp_dispatcher-0.4.2-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f14c59b74561e994733b8b05b6db2263", "sha256": "933ebd490d08754b1b05045531c74846d20e5bea706f46b87c0bba5b97bde857" }, "downloads": -1, "filename": "amqp-dispatcher-0.4.2.tar.gz", "has_sig": false, "md5_digest": "f14c59b74561e994733b8b05b6db2263", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15501, "upload_time": "2015-09-12T18:23:50", "url": "https://files.pythonhosted.org/packages/32/ed/2e1a5958f7fd11f5df67b624353f252afdfeb9c2e332a91953944cc3b5ed/amqp-dispatcher-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "5a1c15c688c7fc67214c6028be0f3d72", "sha256": "2f45d25906862ed8ce5d6b06ef52f3e5b280259856bded422094194dcb3f24d1" }, "downloads": -1, "filename": "amqp_dispatcher-0.4.3-py2-none-any.whl", "has_sig": false, "md5_digest": "5a1c15c688c7fc67214c6028be0f3d72", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 16794, "upload_time": "2015-09-12T18:48:33", "url": "https://files.pythonhosted.org/packages/40/c7/8abed1d29f9d3f977e0db06c4f8ced496cce5db6e4a34361e94b371e646d/amqp_dispatcher-0.4.3-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9d079b3e499d48ee3f83d54d0b73b77e", "sha256": "2d7b44ce6fe19de577ad65f095fc691ffa02514cd052f7af9c3ee8b3931b08a3" }, "downloads": -1, "filename": "amqp-dispatcher-0.4.3.tar.gz", "has_sig": false, "md5_digest": "9d079b3e499d48ee3f83d54d0b73b77e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15560, "upload_time": "2015-09-12T18:48:28", "url": "https://files.pythonhosted.org/packages/06/42/690ee4ff8ee2916f65d015855d4d1631ac8df9814e6d95fe80f8082e3255/amqp-dispatcher-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "b358ec4037513f4f96dc5a7d5f0875d8", "sha256": "ba534f24a1b979c410757c4a5456affcf3a76fd7cb705d4878efe29b242b802d" }, "downloads": -1, "filename": "amqp_dispatcher-0.4.4-py2-none-any.whl", "has_sig": false, "md5_digest": "b358ec4037513f4f96dc5a7d5f0875d8", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 16923, "upload_time": "2015-11-25T08:08:42", "url": "https://files.pythonhosted.org/packages/d0/5e/c18e14537590b64e874454b2fab14b5a2143bd4651424a7dddd48ef1d43f/amqp_dispatcher-0.4.4-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "742fe4ef649ec72f57b47fd154a5955f", "sha256": "ad2284d6c51d120e6212796c6b8a01d804282afb2a7b1fb53929ede65b757eff" }, "downloads": -1, "filename": "amqp-dispatcher-0.4.4.tar.gz", "has_sig": false, "md5_digest": "742fe4ef649ec72f57b47fd154a5955f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15755, "upload_time": "2015-11-25T08:08:31", "url": "https://files.pythonhosted.org/packages/0c/d6/56b47b9334a6bdd0be76b6ebf448c274526da9c12f17db82ed1dd1e008cb/amqp-dispatcher-0.4.4.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "5b9da3eb9a084a32924e7a6a58a8c653", "sha256": "c3764af20029dee670bc80430f349ee58b2892117a93d342e2dfb5496943d8ab" }, "downloads": -1, "filename": "amqp_dispatcher-0.5.0-py2-none-any.whl", "has_sig": false, "md5_digest": "5b9da3eb9a084a32924e7a6a58a8c653", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17254, "upload_time": "2015-12-15T20:42:56", "url": "https://files.pythonhosted.org/packages/0f/54/bc8571149e13d84834e28ad81c59e7aaa5c659e256a8033335f78669cbcb/amqp_dispatcher-0.5.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5aabe06c5f07e8c73e46e94b20e4012a", "sha256": "5ec470e7989152ebfec3cc75e5a60ea432781452f1b2f092a847cda71c5f0f62" }, "downloads": -1, "filename": "amqp-dispatcher-0.5.0.tar.gz", "has_sig": false, "md5_digest": "5aabe06c5f07e8c73e46e94b20e4012a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16250, "upload_time": "2015-12-15T20:42:50", "url": "https://files.pythonhosted.org/packages/96/a5/a988d8a63f3d492d14b3e4f05d53ea7701253606ecbd3a4d3493258418fa/amqp-dispatcher-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "c1a3daf04d33efc4472923068d7e427a", "sha256": "34d7c31363cc12cbee42516189d907a96102c68144959e66ac394581a2df8832" }, "downloads": -1, "filename": "amqp_dispatcher-0.5.1-py2-none-any.whl", "has_sig": false, "md5_digest": "c1a3daf04d33efc4472923068d7e427a", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17248, "upload_time": "2015-12-15T22:14:17", "url": "https://files.pythonhosted.org/packages/e9/27/e56bf5f932c35c732e7c1688218ab9652467d152e3629a60f6df59923823/amqp_dispatcher-0.5.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cf8f7243320eb5712e9db32bc0fab359", "sha256": "85a45e61590e3d845344dc27817a664e64fa146aacc71910a4f4fe9351f6b858" }, "downloads": -1, "filename": "amqp-dispatcher-0.5.1.tar.gz", "has_sig": false, "md5_digest": "cf8f7243320eb5712e9db32bc0fab359", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16256, "upload_time": "2015-12-15T22:14:09", "url": "https://files.pythonhosted.org/packages/2c/20/922f6703f0fdd8f6f04a26a0eb6450fb08565603cf974319aa1702b9666e/amqp-dispatcher-0.5.1.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "2390e7aa4a4490a7cf903ed76f6ddbfe", "sha256": "a89f28bb1a90e46f2e1511aea75cae26e03972f8f863b7cbecfd7af29b56b5e2" }, "downloads": -1, "filename": "amqp_dispatcher-0.6.0-py2-none-any.whl", "has_sig": false, "md5_digest": "2390e7aa4a4490a7cf903ed76f6ddbfe", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17011, "upload_time": "2016-02-16T21:01:24", "url": "https://files.pythonhosted.org/packages/99/71/a33333707363fb7ed1fa8ce7e8db840a5b08780e6a2132b76b7cd9397ce6/amqp_dispatcher-0.6.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a620724d4648bbac00cb08e71365b802", "sha256": "84a61d7ac463a0ffdb92311c4b35eaef51b6ce6ca7c9374dac91a8653f9996d7" }, "downloads": -1, "filename": "amqp-dispatcher-0.6.0.tar.gz", "has_sig": false, "md5_digest": "a620724d4648bbac00cb08e71365b802", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16262, "upload_time": "2016-02-16T21:01:15", "url": "https://files.pythonhosted.org/packages/37/f8/bd3b47130955f834649d4fe63efbbb5f60066d1fbc963129813c61541d5f/amqp-dispatcher-0.6.0.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "de7d18a05c2482224a8dd6c89acd58d1", "sha256": "5e3833af55f8c4a06b7e7e04fe03ea202bd5f30bff8add3883dbae2e60f8df15" }, "downloads": -1, "filename": "amqp_dispatcher-0.7.0-py2-none-any.whl", "has_sig": false, "md5_digest": "de7d18a05c2482224a8dd6c89acd58d1", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17595, "upload_time": "2016-02-18T05:02:11", "url": "https://files.pythonhosted.org/packages/de/6b/7691882230dada1683a0d15c106327854e225b0ea09227ba93fd5f162c9a/amqp_dispatcher-0.7.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8c859448c56166ad1306d17414b232d6", "sha256": "23949814e357d31bc03eca5dc70d3f8cfb3024050e31e84b6714efc254c97e2a" }, "downloads": -1, "filename": "amqp-dispatcher-0.7.0.tar.gz", "has_sig": false, "md5_digest": "8c859448c56166ad1306d17414b232d6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16931, "upload_time": "2016-02-18T05:02:03", "url": "https://files.pythonhosted.org/packages/db/61/69f730f8413ca9cfd521f40b4cab6175ff4e0e47bf51174e56099f3e63b5/amqp-dispatcher-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "5c5b4eec53ac321ee36d3004f53e424d", "sha256": "da3ab3c6a8bde482c6f4a433e2a637fcc8c2abd6b098795dc05e7db850ba23ec" }, "downloads": -1, "filename": "amqp_dispatcher-0.7.1-py2-none-any.whl", "has_sig": false, "md5_digest": "5c5b4eec53ac321ee36d3004f53e424d", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17592, "upload_time": "2016-02-22T22:43:54", "url": "https://files.pythonhosted.org/packages/bb/af/5dbe5e9919801e41aea45ed6f18b052659473ec2b9b23e5f4ef76432761b/amqp_dispatcher-0.7.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7adbe36428e6dd724305942a347ad975", "sha256": "d7a8ad4d7364841c9f79093bd672445af51c5994435fef5895ddfe30efb6882a" }, "downloads": -1, "filename": "amqp-dispatcher-0.7.1.tar.gz", "has_sig": false, "md5_digest": "7adbe36428e6dd724305942a347ad975", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16966, "upload_time": "2016-02-22T22:43:48", "url": "https://files.pythonhosted.org/packages/75/be/4676d858c63d257d7c3039c64e0081231e9cc474cbec202d0467a4f3df12/amqp-dispatcher-0.7.1.tar.gz" } ], "0.8.0": [ { "comment_text": "", "digests": { "md5": "5b80e309353a53d78348798545a82d76", "sha256": "01a44d1dde99831fce4f0288cc0d55a2a8fe9a9bd165e0bbada1497dda5ce3e9" }, "downloads": -1, "filename": "amqp_dispatcher-0.8.0-py2-none-any.whl", "has_sig": false, "md5_digest": "5b80e309353a53d78348798545a82d76", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17885, "upload_time": "2016-02-23T17:34:43", "url": "https://files.pythonhosted.org/packages/e8/b0/b112451974a0a2703e326a65ed21e25699bd216c55c5583facea99752dd1/amqp_dispatcher-0.8.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9468a6611b3d359248634803bdcea7eb", "sha256": "f057ff5cd7007ce35b6c376d959e1275d1e3f2e368ff2b8c58fd7fcbd8e2d5a0" }, "downloads": -1, "filename": "amqp-dispatcher-0.8.0.tar.gz", "has_sig": false, "md5_digest": "9468a6611b3d359248634803bdcea7eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17183, "upload_time": "2016-02-23T17:34:36", "url": "https://files.pythonhosted.org/packages/47/e3/3c1d1af9e911d8ce0190a2a6055adec1bfbd842aa0c3759719454ed29022/amqp-dispatcher-0.8.0.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "c61b6b068a35e769a0adca474dd8435c", "sha256": "a9bcd450986e4b11ff27dee9b525a26c3e9588a491b68e0e304185f1d99d15ce" }, "downloads": -1, "filename": "amqp_dispatcher-0.8.1-py2-none-any.whl", "has_sig": false, "md5_digest": "c61b6b068a35e769a0adca474dd8435c", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17643, "upload_time": "2016-10-31T18:15:54", "url": "https://files.pythonhosted.org/packages/ce/1e/c55f740dda940bef872623e112bde80c852acd8da0d15819f8cc0e0d09df/amqp_dispatcher-0.8.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c2c51a888e499ae02637ac57fe6323bb", "sha256": "7a57fa2bf34f0700429f2035c9eb23cb226a32890e675564f32af7cd83b71fe2" }, "downloads": -1, "filename": "amqp-dispatcher-0.8.1.tar.gz", "has_sig": false, "md5_digest": "c2c51a888e499ae02637ac57fe6323bb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17166, "upload_time": "2016-10-31T18:15:52", "url": "https://files.pythonhosted.org/packages/28/66/332860b91d24d4d4c6071b44a265cd12cb883ae64d51068aa759255ea6cb/amqp-dispatcher-0.8.1.tar.gz" } ], "0.9.0": [ { "comment_text": "", "digests": { "md5": "62d54119f49b751dc8812cbcb9ff2220", "sha256": "00b727a56bb1075b6b22b62b3b8641c9a0dd9b76b6d799a7012bf8da6fbedda3" }, "downloads": -1, "filename": "amqp_dispatcher-0.9.0-py2-none-any.whl", "has_sig": false, "md5_digest": "62d54119f49b751dc8812cbcb9ff2220", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17793, "upload_time": "2017-06-05T03:22:55", "url": "https://files.pythonhosted.org/packages/e7/12/363cebff7099277f8652a95a77ae80ebb8480ed56378319ad64bda91d4a5/amqp_dispatcher-0.9.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fc26ad32181c5def7db2fcd4c257b391", "sha256": "de63f98b3f9acd1a216311d1c793ba2e66cd7983041985ea4ef5a6892bcf426b" }, "downloads": -1, "filename": "amqp-dispatcher-0.9.0.tar.gz", "has_sig": false, "md5_digest": "fc26ad32181c5def7db2fcd4c257b391", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17455, "upload_time": "2017-06-05T03:22:53", "url": "https://files.pythonhosted.org/packages/35/ea/fc0afd48676db929807797e21a8cfb9d45cf5eea978eacb94359931038f2/amqp-dispatcher-0.9.0.tar.gz" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "91b107361414b0b4e8f053c791c681c7", "sha256": "ca7bf6f720ee269c0a13f74a12743859d41fd298692987a16dd1a91da4446b23" }, "downloads": -1, "filename": "amqp_dispatcher-0.9.1-py2-none-any.whl", "has_sig": false, "md5_digest": "91b107361414b0b4e8f053c791c681c7", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 17796, "upload_time": "2017-06-05T04:01:56", "url": "https://files.pythonhosted.org/packages/e4/5a/d89d79b2a598bbd2527a9ec1ab0f6d1522da0a01a8b68b93578aa7fc19dd/amqp_dispatcher-0.9.1-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eabe2ae66e5393dc21821f762e9c0cc3", "sha256": "838d92c0d97e5d991c750b1a8059524e8342e949d14d4c4f7067b991480b3f43" }, "downloads": -1, "filename": "amqp-dispatcher-0.9.1.tar.gz", "has_sig": false, "md5_digest": "eabe2ae66e5393dc21821f762e9c0cc3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17537, "upload_time": "2017-06-05T04:01:54", "url": "https://files.pythonhosted.org/packages/52/3b/f9c8cf6591373b1300032d9537636a8eb9909e5a5366d7a5ba2dc665a319/amqp-dispatcher-0.9.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f76006ec75b19c5f313a4c2d3cc26a33", "sha256": "691e4361aea8a250afb7d15bb23834c7b7d431f8d45110094b12f0b4d5223e54" }, "downloads": -1, "filename": "amqp_dispatcher-0.11.0-py2-none-any.whl", "has_sig": false, "md5_digest": "f76006ec75b19c5f313a4c2d3cc26a33", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 15349, "upload_time": "2019-01-22T18:50:32", "url": "https://files.pythonhosted.org/packages/94/5f/60d8c9b58b32f56523914e75e82321e4035ba8f04a5812fd09de648756ed/amqp_dispatcher-0.11.0-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "21f3416ef19c54d52300e2f93e0a9fcd", "sha256": "4e95d2b4f61295902a825fd3061a84ecb6adc5b1f09351d717eb93dec0fa147f" }, "downloads": -1, "filename": "amqp-dispatcher-0.11.0.tar.gz", "has_sig": false, "md5_digest": "21f3416ef19c54d52300e2f93e0a9fcd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17975, "upload_time": "2019-01-22T18:50:31", "url": "https://files.pythonhosted.org/packages/20/55/76ff1dbd626f41202c4edf78cfcda82126b0ed1374e80c631b22f50cccba/amqp-dispatcher-0.11.0.tar.gz" } ] }