Hi!
On Aug 26, Joerg Bruehe wrote:
>>>
>>>> I do not really like the idea of having one file for noting down all the
>
>>>> changes,
>>>>
>>>> 1) It is difficult to spot difference in a monolith
>>>> 2) If a declaration is moved from 1.h to 2.h it is not one sin, it is
>>>> two
>>>>
>>>> sin 1: removing it from 1.h
>>>> sin 2: moving it into 2.h
>>>>
> This is the point where you do not convince me.
>
> I do not claim such a move would be acceptable in general, not at all.
> However, I expect sometimes (rare !) there will be such cases.
You seem to assume that one source (.c or .cc) file can include two
(monitored by check_abi rule) .h files, and in that case it would be
acceptable to move a definition from one to another.
But it's never the case. We have one .h file per API. plugin.h - it's
plugin API, mysql.h - it's client-server API, mysql_priv.h - it's for
storage engines. Moving a definition from one API to another is never
one atomic action. It's two, as VN has explained above.
>>> Above, you write that moving a declaration "from 1.h to 2.h it is
>>> not one sin, it is two".
>>> Assuming that both header files must be included (maybe: they are
>>> both included by a common, mandatory .h file), I do not necessarily
>>> see that as a sin, it may be a proper cleanup / restructuring.
>> True, but it still qualifies as a change not approved by the storage
>> engine API team.
>
> Of course it would need such an approval, and maybe it won't get it.
> All I say is that the API team must be given all differences
> simultaneously, not piecemeal.
And it will. API team will see a commit email - which changes all
affected .pp files. Assuming that a developer ensures that his tree
builds before committing, of course.
Regards / Mit vielen Grüßen,
Sergei
--
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Sergei Golubchik <serg@stripped>
/ /|_/ / // /\ \/ /_/ / /__ Principal Software Engineer/Server Architect
/_/ /_/\_, /___/\___\_\___/ Sun Microsystems GmbH, HRB München 161028
<___/ Sonnenallee 1, 85551 Kirchheim-Heimstetten
Geschäftsführer: Thomas Schroeder, Wolfgang Engels, Dr. Roland Boemer
Vorsitzender des Aufsichtsrates: Martin Häring