From 565a5c74273af67655521c4ba4ace0054bdc9f67 Mon Sep 17 00:00:00 2001 From: cytopia Date: Sun, 18 Dec 2022 14:34:12 +0100 Subject: [PATCH 1/8] Updated MySQL versions --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index bbce5e9ba..27dbcab2f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -329,7 +329,7 @@ services: # MySQL Database # ------------------------------------------------------------ mysql: - image: devilbox/mysql:${MYSQL_SERVER}-0.19 + image: devilbox/mysql:${MYSQL_SERVER}-0.21 hostname: mysql environment: From 82276050367da2c721e8c2a48a99a641dec7458b Mon Sep 17 00:00:00 2001 From: cytopia Date: Sun, 18 Dec 2022 14:35:51 +0100 Subject: [PATCH 2/8] Refs #940, #936, #934, #930 Update PHP versions --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 27dbcab2f..9deedd011 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -99,7 +99,7 @@ services: # PHP # ------------------------------------------------------------ php: - image: devilbox/php-fpm:${PHP_SERVER}-work-0.144 + image: devilbox/php-fpm:${PHP_SERVER}-work-0.147 hostname: php ## From 2e33d991b7fb9e68f5f2efea18822e2d562dec9e Mon Sep 17 00:00:00 2001 From: cytopia Date: Sun, 18 Dec 2022 14:37:05 +0100 Subject: [PATCH 3/8] Fixed PostgreSQL database overview in intranet --- .devilbox/www/include/lib/container/Pgsql.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.devilbox/www/include/lib/container/Pgsql.php b/.devilbox/www/include/lib/container/Pgsql.php index 713aab448..0b5f1cde5 100644 --- a/.devilbox/www/include/lib/container/Pgsql.php +++ b/.devilbox/www/include/lib/container/Pgsql.php @@ -71,7 +71,8 @@ public function __construct($hostname, $data = array()) public function __destruct() { if ($this->_link) { - pg_close($this->_link); + // DO NOT CLOSE. It is kind of shared. + //pg_close($this->_link); } } @@ -148,7 +149,7 @@ public function getDatabases() // Get schemas for each database foreach ($databases as $name => &$database) { $PSQL = new Pgsql( - $this->getIpAddress(), + $GLOBALS['PGSQL_HOST_NAME'], array( 'user' => loadClass('Helper')->getEnv('PGSQL_ROOT_USER'), 'pass' => loadClass('Helper')->getEnv('PGSQL_ROOT_PASSWORD'), @@ -179,7 +180,7 @@ public function getDatabases() public function getSchemaSize($database, $schema) { $PSQL = new Pgsql( - $this->getIpAddress(), + $GLOBALS['PGSQL_HOST_NAME'], array( 'user' => loadClass('Helper')->getEnv('PGSQL_ROOT_USER'), 'pass' => loadClass('Helper')->getEnv('PGSQL_ROOT_PASSWORD'), @@ -217,7 +218,7 @@ public function getSchemaSize($database, $schema) public function getTableCount($database, $schema) { $PSQL = new Pgsql( - $this->getIpAddress(), + $GLOBALS['PGSQL_HOST_NAME'], array( 'user' => loadClass('Helper')->getEnv('PGSQL_ROOT_USER'), 'pass' => loadClass('Helper')->getEnv('PGSQL_ROOT_PASSWORD'), From 48e71338253c5965eb5f2cb9e7ccea5c5fc315d4 Mon Sep 17 00:00:00 2001 From: cytopia Date: Sun, 18 Dec 2022 14:38:19 +0100 Subject: [PATCH 4/8] Intranet: Improved installed tools overview --- .devilbox/www/htdocs/_ajax_callback.php | 84 ++++++++-- .devilbox/www/htdocs/index.php | 161 +++++++++++++------- .devilbox/www/include/lib/container/Php.php | 95 ++++++++++-- 3 files changed, 251 insertions(+), 89 deletions(-) diff --git a/.devilbox/www/htdocs/_ajax_callback.php b/.devilbox/www/htdocs/_ajax_callback.php index d6ae14d00..c7f9ef3b0 100644 --- a/.devilbox/www/htdocs/_ajax_callback.php +++ b/.devilbox/www/htdocs/_ajax_callback.php @@ -36,31 +36,32 @@ // else if (isset($_GET['software'])) { $no = 'not installed'; + $no_mod = 'PHP module not loaded'; $software = array(); - if ($_GET['software'] == 'composer') { + if ($_GET['software'] == 'angular_cli') { echo json_encode(array( - $_GET['software'] => (($version = loadClass('Php')->getComposerVersion()) !== false) ? $version : $no + $_GET['software'] => (($version = loadClass('Php')->getAngularCliVersion()) !== false) ? $version : $no )); } - else if ($_GET['software'] == 'drupalc') { + else if ($_GET['software'] == 'asgardcms_installer') { echo json_encode(array( - $_GET['software'] => (($version = loadClass('Php')->getDrupalConsoleVersion()) !== false) ? $version : $no + $_GET['software'] => (($version = loadClass('Php')->getAsgardCmsInstallerVersion()) !== false) ? $version : $no )); } - else if ($_GET['software'] == 'drush7') { + else if ($_GET['software'] == 'codeception') { echo json_encode(array( - $_GET['software'] => (($version = loadClass('Php')->getDrushVersion(7)) !== false) ? $version : $no + $_GET['software'] => (($version = loadClass('Php')->getCodeceptionVersion()) !== false) ? $version : $no )); } - else if ($_GET['software'] == 'drush8') { + else if ($_GET['software'] == 'composer') { echo json_encode(array( - $_GET['software'] => (($version = loadClass('Php')->getDrushVersion(8)) !== false) ? $version : $no + $_GET['software'] => (($version = loadClass('Php')->getComposerVersion()) !== false) ? $version : $no )); } - else if ($_GET['software'] == 'drush9') { + else if ($_GET['software'] == 'deployer') { echo json_encode(array( - $_GET['software'] => (($version = loadClass('Php')->getDrushVersion(9)) !== false) ? $version : $no + $_GET['software'] => (($version = loadClass('Php')->getDeployerVersion()) !== false) ? $version : $no )); } else if ($_GET['software'] == 'git') { @@ -68,9 +69,24 @@ $_GET['software'] => (($version = loadClass('Php')->getGitVersion()) !== false) ? $version : $no )); } - else if ($_GET['software'] == 'laravel') { + else if ($_GET['software'] == 'grunt_cli') { + echo json_encode(array( + $_GET['software'] => (($version = loadClass('Php')->getGruntCliVersion()) !== false) ? $version : $no + )); + } + else if ($_GET['software'] == 'gulp') { + echo json_encode(array( + $_GET['software'] => (($version = loadClass('Php')->getGulpVersion()) !== false) ? $version : $no + )); + } + else if ($_GET['software'] == 'laravel_installer') { + echo json_encode(array( + $_GET['software'] => (($version = loadClass('Php')->getLaravelInstallerVersion()) !== false) ? $version : $no + )); + } + else if ($_GET['software'] == 'laravel_lumen') { echo json_encode(array( - $_GET['software'] => (($version = loadClass('Php')->getLaravelVersion()) !== false) ? $version : $no + $_GET['software'] => (($version = loadClass('Php')->getLaravelLumenVersion()) !== false) ? $version : $no )); } else if ($_GET['software'] == 'mds') { @@ -78,6 +94,11 @@ $_GET['software'] => (($version = loadClass('Php')->getMdsVersion()) !== false) ? $version : $no )); } + else if ($_GET['software'] == 'mupdf_tools') { + echo json_encode(array( + $_GET['software'] => (($version = loadClass('Php')->getMupdfToolsVersion()) !== false) ? $version : $no + )); + } else if ($_GET['software'] == 'node') { echo json_encode(array( $_GET['software'] => (($version = loadClass('Php')->getNodeVersion()) !== false) ? $version : $no @@ -88,20 +109,51 @@ $_GET['software'] => (($version = loadClass('Php')->getNpmVersion()) !== false) ? $version : $no )); } - else if ($_GET['software'] == 'phalcon') { + else if ($_GET['software'] == 'phalcon_devtools') { + if (!extension_loaded('phalcon')) { + echo json_encode(array( + $_GET['software'] => $no_mod + )); + } else { + echo json_encode(array( + $_GET['software'] => (($version = loadClass('Php')->getPhalconDevtoolsVersion()) !== false) ? $version : $no + )); + } + } + else if ($_GET['software'] == 'phpunit') { + echo json_encode(array( + $_GET['software'] => (($version = loadClass('Php')->getPhpunitVersion()) !== false) ? $version : $no + )); + } + else if ($_GET['software'] == 'stylelint') { + echo json_encode(array( + $_GET['software'] => (($version = loadClass('Php')->getStylelintVersion()) !== false) ? $version : $no + )); + } + else if ($_GET['software'] == 'symfony_cli') { echo json_encode(array( - $_GET['software'] => (($version = loadClass('Php')->getPhalconVersion()) !== false) ? $version : $no + $_GET['software'] => (($version = loadClass('Php')->getSymfonyCliVersion()) !== false) ? $version : $no )); } - else if ($_GET['software'] == 'symfony') { + else if ($_GET['software'] == 'vue_cli') { echo json_encode(array( - $_GET['software'] => (($version = loadClass('Php')->getSymfonyVersion()) !== false) ? $version : $no + $_GET['software'] => (($version = loadClass('Php')->getVueCliVersion()) !== false) ? $version : $no + )); + } + else if ($_GET['software'] == 'webpack_cli') { + echo json_encode(array( + $_GET['software'] => (($version = loadClass('Php')->getWebpackCliVersion()) !== false) ? $version : $no )); } else if ($_GET['software'] == 'wpcli') { echo json_encode(array( $_GET['software'] => (($version = loadClass('Php')->getWpcliVersion()) !== false) ? $version : $no )); + } + else if ($_GET['software'] == 'yarn') { + echo json_encode(array( + $_GET['software'] => (($version = loadClass('Php')->getYarnVersion()) !== false) ? $version : $no + )); } else { echo json_encode(array($_GET['software'] => 'unknown software')); } diff --git a/.devilbox/www/htdocs/index.php b/.devilbox/www/htdocs/index.php index 6c1854898..ff0f30c18 100644 --- a/.devilbox/www/htdocs/index.php +++ b/.devilbox/www/htdocs/index.php @@ -334,106 +334,104 @@
-
PHP Container Setup
+
Available CLI Tools
+

You can also enter the php container via ./shell.sh and use the following cli tools:

-

You can also enter the php container and work from inside. The following is available inside the container:

- + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - -
SettingsTools
uidgetUid(); ?>Angular Cli
gidgetGid(); ?>AsgardCMS Installer
vHost docroot dirgetEnv('HTTPD_DOCROOT_DIR'); ?>Codeception
vHost config dirgetEnv('HTTPD_TEMPLATE_DIR'); ?>Composer
vHost TLD*.getTldSuffix(); ?>Deployer
DNSEnabledOfflineGit
PostfixgetEnv('ENABLE_MAIL') ? 'Enabled' : 'No Disabled';?>Grunt Cli
- - - - + + - - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + + + + +
ToolsGulp
composerLaravel Installer
drupal-consoleLaravel Lumen
drush7Mupdf Tools
drush8mysqldump-secure
drush9Node
gitNpm
Laravel installerPhalcon Devtools
mysqldump-securePhpunit
nodeStylelint
npmSymfony Cli
Phalcon devtoolsVue Cli
Symfony installerWebpack Cli
Wordpress cliWordpress Cli
Yarn
@@ -445,7 +443,45 @@
PHP Container Status
-

The PHP Docker can connect to the following services via the specified hostnames and IP addresses.

+

You have made the following base configuration to the Devilbox:

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Settings
uidgetUid(); ?>
gidgetGid(); ?>
vHost docroot dirgetEnv('HTTPD_DOCROOT_DIR'); ?>
vHost config dirgetEnv('HTTPD_TEMPLATE_DIR'); ?>
vHost TLD*.getTldSuffix(); ?>
DNSEnabledOffline
PostfixgetEnv('ENABLE_MAIL') ? 'Enabled' : 'No Disabled';?>
+

The PHP container can connect to the following services via the specified hostnames and IP addresses.

@@ -913,19 +949,28 @@ function updateVersions(app) { xhttp.open('GET', '_ajax_callback.php?software='+app, true); xhttp.send(); } + updateVersions('angular_cli'); + updateVersions('asgardcms_installer'); + updateVersions('codeception'); updateVersions('composer'); - updateVersions('drupalc'); - updateVersions('drush7'); - updateVersions('drush8'); - updateVersions('drush9'); + updateVersions('deployer'); updateVersions('git'); - updateVersions('laravel'); + updateVersions('grunt_cli'); + updateVersions('gulp'); + updateVersions('laravel_installer'); + updateVersions('laravel_lumen'); updateVersions('mds'); + updateVersions('mupdf_tools'); updateVersions('node'); updateVersions('npm'); - updateVersions('phalcon'); - updateVersions('symfony'); + updateVersions('phalcon_devtools'); + updateVersions('phpunit'); + updateVersions('stylelint'); + updateVersions('symfony_cli'); + updateVersions('vue_cli'); + updateVersions('webpack_cli'); updateVersions('wpcli'); + updateVersions('yarn'); })(); diff --git a/.devilbox/www/include/lib/container/Php.php b/.devilbox/www/include/lib/container/Php.php index 44d357d5b..ce78160c5 100644 --- a/.devilbox/www/include/lib/container/Php.php +++ b/.devilbox/www/include/lib/container/Php.php @@ -35,9 +35,19 @@ public function getGid() $uid = loadClass('Helper')->egrep('/[0-9]+/', $uid); return $uid; } - public function getGitVersion() + public function getAngularCliVersion() { - $output = loadClass('Helper')->exec('git --version 2>/dev/null', $output); + $output = loadClass('Helper')->exec('ng version 2>/dev/null | grep -i "^Angular CLI" | head -1', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getAsgardCmsInstallerVersion() + { + $output = loadClass('Helper')->exec('asgardcms --version --no-ansi 2>/dev/null', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getCodeceptionVersion() + { + $output = loadClass('Helper')->exec('codecept --version --no-ansi 2>/dev/null | grep -i ^Codecept', $output); return loadClass('Helper')->egrep('/[0-9.]+/', $output); } public function getComposerVersion() @@ -45,15 +55,45 @@ public function getComposerVersion() $output = loadClass('Helper')->exec('composer --version 2>/dev/null', $output); return loadClass('Helper')->egrep('/[0-9.]+/', $output); } - public function getDrushVersion($version) + public function getDeployerVersion() + { + $output = loadClass('Helper')->exec('dep --version --no-ansi 2>/dev/null | grep -i ^Deploy', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getGitVersion() + { + $output = loadClass('Helper')->exec('git --version 2>/dev/null', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getGruntCliVersion() + { + $output = loadClass('Helper')->exec('grunt --version 2>/dev/null', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getGulpVersion() + { + $output = loadClass('Helper')->exec('gulp --version --no-color 2>/dev/null | head -1', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getLaravelInstallerVersion() { - $output = loadClass('Helper')->exec('drush'.$version.' --version 2>/dev/null', $output); + $output = loadClass('Helper')->exec('laravel --version --no-ansi 2>/dev/null', $output); return loadClass('Helper')->egrep('/[0-9.]+/', $output); } - public function getDrupalConsoleVersion() + public function getLaravelLumenVersion() { - $output = loadClass('Helper')->exec('drupal --version 2>/dev/null | sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[mGK]//g"', $output); - return loadClass('Helper')->egrep('/[0-9.]+[-rc0-9.]*/', $output); + $output = loadClass('Helper')->exec('lumen --version --no-ansi 2>/dev/null', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getMdsVersion() + { + $output = loadClass('Helper')->exec('mysqldump-secure --version 2>/dev/null', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getMupdfToolsVersion() + { + $output = loadClass('Helper')->exec('mutool -v 2>&1', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); } public function getNodeVersion() { @@ -65,31 +105,56 @@ public function getNpmVersion() $output = loadClass('Helper')->exec('npm --version 2>/dev/null', $output); return loadClass('Helper')->egrep('/[0-9.]+/', $output); } - public function getLaravelVersion() + public function getPhalconDevtoolsVersion() { - $output = loadClass('Helper')->exec('laravel --version 2>/dev/null', $output); + $output = loadClass('Helper')->exec('phalcon --version 2>/dev/null', $output); return loadClass('Helper')->egrep('/[0-9.]+/', $output); } - public function getMdsVersion() + public function getPhpunitVersion() { - $output = loadClass('Helper')->exec('mysqldump-secure --version 2>/dev/null', $output); + $output = loadClass('Helper')->exec('phpunit --version 2>/dev/null', $output); return loadClass('Helper')->egrep('/[0-9.]+/', $output); } - public function getPhalconVersion() + public function getStylelintVersion() { - $output = loadClass('Helper')->exec('phalcon --version 2>/dev/null', $output); + $output = loadClass('Helper')->exec('stylelint --version 2>/dev/null', $output); return loadClass('Helper')->egrep('/[0-9.]+/', $output); } - public function getSymfonyVersion() + public function getSymfonyCliVersion() { $output = loadClass('Helper')->exec('symfony -V 2>/dev/null | tr -d "[:cntrl:]" | sed "s/\[[0-9]*m//g"', $output); return loadClass('Helper')->egrep('/[0-9.]+/', $output); } + public function getVueCliVersion() + { + $output = loadClass('Helper')->exec('vue --version 2>/dev/null', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getWebpackCliVersion() + { + $output = loadClass('Helper')->exec('webpack-cli --version --no-stats --no-target --no-watch --no-color 2>/dev/null | grep webpack-cli', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } public function getWpcliVersion() { - $output = loadClass('Helper')->exec('wp --version 2>/dev/null', $output); + $output = loadClass('Helper')->exec('wp --version 2>/dev/null | grep -i ^WP', $output); + return loadClass('Helper')->egrep('/[0-9.]+/', $output); + } + public function getYarnVersion() + { + $output = loadClass('Helper')->exec('yarn --version 2>/dev/null', $output); return loadClass('Helper')->egrep('/[0-9.]+/', $output); } + //public function getDrushVersion($version) + //{ + // $output = loadClass('Helper')->exec('drush'.$version.' --version 2>/dev/null', $output); + // return loadClass('Helper')->egrep('/[0-9.]+/', $output); + //} + //public function getDrupalConsoleVersion() + //{ + // $output = loadClass('Helper')->exec('drupal --version 2>/dev/null | sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[mGK]//g"', $output); + // return loadClass('Helper')->egrep('/[0-9.]+[-rc0-9.]*/', $output); + //} From a5f28e80c31853b55265da2ef1683a1c2783d041 Mon Sep 17 00:00:00 2001 From: cytopia Date: Sun, 18 Dec 2022 14:45:40 +0100 Subject: [PATCH 5/8] Switching to Discord --- .github/ISSUE_TEMPLATE/config.yml | 12 +++++++++--- README.md | 21 ++++++++++----------- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index c45152f66..d89084a8b 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,12 +1,18 @@ --- blank_issues_enabled: false contact_links: + - name: Devilbox Discord Chat + url: https://discord.gg/2wP3V6kBj4 + about: Please notify or discuss about any other requests here. + + - name: Devilbox Discourse Forum + url: https://devilbox.discourse.group/ + about: Please ask and answer general questions here. + - name: Devilbox Community Support url: https://devilbox.discourse.group/ about: Please ask and answer questions here. - - name: Devilbox Gitter Chat - url: https://gitter.im/devilbox/Lobby - about: Please ask and answer questions here. + - name: Devilbox documentation url: https://devilbox.readthedocs.io/ about: Find the Devilbox documentation here. diff --git a/README.md b/README.md index 3d360d943..7607a45f3 100644 --- a/README.md +++ b/README.md @@ -15,10 +15,9 @@ **[License](#license)** ![Devilbox](docs/_includes/figures/devilbox/devilbox-intranet-dash-all.png) - [![Release](https://img.shields.io/github/release/cytopia/devilbox.svg?colorB=orange)](https://github.com/cytopia/devilbox/releases) -[![Gitter](https://badges.gitter.im/devilbox/Lobby.svg)](https://gitter.im/devilbox/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) -[![Discourse](https://img.shields.io/discourse/https/devilbox.discourse.group/status.svg?colorB=%234CB697)](https://devilbox.discourse.group) +[![Discord](https://img.shields.io/discord/1051541389256704091?color=8c9eff&label=Discord&logo=discord)](https://discord.gg/2wP3V6kBj4) +[![Discourse](https://img.shields.io/discourse/https/devilbox.discourse.group/status.svg?colorB=%234CB697&label=Discourse&logo=discourse)](https://devilbox.discourse.group) [![type](https://img.shields.io/badge/type-Docker-blue.svg)](https://www.docker.com/) [![License](https://img.shields.io/badge/license-MIT-%233DA639.svg)](https://opensource.org/licenses/MIT) @@ -115,15 +114,15 @@ works out of the box up to a shared development infrastructure for a corporate n In order to be aware about all that features, ensure to have skimmed over the **[documentation](https://devilbox.readthedocs.io)**, so you know what can be done and how that might simplify your every-day life. If you ever run into any unforseen issues, feel free to join the -**[chat](https://gitter.im/devilbox/Lobby)** or visit the **[forums](https://devilbox.discourse.group)** and get community support quickly. +**[Discord chat](https://discord.gg/2wP3V6kBj4)** or visit the **[forums](https://devilbox.discourse.group)** and get community support quickly.
- - - - + + + + @@ -134,8 +133,8 @@ simplify your every-day life. If you ever run into any unforseen issues, feel fr - + From 8b70a01a16f7acada7520a76ae5a1067ef83b4f7 Mon Sep 17 00:00:00 2001 From: cytopia Date: Sun, 18 Dec 2022 15:05:54 +0100 Subject: [PATCH 6/8] Update CHANGELOG and version --- .devilbox/www/config.php | 4 ++-- CHANGELOG.md | 45 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+), 2 deletions(-) diff --git a/.devilbox/www/config.php b/.devilbox/www/config.php index 77c6c0223..38f67ebbf 100644 --- a/.devilbox/www/config.php +++ b/.devilbox/www/config.php @@ -13,8 +13,8 @@ putenv('RES_OPTIONS=retrans:1 retry:1 timeout:1 attempts:1'); -$DEVILBOX_VERSION = 'v2.3.0'; -$DEVILBOX_DATE = '2022-12-04'; +$DEVILBOX_VERSION = 'v2.4.0'; +$DEVILBOX_DATE = '2022-12-18'; $DEVILBOX_API_PAGE = 'devilbox-api/status.json'; // diff --git a/CHANGELOG.md b/CHANGELOG.md index 00b9866a3..744515af3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,51 @@ Make sure to have a look at [UPDATING.md](https://github.com/cytopia/devilbox/bl ## Unreleased +## Release v2.4.0 (2022-12-18) + +This release might be a bit bumpy due to a massive amount of changes in upstream projects. If you encounter issues, please do raise tickets. + +### General + +#### New PHP-FPM images +This release uses a new set of PHP-FPM images. They have been heavily rewritten and modularized in order to make PHP extension and PHP tool generation more easy. See the following release notes for details: + +> 499 changed files with 29,281 additions and 13,977 deletions. + +* https://github.com/devilbox/docker-php-fpm/releases/tag/0.145 +* https://github.com/devilbox/docker-php-fpm/releases/tag/0.146 +* https://github.com/devilbox/docker-php-fpm/releases/tag/0.147 + +#### How to add modules/tools? +* **[How to build PHP modules](https://github.com/devilbox/docker-php-fpm/blob/master/php_modules/README.md)** +* **[How to install tools in PHP images](https://github.com/devilbox/docker-php-fpm/blob/master/php_tools/README.md)** + +#### Available Tools +You can now also find a detailed overview about what tools are installed in what PHP version image. See here: https://github.com/devilbox/docker-php-fpm/blob/master/doc/available-tools.md + +#### Gitter -> Discord +Additionally I am moving away from Gitter to **Discord**. See reason and announcement here: https://devilbox.discourse.group/t/migrating-from-gitter-to-discord/716/2 + +**🎮 Discord:** https://discord.gg/2wP3V6kBj4 + +### Fixed +- Intranet: Fixed PostgreSQL database overview +- Fixed PATH for all pre-installed composer and node tools + +### Updated +- Updated PHP versions (https://github.com/cytopia/devilbox/issues/940) +- Updated MySQL versions +- Intranet: Improved installed tools overview (index.php) + +### Added +- Added tool `mhsendmail` for arm64 images +- Added tool `wkhtmltopdf` for arm64 images (https://github.com/cytopia/devilbox/issues/936) +- Added tool `taskfile` (https://github.com/cytopia/devilbox/issues/934) + +### Removed +- Removed tool `drush` (detail: https://github.com/cytopia/devilbox/issues/930#issuecomment-1344764908) + + ## Release v2.3.0 (2022-12-04) ### Fixed From f2088d63a79dfda38661260a2a98ad4739c9c584 Mon Sep 17 00:00:00 2001 From: cytopia Date: Sun, 18 Dec 2022 15:49:28 +0100 Subject: [PATCH 7/8] Disable Drupal test due to removed drush --- .tests/tests/framework-drupal.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.tests/tests/framework-drupal.sh b/.tests/tests/framework-drupal.sh index 7d8648ef8..0eeb4b1db 100755 --- a/.tests/tests/framework-drupal.sh +++ b/.tests/tests/framework-drupal.sh @@ -13,7 +13,7 @@ DVLBOX_PATH="$( cd "${SCRIPT_PATH}/../.." && pwd -P )" . "${SCRIPT_PATH}/../scripts/.lib.sh" RETRIES=10 -DISABLED_VERSIONS=("5.3" "5.4" "5.5" "5.6" "8.0" "8.1" "8.2") +DISABLED_VERSIONS=("5.3" "5.4" "5.5" "5.6" "7.0" "7.1" "7.2" "7.3" "7.4" "8.0" "8.1" "8.2") DISABLED_MYSQL_VERSIONS=("mysql-8.0" "percona-8.0") From 71064a72964dd1b989e37211afd2c5769daca08e Mon Sep 17 00:00:00 2001 From: cytopia Date: Sun, 18 Dec 2022 15:50:47 +0100 Subject: [PATCH 8/8] Update CHANGELOG --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 744515af3..4c4e56b37 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -37,10 +37,11 @@ Additionally I am moving away from Gitter to **Discord**. See reason and announc - Intranet: Fixed PostgreSQL database overview - Fixed PATH for all pre-installed composer and node tools -### Updated +### Changed - Updated PHP versions (https://github.com/cytopia/devilbox/issues/940) - Updated MySQL versions - Intranet: Improved installed tools overview (index.php) +- Intranet: Delayed message loading (https://github.com/cytopia/devilbox/pull/904) ### Added - Added tool `mhsendmail` for arm64 images

Documentation

Chat

Forum

Flames

📘 Docs

🎮 Discord

🗪 Forum

🔥 Flames

- - + + @@ -151,7 +150,7 @@ simplify your every-day life. If you ever run into any unforseen issues, feel fr
devilbox.readthedocs.iogitter.im/devilboxdiscord/devilbox devilbox.discourse.group github.com/devilbox/flames