[Bug 260598] pkg update replacing existing package with an different package due to conflict

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 21 Dec 2021 22:01:12 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260598

            Bug ID: 260598
           Summary: pkg update replacing existing package with an
                    different package due to conflict
           Product: Base System
           Version: 13.0-RELEASE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: darren.henderson@gmail.com

13.0-RELEASE-p4 amd64
pkg 1.17.5

I observed what I consider to be an incorrect pkg behavior. It tries to replace
an existing package with a different package that is not currently installed,
apparently due to a name collision.

pkg upgrade resulted in

Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking for upgrades (1 candidates): 100%
Processing candidates (1 candidates): 100%
Checking integrity... done (1 conflicting)
  - yt-dlp-2021.12.01 conflicts with youtube_dl-2021.12.17 on
/usr/local/bin/youtube-dl
Checking integrity... done (0 conflicting)
The following 5 package(s) will be affected (of 0 checked):

Installed packages to be REMOVED:
        youtube_dl: 2021.12.17

New packages to be INSTALLED:
        py38-websockets: 10.1
        yt-dlp: 2021.12.01

Installed packages to be UPGRADED:
        gpodder: 3.10.17 -> 3.10.17_1

Installed packages to be REINSTALLED:
        pkg-1.17.5

Number of packages to be removed: 1
Number of packages to be installed: 2
Number of packages to be upgraded: 1
Number of packages to be reinstalled: 1

The process will require 1 MiB more space.

Proceed with this action? [y/N]: n



The only time I could see this behavior being acceptable is if I were
attempting to install yt-dlp while I have youtube_dl installed. Since I'm doing
an upgrade it should only offer to upgrade youtube_dl if there is an upgrade
available for it. It should not try to remove the installed package and replace
it with something from a different project.

This behavior is dangerous - it could cause issues anytime there is a name
collision.

-- 
You are receiving this mail because:
You are the assignee for the bug.