(Moving to ChangePageIncomplete category as this proposal was withdrawed by the owners) |
|||
(10 intermediate revisions by 4 users not shown) | |||
Line 45: | Line 45: | ||
== Current status == | == Current status == | ||
* Targeted release: [[Releases/21 | Fedora 21]] | * Targeted release: [[Releases/21 | Fedora 21]] | ||
* Last updated: 2014-04- | * Last updated: 2014-04-25 | ||
<!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page | <!-- After the change proposal is accepted by FESCo, tracking bug is created in Bugzilla and linked to this page | ||
Bugzilla states meaning as usual: | Bugzilla states meaning as usual: | ||
Line 57: | Line 57: | ||
== Detailed Description == | == Detailed Description == | ||
The BerkeleyDB, used between others by {{package|rpm}}, changed license between versions 5.* and 6.* to AGPLv3+ | The BerkeleyDB, used between others by {{package|rpm}}, changed license between versions 5.* and 6.* from Sleepycat to AGPLv3+. As the latter license is more demanding, packages using the BerkeleyDB either has to check and possibly change its license to AGPLv3+ compatible, keep on using the older BerkeleyDB or use another DB entirely. | ||
Target of this change is to create new set of packages from current {{package|libdb}}, which contains the v5 version, and keep it alongside the latest BerkeleyDB. | Target of this change is to create new set of packages from current {{package|libdb}}, which contains the v5 version, and keep it alongside the latest BerkeleyDB. | ||
As simple mass rebuild with v6 would very likely introduce license incompatibilities, it will be necessary to update and verify all dependent packages to make sure they use the legally compatible version. | |||
== Benefit to Fedora == | == Benefit to Fedora == | ||
Line 68: | Line 70: | ||
<!-- What work do the developers have to accomplish to complete the change in time for release? Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?--> | <!-- What work do the developers have to accomplish to complete the change in time for release? Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?--> | ||
* Proposal owners: Create new set of packages and introduce proper versioning in order to not confuse the dynamic linker. | * Proposal owners: Create new set of packages and introduce proper versioning in order to not confuse the dynamic linker. Supervise verification of proper version linking against other packages. | ||
* Other developers: Packages dependent on libdb would have to specify which version they want to use (specify version in the spec <code>Requires:</code> field). Rebuilds of dependent packages will be necessary. | * Other developers: Packages dependent on libdb would have to specify which version they want to use (specify version in the spec <code>Requires:</code> field). They need to make sure their package links against the version with license compatible with their package. Rebuilds of dependent packages will be necessary. | ||
* Release engineering: None | * Release engineering: None | ||
Line 105: | Line 107: | ||
<pre> | <pre> | ||
$ repoquery --disablerepo='*' --enablerepo=fedora --enablerepo=updates --whatrequires 'libdb-5.3.so()(64bit)' | $ repoquery --disablerepo='*' --enablerepo=fedora --enablerepo=updates --whatrequires 'libdb-5.3.so()(64bit)' --qf '%{base_package_name}' | sort | uniq | ||
</pre> | </pre> | ||
{{hidden|header=Current output of the above command|content= | {{hidden|header=Current output of the above command|content= | ||
<pre> | <pre> | ||
389-ds-base | 389-ds-base | ||
apr-util | |||
claws-mail | |||
apr-util | clisp | ||
cyrus-imapd | |||
cyrus-sasl | |||
dsniff | |||
evolution-data-server | |||
exim | |||
hail | |||
httpd | |||
httpd-itk | |||
iproute | |||
isync | |||
jigdo | |||
kdesvn | |||
libapreq2 | |||
libdb | |||
libetpan | |||
libpinyin | |||
libserf | |||
libsolv | |||
libzhuyin | |||
log4cxx | |||
mod_gnutls | |||
mod_security | |||
nmh | |||
nss_updatedb | |||
nvi | |||
open-cobol | |||
opendkim | |||
openldap | |||
openser | |||
opensips | |||
pam | |||
pam_abl | |||
pam_ccreds | |||
perdition | |||
perl-BDB | |||
perl-BerkeleyDB | |||
perl-DB_File | |||
perl-eperl | |||
perl-Qt | |||
perl-XML-LibXSLT | |||
php | |||
claws-mail | postfix | ||
postler | |||
python | |||
python3-bsddb3 | |||
rapidsvn | |||
redland | |||
rpm | |||
rsvndump | |||
ruby | |||
sendmail | |||
clisp | sks | ||
cyrus-imapd | spamprobe | ||
squid | |||
squidGuard | |||
cyrus-sasl | subversion | ||
dsniff | tabled | ||
trustedqsl | |||
evolution-data-server | webalizer | ||
xemacs | |||
exim | |||
httpd | |||
httpd-itk | |||
iproute | |||
isync | |||
jigdo | |||
kdesvn | |||
libapreq2 | |||
libdb | |||
libetpan | |||
libpinyin | |||
libserf | |||
libsolv | |||
libzhuyin | |||
log4cxx | |||
mod_gnutls | |||
mod_security | |||
nmh | |||
nss_updatedb | |||
nvi | |||
open-cobol | |||
opendkim | |||
openldap | |||
openser | |||
opensips | |||
pam | |||
pam_abl | |||
pam_ccreds | |||
perdition | |||
perl-BDB | |||
perl-BerkeleyDB | |||
perl-DB_File | |||
perl- | |||
perl-Qt | |||
perl-XML-LibXSLT | |||
php | |||
postfix | |||
postler | |||
python | |||
python3-bsddb3 | |||
rapidsvn | |||
redland | |||
rpm | |||
rsvndump | |||
ruby | |||
sendmail | |||
sks | |||
spamprobe | |||
squid | |||
squidGuard | |||
subversion | |||
tabled | |||
trustedqsl | |||
webalizer | |||
xemacs | |||
</pre>|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}} | </pre>|headerstyle=background:#e5e5e5|fw1=normal|ta1=left}} | ||
Line 327: | Line 190: | ||
* [http://download.oracle.com/otndocs/products/berkeleydb/html/changelog_6_0.html#idp51002560 Changelog entry about the license change] | * [http://download.oracle.com/otndocs/products/berkeleydb/html/changelog_6_0.html#idp51002560 Changelog entry about the license change] | ||
* [http://hhorak.fedorapeople.org/libdb6issues List of packages depended on libdb5 in Fedora and their license] (and AGLv3+ compatibility based on https://fedoraproject.org/wiki/Licensing:Main) | |||
== Release Notes == | == Release Notes == | ||
Line 339: | Line 203: | ||
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler --> | <!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler --> | ||
<!-- The Wrangler announces the Change to the devel-announce list and changes the category to Category:ChangeAnnounced (no action required) --> | <!-- The Wrangler announces the Change to the devel-announce list and changes the category to Category:ChangeAnnounced (no action required) --> | ||
[[Category: | [[Category:ChangePageIncomplete]] | ||
<!-- After review, the Wrangler will move your page to Category:ChangeReadyForFesco... if it still needs more work it will move back to Category:ChangePageIncomplete--> | <!-- After review, the Wrangler will move your page to Category:ChangeReadyForFesco... if it still needs more work it will move back to Category:ChangePageIncomplete--> | ||
Latest revision as of 12:58, 4 June 2014
BerkeleyDB 6
Summary
Add BerkeleyDB v. 6, which changed license from previous releases (Sleepycat to AGPLv3+), to Fedora while keeping the older version for packages which cannot use BerkeleyDB with the new license.
Owner
- Name: Jan Staněk
- Email: jstanek@redhat.com
- Release notes owner:
Current status
- Targeted release: Fedora 21
- Last updated: 2014-04-25
- Tracker bug: <will be assigned by the Wrangler>
Detailed Description
The BerkeleyDB, used between others by rpm
, changed license between versions 5.* and 6.* from Sleepycat to AGPLv3+. As the latter license is more demanding, packages using the BerkeleyDB either has to check and possibly change its license to AGPLv3+ compatible, keep on using the older BerkeleyDB or use another DB entirely.
Target of this change is to create new set of packages from current libdb
, which contains the v5 version, and keep it alongside the latest BerkeleyDB.
As simple mass rebuild with v6 would very likely introduce license incompatibilities, it will be necessary to update and verify all dependent packages to make sure they use the legally compatible version.
Benefit to Fedora
This change enables projects and packages to use BerkeleyDB with Sleepycat license, allowing them to work until the upstream makes their decision about the license change, and at the same time do not restricts projects which already adopted the BerkeleyDB with new license to the older versions of it.
Scope
- Proposal owners: Create new set of packages and introduce proper versioning in order to not confuse the dynamic linker. Supervise verification of proper version linking against other packages.
- Other developers: Packages dependent on libdb would have to specify which version they want to use (specify version in the spec
Requires:
field). They need to make sure their package links against the version with license compatible with their package. Rebuilds of dependent packages will be necessary.
- Release engineering: None
- Policies and guidelines: None
Upgrade/compatibility impact
If the versioning of the symbols will be implemented in the v5, user-built software linked against it will need to be rebuilt.
How To Test
Check if dependent projects builds, runs as expected and do not have license incompatibilities.
User Experience
None (ideally).
Dependencies
$ repoquery --disablerepo='*' --enablerepo=fedora --enablerepo=updates --whatrequires 'libdb-5.3.so()(64bit)' --qf '%{base_package_name}' | sort | uniq
389-ds-base apr-util claws-mail clisp cyrus-imapd cyrus-sasl dsniff evolution-data-server exim hail httpd httpd-itk iproute isync jigdo kdesvn libapreq2 libdb libetpan libpinyin libserf libsolv libzhuyin log4cxx mod_gnutls mod_security nmh nss_updatedb nvi open-cobol opendkim openldap openser opensips pam pam_abl pam_ccreds perdition perl-BDB perl-BerkeleyDB perl-DB_File perl-eperl perl-Qt perl-XML-LibXSLT php postfix postler python python3-bsddb3 rapidsvn redland rpm rsvndump ruby sendmail sks spamprobe squid squidGuard subversion tabled trustedqsl webalizer xemacs
Contingency Plan
- Contingency mechanism: Revert the shipped configuration, try again for the next release.
- Contingency deadline: Beta Freeze
- Blocks release? Yes
Documentation
- Changelog entry about the license change
- List of packages depended on libdb5 in Fedora and their license (and AGLv3+ compatibility based on https://fedoraproject.org/wiki/Licensing:Main)