NC 20 with a lot of DEPRECATED program code

Support intro

When displaying the NC protolol (NC log file) it shows a HUGE number of entries like:
/appinfo/app.php is deprecated, use \OCP\AppFramework\Bootstrap\IBootstrap on the application class instead.

These entries belong to various applications like “file sharing”, “contacts”, group folders".

They are shown when log level was set to “Debug” (0).

Why is NC using DEPRECATED program code? Why not deploying modern style?

Nextcloud version (eg, 20.0.5): 20.0.7
Operating system and version (eg, Ubuntu 20.04): Debian Buster
Apache or nginx version (eg, Apache 2.4.25): Apache 2.4.38
PHP version (eg, 7.4): 7.3

Steps to replicate it:

  1. Set log level to debug in config.php

The output of your Nextcloud log in Admin > Logging:

Set log level to 0 (debug)

The output of your config.php file in /path/to/nextcloud (make sure you remove any identifiable information!):

PASTE HERE

The output of your Apache/nginx/system log in /var/log/____:

NOT RELEVANT because this is NC specific

Kind regards
Dieter

Moin @DieterH

I’m a bit lost - what exactly is your issue?

/S

Hi simonspa,

I’m a bit lost - what exactly is your issue?

Somehow the introductory part of my message got lost. :frowning:

I have some issues with the “eternal” NC problem that “well-know/carddav” (and caldav) is not setup properly. Therefore I set log level in config.php to “0” (debug mode) hoping that there are pertinent hints why NC thinks that carddav / caldav is not set up properly.

In debug mode I am flooded with a huge number of messages that NC 20 deploys deprecated code. Of course this is not the cause of the warning / error with carddav / caldav but it is makes it very difficult to get to the real warnings for carddav / caldav.

My contribution is to kindly ask to fix NC in the next main release so that the messages of deprecated code will not show up again. By the way, such messages give a bad picture about NC.

I know that usually people run NC with log level 2, hence they will not see these messages.

I think that besides me a lot of people would like to see that NC runs on “modern” code not an deprecated code.

Kind regards
Dieter

@DieterH have you seen this?

1 Like

Hi szaimen,

yes, I saw this. There are some people complaining about the warnings of deprecated code, and there are some people who say: This is OK.

I do not agree with these people and not with their arguments. The log level 0 (debug) does not PRODUCE these warnings, it DISPLAYS them. The log level is a filter.

As a consequence, these warnings about deprecated code are ALWAYS there. This gives a not so good impression about NC. It also raises the question why NC still is based on an obsolete code basis.

Kind regards
Dieter

cc @ChristophWurst

That is exactly why we even have deprecated stuff. But it’s huge tasks and many of us are really busy. If you have a few mins or so I can talk you through what is still needed and you can give it a shot.

Developer skill required.

Hi Christoph,

everybody is busy, you, the developer colleagues, the NC users and also me.
Is this an explanation or even an argument to have deprecated code? You might be right for short term thinking, but in the long run retaining deprecated code could become a huge burden for software development, resulting in making developers even busier. So, what is the benefit?

Some weeks ago I raised a bug asking for some pertinent information which would allow me to dig down to the reason of the problem. NC tells me that I should look in the protocol but I found nothing (even not when log level was 0 [debug]) which could be related to my problem. Pointing to the NC documentation in the NC warning also did not help me at all because my configuration files are conformant to NC documentation. So NC kept me busy until now, the problem has not been solved yet.

To describe my issue in other words: A modern compiler tells you not only that there are syntax errors (or warnings), but also tells you the line number and also the type of error / warning. From these detailed information you can solve the problem in the source code.
In my case NC tells me that there is a (not detailed) warning (I would like to get rid of it by modifying the configuration files), but nothing else. How to find the cause of the problem?

I guess NC keeps me further busy …

Kind regards
Dieter

Please do some research about what the deprecation says. I think you are misunderstanding it.

1 Like

Hey @DieterH please read Community Code of Conduct – Nextcloud.

2 Likes