Bug 1708871

Summary: Upgrade of F29 to F30 fails due to conflict between python[23]-filelock
Product: [Fedora] Fedora Reporter: Elliott Sales de Andrade <quantum.analyst>
Component: python-filelockAssignee: Scott K Logan <logans>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 30CC: logans
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: python-filelock-3.0.12-2.fc30 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-07-10 00:51:32 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Elliott Sales de Andrade 2019-05-11 09:01:27 UTC
Description of problem:
If python2-filelock is installed on Fedora 29, then upgrade generates no issues, but the transaction check fails due to conflicting files. Due to the manpage being in a common location, the F30 package needs to Conflict or Obsoletes the old python2-filelock version.


Version-Release number of selected component (if applicable):
python2-filelock-2.0.8-7.fc29.noarch -> python3-filelock-3.0.10-2.fc30.noarch 


Steps to Reproduce:
1. Install python2-filelock on F29
2. Attempt to upgrade to F30


Actual results:
Error: Transaction check error:
  file /usr/share/man/man1/py-filelock.1.gz from install of python3-filelock-3.0.10-2.fc30.noarch conflicts with file from package python2-filelock-2.0.8-7.fc29.noarch


Expected results:
Upgrade should work.

Comment 1 Scott K Logan 2019-05-20 00:24:18 UTC
Adding Conflicts with the older version will just prevent you from installing the Fedora 30 Python 3 package, which is probably getting pulled in during your update for a reason. I doubt that will allow the update to proceed.

The problem here is that the python 2 package has been dropped, so it has no updated Fedora 30 package to roll to. You should uninstall the Python 2 package before updating, since it no longer exists in Fedora 30.

--scott

Comment 2 Elliott Sales de Andrade 2019-05-20 04:35:39 UTC
(In reply to Scott K Logan from comment #1)
> Adding Conflicts with the older version will just prevent you from
> installing the Fedora 30 Python 3 package, which is probably getting pulled
> in during your update for a reason. I doubt that will allow the update to
> proceed.

Yes, that's good, because you should not depend on implicit file conflicts:
https://docs.fedoraproject.org/en-US/packaging-guidelines/Conflicts/#_implicit_conflicts

Explicit Conflicts can be resolved with --allowerasing. That being said, you should request that Obsoletes be added to fedora-obsolete-packages (or to your own package if you prefer):

https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal#Upgrade.2Fcompatibility_impact

> The problem here is that the python 2 package has been dropped, so it has no
> updated Fedora 30 package to roll to. You should uninstall the Python 2
> package before updating, since it no longer exists in Fedora 30.
> 
> --scott

Yes, I know how to fix it; this report is about fixing it for others correctly.

Comment 3 Elliott Sales de Andrade 2019-06-27 22:46:42 UTC
Ping? This is not a difficult fix; you just have to decide which way you want to fix it.

Comment 4 Fedora Update System 2019-06-28 18:33:54 UTC
FEDORA-2019-c6ab079d28 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-c6ab079d28

Comment 5 Fedora Update System 2019-06-29 00:47:55 UTC
python-filelock-3.0.12-2.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-c6ab079d28

Comment 6 Fedora Update System 2019-07-10 00:51:32 UTC
python-filelock-3.0.12-2.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.