In some times we decide against a compatibility to ACF, because we see a
functionality in ACF as a bug and not as a feature.
If you were to be honest: is that what happened here, or did you just make
incorrect assumptions when implementing it, and got it slightly wrong?
(which surely is in the “hey: shit happens” category).
So the question for is not only “is this a bug”, it is also “what
behaviour is the best for the community”.
Your current implementation doesn’t value-add anything. However it does
cause a real-world cross compat issue. So the net worth of this variation
is a negative one.
If you want to vary the behaviour of this: vary it on .lucee to your
heart’s content.
Interesting is the doc for this function with ACF:
“If debugging output is enabled in ColdFusion Administrator and has not
been overridden by setting the cfsettingtag showDebugOutput attribute to
No, the IsDebugMode function returns Yes; No, otherwise.”
So it does matches the functionality but the definition of “return” is
matching our implementation.
Huh? (I mean “I don’t understand what you have written there”). CF does
exactly what it says in the docs you quote above. Lucee - apparently - does
not.
"Returns
True, if debugging mode is set in the ColdFusion Administrator; False if
debugging mode is disabled."
so it is unclear at best,
No, at best it does exactly what it claims to do, although the wording
could stand improvement.
It’s only if you read a latter statement without the context of the
previous statement that your can claim it’s unclear. Which is a bit of
contortion of how ppl usually go about things.
Basically you seem to be engaging in apologetics to justify (only to
yourself, I think) why you didn’t implement the function as per
ColdFusion’s specification (such as it is).
Look: there’s nothing wrong with having an implementation glitch. But
increasingly you (singular. I mean “Micha”) are twisting about the place
trying to justify why you’re actually right when - in reality - the
conversation is only taking place because you made a mistake at some point.
The problem here resides solely in Lucee and in your head, I’m afraid.
one other way to do it would be, to match the ACF functionality but mark
this function as deprecated and add one that is more precise in the
functionality
To me that is kinda adding more language clutter for no good reason.
You’re quibbling over the notion of “debug mode” and ascribing it a precise
definition that the inventors of the platform & language in question
clearly didn’t mean. It’s a slightly clumsy function name, but it’s not
like it’s the only clumsy function name in CFML. However it’s behaviour
makes sense in the context of the description in the docs. Which have been
the same for over a decade.
No-one gains anything from adding a similar-named function which does
something pretty much the same thing. That’s how PHP would “solve” a
problem.
You have your own language to “improve” in the .lucee thing, so perhaps
just fix the situation their, and don’t mess with CFML in such a way that
just leave the language slightly worse off.On Monday, 15 June 2015 08:22:07 UTC+1, Micha wrote:
–
Adam