Textpattern CMS support forum

You are not logged in. Register | Login | Help

#1 2016-10-15 11:54:55

etc
Developer
Registered: 2010-11-11
Posts: 3,198
Website

Output debug info only to logged-in users

The title says it all. If you do some dev on a live site, sometimes you need to put it in debug mode to test new features. This exposes your kitchen to everybody, additionally slowing down the site. I suggest that we introduce a preference that will allow to hide debug info from external eyes.


etc_[ query | search | pagination | date | tree | cache ]

Offline

#2 2016-10-15 13:21:42

NicolasGraph
Plugin Author
From: France
Registered: 2008-07-24
Posts: 860
Website

Re: Output debug info only to logged-in users

+1


Nicolas
Follow me on Twitter and GitHub!
Multiple edits are usually to correct my frenglish…

Offline

#3 2016-10-15 13:36:29

Bloke
Developer
From: Leeds, UK
Registered: 2006-01-29
Posts: 8,672
Website

Re: Output debug info only to logged-in users

In theory, yes it’s a good idea. Since new features (parser etc) can impact public tags, we’ll have to be extra cautious when testing dev code that we’re not in this mode of operation so we don’t unintentionally hide any errors.

Will a fourth production status suffice? Private debugging or something?


The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.

Txp Builders – finely-crafted code, design and Txp

Offline

#4 2016-10-15 15:01:36

candyman
Member
From: Italy
Registered: 2006-08-08
Posts: 684

Re: Output debug info only to logged-in users

Safe Production Status?

Offline

#5 2016-10-15 17:46:35

etc
Developer
Registered: 2010-11-11
Posts: 3,198
Website

Re: Output debug info only to logged-in users

Bloke wrote #302206:

Will a fourth production status suffice? Private debugging or something?

candyman wrote #302209:

Safe Production Status?

I don’t know. I would squat the Testing mode for this. What is it’s purpose anyway?


etc_[ query | search | pagination | date | tree | cache ]

Offline

#6 2016-10-15 19:29:30

Bloke
Developer
From: Leeds, UK
Registered: 2006-01-29
Posts: 8,672
Website

Re: Output debug info only to logged-in users

etc wrote #302211:

I don’t know. I would squat the Testing mode for this. What is it’s purpose anyway?

I use it all the time. On my dev site, when testing plugins for 4.6.0 for example, pretty much every damn public plugin tag throws “unregistered tag”, which makes the output of the page rather irritating to debug. Like, I know that all the tags are unregistered I don’t need to be told about it constantly, I only want to see syntax and logic errors caused by my meddling, so I use Testing for that and only switch back to Debugging for short periods or if I can’t immediately find a bug and need the stack trace/line numbers.

I did consider a plugin smd_debug which added a public container tag like <txp:smd_debug level="0|1|2">. That would just manually alter the production status inside the container based on the chosen level. So if you wanted to silence output completely, wrap your entire Page template in it with level="0". But you could selectively open up stuff around bits you want to fully debug. Or put the debug tag inside privileged tags so it’s only shown to logged in users. I did hit some snags so didn’t continue development.

Any merit in considering such a txp:debug tag for core to fulfill this request instead of making a new production status or something?


The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.

Txp Builders – finely-crafted code, design and Txp

Offline

#7 2016-10-16 10:35:43

etc
Developer
Registered: 2010-11-11
Posts: 3,198
Website

Re: Output debug info only to logged-in users

Then it’s mostly the level of verbosity? Makes sense, but the site visitors do not need to see even these syntax error warnings, unless you are asking someone to help with debugging. So I would turn back to the initial proposal of a preference (off by default) to suppress all debug/testing output for unlogged visitors, rather than introducing a new status.


etc_[ query | search | pagination | date | tree | cache ]

Offline

#8 2016-10-16 11:01:24

sacripant
Plugin Author
From: Rhône — France
Registered: 2008-06-01
Posts: 478
Website

Re: Output debug info only to logged-in users

etc wrote #302226:

suppress all debug/testing output for unlogged visitors.

+1

and also change the way of errors are injected into the html document, because injecte errors in top of document, before <!doctype> is sometimes not convenient and explode DOM.

Offline

#9 2016-10-16 11:45:33

Bloke
Developer
From: Leeds, UK
Registered: 2006-01-29
Posts: 8,672
Website

Re: Output debug info only to logged-in users

etc wrote #302226:

a preference (off by default) to suppress all debug/testing output for unlogged visitors

That works for me. Or, even, forget the pref and make that the default behaviour. No errors shown on front website, regardless of production status, unless you’re logged in, then you see whatever level of verbosity you’ve set according to production status? Or does that make it difficult for people to report site problems to admins?


The smd plugin menagerie — for when you need one more gribble of power from Textpattern. Bleeding-edge code available on GitHub.

Txp Builders – finely-crafted code, design and Txp

Offline

#10 2016-10-16 12:38:42

phiw13
Plugin Author
From: Japan
Registered: 2004-02-27
Posts: 1,677
Website

Re: Output debug info only to logged-in users

Bloke wrote #302234:

Or does that make it difficult for people to report site problems to admins?

Someone may come to the forums with a cry for help, and an experienced user here might immediately see the problem / solution by viewing the page + debug / error code (without need to be a logged-in user).

I’m all in favour of Olegs proposal.

Also +1 on what Sacripant notes about appending those error thingies near the end of the page.

Offline

Board footer

Powered by FluxBB