Skip to main content

A simple and powerful text-based interactive user interface for Mercurial

Project description

asciicast

Description

Lairucrem provides a useful user interface to the Mercurial DVCS.

It is a text-based interactive interface that helps developpers on their daily usage of Mercurial. Because it is a text-based interface, it can be used over ssh tunnels which is helpful when working on a remote machine.

Lairucrem displays the changeset tree and the patch content of the focused changeset. You can interactively inspect the repository history by changing the focused changeset. We put some effort to make it quite responsive, even on huge repositories whith big patches.

Lairucrem can propose a set of actions that can be applied to the focused changeset, like rebase, update, addremove, etc. A small set of actions are available in the actual version but later releases will propose more actions and a plugin system which will allow you to add your own actions. You won’t have to mess with a complex UI, just the actions you need.

Lairucrem uses the command line interface of Mercurial. So it just performs the commands you commonly run. It activates extensions (the “official” ones) when there are needed.

We still work on lairucrem, fill issues if you think something could be improved.

Installation

System wide (administrator privilege required)

pip install lairucrem

User space (no specific privilege required)

pip install --user lairucrem

Development

Environment

You may want to use virtualenv to create an isolated Python environment.

virtualenv /path/to/envs/lairucremenv
source /path/to/envs/lairucremenv/bin/activate

Clone the repository:

hg clone http://bitbucket.org/aleufroy/lairucrem
cd lairucrem

Install dev dependencies and lairucrem (in development mode):

pip install -r dev-requirements.txt -e .

Testsuite and checks

Run the testsuites

py.test --doctest-modules --pylint -q

Note: The –pylint option enables coding standards checks. Take a look at the pylintrc file for detailed coding rules used in lairucrem.

Test coverage

py.test --doctest-modules --cov=lairucrem --cov-report term-missing

Documentation test

pip install docutils
python setup.py --long-description | rst2html --strict -

Tricks

I’ve added pytest-xdist to dev_requirements.txt which allows pytest to watch for file system changes with the -f option.

Pull request

Please check the followings before sending your pull request:

  • Add yourself to the CONSTRIBUTORS.txt file.

  • Check the new feature/fix by add new tests or by adapting existing tests (test coverage is useful here). If your change does not need test change, tell it in the commit message.

  • Check that tests are all green, including the –doctest-modules and –pylint options. Note that you can disable falsy warnings from pylint (with caution) by adding a comment like:

    #pylint: disable=signature-differs
  • Help me understand your patch with a few lines of description in the commit message (but do not translate your code to english :P). This makes the patch integration easier and quicker than it could be without it. You can also refer to an existing issue from the tracker – I’m not a github/bitbucket addict, so let the commit message self sufficient.

In the meantime, you can send me a message on twitter (alainleufroy) or on the #mercurial IRC channel (aleufroy).

Project info

LICENSE:

http://sam.zoy.org/wtfpl see LICENSE.txt

HOME PAGE:

http://bitbucket.org/aleufroy/lairucrem

BUG REPORT:

http://bitbucket.org/aleufroy/lairucrem/issues

Sponsors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lairucrem-5.3.2.tar.gz (47.1 kB view details)

Uploaded Source

File details

Details for the file lairucrem-5.3.2.tar.gz.

File metadata

  • Download URL: lairucrem-5.3.2.tar.gz
  • Upload date:
  • Size: 47.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for lairucrem-5.3.2.tar.gz
Algorithm Hash digest
SHA256 c9280f09bc1ba72c9d8b8d8128849d36963b9c1a897dcc3ea4dcd9d29e9205da
MD5 83d14d99f570321d30b0a37d76dc413f
BLAKE2b-256 7efd85dd40b1340c099c099254f1e500b55a043004f58d9b66f20a69c32af51d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page