status update

maintained by Tim Rowley <tor@cs.brown.edu>

Last Updated Saturday July 29, 2000

This status update page is updated every weekend. To get updates and news throughout the week you are invited to check out mozillaZine, a site devoted to Mozilla advocacy.

Previous Updates


Friends of the Tree

  • I would like to nominate Peter Van der Beken and Axel Hecht for their hard work and continued support on the integration of Transformiix within Mozilla. I have temporarily been away from the project for a couple weeks and they have stepped up their support in my absence. Peter has done, and continues to do, a great job on the integration code. Axel has been working hard on the project build and platform issues as well as helping snuff out some of the current bugs and other integration related issues. Without their hardwork the project definately wouldn't been where it is today, and I appreciate their efforts. - Keith Visco
Module Updates
NSS
July 21
Submitted by Wan-Teh Chang <wtc@netscape.com>
We continued to work on NSS 3.1. This week Nelson checked in numerous enhancements to the MPI bignum package, including new functions, bug fixes, and performance optimizations. Ian completed and checked in the the ARCFour and PRNG codes.
XML/DOM
July 22
Submitted by Nisheeth Ranjan <nisheeth@netscape.com>

Summary

  • We resolved 9 bugs last week (Bugzilla query).
  • We have no dogfood+ bugs and 5 nsbeta2+ bugs (jst (2), nisheeth (3))
  • This report was done in Netscape 6's Composer!
  • Peter Van der Beken (Peter.Vanderbeken@pandora.be) has XSL transforms working in his local Mozilla Mac Build. I'm in the middle of code reviewing his patches.

People

  • Nisheeth will attend the XML Query Face to Face meeting in Seattle on July 25th and 26th.
  • Tom is on sabbatical till August 25th.

Accomplishments

  • Harish Dhurvasula (harishd)
    • 45358 - Helped, Gagan, in getting more info. on this beta2+ bug
    • Attended O'Reilly conference on Wednesday and Thursday
    • Triaged Clayton's list and Rickg's list as much as I could ( ~ 6 bugs )
    • Came across a case where document.write() caused the browser to crash in strict dtd. Debugged it and understood the reason for the crash.
    • Working on a plan to report HTML errors for Strict DTD.
  • Heikki Toivonen (heikki)
    • Triaged the bug lists of joki and myself.
    • Was able to resolve 42827 (INVALID), 45757 (INVALID), 44567 (WORKSFORME)
    • Familiarized myself with the W3C specs, especially DOM events
    • Starting to get the hang of Mozilla's implementation of DOM events
    • Installed Linux on my second computer so now I can take a look at Linux bugs as well.
  • Johnny Stenback (jst)
    • Sheriffed the tree on Thursday
    • Worked on triaging new (or reassigned) bugs and also fixed some of those (in my tree)
    • Worked on nsbeta2+ bug 45019
    • Talked with Rick Potts about taking over some of his nsbeta2+ (and non nsbeta2+ too) bugs
  • Nisheeth Ranjan (nisheeth)
    • Started code reviewing Peter Van der Beken's patches that enable XSL transforms within Mozilla. I have a couple of emails from Peter that answer my initial questions sitting in my inbox that I hope to get to early next week.
    • Posted Chris Waterson's instructions on how to run the layout regression tests on mozilla.org (http://www.mozilla.org/newlayout/regress.html).
    • Took session history related bugs from Rick Potts.
    • Sheriffed the tree on Thursday night.
    • Attended Managing@AOL and Compensation@AOL classes on Thursday.
    • Attended the XML Query Working Group teleconference on Wednesday.

Plans for next week

  • Harish Dhurvasula (harishd)
    Ordering based on priority
    • Reach out to help fixing beta2+ bugs ( most probably Ruslan's).
    • Get my bug list under control ( have to do this desperately ).
    • Make sure that SCRIPTs work properly in strict DTD ( very annoying ).
    • Enable NOSCRIPT for strict DTD ( a definite candidate for beta3 ).
    • Enable reporting errors for strict DTD ( will be cool to have ).
  • Heikki Toivonen (heikki)
    • Start fixing DOM Event bugs.
  • Johnny Stenback (jst)
    • Fixing my nsbeta2+ bugs (the ones that got reassigned to me this week)
    • Continuing working on my untriaged bugs.
  • Nisheeth Ranjan (nisheeth)
    • Work on nsbeta2+ bugs.
    • Attend the XML Query WG face to face meeting on Tuesday and Wednesday.

Lowlights

  • None.

Dogfood:

  • None.

Beta Stoppers:

  • 5 nsbeta2+ bugs up from 1 nsbeta2+ bug last week. We pulled most of the new bugs from Rick Pott's nsbeta2+ bug list in an effort to unburden him before he goes on vacation next week.
  • 28572 (Onunload fires when link opens in different frame or window) - Pulled from Rick's list. ETA 7/27
  • 30627 (Frameset onload handler must fire after child documents) - Pulled from Rick's list. ETA 7/25
  • 43472 (Crash on exit in optimized full circle enabled builds) - As of Friday evening, this is finally reproducable in a debug build. If you open a file in a new window and then quit the app, the crash on exit occurs. Now the debugging can begin...
  • 45663 (Crash reloading page after switching to classic theme) - Pulled from Rick's list on Friday. Not looked at in detail yet.
  • 18321 (Javascript frame history doesn't work well with SH) - Pulled from Rick's list on Friday. Not looked at in detail yet.

Features

  • None

Issues

  • None
Escalations
  • None
XPToolkit
July 22
Submitted by Peter Trudelle <trudelle@netscape.com>

Summary

  • The XPToolkit team resolved 39 bugs in the last week, fixing 20 of these, including 11 '+'. For details, see our resolved bug list.

Highlights

  • Mike Pinkerton (pinkertoni)
  • Checked in some patches for pnunn and saari
  • Helped sfraser with mac GFX problems (bug 42289)
  • Aided valeski in his webshell -> docshell landing (45723)
  • Fixed some small beta2+ crashers, see our list
  • Chris Saari (saari)
  • Fixed 2 bugs, see our list
  • Daniel Matejka (danm):
  • Fixed 3 bugs, see our list
  • Stuart Parmenter (pavlov):
  • Fixed 45439 [nsbeta2+]crash, nsbeta3 Crash when dbl click in urlbar; clipboard problem
  • David Hyatt (hyatt):
  • Helped bryner with selection/current item issues in tree
  • Helped waterson with RDF/XUL template issue
  • Brian Ryner (bryner)
    • Fixed 9 bugs, including linux filepicker bug with absolute paths (blocked dogfood bug 45986)

Lowlights

  • Gary Frattarola has decided that Netscape was not a good fit for him, and resigned. We're sorry to see him go, but wish him well wherever he lands.

Priorities

  • All:
    • Fix new bugs as they get the '+'.
    • Help out anywhere possible.
    • Get nsbeta3 bug lists triaged.
  • saari:
  • 39655 [nsbeta2+] 7/24nsbeta2, nsbeta3Switch folder after resize msg pane hides header envelope un?
  • forward merge joki's changes
  • hyatt:
  • 45951 [nsbeta2+]nsbeta2Installing profile chrome hides global chrome.

Dogfood

Beta Stoppers

  • 2 beta stoppers, both shown as priorities above. Load balanced as much as possible ;-)

People

  • Stuart Parmenter was away at a Linux developers conference most of this past week, returning Monday.
  • Dan Rosen starts as a regular full-time XPToolkit engineer on Monday!
  • Eric Vaughan will be on vacation for the next month. David Hyatt will be the point of contact for covering box, grid and other stuff Eric owns.
Necko/Imglib
July 24
Submitted by Gagan Saksena <gagan@netscape.com>

Summary

  • Several bug fixes. Almost zaro with nsbeta2+
  • Fixed the SSL connect problem!
  • gagan attended the Open Source Conference.

Highlights

  • ruslan
    • Fixed the SSL Connect and the Jar protocol nsbeta2+ bugs.
  • neeti
    • Fixed 38244, 46091, 46095
    • Working on 40084
  • pnunn
    • bug#30852: [nsbeta2+] closed/fixed : found good fix for view-images too! cleaned up code for review. got review from Neeti.
    • bug#44781: marked FUTURE. cmyk support for jpg. enhancement.
    • bug#40916: marked as dupe of 36694.
    • Current Bug Work: bug# 46032 : [nsbeta2+] fix for 30852 broke printing. Need to add view-source img load attribute when we have a printing context.
    • bug# 41187: Communicator 4.x names the file "gopher-sound.gif" but mozilla names it "gopher-audio.gif". Users are upset that they need to change their references. If I copy gopher-audio.gif to gopher-sound.gif, then we will have both. The major work is changing build and install scripts. I have it all ready except for the mac build scripts and the xpinstall scripts.
    • bug#46049: [probably will be nsbeta2+] fix for 30852 puts added channel load attribute on loadgroup.
    • bug# 40084: determined how to reproduce crash. Documented for Neeti in bug report.
  • gagan
    • attended the Open Source Conference.
    • resolved bugs.
    • wrote a document on proxy auto config (will move it to mozilla.org soon)

Lowlights

  • None.

Dogfood Bugs

  • We have 1 dogfood + bug-- Cache does not store latest value of pages. This seems to have been reopened though it works for us. We are investigating whether this is indeed still a valid bug.

Beta Stoppers

  • We have 7 nsbeta2+ bugs. 3 of which should be fixed tonite.

Risks

  • None.

Features

  • None.

Issues/Escalations

  • None.
Architecture
July 24
Submitted by Warren Harris <warrin@netscape.com>

Highlights

  • nsbeta2+ bug count down to 1 for the group!
  • Jar file packaging is getting close.
  • Found optimization in JavaScript that reduces malloc/free count by 20,000 calls, bringing up first window.

Engineering Status

  • waterson
    • Down to zarro [nsbeta2+] boogs. Almost. Fixed two [nsbeta2+] plugin bugs. Implemented "XPCOM plugin" loading mechanism to unblock external developers. Pending review from av, probably be checked in today or Monday.
    • Started working on nsbeta3 stuff. Have a couple of fixes queued up and ready to go for next week.
    • Helped hyatt get the XUL rewrite of his website working.
  • vidur
    • Bug fixing and cleanup in the XML Extras component.
    • Worked with harishd and scc to come up with a proposed solution for parser memory usage related to tokens and text data. Harish will make parser tokens arena allocated. Scott is working on a segmented string class which will also allow substrings to point directly into its buffers.
    • Continued work on the API Review for our embedding API.
    • Spent a lot of time this week discussing web application model ideas with people inside and outside CPD.
  • rayw
    • no status
  • waldemar
    • Re-reviewed JavaScript 1.5 manual and found many errors in sections not changed for 1.5, as well as errors in corrected text.
    • Led sessions about and wrote summary of last week's Microsoft PDC events.
    • Installed a clean Windows 2000 build on my PC, which is needed to look at the PDC cd's. Still reinstalling all of my PC applications, which were wiped out by the clean install.
  • rpotts
    • no status (has left for 3 week vacation)
  • jband
    • Fixed misc. bugs. One notable bug was a perf bug in JS that I discovered. Adding a small stack based buffer saved us over 20,000 malloc/free call pairs in getting the first window up. This is about 10% of those calls. No footprint gains, unfortunately.
    • Started helping on vidur's web applications stuff.
  • warren
    • Working with dprice on jar file packaging.
    • Fixing status notifications from necko. Moving string bundle access/creation out of necko and into caller. Hope to check in today. (bugs 42107, 40506)
    • Spent some time trying to get the zip packaging code going on the Mac. Found a bug and reported it to the author. Looking at a workaround now.
  • dprice
    • Jar file manifests are done save for skins. Need to track down problem starting the browser because it can't load the overlay files correctly.
MailNews
July 24
Submitted by Steve Elmer <selmer@netscape.com>

Thanks! to:

  • Scott MacGregor for getting WebMail integration up off the floor (again) - still waiting on AOL to enable access...
  • Thanks to everyone who triaged their own bug list! (And special thanks to David for covering Seth's and Jeff's bugs while they're away)
  • Alecf

Issues

  • Large number of beta3 nominees...

Vacations & Sabbaticals!

  • JeffT 7/10-9/5
  • SSpitzer 7/5-8/26
  • CHuang 7/24-8/11
  • Bienvenu 7/31-8/11
  • RHP 8/18-8/27

MailNews

Profile Manager

  • Closing out Activation bugs

CCK

  • Varada has kept the CCK builds working.
XPCOM leak tutorial
July 24
Submitted by L. David Baron <dbaron@fas.harvard.edu>

I've written a tutorial on finding leaks of XPCOM objects. It's an annotated list of the steps I took to find a leak (in a roundabout way, for demonstration). I explain how I use the refcount balancer, including the new nsCOMPtr tools, and also quickly describe js_LiveThingToFind.

If there are any ways it can be improved, please let me know.

http://www.mozilla.org/performance/leak-tutorial.html

Footprint/Performance
July 26
Submitted by Vidur Apparao <vidur@netscape.com>
  1. Parser token and string usage
    Description: The parser currently heap allocates small CToken instances and keeps them on a recycler list "for performance reasons". The recycler list is currently unbounded in size. Text tokens also use nsStrings to store copies of their text data - also heap allocated. The overall memory usage shows up high in bloatblame logs. The working set memory usage also stays pretty high because of the unbounded token recycler.
    Module owner: harishd@netscape.com
    Task owner: harishd@netscape.com, scc@netscape.com, vidur@netscape.com
    Status: Harish is looking at arena allocating the token objects. Scott is working on a segmented string implementation which can deal with substrings that share the underlying buffer for the token strings.
    Bugs: 46702
  2. "Super global" for JavaScript
    Description: Currently each DocShell has a script context and script global object associated with it. For each script global object, we initialize the JavaScript core classes and some DOM classes per document in the shell. This redundancy has both performance and bloat repercussions. The thought is that we might be able to have "super global" object on which the core classes are defined. This would be the JS prototype of the per shell script global.
    Module owner: jst@netscape.com
    Task owner: jband@netscape.com, vidur@netscape.com
    Status: JBand to determine the memory used by the core classes. JBand, Vidur and Johnny to determine what could break with a super global.
    Bugs: 46703
  3. Image Library
    Description: We have anecdotal information that the image memory cache (not the network memory cache) is not being hit very often. We also don't know if the size of the cache is bounded and if it a memory flush listener.
    Module owner: pnunn@netscape.com
    Task owner: syd@netscape.com (?)
    Status: Syd to work with Pam to analyze image memory cache usage and size limits.
    Bugs: 46704
  4. CSS Loader
    Description: Analysis from dougt@netscape.com shows that we are loading the same CSS files from disk at startup time redundantly. The CSS Loader should be caching compiled CSS style sheets so that we don't hit the disk. Chris' suspicion is that we aren't hitting the cache for @imported stylesheets. Why are we loading the CSS files multiple times? If the cache does exist, is it bounded? It needs to be a memory flush listener.
    Module owner: pierre@netscape.com, attinasi@netscape.com
    Task owner: pierre@netscape.com
    Status: Pierre to investigate why we are loading the CSS files multiple times and not hitting the CSS Loader cache.
    Bugs: 46548
  5. When to flush memory
    Description: When should the memory flushers be run? The current thinking is to have a combination of a timer and an IsLowMemory predicate (requires hooking into malloc/free, new/delete for each platform) to determine when to run them.
    Task owner: warren@netscape.com, wade@netscape.com
    Status: Wade to investigate implementing the IsLowMemory perdicate.
    Bugs: 44352
  6. .xpt file loading
    Description: Currently we're loading more type library information than we necessarily use because of the way xpt files are created as part of the module build process. Better factoring of the xpt files could result in less loading at startup time and less memory usage. Also, the type library info needs to be a memory flush listener.
    Module owner: jband@netscape.com, mccabe@netscape.com
    Task owner: jband@netscape.com
    Status: JBand to investigate either better factoring of typelibs in xpt files or the idea of putting all of the individual small xpt files into a single zip file.
    Bugs: 46707
  7. Networking memory/disk cache
    Description: We have anecdotal information that we're not hitting the networking memory/disk caches that often. We need to do analysis of cache hit rates.
    Module owner: neeti@netscape.com
    Task owner: gagan@netscape.com
    Status: Gagan and Neeti to do analysis
    Bugs: 46708
  8. Component registry loading
    Description: We load and inflate the component registry at startup time. We've heard anecdotally that the in-memory cost of the component registry is 1-3 megs. This hit could become worse if/when we implement RayW's new scheme for prog IDs. Need to see if we can use a better scheme to reduce bloat.
    Module owner: rayw@netscape.com
    Task owner: waterson@netscape.com, dougt@netscape.com
    Status: Chris and Doug to do analysis of memory usage so we have real numbers.
    Bugs: 46709
  9. String bundles
    Description: StringKeys used by string bundle hashtables have showed up fairly high on the bloatblame list. Each StringKey holds an AutoString which seems wasteful for the keys in the hashtable itself (the AutoStrings are useful during lookup when the key is stack allocated). We need to reduce the size of StringKeys. Also, could string bundles be arena allocated?
    Module owner: ?
    Task owner: warren@netscape.com
    Status: Warren to look into alternatives for StringKeys and string bundle allocation.
    Bugs: 46711, 46712
  10. Bloatblame FE
    Description: Currently bloatblame is a post-processing tool. We believe we can get much more useful information if we can get more real-time data of module memory usage. Brendan has been working on the back-end of the real-time bloatblame. Wade and Pavlov are both looking into a front-end to display/graph the data.
    Module owner: brendan@netscape.com
    Task owner: wade@netscape.com, pavlov@netscape.com
    Status: Brendan is on vacation and we believe that the currently checked in version does not implement all the back-end changes necessary. We may need to wait till Brendan returns.
    Bugs: 46714
  11. Chrome cache analysis
    Description: Dougt's analysis about redundant file loading at startup time shows that we're also loading the same JS chrome file multiple times. We need to figure out why the chrome cache isn't sharing compiled versions of the JavaScript.
    Module owner: waterson@netscape.com
    Task owner: waterson@netscape.com
    Status: Chris to determine what's happening here
    Bugs: 46129
  12. Mail/New bloat analysis
    Description: Does mail/news have bloat analysis tasks that should go on this list?
    Module owner: bienvenu@netscape.com, alecf@flett.org
    Task owner: waterson@netscape.com
    Status: Chris to get David or Alec to come to the meeting and send us a list of tasks.
    Bugs: 46716
BiDi (Hebrew and Arabic)
July 28
Submitted by Mike Kaply <pspmikek@yahoo.com>

We have the code merged to the current level and are waiting for the approval to check it in now that M17 and nsbeta2 have branched.

We will also be putting together a Windos binary based on the M17 drop.

LDAP
July 28
Submitted by Dan Mosedale <dmose@netscape.com>

Highlight

  • ldap: URL support now builds and works on Windows. Set ENABLE_LDAP in your environment before building and then build as usual.

Priorities

  • continue work on the RDF datasource
  • track down ASYNC_CONNECT problem on linux
MailNews Performance Test Results
July 29
Submitted by Pratik Dhupia <pratickd@netscape.com>

MailNews Performance test results for Win32, Linux 6.1 and MAC OS have been updated and can be viewed http://www.mozilla.org/mailnews/ under Quality Assurance. Tested on comm build 2000-07-27-08, M18.

Scroll bar performance getting better in windows, mac and linux.

Previous Updates