Suresh Duddi has our XPCOM update this week:
- firstname.lastname@example.org eliminated
4 dll loads (intl charset converters) at startup
- email@example.com eliminated
3 dll loads (appshell components) at startup
- XPCOM has been branched (XPCOM_M8_PERF_BRANCH) and will land
monday. Optimizations in the branch include:
Our Necko update is from
- By defining NECKO=1 (or the --enable-necko configure flag
in Linux) in your environment, you should be able to build with
necko on Linux and Windows.
- Gordon is hot on the heals with the Mac build, but it will
probably be another day or two.
- Rick and Gagan have been working on the http protocol itself.
The stand-alone test is able to fetch numerous pages without leaking
(substantially) or crashing. (http 1.0 only for now.) No cache
yet though, so don't expect blinding speed.
- file: and resource: protocols are there, although file: still
needs some work (on my plate).
- The basics for the about: protocol are there, but there's
nothing to talk about yet.
- David Hyatt is working on the chrome: protocol which is required
to launch the browser. This is a pretty straightforward translation
from one URL to another.
- Judson and I have been working on the NECKO ifdefs in the
rest of the codebase, and Jud has html showing up in viewer. Now
we're trying to get past a few issues to get it to work with apprunner:
filetype->mime mapping, chrome protocol, massive doc loader damage.
- Jevering even thinks he's helping out. :-)
Sorry for not having more details, but we're all working pretty
hard to pull this together. We're this ->| |<- close.
"I'm back from sabbatical, and thats it..."
test library to include tests for the LiveConnect connectivity layer between
to verify his recent update to the LiveConnect implementation
in Rhino. "
John Bandauer writes:
help I've written a proposal for something called XPJS Components. This
will be a system to allow aryone to implement first class xpcom
will not be limited to browser windows. They will be accessed
and used 'just like' native xpcom components and services by any
native or JS code. I've been spending as much time this week kicking
around ideas and developing plans then actual coding. We are:
working on a coclass-like system for xpcom, working out a clsid/progid
strategy, and attacking xptcall 'this adjustor' issues. With brendan's
help I've implemented a JSArgumentFormatter that will allow code
which is working with the JS api to easily wrap and unwrap xpcom
objects to and from JS objects. Christine
Begle is laying plans for coherent test frameworks for xpidl
We've been spending the last couple weeks looking into inline
plugin (<embed> tag) support on Linux/Unix. Our first priority
is focusing on supporting the new XPCOM based plugins as defined
by the appropriate interfaces in mozilla/modules/plugin/public/.
The first step that we have been working on has been to clean up
the sample plugin code in mozilla/modules/plugin/public/. Also
we've looked at ways in which we could associate a plugin's mime
type with the appropriate CLSID. What seems to work so far, and
seems to be consistent with how content viewers in the layout engine
and protocol handlers in Necko work, is to define a ProgID with
a given prefix and concatonate the mime type to construct a full
ProgID for the XPCOM plugin. Each plugin would be required to expose
a NSRegisterSelf function which registers the proper ProgID and
CLSID. To instantiate the plugin, the type param in the embed tage
would be concatonated with the proper prefix to construct the ProgID
for the plugin of interest through ComponentManger::CreateInstance.
#define PLUGIN_MIME_TYPE "application/x-hello-world"
#define NS_INLINE_PLUGIN_PROGID_PREFIX "component://netscape/inline-plugin/"
nsString2 strProgID (NS_INLINE_PLUGIN_PROGID_PREFIX);
char buf; // todo: need to use a const
strProgID += PLUGIN_MIME_TYPE;
rv = nsComponentManager::CreateInstance(buf, null, nsIPluginInstance::GetIID(),
// do stuff with the plugin
Note that none of this code has actually been checked into the
tree yet, but will be soon. We're in the process of getting access
20 bugs (4 by engineers in other groups)
- Address book can save
entries into the DB
- New MIME quoting code turned
- Work on new account wizard
- Tree widget performance
getting significantly better
dependency on windows.h
- Spent lots of time fixing up nsCOMPtr usage to work with new
- Started thinking
about address book import
- Converted the message searching interface to IDL
- Converted all time_t code to PRTime for portability (Mac was
- Message copy service starting to run
- Undo delete local message works
news messages using URLs and subscription-guessing works now
- Message compose window can choose
- Updated the jobs document
with some feature ideas which were rattling around but not recorded.
- Win32: 1045k, Mac 1856k (apparently,
~1485k is as good as we could do if we took out Macsbug symbols),
Thanks to Chris Yeh, we know that the Linux build is 2053k. Yes,
that's the stripped number. Still pretty big, and 7623
remains open. [ramiro landed some symbol bloat fixes for linux
last night. But I don't any of the fixes are turned on yet. -
- Phil Peterson on sabbatical 7/6 - 8/17. David
Bienvenu and Scott Putterman
will be working feats of administrative prestidigitation, for
three weeks each, in that order.
- Candice Huang and Rich Pizzarro will also be taking sabbaticals
later in the summer.