Releases: hexydec/torque
Torque v1.0.0
This is the first stable release of Torque, it offers bug fixes, syntax improvements, updated dependencies, and some new under-the-hood features:
- Updated packages to latest versions
- Stylesheets and Javascript will now be rebuilt on the fly if any included files have been updated since the output files were built
- Fixed bug in
app::getContentSecurityPolicy()where the directiveimg-srcwas mispelt asimage-src - Fixed spelling mistake
- Updated functions missing a return type
- Fixed issue where the default value for method arguments was
null, but this was not defined in the type hint - Moved to stable release
- Updated
readme.mdandreadme.txt
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
requirecalls 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
304headers were not set the Wordpress way, which caused Wordpress to overwrite it - Fixed incorrectly loaded
rebuildcommand - 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-Policygenerator 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.txtandtorque.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?notorqueto 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.phpto check the file found exists before attempting to require it, this is so that ifinstall-external.phpis 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::$optionsso 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
ABSURLwas still being used - Fixed bug in
config::__construct()where thecombinestyleandcombinescriptonsave callbacks didn't respect their respective minify flags, and so always minified when combining - Updated packages in
packages::$packagesto 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
assetsclass - Updated
installExternal::install()to only extract the/srcfolder 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 echoinstead of short tags as required by Wordpress - Updated
config::$optionsto usehtmlinstead ofdescas 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.phpwhere the desc key had been changed tohtml, but thedesckey was required as the title tag of each tab link, descriptions have now been restored - Updated the version numbers in
readme.txtandtorque.php - Added wordpress plugin directory assets
- Updated readme's