(Incorporate suggested changes from the mailing list) |
|||
Line 55: | Line 55: | ||
To make it clear that "libusb" should not be used anymore and as "libusbx" does not exist anymore, it makes sense to rename the packages as follows: | To make it clear that "libusb" should not be used anymore and as "libusbx" does not exist anymore, it makes sense to rename the packages as follows: | ||
* libusb-compat | * libusb-compat-0.1 (this *is* the upstream name, see https://github.com/libusb/libusb-compat-0.1) | ||
* libusb1 | * libusb1 | ||
There should be no/few users left for `libusb-compat-0.1`, but currently some packages are incorrectly using `libusb`. As such, the idea is to: | |||
* '''not''' add the corresponding `Provides:` line for the rename to `libusb-compat-0.1-devel` | |||
* Add `Provides: deprecated()` to the `libusb-compat-0.1` package | |||
== Feedback == | == Feedback == |
Revision as of 16:28, 3 December 2020
Rename libusb packages and deprecated old API
Summary
Rename libusb
to libusb-compat
and libusbx
to libusb1
. Do not provide an automated update path for the old libusb
build dependency as packages should–and likely can–be updated to use libusb1
.
Owner
- Name: Benjamin Berg
- Email: bberg@redhat.com
Current status
- Targeted release: Fedora 34
- Last updated: 2020-12-03
- FESCo issue: #2510
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Detailed Description
Currently we have two related packages:
- libusb: Containing a compatibility layer of the 0.1 API for libusb 1.0
- libusbx: Containing the libusb 1.0 API, where the name "libusbx" derives from a fork that existed for a while
To make it clear that "libusb" should not be used anymore and as "libusbx" does not exist anymore, it makes sense to rename the packages as follows:
- libusb-compat-0.1 (this *is* the upstream name, see https://github.com/libusb/libusb-compat-0.1)
- libusb1
There should be no/few users left for libusb-compat-0.1
, but currently some packages are incorrectly using libusb
. As such, the idea is to:
- not add the corresponding
Provides:
line for the rename tolibusb-compat-0.1-devel
- Add
Provides: deprecated()
to thelibusb-compat-0.1
package
Feedback
Benefit to Fedora
- We adhere more closely to the upstream naming scheme for libusb.
- We begin sunsetting
libusb-compat
(i.e. currentlibusb
).
Scope
- Proposal owners:
Create new libusb-compat
and libusb1
packages based on the current ones.
- Other developers: N/A (not a System Wide Change)
Review any package that uses BuildRequires: libusb-devel
. Many of them will be able to switch to libusb1-devel
but some may still require the compatibility layer, i.e. libusb-compat-devel
.
- Release engineering: #Releng issue number (a check of an impact with Release Engineering is needed)
- Policies and guidelines: N/A (not needed for this change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with Objectives: N/A
Upgrade/compatibility impact
No impact is expected.
How To Test
No further testing is needed.
User Experience
Dependencies
Contingency Plan
Add Provides: libusb-devel
to libusb-compat-devel
if too many packages are not updated.
- Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
- Contingency deadline: N/A (not a System Wide Change)
- Blocks release? N/A (not a System Wide Change), Yes/No
- Blocks product? product
Documentation
N/A (not a System Wide Change)