Changeset 3263513
- Timestamp:
- 03/28/2025 12:53:14 PM (12 months ago)
- Location:
- hagakure
- Files:
-
- 12 edited
- 1 copied
-
tags/1.3.2 (copied) (copied from hagakure/trunk)
-
tags/1.3.2/hagakure.php (modified) (2 diffs)
-
tags/1.3.2/readme.txt (modified) (1 diff)
-
tags/1.3.2/src/Kunoichi/Hagakure/DbLogger.php (modified) (2 diffs)
-
tags/1.3.2/src/Kunoichi/Hagakure/ErrorHandler.php (modified) (1 diff)
-
tags/1.3.2/vendor/composer/InstalledVersions.php (modified) (5 diffs)
-
tags/1.3.2/vendor/composer/installed.php (modified) (2 diffs)
-
trunk/hagakure.php (modified) (2 diffs)
-
trunk/readme.txt (modified) (1 diff)
-
trunk/src/Kunoichi/Hagakure/DbLogger.php (modified) (2 diffs)
-
trunk/src/Kunoichi/Hagakure/ErrorHandler.php (modified) (1 diff)
-
trunk/vendor/composer/InstalledVersions.php (modified) (5 diffs)
-
trunk/vendor/composer/installed.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
hagakure/tags/1.3.2/hagakure.php
r3158768 r3263513 2 2 /** 3 3 * Plugin Name: Hagakure - Yet Another Error Reporter 4 * Version: 1.3. 14 * Version: 1.3.2 5 5 * Description: A WordPress plugin to clarify meaningless errors like "Allowed memory size of xxxxxxxx bytes exhausted". 6 6 * Author: Tarosky 7 7 * Author URI: https://tarosky.co.jp 8 * Requires at least: 5.9 9 * Requires PHP: 7.4 8 10 * Text Domain: hagakure 9 11 * Domain Path: /languages … … 28 30 29 31 // Register shortcodes for test environment. 30 if ( class_exists( 'Kunoichi\Hagakure\Tests\ OverflowShortCode' ) ) {31 \Kunoichi\Hagakure\Tests\ OverflowShortCode::get_instance();32 if ( class_exists( 'Kunoichi\Hagakure\Tests\InappropriateShortCode' ) ) { 33 \Kunoichi\Hagakure\Tests\InappropriateShortCode::get_instance(); 32 34 } -
hagakure/tags/1.3.2/readme.txt
r3158768 r3263513 2 2 3 3 Contributors: tarosky, Takahashi_Fumiki, kuno1 4 Tags: php, error, recovery 5 Requires at least: 5.9 6 Requires PHP: 7.4 4 Tags: php, error, recovery 7 5 Tested up to: 6.6 8 Stable Tag: 1.3. 16 Stable Tag: 1.3.2 9 7 License: GPLv3 or later 10 8 License URI: https://www.gnu.org/licenses/gpl-3.0.html -
hagakure/tags/1.3.2/src/Kunoichi/Hagakure/DbLogger.php
r3158762 r3263513 44 44 $error = error_get_last(); 45 45 if ( null === $error ) { 46 // No error. 46 47 return; 47 48 } … … 49 50 return; 50 51 } 51 if ( isset( $error['message'], $error['file'] ) && ( str_contains( $error['message'], 'memory size' ) || in_array( basename( $error['file'] ), [ 'wp-db.php', 'db.php' ], true ) ) ) { 52 // Maybe this is db error. 53 $rows = array_map( [ $this, 'filter_row' ], $this->last_backtrace ); 54 $rows [] = sprintf( 'URI: %s', $this->uri_info() ); 55 error_log( "wpdb Error Backtrace:\n" . implode( "\n", $rows ) ); 52 if ( isset( $error['message'], $error['file'] ) ) { 53 if ( str_contains( $error['message'], 'memory size' ) || in_array( basename( $error['file'] ), [ 'wp-db.php', 'db.php' ], true ) ) { 54 // Maybe this is db error. 55 $rows = array_map( [ $this, 'filter_row' ], $this->last_backtrace ); 56 $rows [] = sprintf( 'URI: %s', $this->uri_info() ); 57 error_log( "wpdb Error Backtrace:\n" . implode( "\n", $rows ) ); 58 } else { 59 // This is normal Fatal Error. 60 error_log( sprintf( '[Error Request] URI: %s', $_SERVER['REQUEST_URI'] ?? 'UNKNOWN REQUEST' ) ); 61 } 56 62 } 57 63 } -
hagakure/tags/1.3.2/src/Kunoichi/Hagakure/ErrorHandler.php
r3158762 r3263513 20 20 */ 21 21 protected function init() { 22 // Register error handler. 22 23 set_error_handler( [ $this, 'hagakure_error_handler' ], $this->error_levels() ); 23 24 } -
hagakure/tags/1.3.2/vendor/composer/InstalledVersions.php
r3158762 r3263513 32 32 */ 33 33 private static $installed; 34 35 /** 36 * @var bool 37 */ 38 private static $installedIsLocalDir; 34 39 35 40 /** … … 310 315 self::$installed = $data; 311 316 self::$installedByVendor = array(); 317 318 // when using reload, we disable the duplicate protection to ensure that self::$installed data is 319 // always returned, but we cannot know whether it comes from the installed.php in __DIR__ or not, 320 // so we have to assume it does not, and that may result in duplicate data being returned when listing 321 // all installed packages for example 322 self::$installedIsLocalDir = false; 312 323 } 313 324 … … 323 334 324 335 $installed = array(); 336 $copiedLocalDir = false; 325 337 326 338 if (self::$canGetVendors) { 339 $selfDir = strtr(__DIR__, '\\', '/'); 327 340 foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { 341 $vendorDir = strtr($vendorDir, '\\', '/'); 328 342 if (isset(self::$installedByVendor[$vendorDir])) { 329 343 $installed[] = self::$installedByVendor[$vendorDir]; … … 331 345 /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */ 332 346 $required = require $vendorDir.'/composer/installed.php'; 333 $installed[] = self::$installedByVendor[$vendorDir] = $required; 334 if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) { 335 self::$installed = $installed[count($installed) - 1]; 347 self::$installedByVendor[$vendorDir] = $required; 348 $installed[] = $required; 349 if (self::$installed === null && $vendorDir.'/composer' === $selfDir) { 350 self::$installed = $required; 351 self::$installedIsLocalDir = true; 336 352 } 353 } 354 if (self::$installedIsLocalDir && $vendorDir.'/composer' === $selfDir) { 355 $copiedLocalDir = true; 337 356 } 338 357 } … … 351 370 } 352 371 353 if (self::$installed !== array() ) {372 if (self::$installed !== array() && !$copiedLocalDir) { 354 373 $installed[] = self::$installed; 355 374 } -
hagakure/tags/1.3.2/vendor/composer/installed.php
r3158768 r3263513 2 2 'root' => array( 3 3 'name' => 'kuno1/hagakure', 4 'pretty_version' => '1.3. 1',5 'version' => '1.3. 1.0',6 'reference' => ' f65cc724a5a8f5ab8bc9117033a81f645262f192',4 'pretty_version' => '1.3.2', 5 'version' => '1.3.2.0', 6 'reference' => 'd037cfc6a1cfba60545ba1b49cdacb6e7adab5b4', 7 7 'type' => 'wordpress-plugin', 8 8 'install_path' => __DIR__ . '/../../', … … 12 12 'versions' => array( 13 13 'kuno1/hagakure' => array( 14 'pretty_version' => '1.3. 1',15 'version' => '1.3. 1.0',16 'reference' => ' f65cc724a5a8f5ab8bc9117033a81f645262f192',14 'pretty_version' => '1.3.2', 15 'version' => '1.3.2.0', 16 'reference' => 'd037cfc6a1cfba60545ba1b49cdacb6e7adab5b4', 17 17 'type' => 'wordpress-plugin', 18 18 'install_path' => __DIR__ . '/../../', -
hagakure/trunk/hagakure.php
r3158768 r3263513 2 2 /** 3 3 * Plugin Name: Hagakure - Yet Another Error Reporter 4 * Version: 1.3. 14 * Version: 1.3.2 5 5 * Description: A WordPress plugin to clarify meaningless errors like "Allowed memory size of xxxxxxxx bytes exhausted". 6 6 * Author: Tarosky 7 7 * Author URI: https://tarosky.co.jp 8 * Requires at least: 5.9 9 * Requires PHP: 7.4 8 10 * Text Domain: hagakure 9 11 * Domain Path: /languages … … 28 30 29 31 // Register shortcodes for test environment. 30 if ( class_exists( 'Kunoichi\Hagakure\Tests\ OverflowShortCode' ) ) {31 \Kunoichi\Hagakure\Tests\ OverflowShortCode::get_instance();32 if ( class_exists( 'Kunoichi\Hagakure\Tests\InappropriateShortCode' ) ) { 33 \Kunoichi\Hagakure\Tests\InappropriateShortCode::get_instance(); 32 34 } -
hagakure/trunk/readme.txt
r3158768 r3263513 2 2 3 3 Contributors: tarosky, Takahashi_Fumiki, kuno1 4 Tags: php, error, recovery 5 Requires at least: 5.9 6 Requires PHP: 7.4 4 Tags: php, error, recovery 7 5 Tested up to: 6.6 8 Stable Tag: 1.3. 16 Stable Tag: 1.3.2 9 7 License: GPLv3 or later 10 8 License URI: https://www.gnu.org/licenses/gpl-3.0.html -
hagakure/trunk/src/Kunoichi/Hagakure/DbLogger.php
r3158762 r3263513 44 44 $error = error_get_last(); 45 45 if ( null === $error ) { 46 // No error. 46 47 return; 47 48 } … … 49 50 return; 50 51 } 51 if ( isset( $error['message'], $error['file'] ) && ( str_contains( $error['message'], 'memory size' ) || in_array( basename( $error['file'] ), [ 'wp-db.php', 'db.php' ], true ) ) ) { 52 // Maybe this is db error. 53 $rows = array_map( [ $this, 'filter_row' ], $this->last_backtrace ); 54 $rows [] = sprintf( 'URI: %s', $this->uri_info() ); 55 error_log( "wpdb Error Backtrace:\n" . implode( "\n", $rows ) ); 52 if ( isset( $error['message'], $error['file'] ) ) { 53 if ( str_contains( $error['message'], 'memory size' ) || in_array( basename( $error['file'] ), [ 'wp-db.php', 'db.php' ], true ) ) { 54 // Maybe this is db error. 55 $rows = array_map( [ $this, 'filter_row' ], $this->last_backtrace ); 56 $rows [] = sprintf( 'URI: %s', $this->uri_info() ); 57 error_log( "wpdb Error Backtrace:\n" . implode( "\n", $rows ) ); 58 } else { 59 // This is normal Fatal Error. 60 error_log( sprintf( '[Error Request] URI: %s', $_SERVER['REQUEST_URI'] ?? 'UNKNOWN REQUEST' ) ); 61 } 56 62 } 57 63 } -
hagakure/trunk/src/Kunoichi/Hagakure/ErrorHandler.php
r3158762 r3263513 20 20 */ 21 21 protected function init() { 22 // Register error handler. 22 23 set_error_handler( [ $this, 'hagakure_error_handler' ], $this->error_levels() ); 23 24 } -
hagakure/trunk/vendor/composer/InstalledVersions.php
r3158762 r3263513 32 32 */ 33 33 private static $installed; 34 35 /** 36 * @var bool 37 */ 38 private static $installedIsLocalDir; 34 39 35 40 /** … … 310 315 self::$installed = $data; 311 316 self::$installedByVendor = array(); 317 318 // when using reload, we disable the duplicate protection to ensure that self::$installed data is 319 // always returned, but we cannot know whether it comes from the installed.php in __DIR__ or not, 320 // so we have to assume it does not, and that may result in duplicate data being returned when listing 321 // all installed packages for example 322 self::$installedIsLocalDir = false; 312 323 } 313 324 … … 323 334 324 335 $installed = array(); 336 $copiedLocalDir = false; 325 337 326 338 if (self::$canGetVendors) { 339 $selfDir = strtr(__DIR__, '\\', '/'); 327 340 foreach (ClassLoader::getRegisteredLoaders() as $vendorDir => $loader) { 341 $vendorDir = strtr($vendorDir, '\\', '/'); 328 342 if (isset(self::$installedByVendor[$vendorDir])) { 329 343 $installed[] = self::$installedByVendor[$vendorDir]; … … 331 345 /** @var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $required */ 332 346 $required = require $vendorDir.'/composer/installed.php'; 333 $installed[] = self::$installedByVendor[$vendorDir] = $required; 334 if (null === self::$installed && strtr($vendorDir.'/composer', '\\', '/') === strtr(__DIR__, '\\', '/')) { 335 self::$installed = $installed[count($installed) - 1]; 347 self::$installedByVendor[$vendorDir] = $required; 348 $installed[] = $required; 349 if (self::$installed === null && $vendorDir.'/composer' === $selfDir) { 350 self::$installed = $required; 351 self::$installedIsLocalDir = true; 336 352 } 353 } 354 if (self::$installedIsLocalDir && $vendorDir.'/composer' === $selfDir) { 355 $copiedLocalDir = true; 337 356 } 338 357 } … … 351 370 } 352 371 353 if (self::$installed !== array() ) {372 if (self::$installed !== array() && !$copiedLocalDir) { 354 373 $installed[] = self::$installed; 355 374 } -
hagakure/trunk/vendor/composer/installed.php
r3158768 r3263513 2 2 'root' => array( 3 3 'name' => 'kuno1/hagakure', 4 'pretty_version' => '1.3. 1',5 'version' => '1.3. 1.0',6 'reference' => ' f65cc724a5a8f5ab8bc9117033a81f645262f192',4 'pretty_version' => '1.3.2', 5 'version' => '1.3.2.0', 6 'reference' => 'd037cfc6a1cfba60545ba1b49cdacb6e7adab5b4', 7 7 'type' => 'wordpress-plugin', 8 8 'install_path' => __DIR__ . '/../../', … … 12 12 'versions' => array( 13 13 'kuno1/hagakure' => array( 14 'pretty_version' => '1.3. 1',15 'version' => '1.3. 1.0',16 'reference' => ' f65cc724a5a8f5ab8bc9117033a81f645262f192',14 'pretty_version' => '1.3.2', 15 'version' => '1.3.2.0', 16 'reference' => 'd037cfc6a1cfba60545ba1b49cdacb6e7adab5b4', 17 17 'type' => 'wordpress-plugin', 18 18 'install_path' => __DIR__ . '/../../',
Note: See TracChangeset
for help on using the changeset viewer.