Releases: hexydec/torque
Torque v0.7.5
Torque v0.7.4
This is a bug fix and maintenance release:
- The name of the app is not title case when Console Logging in
app::drawStats()
- Used PHP 8.0 property type definitions, and union return types where needed
- Updated
require
calls in autoloaders to be used as a keyword and for thespl_autoload_register()
call not to return a value - Fixed issue in
csp::recommendations()
where if the recommended URL was the base URL of the site, it should use `'self`` instead - The minimum supported PHP version is now 8.0
- Updated packages to latest versions
Torque v0.7.3
This is a bug fix and maintenance release:
- Updated
assets::getPage()
to disable peer verification on localhost - Fixed issue in
assets::getPageAssets()
where it didn't detect URL's with the local hostname, but no scheme - Updated font config in
overview::__construct()
where the included fonts were registered as all the font formats, it now matches the names and reads only the first font of each group in the calculations - Updated packages to latest versions
Torque v0.7.2
This update removes support for PHP 7.4, reworks a number of the plugin features such as CSP, and fixes bugs:
- Fixed issue when combining CSS where any inline CSS attached to an external stylesheet was not combined, sometimes causing ordering issues
- Updated packages to latest versions
- Fixed bug where
304
headers were not set the Wordpress way, which caused Wordpress to overwrite it - Fixed incorrectly loaded
rebuild
command - Fixed minor PHP 8.1 data handling issues
- Updated JSlite to fix javascript parsing issue
- Improved Javascript combine function to offload inline javascript into the bundle file and fix ordering issues
- More Javascript minification options
- Improved overview metrics
- Console stats now only show for the admin who set the setting
- Removed support for HTTP/2.0 Push, as it is deprecated with HTTP/3.0, only preload is now suppoorted
- Reworked Content Security Policy manager to gather violations and recommend settings
- Lots of bug fixes
- Syntax improvements
Torque v0.6.5
This release updates compatibilty with Wordpress and fixes a couple of issues:
- Tested with Wordpress v6.1
- Fixed bug in
Content-Security-Policy
generator where a directive was not spelt correctly - Updated JSlite to fix some javascript handling issues
- Minor syntax improvements
Torque v0.6.3
This release fixes a number of issues and improved compatibility with PHP 8.1:
- Updated dependencies for better PHP 8.1 compatibility
- Improved type hinting
- Fixed issue when the plugin is installed where the wrong value was written to a config option, this then prevented Javascript from being compiled
- Fixed issue where if a datasource returns false, it caused an error
- Fixed issue where the plugin said it was only compatible with PHP 8.0+, whereas it still supports 7.4
- Updated dependencies
- Added hook to rebuild the assets when a plugin is updated
- Added CLI command "torque rebuild"
- Updated dependencies to fix issues with minifying Javascript
- Updated readme to add unlisted features
Torque 0.5.6
This release fixes issues with combining Javascript and gathering assets:
- Fixed issue with double slashes in addresses in
app::getPreloadLinks()
andassets::getStylesheetAssets()
- Changed defaults of some HTML attribute minification options to false as they may be unsafe and updated description in
config::$options
- Reworked how scripts are handled in app::optimise(), as previously the load order was not correct. It now reads the IDs from wp-scripts to determine when inline snippets should appear before or after the combined file
- All inline scripts are now not moved to the bottom
- Added extra note on combinejavascipt setting to say that the combine function can break your code
- Fixed addressing issues in
assets::getStylesheetAssets()
- Fixed issue in
assets::getPageAssets()
to only select stylesheets that have an href - Fixed issue in app::optimise() where the javascript that is combined was moved to the bottom, but sometimes the code above it relies on it being loaded first. It now inserts the code where the first script to be combined was removed
- Updated FAQ in readme
- Updated version number in
readme.txt
andtorque.php
Torque 0.5.4
This is a bug fix release to rectify some issues with how URL's were rewritten when combining CSS files:
- Updated regexp in assets::buildCss() to fix issue where it matched a trailing quote, and streamlined how it handles inline data URI's
- Fixed bugs where
realpath()
cannot handle URL's with querystrings or hashbangs, it now just uses the path component - Updated
config::__construct()
to handled the return value ofoverview::draw()
as a string or null
Torque 0.5.3
This release fixes a load of bugs, improves stability, and updates the code for acceptance into the Wordpress plugin store:
- Added docblocks to all classes and methods
- Fixed bug in
assets::getPage()
where a variable was overwritten for another use - Qualified all root method calls
assets::getPageAssets()
now no longer adds?notorque
to the querystring, this is done from the call- Fixed issue in
assets::getStylesheetAssets()
where it should return false instead of null where the assets could not be retrieved or there were no assets - Updated
autoload.php
to check the file found exists before attempting to require it, this is so that ifinstall-external.php
is not present as per the Wordpress hosted plugin, it won't crash - Renamed the "Headers" tab to "Caching" in
config::$options
- Removed unused array entries from
overview::$config
- Fixed issues with asset badges in
overview::__construct()
where the variable was not checked to see if it is not falsey - Fixed layout of multiselect boxes to make them wider in
admin::draw()
- Fixed bug in
app::optimise()
where if the user wasn't logged in, even if the CSP setting was disabled, it wrote the header. It now converts the userID to a string before comparison - Removed usage of
ABSPATH
, as it can be manipulated in user code, and may not be reliable - Fixed bug in
assets::getPageAssets()
where if the URL didn't have a querystring, it caused the code to fail - Fixed bug in
assets::getPageAssets()
where external URLs were still processed - Fixed issue in
assets::getPageAssets()
where the assets were not ordered by type - Fixed bugs in
assets::getStylesheetAssets()
where assets that were quoted were not captured, and assets that do not exist on the filesystem caused a blank capture - Fixed configuration items in
config::$options
so that the default is to not be on so that sites run pretty much as they are when the plugin is activated - Fixed bugs in
overview::__construct()
where the callbacks that generate a list of files didn't check whether the files existed before getting the filesize - Fixed issue in
overview::draw()
where if the first page request came back uncompressed, it still made a second request for the uncompressed page - Fixed bug in
assets::getStylesheetAssets()
where absolutely referenced assets were not handled correctly - Fixed issue where
ABSURL
was still being used - Fixed bug in
config::__construct()
where thecombinestyle
andcombinescript
onsave callbacks didn't respect their respective minify flags, and so always minified when combining - Updated packages in
packages::$packages
to reference master as this has the latest bug fixes - All inline scripts are not moved to the bottom when scripts are combined in
app::optimise()
- Fixed bug in
assets::getPageAssets()
where sorting the assets could cause the order to be incorrect, they are not grouped by type before flattening - Moved code that builds the CSS and Javascript files to the
assets
class - Updated
installExternal::install()
to only extract the/src
folder so that only the required code is stored in the package folder, and non of the documentation or tests etc - Reworked packages definition and autoloader to specify what to extract and where
- Updated
admin::draw()
to use<?php echo
instead of short tags as required by Wordpress - Updated
config::$options
to usehtml
instead ofdesc
as the key for rendering code at the top of each section - Update
htmlspecialchars()
to useesc_html()
as required by wordpress - Also some HTML output is now escaped with wp_kses()
- Fixed bug in
config.php
where the desc key had been changed tohtml
, but thedesc
key was required as the title tag of each tab link, descriptions have now been restored - Updated the version numbers in
readme.txt
andtorque.php
- Added wordpress plugin directory assets
- Updated readme's
Torque 0.4.0
This release renames the plugin to Torque, and expands the functionality of the plugin to focus on wider transport optimisation. It now includes and array of performance and security settings that can make your Wordpress website faster and more secure:
- Split the app into a number of classes to make the code more moduler and maintenance simpler
- Reworked the admin panel to split the configuration options into tabs
- Updated minification options to match latest available in minifiers
- Added new configuration options to control lazy loading and cache headers
- Added ability to combine and minify stylesheets and scripts
- Added a Security tab and implemented a number of security headers and
Content-Security-Policy
- Added a Preload tab and implemented ability to configure and set the
Link
header for HTTP/2.0 preload - Added application to retrieve the assets a page contains for use in selecting assets to combine or preload
- Added an Overview tab an build interface to display metrics about your page, along with descriptions and recommendations
- Improved layout of control descriptions
- Fixed bug in
config::buildConfig()
where the current config was not pruned - Set function calls to root namespace where possible
- Added torque logo
- Enabled field descriptions to be HTML
- Reworked
packages.php
to run the dependencies from a subfolder and simplified the cleanup process - Updated
readme.md
to describe new functionalilty - Software is now beta