{"action":"created","issue":{"url":"https://api.github.com/repos/Pylons/pyramid/issues/1868","labels_url":"https://api.github.com/repos/Pylons/pyramid/issues/1868/labels{/name}","comments_url":"https://api.github.com/repos/Pylons/pyramid/issues/1868/comments","events_url":"https://api.github.com/repos/Pylons/pyramid/issues/1868/events","html_url":"https://github.com/Pylons/pyramid/issues/1868","id":99249243,"number":1868,"title":"Create a top level pyramid command","user":{"login":"dstufft","id":145979,"avatar_url":"https://avatars.githubusercontent.com/u/145979?v=3","gravatar_id":"","url":"https://api.github.com/users/dstufft","html_url":"https://github.com/dstufft","followers_url":"https://api.github.com/users/dstufft/followers","following_url":"https://api.github.com/users/dstufft/following{/other_user}","gists_url":"https://api.github.com/users/dstufft/gists{/gist_id}","starred_url":"https://api.github.com/users/dstufft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dstufft/subscriptions","organizations_url":"https://api.github.com/users/dstufft/orgs","repos_url":"https://api.github.com/users/dstufft/repos","events_url":"https://api.github.com/users/dstufft/events{/privacy}","received_events_url":"https://api.github.com/users/dstufft/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-08-05T16:50:48Z","updated_at":"2015-08-09T08:27:53Z","closed_at":"2015-08-09T03:40:51Z","body":"Currently there a number of commands that Pyramid provides, however each one is written as it's own independent command with nothing to tie them together except a convention that they start with the letter p. I think it would be better to deprecate these commands (but probably not remove them?) and instead move them as subcommands under a global ``pyramid`` command.\r\n\r\nReasoning:\r\n\r\nThe current situation sucks for discoverability, If I'm in my shell I don't have any real way to see what commands Pyramid provides except by typing ``p<tab>`` which is going to introduce a TON of noise (several hundred results) and the commands are generically named enough it's not obvious which ones are pyramid related. If there was a single top level command of ``pyramid`` then tab completing would make it obvious that this command was for interacting with pyramid. Additionally I could do ``pyramid -h`` to see a list of all of the available commands as well as a short description about what they actually do.\r\n\r\nIn addition, the current situation pollutes the global namespace of commands. This is unfriendly and messy. A top level command would reduce the polution and would be a good idea for the same reasons the import system has ``pyramid.httpexception`` and ``pyramid.config`` and not ``pconfig`` and ``phttpexception``.\r\n\r\nMy proposal would be to just take all of the existing ``p<cmd>`` commands, create a top level ``pyramid`` command, and move them each as ``pyramid <command>`` like ``pyramid serve`` etc. I would keep any existing commands but have them act as aliases for the ``pyramid <command>`` commands, but raise a deprecation warning recommending people switch to using the new command."},"comment":{"url":"https://api.github.com/repos/Pylons/pyramid/issues/comments/129140492","html_url":"https://github.com/Pylons/pyramid/issues/1868#issuecomment-129140492","issue_url":"https://api.github.com/repos/Pylons/pyramid/issues/1868","id":129140492,"user":{"login":"sontek","id":151924,"avatar_url":"https://avatars.githubusercontent.com/u/151924?v=3","gravatar_id":"","url":"https://api.github.com/users/sontek","html_url":"https://github.com/sontek","followers_url":"https://api.github.com/users/sontek/followers","following_url":"https://api.github.com/users/sontek/following{/other_user}","gists_url":"https://api.github.com/users/sontek/gists{/gist_id}","starred_url":"https://api.github.com/users/sontek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sontek/subscriptions","organizations_url":"https://api.github.com/users/sontek/orgs","repos_url":"https://api.github.com/users/sontek/repos","events_url":"https://api.github.com/users/sontek/events{/privacy}","received_events_url":"https://api.github.com/users/sontek/received_events","type":"User","site_admin":false},"created_at":"2015-08-09T08:27:53Z","updated_at":"2015-08-09T08:27:53Z","body":"I'm +1 on this because telling people to type bin/p<tab> doesn't help either. \r\n\r\n```\r\n$ bin/p\r\npbr          pip          preactivate  pshell       pyflakes     python\r\npcreate      pip3         prequest     ptweens      pyramid_cli  python3\r\npdistreport  pip3.4       proutes      pviews       py.test      python3.4\r\npep8         pipdeptree   pserve       pybabel      py.test-2.7 \r\n```\r\n\r\nI think it would be a much nicer user experience to type `pyramid --help` or something similar to figure out what is available.  A lot of people don't even realize there are commands outside of `pserve` but if the others showed up in `--help` they would\r\n"}}