You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The cause is that Kernel::System::DateTime is loaded for use DateTime 1.08, which is not wanted.
The wrong module is loaded because Kernel/System is in @INC. The reason for that is not obvious. It is probably some unfortunate use lib $FindBin::Bin statement.
DateTime defines neither package nor VERSION--version check failed at /opt/otobo/Kernel/System/DateTime.pm line 38.
# BEGIN failed--compilation aborted at /opt/otobo/Kernel/System/DateTime.pm line 38.
# Compilation failed in require at /opt/otobo/Kernel/System/DateTime.pm line 38.
# BEGIN failed--compilation aborted at /opt/otobo/Kernel/System/DateTime.pm line 38.
# Compilation failed in require at /opt/otobo/Kernel/Language.pm line 28.
# BEGIN failed--compilation aborted at /opt/otobo/Kernel/Language.pm line 28.
# Compilation failed in require at /opt/otobo/Kernel/Output/HTML/Layout.pm line 30.
# BEGIN failed--compilation aborted at /opt/otobo/Kernel/Output/HTML/Layout.pm line 30.
# Compilation failed in require at /opt/otobo/Kernel/System/ObjectManager.pm line 34.
# BEGIN failed--compilation aborted at /opt/otobo/Kernel/System/ObjectManager.pm line 34.
# Compilation failed in require at Kernel/System/UnitTest/RegisterDriver.pm line 42.
# BEGIN failed--compilation aborted at Kernel/System/UnitTest/RegisterDriver.pm line 42.
The text was updated successfully, but these errors were encountered:
Kernel::Config::Defaults is the culprit. This module sets @INC based on the location of the including script. A minimal example is:
otobo@5bc1685c346c:~$ cat Kernel/System/UnitTest/t.pl
use FindBin qw($Bin);
use lib "$Bin/..";
use DateTime 1.08;
otobo@5bc1685c346c:~$ perl -c Kernel/System/UnitTest/t.pl
DateTime defines neither package nor VERSION--version check failed at /opt/otobo/Kernel/System/UnitTest/../DateTime.pm line 38.
BEGIN failed--compilation aborted at /opt/otobo/Kernel/System/UnitTest/../DateTime.pm line 38.
Compilation failed in require at Kernel/System/UnitTest/t.pl line 4.
BEGIN failed--compilation aborted at Kernel/System/UnitTest/t.pl line 4.
otobo@5bc1685c346c:~$
Kernel::System is added to @INC, thusKernel::System::DateTimeis loaded, which has no version.
The fix is to remove the setup of @INC in Kernel/Config/Defaults.pm.
This was already fixed in #174, cc36ed8, but the patch was reverted because apparently other problems propped up. For OTOBO 10.1 this was fixed in #222.
The cause is that
Kernel::System::DateTime
is loaded foruse DateTime 1.08
, which is not wanted.The wrong module is loaded because Kernel/System is in
@INC
. The reason for that is not obvious. It is probably some unfortunateuse lib $FindBin::Bin
statement.The text was updated successfully, but these errors were encountered: