On 06.06.2019 09:29, Nick Kew wrote:
>> On 6 Jun 2019, at 06:07, Mladen Turk <mt...@apache.org> wrote:
>>
>> I remember the days when apr was operating system abstraction layer,
>> and apr-util was the bunch of platform independent code where one
>> could eventually decide which key/value dbm (beside provided sdbm)
>> and bundled subset of expat. And then there was apr-iconv
> You said it yourself.  Dependencies already in apr-dbm!
>
>> When asking why can't we put some of the cool apr-util stuff
>> like buckets, date, queue, etc ... to apr, there was a strong
>> dislike "because that's not OS abstraction stuff"
> An "insider" view.  For the outside world, the apr/apu split achieved
> very little beyond mild confusion.  The whole package is, after all,
> still pretty small in the global scheme of things.

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.2 LTS
Release:        18.04
Codename:       bionic
$ apt-cache search aprutil
libaprutil1 - Apache Portable Runtime Utility Library
libaprutil1-dbd-sqlite3 - Apache Portable Runtime Utility Library - SQLite3 
Driver
libaprutil1-dbg - Apache Portable Runtime Utility Library - Debugging Symbols
libaprutil1-dev - Apache Portable Runtime Utility Library - Development Headers
libaprutil1-ldap - Apache Portable Runtime Utility Library - LDAP Driver
libaprutil1-dbd-mysql - Apache Portable Runtime Utility Library - MySQL Driver
libaprutil1-dbd-odbc - Apache Portable Runtime Utility Library - ODBC Driver
libaprutil1-dbd-pgsql - Apache Portable Runtime Utility Library - PostgreSQL 
Driver
$ apt-cache show libaprutil1
Package: libaprutil1
[...]
Depends: libapr1 (>= 1.6.2), libc6 (>= 2.25), libdb5.3, libexpat1 (>= 2.0.1), 
libgdbm5 (>= 1.14), libssl1.1 (>= 1.1.0)
[...]


I specifically object to libexpat, libssl, libdb and libgdm being on
this dependency list ... the latter two are just bloat, but the former
two create all sorts of problems for any project that happens to use
either of them directly.

So yes, it would be nice to abstract such dependencies out of the core
APR 2.0 as that might (maybe, possibly) convince downstream packagers to
think a bit more carefully about packaging optional dependencies.


> Having said that, reversing the split from where we are now could
> just be more confusion.  Ho, hum.

What, confusion for everyone who uses APR 2.0 today? I feel a distinct
lack of interest. :)

[...]

> I think you're arguing for fully-baked apr modules, yesno?

I'm not sure what you mean by "fully baked." IMO it would be good enough
if dependencies such as dbd and crypto (and possibly xlate) could be
loaded at APR initialisation time but never unloaded.

-- Brane

Reply via email to