Hello,

when file conflicts in packages occur,
why does the actual conflict get written to stdout and only an non-informative error message to stderr? Example:
Stderr only:
warning: dependency cycle detected:
warning: libglvnd will be installed before its mesa dependency
error: failed to commit transaction (conflicting files)
==> ERROR: 'pacman' failed to install missing dependencies.
warning: dependency cycle detected:
warning: harfbuzz will be installed before its freetype2 dependency
warning: dependency cycle detected:
warning: libglvnd will be installed before its mesa dependency
error: failed to commit transaction (conflicting files)
==> ERROR: 'pacman' failed to install missing dependencies.

Both outputs combined:
:: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... error: failed to commit transaction (conflicting files) /opt/ros/melodic/lib/python3.9/site-packages/libgtest.so exists in both 'ros-melodic-moveit-core' and 'ros-melodic-tf' /opt/ros/melodic/lib/python3.9/site-packages/libgtest.so.1.10.0 exists in both 'ros-melodic-moveit-core' and 'ros-melodic-tf' Errors occurred, no packages were upgraded. ==> ERROR: 'pacman' failed to install missing dependencies. ==> Missing dependencies: -> ros-build-tools -> ros-melodic-message-filters -> ros-melodic-moveit-core -> ros-melodic-moveit-msgs

As e.g. the dependency cycle errors get fully written to stderr, is this a bug or itended? Imho this one line more is important to stderr, otherwise the whole stderr log helps me as much as the returncode.

Regards,

Oskar

Reply via email to