[Unison-hackers] Pull Requests from G.raud awaiting review

G.raud graud at gmx.com
Thu Jul 12 09:44:10 EDT 2018


Hello,

I have made several pull requests still waiting for approval since
march.  To ease the review I list and describe them here.

Several of them are very (very) simple changes that fix bugs or slightly
improve the behavior in a fully backward compatible way (i.e. they
accept the same config files as the older versions and can interact with
older versions as frontend or server).  I think these can be very easily
reviewed and either merged or refused.  The Pull Requests that are
simple fixes that should be merged (or modified then merged):

- #176 Pred: fix detection of empty pathspecs
- #177 Uitext.interact: fix menu documentation
- #179 Uicommon fix: generate ignore patterns not containing Pred.mapSeparator
- #190 Uitext: fix more newline printing and clear infos before failing
  (only the console output is modified)

The Pull Requests that improve the behaviour without changing much and
that should be merged too:

- #181 Pred: parse a single mapSeparator separated by spaces
  (the config file will accept more patterns)
- #184 Ui fix: refuse to choose merge when preference not set
  (in interactive mode sure failures are notified early)
- #191 Uigtk2: improve gtk failure messages
  (only the console output is modified)


The remaining Pull Requests involve some new behavior to be documented
in a release file and some are a bit more complex (but thanks to OCaml
the code is easy to follow).

Extra include directives and options (if the feature is used, older
versions cannot be the frontend) (see
https://github.com/bcpierce00/unison/issues/80#issuecomment-381113502
for a usage example):

- #167 Extra include directives ("source", "include?", "source?")
- #171 Include options for the command line

This can be used to disable or modify merge commands in batch mode
(older versions cannot be the frontend if the feature is employed):

- #175 Merge command string BATCHMODE to detect batch mode
  (if not used fully backward compatible)

Merge preference refinement (discussed in issue #183 and depends on PR
#184) to simply make the verification of mergeability stricter (fully
backward compatible; it simply does not attempt more merges that are
sure to fail).  If PR #178 (Assoc Patterns) is merged too, it makes it
possible to mark paths as mergeable without merging them by default:

- #185 UI: merge selection requires merge command instead of preference

So called Negative, Fixed String and Assoc patterns (backward compatible
but when the new patterns are used, older versions can be neither the
frontend nor the server but there is no risk of data corruption) (see
https://github.com/bcpierce00/unison/issues/80#issuecomment-381113502
for an example using those):

- #155 Negative Patterns in Path Specifications
- #165 Fixed String Pathspec Patterns
- #178 Assoc only Pathspec Patterns

Voilà!

-- 
G.raud


More information about the Unison-hackers mailing list