Recent Activities
This page shows what are we working on.
-
1.5.55
-
head
-
Sync products widget styles with product list. Closes #13 241874
-
-
3.1.2
-
head
-
fix(preload): default missing as attribute to style on existing links
In-place update (1.18.1) stopped writing the "as" attribute that the
old re-create path always set. rel="preload" without a valid "as"
triggers browser warnings and may double-fetch the resource.
- add regression test for the missing-as default
- rename testProcessRemovesDuplicatePreloadLinks to match the
keep-in-place semantics; drop stale comments
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> 47d617 -
fix(preload): keep existing preload links in place to preserve CSS order
AddLinkPreload removed every existing rel="preload" link and re-inserted
it right after <title>, above the critical <style>. Deferred stylesheets
(converted by DeferCss, with onload flipping them back to
rel="stylesheet") ended up before critical CSS in the DOM, inverting the
cascade: critical CSS overrode the full theme CSS after load.
- Existing preload links keep their DOM position; per-type rel,
fetchpriority (within limits) and crossorigin are updated in place
- Only new preloader assets are inserted after <title>; href dedupe
against existing links and the live-script prefetch guard are kept
- Replace applyPreloadChanges() with updatePreloadLinkInPlace() +
insertPreloadLinks()
Tests: add regression tests for link position relative to critical
<style>; suite OK (644 tests, 1944 assertions).
Fixes #97
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> 07ef75 -
fix: replace deprecated SplObjectStorage::contains() for PHP 8.5
PHP 8.5 deprecates SplObjectStorage::contains(); with an error handler
that escalates deprecations (e.g. Ignition) this kills page rendering
inside the optimizer pipeline. Use offsetExists() — identical
semantics, available since PHP 5.3.
Fixes #96
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> cee3e2
-
-
1.18.0
-
Version 1.18.0 75bd79
-
test: add attribute metadata for PHPUnit 12 discovery
PHPUnit 12 dropped doc-comment metadata: @dataProvider providers were
not applied and @test snake_case methods were not discovered. Add
#[DataProvider]/#[Test] attributes while keeping the annotations so
the suite still runs on PHPUnit 9.6 (CI) and 10.5 (local), which
ignore unknown attribute classes.
Also accept the unused third data-set argument in testGetFilename —
PHPUnit 12 warns when a provider passes more arguments than the test
method accepts.
Verified: PHPUnit 12.5.31 exit 0 (631 tests), PHPUnit 10.5.47 OK.
Refs #92 5b20fe -
feat!: remove Expire Header feature
BREAKING CHANGE: Body\Expire optimizer, `pagespeed/expire/*` config
and its admin section are removed.
The feature set `Cache-Control: public, max-age=31536000` on document
HTML for guest pages. Browsers and hosting-side proxies (invisible to
the Varnish config check) cache such pages beyond any server-side
flush, so merchants could not push content/price updates to returning
visitors for up to a year. No PageSpeed/CWV benefit to offset that.
Orphaned core_config_data rows are harmless.
Closes #91 f659e6 -
chore: ignore phpunit cache and playwright artifacts be8bda
-
test: drop APIs removed in PHPUnit 12 from Test/Unit
- replace getMockBuilder('stdClass')->addMethods() with createMock()
of real classes (Store, Minify_HTML, HeaderInterface)
- validate optimizers before logger init in Pipeline so expected
InvalidArgumentException surfaces even without logger classes
- register module-logger, module-image, mrclay/minify in tests
bootstrap autoloader (absent from standalone test autoload)
Refs #92 5393a1 -
fix(preload): prevent double download of scripts already in DOM
DeferJs: remove addPreloadLinks() entirely — every external <script src>
stayed live in the DOM while also getting a <link rel=prefetch> hint,
causing the browser to fetch the file twice (confirmed: CookiePal,
Elfsight, requirejs-config-breeze on mobile).
- Remove Preload dependency, preload property, addPreloadLinks() method
and all 4 call-sites from DeferJs
- Remove script src collection in prepareElement()
AddLinkPreload: add defensive liveScriptSrcs guard — skip any script
href that already exists as a <script src> tag in the DOM, regardless
of how it ended up in the Preload singleton.
Tests: remove preloaderMock from DeferJsTest + DeferJsRegressionTest;
add testScriptsAlreadyInDomAreNotPrefetched and
testScriptsNotInDomCanGetPrefetchHint to AddLinkPreloadTest.
Fixes #95 4b539f -
fix(preload): per-type rel/fetchpriority; honor isEnabled config
- Replace global priority counter with per-type counters
- ALWAYS_PRELOAD_TYPES: font/style/image always rel=preload; scripts=prefetch
- FETCHPRIORITY_LIMIT_BY_TYPE: null=unlimited (fonts), 2 styles, 1 image (LCP), 0 scripts
- Fix isEnabled() hardcoded true -> config->isLinkPreloadEnabled()
- Use array_key_exists to correctly handle null sentinel vs missing key (null??0 bug)
- Add tests: image=preload, scripts=prefetch, per-type fetchpriority limits, isEnabled toggle
Fixes #93 #94 84b155 -
feat: add dedicated cache type to isolate optimizer entries from block_html
- Add Model/Cache/Type.php: new Magento cache type (swissup_pagespeed)
- Add etc/cache.xml: register type with label/description
- Update CacheManager: use Type::TYPE_IDENTIFIER instead of block_html,
add Type::CACHE_TAG to entry tags for proper TagScope scoping
Fixes Redis Default Cache pollution where 1.2M+ SWISSUP_PAGESPEED entries
were mixed into the block_html cache type. Optimizer cache is now
independently manageable in Stores > Cache Management. 9a552e
-
-
2.31.2
-
2.31.1
-
3.1.2
-
3.1.1
-
3.1.1
-
3.1.0
-
3.1.1
-
3.1.0
-
Version 3.1.0 c62ff0
-
Do not reset first and last paddings 339843
-
Improve compare table styles e19026
-
New `suffixIds` function addc86
-
Unused code removed f8b2e0
-
Improve header panel text centering when it's long 8d364b
-
CSS vars for typography styles 574820
-
Use current text color for li markers 4c6b23
-
Fixed incorrectly processed hero-title styles 427724
-
Added `header-panel-info__gap` 9de60c
-
Fixed mobile css overlap with messages on customer account page ed9950
-
-
head
-
Use muted-bg for items at ECI departments page 0f7fe7
-
-
3.0.0
-
3.0.0 567b80
-
Revert "Magento 2.4.9 fix"
This reverts commit 9172cebca73f9a2ff583571ac4df01637922a748. dfad4c -
Revert "Magento 2.4.9 fix". See fix in theme-editor module
This reverts commit eed796bec52f7cd0f6c8dcd6f9e3140e6e098aa3. 3f4797 -
Magento 2.4.9 fix
Unable to get content for 'frontend/Swissup/argentobreeze-business/en_US/css/_theme-editor.less' after 3 attempts. eed796 -
Magento 2.4.9 fix
Unable to get content for 'frontend/Swissup/argentobreeze-business/en_US/css/_theme-editor.less' after 3 attempts. 9172ce
-