{ "info": { "author": "Adam Coddington", "author_email": "me@adamcoddington.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: ISC License (ISCL)", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Programming Language :: Python :: 2.5", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.0", "Programming Language :: Python :: 3.1", "Topic :: Software Development :: Debuggers" ], "description": "slackpdb - Remotely and collaboratively debug your Python application via a Slack channel\n=========================================================================================\n\n.. image:: https://travis-ci.org/coddingtonbear/slackpdb.svg?branch=master\n :target: https://travis-ci.org/coddingtonbear/slackpdb\n\nSlackpdb is an adaptation of rpdb that, instead of opening a port and\nallowing you to debug over telnet, connects to a configurable Slack\nchannel so you can collaboratively debug an application remotely.\n\n.. code-block::\n\n import slackpdb\n slackpdb.set_trace(\n token=\"\",\n channel=\"#debugger_hangout\",\n )\n\nUpon reaching ``set_trace()``, your script will \"hang\" and the only way to get\nit to continue is to access slackpdb by talking to the user that connected to the\nabove IRC channel.\n\nTo interact with the debugger, just send messages in the channel prefixed\nwith the username it announces itself as, or simply \"!\".\n\nFor example, the following two commands are equivalent, and each will\ndisplay the pdb help screen (be sure to replace 'MyHostname' with whatever\nusername the bot selected)::\n\n !help\n\n::\n\n slackpdb: help\n\nInstallation\n------------\n\nFrom ``pip``::\n\n pip install slackpdb\n\nOptions\n-------\n\n* ``token``: A token to use for connecting to Slack; if you do not have one,\n you can quickly generate one at https://my.slack.com/services/new/bot. Note\n that if this is not specified, it may be gathered from the\n ``SLACKPDB_API_TOKEN`` environment variable, or, if the ``django`` option is\n set to ``True``, from a Django setting named ``SLACKPDB_API_TOKEN``.\n* ``channel`` (**REQUIRED**): The name of the channel (starting with ``#``).\n* ``limit_access_to``: A list of nicknames that\n are allowed to interact with the debugger.\n* ``activation_timeout``: Wait maximally this number of seconds for\n somebody to interact with the debugger in the channel before\n disconnecting and continuing execution. Default: ``60`` seconds.\n* ``django``: (Default: ``False``) Attempt to gather Slack API token from\n a django setting named ``SLACKPDB_API_TOKEN`` if otherwise unspecified.\n\nSecurity Disclaimer\n-------------------\n\nThe way that this library works is **inherently** **dangerous**; given that\nyou're able to execute arbitrary Python code from within your debugger,\nit is strongly recommended that you take all reasonable measures to ensure\nthat you control who are able to execute debugger commands.\n\nJust to make absolutely sure this is clear: you're both responsible for\ndetermining what level of risk you are comfortable with, and for taking\nappropriate actions to mitigate that risk.\n\nAs is clearly and thunderously stated library's license (see the included\n``LICENSE.txt``)::\n\n THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND\n ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE\n FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\n DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS\n OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\n HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\n LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY\n OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF\n SUCH DAMAGE.\n\nGood luck, and happy debugging!\n\nTroubleshooting\n---------------\n\nIf you do not see the bot entering your specified channel, try increasing\nthe logging level by adding the following lines above your trace to gather\na little more information about problems that may have occurred while \nconnecting to the IRC server:\n\n.. code-block::\n\n import logging\n logging.basicConfig(filename='/path/to/somewhere.log', level=logging.DEBUG)\n\nAuthor(s)\n---------\nAdam Coddington - http://adamcoddington.net/\n\nThis library is a fork of rpdb, and the underpinnings of this library\nare owed to Bertrand Janin - http://tamentis.com/ and\nall other contributors to `rpdb `\nincluding the following:\n\n - Ken Manheimer - @kenmanheimer\n - Steven Willis - @onlynone\n - Jorge Niedbalski R \n - Cyprien Le Pann\u00e9rer \n - k4ml \n - Sean M. Collins \n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/coddingtonbear/slack-pdb", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "slack-pdb", "package_url": "https://pypi.org/project/slack-pdb/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/slack-pdb/", "project_urls": { "Homepage": "http://github.com/coddingtonbear/slack-pdb" }, "release_url": "https://pypi.org/project/slack-pdb/2.0.4/", "requires_dist": null, "requires_python": "", "summary": "Collaboratively debug your Python application in Slack", "version": "2.0.4" }, "last_serial": 2933554, "releases": { "2.0.0": [ { "comment_text": "", "digests": { "md5": "36f704f7fd7169488e2b82f454d42da3", "sha256": "267c1619b947f116f1467ef383ae35dac0868f800221687ff94be2c6e0127578" }, "downloads": -1, "filename": "slack-pdb-2.0.0.tar.gz", "has_sig": false, "md5_digest": "36f704f7fd7169488e2b82f454d42da3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11511, "upload_time": "2017-06-07T19:11:05", "url": "https://files.pythonhosted.org/packages/af/02/63ca2dce4275fd6b5754d56906edbdfe3f448828efd81266d559b7277e33/slack-pdb-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "f68db9e284e8bb1be166dff2124197f1", "sha256": "6ed8b9245b87d6b5830e4ed172d0cb4d6cf025be03b583ce8a6d982792d8b357" }, "downloads": -1, "filename": "slack-pdb-2.0.1.tar.gz", "has_sig": false, "md5_digest": "f68db9e284e8bb1be166dff2124197f1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9530, "upload_time": "2017-06-07T19:42:30", "url": "https://files.pythonhosted.org/packages/a0/ea/c30739c70cfc901a7d4c2c3fce94e9c7d7808f3c323485f375df2137ab7e/slack-pdb-2.0.1.tar.gz" } ], "2.0.2": [ { "comment_text": "", "digests": { "md5": "21eefadc38e18e58d825f297be54ebd3", "sha256": "7b7ef6684b1b7685f10f7619f5b54d16d9b8c4944bed17609e188ee339fcd6e6" }, "downloads": -1, "filename": "slack-pdb-2.0.2.tar.gz", "has_sig": false, "md5_digest": "21eefadc38e18e58d825f297be54ebd3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9535, "upload_time": "2017-06-07T19:57:07", "url": "https://files.pythonhosted.org/packages/67/d8/cd9c969566bd8afa80df03e834be0a444d6e6071deedfd51cff11f02dcd5/slack-pdb-2.0.2.tar.gz" } ], "2.0.3": [ { "comment_text": "", "digests": { "md5": "43e84dac837cd3334d8b130b46f4d98a", "sha256": "acd181a2ce92197a8ad6fb8affe52ccee017bfc1a50cae4a6b9597a257ded1aa" }, "downloads": -1, "filename": "slack-pdb-2.0.3.tar.gz", "has_sig": false, "md5_digest": "43e84dac837cd3334d8b130b46f4d98a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9546, "upload_time": "2017-06-07T20:16:38", "url": "https://files.pythonhosted.org/packages/2a/38/fc6cad2b4766ab06abd44a14e9a2a6430a07af4def3dbbba56eec28a87c8/slack-pdb-2.0.3.tar.gz" } ], "2.0.4": [ { "comment_text": "", "digests": { "md5": "af6eafa4fe64e822a207b42211e12ffa", "sha256": "08ccefdc212153ea74fe774a9d43f4037a694e9ba65be667fe9c42de02bfc167" }, "downloads": -1, "filename": "slack-pdb-2.0.4.tar.gz", "has_sig": false, "md5_digest": "af6eafa4fe64e822a207b42211e12ffa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9565, "upload_time": "2017-06-07T21:14:12", "url": "https://files.pythonhosted.org/packages/b6/bd/862b7ceac2c5a2bc299b9558bc19305dd3ba476cd30fd58dfdf6863a7552/slack-pdb-2.0.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "af6eafa4fe64e822a207b42211e12ffa", "sha256": "08ccefdc212153ea74fe774a9d43f4037a694e9ba65be667fe9c42de02bfc167" }, "downloads": -1, "filename": "slack-pdb-2.0.4.tar.gz", "has_sig": false, "md5_digest": "af6eafa4fe64e822a207b42211e12ffa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9565, "upload_time": "2017-06-07T21:14:12", "url": "https://files.pythonhosted.org/packages/b6/bd/862b7ceac2c5a2bc299b9558bc19305dd3ba476cd30fd58dfdf6863a7552/slack-pdb-2.0.4.tar.gz" } ] }