Skip to main content

set of development tools used at Logilab

Project description

Logilab's development tools
===========================

Set of tools which aims to help the developpement process, including :

* tools to check and build source and/or Debian packages

* provides integration assistance to work with CubicWeb_, Mercurial_
and GuestRepo_.

Set of elisp goodies including :

* an emacs mode for pycover files
* an emacs mode for ChangeLog files
* a small set of emacs shortcuts used at logilab


ingrsh.(z)sh
------------

A shell library to source. It provides a ``ingrsh`` command that moves
the current working directory into the given shell repository and set
the ``PYTHONPATH`` and ``CDPATH`` environment variables accordingly.

The ``GUESTREPODIR`` environment variable defines where to search for for
shells (default to ``$HOME/hg/grshells/``)


grmerge/tagsmerge
-----------------

Merge tools to be used by Mercurial_, for .hgguestrepo and .hgtags files
respectively.

They must be activated from a Mercurial_ configuration file::

[merge-patterns]
.hgguestrepo = grmerge

[merge-tools]
grmerge.executable = path/to/grmerge
grmerge.args = $local $base $other -o $output

hgext/jpl.py
------------

A Mercurial_ extension that eases interaction with a JPL forge.

The extension should be enabled from a Mercurial_ configuration file::

[extensions]
jpl = path/to/hgext/jpl.py
# or, if it has been installed via the debian package:
jpl =

[lglb]
forge-url = http://www.cubicweb.org

.. note::

You can specify a default ``lglb/forge`` value in your main
Mercurial configuration file (``~/.hgrc`` for Linux systems). Then
the local configuration file (``path/to/repository/.hg/hgrc``) can
override this setting.


Revset functions
~~~~~~~~~~~~~~~~

These predicates retrieve information from the project's forge
(cubicweb-jpl instance) and are exposed as revset functions.

"tasks"
Changesets linked to tasks to be done.

"reviewed"
Changesets that are linked to reviewed patches in the forge

"inversion"
Changesets that are linked to patches linked to tickets of given version+project

Examples::

$ hg log -r "reviewed()"
$ hg log -r "inversion(3.18.0)"


Templates
~~~~~~~~~

"tasks"
List of Strings. The text of the tasks and comments of a patch.

Examples:

- display all tasks (and comments) of every patch::

$ hg log --template='{tasks}\n'

- display the first line of the description and the first line of
every task not yet done for draft changesets written by alain that
are not yet reviewed::

$ hg log -G \
--rev 'draft() and author(alain) and tasks() and not(reviewed())' \
--template='{desc|firstline}\n{tasks % "{task|firstline}\n"}'


Commands
~~~~~~~~

tasks
Displays tasks requested by reviewers on a patch on a forge.

ask-review
Allows to ask review for a Patch produced by a changeset, eg.::

$ hg ask-review # default to working directory's parent revision
$ hg ask-review -r "draft() and ::."

.. _CubicWeb: http://www.cubicweb.org
.. _Mercurial: http://mercurial.selenic.com
.. _GestRepo: https://bitbucket.org/selinc/guestrepo

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

logilab-devtools-0.23.0.tar.gz (26.8 kB view hashes)

Uploaded Source

Supported by

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