diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index 79d2df1..9ff0505 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -7,19 +7,39 @@ on: release: description: 'Release version (e.g. 1.2.3)' required: true + prerelease: + description: 'Pre-release version (e.g. RC1, beta, etc...)' + required: false permissions: contents: write env: TAG: ${{ github.event.inputs.release }} + PRETAG: ${{ github.event.inputs.prerelease }} BRANCH: temp-release-${{ github.event.inputs.release }} jobs: build: runs-on: ubuntu-latest steps: - # ref and repository are required, otherwise repo could appear in detached head state + - name: Prepare vars + id: vars + uses: actions/github-script@v7 + with: + script: | + const full_tag = [ + process.env.TAG, + process.env.PRETAG + ].filter(Boolean).join('-'); + const branch = `temp-release-${full_tag}`; + const is_prerelease = !!process.env.PRETAG; + + core.setOutput('full_tag', full_tag ); + core.setOutput('branch', branch ); + core.setOutput('is_prerelease', is_prerelease ); + + # 'ref' and 'repository' are required, otherwise repo could appear in detached head state - name: Checkout uses: actions/checkout@v4 with: @@ -65,6 +85,7 @@ jobs: run: | rm -f composer.lock || true rm -rf tests || true + rm -rf vendor/bin || true rm -rf vendor/composer/installers || true find ./ -name '.git*' -not -path './.git' -type f -delete || true find ./ -name '.git*' -not -path './.git' -type d -exec rm -rf {} \; || true @@ -83,8 +104,8 @@ jobs: uses: EndBug/add-and-commit@v9 with: message: Cleanup files for release - new_branch: ${{ env.BRANCH }} - tag: ${{ env.TAG }} + new_branch: ${{ steps.vars.outputs.branch }} + tag: ${{ steps.vars.outputs.full_tag }} # generate SBOM that will be attached to a release as an artifact - name: Create SBOM @@ -98,13 +119,13 @@ jobs: # create a draft release with the version changelog as a description - name: Create Draft Release id: draft_release - uses: softprops/action-gh-release@v1 + uses: softprops/action-gh-release@v2 with: - name: "Release ${{ env.TAG }}" + name: "Release ${{ steps.vars.outputs.full_tag }}" body: "${{ steps.changelog.outputs.description }}" - tag_name: ${{ env.TAG }} + tag_name: ${{ steps.vars.outputs.full_tag }} draft: true - prerelease: false + prerelease: ${{ steps.vars.outputs.is_prerelease }} # attach SBOM to release - name: Upload SBOM to release @@ -128,4 +149,4 @@ jobs: # delete temporary release branch - name: Delete temporary release branch run: | - git push origin --delete ${{ env.BRANCH }} + git push origin --delete ${{ steps.vars.outputs.branch }} diff --git a/README.md b/README.md index 781e941..623522c 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ Provides compatibility between the [LiteSpeed Cache](https://wordpress.org/plugi ### Notes -* Tested with LiteSpeed Cache plugin version 6.1 +* Tested with LiteSpeed Cache plugin version 6.5.1 ### Support, Feedback, & Contribute diff --git a/class-litespeed-cache.php b/class-litespeed-cache.php index 2cf0660..da87428 100644 --- a/class-litespeed-cache.php +++ b/class-litespeed-cache.php @@ -4,6 +4,7 @@ use wpCloud\StatelessMedia\Compatibility; use wpCloud\StatelessMedia\Utility; +use wpCloud\StatelessMedia\Helper; /** * Class LiteSpeedCache @@ -212,8 +213,8 @@ public function litespeed_media_info($info, $short_file_path, $post_id) { $info = array('url' => $url, 'md5' => $md5, 'size' => 1,); } } - } catch (\Throwable $th) { - error_log(print_r($th, true)); + } catch (\Throwable $e) { + Helper::log( $e->getMessage() ); } return $info; @@ -287,8 +288,9 @@ public function update_hash($attachment_id, $gs_name_new, $gs_name_old, $delete $this->_update_md5_meta($attachment_id, $cloud_meta); return true; - } catch (\Throwable $th) { - error_log(print_r($th, true)); + } catch (\Throwable $e) { + Helper::log( $e->getMessage() ); + return false; } return false; diff --git a/readme.txt b/readme.txt index f42561c..0e9fb91 100644 --- a/readme.txt +++ b/readme.txt @@ -1,11 +1,11 @@ === WP-Stateless - LiteSpeed Cache Addon === -Contributors: usability_dynamics, andypotanin, ideric, maxim.peshkov, planvova, obolgun +Contributors: usability_dynamics, andypotanin, ideric, planvova, obolgun Donate link: https://udx.io -Tags: lite speed, litespeed, cache, optimization, google, google cloud, google cloud storage, cdn, uploads, media, stateless, backup +Tags: litespeed cache, litespeed addon extension, google cloud storage, stateless, wp-stateless License: GPLv2 or later Requires PHP: 8.0 Requires at least: 5.0 -Tested up to: 6.4.3 +Tested up to: 6.6.2 Stable tag: 0.0.1 Provides compatibility between the LiteSpeed Cache and the WP-Stateless plugins. @@ -23,7 +23,7 @@ Provides compatibility between the [LiteSpeed Cache](https://wordpress.org/plugi = Notes = -* Tested with LiteSpeed Cache plugin version 6.1 +* Tested with LiteSpeed Cache plugin version 6.5.1 = Support, Feedback, & Contribute = diff --git a/vendor/bin/.phpunit.result.cache b/vendor/bin/.phpunit.result.cache index 1a7970b..dffd906 100644 --- a/vendor/bin/.phpunit.result.cache +++ b/vendor/bin/.phpunit.result.cache @@ -1 +1 @@ -{"version":1,"defects":{"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncImage":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldCheckLiteSpeedImage":3,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnMediaInfo":3,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldDeleteMedia":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldRenameMedia":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldAddFileMd5":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldManualSyncBackupFiles":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldUpdateMd5AndManualSync":4},"times":{"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldInitModule":0.076,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncImage":0.046,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncWebp":0.001,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldCheckLiteSpeedImage":0.002,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnMediaInfo":0.001,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnDefaultMediaInfo":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldDeleteMedia":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldRenameMedia":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldAddFileMd5":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldManualSyncBackupFiles":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldUpdateMd5AndManualSync":0.001,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldInitModule":0.073,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncImage":0.045,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncWebp":0.001,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldCheckLiteSpeedImage":0.002,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnMediaInfo":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnDefaultMediaInfo":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldDeleteMedia":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldRenameMedia":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldAddFileMd5":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldManualSyncBackupFiles":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldUpdateMd5AndManualSync":0.001}} \ No newline at end of file +{"version":1,"defects":{"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncImage":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldCheckLiteSpeedImage":3,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnMediaInfo":3,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldDeleteMedia":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldRenameMedia":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldAddFileMd5":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldManualSyncBackupFiles":4,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldUpdateMd5AndManualSync":4},"times":{"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldInitModule":0.076,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncImage":0.046,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncWebp":0.001,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldCheckLiteSpeedImage":0.002,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnMediaInfo":0.001,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnDefaultMediaInfo":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldDeleteMedia":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldRenameMedia":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldAddFileMd5":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldManualSyncBackupFiles":0,"WPSL\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldUpdateMd5AndManualSync":0.001,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldInitModule":0.077,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncImage":0.047,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldSyncWebp":0.001,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldCheckLiteSpeedImage":0.002,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnMediaInfo":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldReturnDefaultMediaInfo":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldDeleteMedia":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldRenameMedia":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldAddFileMd5":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldManualSyncBackupFiles":0,"SLCA\\LiteSpeedCache\\ClassLiteSpeedCacheTest::testShouldUpdateMd5AndManualSync":0.001}} \ No newline at end of file diff --git a/vendor/composer/installed.php b/vendor/composer/installed.php index 69519c5..30d16af 100644 --- a/vendor/composer/installed.php +++ b/vendor/composer/installed.php @@ -3,7 +3,7 @@ 'name' => 'udx/wp-stateless-litespeed-cache-addon', 'pretty_version' => 'dev-main', 'version' => 'dev-main', - 'reference' => '09a2a26fbab28487505587f78288d09a75c1eee8', + 'reference' => '6c5fc5e916ff348d957536c7c2a1a6799878d6e0', 'type' => 'wordpress-plugin', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), @@ -13,7 +13,7 @@ 'udx/wp-stateless-litespeed-cache-addon' => array( 'pretty_version' => 'dev-main', 'version' => 'dev-main', - 'reference' => '09a2a26fbab28487505587f78288d09a75c1eee8', + 'reference' => '6c5fc5e916ff348d957536c7c2a1a6799878d6e0', 'type' => 'wordpress-plugin', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), diff --git a/wp-stateless-litespeed-cache-addon.php b/wp-stateless-litespeed-cache-addon.php index 6775578..28f1654 100644 --- a/wp-stateless-litespeed-cache-addon.php +++ b/wp-stateless-litespeed-cache-addon.php @@ -6,7 +6,7 @@ * Description: Provides compatibility between the LiteSpeed Cache and the WP-Stateless plugins. * Author: UDX * Version: 0.0.1 - * Text Domain: slcalsc + * Text Domain: wp-stateless-litespeed-cache-addon * Author URI: https://udx.io * License: GPLv2 or later * @@ -24,7 +24,7 @@ add_filter('plugin_row_meta', function ($plugin_meta, $plugin_file, $_, $__) { if ($plugin_file !== join(DIRECTORY_SEPARATOR, [basename(__DIR__), basename(__FILE__)])) return $plugin_meta; - $plugin_meta[] = sprintf('%s', __('This plugin requires WP-Stateless plugin version 3.4.0 or greater to be installed and active.')); + $plugin_meta[] = sprintf('%s', __('This plugin requires WP-Stateless plugin version 3.4.0 or greater to be installed and active.', 'wp-stateless-litespeed-cache-addon')); return $plugin_meta; }, 10, 4); });