Bug #5223
closed
Possible CB 1.x to CB 2.x upgrade fail
Added by krileon over 9 years ago.
Updated over 2 years ago.
Description
I was not able to confirm this issue, but seams in some cases it's possible for it fail due to the following.
Warning: Cannot redeclare class moscomprofiler in libraries\CBLib\CB\Legacy\LegacyLoader.php on line 41
Warning: Cannot redeclare class moscomprofilerFields in libraries\CBLib\CB\Legacy\LegacyLoader.php on line 42
Warning: Cannot redeclare class moscomprofilerFieldValues in libraries\CBLib\CB\Legacy\LegacyLoader.php on line 43
Warning: Cannot redeclare class moscomprofilerLists in libraries\CBLib\CB\Legacy\LegacyLoader.php on line 44
Warning: Cannot redeclare class moscomprofilerMember in libraries\CBLib\CB\Legacy\LegacyLoader.php on line 45
Warning: Cannot redeclare class moscomprofilerPlugin in libraries\CBLib\CB\Legacy\LegacyLoader.php on line 46
Warning: Cannot redeclare class moscomprofilerTabs in libraries\CBLib\CB\Legacy\LegacyLoader.php on line 47
Warning: Cannot redeclare class moscomprofilerUser in libraries\CBLib\CB\Legacy\LegacyLoader.php on line 48
Warning: Cannot redeclare class moscomprofilerUserReport in libraries\CBLib\CB\Legacy\LegacyLoader.php on line 49
Fatal error: Call to a member function translateToCurrentLanguage() on null in libraries\CBLib\CBLib\Language\CBTxt.php on line 135
https://www.joomlapolis.com/forum/153-professional-member-support/229163-207-update-fails?limitstart=0
This is due to K2 loading in CB API for its CB integration in its Joomla system plugin. It's loading too early. We need to figure out a way to avoid these conflicts so they won't break CBs installer.
- Target version changed from CB 2.0.8 to CB 2.0.9
K2 also breaks our Application::Input() usage somehow, which results in some values being missing (specifically view) and breaks CB Conditional as it's unable to determine its location based off view anymore. We may need to review how they're loading CB and see if we can workaround the issue.
- Target version changed from CB 2.0.9 to CB 2.0.10
CBSubs Joomla system plugin also causes this as the CB API is loaded before install causing CBLib loading of legacy classes to conflict.
- Priority changed from Normal to Urgent
krileon wrote:
K2 also breaks our Application::Input() usage somehow, which results in some values being missing (specifically view) and breaks CB Conditional as it's unable to determine its location based off view anymore. We may need to review how they're loading CB and see if we can workaround the issue.
The issue with Application::Input() , reported separately in #5340 is fixed.
CBSubs 4.0's too early loading is fixed too. Of course, it doesn't fix cases where CBSubs 1.x-3.x are already installed.
The base issue remains.
It would be easy to avoid the fatal error in CBTxt. But the big question is what else will half fail, since it's all the old CB 1.9.1 library classes which are already loaded.
So not sure if we should remove that fatal error, and "wait" for the next one, or even have no fatal error, but then a wrongly updated installation ?
To avoid the fatal error, it would be just to add the text above on line 131 (and below on line 172):
if ( $languageKeys == '' ) {
changed to:
if ( ( $languageKeys == '' ) || ! static::$self ) {
However I'm not convinced that we should do that, as we really want that fatal error to be possible.
- Assignee changed from beat to krileon
- Assignee changed from krileon to beat
As we fixed the 2 major conflicts (input and language issues) I think we should just leave the fatal error and have this step be a part of our upgrade/migration install instructions. Basically they'll need to turn off CB integrations like K2, Kunena, and CBSubs system plugin to avoid this. I don't think upgrade would go well with it trying to use CB 1.x API for the upgrade process.
- Target version changed from CB 2.0.10 to CB 2.0.11
- Target version changed from CB 2.0.11 to CB 2.0.12
- Target version changed from CB 2.0.12 to CB 2.0.13
- Target version changed from CB 2.0.13 to CB 2.0.14
- Target version changed from CB 2.0.14 to CB 2.0.15
- Target version changed from CB 2.0.15 to CB 2.1
- Target version changed from CB 2.1 to CB 2.2
- Target version changed from CB 2.2 to CB 2.8
- Status changed from Feedback to Rejected
- Target version deleted (
CB 2.8)
- % Done changed from 0 to 100
Non-issue at this point. CB 1.x doesn't exist anymore. There isn't a way to reliable deal with this anyway since Joomla 2.5 and back are no longer supported.
Also available in: Atom
PDF