[pmwiki-users] pagelist with RecentChanges trail : how to get rid of deleted pages which are listed ?
Petko Yotov
5ko at 5ko.fr
Fri Oct 29 08:23:06 PDT 2021
Next version should be released early next month, but you can already
try the pre-release now -- get it from the PmWiki/ChangeLog page. Only
pmwiki.php has changes related to this.
It already has the "if exists" optimization, which on large pagelists
may improve the stopwatch times by a factor of 10 or more. It is still
case-insensitive, and this is unlikely to change in the core, but will
allow a local configuration to override it or add a new one.
Petko
On 29/10/2021 16:05, ABClf wrote:
> Thank you Petko ;
> One, I believe I have used if="exists {=$FullName}" parameter with
> defective syntax, and obviously failed in getting the expected result.
>
> Two, since I want to collect recently changed pages among several
> groups in one shot, using fmt for grouping the output, I use
> trail=Site.AllRecentChanges group=Group1,Group2,Group3. Might not be
> cost effective, yet it looks like it's working decently.
>
> if="exists {=$FullName}" param can not be used in such a long pagelist
> case ; with this parameter on, pagelist does too much for work, giving
> :
> 23420: 09,42 (using if exists)
> 460: 00,52 (without if exists).
>
> I will try with the next version.
> Gilles.
>
>
> In my case I don't mind about case.
>
>
>
> Le dim. 24 oct. 2021 à 10:54, Petko Yotov <5ko at 5ko.fr> a écrit :
>>
>> The most efficient should be this:
>>
>> (:pagelist group=Main trail=Main.RecentChanges if="exists
>> {=$FullName}":)
>>
>> group=Main is recommended if your pages are all from the same group.
>>
>> I just found out that the "exists" conditional can be optimized a lot,
>> especially when called multiple times from a pagelist. This will be
>> released in the next version in a few days.
>>
>> One other note, the "exists" conditional is case insensitive, like the
>> "name" and "group" conditionals, but unlike "match". This means if we
>> test for deleted pages "Wikisandbox" and "WikiSandBox", but there is
>> the
>> correct page "WikiSandbox", it will return true:
>>
>> https://www.pmwiki.org/wiki/Test/CondExists2
>>
>> I wouldn't want to change the current state and risk breaking existing
>> wikis relying on the case insensitivity, but in your situation this
>> can
>> be clearly wrong.
>>
>> I'll have to think about what to do. Possibly adding a new conditional
>> for "case-sensitive exists" or a way to configure the current one to
>> be
>> case sensitive. Let's think about it.
>>
>> Petko
>>
>> --
>> If you upgrade : http://www.pmwiki.org/Upgrades
>>
>>
>> On 22/10/2021 16:04, ABClf wrote:
>> > I have a pagelist using a RecentChanges as trail source ;
>> > page which have been deleted does appear in the RecentChanges trail (I
>> > believe it's the normal behaviour) ; thus they also get listed in
>> > pagelist result.
>> > I don't know how to get rid of the deleted pages ; I believe I have
>> > use the (:if exists:) param or set up a special list= parameter.
>> > How would you do ?
>> > Thank you,
>> > Gilles.
>
More information about the pmwiki-users
mailing list