#11121: Set up good defaults for sage's mercurial
---------------------------+------------------------------------------------
Reporter: kini | Owner: tbd
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-4.7
Component: packages | Keywords: mercurial, git, diff, patches
Author: | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
---------------------------+------------------------------------------------
Comment(by kini):
John, thanks for your comments, and your fast work on #11142! I agree with
you that most of the defaults set in my patch are just personal
preference, but I did try to add all extensions that seemed relevant. Let
me go down the list:
* `users = $USER` is put there on the assumption that whoever is
installing the mercurial SPKG will also be the owner of the files in the
sage installation. All the other patches are applied towards creating
.hgrc files in [repository root]`/.hg/hgrc`, which is not parsed when
using mercurial unless the file is either owned by the same person as the
person who is invoking `hg`, or the owner of [repository root]`/.hg/hgrc`
is listed as a trusted user in some other hgrc file which HAS been read
(such as this one, `$SAGE_ROOT/local/etc/mercurial/hgrc`.
* `git = true` was the original point of this ticket :)
* Prepending `hgext.` is apparently unnecessary in newer versions of
Mercurial, says `#mercurial` on freenode. I was even invited to submit a
patch to the man page for hgrc...
* `color` is nice on the commandline.
* `graphlog` is indispensable (imho) for seeing what exactly is going on
with the history of a particular mercurial repository.
* `mq` is of course useful.
* `pager` is useful.
* `progress` is not really necessary - if it interferes with the
notebook I guess it's better to get rid of it.
* `purge` is not all that important, but since it only adds a new
command it shouldn't screw up anything else.
* `rebase` is great for rebasing mq patches on new versions of sage,
something I'll need in order to fix #10988, I think.
* `record` is useful.
* `relink` seems nice for people who use `sage -clone`, though I don't
use either myself.
* `transplant` seems to be useful in some way, but I've never used it
either (maybe not that great of an idea to include, then.)
* The suggestions for parameters to `less` given on the Mercurial wiki
are also a matter of personal preference. By default, `less` doesn't leave
anything in the terminal after it exits (it restores whatever was on the
screen before you called it), but the `X` option disables this behavior.
The `F` option also disables this behavior, in a sense, by acting like
`cat` when the screen is large enough to take the entire output. The `S`
option truncates long lines instead of wrapping them. The `R` option
(which is in my patch) displays (ANSI) terminal color codes. My preference
is still to just keep `R` of these four, but whoever wrote the Mercurial
wiki article disagrees. It's not really possible to be that objective
about this, I think...
I'll go take a look at #11142.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11121#comment:21>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.