I am pushing to freeze the core parts of XPCOM. The reason is simple, changes
are busting users of xpcom clients. There needs to be a definitive list
of the frozen API which embedders and xpcom developers can reference.
Here is the first cut of the XPCOM interfaces that need to be frozen. This
list was generated by looking at various uses of XPCOM. It is a minimal
list. I explicitly ignored many of the data structures, io streams, typeinfo,
ect.
If you are using xpcom in your project, please take a look at the interfaces
you are using. Please send me that list. This will help me guide which
interface need to be frozen sooner.
Structs:
nsID
nsIID
Header Files and Utils
nsCOMPtr and friends
Strings
nsISupportUtils
nsAgg.h
nsDebug.h
nsIGenericFactory.h
Core XPCOM Interfaces:
nsISupport
nsIInterfaceRequestor
nsIWeakReference
nsIFactory
nsIComponentManager
nsIServiceManager
nsIShutdownListener (can we get rid of??)
nsIMemory
Threading
nsIEventQueue
nsIEventQueueService
File Location
sniffle
nsILocalFile
nsIProperties
nsIDirectoryService
nsIDirectoryServiceProvider
nsIFileSpec (deprecated but some legacy code uses it)
DS
nsIEnumerator
nsIObserver
IOU
nsIOutputStream
nsIInputStream
There are a few bugs those that are interested can add themselves to:
XPCOM API http://bugzilla.mozilla.org/show_bug.cgi?id=98278
Mother of API changes http://bugzilla.mozilla.org/show_bug.cgi?id=70229
If you are responding about a particular interface, please create a new thread.
Looking forward to hear your feedback,
Doug
- Re: Freezing Embedding Interfaces... Doug Turner
- Re: Freezing Embedding Interfaces... Mike Shaver
- Re: Freezing Embedding Interfaces... Doug Turner
- Re: Freezing Embedding Interfaces... Jon Smirl
- Re: Freezing Embedding Interfaces... Mike Shaver
- Re: Freezing Embedding Interfaces... Doug Turner
- Re: Freezing Embedding Interfaces... Doug Turner
- Re: Freezing Embedding Interfaces... Doug Turner
- Re: Freezing Embedding Interfaces... Jon Smirl
- Re: Freezing Embedding Interfaces... Chris Seawood
- Re: Freezing Embedding Interfaces... Christopher Blizzard
