Changeset 3473969
- Timestamp:
- 03/03/2026 08:20:05 PM (3 weeks ago)
- Location:
- kagg-fast-post-generator
- Files:
-
- 32 edited
- 1 copied
-
tags/2.2.0 (copied) (copied from kagg-fast-post-generator/trunk)
-
tags/2.2.0/plugin.php (modified) (2 diffs)
-
tags/2.2.0/readme.txt (modified) (10 diffs)
-
tags/2.2.0/src/php/AdminNotices.php (modified) (2 diffs)
-
tags/2.2.0/src/php/Generator/Comment.php (modified) (15 diffs)
-
tags/2.2.0/src/php/Generator/Generator.php (modified) (13 diffs)
-
tags/2.2.0/src/php/Generator/Item.php (modified) (9 diffs)
-
tags/2.2.0/src/php/Generator/Page.php (modified) (1 diff)
-
tags/2.2.0/src/php/Generator/Post.php (modified) (5 diffs)
-
tags/2.2.0/src/php/Generator/User.php (modified) (6 diffs)
-
tags/2.2.0/src/php/Lorem.php (modified) (4 diffs)
-
tags/2.2.0/src/php/Randomizer.php (modified) (4 diffs)
-
tags/2.2.0/src/php/Settings.php (modified) (6 diffs)
-
tags/2.2.0/vendor/autoload.php (modified) (1 diff)
-
tags/2.2.0/vendor/composer/autoload_real.php (modified) (2 diffs)
-
tags/2.2.0/vendor/composer/autoload_static.php (modified) (3 diffs)
-
tags/2.2.0/vendor/composer/installed.php (modified) (2 diffs)
-
trunk/plugin.php (modified) (2 diffs)
-
trunk/readme.txt (modified) (10 diffs)
-
trunk/src/php/AdminNotices.php (modified) (2 diffs)
-
trunk/src/php/Generator/Comment.php (modified) (15 diffs)
-
trunk/src/php/Generator/Generator.php (modified) (13 diffs)
-
trunk/src/php/Generator/Item.php (modified) (9 diffs)
-
trunk/src/php/Generator/Page.php (modified) (1 diff)
-
trunk/src/php/Generator/Post.php (modified) (5 diffs)
-
trunk/src/php/Generator/User.php (modified) (6 diffs)
-
trunk/src/php/Lorem.php (modified) (4 diffs)
-
trunk/src/php/Randomizer.php (modified) (4 diffs)
-
trunk/src/php/Settings.php (modified) (6 diffs)
-
trunk/vendor/autoload.php (modified) (1 diff)
-
trunk/vendor/composer/autoload_real.php (modified) (2 diffs)
-
trunk/vendor/composer/autoload_static.php (modified) (3 diffs)
-
trunk/vendor/composer/installed.php (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
kagg-fast-post-generator/tags/2.2.0/plugin.php
r3291889 r3473969 10 10 * Plugin Name: KAGG Generator 11 11 * Plugin URI: https://wordpress.org/plugins/kagg-fast-post-generator/ 12 * Description: Generates posts/pages. Useful to generate millions of records in wp_posts table.13 * Version: 2. 1.014 * Requires at least: 5.315 * Requires PHP: 7. 212 * Description: Generates posts/pages. Useful to generate millions of records in the wp_posts table. 13 * Version: 2.2.0 14 * Requires at least: 6.0 15 * Requires PHP: 7.4 16 16 * Author: KAGG Design 17 17 * Author URI: https://profiles.wordpress.org/kaggdesign/ … … 29 29 } 30 30 31 if ( defined( 'KAGG_GENERATOR_VERSION' ) ) {32 return;33 }34 35 31 /** 36 32 * Plugin version. 37 33 */ 38 const KAGG_GENERATOR_VERSION = '2. 1.0';34 const KAGG_GENERATOR_VERSION = '2.2.0'; 39 35 40 36 /** -
kagg-fast-post-generator/tags/2.2.0/readme.txt
r3291889 r3473969 2 2 Contributors: kaggdesign 3 3 Tags: generate posts, generate pages, development, bulk generate 4 Requires at least: 5.35 Tested up to: 6. 86 Stable tag: 2. 1.07 Requires PHP: 7. 24 Requires at least: 6.0 5 Tested up to: 6.9 6 Stable tag: 2.2.0 7 Requires PHP: 7.4 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 13 13 == Description == 14 14 15 In WordPress development, sometimes it is ne ededto generate extensive databases with hundreds of thousands of posts/pages. Existing plugins can generate test content very slowly, with the usual rate of 1,000 posts per hour.15 In WordPress development, sometimes it is necessary to generate extensive databases with hundreds of thousands of posts/pages. Existing plugins can generate test content very slowly, with the usual rate of 1,000 posts per hour. 16 16 17 17 The Fast Post Generator plugin can generate millions of posts/pages in minutes, which is 20,000 times faster than similar plugins. … … 27 27 == Installation == 28 28 29 1. Upload `kagg-fast-post-generator` folder to the `/wp-content/plugins/` directory.29 1. Upload the `kagg-fast-post-generator` folder to the `/wp-content/plugins/` directory. 30 30 2. Activate the plugin through the 'Plugins' menu in WordPress. 31 31 … … 40 40 == Changelog == 41 41 42 = 2.2.0 = 43 * The minimum required PHP version is now 7.4. 44 * The minimum required WordPress version is now 6.0. 45 42 46 = 2.1.0 = 43 47 * Fixed "Function _load_textdomain_just_in_time was called incorrectly" notice. … … 45 49 46 50 = 2.0.1 = 47 * Fixed error on deleting a temporary table.51 * Fixed the error on deleting a temporary table. 48 52 49 53 = 2.0.0 = 50 54 * Dropped support for PHP 7.0. The minimum required PHP version is now 7.2. 51 55 * Fixed kagg_generator_comment_max_nesting_level filter name. 52 * Fixed inability to create a temporary table when it exists after previous operations.56 * Fixed the inability to create a temporary table when it exists after previous operations. 53 57 * Fixed deprecation errors with PHP 8.4. 54 58 * Tested with WordPress 6.7. … … 61 65 * Tested with WordPress 6.5. 62 66 * Tested with PHP 8.3. 63 * Fixed fatal error with WP 6.3+.67 * Fixed a fatal error with WP 6.3+. 64 68 * Fixed deprecation errors with PHP 8. 65 69 … … 75 79 * Fixed: Item generation time now is properly distributed within the default period. 76 80 * Added comments from not logged-in users. 77 * Added filter for item's initial time shift.81 * Added filter for an item's initial time shift. 78 82 * Added filter for comment's random posts count. 79 83 * Added filter for comment's random IPs count. … … 84 88 * Added filter for logged-in user's percentage. 85 89 * Added filter for paragraphs in the post. 86 * Added filter for words in t itle.90 * Added filter for words in the title. 87 91 88 92 = 1.6.0 = 89 93 * Tested with WordPress 6.1. 90 * Fixed fatal error with WP 6.1 and SHORTINIT.94 * Fixed a fatal error with WP 6.1 and SHORTINIT. 91 95 92 96 = 1.5.0 = … … 95 99 = 1.4.0 = 96 100 * Added generation of comments, with hierarchy. 97 * Improved posts' generation, now with random date and author.101 * Improved posts' generation, now with a random date and author. 98 102 * Added generation of users. 99 103 … … 103 107 104 108 = 1.2.0 = 105 * Added ability to work on Linux servers.109 * Added the ability to work on Linux servers. 106 110 107 111 = 1.1.0 = 108 * Added writing of all post fields initially created by WP Core for a post.112 * Added writing of all post-fields initially created by WP Core for a post. 109 113 110 114 = 1.0.0 = -
kagg-fast-post-generator/tags/2.2.0/src/php/AdminNotices.php
r3214212 r3473969 18 18 * @var array 19 19 */ 20 private $notices = [];20 private array $notices = []; 21 21 22 22 /** … … 63 63 64 64 /** 65 * Whether the current admin screen allowed to showthe notice.65 * Whether the current admin screen allowed showing the notice. 66 66 * 67 67 * @param array $notice Notice. -
kagg-fast-post-generator/tags/2.2.0/src/php/Generator/Comment.php
r3214212 r3473969 22 22 * @var int 23 23 */ 24 protected $random_posts_count;24 protected int $random_posts_count; 25 25 26 26 /** … … 29 29 * @var int 30 30 */ 31 protected $random_ips_count;31 protected int $random_ips_count; 32 32 33 33 /** … … 36 36 * @var int 37 37 */ 38 protected $max_nesting_level;38 protected int $max_nesting_level; 39 39 40 40 /** … … 43 43 * @var int 44 44 */ 45 protected $nesting_percentage;45 protected int $nesting_percentage; 46 46 47 47 /** … … 50 50 * @var int 51 51 */ 52 protected $max_sentences;52 protected int $max_sentences; 53 53 54 54 /** … … 57 57 * @var string 58 58 */ 59 protected $item_type = 'comment';60 61 /** 62 * Item DB table name without prefix.59 protected string $item_type = 'comment'; 60 61 /** 62 * Item DB table name without a prefix. 63 63 * 64 64 * @var string 65 65 */ 66 protected $table = 'comments';66 protected string $table = 'comments'; 67 67 68 68 /** … … 71 71 * @var string 72 72 */ 73 protected $marker_field = 'comment_author_url';73 protected string $marker_field = 'comment_author_url'; 74 74 75 75 /** … … 78 78 * @var Randomizer 79 79 */ 80 private $post_id_randomizer;80 private Randomizer $post_id_randomizer; 81 81 82 82 /** … … 85 85 * @var Randomizer 86 86 */ 87 private $user_randomizer;87 private Randomizer $user_randomizer; 88 88 89 89 /** … … 92 92 * @var Randomizer 93 93 */ 94 private $logged_out_user_randomizer;94 private Randomizer $logged_out_user_randomizer; 95 95 96 96 /** … … 99 99 * @var Randomizer 100 100 */ 101 private $ip_randomizer;101 private Randomizer $ip_randomizer; 102 102 103 103 /** … … 106 106 * @var int 107 107 */ 108 private $comment_ID;108 private int $comment_ID; 109 109 110 110 /** … … 113 113 * @var array 114 114 */ 115 private $post_comments_stub;115 private array $post_comments_stub; 116 116 117 117 /** … … 164 164 $gmt_date = $this->gmt_date( self::MYSQL_TIME_FORMAT, $now ); 165 165 166 // Here we have to list the fields in the same order as in wp_comments table.166 // Here we have to list the fields in the same order as in the wp_comments table. 167 167 // Otherwise, csv file won't be created properly. 168 168 $this->stub = [ … … 269 269 270 270 /** 271 * Add comment to post and return comment parent.271 * Add comment to the post and return comment parent. 272 272 * 273 273 * @param object $post Post. -
kagg-fast-post-generator/tags/2.2.0/src/php/Generator/Generator.php
r3214212 r3473969 8 8 namespace KAGG\Generator\Generator; 9 9 10 use JsonException; 10 11 use KAGG\Generator\Settings; 11 12 use RuntimeException; … … 26 27 * @var string 27 28 */ 28 private $local_infile_value;29 private string $local_infile_value; 29 30 30 31 /** … … 33 34 * @var bool 34 35 */ 35 private $use_local_infile;36 37 /** 38 * Registered item types and their shandler class names.36 private bool $use_local_infile; 37 38 /** 39 * Registered item types and their handler class names. 39 40 * 40 41 * @var string[] Item handlers. 41 42 */ 42 private $registered_items;43 private array $registered_items; 43 44 44 45 /** … … 47 48 * @var Item $item_handler 48 49 */ 49 private $item_handler;50 private Item $item_handler; 50 51 51 52 /** … … 54 55 * @var bool 55 56 */ 56 private $download_sql;57 private bool $download_sql; 57 58 58 59 /** … … 81 82 * 82 83 * @return bool 83 * @throws RuntimeException With error message.84 * @throws RuntimeException With an error message. 84 85 */ 85 86 public function use_local_infile(): bool { … … 112 113 // phpcs:disable WordPress.Security.NonceVerification.Missing 113 114 $index = isset( $_POST['index'] ) ? (int) sanitize_text_field( wp_unslash( $_POST['index'] ) ) : 0; 114 $data = json_decode( 115 isset( $_POST['data'] ) ? sanitize_text_field( wp_unslash( $_POST['data'] ) ) : '', 116 false 117 ); 115 try { 116 $data = json_decode( 117 isset( $_POST['data'] ) 118 ? sanitize_text_field( wp_unslash( $_POST['data'] ) ) 119 : '', 120 false, 121 512, 122 JSON_THROW_ON_ERROR 123 ); 124 } catch ( JsonException $e ) { 125 $data = []; 126 } 118 127 // phpcs:enable WordPress.Security.NonceVerification.Missing 119 128 … … 203 212 // Nonce is checked by check_ajax_referer() in run_checks(). 204 213 // phpcs:disable WordPress.Security.NonceVerification.Missing 205 $data = json_decode( 206 isset( $_POST['data'] ) ? sanitize_text_field( wp_unslash( $_POST['data'] ) ) : '', 207 false 208 ); 214 try { 215 $data = json_decode( 216 isset( $_POST['data'] ) 217 ? sanitize_text_field( wp_unslash( $_POST['data'] ) ) 218 : '', 219 false, 220 512, 221 JSON_THROW_ON_ERROR 222 ); 223 } catch ( JsonException $e ) { 224 $data = []; 225 } 209 226 // phpcs:enable WordPress.Security.NonceVerification.Missing 210 227 … … 304 321 * 305 322 * @return void 306 * @throws RuntimeException With error message.323 * @throws RuntimeException With an error message. 307 324 */ 308 325 private function generate_items( int $count, string $temp_filename ): void { … … 381 398 * 382 399 * @return void 383 * @throws RuntimeException With error message.400 * @throws RuntimeException With an error message. 384 401 * @noinspection SqlInsertValues 385 402 * @noinspection SqlResolve … … 416 433 * 417 434 * @return void 418 * @throws RuntimeException With error message.435 * @throws RuntimeException With an error message. 419 436 */ 420 437 private function store_items( string $temp_filename ): void { … … 454 471 455 472 /** 456 * Set local_infile variable to 'ON' if needed.457 * 458 * @return void 459 * @throws RuntimeException With error message.473 * Set the local_infile variable to 'ON' if needed. 474 * 475 * @return void 476 * @throws RuntimeException With an error message. 460 477 */ 461 478 private function set_local_infile(): void { … … 489 506 490 507 /** 491 * Revert local variable if needed.492 * 493 * @return void 494 * @throws RuntimeException With error message.508 * Revert a local variable if needed. 509 * 510 * @return void 511 * @throws RuntimeException With an error message. 495 512 */ 496 513 private function revert_local_infile(): void { -
kagg-fast-post-generator/tags/2.2.0/src/php/Generator/Item.php
r3214212 r3473969 45 45 * @var int 46 46 */ 47 protected $number;47 protected int $number; 48 48 49 49 /** … … 52 52 * @var int 53 53 */ 54 protected $index;54 protected int $index; 55 55 56 56 /** … … 59 59 * @var string 60 60 */ 61 protected $item_type;62 63 /** 64 * Item DB table name without prefix.61 protected string $item_type = ''; 62 63 /** 64 * Item DB table name without a prefix. 65 65 * 66 66 * @var string 67 67 */ 68 protected $table = 'posts';68 protected string $table = 'posts'; 69 69 70 70 /** … … 73 73 * @var string 74 74 */ 75 protected $marker_field = 'guid';75 protected string $marker_field = 'guid'; 76 76 77 77 /** … … 80 80 * @var array 81 81 */ 82 protected $stub = [];82 protected array $stub = []; 83 83 84 84 /** … … 87 87 * @var int 88 88 */ 89 protected $initial_time_shift;89 protected int $initial_time_shift; 90 90 91 91 /** … … 94 94 * @var int 95 95 */ 96 protected $max_time_shift;96 protected int $max_time_shift; 97 97 98 98 /** … … 142 142 143 143 /** 144 * Get table name.144 * Get a table name. 145 145 * 146 146 * @return string … … 151 151 152 152 /** 153 * Get marker field name.153 * Get a marker field name. 154 154 * 155 155 * @return string -
kagg-fast-post-generator/tags/2.2.0/src/php/Generator/Page.php
r2741161 r3473969 18 18 * @var string 19 19 */ 20 protected $item_type = 'page';20 protected string $item_type = 'page'; 21 21 } -
kagg-fast-post-generator/tags/2.2.0/src/php/Generator/Post.php
r3214212 r3473969 23 23 * @var string 24 24 */ 25 protected $item_type = 'post';25 protected string $item_type = 'post'; 26 26 27 27 /** … … 30 30 * @var int 31 31 */ 32 protected $paragraphs_in_post;32 protected int $paragraphs_in_post; 33 33 34 34 /** … … 37 37 * @var int 38 38 */ 39 protected $words_in_title;39 protected int $words_in_title; 40 40 41 41 /** … … 44 44 * @var Randomizer 45 45 */ 46 private $user_randomizer;46 private Randomizer $user_randomizer; 47 47 48 48 /** … … 51 51 * @var stdClass 52 52 */ 53 private $post_time_keeper;53 private stdClass $post_time_keeper; 54 54 55 55 /** -
kagg-fast-post-generator/tags/2.2.0/src/php/Generator/User.php
r3214212 r3473969 23 23 * @var string 24 24 */ 25 protected $item_type = 'user';25 protected string $item_type = 'user'; 26 26 27 27 /** 28 * Item DB table name without prefix.28 * Item DB table name without a prefix. 29 29 * 30 30 * @var string 31 31 */ 32 protected $table = 'users';32 protected string $table = 'users'; 33 33 34 34 /** … … 37 37 * @var string 38 38 */ 39 protected $marker_field = 'user_url';39 protected string $marker_field = 'user_url'; 40 40 41 41 /** … … 44 44 * @var Randomizer 45 45 */ 46 private $username_randomizer;46 private Randomizer $username_randomizer; 47 47 48 48 /** … … 51 51 * @var stdClass 52 52 */ 53 private $user_time_keeper;53 private stdClass $user_time_keeper; 54 54 55 55 /** … … 58 58 * @var string 59 59 */ 60 private $password;60 private string $password; 61 61 62 62 /** … … 151 151 152 152 /** 153 * Add random time shift touser registered date.153 * Add a random time shift to the user registered date. 154 154 * 155 155 * @param object $user User. -
kagg-fast-post-generator/tags/2.2.0/src/php/Lorem.php
r3214212 r3473969 26 26 * @var string[] 27 27 */ 28 protected static $word_list = [28 protected static array $word_list = [ 29 29 'alias', 30 30 'consequatur', … … 283 283 * @var string[] 284 284 */ 285 protected static $name_list = [285 protected static array $name_list = [ 286 286 'Aaron', 287 287 'Abel', … … 1214 1214 1215 1215 /** 1216 * Randomize number of elements.1216 * Randomize the number of elements. 1217 1217 * 1218 1218 * @param integer $nb_elements Number of elements. … … 1280 1280 private static function text_array_to_string( string $type, array $text ): string { 1281 1281 if ( 'word' === $type ) { 1282 // Capitalize afirst letter.1282 // Capitalize the first letter. 1283 1283 $text[0] = strtoupper( $text[0] ); 1284 1284 1285 // End the sentence with full stop.1285 // End the sentence with a full stop. 1286 1286 $text[ count( $text ) - 1 ] .= '.'; 1287 1287 } -
kagg-fast-post-generator/tags/2.2.0/src/php/Randomizer.php
r3214212 r3473969 18 18 * @var array 19 19 */ 20 private $keys = [];20 private array $keys = []; 21 21 22 22 /** … … 25 25 * @var array 26 26 */ 27 private $elements;27 private array $elements; 28 28 29 29 /** … … 32 32 * @var int 33 33 */ 34 private $count;34 private int $count; 35 35 36 36 /** … … 39 39 * @var int 40 40 */ 41 private $index = 0;41 private int $index = 0; 42 42 43 43 /** -
kagg-fast-post-generator/tags/2.2.0/src/php/Settings.php
r3214219 r3473969 84 84 * @var Generator 85 85 */ 86 private $generator;86 private Generator $generator; 87 87 88 88 /** … … 91 91 * @var array 92 92 */ 93 private $form_fields;93 private array $form_fields; 94 94 95 95 /** … … 98 98 * @var array 99 99 */ 100 private $settings;100 private array $settings; 101 101 102 102 /** … … 334 334 * @noinspection HtmlUnknownAttribute 335 335 */ 336 public function field_callback( array $arguments ): void { 336 public function field_callback( array $arguments ): void { // phpcs:ignore Generic.Metrics.CyclomaticComplexity.TooHigh 337 337 $value = $this->get_option( $arguments['field_id'] ); 338 338 … … 779 779 780 780 /** 781 * Initiali se Settings.781 * Initialize Settings. 782 782 * 783 783 * Store all settings in a single database entry … … 786 786 */ 787 787 private function init_settings(): void { 788 $ this->settings = get_option( self::OPTION_KEY, null );788 $settings = get_option( self::OPTION_KEY, null ); 789 789 790 790 // If there are no settings defined, use defaults. 791 if ( ! is_array( $this->settings ) ) { 792 $form_fields = $this->get_form_fields(); 793 $this->settings = array_merge( 794 array_fill_keys( array_keys( $form_fields ), '' ), 795 wp_list_pluck( $form_fields, 'default' ) 796 ); 797 } 791 if ( is_array( $settings ) ) { 792 $this->settings = $settings; 793 794 return; 795 } 796 797 $form_fields = $this->get_form_fields(); 798 $this->settings = array_merge( 799 array_fill_keys( array_keys( $form_fields ), '' ), 800 wp_list_pluck( $form_fields, 'default' ) 801 ); 798 802 } 799 803 -
kagg-fast-post-generator/tags/2.2.0/vendor/autoload.php
r3291889 r3473969 20 20 require_once __DIR__ . '/composer/autoload_real.php'; 21 21 22 return ComposerAutoloaderInit 1afda73372e93cf71d2b40fd22ce3a15::getLoader();22 return ComposerAutoloaderInit5355545a8d8b5ece071ad74d0a09c7cf::getLoader(); -
kagg-fast-post-generator/tags/2.2.0/vendor/composer/autoload_real.php
r3291889 r3473969 3 3 // autoload_real.php @generated by Composer 4 4 5 class ComposerAutoloaderInit 1afda73372e93cf71d2b40fd22ce3a155 class ComposerAutoloaderInit5355545a8d8b5ece071ad74d0a09c7cf 6 6 { 7 7 private static $loader; … … 23 23 } 24 24 25 spl_autoload_register(array('ComposerAutoloaderInit 1afda73372e93cf71d2b40fd22ce3a15', 'loadClassLoader'), true, true);25 spl_autoload_register(array('ComposerAutoloaderInit5355545a8d8b5ece071ad74d0a09c7cf', 'loadClassLoader'), true, true); 26 26 self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); 27 spl_autoload_unregister(array('ComposerAutoloaderInit 1afda73372e93cf71d2b40fd22ce3a15', 'loadClassLoader'));27 spl_autoload_unregister(array('ComposerAutoloaderInit5355545a8d8b5ece071ad74d0a09c7cf', 'loadClassLoader')); 28 28 29 29 require __DIR__ . '/autoload_static.php'; 30 call_user_func(\Composer\Autoload\ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a15::getInitializer($loader));30 call_user_func(\Composer\Autoload\ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf::getInitializer($loader)); 31 31 32 32 $loader->setClassMapAuthoritative(true); -
kagg-fast-post-generator/tags/2.2.0/vendor/composer/autoload_static.php
r3291889 r3473969 5 5 namespace Composer\Autoload; 6 6 7 class ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a157 class ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf 8 8 { 9 9 public static $prefixLengthsPsr4 = array ( 10 'K' => 10 'K' => 11 11 array ( 12 12 'KAGG\\Generator\\' => 15, … … 15 15 16 16 public static $prefixDirsPsr4 = array ( 17 'KAGG\\Generator\\' => 17 'KAGG\\Generator\\' => 18 18 array ( 19 19 0 => __DIR__ . '/../..' . '/src/php', … … 40 40 { 41 41 return \Closure::bind(function () use ($loader) { 42 $loader->prefixLengthsPsr4 = ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a15::$prefixLengthsPsr4;43 $loader->prefixDirsPsr4 = ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a15::$prefixDirsPsr4;44 $loader->classMap = ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a15::$classMap;42 $loader->prefixLengthsPsr4 = ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf::$prefixLengthsPsr4; 43 $loader->prefixDirsPsr4 = ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf::$prefixDirsPsr4; 44 $loader->classMap = ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf::$classMap; 45 45 46 46 }, null, ClassLoader::class); -
kagg-fast-post-generator/tags/2.2.0/vendor/composer/installed.php
r3291889 r3473969 2 2 'root' => array( 3 3 'name' => 'kagg/generator', 4 'pretty_version' => '2. 1.0',5 'version' => '2. 1.0.0',6 'reference' => ' 9040afcab5f404e731e90b9d6414e71db2fea4a7',4 'pretty_version' => '2.2.0', 5 'version' => '2.2.0.0', 6 'reference' => 'db945036cc58b5ee2aae731388732be7ae24867e', 7 7 'type' => 'wordpress-plugin', 8 8 'install_path' => __DIR__ . '/../../', … … 12 12 'versions' => array( 13 13 'kagg/generator' => array( 14 'pretty_version' => '2. 1.0',15 'version' => '2. 1.0.0',16 'reference' => ' 9040afcab5f404e731e90b9d6414e71db2fea4a7',14 'pretty_version' => '2.2.0', 15 'version' => '2.2.0.0', 16 'reference' => 'db945036cc58b5ee2aae731388732be7ae24867e', 17 17 'type' => 'wordpress-plugin', 18 18 'install_path' => __DIR__ . '/../../', -
kagg-fast-post-generator/trunk/plugin.php
r3291889 r3473969 10 10 * Plugin Name: KAGG Generator 11 11 * Plugin URI: https://wordpress.org/plugins/kagg-fast-post-generator/ 12 * Description: Generates posts/pages. Useful to generate millions of records in wp_posts table.13 * Version: 2. 1.014 * Requires at least: 5.315 * Requires PHP: 7. 212 * Description: Generates posts/pages. Useful to generate millions of records in the wp_posts table. 13 * Version: 2.2.0 14 * Requires at least: 6.0 15 * Requires PHP: 7.4 16 16 * Author: KAGG Design 17 17 * Author URI: https://profiles.wordpress.org/kaggdesign/ … … 29 29 } 30 30 31 if ( defined( 'KAGG_GENERATOR_VERSION' ) ) {32 return;33 }34 35 31 /** 36 32 * Plugin version. 37 33 */ 38 const KAGG_GENERATOR_VERSION = '2. 1.0';34 const KAGG_GENERATOR_VERSION = '2.2.0'; 39 35 40 36 /** -
kagg-fast-post-generator/trunk/readme.txt
r3291889 r3473969 2 2 Contributors: kaggdesign 3 3 Tags: generate posts, generate pages, development, bulk generate 4 Requires at least: 5.35 Tested up to: 6. 86 Stable tag: 2. 1.07 Requires PHP: 7. 24 Requires at least: 6.0 5 Tested up to: 6.9 6 Stable tag: 2.2.0 7 Requires PHP: 7.4 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 13 13 == Description == 14 14 15 In WordPress development, sometimes it is ne ededto generate extensive databases with hundreds of thousands of posts/pages. Existing plugins can generate test content very slowly, with the usual rate of 1,000 posts per hour.15 In WordPress development, sometimes it is necessary to generate extensive databases with hundreds of thousands of posts/pages. Existing plugins can generate test content very slowly, with the usual rate of 1,000 posts per hour. 16 16 17 17 The Fast Post Generator plugin can generate millions of posts/pages in minutes, which is 20,000 times faster than similar plugins. … … 27 27 == Installation == 28 28 29 1. Upload `kagg-fast-post-generator` folder to the `/wp-content/plugins/` directory.29 1. Upload the `kagg-fast-post-generator` folder to the `/wp-content/plugins/` directory. 30 30 2. Activate the plugin through the 'Plugins' menu in WordPress. 31 31 … … 40 40 == Changelog == 41 41 42 = 2.2.0 = 43 * The minimum required PHP version is now 7.4. 44 * The minimum required WordPress version is now 6.0. 45 42 46 = 2.1.0 = 43 47 * Fixed "Function _load_textdomain_just_in_time was called incorrectly" notice. … … 45 49 46 50 = 2.0.1 = 47 * Fixed error on deleting a temporary table.51 * Fixed the error on deleting a temporary table. 48 52 49 53 = 2.0.0 = 50 54 * Dropped support for PHP 7.0. The minimum required PHP version is now 7.2. 51 55 * Fixed kagg_generator_comment_max_nesting_level filter name. 52 * Fixed inability to create a temporary table when it exists after previous operations.56 * Fixed the inability to create a temporary table when it exists after previous operations. 53 57 * Fixed deprecation errors with PHP 8.4. 54 58 * Tested with WordPress 6.7. … … 61 65 * Tested with WordPress 6.5. 62 66 * Tested with PHP 8.3. 63 * Fixed fatal error with WP 6.3+.67 * Fixed a fatal error with WP 6.3+. 64 68 * Fixed deprecation errors with PHP 8. 65 69 … … 75 79 * Fixed: Item generation time now is properly distributed within the default period. 76 80 * Added comments from not logged-in users. 77 * Added filter for item's initial time shift.81 * Added filter for an item's initial time shift. 78 82 * Added filter for comment's random posts count. 79 83 * Added filter for comment's random IPs count. … … 84 88 * Added filter for logged-in user's percentage. 85 89 * Added filter for paragraphs in the post. 86 * Added filter for words in t itle.90 * Added filter for words in the title. 87 91 88 92 = 1.6.0 = 89 93 * Tested with WordPress 6.1. 90 * Fixed fatal error with WP 6.1 and SHORTINIT.94 * Fixed a fatal error with WP 6.1 and SHORTINIT. 91 95 92 96 = 1.5.0 = … … 95 99 = 1.4.0 = 96 100 * Added generation of comments, with hierarchy. 97 * Improved posts' generation, now with random date and author.101 * Improved posts' generation, now with a random date and author. 98 102 * Added generation of users. 99 103 … … 103 107 104 108 = 1.2.0 = 105 * Added ability to work on Linux servers.109 * Added the ability to work on Linux servers. 106 110 107 111 = 1.1.0 = 108 * Added writing of all post fields initially created by WP Core for a post.112 * Added writing of all post-fields initially created by WP Core for a post. 109 113 110 114 = 1.0.0 = -
kagg-fast-post-generator/trunk/src/php/AdminNotices.php
r3214212 r3473969 18 18 * @var array 19 19 */ 20 private $notices = [];20 private array $notices = []; 21 21 22 22 /** … … 63 63 64 64 /** 65 * Whether the current admin screen allowed to showthe notice.65 * Whether the current admin screen allowed showing the notice. 66 66 * 67 67 * @param array $notice Notice. -
kagg-fast-post-generator/trunk/src/php/Generator/Comment.php
r3214212 r3473969 22 22 * @var int 23 23 */ 24 protected $random_posts_count;24 protected int $random_posts_count; 25 25 26 26 /** … … 29 29 * @var int 30 30 */ 31 protected $random_ips_count;31 protected int $random_ips_count; 32 32 33 33 /** … … 36 36 * @var int 37 37 */ 38 protected $max_nesting_level;38 protected int $max_nesting_level; 39 39 40 40 /** … … 43 43 * @var int 44 44 */ 45 protected $nesting_percentage;45 protected int $nesting_percentage; 46 46 47 47 /** … … 50 50 * @var int 51 51 */ 52 protected $max_sentences;52 protected int $max_sentences; 53 53 54 54 /** … … 57 57 * @var string 58 58 */ 59 protected $item_type = 'comment';60 61 /** 62 * Item DB table name without prefix.59 protected string $item_type = 'comment'; 60 61 /** 62 * Item DB table name without a prefix. 63 63 * 64 64 * @var string 65 65 */ 66 protected $table = 'comments';66 protected string $table = 'comments'; 67 67 68 68 /** … … 71 71 * @var string 72 72 */ 73 protected $marker_field = 'comment_author_url';73 protected string $marker_field = 'comment_author_url'; 74 74 75 75 /** … … 78 78 * @var Randomizer 79 79 */ 80 private $post_id_randomizer;80 private Randomizer $post_id_randomizer; 81 81 82 82 /** … … 85 85 * @var Randomizer 86 86 */ 87 private $user_randomizer;87 private Randomizer $user_randomizer; 88 88 89 89 /** … … 92 92 * @var Randomizer 93 93 */ 94 private $logged_out_user_randomizer;94 private Randomizer $logged_out_user_randomizer; 95 95 96 96 /** … … 99 99 * @var Randomizer 100 100 */ 101 private $ip_randomizer;101 private Randomizer $ip_randomizer; 102 102 103 103 /** … … 106 106 * @var int 107 107 */ 108 private $comment_ID;108 private int $comment_ID; 109 109 110 110 /** … … 113 113 * @var array 114 114 */ 115 private $post_comments_stub;115 private array $post_comments_stub; 116 116 117 117 /** … … 164 164 $gmt_date = $this->gmt_date( self::MYSQL_TIME_FORMAT, $now ); 165 165 166 // Here we have to list the fields in the same order as in wp_comments table.166 // Here we have to list the fields in the same order as in the wp_comments table. 167 167 // Otherwise, csv file won't be created properly. 168 168 $this->stub = [ … … 269 269 270 270 /** 271 * Add comment to post and return comment parent.271 * Add comment to the post and return comment parent. 272 272 * 273 273 * @param object $post Post. -
kagg-fast-post-generator/trunk/src/php/Generator/Generator.php
r3214212 r3473969 8 8 namespace KAGG\Generator\Generator; 9 9 10 use JsonException; 10 11 use KAGG\Generator\Settings; 11 12 use RuntimeException; … … 26 27 * @var string 27 28 */ 28 private $local_infile_value;29 private string $local_infile_value; 29 30 30 31 /** … … 33 34 * @var bool 34 35 */ 35 private $use_local_infile;36 37 /** 38 * Registered item types and their shandler class names.36 private bool $use_local_infile; 37 38 /** 39 * Registered item types and their handler class names. 39 40 * 40 41 * @var string[] Item handlers. 41 42 */ 42 private $registered_items;43 private array $registered_items; 43 44 44 45 /** … … 47 48 * @var Item $item_handler 48 49 */ 49 private $item_handler;50 private Item $item_handler; 50 51 51 52 /** … … 54 55 * @var bool 55 56 */ 56 private $download_sql;57 private bool $download_sql; 57 58 58 59 /** … … 81 82 * 82 83 * @return bool 83 * @throws RuntimeException With error message.84 * @throws RuntimeException With an error message. 84 85 */ 85 86 public function use_local_infile(): bool { … … 112 113 // phpcs:disable WordPress.Security.NonceVerification.Missing 113 114 $index = isset( $_POST['index'] ) ? (int) sanitize_text_field( wp_unslash( $_POST['index'] ) ) : 0; 114 $data = json_decode( 115 isset( $_POST['data'] ) ? sanitize_text_field( wp_unslash( $_POST['data'] ) ) : '', 116 false 117 ); 115 try { 116 $data = json_decode( 117 isset( $_POST['data'] ) 118 ? sanitize_text_field( wp_unslash( $_POST['data'] ) ) 119 : '', 120 false, 121 512, 122 JSON_THROW_ON_ERROR 123 ); 124 } catch ( JsonException $e ) { 125 $data = []; 126 } 118 127 // phpcs:enable WordPress.Security.NonceVerification.Missing 119 128 … … 203 212 // Nonce is checked by check_ajax_referer() in run_checks(). 204 213 // phpcs:disable WordPress.Security.NonceVerification.Missing 205 $data = json_decode( 206 isset( $_POST['data'] ) ? sanitize_text_field( wp_unslash( $_POST['data'] ) ) : '', 207 false 208 ); 214 try { 215 $data = json_decode( 216 isset( $_POST['data'] ) 217 ? sanitize_text_field( wp_unslash( $_POST['data'] ) ) 218 : '', 219 false, 220 512, 221 JSON_THROW_ON_ERROR 222 ); 223 } catch ( JsonException $e ) { 224 $data = []; 225 } 209 226 // phpcs:enable WordPress.Security.NonceVerification.Missing 210 227 … … 304 321 * 305 322 * @return void 306 * @throws RuntimeException With error message.323 * @throws RuntimeException With an error message. 307 324 */ 308 325 private function generate_items( int $count, string $temp_filename ): void { … … 381 398 * 382 399 * @return void 383 * @throws RuntimeException With error message.400 * @throws RuntimeException With an error message. 384 401 * @noinspection SqlInsertValues 385 402 * @noinspection SqlResolve … … 416 433 * 417 434 * @return void 418 * @throws RuntimeException With error message.435 * @throws RuntimeException With an error message. 419 436 */ 420 437 private function store_items( string $temp_filename ): void { … … 454 471 455 472 /** 456 * Set local_infile variable to 'ON' if needed.457 * 458 * @return void 459 * @throws RuntimeException With error message.473 * Set the local_infile variable to 'ON' if needed. 474 * 475 * @return void 476 * @throws RuntimeException With an error message. 460 477 */ 461 478 private function set_local_infile(): void { … … 489 506 490 507 /** 491 * Revert local variable if needed.492 * 493 * @return void 494 * @throws RuntimeException With error message.508 * Revert a local variable if needed. 509 * 510 * @return void 511 * @throws RuntimeException With an error message. 495 512 */ 496 513 private function revert_local_infile(): void { -
kagg-fast-post-generator/trunk/src/php/Generator/Item.php
r3214212 r3473969 45 45 * @var int 46 46 */ 47 protected $number;47 protected int $number; 48 48 49 49 /** … … 52 52 * @var int 53 53 */ 54 protected $index;54 protected int $index; 55 55 56 56 /** … … 59 59 * @var string 60 60 */ 61 protected $item_type;62 63 /** 64 * Item DB table name without prefix.61 protected string $item_type = ''; 62 63 /** 64 * Item DB table name without a prefix. 65 65 * 66 66 * @var string 67 67 */ 68 protected $table = 'posts';68 protected string $table = 'posts'; 69 69 70 70 /** … … 73 73 * @var string 74 74 */ 75 protected $marker_field = 'guid';75 protected string $marker_field = 'guid'; 76 76 77 77 /** … … 80 80 * @var array 81 81 */ 82 protected $stub = [];82 protected array $stub = []; 83 83 84 84 /** … … 87 87 * @var int 88 88 */ 89 protected $initial_time_shift;89 protected int $initial_time_shift; 90 90 91 91 /** … … 94 94 * @var int 95 95 */ 96 protected $max_time_shift;96 protected int $max_time_shift; 97 97 98 98 /** … … 142 142 143 143 /** 144 * Get table name.144 * Get a table name. 145 145 * 146 146 * @return string … … 151 151 152 152 /** 153 * Get marker field name.153 * Get a marker field name. 154 154 * 155 155 * @return string -
kagg-fast-post-generator/trunk/src/php/Generator/Page.php
r2741161 r3473969 18 18 * @var string 19 19 */ 20 protected $item_type = 'page';20 protected string $item_type = 'page'; 21 21 } -
kagg-fast-post-generator/trunk/src/php/Generator/Post.php
r3214212 r3473969 23 23 * @var string 24 24 */ 25 protected $item_type = 'post';25 protected string $item_type = 'post'; 26 26 27 27 /** … … 30 30 * @var int 31 31 */ 32 protected $paragraphs_in_post;32 protected int $paragraphs_in_post; 33 33 34 34 /** … … 37 37 * @var int 38 38 */ 39 protected $words_in_title;39 protected int $words_in_title; 40 40 41 41 /** … … 44 44 * @var Randomizer 45 45 */ 46 private $user_randomizer;46 private Randomizer $user_randomizer; 47 47 48 48 /** … … 51 51 * @var stdClass 52 52 */ 53 private $post_time_keeper;53 private stdClass $post_time_keeper; 54 54 55 55 /** -
kagg-fast-post-generator/trunk/src/php/Generator/User.php
r3214212 r3473969 23 23 * @var string 24 24 */ 25 protected $item_type = 'user';25 protected string $item_type = 'user'; 26 26 27 27 /** 28 * Item DB table name without prefix.28 * Item DB table name without a prefix. 29 29 * 30 30 * @var string 31 31 */ 32 protected $table = 'users';32 protected string $table = 'users'; 33 33 34 34 /** … … 37 37 * @var string 38 38 */ 39 protected $marker_field = 'user_url';39 protected string $marker_field = 'user_url'; 40 40 41 41 /** … … 44 44 * @var Randomizer 45 45 */ 46 private $username_randomizer;46 private Randomizer $username_randomizer; 47 47 48 48 /** … … 51 51 * @var stdClass 52 52 */ 53 private $user_time_keeper;53 private stdClass $user_time_keeper; 54 54 55 55 /** … … 58 58 * @var string 59 59 */ 60 private $password;60 private string $password; 61 61 62 62 /** … … 151 151 152 152 /** 153 * Add random time shift touser registered date.153 * Add a random time shift to the user registered date. 154 154 * 155 155 * @param object $user User. -
kagg-fast-post-generator/trunk/src/php/Lorem.php
r3214212 r3473969 26 26 * @var string[] 27 27 */ 28 protected static $word_list = [28 protected static array $word_list = [ 29 29 'alias', 30 30 'consequatur', … … 283 283 * @var string[] 284 284 */ 285 protected static $name_list = [285 protected static array $name_list = [ 286 286 'Aaron', 287 287 'Abel', … … 1214 1214 1215 1215 /** 1216 * Randomize number of elements.1216 * Randomize the number of elements. 1217 1217 * 1218 1218 * @param integer $nb_elements Number of elements. … … 1280 1280 private static function text_array_to_string( string $type, array $text ): string { 1281 1281 if ( 'word' === $type ) { 1282 // Capitalize afirst letter.1282 // Capitalize the first letter. 1283 1283 $text[0] = strtoupper( $text[0] ); 1284 1284 1285 // End the sentence with full stop.1285 // End the sentence with a full stop. 1286 1286 $text[ count( $text ) - 1 ] .= '.'; 1287 1287 } -
kagg-fast-post-generator/trunk/src/php/Randomizer.php
r3214212 r3473969 18 18 * @var array 19 19 */ 20 private $keys = [];20 private array $keys = []; 21 21 22 22 /** … … 25 25 * @var array 26 26 */ 27 private $elements;27 private array $elements; 28 28 29 29 /** … … 32 32 * @var int 33 33 */ 34 private $count;34 private int $count; 35 35 36 36 /** … … 39 39 * @var int 40 40 */ 41 private $index = 0;41 private int $index = 0; 42 42 43 43 /** -
kagg-fast-post-generator/trunk/src/php/Settings.php
r3214219 r3473969 84 84 * @var Generator 85 85 */ 86 private $generator;86 private Generator $generator; 87 87 88 88 /** … … 91 91 * @var array 92 92 */ 93 private $form_fields;93 private array $form_fields; 94 94 95 95 /** … … 98 98 * @var array 99 99 */ 100 private $settings;100 private array $settings; 101 101 102 102 /** … … 334 334 * @noinspection HtmlUnknownAttribute 335 335 */ 336 public function field_callback( array $arguments ): void { 336 public function field_callback( array $arguments ): void { // phpcs:ignore Generic.Metrics.CyclomaticComplexity.TooHigh 337 337 $value = $this->get_option( $arguments['field_id'] ); 338 338 … … 779 779 780 780 /** 781 * Initiali se Settings.781 * Initialize Settings. 782 782 * 783 783 * Store all settings in a single database entry … … 786 786 */ 787 787 private function init_settings(): void { 788 $ this->settings = get_option( self::OPTION_KEY, null );788 $settings = get_option( self::OPTION_KEY, null ); 789 789 790 790 // If there are no settings defined, use defaults. 791 if ( ! is_array( $this->settings ) ) { 792 $form_fields = $this->get_form_fields(); 793 $this->settings = array_merge( 794 array_fill_keys( array_keys( $form_fields ), '' ), 795 wp_list_pluck( $form_fields, 'default' ) 796 ); 797 } 791 if ( is_array( $settings ) ) { 792 $this->settings = $settings; 793 794 return; 795 } 796 797 $form_fields = $this->get_form_fields(); 798 $this->settings = array_merge( 799 array_fill_keys( array_keys( $form_fields ), '' ), 800 wp_list_pluck( $form_fields, 'default' ) 801 ); 798 802 } 799 803 -
kagg-fast-post-generator/trunk/vendor/autoload.php
r3291889 r3473969 20 20 require_once __DIR__ . '/composer/autoload_real.php'; 21 21 22 return ComposerAutoloaderInit 1afda73372e93cf71d2b40fd22ce3a15::getLoader();22 return ComposerAutoloaderInit5355545a8d8b5ece071ad74d0a09c7cf::getLoader(); -
kagg-fast-post-generator/trunk/vendor/composer/autoload_real.php
r3291889 r3473969 3 3 // autoload_real.php @generated by Composer 4 4 5 class ComposerAutoloaderInit 1afda73372e93cf71d2b40fd22ce3a155 class ComposerAutoloaderInit5355545a8d8b5ece071ad74d0a09c7cf 6 6 { 7 7 private static $loader; … … 23 23 } 24 24 25 spl_autoload_register(array('ComposerAutoloaderInit 1afda73372e93cf71d2b40fd22ce3a15', 'loadClassLoader'), true, true);25 spl_autoload_register(array('ComposerAutoloaderInit5355545a8d8b5ece071ad74d0a09c7cf', 'loadClassLoader'), true, true); 26 26 self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); 27 spl_autoload_unregister(array('ComposerAutoloaderInit 1afda73372e93cf71d2b40fd22ce3a15', 'loadClassLoader'));27 spl_autoload_unregister(array('ComposerAutoloaderInit5355545a8d8b5ece071ad74d0a09c7cf', 'loadClassLoader')); 28 28 29 29 require __DIR__ . '/autoload_static.php'; 30 call_user_func(\Composer\Autoload\ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a15::getInitializer($loader));30 call_user_func(\Composer\Autoload\ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf::getInitializer($loader)); 31 31 32 32 $loader->setClassMapAuthoritative(true); -
kagg-fast-post-generator/trunk/vendor/composer/autoload_static.php
r3291889 r3473969 5 5 namespace Composer\Autoload; 6 6 7 class ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a157 class ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf 8 8 { 9 9 public static $prefixLengthsPsr4 = array ( 10 'K' => 10 'K' => 11 11 array ( 12 12 'KAGG\\Generator\\' => 15, … … 15 15 16 16 public static $prefixDirsPsr4 = array ( 17 'KAGG\\Generator\\' => 17 'KAGG\\Generator\\' => 18 18 array ( 19 19 0 => __DIR__ . '/../..' . '/src/php', … … 40 40 { 41 41 return \Closure::bind(function () use ($loader) { 42 $loader->prefixLengthsPsr4 = ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a15::$prefixLengthsPsr4;43 $loader->prefixDirsPsr4 = ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a15::$prefixDirsPsr4;44 $loader->classMap = ComposerStaticInit 1afda73372e93cf71d2b40fd22ce3a15::$classMap;42 $loader->prefixLengthsPsr4 = ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf::$prefixLengthsPsr4; 43 $loader->prefixDirsPsr4 = ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf::$prefixDirsPsr4; 44 $loader->classMap = ComposerStaticInit5355545a8d8b5ece071ad74d0a09c7cf::$classMap; 45 45 46 46 }, null, ClassLoader::class); -
kagg-fast-post-generator/trunk/vendor/composer/installed.php
r3291889 r3473969 2 2 'root' => array( 3 3 'name' => 'kagg/generator', 4 'pretty_version' => '2. 1.0',5 'version' => '2. 1.0.0',6 'reference' => ' 9040afcab5f404e731e90b9d6414e71db2fea4a7',4 'pretty_version' => '2.2.0', 5 'version' => '2.2.0.0', 6 'reference' => 'db945036cc58b5ee2aae731388732be7ae24867e', 7 7 'type' => 'wordpress-plugin', 8 8 'install_path' => __DIR__ . '/../../', … … 12 12 'versions' => array( 13 13 'kagg/generator' => array( 14 'pretty_version' => '2. 1.0',15 'version' => '2. 1.0.0',16 'reference' => ' 9040afcab5f404e731e90b9d6414e71db2fea4a7',14 'pretty_version' => '2.2.0', 15 'version' => '2.2.0.0', 16 'reference' => 'db945036cc58b5ee2aae731388732be7ae24867e', 17 17 'type' => 'wordpress-plugin', 18 18 'install_path' => __DIR__ . '/../../',
Note: See TracChangeset
for help on using the changeset viewer.