OPNsense Forum

Archive => 19.1 Legacy Series => Topic started by: gh0st on April 05, 2019, 09:01:48 pm

Title: Confirm form resubmission wipes the dashboard clean!
Post by: gh0st on April 05, 2019, 09:01:48 pm
Finally I've found out what's causing the wiped dashboard for me, and that's when the Confirm form resubmission appears and I press Contiune.

When pressing Contiune, the dashboard is wiped completly clean from all widgets and I have to start over! WT*

Why?  :o This happend also on the previous version 18.7.X and now on 19.1.X.
Title: Re: Confirm form resubmission wipes the dashboard clean!
Post by: franco on April 07, 2019, 12:34:34 pm
Can you make a video, I'm not sure which part should be resubmitted. The change in dashboard widgets?


Cheers,
Franco
Title: Re: Confirm form resubmission wipes the dashboard clean!
Post by: gh0st on April 07, 2019, 01:03:31 pm
This is the form resubmission I'm talking about that wipes the dashboard completly....

(https://i.imgur.com/MCGceqP.png)

(https://i.imgur.com/QQS2evr.png)
Title: Re: Confirm form resubmission wipes the dashboard clean!
Post by: hbc on April 09, 2019, 08:05:16 am
I just logged into my OPNsense as every day and empty dashboard. Like gh0st already posted. Every attempt to add and save a new dashboard, instantly wipes it.

So I finally consider 19.1.5 as broken and will revert to 19.1.4.

I hope

Code: [Select]
# opnsense-revert -r 19.1.4 opnsense
will do the trick. Would save at least half an hour.
Title: Re: Confirm form resubmission wipes the dashboard clean!
Post by: franco on April 09, 2019, 08:06:43 am
hbc, with all due respect stop mentioning how broken things are for you on 19.1.5. This bug has likely always existed and 19.1.4 will also wipe your dashboard.

I appreciate all heads ups, but I will not tolerate bickering and false conclusions.


Cheers,
Franco
Title: Re: Confirm form resubmission wipes the dashboard clean!
Post by: franco on April 09, 2019, 08:23:59 am
@gh0st: thanks for the description and screenshots. I could reproduce now and easily fix. Not easy to trigger:

https://github.com/opnsense/core/commit/58197380c6

# opnsense-patch 58197380c6

Good thing is that System: Configuration: History lets you restore your dashboard instantly. I don't know why people don't realise it's there and try to dramatise: it's a bug and it gets fixed once properly reported.


Cheers,
Franco
Title: Re: Confirm form resubmission wipes the dashboard clean!
Post by: hbc on April 09, 2019, 08:25:17 am
Ok, sorry. Maybe I am a bit overreacting, but without dashboard I feel blind and that fears me.

But you must also admit that php is an essential part of OPNsense since (too) many things depend on it (webgui, config scripts, start scripts, import scripts,...).

Maybe the dashboard is the one, last thing that let me finally decide to role-back, but WOL, Vouchers, IDS rules and whatever came up the last few days all issues were due to this php7.2 update.

I think updates to such an important package have to be done and tested in development branches - not stable releases.
Title: Re: Confirm form resubmission wipes the dashboard clean!
Post by: franco on April 09, 2019, 08:37:14 am
It's impossible to test the PHP change in all variants over all plugins.

FreeBSD pkg doesn't allow us to have two PHP versions at the same time. A bug has been open since 2016:

https://github.com/freebsd/pkg/issues/1457

We've been successfully using PHP with E_WARNING since 2015:

https://github.com/opnsense/core/commit/f6c6889d7

PHP 7.2 adds a warning to count() usage without changing count() behaviour which you can't even unit test because it only happens in edge cases or when the GUI is involved when rendering pages dependent on dynamic results. This is a runtime error that you cannot simply lint. It's impossible to catch this everywhere:

$ git grep -i "[^a-z]count(" | wc -l
     617

And this is core.git alone... There's really no other way but to work through this together. We've reversed the 2015 policy in what is to be 19.1.6 to move forward although we really think it's the wrong approach to squelch warnings....

https://github.com/opnsense/core/commit/716a07dde2b

And the thing is that this will likely happen again in the next PHP upgrade or Python or any other third party software that changes its behaviour in subtle or not subtle ways. As long as people keep helping collect data and best case also send fixes we can keep moving forward.


Cheers,
Franco