diff --git a/composer.json b/composer.json index 0a8a0eac02..42cad2e725 100644 --- a/composer.json +++ b/composer.json @@ -110,6 +110,9 @@ } ], "scripts": { - "setConfigParams": "php dev/set-config-params.php" + "setConfigParams": "php dev/set-config-params.php", + "post-install-cmd": [ + "php dev/vendor-cleanup.php" + ] } } diff --git a/dev/vendor-cleanup.php b/dev/vendor-cleanup.php new file mode 100644 index 0000000000..e1edc5623c --- /dev/null +++ b/dev/vendor-cleanup.php @@ -0,0 +1,61 @@ +. + * + * The interactive user interfaces in modified source and object code versions + * of this program must display Appropriate Legal Notices, as required under + * Section 5 of the GNU Affero General Public License version 3. + * + * In accordance with Section 7(b) of the GNU Affero General Public License version 3, + * these Appropriate Legal Notices must retain the display of the "EspoCRM" word. + ************************************************************************/ + +$list = [ + 'vendor/lasserafn/php-initial-avatar-generator/tests', + 'vendor/lasserafn/php-initial-avatar-generator/src/fonts/script', + 'vendor/lasserafn/php-initial-avatar-generator/src/fonts/FontAwesome5Brands-Regular-400.otf', + 'vendor/lasserafn/php-initial-avatar-generator/src/fonts/FontAwesome5Free-Regular-400.otf', + 'vendor/lasserafn/php-initial-avatar-generator/src/fonts/FontAwesome5Free-Solid-900.otf', +]; + +foreach ($list as $path) { + if (is_dir($path)) { + $files = new RecursiveIteratorIterator( + new RecursiveDirectoryIterator($path, FilesystemIterator::SKIP_DOTS), + RecursiveIteratorIterator::CHILD_FIRST + ); + + foreach ($files as $fileinfo) { + $fileinfo->isDir() ? + rmdir($fileinfo->getRealPath()) : + unlink($fileinfo->getRealPath()); + } + + rmdir($path); + + continue; + } + + if (!file_exists($path)) { + continue; + } + + unlink($path); +} diff --git a/js/diff.js b/js/diff.js index 7e0e902145..62e3cd703e 100644 --- a/js/diff.js +++ b/js/diff.js @@ -866,6 +866,8 @@ class Diff const vendorPath = tempFolderPath + '/new/vendor/'; + cp.execSync(`cp -r ${currentPath}/dev ${tempFolderPath}/new/dev`); + fs.writeFileSync(tempFolderPath + '/new/composer.lock', composerLockNewContents); fs.writeFileSync(tempFolderPath + '/new/composer.json', composerNewContents);