magit-section-context-type: de-uglify
magit-prefix-p: improve doc-string

The old doc-string wasn't very precise, e.g. it left out that `equal'
is used for comparison.

Also rename arguments;  It just doesn't feel right to say.

  PREFIX is a prefix ... if ...

The hole point of this function is to check whether the first list is
a prefix of the second.  It might very well not be, so let's just call
it a list.
add new function magit-section-match
refactor magit-section-case and related functions

`magit-section-case' used to return t if a clause succeeds but the
value of it's body is nil.  This was due to internal needs; it allowed
`run-hook-with-args-until-sucess' to detect that a clause and therefor
the hook function succeeded.  However, while it was documented in the
doc-string, callers should not have to deal with this.

* `magit-section-case' and `magit-section-action' always return
  the value of the BODY now.  In other words they can return nil.
* `magit-section-case' doesn't need to know about OPCODE.
  Running the OPCODE hook is done in `magit-section-action' now.
* `magit-add-section' wrap each BODY so that `magit-section-action'
  can detect whether a CLAUSE succeeded.  Previously that was done
  in `magit-section-case' for *any* CLAUSE.
* Disallow a t/otherwise CLAUSE in `magit-section-action' as that
  would prevent the OPCODE hook from running.
* Replace uses of `magit-section-action' without OPCODE to use
  `magit-section-case' instead.
rename magit-add-action{ => -clauses}
Unbreak status buffer with an ongoing rebase

The refactor that introduced `magit-insert-status-line` was calling it
with too many parameters for the reabase section, as this part
refactored using `apply` with the wrong function.
Merge pull request #672 from afrepues/feature/fix-status-buffer-with-ongoing-rebase

Unbreak status buffer with an ongoing rebase
Merge branch 'feature/section-case'
magit-read-rev: raise error if user makes no selection

Do so by calling `magit-completing-read' with non-nil REQUIRE-MATCH.

There was only one caller for which getting nil back from
`magit-read-rev' made sense.  Reading the end rev in
`magit-read-rev-range' has been changed to not use `magit-read-rev'
to read the end rev.

There were several callers who did explicitly make sure the value
returned by `magit-read-rev' was non-nil before doing anything.
These asserts are no unnecessary and have been removed.  The fact
that such checks existed until now shows that people did run into
this problem and "fixed" it in the particular instance the noticed
without addressing the real issue; that has been taken care of now.
cleanup magit-ido-completing-read and magit-read-file-from-rev
magit-read-remote: make argument PROMPT mandatory
magit-refresh-log-buffer: cleanup
magit-refresh-reflog-buffer: split long line
revert bad refactoring
add magit-delete-tag and magit-read-tag
semantic and cosmetic cleanups

* magit-interactive-rebase: fix indentation, shorten long line, use
  `when' instead of `if'
* magit--branch-name-at-point: don't use `let', it isn't necessary and
  doesn't improve readability
* magit--branch-for-remote-repo: use `cl-mapcan' instead of
  (remq nil (mapcar ...))
* magit-remote-part-of-branch, magit-branch-no-remote: shorten long line
Fix regexp matching in magit-long-log

Previously when the graph had discontinued graph-lines the layout broke.
Such discontinued graph-lines occur for example when using `--author='
or `--grep='.  This commit fixes this.

As a secondary effect of this fix the git-log `-z' option is no longer
required.
magit-read-tag: fix typo
magit-key-mode-command: don't quote arguments to git

Git is invoked directly, there is no shell involved that would need the
the quoting to prevent splitting an argument containing whitespace into
multiple arguments.

In most cases the quoting is unnecessary when the argument contains
shell globs (to be interpreted by git not a shell) quoting did change
the globs, which is not what we want.
Add --branches/--remotes support to logging