Apps with missing NC29 support

The first release candidate for NC 29 was published this week. By default, existing apps are not compatible with the new version and must be tested (and perhaps fixed). The goal is to get most of the popular apps with NC29 support until the release date of NC 29 (April 24th).

You can try to enable an app by clicking enable manually in the app overview (as an admin). Please leave a feedback on the bug tracker of an app if your test was successful (for follow-ups, leave a :+1: ) or leave a report with the errors you encountered.

Here is an auto-generated list of apps that were compatible with previous versions of Nextcloud but are not supported for NC 29. This list is contineously updated:

App ID NC 27 NC 28 NC 29 Issue Tracker
aaochat :white_check_mark: :x: :x: :beetle:
backup :white_check_mark: :white_check_mark: :x: :beetle:
bbb :white_check_mark: :white_check_mark: :x: :beetle:
breezedark :white_check_mark: :white_check_mark: :x: :beetle:
cadviewer :white_check_mark: :white_check_mark: :x: :beetle:
calendar_news :white_check_mark: :white_check_mark: :x: :beetle:
carnet :white_check_mark: :white_check_mark: :x: :beetle:
cas :white_check_mark: :white_check_mark: :x: :beetle:
chores :white_check_mark: :white_check_mark: :x: :beetle:
co2clock :white_check_mark: :x: :x: :beetle:
data_request :white_check_mark: :white_check_mark: :x: :beetle:
diary :white_check_mark: :white_check_mark: :x: :beetle:
discoursesso :white_check_mark: :white_check_mark: :x: :beetle:
documentserver_community :white_check_mark: :white_check_mark: :x: :beetle:
dokuwiki :white_check_mark: :white_check_mark: :x: :beetle:
duplicatefinder :white_check_mark: :white_check_mark: :x: :beetle:
electronicsignatures :white_check_mark: :white_check_mark: :x: :beetle:
emlviewer :white_check_mark: :x: :x: :beetle:
extract :white_check_mark: :x: :x: :beetle:
facerecognition :white_check_mark: :white_check_mark: :x: :beetle:
files_archive :white_check_mark: :white_check_mark: :x: :beetle:
files_external_ethswarm :white_check_mark: :white_check_mark: :x: :beetle:
files_fulltextsearch_tesseract :white_check_mark: :x: :x: :beetle:
files_markdown :white_check_mark: :x: :x: :beetle:
files_mindmap :white_check_mark: :white_check_mark: :x: :beetle:
files_photospheres :white_check_mark: :white_check_mark: :x: :beetle:
files_readmemd :white_check_mark: :x: :x: :beetle:
files_scripts :white_check_mark: :white_check_mark: :x: :beetle:
files_texteditor :white_check_mark: :x: :x: :beetle:
gestion :white_check_mark: :white_check_mark: :x: :beetle:
googledocsredirect :white_check_mark: :white_check_mark: :x: :beetle:
groupfolder_filesystem_snapshots :x: :white_check_mark: :x: :beetle:
hedgenext :white_check_mark: :white_check_mark: :x: :beetle:
hibp_login_check :white_check_mark: :x: :x: :beetle:
hidesidebars :white_check_mark: :x: :x: :beetle:
imageconverter :white_check_mark: :white_check_mark: :x: :beetle:
integration_collaboard :white_check_mark: :white_check_mark: :x: :beetle:
integration_ews :white_check_mark: :white_check_mark: :x: :beetle:
integration_gptzero :white_check_mark: :white_check_mark: :x: :beetle:
integration_jupyterhub :white_check_mark: :white_check_mark: :x: :beetle:
integration_libretranslate :white_check_mark: :white_check_mark: :x: :beetle:
integration_pexip :white_check_mark: :white_check_mark: :x: :beetle:
integration_twitter :white_check_mark: :white_check_mark: :x: :beetle:
jitsi :white_check_mark: :white_check_mark: :x: :beetle:
journal :white_check_mark: :white_check_mark: :x: :beetle:
keeweb :white_check_mark: :white_check_mark: :x: :beetle:
l10n_override :white_check_mark: :x: :x: :beetle:
listman :white_check_mark: :x: :x: :beetle:
llm :x: :white_check_mark: :x: :beetle:
mail_roundcube :white_check_mark: :white_check_mark: :x: :beetle:
majordomo :white_check_mark: :white_check_mark: :x: :beetle:
metadata :white_check_mark: :x: :x: :beetle:
mfazones :white_check_mark: :white_check_mark: :x: :beetle:
money :white_check_mark: :white_check_mark: :x: :beetle:
multiboards :white_check_mark: :white_check_mark: :x: :beetle:
ncdownloader :white_check_mark: :x: :x: :beetle:
nextcloudamarillo :white_check_mark: :x: :x: :beetle:
nextframe :white_check_mark: :white_check_mark: :x: :beetle:
occweb :white_check_mark: :white_check_mark: :x: :beetle:
openhab :white_check_mark: :white_check_mark: :x: :beetle:
openincryptpad :white_check_mark: :white_check_mark: :x: :beetle:
openotp_sign :white_check_mark: :x: :x: :beetle:
otpmanager :white_check_mark: :white_check_mark: :x: :beetle:
pax_fax :white_check_mark: :white_check_mark: :x: :beetle:
pdf_downloader :white_check_mark: :white_check_mark: :x: :beetle:
piwik :white_check_mark: :x: :x: :beetle:
pride :white_check_mark: :white_check_mark: :x: :beetle:
quickaccesssorting :white_check_mark: :x: :x: :beetle:
quicknotes :white_check_mark: :white_check_mark: :x: :beetle:
registertocontact :white_check_mark: :white_check_mark: :x: :beetle:
rides :white_check_mark: :white_check_mark: :x: :beetle:
salattime :white_check_mark: :x: :x: :beetle:
sciencemesh :white_check_mark: :white_check_mark: :x: :beetle:
scimserviceprovider :white_check_mark: :white_check_mark: :x: :beetle:
secrets :white_check_mark: :white_check_mark: :x: :beetle:
sendentsynchroniser :white_check_mark: :white_check_mark: :x: :beetle:
sensorlogger :white_check_mark: :white_check_mark: :x: :beetle:
shareimporter :white_check_mark: :white_check_mark: :x: :beetle:
sharemover :white_check_mark: :white_check_mark: :x: :beetle:
shifts :white_check_mark: :white_check_mark: :x: :beetle:
skyprint :white_check_mark: :x: :x: :beetle:
social :white_check_mark: :white_check_mark: :x: :beetle:
socialsharing_facebook :white_check_mark: :white_check_mark: :x: :beetle:
solid :white_check_mark: :x: :x: :beetle:
souvenirs :white_check_mark: :white_check_mark: :x: :beetle:
talk_matterbridge :white_check_mark: :white_check_mark: :x: :beetle:
text2image_stablediffusion :x: :white_check_mark: :x: :beetle:
transfer :x: :white_check_mark: :x: :beetle:
tuya_cloud :white_check_mark: :x: :x: :beetle:
twofactor_email :white_check_mark: :white_check_mark: :x: :beetle:
twofactor_reminder :white_check_mark: :x: :x: :beetle:
unsplash :white_check_mark: :x: :x: :beetle:
user_external :white_check_mark: :white_check_mark: :x: :beetle:
user_ispconfig :white_check_mark: :x: :x: :beetle:
user_pwauth :white_check_mark: :white_check_mark: :x: :beetle:
user_usage_report :white_check_mark: :white_check_mark: :x: :beetle:
user_vo :white_check_mark: :x: :x: :beetle:
vdirsyncerui :white_check_mark: :white_check_mark: :x: :beetle:
video_converter :white_check_mark: :x: :x: :beetle:
workflow_kitinerary :white_check_mark: :white_check_mark: :x: :beetle:
workspace :white_check_mark: :white_check_mark: :x: :beetle:

Apps with testing versions:

App ID version Bugtracker
news 25.0.0-alpha6 :beetle:

Table updated on May 22 2024, 09:30 UTC
There are already 205 apps for NC 29


Missing in the above list:

Yes, we only considered apps that were already available on NC 27 or later. Pico CMS max supported version is NC 25: Pico CMS - Apps - App Store - Nextcloud. If we go back too far, we would consider too much abandonned projects. However, for pico_cms there seems to be a bit of activity but some problems pushing out new releases:
Make it work with NC 26 · Issue #236 · nextcloud/cms_pico · GitHub

If breakage start because one leaves out stuff… maybe it is time to introduce some “NC25-Compat” kit “NC26-Compat” to at least provide the scaffolding of “ancient” stuff and allowing some transition?
It might make sense to have such a kit show there is a transition package active?..
So bootstrap is not just scrapped but phased out under control of user?

Nextcloud moves relatively fast with major versions (around 3 per year), but they try to keep the system for apps stable. For NC 27 however were quite a few changes and it needed some time to adjust most of the apps.
If you wanted to keep things compatible, even the php versions supported in NC 25 are partly not supported any more and vice versa.

If you have ideas, how to better resolve that, please open a dedicated topic for that to discuss that. I think there already was a topic where developers raised a few issues that made their work hard, but I couldn’t find it again.

Here we just try to keep track for the apps concerning the current release, so users/testers can report issues and follow the status.

Final note from me:
There is more stuff broken and fallen into the gutter beside the path NC chose.

I think more apps are broken in the app store than working.
I have no definitive idea about how to prevent this from reoccurring.

One idea: Ensure the Documentation (valid for the API) is published AHEAD of beta releases so developers can adjust.
(That also would imply there is some actual engineering going into NC).

Currently the practice seems to be throwing some Beta release over the wall, see what fallout it creates, fix that then describe remaining stuff into docs …
And hope the previous creators of APPS do follow…
(The release notes part, the API docs is a hotch potch of NC15 examples, NC17 Code, intersperced with NC11 descriptions… etc. trailing the current release with at least about a year worth of updates).

I just now wonder how long VUE will be used, 1, 2 or 3 versions before it gets replaced with the next whimp.
I’ll continue to use what works for now. and let go of some functionality if the next app falls down the side. Now it is pico_cms, before : pdfreader, files_opds etc.
I do develop code, just No web apps, no PHP, no Vue etc. I tried 2 years ago to revive some App only to find the state of mess called the NC X API which only loosely correlates to NC X+1 or X-1 API’s, less so to X-2 or X+2 API’s.
Learning everything is beyond my available time, and obsolete before i get enough grips on it.

On closing note: Maybe it would help to have NC developers assist App developers 1:1, it might also help the NC developers see HOW people actually use the platform…

1 Like

like for NC 25:
or NC 26:
or NC 27: Changes for developers & admins for Nextcloud 27 · Issue #37039 · nextcloud/server · GitHub

and for 25 this post was in April for the release being published in October (and the first beta in August 2022).

They recently added new tutorials for future app developers:

In the forum, we have a section for app developers, if there are specific question, remarks. I can’t tell you for what reason which feature/function was removed or changed. And/or check with other developers how they do it.

With ahead i mean the API for 30 should be fixed by now, so any developer can count on it’s contract it provides for apps. It would allow to prepare for future changes.

Another approach … look at the API’s of Linux, OpenVMS syscalls stable for 30+, 50+ years… while all functions it provides did radically change in that period, got extended, and ported across all kind of platforms. Those API’s are rigid yet allow changes & growth.

Imagine Linus Torvalds radically change the API every two releases with invalidating anything for over 3 versions ago… (those are the worlds i come from).

Ok… Issue with cms_pico seems to mostly be the use of ILogger,
according to PSR-3 ( PSR — Nextcloud latest Developer Manual latest documentation ) this is the intended interface…
Just not available in NC29, i might be reading it wrong, in that case there is abiguity.

The interface is an external package and that version got bumped. Apps implementing the interface needs to adjust their code.

Update admin.js by jkraffthha · Pull Request #242 · nextcloud/cms_pico · GitHub the current app authors ask for a manual test if the app still works as expected. If the app is important for you give it a try?

If such an update causes code breakage should it be in PSR-3? or a newer PSR?.

I’ll try to give the pull request a spin… i know it will break version verification from then on… :-(, mind you i am not a web developer, and due to the state of nextcloud between versions 20-25 i gave up on the idea of modifying apps.

Tried it.

NC29: next error in debug:
[cms_pico] Debug: /appinfo/app.php is deprecated, use \OCP\AppFramework\Bootstrap\IBootstrap on the application class instead.
GET /apps/logreader/api/poll?lastReqId=eVXRM7carbBsNv2ICrov

cms_pico seems to operate.