Lack of interest Upgrading Add-on unconditionally updates JavaScript Timestamp

This suggestion has been closed automatically because it did not receive enough votes over an extended period of time. If you wish to see this, please search for an open suggestion and, if you don't find any, post a new one.

Kirby

Well-known member
When upgrading an Add-on, jsLastUpdate which is used to calculated the JavaScript cache buster is unconditionally updated after importing Add-on Data in XF\AddOn\AddOn:postDataImport().

PHP:
public function postDataImport()
{
    // all data will be imported, re-enable this so postX methods will have access to their methods
    $installed = $this->installedAddOn;
    if (!$installed)
    {
        throw new \LogicException("Add-on is not installed");
    }

    $installed->is_processing = false;
    $installed->saveIfChanged();

    \XF::repository('XF:Option')->updateOption('jsLastUpdate', \XF::$time);
}

This seems kinda inefficient as many Add-Ons (including official XFI) don't have any JS, it therefore would be better to only update the timestamp if an Add-on actually has JavaScript files.
 
Upvote 0
This suggestion has been closed. Votes are no longer accepted.
We're not currently planning on progressing this as a bug fix though it might be something we can consider in the future.

Ultimately it's somewhat of a micro-optimisation that may require significant effort to get right to ensure the caches are invalidated in the cases where they're supposed to.
 
Ultimately it's somewhat of a micro-optimisation
IMHO that somewhat depends on on usage patterns.

Usually we've got a couple Add-on updates per week (sometimes several per day), as every update (often unnecessarily) invalidates all JS cached by clients this does sum up quite a bit.
 
Back
Top Bottom