Your message dated Mon, 20 Nov 2017 10:21:46 +0100
with message-id <[email protected]>
and subject line
has caused the Debian Bug report #867994,
regarding libllvm-ocaml-dev: unhandled symlink to directory conversion:
/usr/lib/ocaml/llvm
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
867994: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=867994
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: libllvm-ocaml-dev
Version: 1:4.0-37~exp2
Severity: serious
User: [email protected]
Usertags: piuparts
Hi,
an upgrade test with piuparts revealed that your package installs files
over existing symlinks and possibly overwrites files owned by other
packages. This usually means an old version of the package shipped a
symlink but that was later replaced by a real (and non-empty)
directory. This kind of overwriting another package's files cannot be
detected by dpkg.
This was observed on the following upgrade paths:
sid -> experimental
For /usr/share/doc/PACKAGE this may not be problematic as long as both
packages are installed, ship byte-for-byte identical files and are
upgraded in lockstep. But once one of the involved packages gets
removed, the other one will lose its documentation files, too,
including the copyright file, which is a violation of Policy 12.5:
https://www.debian.org/doc/debian-policy/ch-docs.html#s-copyrightfile
For other overwritten locations anything interesting may happen.
Note that dpkg intentionally does not replace directories with symlinks
and vice versa, you need the maintainer scripts to do this.
See in particular the end of point 4 in
https://www.debian.org/doc/debian-policy/ch-maintainerscripts.html#s-unpackphase
It is recommended to use the dpkg-maintscript-helper commands
'dir_to_symlink' and 'symlink_to_dir' (available since dpkg 1.17.14)
to perform the conversion, ideally using d/$PACKAGE.maintscript.
Do not forget to add 'Pre-Depends: ${misc:Pre-Depends}' in d/control.
See dpkg-maintscript-helper(1) and dh_installdeb(1) for details.
>From the attached log (scroll to the bottom...):
1m5.1s ERROR: FAIL: silently overwrites files via directory symlinks:
/usr/lib/ocaml/llvm/libllvm.a (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/libllvm.a (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
/usr/lib/ocaml/llvm/libllvm_AArch64.a (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/libllvm_AArch64.a (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
/usr/lib/ocaml/llvm/libllvm_AMDGPU.a (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/libllvm_AMDGPU.a (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
/usr/lib/ocaml/llvm/libllvm_ARM.a (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/libllvm_ARM.a (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
/usr/lib/ocaml/llvm/libllvm_BPF.a (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/libllvm_BPF.a (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
/usr/lib/ocaml/llvm/libllvm_Hexagon.a (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/libllvm_Hexagon.a (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
[...]
/usr/lib/ocaml/llvm/llvm_vectorize.cma (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/llvm_vectorize.cma (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
/usr/lib/ocaml/llvm/llvm_vectorize.cmi (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/llvm_vectorize.cmi (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
/usr/lib/ocaml/llvm/llvm_vectorize.cmx (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/llvm_vectorize.cmx (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
/usr/lib/ocaml/llvm/llvm_vectorize.cmxa (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/llvm_vectorize.cmxa (libllvm-3.8-ocaml-dev)
/usr/lib/ocaml/llvm -> llvm-3.8
/usr/lib/ocaml/llvm/llvm_vectorize.mli (libllvm-4.0-ocaml-dev) !=
/usr/lib/ocaml/llvm-3.8/llvm_vectorize.mli (?)
/usr/lib/ocaml/llvm -> llvm-3.8
cheers,
Andreas
libllvm-ocaml-dev_1:4.0-37~exp2.log.gz
Description: application/gzip
--- End Message ---
--- Begin Message ---
fixed 867994 0.38~exp1
thanks
--- End Message ---