Announcing Gertty 1.0.0 Gertty is a console-based interface to the Gerrit Code Review system.
If that doesn't sound interesting to you, then just skip right on to the next message. This mailing list gets a lot of traffic, and it's going to take you a while to read it all in that web browser you're using. Gertty was written by and for coremudgeons. But it's not just because we think mutt is the apex of user interface design. We write code in a terminal. We read logs in a terminal. We debug code in a terminal. We commit in a terminal. You know what's next. This is why I wrote Gertty: * Workflow -- the interface is designed to support a workflow similar to reading network news or mail. In particular, it is designed to deal with a large number of review requests across a large number of projects. * Offline Use -- Gertty syncs information about changes in subscribed projects to a local database and local git repos. All review operations are performed against that database and then synced back to Gerrit. * Speed -- user actions modify locally cached content and need not wait for server interaction. * Convenience -- because Gertty downloads all changes to local git repos, a single command instructs it to checkout a change into that repo for detailed examination or testing of larger changes. * Information Architecture -- in a console environment, Gertty can display information to reviewers in a more compact and relevant way. * Colors -- I think ANSI escape sequences are a neat idea. Here are some reasons you may want to use Gertty: * Single page diff -- when you look at a diff, all of the files are displayed on the same screen making it easier to see the full context of a change as you scroll effortlessly around the files that comprise it. This may be the most requested feature in Gerrit. It was harder to make Gertty show only only one file than it was to do all of them so that's what we have. You still get the choice of side-by-side or unified diff, color coding, inline comments, and intra-line diffs. * The checkout and cherry-pick commands -- Gertty works directly on your local git repos, even the same ones you hack on. It doesn't change them unless you ask it to, so normally you don't notice it's there, but with a simple command you can tell Gertty to check out a change into your working tree, or cherry-pick a bunch of changes onto a branch to build up a new patch series. It's like "git review -d" if you've ever used it, but instead of typing "git review -d what-was-that-change-number-again?" you type "c". * Your home address is seat 7A (or especially if it's 1A) -- Gertty works seamlessly online or offline so you can review changes while you're flying to your 15th mid-cycle meetup. Gertty syncs all of the open changes for subscribed projects to a local database and performs all of its operations there. When it's able to connect to Gerrit, it uploads your reviews instantly. When it's unable, they are queued for the next time you are online. It handles the transition between online and offline effortlessly. If your Internet connection is slow or unreliable, Gertty helps with that too. * You review a lot of changes -- Gertty is fast. All of the typical review operations are performed against the local database or the local git repos. Gertty can review changes as fast as you can. It has commands to instantly navigate from change to change, and shortcuts to leave votes on a change with a single keypress. * You are particular about the changes you review -- Gertty lets you subscribe to projects, and then displays each of those projects along with the number of open changes and changes you have not reviewed. Open up those projects like you would a newsgroup or email folder, and scroll down the list of changes. If you don't have anything to say about a change but want to see it again the next time it's updated, just hit a key to mark it reviewed. If you don't want to see a change ever again, hit a different key to kill it. Gertty helps you review all of the changes you want to review, and none of the changes you don't. * Radical customization -- The queries that Gertty uses by default can be customized. It uses the same search syntax as Gerrit and support most of its operators. It has user-defined dashboards that can be bound to any key. In fact, any command can be bound to any key. The color palette can be customized. You spend a lot of time reviewing changes, you should be comfortable. * Your terminal is an actual terminal -- Gertty works just fine in 80 columns, but it is also happy to spread out into hundreds of columns for ideal side-by-side diffing. * Colors -- you think ANSI escape sequences are a neat idea. If you're ready to give it a shot, here's what to do: pip install gertty wget https://git.openstack.org/cgit/stackforge/gertty/plain/examples/openstack-gertty.yaml -O ~/.gertty.yaml # edit ~/.gertty.yaml and update anything that says "CHANGEME" gertty It will walk you through what to do next. For help on any screen, hit F1 or "?". For more information on installation or usage, see the README here: https://pypi.python.org/pypi/gertty _______________________________________________ OpenStack-dev mailing list OpenStackfirstname.lastname@example.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev