Description of problem: Attempting to upgrade packages on this FC30 system produced file conflict error messages with grib. Version-Release number of selected component (if applicable): see below How reproducible: always so far Steps to Reproduce: 1.see below 2. 3. Actual results: see below Expected results: error free system upgrade Additional info: dnf -y --skip-broken upgrade plplot-data.noarch plplot-libs.x86_64 plplot.x86_64 Last metadata expiration check: 0:09:54 ago on Sun 17 Feb 2019 12:08:41 AM PST. Dependencies resolved. ============================================================================================================================================= Package Architecture Version Repository Size ============================================================================================================================================= Upgrading: gdl x86_64 0.9.9-4.fc30 rawhide 3.6 M gdl-common noarch 0.9.9-4.fc30 rawhide 207 k plplot x86_64 5.14.0-1.fc30 rawhide 484 k plplot-data noarch 5.14.0-1.fc30 rawhide 928 k plplot-libs x86_64 5.14.0-1.fc30 rawhide 388 k python3-gdl x86_64 0.9.9-4.fc30 rawhide 3.4 M Installing dependencies: eccodes x86_64 2.9.2-2.fc30 rawhide 750 k eccodes-data noarch 2.9.2-2.fc30 rawhide 3.3 M Transaction Summary ============================================================================================================================================= Install 2 Packages Upgrade 6 Packages Total size: 13 M Downloading Packages: [SKIPPED] eccodes-2.9.2-2.fc30.x86_64.rpm: Already downloaded [SKIPPED] eccodes-data-2.9.2-2.fc30.noarch.rpm: Already downloaded [SKIPPED] gdl-0.9.9-4.fc30.x86_64.rpm: Already downloaded [SKIPPED] gdl-common-0.9.9-4.fc30.noarch.rpm: Already downloaded [SKIPPED] plplot-5.14.0-1.fc30.x86_64.rpm: Already downloaded [SKIPPED] plplot-data-5.14.0-1.fc30.noarch.rpm: Already downloaded [SKIPPED] plplot-libs-5.14.0-1.fc30.x86_64.rpm: Already downloaded [SKIPPED] python3-gdl-0.9.9-4.fc30.x86_64.rpm: Already downloaded Running transaction check Transaction check succeeded. Running transaction test The downloaded packages were saved in cache until the next successful transaction. You can remove cached packages by executing 'dnf clean packages'. Error: Transaction check error: file /usr/bin/grib2ppm from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_compare from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_copy from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_count from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_dump from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_filter from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_get from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_get_data from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_histogram from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_index_build from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_ls from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_set from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_to_netcdf from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/tigge_accumulations from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/tigge_check from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/tigge_name from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/tigge_split from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 Error Summary -------------
Yes this is a known problem at the moment, and it needs to be fixed by rebuilding gdl and plplot. grib_api is dead upstream and no longer supported. It needs to be replaced by eccodes. The binary interface is identical, so packagers only need to insert the new name of the new library. However, there is still an issue with portability. Eccodes does not support all architectures that are provided by Fedora. The library builds, but not all provided test cases pass, so I cannot be confident that all functionality works as intended on the problematic architectures. These are: i686, s390x, and armv7hl. (any help on debugging this is appreciated!) For these 3 architectures there is no choice but to stay with the old grib_api library untill this is solved. A simple "%ifarch i686 ppc64 s390x armv7hl" statement can be used to implement this for gdl and plplot in their spec files, as I have done for pygrib. I will file bugs now for gdl and plplot to inform the maintainers and make this bug one dependent on them.
gdl already uses eccodes. Try running: dnf upgrade --allow-erasing
It is probably time to have eccodes obsolete grib_api.
Orion, "allowerasing" is not hyphenated... How can you close this as not a bug? What else is it if not a bug? George...
Thanks. Did that work? I did not close this bug - I closed the bug filed against plplot which does not use grib_api or eccodes.
Orion, Oops. The --allowerasing switch did not "fix" anything. George...
Can you please post the output?
Orion, I presume this is what you want. script -c "dnf -y --skip-broken --allowerasing upgrade plplot-data.noarch plplot-libs.x86_64 plplot.x86_64" upgrade.log Script started, file is upgrade.log Last metadata expiration check: 0:19:15 ago on Mon 18 Feb 2019 08:37:06 PM PST. Dependencies resolved. ============================================================================================================================================= Package Architecture Version Repository Size ============================================================================================================================================= Upgrading: gdl x86_64 0.9.9-4.fc30 rawhide 3.6 M gdl-common noarch 0.9.9-4.fc30 rawhide 207 k plplot x86_64 5.14.0-1.fc30 rawhide 484 k plplot-data noarch 5.14.0-1.fc30 rawhide 928 k plplot-libs x86_64 5.14.0-1.fc30 rawhide 388 k python3-gdl x86_64 0.9.9-4.fc30 rawhide 3.4 M Installing dependencies: eccodes x86_64 2.9.2-2.fc30 rawhide 750 k eccodes-data noarch 2.9.2-2.fc30 rawhide 3.3 M Transaction Summary ============================================================================================================================================= Install 2 Packages Upgrade 6 Packages Total size: 13 M Downloading Packages: [SKIPPED] eccodes-2.9.2-2.fc30.x86_64.rpm: Already downloaded [SKIPPED] eccodes-data-2.9.2-2.fc30.noarch.rpm: Already downloaded [SKIPPED] gdl-0.9.9-4.fc30.x86_64.rpm: Already downloaded [SKIPPED] gdl-common-0.9.9-4.fc30.noarch.rpm: Already downloaded [SKIPPED] plplot-5.14.0-1.fc30.x86_64.rpm: Already downloaded [SKIPPED] plplot-data-5.14.0-1.fc30.noarch.rpm: Already downloaded [SKIPPED] plplot-libs-5.14.0-1.fc30.x86_64.rpm: Already downloaded [SKIPPED] python3-gdl-0.9.9-4.fc30.x86_64.rpm: Already downloaded Running transaction check Transaction check succeeded. Running transaction test The downloaded packages were saved in cache until the next successful transaction. You can remove cached packages by executing 'dnf clean packages'. Error: Transaction check error: file /usr/bin/grib2ppm from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_compare from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_copy from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_count from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_dump from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_filter from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_get from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_get_data from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_histogram from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_index_build from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_ls from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_set from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/grib_to_netcdf from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/tigge_accumulations from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/tigge_check from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/tigge_name from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 file /usr/bin/tigge_split from install of eccodes-2.9.2-2.fc30.x86_64 conflicts with file from package grib_api-1.27.0-3.fc30.x86_64 Error Summary -------------
could this be caused by this line in the current eccodes.spec? Obsoletes: grib_api < %{final_grib_api_version} with %global final_grib_api_version 1.27.0-2 Meanwhile I noticed grib_api is at version 1.27.0-3, so that might explain why this conflicted?
Yup, looks like the obsoletes version needs to get bumped. Perhaps set it to 1.27.1?
I bumped the obsoletes version and rebuilt for f30 and rawhide/f31. Hope that solves the problem.
can this bug be closed now or are there remaining issues?
Jos, I presume you tested these changes. Yes? If they worked, then by all means close this bug please. I'm at FC31 (rawhide) now... all of these pkgs are installed w/o problems. grib_api somehow gets renamed to eccodes via packaging or dnf or something... Best regards, George...
I think we're in the clear.
thanks for confirming and closing. Yes, tested it on my side (I am on f29) and gdl installs next to eccodes w/o issues for me.