##// END OF EJS Templates
releasenotes: add a file in which to record release notes...
releasenotes: add a file in which to record release notes I've just spent a few very boring hours going through the changelog for the 5.0 release (829 commits). We only had 5 commits that used the syntax that the release notes extension expects. This commit adds a file in which we can record important changes. The file should preferably be edited in the patch that makes the important change, but it can also be edited after (I think this is an important benefit compared to the release notes extension). I'm thinking that we can rename the file from "next" to "5.1" or something when it's time, and then we'd create a new "next" file on the default branch. I've used the syntax that we use on the our wiki in the template, but I don't care much that we use any valid syntax at all. The idea is mostly to record important changes when they happen. I expect that some copy editing will be needed at release time anyway. Differential Revision: https://phab.mercurial-scm.org/D6332

File last commit:

r41209:4145fd35 default
r42457:0ed293a3 default
Show More
amend.py
60 lines | 2.1 KiB | text/x-python | PythonLexer
Jun Wu
amend: new extension providing the amend command...
r33404 # amend.py - provide the amend command
#
# Copyright 2017 Facebook, Inc.
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
"""provide the amend command (EXPERIMENTAL)
This extension provides an ``amend`` command that is similar to
``commit --amend`` but does not prompt an editor.
"""
from __future__ import absolute_import
from mercurial.i18n import _
from mercurial import (
cmdutil,
commands,
Pulkit Goyal
amend: error out if the note is greater than 255bytes...
r34890 error,
Pulkit Goyal
py3: handle keyword arguments in hgext/amend.py...
r34971 pycompat,
Jun Wu
amend: new extension providing the amend command...
r33404 registrar,
)
# Note for extension authors: ONLY specify testedwith = 'ships-with-hg-core' for
# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
# be specifying the version(s) of Mercurial they are tested with, or
# leave the attribute unspecified.
testedwith = 'ships-with-hg-core'
cmdtable = {}
command = registrar.command(cmdtable)
@command('amend',
[('A', 'addremove', None,
_('mark new/missing files as added/removed before committing')),
('e', 'edit', None, _('invoke editor on commit messages')),
('i', 'interactive', None, _('use interactive mode')),
Pulkit Goyal
amend: add a flag `-n/--note` to store note with amend...
r34796 ('n', 'note', '', _('store a note on the amend')),
Yuya Nishihara
amend: turn currentdate into tri-state bool so config option can be negated...
r41209 ('D', 'currentdate', None,
Yuya Nishihara
amend: add -D/--currentdate option...
r41160 _('record the current date as commit date')),
Jun Wu
amend: new extension providing the amend command...
r33404 ] + cmdutil.walkopts + cmdutil.commitopts + cmdutil.commitopts2,
_('[OPTION]... [FILE]...'),
rdamazio@google.com
help: assigning categories to existing commands...
r40329 helpcategory=command.CATEGORY_COMMITTING,
Jun Wu
amend: new extension providing the amend command...
r33404 inferrepo=True)
def amend(ui, repo, *pats, **opts):
"""amend the working copy parent with all or specified outstanding changes
Similar to :hg:`commit --amend`, but reuse the commit message without
invoking editor, unless ``--edit`` was set.
See :hg:`help commit` for more details.
"""
Pulkit Goyal
py3: handle keyword arguments in hgext/amend.py...
r34971 opts = pycompat.byteskwargs(opts)
Pulkit Goyal
amend: error out if the note is greater than 255bytes...
r34890 if len(opts['note']) > 255:
raise error.Abort(_("cannot store a note of more than 255 bytes"))
Jun Wu
amend: new extension providing the amend command...
r33404 with repo.wlock(), repo.lock():
if not opts.get('logfile'):
opts['message'] = opts.get('message') or repo['.'].description()
opts['amend'] = True
Pulkit Goyal
py3: handle keyword arguments in hgext/amend.py...
r34971 return commands._docommit(ui, repo, *pats, **pycompat.strkwargs(opts))