From kde-core-devel Thu Oct 25 06:48:06 2007 From: Laurent Montel Date: Thu, 25 Oct 2007 06:48:06 +0000 To: kde-core-devel Subject: Re: KConfig API changes merged Message-Id: <200710250848.06415.montel () kde ! org> X-MARC-Message: https://marc.info/?l=kde-core-devel&m=119329493714129 On Wednesday 24 October 2007 15:47:59 Oswald Buddenhagen wrote: > moin, > > the release dude said was pro and nobody objected, so i did it. heh. > > a few notes: > - KDE/, extragear/ and koffice/ are ported and test-compiled, but i > suppose my installation does not compile everything, so some things > might be still broken. ping me on irc if the dashbot complains. > - there are some uses of {read,write}XdgListEntry() that should not be. > go and fix them if you want your code to work with alternative KConfig > backends. ps: don't be tempted to just use split()/join() (*) - i already > adjusted the cases where this was possible. > - the porting from setGroup()/group() *might* have broken some cases, > but otoh i also fixed quite some porting bugs, so i do at least a > break-even. :=) > - rdale: i did not touch kdebindings - i have no idea if something/what > needs to be done. > - laurent: for your porting scripts: > > trivial: > > 's/\bentryIsImmutable\b/isEntryImmutable/g;'\ > 's/\bgroupIsImmutable\b/isGroupImmutable/g;'\ > 's/\bgetConfigState\b/accessMode/g;'\ > 's/\bConfigState\b/AccessMode/g;'\ > 's/\b(KConfigGroup|KConfig|KConfigBase)::NLS\b/\1::Localized/g;'\ > 's/\bKConfig::OnlyLocal\b/KConfig::SimpleConfig/g;' > > complex. these are confused by nested parentheses, but as i had to > review the changes anyway, i didn't bother crafting recursive regexps - > i can help you with that if you want more sophistication: > > 's/\breadPathEntry(\s*)\(([^,)]+?)(\s*)\)/readPathEntry\1(\2, > QString()\3)/g;'\ > 's/\breadPathListEntry(\s*)\(([^,)]+,[^,)]+)\)/readPathEntry\1(\2)/g;'\ > 's/\breadPathListEntry(\s*)\(([^,)]+?)(\s*)\)/readPathEntry\1(\2, > QStringList()\3)/g;' Great thanks for perl line I will add to "adapt-to-kde4-api.pl" > (*) in fact, i surrendered to the temptation, too. :) > i changed two cases (in cervisia and kcachegrind) that did use a > non-standard separator other than the semicolon to trivial > joining/splitting. this needs to be changed to "native" lists (and a > kconf_update script written, if you care) or custom handling (with > separator escaping) needs to be written (this can be borrowed from > KConfigGroup).