caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Louis Gesbert <louis.gesbert@ocamlpro.com>
To: caml-list@inria.fr, "Daniel Bünzli" <daniel.buenzli@erratique.ch>
Cc: "Mr. Herr" <misterherr@freenet.de>
Subject: Re: [Caml-list] OPAM 1.2.1
Date: Sat, 28 Mar 2015 16:06:07 +0900	[thread overview]
Message-ID: <3968759.zD7zqGanax@agaric> (raw)
In-Reply-To: <36D041EEA2094E45AB2BB6BA1C2C37F5@erratique.ch>

[-- Attachment #1: Type: text/plain, Size: 5525 bytes --]

Indeed, two variables is a bit overkill, but the OPAMUTF8MSGS variable was kept mostly for backwards-compatibility, and also because I needed a (default) intermediate level with the arrows, but without the camel emojis. On second thought, maybe adding a possible value (i.e. 'always', 'never', 'auto' or 'partial') would be best. And the documentation should indeed specify that it's only for OPAM-generated messages, excluding metadata that may be printed.

Mr. Herr:
indeed, in the case of 'opam update', it's not completely self-explanatory. But I made sure that it is in the case of package actions, which is the one that matters:


    % opam install core_bench --show
    The following actions would be performed:
      ↘  downgrade sexplib       112.24.00 to 112.17.00  [required by core_bench]
      ↘  downgrade pa_ounit      112.24.00 to 112.17.00  [required by core_bench]
      ↘  downgrade bin_prot      112.24.00 to 112.17.00  [required by core_bench]
      ↘  downgrade pa_test       112.24.00 to 111.08.01  [required by core]
      ↻  recompile uri           1.8.0                   [uses sexplib]
      ↻  recompile ipaddr        2.6.1                   [uses sexplib]
      ↻  recompile ezjsonm       0.4.1                   [uses sexplib]
      ↻  recompile cstruct       1.5.0                   [uses sexplib]
      ↘  downgrade custom_printf 112.24.00 to 112.17.00  [required by core]
      ↻  recompile pa_bench      112.06.00               [uses pa_ounit]
      ↘  downgrade typerep       112.24.00 to 112.17.00  [uses bin_prot]
      ↻  recompile ocsigenserver 2.5                     [uses ipaddr]
      ↻  recompile cow           1.2.1                   [uses ezjsonm, uri]
      ↻  recompile conduit       0.7.2                   [uses sexplib]
      ↘  downgrade core_kernel   112.24.00 to 112.17.00  [uses bin_prot]
      ↻  recompile eliom         4.1.0                   [uses ipaddr]
      ↻  recompile cohttp        0.15.0                  [uses sexplib]
      ∗  install   core          112.17.00               [required by core_bench]
      ↻  recompile github        0.9.4                   [uses cohttp, uri]
      ∗  install   textutils     112.17.00               [required by core_bench]
      ∗  install   core_bench    112.17.00             
    ===== ∗  3   ↻  11   ↘  7 =====
    
the glyphs make the information easier to skim through, but the actions are written in text; the summary only shows the glyphs, but you may use the full list as a key to their meaning.
And if you have compatibility problems or just don't like it, set OPAMUTF8 to "never" and you'll get good old plain text:


    % OPAMUTF8=never opam install core_bench --show
    The following actions would be performed:
      - downgrade sexplib       112.24.00 to 112.17.00      [required by core_bench]
      - downgrade pa_ounit      112.24.00 to 112.17.00      [required by core_bench]
      - downgrade bin_prot      112.24.00 to 112.17.00      [required by core_bench]
      - downgrade pa_test       112.24.00 to 111.08.01      [required by core]
      - recompile uri           1.8.0                       [uses sexplib]
      - recompile ipaddr        2.6.1                       [uses sexplib]
      - recompile ezjsonm       0.4.1                       [uses sexplib]
      - recompile cstruct       1.5.0                       [uses sexplib]
      - downgrade custom_printf 112.24.00 to 112.17.00      [required by core]
      - recompile pa_bench      112.06.00                   [uses pa_ounit]
      - downgrade typerep       112.24.00 to 112.17.00      [uses bin_prot]
      - recompile ocsigenserver 2.5                         [uses ipaddr]
      - recompile cow           1.2.1                       [uses ezjsonm, uri]
      - recompile conduit       0.7.2                       [uses sexplib]
      - downgrade core_kernel   112.24.00 to 112.17.00      [uses bin_prot]
      - recompile eliom         4.1.0                       [uses ipaddr]
      - recompile cohttp        0.15.0                      [uses sexplib]
      - install   core          112.17.00                   [required by core_bench]
      - recompile github        0.9.4                       [uses cohttp, uri]
      - install   textutils     112.17.00                   [required by core_bench]
      - install   core_bench    112.17.00             
    ===== 3 to install | 11 to recompile | 7 to downgrade =====
    
This will also be the case, of course, if your current locale isn't UTF8.


Best,
Louis Gesbert - OCamlPro

> - Daniel Bünzli, 27/03/2015 21:24 -
> Le vendredi, 27 mars 2015 à 20:52, Mr. Herr a écrit :
> > I would have voted against the unicode graphics,  
> 
> There's no voting process but you can disable them, see:  
>   
> https://github.com/ocaml/opam/issues/2065#issuecomment-83232580
> 
> Btw. Louis I think the two level scheme is a little bit overkill and more complex that it should be, you should really keep it to a single variable. That two-level mechanism seem to have been design to work around issues in OS level support for unicode glyphs and it doesn't sound like a good idea. Also the description of OPAMUTF8 is misleading, UTF-8 characters may be output since opam files are UTF-8 encoded and AFAIK you don't transcode any output of the tool to ASCII when OPAMUTF8 is `never` (e.g. opam file messages: fields).  
> 
> Best,
> 
> Daniel
> 
> 
> 
> 

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

      reply	other threads:[~2015-03-28  7:06 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-24  3:08 [Caml-list] [ANN] " Louis Gesbert
2015-03-27 18:00 ` [Caml-list] " Mr. Herr
2015-03-27 18:09   ` Anil Madhavapeddy
2015-03-27 18:29     ` Mr. Herr
2015-03-27 18:52       ` Stefan Schmiedl
2015-03-27 18:54       ` Ashish Agarwal
2015-03-27 19:52         ` Mr. Herr
2015-03-27 20:24           ` Daniel Bünzli
2015-03-28  7:06             ` Louis Gesbert [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3968759.zD7zqGanax@agaric \
    --to=louis.gesbert@ocamlpro.com \
    --cc=caml-list@inria.fr \
    --cc=daniel.buenzli@erratique.ch \
    --cc=misterherr@freenet.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).