A Scalable, User-Friendly Source Control System.
Go to file
Yuya Nishihara f449ec5977 formatter: add function to convert list to appropriate format (issue5217)
Before, it wasn't possible for formatter to handle array structure other
than date tuple. We've discussed that at the last sprint, which ended we
would probably want to allow only templatable data structure, i.e. a list
of dicts:

  data(tags=[{'tag': a}, {'tag': b}, ...])

Unfortunately, it turned out not working well with template functions:

  "{ifcontains(a, tags, ...)}"
    ^^^^^^^^^^^^^^^^^^
    "a in tags", where tags should be a plain list/set of tags

So the formatter must at least know if the type [{}] was constructed from
a plain list or was actually a list of dicts.

This patch introduces new explicit interface to convert an array structure
to an appropriate data type for the current formatter, which can be used
as follows:

  fm.write('tags', _('tags: %s\n'), fm.formatlist(tags, name='tag'))

No separate fm.data() call should be necessary.
2016-07-10 21:03:06 +09:00
contrib packagelib: do not remove packages directory in hggetversion (issue5262) 2016-07-29 00:45:24 +02:00
doc doc: remove double imports of inspect from hgmanpage.py 2016-05-14 14:37:25 +09:00
hgext journal: use fm.hexfunc() to get full hash in JSON/template output (BC) 2016-07-31 16:38:16 +09:00
hgext3rd extensions: also search for extension in the 'hgext3rd' package 2016-03-11 10:30:08 +00:00
i18n i18n-ja: synchronized with 9b5b7cc2faf0 2016-08-01 08:27:22 +09:00
mercurial formatter: add function to convert list to appropriate format (issue5217) 2016-07-10 21:03:06 +09:00
tests journal: use fm.hexfunc() to get full hash in JSON/template output (BC) 2016-07-31 16:38:16 +09:00
.editorconfig mercurial: add editorconfig 2016-04-05 18:10:33 +01:00
.hgignore make: turn ubuntu docker into template 2016-04-26 23:33:17 -07:00
.hgsigs Added signature for changeset f19241339f58 2016-08-01 12:37:25 -04:00
CONTRIBUTORS Add note to CONTRIBUTORS file 2007-11-07 21:10:30 -06:00
COPYING COPYING: refresh with current address from fsf.org 2011-06-02 11:17:02 -05:00
hg hg: disable demandimport for py3 2016-05-11 23:24:41 +00:00
hgeditor spelling: trivial spell checking 2015-10-17 00:58:46 +02:00
hgweb.cgi urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
Makefile make: introduce a target to clean everything but packages 2016-07-29 00:39:59 +02:00
README urls: bulk-change primary website URLs 2015-09-30 15:43:49 -05:00
setup_osutil_cffi.py osutil: add darwin-only version of os.listdir using cffi 2016-07-11 11:05:08 +02:00
setup.py osutil: add darwin-only version of os.listdir using cffi 2016-07-11 11:05:08 +02:00

Mercurial
=========

Mercurial is a fast, easy to use, distributed revision control tool
for software developers.

Basic install:

 $ make            # see install targets
 $ make install    # do a system-wide install
 $ hg debuginstall # sanity-check setup
 $ hg              # see help

Running without installing:

 $ make local      # build for inplace usage
 $ ./hg --version  # should show the latest version

See https://mercurial-scm.org/ for detailed installation
instructions, platform-specific notes, and Mercurial user information.