I'm with Jörg, the old syntax was fine. The bad behavior seems to be just a bug to me that should just be fixed. Adding more complex choices seems unnecessary.
Regards, Eric On Wed, Oct 3, 2018, 9:58 AM Dominik Süß <[email protected]> wrote: > Hi Jörg, > > As you can imagine I disagree as users might have used the statement > already to delete service users and depend on that behavior. > > Replacing the commands by new variations with refined behavior sounds to me > like a fair compromise. We could even deprecate the old syntax and spawn a > warning that usage of those commands is discouraged due to being not > descriptive enough of their impact. > > My 2 cents > Dominik > > Jörg Hoh <[email protected]> schrieb am Mi. 3. Okt. 2018 um > 13:24: > > > Hi, > > > > Am Di., 2. Okt. 2018 um 07:46 Uhr schrieb Karl Pauls < > [email protected] > > >: > > > > > Can’t we stay BC and just introduce a new command that has the new > > behavior > > > and keep the old one as is? > > > > > > Something like: > > > > > > DELETE REAL USER > > > > > > or similar would be consistent with the service user delete at least. > > > > > > > So you would add some additional commands to the language, which finally > do > > what the original version promised to do? > > > > * DELETE USER foo -> removes both real and service users (as today) > > * DELETE SERVICE USER foo -> removes both real and service users (as > today) > > * DELETE REAL USER foo -> would delete only a real user? > > * DELETE REAL SERVICE USER foo -> would delete only a service user? > > > > Looks absurd to me. I agree the backward-compatibility is highly > important, > > but here it prevents to fix bugs. Also I haven't found any documentation > > which clearly explains the operations in detail, so I had to guess from > the > > repoinit examples what the operations are supposed to do. So the current > > implementation does not contradict the documentation or specification > > because there is none. But it contradicts the expectation I got from > > reading the command. If there is a "DELETE USER" and a "DELETE SERVICE > > USER" command, there must be different implementation behind it > (otherwise > > there would be only 1 command), and the obvious difference is the the > > "DELETE SERVICE USER" deletes a service user. > > > > I would also assume that any user of repoinit, who started based on the > > existing documentation has the impression as I have and used the commands > > in the same way; but I would question even that, because then this flaw > in > > the implementation would have been found much earlier. > > > > So my proposal is to fix the bug, change the implementation in the > > incompatible way (maybe add some log messages for the cases where the old > > implementation would done the wrong thing) and document it properly. And > > that's it. > > > > > > -- > > Cheers, > > Jörg Hoh, > > > > http://cqdump.wordpress.com > > Twitter: @joerghoh > > >
