In a clean unpack of owa_1.7.8_packaged.tar
with all server setup as requested I get the following error when calling https://server/install.php :
PHP Fatal error: Uncaught Error: Undefined constant "OWA_DTD_BIGINT" in /var/www/owa/modules/base/entities/configuration.php:37
Stack trace:\n#0 /var/www/owa/owa_lib.php(489): owa_configuration->__construct()
#1 /var/www/owa/owa_coreAPI.php(561): owa_lib::factory()
#2 /var/www/owa/owa_coreAPI.php(521): owa_coreAPI::moduleSpecificFactory()
#3 /var/www/owa/modules/base/classes/settings.php(72): owa_coreAPI::entityFactory()
#4 /var/www/owa/owa_lib.php(489): owa_settings->__construct()
#5 /var/www/owa/owa_coreAPI.php(487): owa_lib::factory()
#6 /var/www/owa/owa_coreAPI.php(142): owa_coreAPI::supportClassFactory()
#7 /var/www/owa/owa_base.php(78): owa_coreAPI::configSingleton()
#8 /var/www/owa/owa_caller.php(76): owa_base->__construct()
#9 /var/www/owa/owa.php(24): owa_caller->__construct()
#10 /var/www/owa/install.php(38): owa->__construct()
#11 {main}\n thrown in /var/www/owa/modules/base/entities/configuration.php on line 37
and it is true, in /var/www/owa/modules/base/entities/configuration.php it is just:
<?php
class owa_configuration extends owa_entity {
function __construct() {
$this->setTableName('configuration');
$this->properties['id'] = new owa_dbColumn;
$this->properties['id']->setDataType(OWA_DTD_BIGINT);
$this->properties['id']->setPrimaryKey();
$this->properties['settings'] = new owa_dbColumn;
$this->properties['settings']->setDataType(OWA_DTD_BLOB);
$this->setCachable();
}
}
?>
while OWA_DTD_BIGINT is defined in /var/www/owa/plugins/db/owa_db_mysql.php
Sorry, my understanding of php ends here. Is this a bug or a misconfiguration?
It turns out, this is a project bug. See the project issue page https://github.com/Open-Web-Analytics/Open-Web-Analytics/issues
php7 did only warn, but php8 fails:
The "installer.php" does not support php8! This is due to the incorrect use of constants in files that are incorrectly used (but not needed) during install.php. The constants only get configured during install and work fine in production. You need to either
I did 3. of this list on my local system. So, if you run into this, ask me or checkout my fork at https://github.com/ralfulrich/Open-Web-Analytics