Kestrel and Y!Mail


So Kestrel betas are flying out and high on the list of changes is a big, black important bullet point saying "improved site compatibility".

So, I can hear you asking: why is Yahoo mail beta useless in the Kestrel preview? In fact, it is usable in 9.23 but completely broken in 9.5 alpha..

Patience, please. Precisely because some of the new features like getters and setters that are meant to improve compatibility when we finish them are work in progress, Y!Mail is currently rather broken. It won't take us many weekly builds to get things sorted.

There are two big-ish issues, one is that getters and setters don't work when defined on DOM prototype objects and the other is Mozilla's bug 45566 which we've "fixed" in Opera and it turns out Y!Mail really REALLY prefers the broken Firefox implementation. I have a feeling they'll never be able to fix that bug, they'll have to label it a feature in the end.. so we had better be bugfeature compatible. 🙄 Naturally, DOMParser is their non-standardised extension so they can do what they want and we have to reverse engineer and obey.

28 thoughts on “Kestrel and Y!Mail

  1. There are two big-ish issues, one is that getters and setters don't work when defined on DOM prototype objects

    I was experimenting a bit ( http://my.opera.com/community/forums/topic.dml?id=203531 ) and it appeared to be working for me. When page changed element.filters.alpha.opacity it actually changed value of the opacity property.EDIT:I guess you are saying that it won't work when defining on prototype itself…

  2. the broken Y!Mail was the second thing i saw in the new alfa, but pretty quickly i switched back and everything seemed okey..except for the fact that even the old interface has some new bugs like the "check mail" and "compose" buttons being on separate lines instead of being on the same line as it used to be.Don't worry we can live without Y!Mail Beta.

  3. Um, reverse engineer and obey? How about "collaborate and try to come up with something agreeable to both parties" or if that doesn't work, "read Mozilla's implementation rather than wasting cycles reverse engineering". See, there are advantages to open source both in the collaborative side of things and in the actual open source code part :-)- A

  4. Asa, Mozilla's implementation of error reporting in DOMParser is so insane you really don't *want* to implement it.There is a standard, DOM 3 LS, that defines this stuff. It might be "a horrendous API" to quote Ian Hickson, yet it does define this obviously needed part of functionality. That alone makes it preferable over anything else. Opera supports DOM 3 LS since version 8.Even IE has a much better way to deal with these problems.

  5. @Asa – It's probably quicker and easier to reverse engineer than wading through unfamiliar, complex, C++ code.This also probably shows why it's not a good idea to leave bugs sitting around unfixed for seven (!) years. Web sites will build on your bugs and start relying on them. Once enough do that (and I'd say seven years to long enough for quite a few to do so), then you're stuck with your bug, and so are your fellow browser developer contemporaries, who are forced to implement your extensions and bugs to be "compatible".

  6. Web sites will build on your bugs

    Yeap.. that's the same problem as with all those capturing event listeners' problems.But, allas, what can we do when the two most used browsers' engines have terribly long and slow development cycles?

  7. Asa: regarding the collaboration there already is a spec (as mentioned above) – I don't know why the W3C's standardised API isn't simpler and better but at least we have supported it for ages – where is your document.implementation.createLSParser in Firefox? You've got the non-standard window.DOMParser equivalent and everybody else is stuck implementing that because that's what websites rely on.BTW I implemented Mozilla's bug 45566 in browser.js for Kestrel 😉 so if you guys check for updates in 9.5 you'll get the new file and a more functional Yahoo mail beta. Still some issues I'm figuring out, but the UI mostly works now I think.

  8. If Mozilla hasn't fixed it in 7 years they won't do it now. Seems Safari also supports Mozilla version of DOMParser. So there isn't much choice! and they blame Microsoft for broken web.

  9. It's not just Yahoo! Mail. Also yahoo finances, yahoo search engine marketing and probably more (what I don;t know as I don't use anything else in Yahoo).New features won't help Opera to get much of the market share. Compatibility is the key.

  10. Yahoo mail Beta is a very powerful email system. It's basically a full featured drag and drop system like MS Outlook. You have to take into account how many users actually are Yahoo Mail users as they will most likely switch to the beta version soon. Any work around on supporting the DOM Parser error thrower would be great. My use of Yahoo's websites take up about 80% of my web browsing. So I cannot live with an incompatible browser for Yahoo. I've been testing 9.5 alpha so far and it's more compatible on some sites. It's also very fast, which was the reason I turned to Opera. With Yahoo sites it can be awfully slow because of some image hanging issues. I hope.. and hope that Opera will become compatible sooner than later.

  11. *hallvors= I tried checking for updates in Opera9.5a, and got the usual "you are using the latest version of Opera." The New Yahoo! Mail (formerly beta) still gives the error pop-ups and fails to load properly. Are you sure this has been released to auto-updates?Seriously, for me, as well as I'm sure many others, compatibility is the biggest roadblock when it comes to using Opera. Yahoo! Mail is the most popular Email service on earth, and it is currently completely broken in your browser. I know the somehow more popular browsers make this a daunting task, but it is necessary at all costs. We need Opera to fully support the New Y!Mail as soon as possible.I hope to soon see the greatest web mail and the greatest web browser get along.

  12. netster007x: that's odd! Could you open your browser.js and search for the line

    // 280221, Faking a Firefox-compatible DOMParser

    – if it is there you should have the newest version!It is possible that you have a different version of Yahoo mail. They tend to roll out versions slowly across their user base, and I may well have fixed the problems in the version I see but missed an issue in the version they send you. I'll keep testing here..

  13. hallvors,I have that version and unfortunately Yahoo Mail Beta does not work. (this is without the opera:config#UserPrefs|BrowserJavaScript is set to 2. With the user config set to 2, I get the original error which I have posted to the forums in the alpha release. (it displays everything except doesn't load the message which you have chosen) http://my.opera.com/community/forums/topic.dml?id=203232I get an error first of <us.mg2.mail.yahoo.com>Yahoo! Mail Beta experienced a login error: name:Errormessage:Generic error**********************************then I get this error:<us.mg2.mail.yahoo.com>Yahoo! Mail Beta experienced a login error: name:TypeErrormessage:Statement on line 111: Cannot convert undefined or null to ObjectBacktrace: Line 111 of linked script http://mail.yimg.com/us.js.yimg.com/lib/pim/r/dclient/f/js/us/52ca84d452dc96ebb304ef5a95418aee_1.js: In function attachFolderNodesToFolders function attachFolderNodesToFolders(){var Q=document.getElementById("foldersTableBody");var a=Q.childNodes;var H=folders.documentElement;var h=null;for(var T=0;T<a.length;T++){var Y=a[T];var F=Y.className;if(!F){continue;}var A=F.split(" ")[0];if(!A){continue;}if(A=="folderRow"&&Y.onmouseup){var g=uE.O(Y); …**********************************Then I get this error:<us.mg2.mail.yahoo.com>Yahoo! Mail Beta experienced a login error: Login error:name:Errormessage:Generic error**************then it's just a blank grey screen. Maybe I'm using an old beta verson of Yahoo Mail?? I wouldn't think so.

  14. bobwonderful: I'm mystified, because the "Faking a Firefox-compatible DOMParser" patch is meant to take care of exactly the problem that causes the "Generic error" popup! If the patch is indeed correctly applied I must have missed one of the conditions that can cause this.In any case I'll keep testing and we now have a rather nice collection of test accounts "located" on different servers at Yahoo so I'm pretty sure we'll get to the bottom of it during the next week or so. Thanks for any patience you can still muster..

  15. Thank Hallvors for making this patch work! I'm glad that something can be done. Opera is a hell of a browser and it works better now than ever. The only major issue I've bumped into is the Yahoo Mail Beta issue. Before Kestrel there were still a few sites which wouldn't work properly. Once this is handled by Opera if the folks at Yahoo won't fool with the bug in Firefox, then it will once be my favorite browser once again!!Thanks again for all of your dedication to this great browser. Maybe some one here can fix firefox's bug and have them release a new fix, then Yahoo will have to deal with the issue.

  16. *hallvors… I checked the browser.js file and yes, it did have the line you mentioned. Then I tried accessing Y!Mail (beta) and it works much better than before on Kestrel. I no longer get that error message, and messages generally display when clicked on. One problem: I can't double-click a message w/out that right-click thing coming up (what's the pref for that again). Also, chat is completely dead. Dragging a message to a folder causes the whole page's text to be highlighted, and the checkbox/X is disabled. Also, the app can just freeze up after a little while. RSS feed text was giant. Plus, the calendar strip's right scroll arrow is a dead white box. I couldn't get the gotodate button to work, either. Not to mention the widespread, minor layout flaws.I'm on farm (collection of servers) 308, Version 0.6.10 build:651.50 – built on 08/20/2007 04:41 PM. There is a new update being released (technically it takes Y!MB out of beta -yet there will still be regular updates). Hopefully that won't further break compatibility. Tanks for your great work in patching this crucial problem. I hope to use Y!Mail in Opera soon.screenshot of Y!MB crashed in Opera9.5ahttp://farm2.static.flickr.com/1418/1388459702_2cca8f6e82_o.jpg

  17. Cool, we're getting somewhere :-)The "hotclick menu" can be disabled in Preferences > Advanced > Toolbars.During last night and today I've figured out the chat problems, patches or core fixes will be appearing in due course. The text highlight issue is also known and work in progress (it's "just" a cosmetic problem but a rather ugly one).I have not noticed freezes, RSS works fine for me. I've seen the calendar issues without having analysed them yet – will get there but I'll probably do some Google stuff first next week since I've spent so much time on Yahoo this week. Some balance is a good thing 🙂

  18. That "hotclick menu" option seems to be strangely placed. I guess it kinda makes sense because that's where menu setup is located, but I thought of it as more of a mouse preference. I took a look at yesterdays post, I started w/ "one thing…" then listed several things. Whoops!So I'm guessing browser.js is updated automatically in the background, and doesn't have to do w/ the browser's check for updates.Thanks for fighting the good fight.

  19. For those who have just recently viewed this blog, some of the YahooMail Beta fixes have already been implemented in the updated Opera.js, which can be had just by using Help>Check for Updates. There still is a bug in the Yahoo beta for some users like me who apparently still get the original javascript error issue and makes Yahoo mail unusable. Hallvors is trying to pinpoint what the issue is. I'm thinking it has to do with specific servers running a different version of code. But who knows till Hallvors figures this out with Yahoo! I'm glad Opera now has someone who has a connection to Yahoo mail developers.

  20. Hey bobwonderful, check your version, build, and farm by opening Y!Mail (beta) -you may need to use IE or Fx for this- and viewing the source. Near the bottom you should see version, build, release date, farm, server. Post that (copy&paste).

  21. Hey hallvors, I noticed another glitch: New tabs (compose, message, search results…) tend to dissapear when changing focus from them to the Home tab. They also tend to reappear when opening another new tab.Heard the news about Y! aquiring Zimbra? I wonder if this could eventually have an effect on the Y!Mail/Opera issue (Zimbra appears to completely lock out Opera).http://cybernetnews.com/2007/09/17/yahoo-to-acquire-zimbra-for-350-million/

  22. Nester007x,Hallvors showed me the build and farm by cntl, alt, shift at the same time and click on help. What is really bugging me is that one of my yahoo mail accounts works okay with the newest changes in the browser.js code, the other one which is my main one still has issues. We are scratching our heads wondering why this works for one and not the other.

  23. So, what farm/build/version are the 2 accounts on?(It should say "webxxxyy.mail.mudd.yahoo.com" where xxx is the farm and yy is the server. The farm (basically a collecion of servers each with the same Y!Mail version/build) is the more important piece of info, as it stays constant for an account. The server should be insignificant, as it's different each session, and different servers on the same farm should be identical to the user.)

  24. web50307.mail.re2.yahoo.com was the problem one. I think they found the bug recently as it seemed to work finally on that specific account.

Leave a reply to whiteeagle1 Cancel reply