Hello community,

here is the log from the commit of package opam for openSUSE:Factory checked in 
at 2020-05-01 11:12:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/opam (Old)
 and      /work/SRC/openSUSE:Factory/.opam.new.2738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "opam"

Fri May  1 11:12:36 2020 rev:7 rq:799124 version:2.0.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/opam/opam.changes        2020-03-09 
15:23:01.108188001 +0100
+++ /work/SRC/openSUSE:Factory/.opam.new.2738/opam.changes      2020-05-01 
11:12:43.471765415 +0200
@@ -1,0 +2,6 @@
+Sun Apr 12 12:12:12 UTC 2020 - [email protected]
+
+- Update to 2.0.7, via _service file
+  See included CHANGES for details
+
+-------------------------------------------------------------------

Old:
----
  opam-2.0.6.tar.xz

New:
----
  opam-2.0.7.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ opam.spec ++++++
--- /var/tmp/diff_new_pack.yQ3Dqm/_old  2020-05-01 11:12:45.139769042 +0200
+++ /var/tmp/diff_new_pack.yQ3Dqm/_new  2020-05-01 11:12:45.143769051 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           opam
-Version:        2.0.6
+Version:        2.0.7
 Release:        0
 Summary:        Source-based package manager for OCaml
 License:        LGPL-2.1-only WITH OCaml-LGPL-linking-exception

++++++ _service ++++++
--- /var/tmp/diff_new_pack.yQ3Dqm/_old  2020-05-01 11:12:45.175769120 +0200
+++ /var/tmp/diff_new_pack.yQ3Dqm/_new  2020-05-01 11:12:45.175769120 +0200
@@ -1,11 +1,13 @@
 <services>
   <service mode="disabled" name="tar_scm">
-    <!-- 2.0.6 -->
-    <param name="revision">4ec3c603db4653c974753651c0cfc143388bfcb1</param>
+    <param name="filename">opam</param>
+    <param name="revision">4c1704d6a1a879625a132fbe4f1bb207965700b0</param>
     <param name="scm">git</param>
     <param name="submodules">disable</param>
     <param name="url">https://github.com/ocaml/opam.git</param>
     <param name="versionformat">@PARENT_TAG@</param>
+    <param name="versionrewrite-pattern">[v]?([^\+]+)(.*)</param>
+    <param name="versionrewrite-replacement">\1</param>
   </service>
   <service mode="disabled" name="recompress">
     <param name="compression">xz</param>

++++++ opam-2.0.6.tar.xz -> opam-2.0.7.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/CHANGES new/opam-2.0.7/CHANGES
--- old/opam-2.0.6/CHANGES      2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/CHANGES      2020-04-20 21:59:26.000000000 +0200
@@ -3,6 +3,13 @@
 are not marked).
 
 
+2.0.7:
+* Properly escape Windows paths on manpages [#4129 @AltGr @rjbou]
+* Fix opam installer opam file [#4058 @rjbou]
+* Fix various warnings [#4132 @rjbou @AltGr - fix 4100]
+* Fix dune 2.5.0 promote-install-files duplication [#4132 @rjbou ]
+* opam exec: display command not found message [#4133 @rjbou - fix #4131]
+
 2.0.6:
 * Don't remove git cache objects that may be used [#3831 @AltGr]
 * Don't include .gitattributes in index.tar.gz [#3873 @dra27]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/Makefile new/opam-2.0.7/Makefile
--- old/opam-2.0.6/Makefile     2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/Makefile     2020-04-20 21:59:26.000000000 +0200
@@ -21,7 +21,7 @@
 ALWAYS:
        @
 
-DUNE_PROMOTE_ARG := $(shell dune build --help=plain 2>/dev/null | sed -ne 
's/.*\(--promote-install-files\).*/ \1/p')
+DUNE_PROMOTE_ARG := $(shell dune build --help=plain 2>/dev/null | sed -ne 
's/^[[:space:]]*\(--promote-install-files\)[[:space:]]*$$/ \1/p')
 DUNE_DEP = $(DUNE_EXE)
 JBUILDER_ARGS ?= 
 DUNE_ARGS ?= $(JBUILDER_ARGS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/configure new/opam-2.0.7/configure
--- old/opam-2.0.6/configure    2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/configure    2020-04-20 21:59:26.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for opam 2.0.6.
+# Generated by GNU Autoconf 2.69 for opam 2.0.7.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -578,8 +578,8 @@
 # Identity of this package.
 PACKAGE_NAME='opam'
 PACKAGE_TARNAME='opam'
-PACKAGE_VERSION='2.0.6'
-PACKAGE_STRING='opam 2.0.6'
+PACKAGE_VERSION='2.0.7'
+PACKAGE_STRING='opam 2.0.7'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -1265,7 +1265,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures opam 2.0.6 to adapt to many kinds of systems.
+\`configure' configures opam 2.0.7 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1327,7 +1327,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of opam 2.0.6:";;
+     short | recursive ) echo "Configuration of opam 2.0.7:";;
    esac
   cat <<\_ACEOF
 
@@ -1431,7 +1431,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-opam configure 2.0.6
+opam configure 2.0.7
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1526,7 +1526,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by opam $as_me 2.0.6, which was
+It was created by opam $as_me 2.0.7, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3973,13 +3973,11 @@
 
 fi
 
-if test "x${CI}" != "x"; then :
-
-  CONF_OCAMLFLAGS="-warn-error A-3"
+CONF_OCAMLFLAGS="-w -67"
 
-else
+if test "x${CI}" != "x"; then :
 
-  CONF_OCAMLFLAGS=
+  CONF_OCAMLFLAGS="${CONF_OCAMLFLAGS} -w -67"
 
 fi
 if test "x${CI}" != "x" -o "x${enable_developer_mode}" = "xyes"; then :
@@ -6085,7 +6083,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by opam $as_me 2.0.6, which was
+This file was extended by opam $as_me 2.0.7, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -6138,7 +6136,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-opam config.status 2.0.6
+opam config.status 2.0.7
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/configure.ac new/opam-2.0.7/configure.ac
--- old/opam-2.0.6/configure.ac 2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/configure.ac 2020-04-20 21:59:26.000000000 +0200
@@ -1,5 +1,5 @@
 dnl The line below must be formatted AC_INIT(opam,VERSION) with no extra spaces
-AC_INIT(opam,2.0.6)
+AC_INIT(opam,2.0.7)
 AC_COPYRIGHT(Copyright 2012-2017 OcamlPro SAS)
 
 AC_CONFIG_MACRO_DIR([m4])
@@ -131,11 +131,11 @@
 
 AS_IF([test "x${with_mccs}" = "xno"], [AC_SUBST(MCCS_ENABLED,false)], 
[AC_SUBST(MCCS_ENABLED,true)])
 
+CONF_OCAMLFLAGS="-w -67"
+
 AS_IF([test "x${CI}" != "x"], [
-  CONF_OCAMLFLAGS="-warn-error A-3"
-],[
-  CONF_OCAMLFLAGS=
-])
+  CONF_OCAMLFLAGS="${CONF_OCAMLFLAGS} -w -67"
+],[])
 AS_IF([test "x${CI}" != "x" -o "x${enable_developer_mode}" = "xyes"],[
   AS_IF([test "x${CCOMP_TYPE}" = "xmsvc"],[
     CONF_CFLAGS="\"/WX\""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/opam-client.opam 
new/opam-2.0.7/opam-client.opam
--- old/opam-2.0.6/opam-client.opam     2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/opam-client.opam     2020-04-20 21:59:26.000000000 +0200
@@ -1,5 +1,5 @@
 opam-version: "1.2"
-version: "2.0.6"
+version: "2.0.7"
 maintainer: "[email protected]"
 authors: [
   "Vincent Bernardoff <[email protected]>"
@@ -21,8 +21,8 @@
   [make "%{name}%.install"]
 ]
 depends: [
-  "opam-state" {= "2.0.6"}
-  "opam-solver" {= "2.0.6"}
+  "opam-state" {= "2.0.7"}
+  "opam-solver" {= "2.0.7"}
   "re" {>= "1.7.2"}
   "cmdliner" {>= "0.9.8"}
   "dune" {build & >= "1.2.1"}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/opam-core.opam 
new/opam-2.0.7/opam-core.opam
--- old/opam-2.0.6/opam-core.opam       2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/opam-core.opam       2020-04-20 21:59:26.000000000 +0200
@@ -1,5 +1,5 @@
 opam-version: "1.2"
-version: "2.0.6"
+version: "2.0.7"
 maintainer: "[email protected]"
 authors: [
   "Vincent Bernardoff <[email protected]>"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/opam-devel.opam 
new/opam-2.0.7/opam-devel.opam
--- old/opam-2.0.6/opam-devel.opam      2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/opam-devel.opam      2020-04-20 21:59:26.000000000 +0200
@@ -1,5 +1,5 @@
 opam-version: "1.2"
-version: "2.0.6"
+version: "2.0.7"
 maintainer: "[email protected]"
 authors: [
   "Vincent Bernardoff <[email protected]>"
@@ -22,7 +22,7 @@
 ]
 build-test: [make "tests"]
 depends: [
-  "opam-client" {= "2.0.6"}
+  "opam-client" {= "2.0.7"}
   "cmdliner" {>= "0.9.8"}
   "dune" {build & >= "1.2.1"}
 ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/opam-format.opam 
new/opam-2.0.7/opam-format.opam
--- old/opam-2.0.6/opam-format.opam     2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/opam-format.opam     2020-04-20 21:59:26.000000000 +0200
@@ -1,5 +1,5 @@
 opam-version: "1.2"
-version: "2.0.6"
+version: "2.0.7"
 maintainer: "[email protected]"
 authors: [
   "Vincent Bernardoff <[email protected]>"
@@ -21,7 +21,7 @@
   [make "%{name}%.install"]
 ]
 depends: [
-  "opam-core" {= "2.0.6"}
+  "opam-core" {= "2.0.7"}
   "opam-file-format" {>= "2.0.0~rc2"}
   "dune" {build & >= "1.2.1"}
 ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/opam-installer.opam 
new/opam-2.0.7/opam-installer.opam
--- old/opam-2.0.6/opam-installer.opam  2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/opam-installer.opam  2020-04-20 21:59:26.000000000 +0200
@@ -1,5 +1,5 @@
 opam-version: "1.2"
-version: "2.0.6"
+version: "2.0.7"
 maintainer: "[email protected]"
 authors: [
   "Vincent Bernardoff <[email protected]>"
@@ -18,10 +18,10 @@
 dev-repo: "https://github.com/ocaml/opam.git";
 build: [
   ["./configure" "--disable-checks" "--prefix" prefix]
-  [make "DUNE_ARGS=-p %{name}%" "%{name}%.install"]
+  [make "%{name}%.install"]
 ]
 depends: [
-  "opam-format" {= "2.0.6"}
+  "opam-format" {= "2.0.7"}
   "cmdliner" {>= "0.9.8"}
   "dune" {build & >= "1.2.1"}
 ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/opam-repository.opam 
new/opam-2.0.7/opam-repository.opam
--- old/opam-2.0.6/opam-repository.opam 2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/opam-repository.opam 2020-04-20 21:59:26.000000000 +0200
@@ -1,5 +1,5 @@
 opam-version: "1.2"
-version: "2.0.6"
+version: "2.0.7"
 maintainer: "[email protected]"
 authors: [
   "Vincent Bernardoff <[email protected]>"
@@ -21,7 +21,7 @@
   [make "%{name}%.install"]
 ]
 depends: [
-  "opam-format" {= "2.0.6"}
+  "opam-format" {= "2.0.7"}
   "dune" {build & >= "1.2.1"}
 ]
 available: ocaml-version >= "4.02.3"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/opam-solver.opam 
new/opam-2.0.7/opam-solver.opam
--- old/opam-2.0.6/opam-solver.opam     2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/opam-solver.opam     2020-04-20 21:59:26.000000000 +0200
@@ -1,5 +1,5 @@
 opam-version: "1.2"
-version: "2.0.6"
+version: "2.0.7"
 maintainer: "[email protected]"
 authors: [
   "Vincent Bernardoff <[email protected]>"
@@ -21,7 +21,7 @@
   [make "%{name}%.install"]
 ]
 depends: [
-  "opam-format" {= "2.0.6"}
+  "opam-format" {= "2.0.7"}
   "mccs" {>= "1.1+9"}
   "dose3" {>= "5"}
   "cudf" {>= "0.7"}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/opam-state.opam 
new/opam-2.0.7/opam-state.opam
--- old/opam-2.0.6/opam-state.opam      2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/opam-state.opam      2020-04-20 21:59:26.000000000 +0200
@@ -1,5 +1,5 @@
 opam-version: "1.2"
-version: "2.0.6"
+version: "2.0.7"
 maintainer: "[email protected]"
 authors: [
   "Vincent Bernardoff <[email protected]>"
@@ -21,7 +21,7 @@
   [make "%{name}%.install"]
 ]
 depends: [
-  "opam-repository" {= "2.0.6"}
+  "opam-repository" {= "2.0.7"}
   "dune" {build & >= "1.2.1"}
 ]
 available: ocaml-version >= "4.02.3"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/shell/bundle.sh 
new/opam-2.0.7/shell/bundle.sh
--- old/opam-2.0.6/shell/bundle.sh      2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/shell/bundle.sh      2020-04-20 21:59:26.000000000 +0200
@@ -2,7 +2,7 @@
 set -ue
 
 OCAMLV=4.04.1
-OPAMV=2.0.6
+OPAMV=2.0.7
 OPAM_REPO=https://opam.ocaml.org/2.0
 DEBUG=
 MAKESELF=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/client/opamAdminCommand.ml 
new/opam-2.0.7/src/client/opamAdminCommand.ml
--- old/opam-2.0.6/src/client/opamAdminCommand.ml       2020-01-15 
16:31:02.000000000 +0100
+++ new/opam-2.0.7/src/client/opamAdminCommand.ml       2020-04-20 
21:59:26.000000000 +0200
@@ -19,12 +19,14 @@
 
 let admin_command_man = [
   `S "DESCRIPTION";
-  `P "This command can perform various actions on repositories in the opam \
-      format. It is expected to be run from the root of a repository, i.e. a \
-      directory containing a 'repo' file and a subdirectory 'packages/' \
-      holding package definition within subdirectories. A 'compilers/' \
-      subdirectory (opam repository format version < 2) will also be used by \
-      the $(b,upgrade-format) subcommand."
+  `P (Printf.sprintf
+       "This command can perform various actions on repositories in the opam \
+        format. It is expected to be run from the root of a repository, i.e. a 
\
+        directory containing a 'repo' file and a subdirectory 'packages%s' \
+        holding package definition within subdirectories. A 'compilers%s' \
+        subdirectory (opam repository format version < 2) will also be used by 
\
+        the $(b,upgrade-format) subcommand."
+       OpamArg.dir_sep OpamArg.dir_sep)
 ]
 
 let index_command_doc =
@@ -189,8 +191,10 @@
   let link_arg =
     Arg.(value & opt (some OpamArg.dirname) None &
          info ["link"] ~docv:"DIR" ~doc:
-           "Create reverse symbolic links to the archives within $(i,DIR), in \
-            the form $(b,DIR/PKG.VERSION/FILENAME).")
+           (Printf.sprintf
+             "Create reverse symbolic links to the archives within $(i,DIR), 
in \
+              the form $(b,DIR%sPKG.VERSION%sFILENAME)."
+             OpamArg.dir_sep OpamArg.dir_sep))
   in
   let jobs_arg =
     Arg.(value & opt OpamArg.positive_integer 8 &
@@ -264,7 +268,7 @@
           "This command scans through package definitions, and add hashes as \
            requested (fetching the archives if required). A cache is generated 
\
            in %s for subsequent runs."
-          (OpamFilename.Dir.to_string cache_dir |> Cmdliner.Manpage.escape));
+          (OpamArg.escape_path (OpamFilename.Dir.to_string cache_dir)));
   ]
   in
   let hash_kinds = [`MD5; `SHA256; `SHA512] in
@@ -456,18 +460,21 @@
   let doc = upgrade_command_doc in
   let man = [
     `S "DESCRIPTION";
-    `P "This command reads repositories from earlier opam versions, and \
-        converts them to repositories suitable for the current opam version. \
-        Packages might be created or renamed, and any compilers defined in the 
\
-        old format ('compilers/' directory) will be turned into packages, \
-        using a pre-defined hierarchy that assumes OCaml compilers."
+    `P (Printf.sprintf
+         "This command reads repositories from earlier opam versions, and \
+          converts them to repositories suitable for the current opam version. 
\
+          Packages might be created or renamed, and any compilers defined in 
the \
+          old format ('compilers%s' directory) will be turned into packages, \
+          using a pre-defined hierarchy that assumes OCaml compilers."
+         OpamArg.dir_sep)
   ]
   in
   let clear_cache_arg =
     let doc =
-      "Instead of running the upgrade, clear the cache of archive hashes (held 
\
-       in ~/.cache), that is used to avoid re-downloading files to obtain \
-       their hashes at every run."
+      Printf.sprintf
+       "Instead of running the upgrade, clear the cache of archive hashes 
(held \
+        in ~%s.cache), that is used to avoid re-downloading files to obtain \
+        their hashes at every run." OpamArg.dir_sep
     in
     Arg.(value & flag & info ["clear-cache"] ~doc)
   in
@@ -680,14 +687,17 @@
     Arg.string
 
 let env_arg =
-  Arg.(value & opt (list string) [] & info ["environment"] ~doc:
-         "Use the given opam environment, in the form of a list \
-          comma-separated 'var=value' bindings, when resolving variables. \
-          This is used e.g. when computing available packages: if undefined, \
-          availability of packages is not taken into account. Note that, \
-          unless overridden, variables like 'root' or 'opam-version' may be \
-          taken from the current opam installation. What is defined in \
-          $(i,~/.opam/config) is always ignored.")
+  Arg.(value & opt (list string) [] & info ["environment"] ~doc:(
+         Printf.sprintf
+          "Use the given opam environment, in the form of a list of \
+           comma-separated 'var=value' bindings, when resolving variables. 
This \
+           is used e.g. when computing available packages: if undefined, \
+           availability of packages will be assumed as soon as it can not be \
+           resolved purely from globally defined variables. Note that, unless \
+           overridden, variables like 'root' or 'opam-version' may be taken \
+           from the current opam installation. What is defined in \
+           $(i,~%s.opam%sconfig) is always ignored."
+          OpamArg.dir_sep OpamArg.dir_sep))
 
 let state_selection_arg =
   let docs = OpamArg.package_selection_section in
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/client/opamArg.ml 
new/opam-2.0.7/src/client/opamArg.ml
--- old/opam-2.0.6/src/client/opamArg.ml        2020-01-15 16:31:02.000000000 
+0100
+++ new/opam-2.0.7/src/client/opamArg.ml        2020-04-20 21:59:26.000000000 
+0200
@@ -391,6 +391,18 @@
 ]
 
 (* Converters *)
+
+(* Windows directory separator need to be escaped for manpage *)
+let dir_sep, escape_path =
+  match Filename.dir_sep with
+  | "\\" ->
+    let esc = "\\\\" in
+    esc,
+    fun p ->
+      OpamStd.List.concat_map esc (fun x -> x)
+        (OpamStd.String.split_delim p '\\')
+  | ds -> ds, fun x -> x
+
 let pr_str = Format.pp_print_string
 
 let repository_name =
@@ -423,7 +435,7 @@
 
 let dirname =
   let parse str = `Ok (OpamFilename.Dir.of_string str) in
-  let print ppf dir = pr_str ppf (OpamFilename.prettify_dir dir) in
+  let print ppf dir = pr_str ppf (escape_path (OpamFilename.prettify_dir dir)) 
in
   parse, print
 
 let existing_filename_dirname_or_dash =
@@ -829,8 +841,11 @@
 
 let dot_profile_flag =
   mk_opt ["dot-profile"]
-    "FILENAME" "Name of the configuration file to update instead of \
-                $(i,~/.profile) or $(i,~/.zshrc) based on shell detection."
+    "FILENAME"
+    (Printf.sprintf
+      "Name of the configuration file to update instead of \
+       $(i,~%s.profile) or $(i,~%s.zshrc) based on shell detection."
+      dir_sep dir_sep)
     (Arg.some filename) None
 
 let repo_kind_flag =
@@ -869,16 +884,18 @@
 
 let atom_or_local_list =
   arg_list "PACKAGES"
-    "List of package names, with an optional version or constraint, e.g `pkg', 
\
-     `pkg.1.0' or `pkg>=0.5' ; or files or directory names containing package \
-     description, with explicit directory (e.g. `./foo.opam' or `.')"
+    (Printf.sprintf
+      "List of package names, with an optional version or constraint, e.g 
`pkg', \
+       `pkg.1.0' or `pkg>=0.5' ; or files or directory names containing 
package \
+       description, with explicit directory (e.g. `.%sfoo.opam' or `.')" 
dir_sep)
     atom_or_local
 
 let atom_or_dir_list =
   arg_list "PACKAGES"
-    "List of package names, with an optional version or constraint, e.g `pkg', 
\
-     `pkg.1.0' or `pkg>=0.5' ; or directory names containing package \
-     description, with explicit directory (e.g. `./srcdir' or `.')"
+    (Printf.sprintf
+      "List of package names, with an optional version or constraint, e.g 
`pkg', \
+       `pkg.1.0' or `pkg>=0.5' ; or directory names containing package \
+       description, with explicit directory (e.g. `.%ssrcdir' or `.')" dir_sep)
     atom_or_dir
 
 let nonempty_atom_list =
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/client/opamArg.mli 
new/opam-2.0.7/src/client/opamArg.mli
--- old/opam-2.0.6/src/client/opamArg.mli       2020-01-15 16:31:02.000000000 
+0100
+++ new/opam-2.0.7/src/client/opamArg.mli       2020-04-20 21:59:26.000000000 
+0200
@@ -27,6 +27,13 @@
   string list -> string -> string ->
   'a Arg.converter -> 'a list Term.t
 
+(* Escaped Windows directory separator. To use instead of [Filename.dir_sep] 
for
+   manpage strings *)
+val dir_sep: string
+
+(* Escape Windows path *)
+val escape_path: string -> string
+
 (** {2 Flags} *)
 
 (** --short *)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/client/opamCommands.ml 
new/opam-2.0.7/src/client/opamCommands.ml
--- old/opam-2.0.6/src/client/opamCommands.ml   2020-01-15 16:31:02.000000000 
+0100
+++ new/opam-2.0.7/src/client/opamCommands.ml   2020-04-20 21:59:26.000000000 
+0200
@@ -75,8 +75,10 @@
 let global_options =
   let no_self_upgrade =
     mk_flag ~section:global_option_section ["no-self-upgrade"]
-      "Opam will replace itself with a newer binary found \
-       at $(b,OPAMROOT/opam) if present. This disables this behaviour." in
+      (Printf.sprintf
+        "Opam will replace itself with a newer binary found \
+         at $(b,OPAMROOT%sopam) if present. This disables this behaviour."
+        OpamArg.dir_sep) in
   let self_upgrade no_self_upgrade options =
     let self_upgrade_status =
       if OpamStd.Config.env_string "NOSELFUPGRADE" =
@@ -169,25 +171,31 @@
   let man = [
     `S "DESCRIPTION";
     `P "Initialise the opam state, or update opam init options";
-    `P "The $(b,init) command initialises a local \"opam root\" (by default, \
-        $(i,~/.opam/)) that holds opam's data and packages. This is a \
-        necessary step for normal operation of opam. The initial software \
-        repositories are fetched, and an initial 'switch' can also be \
-        installed, according to the configuration and options. These can be \
-        afterwards configured using $(b,opam switch) and $(b,opam \
-        repository).";
-    `P "The initial repository and defaults can be set through a \
-        configuration file found at $(i,~/.opamrc) or $(i,/etc/opamrc).";
+    `P (Printf.sprintf
+         "The $(b,init) command initialises a local \"opam root\" (by default, 
\
+          $(i,~%s.opam%s)) that holds opam's data and packages. This is a \
+          necessary step for normal operation of opam. The initial software \
+          repositories are fetched, and an initial 'switch' can also be \
+          installed, according to the configuration and options. These can be \
+          afterwards configured using $(b,opam switch) and $(b,opam \
+          repository)."
+         OpamArg.dir_sep OpamArg.dir_sep);
+    `P (Printf.sprintf
+         "The initial repository and defaults can be set through a \
+          configuration file found at $(i,~%s.opamrc) or $(i,/etc/opamrc)."
+         OpamArg.dir_sep);
     `P "Additionally, this command allows one to customise some aspects of 
opam's \
         shell integration, when run initially (avoiding the interactive \
         dialog), but also at any later time.";
     `S "ARGUMENTS";
     `S "OPTIONS";
     `S "CONFIGURATION FILE";
-    `P "Any field from the built-in initial configuration can be overridden \
-        through $(i,~/.opamrc), $(i,/etc/opamrc), or a file supplied with \
-        $(i,--config). The default configuration for this version of opam \
-        can be obtained using $(b,--show-default-opamrc).";
+    `P (Printf.sprintf
+         "Any field from the built-in initial configuration can be overridden \
+          through $(i,~%s.opamrc), $(i,/etc/opamrc), or a file supplied with \
+          $(i,--config). The default configuration for this version of opam \
+          can be obtained using $(b,--show-default-opamrc)."
+         OpamArg.dir_sep);
     `S OpamArg.build_option_section;
   ] in
   let compiler =
@@ -265,8 +273,9 @@
   in
   let no_config_file =
     mk_flag ["no-opamrc"]
-      "Don't read `/etc/opamrc' or `~/.opamrc': use the default settings and \
-       the files specified through $(b,--config) only"
+      (Printf.sprintf
+      "Don't read `/etc/opamrc' or `~%s.opamrc': use the default settings and \
+       the files specified through $(b,--config) only" OpamArg.dir_sep)
   in
   let reinit =
     mk_flag ["reinit"]
@@ -1941,16 +1950,17 @@
         switch set) to set the currently active switch. Without argument, \
         lists installed switches, with one switch argument, defaults to \
         $(b,set).";
-    `P ("Switch handles $(i,SWITCH) can be either a plain name, for switches \
-         that will be held inside $(i,~/.opam), or a directory name, which in \
-         that case is the directory where the switch prefix will be installed, 
as "
-        ^ OpamSwitch.external_dirname ^
-        ". Opam will automatically select a switch by that name found in the \
+    `P (Printf.sprintf
+         "Switch handles $(i,SWITCH) can be either a plain name, for switches \
+         that will be held inside $(i,~%s.opam), or a directory name, which in 
\
+         that case is the directory where the switch prefix will be installed, 
as \
+         %s. Opam will automatically select a switch by that name found in the 
\
          current directory or its parents, unless $(i,OPAMSWITCH) is set or \
          $(b,--switch) is specified. When creating a directory switch, if \
          package definitions are found locally, the user is automatically \
          prompted to install them after the switch is created unless \
-         $(b,--no-install) is specified.");
+         $(b,--no-install) is specified."
+        OpamArg.dir_sep OpamSwitch.external_dirname);
     `P "$(b,opam switch set) sets the default switch globally, but it is also \
         possible to select a switch in a given shell session, using the \
         environment. For that, use $(i,eval \\$(opam env \
@@ -2887,8 +2897,10 @@
   in
   let download_cache =
     mk_flag ["c"; "download-cache"]
-      "Clear the cache of downloaded files (\\$OPAMROOT/download-cache), as \
-       well as the obsolete \\$OPAMROOT/archives, if that exists."
+      (Printf.sprintf
+        "Clear the cache of downloaded files (\\$OPAMROOT%sdownload-cache), as 
\
+         well as the obsolete \\$OPAMROOT%sarchives, if that exists."
+        OpamArg.dir_sep OpamArg.dir_sep)
   in
   let repos =
     mk_flag ["unused-repositories"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/client/opamConfigCommand.ml 
new/opam-2.0.7/src/client/opamConfigCommand.ml
--- old/opam-2.0.6/src/client/opamConfigCommand.ml      2020-01-15 
16:31:02.000000000 +0100
+++ new/opam-2.0.7/src/client/opamConfigCommand.ml      2020-04-20 
21:59:26.000000000 +0200
@@ -392,4 +392,6 @@
   in
   match OpamSystem.resolve_command ~env cmd with
   | Some cmd -> raise (OpamStd.Sys.Exec (cmd, args, env))
-  | None -> raise (OpamStd.Sys.Exit 127)
+  | None ->
+    OpamConsole.error "Command not found '%s'" cmd;
+    raise (OpamStd.Sys.Exit 127)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/core/opamCompat.ml 
new/opam-2.0.7/src/core/opamCompat.ml
--- old/opam-2.0.6/src/core/opamCompat.ml       2020-01-15 16:31:02.000000000 
+0100
+++ new/opam-2.0.7/src/core/opamCompat.ml       2020-04-20 21:59:26.000000000 
+0200
@@ -109,3 +109,7 @@
         ""
 end
 #endif
+
+#if OCAML_VERSION < (4, 7, 0)
+module Stdlib = Pervasives
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/core/opamCompat.mli 
new/opam-2.0.7/src/core/opamCompat.mli
--- old/opam-2.0.6/src/core/opamCompat.mli      2020-01-15 16:31:02.000000000 
+0100
+++ new/opam-2.0.7/src/core/opamCompat.mli      2020-04-20 21:59:26.000000000 
+0200
@@ -89,3 +89,7 @@
   val extension : string -> string
 end
 #endif
+
+#if OCAML_VERSION < (4, 7, 0)
+module Stdlib = Pervasives
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/core/opamFilename.ml 
new/opam-2.0.7/src/core/opamFilename.ml
--- old/opam-2.0.6/src/core/opamFilename.ml     2020-01-15 16:31:02.000000000 
+0100
+++ new/opam-2.0.7/src/core/opamFilename.ml     2020-04-20 21:59:26.000000000 
+0200
@@ -374,6 +374,7 @@
 let with_flock flag ?dontblock file f =
   let lock = OpamSystem.flock flag ?dontblock (to_string file) in
   try
+    let open OpamCompat in
     let (fd, ch) =
       match OpamSystem.get_lock_fd lock with
       | exception Not_found ->
@@ -383,14 +384,14 @@
           else
             "/dev/null"
         in
-        let ch = Pervasives.open_out null in
+        let ch = Stdlib.open_out null in
         Unix.descr_of_out_channel ch, Some ch
       | fd ->
         fd, None
     in
     let r = f fd in
     OpamSystem.funlock lock;
-    OpamStd.Option.iter Pervasives.close_out ch;
+    OpamStd.Option.iter Stdlib.close_out ch;
     r
   with e ->
     OpamStd.Exn.finalise e @@ fun () ->
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/core/opamProcess.ml 
new/opam-2.0.7/src/core/opamProcess.ml
--- old/opam-2.0.6/src/core/opamProcess.ml      2020-01-15 16:31:02.000000000 
+0100
+++ new/opam-2.0.7/src/core/opamProcess.ml      2020-04-20 21:59:26.000000000 
+0200
@@ -379,10 +379,11 @@
   if isset_verbose_f () then
     stop_verbose_f ()
   else if p.p_verbose then
-    (verbose_print_cmd p;
+    (let open OpamCompat in
+     verbose_print_cmd p;
      List.iter verbose_print_out stdout;
      List.iter verbose_print_out stderr;
-     flush Pervasives.stdout);
+     flush Stdlib.stdout);
   let info =
     make_info ?code ?signal
       ~cmd:p.p_name ~args:p.p_args ~cwd:p.p_cwd ~metadata:p.p_metadata
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/core/opamStd.ml 
new/opam-2.0.7/src/core/opamStd.ml
--- old/opam-2.0.6/src/core/opamStd.ml  2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/src/core/opamStd.ml  2020-04-20 21:59:26.000000000 +0200
@@ -838,7 +838,7 @@
 
   let registered_at_exit = ref []
   let at_exit f =
-    Pervasives.at_exit f;
+    Stdlib.at_exit f;
     registered_at_exit := f :: !registered_at_exit
   let exec_at_exit () =
     List.iter
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/core/opamStd.mli 
new/opam-2.0.7/src/core/opamStd.mli
--- old/opam-2.0.6/src/core/opamStd.mli 2020-01-15 16:31:02.000000000 +0100
+++ new/opam-2.0.7/src/core/opamStd.mli 2020-04-20 21:59:26.000000000 +0200
@@ -409,7 +409,7 @@
 
   (** {3 Exit handling} *)
 
-  (** Like Pervasives.at_exit but with the possibility to call manually
+  (** Like Stdlib.at_exit but with the possibility to call manually
       (eg. before exec()) *)
   val at_exit: (unit -> unit) -> unit
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/core/opamVersionCompare.mli 
new/opam-2.0.7/src/core/opamVersionCompare.mli
--- old/opam-2.0.6/src/core/opamVersionCompare.mli      2020-01-15 
16:31:02.000000000 +0100
+++ new/opam-2.0.7/src/core/opamVersionCompare.mli      2020-04-20 
21:59:26.000000000 +0200
@@ -36,5 +36,5 @@
 
 (** [compare x y] returns 0 if x is eqivalent to y, -1 if x is smaller
     than y, and 1 if x is greater than y. This is consistent with
-    [Pervasives.compare]. *)
+    [Stdlib.compare]. *)
 val compare : string -> string -> int
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/opam-2.0.6/src/format/opamFormula.ml 
new/opam-2.0.7/src/format/opamFormula.ml
--- old/opam-2.0.6/src/format/opamFormula.ml    2020-01-15 16:31:02.000000000 
+0100
+++ new/opam-2.0.7/src/format/opamFormula.ml    2020-04-20 21:59:26.000000000 
+0200
@@ -538,7 +538,6 @@
     | _ :: r -> Some (ors (aux2 r))
 
 let formula_of_version_set set subset =
-  let module S = OpamPackage.Version.Set in
   match
     gen_formula
       (OpamPackage.Version.Set.elements set)


Reply via email to