stuck in between floors in the elevator at 'elgg towers'

;)
i am still using elgg 1.8 here in production, since there are still key plugins that have not been upgraded to 1.9+.

i already upgraded my own plugins (mostly) to 1.9 level (basically - without optimising js for AMD) and now am looking at 1.10 and wondering where to go with this. do i skip 1.9 altogether? i can only see 2 plugins that are listed for elgg 1.10 presently.. is that a problem?

can i just use 1.9 plugins in elgg 1.10 anyway without any problem? the claim was made by core devs that 1.8 plugins would be ok in 1.9, but that was not the case at all... so i am wondering if anyone has any concrete info and tips from experience here?

  • I'm about to start investigating upgrading a production site with custom plugins from 1.8 to 1.10 so I'll let you know what I find.  The jump from 1.9 - 1.10 should be easy.  The jump from 1.8 - 1.9 should be easy with the exception of a few key areas (comments/notifications).

  • I have just upgraded a production site from 1.7 to 1.10. Everything went smooth, but I had to toss the theme and a few plugins, but most plugins had 1.9 counterparts which seem to work fine.

  • It's simply impossible to generally say that there are no problems or what kind of problems might occur. It depends on the plugins used. If someone says "I had no problem at all", it does not mean you won't have any problems if you use different 3rd party plugins.

    The changes from 1.9 to 1.10 were surely not as heavy as the changes from 1.8 to 1.9 (not to speak of 1.7 to 1.8). If a plugin was correctly updated to work on Elgg 1.9 (without any deprecation issues remaining), it is likely to work on 1.10, too. But it's "likely" and not "surely".

    Regarding my plugins I know that some will show at least the deprecation warning for the "output/confirmlink" view on 1.10 but they will still fully work regardiless of this deprecation issue alone. I simply had no time yet to even start testing my plugins on Elgg 1.10. And quite frankly speaking: I don't know if I will even have the time before 1.11 is out (where I expect that changes in my plugins will become necessary). If any other issues occur with my plugins on Elgg 1.10 that result in them not working anymore for real, I would surely appreciate any feedback.

  • i think the rapid change in minor version numbers will inevitably mean that some plugins are not updated for every minor version - as has been the case in the past.

    is there a page somewhere that clearly explains what is added/removed in each version/release? so that estimations can be made for coding work required for upgrading plugins? i have never seen that.

  • I'll just say that it's worth to run your problematic plugin via my code analyzer that now supports 1.10 (was missing namespaces support) and allows to find most of the deprecated stuff as well as usages of private or undocumented (if we manage to slip it somehow) functions in specified code. That should indicate how well particular plugin looks like.

    I was wondering about trying to run it automatically on all plugins on community, but I don't have much time for it lately (would need to setup some nice jailed environment) and probably that would get me eaten alive by plugin devs ;-)

  • @ura soul: Look into CHANGELOG.md for a listing of deprecation issues / BC breaking changes. For Elgg 1.10 these changes are listed in the 1.10.0-rc.1 release notes.

    @Pawel: your plugin surely is a great help for updating plugins. Unfortunately, it doesn't find all deprecation issues, e.g. deprecation warnings included in view files etc. that are not connected to certain functions directly. And some issues are more complex to solve, i.e. there are not warnings / errors at all neither by your plugin, Elgg or php but something still does not work on a newer Elgg version. Therefore, I don't know if it would make much sense to automatically test each uploaded plugin: if there are warnings, the plugin might still work at least presently and if there are no warings it doesn't mean it's free of issues.

  • Note the plugin upgrade guide 1.8 to 1.9 doesn't even mention comments (whose internals were massively overhauled). This is an oversight on our part.

  • Starting from Elgg 1.9.0 we adapted Server: http://semver.org/. This means that in the future 1.x releases will not introduce breaking changes, but only backwards compatible new features. So plugins made for Elgg 1.9.0 should theoretically still work on e.g. Elgg 1.537.0.

    Note also that a deprecation warning does not mean that a plugin is broken. It just means that the particular feature you're using will be removed in Elgg 2.0.0.

    Exceptions to the rules are plugins that are of terrible quality in the first place. I've come across so poorly designed plugins that worked in one environment but not another even though they had the exactly same Elgg version! You really cannot expect something like that to survive a version upgrade.

    do i skip 1.9 altogether?

    This is not supported. Run 1.9 upgrades first even if you're planning to upgrade to 1.10 immediately after.

    i can only see 2 plugins that are listed for elgg 1.10 presently

    There are more, but the search engine apparently just hasn't indexed them yet.

  • @Juho: the plugins listed for Elgg 1.10 have nothing to do with indexing. Only the plugins that a plugin dev marked as compatible with a specific release will show up when listing plugins for this Elgg release. For Elgg 1.10 the corresponding version checkbox will have to be checked by the plugin dev for all compatible plugin releases manually. If a dev doesn't do it, the plugin will not show up in the list for Elgg 1.10.

  •  i can only see 2 plugins that are listed for elgg 1.10 presently

    I understood that this refers to the community plugin search? Because at the moment it is listing only 2 plugins for 1.10 even though there in fact are more than 2 plugins that have been marked compatible with 1.10.