1 |
On 17/07/2015 22:17, Brian Evans wrote: |
2 |
> Here is a second Draft based on comments |
3 |
> |
4 |
> |
5 |
> Title: MySQL client libraries and server packaging changes |
6 |
> Author: Brian Evans <grknight@g.o> |
7 |
> Content-Type: text/plain |
8 |
> Posted: 2015-07-17 |
9 |
> Revision: 1 |
10 |
> News-Item-Format: 1.0 |
11 |
> Display-If-Installed: virtual/mysql |
12 |
> |
13 |
> First off, a new virtual is being introduced, virtual/libmysqlclient. |
14 |
> virtual/mysql will represent the server (mysqld) and tools (mysqldump, |
15 |
> mysql, mysqladmin, etc) while virtual/libmysqlclient will represent |
16 |
> the mysql client shared and static libraries, libmysqlclient.so for |
17 |
> example. |
18 |
|
19 |
This reads oddly. There's a "first" but I'm left wondering what the |
20 |
"second" is, and I have to re-read "mysql client shared and static" |
21 |
several times to figure out what is probably the noun and the adjective. |
22 |
If I were writing the news, I'd probably do this: |
23 |
|
24 |
Ebuild packaging for the various mysql packages is changing; including |
25 |
the addition of a new virtual virtual/libmysqlclient. |
26 |
|
27 |
The existing virtual/mysql will represent the server (mysqld) and tools |
28 |
(mysqldump, mysql, mysqladmin, etc), while virtual/libmysqlclient will |
29 |
represent the shared and static libraries for mysql clients, e.g. |
30 |
libmysqlclient.so |
31 |
|
32 |
> Ebuilds that only link the libraries may not pull in the server |
33 |
> packages with this change in the future. Because of this, you may have |
34 |
> to add a virtual/mysql or one of the providers; i.e. dev-db/mysql, |
35 |
> dev-db/mariadb, or dev-db/percona-server; to your world file if you |
36 |
> require a server to be installed locally. This will be phased in |
37 |
> slowly as other packages are updated. |
38 |
> |
39 |
> As for the server packages themselves, the minimal USE is being |
40 |
> replaced. The new USE flags are client-libs, server, and tools. |
41 |
> The server and tools flags are on by default to signify the primary |
42 |
> purpose of those builds. |
43 |
|
44 |
It's not obvious that "minimal" is a USE flag, I first thought you meant |
45 |
USE is short :-). I suggest: |
46 |
|
47 |
The USE flag "minimal".... |
48 |
|
49 |
|
50 |
> The primary provider for libraries will be a new package |
51 |
> dev-db/mysql-connector-c. Thorough testing did not turn up any |
52 |
> issues, but packagers are permitted to block any provider of |
53 |
> virtual/libmysqlclient that does not work correctly. Enabling the |
54 |
> client-libs USE on a server package may be the necessary solution for |
55 |
> the rare case of a block on an incompatible provider. |
56 |
|
57 |
Finally, I'd flesh this out a little more so that users know what *they* |
58 |
need to with this change. You've done a good job of explaining what you |
59 |
have done. |
60 |
|
61 |
It's not completely clear what the user must do to retain their existing |
62 |
mysql clients, and many of them will think mysql-connector-c provides |
63 |
it. I'd suggest a wording myself, but I'm still not 100% clear how it |
64 |
will really work. |
65 |
|
66 |
-- |
67 |
Alan McKinnon |
68 |
alan.mckinnon@×××××.com |