{
"info": {
"author": "Jay Marcyes",
"author_email": "jay@marcyes.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 4 - Beta",
"Environment :: Web Environment",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 2.7",
"Topic :: Database",
"Topic :: Software Development :: Libraries",
"Topic :: Utilities"
],
"description": "Morp\n====\n\nSend messages without really thinking about it. Currently works with\nAmazon\u2019s `SQS `__.\n\n1 Minute Getting Started\n------------------------\n\nSend and receive a ``Foo`` message.\n\nFirst, let\u2019s set our environment variable:\n\n::\n\n export MORP_DSN=morp.interface.sqs.SQS://AWS_ID:AWS_KEY@\n\nSecond, let\u2019s create a ``Foo`` class:\n\n.. code:: python\n\n import morp\n\n class Foo(morp.Message):\n def target(self):\n # this will be run when a message is consumed\n print(self.fields)\n\nThird, let\u2019s start our message consumer\n\n::\n\n $ morp --quiet\n\nFourth, let\u2019s send a message:\n\n.. code:: python\n\n f = Foo()\n f.some_field = 1\n f.some_other_field = 2\n f.send()\n\nAnd we\u2019re done, take a look in the `example\nfolder `__ for\nthe actual code.\n\nDSN\n---\n\nYou configure your connection using a dsn in the form:\n\n::\n\n InterfaceName://username:password@?param1=value1¶m2=value2\n\nSo, to connect to SQS, you would do:\n\n::\n\n morp.interface.sqs.SQS://AWS_ID:AWS_KEY@\n\nYou can also override some default values like ``region`` and\n``read_lock``:\n\n::\n\n morp.interface.sqs.SQS://AWS_ID:AWS_KEY@?region=us-west-1&read_lock=120\n\nEncryption\n----------\n\nIf you would like to encrypt all your messages, you can pass in a\n``key`` or ``keyfile`` argument to your dsn that either contains a key\nor a path to a key file and Morp will take care of encrypting and\ndecrypting the messages for you transparently.\n\nIf we just want to have a key, let\u2019s just modify our dsn:\n\n::\n\n morp.interface.sqs.SQS://AWS_ID:AWS_KEY@?key=jy4XWRuEsrH98RD2VeLG62uVLCPWpdUh\n\nTo use a keyfile, let\u2019s first generate a key file:\n\n::\n\n openssl rand -base64 256 > /tmp/keyfile.key\n\nAnd modify our dsn:\n\n::\n\n morp.interface.sqs.SQS://AWS_ID:AWS_KEY@?keyfile=/tmp/keyfile.key\n\nThat\u2019s it, every message will now be encrypted on send and decrypted on\nreceive.\n\nEnvironment configuration\n-------------------------\n\nMORP_DISABLED\n~~~~~~~~~~~~~\n\nBy default every message will be sent, if you just want to test\nfunctionality without actually sending the message you can set this\nenvironment variable to turn off all the queues.\n\n::\n\n MORP_DISABLED = 1 # queue is off\n MORP_DISABLED = 0 # queue is on\n\nMORP_PREFIX\n~~~~~~~~~~~\n\nBy default, the queue name is just the class name, but if you would like\nto have that prefixed with something (eg, ``prod`` or ``dev``) then you\ncan set this environment variable and it will be prefixed to the queue\nname.\n\nMORP_DSN\n~~~~~~~~\n\nIf you set the environment variable ``MORP_DSN`` with your connection\ndsn, morp will automatically configure itself on first import.\n\nFAQ\n---\n\nI would like to have multiple queues\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nBy default, Morp will send any message from any ``morp.Message`` derived\nclass to ``Message.get_name()``, you can override this behavior by\ngiving your child class a ``.name`` attribute:\n\n.. code:: python\n\n class childMsg(morp.Message):\n name = \"custom-queue-name\"\n\nNow, you can have the Morp command line consumer read from that queue\ninstead:\n\n::\n\n $ morp --quiet=\"\" custom-queue-name\n\nInstallation\n------------\n\nUse pip:\n\n::\n\n pip install morp\n",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "http://github.com/Jaymon/morp",
"keywords": "Amazon AWS SQS messages message-passing",
"license": "MIT",
"maintainer": "",
"maintainer_email": "",
"name": "morp",
"package_url": "https://pypi.org/project/morp/",
"platform": "",
"project_url": "https://pypi.org/project/morp/",
"project_urls": {
"Homepage": "http://github.com/Jaymon/morp"
},
"release_url": "https://pypi.org/project/morp/1.0.1/",
"requires_dist": null,
"requires_python": "",
"summary": "Send and receive messages without thinking about it",
"version": "1.0.1"
},
"last_serial": 5519577,
"releases": {
"0.1": [
{
"comment_text": "",
"digests": {
"md5": "1a8043afcc9af1883f1c1624ae2a2e9a",
"sha256": "7fae3b982f5189fae71d55cead30986ad0107f680b437194f1d4a7d9830dd2f5"
},
"downloads": -1,
"filename": "morp-0.1.tar.gz",
"has_sig": false,
"md5_digest": "1a8043afcc9af1883f1c1624ae2a2e9a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6668,
"upload_time": "2013-08-27T01:44:24",
"url": "https://files.pythonhosted.org/packages/9e/f3/3b7ba1932ef42f163c4e31dfa640ebae647b0ec796f8f491db45be1b7d3c/morp-0.1.tar.gz"
}
],
"0.2": [
{
"comment_text": "",
"digests": {
"md5": "05ad470439731106d77d8d8dedf1c97b",
"sha256": "55793778cf01187f719fbf26ea4eac6349df18091356488328a863ad30854733"
},
"downloads": -1,
"filename": "morp-0.2.tar.gz",
"has_sig": false,
"md5_digest": "05ad470439731106d77d8d8dedf1c97b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7119,
"upload_time": "2014-08-29T00:44:19",
"url": "https://files.pythonhosted.org/packages/9c/f8/95b15f00ec91b94147c8f4071088ea76025a1e26c06b6e23e93012b8d9e4/morp-0.2.tar.gz"
}
],
"0.2.1": [
{
"comment_text": "",
"digests": {
"md5": "2bac196b8ff65ad698bdc6a7e602c901",
"sha256": "525b21fec4f0b136216acdfdbb135e21745e7ecff1ed6504a3be92404ba6d099"
},
"downloads": -1,
"filename": "morp-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "2bac196b8ff65ad698bdc6a7e602c901",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7135,
"upload_time": "2014-08-29T00:49:37",
"url": "https://files.pythonhosted.org/packages/76/3b/05a386ef7e0bf1b3175ae2cf857f9118913278a9eb67d3efd47f35b4ff59/morp-0.2.1.tar.gz"
}
],
"0.2.6": [
{
"comment_text": "",
"digests": {
"md5": "b0f5323458d34d458636be77dd257878",
"sha256": "cfdb57ffcb65b509cf445381d86fb6f512bd38812f2f2ed7320ccbe5f5274e7d"
},
"downloads": -1,
"filename": "morp-0.2.6.tar.gz",
"has_sig": false,
"md5_digest": "b0f5323458d34d458636be77dd257878",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7411,
"upload_time": "2014-09-03T00:29:26",
"url": "https://files.pythonhosted.org/packages/5b/28/e8ed09be59190bb42838eac482f10ffeb48dc365a766bc15219ee91ed1f1/morp-0.2.6.tar.gz"
}
],
"0.2.7": [
{
"comment_text": "",
"digests": {
"md5": "a321db3c2e17aa58b0b661d5b4ea01de",
"sha256": "72d01b55fb0c450c97d2458d29464e2b5420e7e1b9857fe3d79c7b6d03c33c69"
},
"downloads": -1,
"filename": "morp-0.2.7.tar.gz",
"has_sig": false,
"md5_digest": "a321db3c2e17aa58b0b661d5b4ea01de",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7459,
"upload_time": "2014-09-03T01:16:43",
"url": "https://files.pythonhosted.org/packages/f8/75/dc6bd7039fe233dffd14f87cc48eb5fd65a063643876989912760de68ee8/morp-0.2.7.tar.gz"
}
],
"0.2.8": [
{
"comment_text": "",
"digests": {
"md5": "6e6ad583473d2546d8199b8166ade190",
"sha256": "8ce0adbe1ba20977591381d4724e8a8faa2f861b4eb360edb491b0b31b19968d"
},
"downloads": -1,
"filename": "morp-0.2.8.tar.gz",
"has_sig": false,
"md5_digest": "6e6ad583473d2546d8199b8166ade190",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7485,
"upload_time": "2014-09-11T00:38:37",
"url": "https://files.pythonhosted.org/packages/68/a0/2ae84f58704694884241369de4ce04a8daac0beb4015fb96bdd2eff3193b/morp-0.2.8.tar.gz"
}
],
"0.2.9": [
{
"comment_text": "",
"digests": {
"md5": "dd1f20b5dca36920f17765ded4a3afd7",
"sha256": "59e25f46cab4b0801ca76823b6a1436a9b88150631e60783479ad3dc2268503d"
},
"downloads": -1,
"filename": "morp-0.2.9.tar.gz",
"has_sig": false,
"md5_digest": "dd1f20b5dca36920f17765ded4a3afd7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8409,
"upload_time": "2015-03-27T03:18:46",
"url": "https://files.pythonhosted.org/packages/13/f1/f32dd1e56eb9ec17eb6e0fca20a5d57d242386ffbf5bac1909f737944996/morp-0.2.9.tar.gz"
}
],
"0.3.0": [
{
"comment_text": "",
"digests": {
"md5": "4c974d118615912a42b390876062f6f2",
"sha256": "869075aeabc2a26ef7a09acefcbb68d51267b3ad3fcb29172b8ca98527c61951"
},
"downloads": -1,
"filename": "morp-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "4c974d118615912a42b390876062f6f2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8980,
"upload_time": "2015-04-15T22:21:39",
"url": "https://files.pythonhosted.org/packages/fe/11/6ae7f636b986db6b8b694a40c9f10132b84fa268d0e389ae06287b286fc2/morp-0.3.0.tar.gz"
}
],
"0.3.1": [
{
"comment_text": "",
"digests": {
"md5": "d90c47dd591906a1133da56c93553ade",
"sha256": "e4b727b67e06c940afc9ebdac4e34ff3b3ba495066d746a04d5861bacf47d261"
},
"downloads": -1,
"filename": "morp-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "d90c47dd591906a1133da56c93553ade",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9084,
"upload_time": "2015-06-26T01:42:54",
"url": "https://files.pythonhosted.org/packages/71/ee/aab2b835a1aa295efda623d12179de488587fd8c5ee4e92fa50d32d64f76/morp-0.3.1.tar.gz"
}
],
"0.3.3": [
{
"comment_text": "",
"digests": {
"md5": "407946a514aa700981204f3590916ef7",
"sha256": "73ff0932513f134672f12d2defdad9de4e34a921f047fec7633091d2b04708df"
},
"downloads": -1,
"filename": "morp-0.3.3.tar.gz",
"has_sig": false,
"md5_digest": "407946a514aa700981204f3590916ef7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9183,
"upload_time": "2015-09-11T04:08:39",
"url": "https://files.pythonhosted.org/packages/35/e4/adbc8ac34045ee515608dee31868dde0562d191aa1dd9a9224d342e7dcc8/morp-0.3.3.tar.gz"
}
],
"0.3.4": [
{
"comment_text": "",
"digests": {
"md5": "5c55dcff96f3330aaabcde4dc24d21dc",
"sha256": "25ed9bcd158cf9ff8b817520d8d78e1cf3db866b59fdbd0f955fd39982c4946d"
},
"downloads": -1,
"filename": "morp-0.3.4.tar.gz",
"has_sig": false,
"md5_digest": "5c55dcff96f3330aaabcde4dc24d21dc",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9530,
"upload_time": "2016-04-27T23:42:38",
"url": "https://files.pythonhosted.org/packages/66/33/3747a84b60a70ca28677024306cfdd2c8ec635624c170b828abcd8d18011/morp-0.3.4.tar.gz"
}
],
"0.3.5": [
{
"comment_text": "",
"digests": {
"md5": "bfb766e1ed33ca463874e9a94971602e",
"sha256": "06bba2ba3df83da4127177dfdcad3ad5afbe19d970230118b975bace4d7c1b79"
},
"downloads": -1,
"filename": "morp-0.3.5.tar.gz",
"has_sig": false,
"md5_digest": "bfb766e1ed33ca463874e9a94971602e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11247,
"upload_time": "2016-07-19T20:56:11",
"url": "https://files.pythonhosted.org/packages/5c/0e/66cbb24ab5ffa5e45ca94f3f4b11932997fc9fb0885ea9a8bed883339e38/morp-0.3.5.tar.gz"
}
],
"0.3.6": [
{
"comment_text": "",
"digests": {
"md5": "98ec9741f8de70685a82ee0f1b97eaef",
"sha256": "7faf4a45e8c9ec17fef13472a4047cc676afdb88e9892ce3a998fae0b8b85d31"
},
"downloads": -1,
"filename": "morp-0.3.6.tar.gz",
"has_sig": false,
"md5_digest": "98ec9741f8de70685a82ee0f1b97eaef",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 11256,
"upload_time": "2017-02-01T23:26:39",
"url": "https://files.pythonhosted.org/packages/ee/65/9744db6dc82947d6583e40f9d3331f147251b81e21b518d64fce603dc65b/morp-0.3.6.tar.gz"
}
],
"1.0.0": [
{
"comment_text": "",
"digests": {
"md5": "bcaca244420c867ae8e985367bd9a8fa",
"sha256": "a31ee1e394aac34362f499ff7d6a202483078f40e2d8652978fb31c998efd457"
},
"downloads": -1,
"filename": "morp-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "bcaca244420c867ae8e985367bd9a8fa",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 16236,
"upload_time": "2019-07-03T20:13:48",
"url": "https://files.pythonhosted.org/packages/82/d1/4e9cf9746b14494376040d1263f2231cf304035b653efba225dcd252fe98/morp-1.0.0.tar.gz"
}
],
"1.0.1": [
{
"comment_text": "",
"digests": {
"md5": "2067222d026b3a908c6f63a3090272e6",
"sha256": "205b188769550cd6a64a710902179ad8ab9a45a9ffb45428e8af1c113f78165f"
},
"downloads": -1,
"filename": "morp-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "2067222d026b3a908c6f63a3090272e6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 16227,
"upload_time": "2019-07-11T18:58:59",
"url": "https://files.pythonhosted.org/packages/15/b0/35ad4f761243daa8e9d8d79b791c5db08aa9454638648c2bf1461e5b06de/morp-1.0.1.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "2067222d026b3a908c6f63a3090272e6",
"sha256": "205b188769550cd6a64a710902179ad8ab9a45a9ffb45428e8af1c113f78165f"
},
"downloads": -1,
"filename": "morp-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "2067222d026b3a908c6f63a3090272e6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 16227,
"upload_time": "2019-07-11T18:58:59",
"url": "https://files.pythonhosted.org/packages/15/b0/35ad4f761243daa8e9d8d79b791c5db08aa9454638648c2bf1461e5b06de/morp-1.0.1.tar.gz"
}
]
}