How NOT to report an error...

5 views
Skip to first unread message

Eric Shulman

unread,
Apr 11, 2006, 1:54:25 AM4/11/06
to TiddlyWiki
I just received the most useless (and annoying) error report via one of
the TiddlyTools feedback forms... unfortunately, the person who sent it
did not give a valid return email address, so I have no recourse but to
post a response here.

This is what was sent to me:
-------------------------------------
I just came to your site using the Opera Browser, and it's reporting
two significant errors in your javascript.

One error is in the ImportTiddler and the other error is in the
ExportTiddler.

Just thought I'd let you know, since you probably don't test with any
browser other than your favorite (whatever that happens to be.)

I'll skip the details, since Opera is free and you can try it out
yourself and test with it.
-------------------------------------

My response:
-------------------------------------
If Opera is *REPORTING* errors then, please, TELL ME WHAT THEY ARE!!!!
Does it crash? Invalid objects? undeclared functions? what????? Not
telling me what your browser said is just plain STUPID!!!

re: ...you probably don't test with any browser other than your
favorite..."

Since you couldn't possibly have any idea what MY engineering practices
are, what would make you say this? My guess: perhaps this is how YOU
would approach testing since you are probably an Opera *fanatic* who
refuses to use any of the mainstream browsers, so you expect others to
be similarly narrow-minded with regard to their favorite browser.

I've been developing software professionally for over 25 years, and
take QA issues very seriously. I do not release software "on a whim"
without suitable QA, including use-case analysis, unit tests (when
appropriate), and integration tests (for combinations of plugins).

Of course, I'd like my code to work properly on ALL platforms, but I
only have so much time and resources available, and the "law of
diminishing returns" comes into play.
I test with IE6 and FF(1.0.7, 1.5, and 1.5.0.1) on Windows XPSP2. I
don't test Linux or Mac platforms because I don't have those platforms.


I don't bother to test Opera because TiddlyTools.com server log stats
show that in the last 60 days Opera visits to be only 27 out of the
last 29237 visits. That is less than 1/10 of 1% of all visits.

I don't care if Opera is free. Buy me a "QA" machine, and I will
install and test Opera (and other *marginal* browsers), but I will NOT
load up my primary workstation with all sorts of competing browsers
just to reproduce your problem.

BOTTOM LINE:
If you want me to try to correct a problem that you are experiencing,
then provide as much information as you can so that it is as easy as
possible for me to find the cause and determine a fix. Do not rely on
me to replicate your computing environment just to test your particular
problem. In fact, if you can handle the code, try to debug the problem
to find the cause yourself. That way, I can just focus on working out
the fix... and if you can actually suggest a fix, that would be even
better.


-e
Eric Shulman
TiddlyTools / ELS Design Studios

Eric Shulman

unread,
Apr 11, 2006, 1:02:00 PM4/11/06
to TiddlyWiki
I just got a followup *anonymous* message from the same guy. I really
wish he would post his comments here, so others could provide
responses. Or at least provide a return email address, so I don't have
to make these replies in public.

His attitude is kinda bugging me... rather than being helpful and
providing me with more information about the Opera problem, he wants to
argue about why *I* should do all the work. Then he goes on to impugn
my work practices with unwarranted assumptions. He even suggests that
I wouldn't post his rebuttal here (I suppose because he is being
critical, he assumes that I will respond like a petulant child.
*Adults* discuss things in the open.)

While intellectual disagreements about technology and techniques are
inevitable, I am not interested in *arguments*. All it does is to
divert me from doing constructive things (like maybe actually debugging
the problem!).

If my previous response was a little 'curt', it was because I wrote it
just before eating dinner (I'm diabetic and can get somewhat irritable
when my glucose is low...). Nonetheless, I still stand by everything I
wrote (except the "fanatic" bit... that was just me being a bit
cranky... sorry...)

So, without further ado, here's what the guy wrote (my responses are
embedded)
---------------------------------------------------------------
> I'm the one that posted the error report about Opera browser.
>
> No, I didn't give a valid email address because I don't feel like giving out my address to every random person I come across. And I don't always trust the feedback forms. Too many of them are just address harvesters for spam.

ELS:
This is understandable. I am similarly reluctant to toss an email
address at "every random person"... BUT... that is not the case here.
TiddlyTools is a legitimate site (obviously). Since you already have
to assume a reasonably high level of TRUST to use my plugin code on
your local machine (with full javascript access to your filesystem),
under what insane circumstances would you suspect that I'm also running
a "spam harvester"? If I actually had nefarious intentions, I could
always put some code in a plugin that would really do some truly
obscene damage to your system.

> As for the Opera browser errors... The error reports are more than a single line.

ELS:
So what? That is the information that is needed to START debugging the
problem. In fact, since it is more than a single line, it is probably
MORE helpful than most error messages.

> All you give is a little freaking feedback form and there's no way to send you the two screenshots that show the whole thing.

ELS:
I've received plenty of screen shots from people reporting problems.
Just post the image on a server somewhere (if you don't have any
hosting space, there lots of free image services out there... just pick
one), and then include the link in your email.

> And there's no great reason to go to all that trouble because all you have to do is try the Opera browser yourself and you can see the errors for yourself. After all, once you fix it, you have to test it, so you'd still need Opera to test it.

ELS:
You are assuming that the problem will appear the same on my system as
it does on yours. Just suppose for a moment that I am *already*
testing with Opera, and that I don't see the problem you see. Many
times things are not REPRODUCIBLE on different systems. I want to know
what error YOU are getting.

Also, when addressing problems for environments that I don't have
available, I typically work WITH the person reporting the problem, so
that THEY can test the fixes *in situ* to ensure that the problem is
really solved.

> In fact, I specifically download and installed Opera to test my own TW and make sure that it works properly and looks right with common browsers. If I had a mac, I'd test that too.

> Even though TW and the plugins were supposedly well tested by the authors and community, I was still taking the time and trouble to actually make sure. And while doing that, I noticed some problems with your plugins installed. That's when I came over here to see if your site was having the same problem.

ELS:
Thorough testing is always good. Your efforts to check the more
marginal browsers *is* appreciated. As you noted, ALL testing takes
"time and trouble". Perhaps this is your only project, or it is a
spare time thing, and you have lots of spare time, but I do not.

I get dozens of requests every day from the TW community to add
specific plugin features or help them debug their own TW documents. In
general, I am more than happy to provide that help. But I expect the
person making the request to do as much of the work as possible.

The "law of diminishing returns" dictates that I focus my development
(and testing) efforts on the areas that have the most benefit for the
most number of users.

> Of course, I'm sure you wont pass on my rebutal to the rest of the forum readers. Just because I don't post in there (gotta have a gmail account to do that), doesn't mean I (and many others) don't read it.

ELS:
What!!!! You don't know me personally, so why do you insist on assuming
that I would behave as UNCONSTRUCTIVELY as you have been?

Also, you absolutely do NOT need a gmail account to post to the
GoogleGroups. You can register with ANY email address. In fact, since
you are so worried about submitting your address to "random people" who
might be spam harvesters, why not get a FREE gmail account to use for
just such purposes? If/when it starts to get clogged with spam, just
retire that address and create a new FREE one.

> Oh, and if you want a test machine... I assume you know about the free VM's floating around? Microsoft and VMWare are both giving away ones. Heck, even qemu works well enough for basic testing.

ELS:
a VIRTUAL machine is not a REAL test environment. Sure, it might work
to identify "low-hanging fruit", but that doesn't ensure that the code
will work correctly "out in the wild" on real hardware systems.

Furthermore, as I pointed out in my previous post, I will NOT load up
my *primary workstation* with gobs of software to create a *testing
environment.* to support all possible combinations of platform,
browser, and filesystem. That is what the secondary machine (real
hardware) would be for.

Of course, I DO test my code on my workstation, but only using the
mainstream browsers that I have already installed there. (IE and FF
comprise nearly 97% of all visits to TiddlyTools). As I noted before,
Opera is used for just 1/10 of 1% of visits to TiddlyTools and because
testing DOES take "time and trouble", it's just not in my interests to
routinely test against Opera. Since YOU are interested in testing
Opera, then please do so, but don't just find a problem and dump the
rest of the work in my lap.

In conclusion: If you want to be constructive and provide more
information about your Opera problems so WE can work on finding the
cause and fixing it, then I'm listening.

On the other hand, if you want to continue this pointless argument,
then GO AWAY!

GeoffS

unread,
Apr 11, 2006, 2:14:04 PM4/11/06
to TiddlyWiki
I have read all of this; and I am grateful because developers make very
fair efforts (based upon their expertise (and no-one can underestimate
Eric's expertise!). The highly consumer-centric approach does
occasionally happen, though.

Argumentativeness is another thing. BTW I am diabetic, too.
Irritability at low sugar levels can happen; but to be fair as well
diabetics are very fortunate if they ar sticklers for detail and
accuracy.

In this vein, it should be emphasised that we are a community. And
frankly it is not very good at all that this correspondent does not
bother to do things in the community way... if y'know what I mean?

There is never any damage done by being reasonable. The only other
thing I can think of, having met it before a bit, concerns Opera users'
expectations. It is touted as a complete IE replacement and java script
messages are formidably visible (even when they are not avery accurate
or descriptive). So I think the less knowledgeable user is inclined to
think that real damage is being done to Opera.

It might therefore be a thought to issue a general TW Opera warning;
and this notwithstanding that we all wish to support Opera wherever
possible.

Geoff

Eric Shulman

unread,
Apr 11, 2006, 3:25:58 PM4/11/06
to TiddlyWiki
> I just came to your site using the Opera Browser, and it's reporting
> two significant errors in your javascript.
> One error is in the ImportTiddler and the other error is in the
> ExportTiddler.


Can someone who already has Opera installed go to
http://www.TiddlyTools.com and tell me what you see?

thanks,

-e

GeoffS

unread,
Apr 11, 2006, 3:32:50 PM4/11/06
to TiddlyWiki
Also, cannot the error listing be copied and pasted into an email, or
whatever?

Geoff

Scott Elcomb

unread,
Apr 11, 2006, 3:46:13 PM4/11/06
to Tiddl...@googlegroups.com
On 4/11/06, Eric Shulman <elsd...@gmail.com> wrote:
>
> Can someone who already has Opera installed go to
> http://www.TiddlyTools.com and tell me what you see?

To be honest, I've read and reread your post - not entirely sure how to respond.

Eric, I don't think you were wrong in any of your response. I think
it's odd that "the unknown user" seems a bit on the intelligent side
but still does not understand what your saying. I have more comments,
but in the interest of "keeping the peace," I'll just keep them to
myself for now. (Beyond restating what you've already said, the only
thing I could add is that whoever it is really *should* know better.
'Specially if they're an Opera user.)

Here are the error messages:

[-- error message starts #1 --]

www.tiddlytools.com:

Error in systemConfig tiddler 'ExportTiddlersPlugin' - [Error:
name: SyntaxError
message: Statement on line 304: Syntax error in call to eval: line 817 :
ex
---^
Backtrace:
Line 304 of inline#2 script in http://www.tiddlytools.com/
window.eval(customConfig);
Line 291 of inline#2 script in http://www.tiddlytools.com/
var ex = processConfig(configTiddlers[t].text);
Line 256 of inline#2 script in http://www.tiddlytools.com/
loadSystemConfig();
Line 1 of script
main();
At unknown location
[statement source code not available]

]

[-- error message #1 ends --]

[-- error message #2 starts --]
www.tiddlytools.com:

Error in systemConfig tiddler 'ImportTiddlersPlugin' - [Error:
name: SyntaxError
message: Statement on line 304: Syntax error in call to eval: line 499 :
t
--^
Backtrace:
Line 304 of inline#2 script in http://www.tiddlytools.com/
window.eval(customConfig);
Line 291 of inline#2 script in http://www.tiddlytools.com/
var ex = processConfig(configTiddlers[t].text);
Line 256 of inline#2 script in http://www.tiddlytools.com/
loadSystemConfig();
Line 1 of script
main();
At unknown location
[statement source code not available]

]

[-- error message #2 ends --]

--
Scott Elcomb
psema4.gotdns.com

"A revolution is coming - a revolution which will be
peaceful if we are wise enough; compassionate if we care
enough; successful if we are fortunate enough - but a
revolution which is coming whether we will it or not. We
can affect its character, we cannot alter its inevitability."

- John F. Kennedy

christianhauck

unread,
Apr 11, 2006, 3:50:04 PM4/11/06
to TiddlyWiki
it's like that:

first window, title "Javascript"

www.tiddlytools.com:

Error in systemConfig tiddler 'ExportTiddlersPlugin' - [Error:
name: SyntaxError
message: Statement on line 304: Syntax error in call to eval: line 817
:
ex
---^
Backtrace:
Line 304 of inline#2 script in http://www.tiddlytools.com/
window.eval(customConfig);
Line 291 of inline#2 script in http://www.tiddlytools.com/
var ex = processConfig(configTiddlers[t].text);
Line 256 of inline#2 script in http://www.tiddlytools.com/
loadSystemConfig();
Line 1 of script
main();
At unknown location
[statement source code not available]

]

I click on "OK"

another window pops up:

www.tiddlytools.com:

Error in systemConfig tiddler 'ImportTiddlersPlugin' - [Error:
name: SyntaxError
message: Statement on line 304: Syntax error in call to eval: line 499
:
t
--^
Backtrace:
Line 304 of inline#2 script in http://www.tiddlytools.com/
window.eval(customConfig);
Line 291 of inline#2 script in http://www.tiddlytools.com/
var ex = processConfig(configTiddlers[t].text);
Line 256 of inline#2 script in http://www.tiddlytools.com/
loadSystemConfig();
Line 1 of script
main();
At unknown location
[statement source code not available]

]

and then, after clicking "O.K', the page behaves normally.


no need to use pictures, it can be copied from the respective window.
My machine: Windows XP pro, no service packs, latest Opera 8.54


And: thanks for what you're doing.

As for that guy: I would not even care to ignore him.

Cheers

Christian

Eric Shulman

unread,
Apr 11, 2006, 4:22:16 PM4/11/06
to TiddlyWiki
> but in the interest of "keeping the peace," I'll just keep them to

yeah. let's use our combined energies for constructive purposes...

Thanks much for the Opera error text. Here's my initial take on
them... I removed the excess reportage, as well as the backtrace info
(which doesn't matter, since it is just reporting the TW core calling
sequence for loading a plugin)

> ... 'ExportTiddlersPlugin'...
> ... Syntax error in call to eval: line 817 :
> ex
> ---^

> ... 'ImportTiddlersPlugin' ...
> ... Syntax error in call to eval: line 499 :
> t
> --^

ExportTiddlersPlugin line 817 is:
function exportHeader(format)

ImportTiddlersPlugin line 499 is:
theCollisionPanel.style.display='none';

In both cases, it seems *as if* Opera is truncating the source in the
middle of these lines, producing the syntax errors. In addition, both
these lines occur around 32K bytes into the source code... note also
that these plugins are the only ones on TiddlyTools that exceed 32K
(export is about 40K, import is around 53K)... perhaps Opera is
performing a buffer truncation for eval()???? If so, YUCK!

-e

Scott Elcomb

unread,
Apr 11, 2006, 4:49:58 PM4/11/06
to Tiddl...@googlegroups.com
On 4/11/06, Eric Shulman <elsd...@gmail.com> wrote:
> In both cases, it seems *as if* Opera is truncating the source in the
> middle of these lines, producing the syntax errors. In addition, both
> these lines occur around 32K bytes into the source code... note also
> that these plugins are the only ones on TiddlyTools that exceed 32K
> (export is about 40K, import is around 53K)... perhaps Opera is
> performing a buffer truncation for eval()???? If so, YUCK!

I wish I'd more experience with Opera. They do have a fair bit of
documentation that I've not had a chance to get to (
http://www.opera.com/support/search/supbrowse.dml ) as yet.

I really hope that your suggestion is incorrect, otherwise it may
spell doom for some of my own plans...

In the interest of full disclosure, I'm working on a project that is
in ways similar to, but distinctly different from, TW at the moment.
I understand much of *why* TW works the way it does, but I'm not
nearly familiar enough with the code to provide any clarity to the
errors. My interest in Opera is limited (for the time being) to Opera
Mini.

If there are no others out there in the TW community who could help on
this front, I will do what I can.

GeoffS

unread,
Apr 11, 2006, 4:50:37 PM4/11/06
to TiddlyWiki
> Eric, I don't think you were wrong in any of your response. I think it's odd that "the unknown user" seems a bit on the intelligent side but still does not understand what your saying.

My reading is that he has been bull-dumping, on the basis that he just
*expects* everything to work out of the box with Opera. He probably has
a taste for *kicking-ass*, too. So, if he doesn't see the community
thing, maybe he also has a problem making friends.

Hope I'm not being indiscreet.

Geoff

Scott Elcomb

unread,
Apr 11, 2006, 4:56:00 PM4/11/06
to Tiddl...@googlegroups.com

Indiscreet? Indiscreet?!?!

If he's got "a taste for *kicking-ass*" then tell him to email me.
Some @$#!&^'ers just ain't gotta CLUE.

Not to demean the import of diabetes in any way (all medical
conditions are nasty) - but if you wanna see "curt" then I quite
simply *dare* Mr(s). Anonymous to send me an email.

GeoffS

unread,
Apr 11, 2006, 5:17:42 PM4/11/06
to TiddlyWiki
Mother-abuser is probably a bit strong. But I would say that as a
developer -- who is not paid for it, but does it out of a combination
of curiosity, altruism, and daredevil spirt -- a bit of RESPECT is
required.

Of course, it's always possible for a user to get worked up and
frustrated but that is no proper excuse to go into the OK Coral, Wyatt
Earp And Doc Holiday fashion, ready for a a really big f***'n shoot
out, is it?

Geoff

Scott Elcomb

unread,
Apr 11, 2006, 5:29:40 PM4/11/06
to Tiddl...@googlegroups.com
On 4/11/06, GeoffS <gslo...@yahoo.co.uk> wrote:
>

I agree whole-heartedly. Except that Eric explained it the first time.

I guess my issue is that I can understand Eric's position. I'm a very
peaceable fellow. But when a logical position is explained and is
*entirely* ignored, I take a rather strong position.

It's my view that:

* If there's a logical explanation, it should be accepted until a
*better* explanation comes along. This is also known as the
"Scientific Method."

* If you do not adhere to this view, so be it. We are all individuals
with our own views.

* If you cannot accept #2, and make others in the community "feel
small" while holding to a methodology that has little (if any) logical
merit (as applied to social behavior) - then you deserve what's
coming.

What I saw in your hope of being indiscreet was that "feel small"
attitude. Bullies are good at pulling this behaviour out of others.
I *will* keep the peace, but only to a point.

The reason that I feel so strongly on this particular front is that it
took a couple years *of studying Open Source* for me to break through
my own social barriers. I used to be a hermit - stuck to "feeling
small" so that I would not hurt the feelings of others.

No more. No more bullying. Open Communities should *stand tall and
proud* for what they do. It is the simple act of sharing. And those
who can't share, well... They should be quiet because this is the
definately the age for those who do.

Eric Shulman

unread,
Apr 11, 2006, 5:57:42 PM4/11/06
to TiddlyWiki
Everybody just chill...

Even though the guy's message was a bit of a pain, he wasn't SO far out
of line to bring down this kind of angry sentiment.

Yes, he was a bit brusk and less than helpful... and he made implied
and unfounded criticisms of my work ethics and engineering
practices.... perhaps he's just a jerk in general... or maybe he was
just having a stressful day.

Whatever the cause, except for some mild annoyance (and a bit of extra
typing), I am completely unharmed by his behavior, and his style of
communication only reflects on HIS personal traits, not mine.

In the virtual public world of cyberspace, reputation is everything.
It's probably good that he stayed anonymous, because he just "shot
himself in the foot".

So, let's all just relax and get back to the fun of TW...

-e

GeoffS

unread,
Apr 11, 2006, 6:34:12 PM4/11/06
to TiddlyWiki
The virtual world!

In terms of behaviour, it's like the world of concrete and sidewalks.
Folk still show a diversity of behaviour, for whatever reason.

Eric, I am glad you feel OK about it. I personally get a bit more angry
about bullying behaviour. And to be fair, this personage was not
climbing down much -- even if he wasn't freaking overboard, totally. In
his/her favour, he/she did read the thread and get back to you. So I
presume, he/she follows what has been said further.

I think Scott and I have been entitled to chip in, because this has
also been about attitude toward the community, as a whole. You haven't
forgotten, too, that it has chewed up your time and that you did
actually deserve better.

If this behaviour has a bullying element to it, then he/she will know
that none of us are alone, in any sense.

Geoff

Scott Elcomb

unread,
Apr 11, 2006, 6:36:01 PM4/11/06
to Tiddl...@googlegroups.com
On 4/11/06, Eric Shulman <elsd...@gmail.com> wrote:
> So, let's all just relax and get back to the fun of TW...

=)

As I stated earlier, I really am quite peaceable. Fun and growth are
what I'm after.

If the anonymous person has read what I've said - and preferably
understood it - then I'm more than willing to let it drop. I dislike
conflict in the extreme, but I'm also not willing to put up with bully
tactics. Not from anyone.

The folks who put into TW, and other f/loss projects, deserve at least
that much.

And with that, I'll slink back into my little corner of cyberspace.
Take care all. :-)

Eric Shulman

unread,
Apr 12, 2006, 8:25:28 AM4/12/06
to TiddlyWiki
found the following notes at:
http://www.howtocreate.co.uk/tutorials/javascript/dombasics
---------------------------------
Also important to note is that although the specifications say that no
matter how much text exists between tags, it should all be in one text
node, in practice this is not always the case. In Opera 7 and
Mozilla/Netscape 6+, if the text is larger than a specific maximum
size, it is split into multiple text nodes. These text nodes will be
next to each other in the childNodes collection of the parent element.

In Opera, this maximum text node size is 32 KB. In
Mozilla/Firefox/Netscape 6+, it is 4 KB. Although the normalize()
method of the parent node(s) should be able to replace the multiple
text nodes with a single text node containing all the text, this only
works in Mozilla/Firefox/Netscape 6+. In Opera it puts all of the text
into a single node and then truncates that node to 32 KB, so the
contents of all except the first node are lost. Running the normalize
method can crash Internet Explorer 6 and does not exist in Internet
Explorer 5 on Windows.
---------------------------------

-e

Udo Borkowski

unread,
Apr 12, 2006, 8:38:53 AM4/12/06
to Tiddl...@googlegroups.com
Does anyone knows any details regarding this statement:
Running the normalize
method can crash Internet Explorer 6 ...
It may be interesting since TiddlyWiki core code is using it in the loadFromDiv


TiddlyWiki.prototype.loadFromDiv = function(srcID,idPrefix)
{
    if(document.normalize)
        document.normalize();



Udo

Jeremy Ruston

unread,
Apr 12, 2006, 9:29:40 AM4/12/06
to Tiddl...@googlegroups.com
> Running the normalize
> method can crash Internet Explorer 6 ...
> It may be interesting since TiddlyWiki core code is using it in the
> loadFromDiv

Just for the record (and for those with long memories) that was the
fix for the '4KB tiddler limit in Firefox' problem back last
August/September time.

Cheers

Jeremy

--
Jeremy Ruston
mailto:jer...@osmosoft.com
http://www.tiddlywiki.com

Daniel Baird

unread,
Apr 12, 2006, 8:02:08 PM4/12/06
to Tiddl...@googlegroups.com
On 12/04/06, Jeremy Ruston <jeremy...@gmail.com> wrote:

>  Running the normalize
> method can crash Internet Explorer 6 ...
>  It may be interesting since TiddlyWiki core code is using it in the
> loadFromDiv

Just for the record (and for those with long memories) that was the
fix for the '4KB tiddler limit in Firefox' problem back last
August/September time.


If I recall correctly, workarounds from people who didn't know about normalize() involved a dozen or so lines of code, that iterated over successive DOM text nodes, concatenating them into a single string.. urgh.  There's a solution there, but let's hope we don't have to resort to that.

;D

--
Daniel Baird
http://danielbaird.com (TiddlyW;nks! :: Whiteboard Koala :: Blog :: Things That Suck)
[[My webhost uptime is ~ 92%.. if no answer pls call again later!]]
Message has been deleted

Eric Shulman

unread,
Apr 12, 2006, 9:23:57 PM4/12/06
to TiddlyWiki
> If I recall correctly, workarounds from people who didn't know about
> normalize() involved a dozen or so lines of code, that iterated over
> successive DOM text nodes, concatenating them into a single string.. urgh.
> There's a solution there, but let's hope we don't have to resort to that.

actually, that is the recommended workaround solution from
quirksmode.org as well, and the code is fairly straighforward... to
make TW handle Opera's 32K limit, change the first line of
Tiddler.prototype.loadFromDiv()

from:

var text = Tiddler.unescapeLineBreaks(divRef.firstChild ?
divRef.firstChild.nodeValue : "");

to:

var text="";
var e=divRef.firstChild;
while (e && e.nodeName=="#text")
{ text+=Tiddler.unescapeLineBreaks(e.nodeValue);
e=e.nextSibling; }

-e

Daniel Baird

unread,
Apr 12, 2006, 9:28:10 PM4/12/06
to Tiddl...@googlegroups.com
On 13/04/06, Eric Shulman <elsd...@gmail.com> wrote:

var text="";
var e=divRef.firstChild;
while (e && e.nodeName=="#text")
        { text+=Tiddler.unescapeLineBreaks(e.nodeValue); e=e.nextSibling; }


That's actually not bad.. I was remembering some *much* more laborious code that that.  Should it be e.nodeType == 3 ?  I thought nodeName wasn't as well supported.

Getting a bit techie for the regular list, isn't it :)

Simon Baird

unread,
May 25, 2006, 9:40:34 AM5/25/06
to Tiddl...@googlegroups.com
Sorry this is ancient history but I feel compelled to make a comment. Eric, if someone reports a problem with your site they are doing you a favour. 99% of users will just close your window, mutter something and get on with their lives. So show some gratitude. So what if he didn't spend a few more minutes of his time and give you the exact error message and a screen shot. Maybe he has better things to do. How do you know? I thought his report of the problem was polite and clear. I didn't read the ensuing flame war but your response I consider to be rude and unprofessional. If you don't give about crap about Opera then fair enough. Perhaps your reply could have been "Sorry that my site doesn't work in your web browser but I don't care about Opera users". But seriously as a professional web designer why would you be so opposed to installing Opera to test your site. To Mr Anonymous I hope you won't presume all TiddlyWiki developers are as unappreciative of feedback.

Simon.

On 4/11/06, Eric Shulman <elsd...@gmail.com> wrote:
I test with IE6 and FF(1.0.7 , 1.5, and 1.5.0.1) on Windows XPSP2.  I

don't test Linux or Mac platforms because I don't have those platforms.


I don't bother to test Opera because TiddlyTools.com server log stats
show that in the last 60 days Opera visits to be only 27 out of the
last 29237 visits.  That is less than 1/10 of 1% of all visits.

I don't care if Opera is free.  Buy me a "QA" machine, and I will
install and test Opera (and other *marginal* browsers), but I will NOT
load up my primary workstation with all sorts of competing browsers
just to reproduce your problem.

BOTTOM LINE:
If you want me to try to correct a problem that you are experiencing,
then provide as much information as you can so that it is as easy as
possible for me to find the cause and determine a fix.  Do not rely on
me to replicate your computing environment just to test your particular
problem.  In fact, if you can handle the code, try to debug the problem
to find the cause yourself.  That way, I can just focus on working out
the fix... and if you can actually suggest a fix, that would be even
better.


-e
Eric Shulman
TiddlyTools / ELS Design Studios







--
Simon Baird <simon...@gmail.com>

Eric Shulman

unread,
May 25, 2006, 1:28:46 PM5/25/06
to TiddlyWiki
> I didn't read the ensuing flame war but your
> response I consider to be rude and unprofessional.

"mea culpa"... I will grant you that my initial response to "anon"
wasn't as polite and tactful as most of my publically posted messages.
In fact, I noted and apologized for my tone in my very next follow up
message and there was no "flame war".

Nonetheless, except for some messages of support from others in the TW
community, the rest of the thread focused on identifying the Opera
problem that had been so tersely reported in the first place. In fact,
once someone posted the text of the Opera error messages, I was able to
determine the cause of the problem (a 32K buffer limit in Opera) and
propose a core fix (which will be added to TW2.1), without ever needing
to install Opera!

respectfully,

Elise Springer

unread,
May 25, 2006, 3:01:13 PM5/25/06
to Tiddl...@googlegroups.com
Folks,

A propos of the recent mention of Opera: a little playing around with
Opera 9.0b2 for Mac (newly released) shows it to be *very* promising
for TiddlyWiki: it's noticeably more responsive than either Firefox/
Camino or Safari on my Mac... promptly loading sites which had always
tripped badly on Firefox's and Camino's maxscript timeout setting.

Although all my TW and ZiddlyWiki pages are happy (with heavy use of
forEachTiddler, NestedSliders, and various other goodies), there are
certainly fancy TW-based sites that don't behave on Opera, such as
the d3 "kinkless" GTD page (http://www.dcubed.ca/).

So, though developers will of course have various priorities, we
should all be alert that there may be a significant shift in the Mac
world toward Opera if my experience so far is typical (and
versiontracker reviews suggest that it is).

-Elise


Andrew Lister

unread,
May 25, 2006, 11:30:09 PM5/25/06
to TiddlyWiki
Opera 9.0b2 does seem very fast at loading a large TW file and at
displaying tiddlers. I'm getting an error, however, when I try to load
pages with the YourSearchPlugin, or the Import and Export tiddlers
plugin.

The full-text text of the error pop-up is as follows:

<tiddlywiki.abego-software.de>

Error in systemConfig tiddler 'ImportTiddlersPlugin' - [Error:
name: SyntaxError

message: Statement on line 304: Syntax error in call to eval: line 565
:
g
--^
Backtrace:
Line 304 of inline#2 script in http://tiddlywiki.abego-software.de/
window.eval(customConfig);
Line 291 of inline#2 script in http://tiddlywiki.abego-software.de/


var ex = processConfig(configTiddlers[t].text);

Line 256 of inline#2 script in http://tiddlywiki.abego-software.de/

Daniel Baird

unread,
May 25, 2006, 11:43:12 PM5/25/06
to Tiddl...@googlegroups.com
On 5/26/06, Andrew Lister <lis...@post.queensu.ca> wrote:

Opera 9.0b2 does seem very fast at loading a large TW file and at
displaying tiddlers.  I'm getting an error, however, when I try to load
pages with the YourSearchPlugin, or the Import and Export tiddlers
plugin.

There's a known problem with Opera and tiddlers that are larger than 32k.  This might not be the problem, but I'm guessing YourSearchPlugin is long enough to trigger the error.

TiddlyWiki 2.1 will have a fix for the problem (or, Opera could implement document.normalize() the way other browsers do, but I guess they haven't yet).  If you want to use TW in the meantime, you can implement the fix yourself by editing the source of your TW: http://groups.google.com/group/TiddlyWiki/browse_frm/thread/52dce9337137d616/0e94749d045f0eb4?q=Opera+32K+tiddler+limit+&rnum=1#0e94749d045f0eb4

Cheers

;Daniel

Udo Borkowski

unread,
May 26, 2006, 2:12:50 AM5/26/06
to Tiddl...@googlegroups.com
I can confirm that the YourSearchPlugin is larger than 32k.


Udo

Andrew Lister

unread,
May 26, 2006, 12:57:00 PM5/26/06
to TiddlyWiki
Sorry, I missed that thread.

But after making the indicated change to the TW source, I get a new
error message:

Error in systemConfig tiddler 'ImportTiddlersPlugin' - [Error:
name: SyntaxError

message: Statement on line 427: Syntax error in call to eval: line 498
:
status='
---------^
Backtrace:
Line 427 of inline#2 script in
http://post.queensu.ca/~lister/TestTW.html
window.eval(customConfig);
Line 414 of inline#2 script in
http://post.queensu.ca/~lister/TestTW.html


var ex = processConfig(configTiddlers[t].text);

Line 379 of inline#2 script in
http://post.queensu.ca/~lister/TestTW.html


loadSystemConfig();
Line 1 of script
main();
At unknown location
[statement source code not available]

]

I've posted an empty TW with just the change to the source code and the
three plugins (YourSeach, Import, and Export) here:

http://post.queensu.ca/%7Elister/TestTW.html

Maybe I've copied and pasted the code wrong? Here's what it looks
like:

// Load a tiddler from an HTML DIV. The caller should make sure to
later call Tiddler.changed()
Tiddler.prototype.loadFromDiv = function(divRef,title)
{


var text="";
var e=divRef.firstChild;
while (e && e.nodeName=="#text")
{ text+=Tiddler.unescapeLineBreaks(e.nodeValue);
e=e.nextSibling; }

var modifier = divRef.getAttribute("modifier");
var modified =
Date.convertFromYYYYMMDDHHMM(divRef.getAttribute("modified"));
var c = divRef.getAttribute("created");
var created = c ? Date.convertFromYYYYMMDDHHMM(c) : modified;
var tags = divRef.getAttribute("tags");
this.assign(title,text,modifier,modified,tags,created);
return this;
}

Reply all
Reply to author
Forward
0 new messages