Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Component consolidation

1 view
Skip to first unread message

Gervase Markham

unread,
Jun 29, 2007, 6:53:18 AM6/29/07
to
The component count in Bugzilla, particularly in Core (currently 167;
planned to be 123) is quite high. However, there are a number of
components which see very little use. This is a table of bugs filed in
the last six months which are now in each component.

https://bugzilla.mozilla.org/report.cgi?x_axis_field=&y_axis_field=component&z_axis_field=&query_format=report-table&short_desc_type=allwordssubstr&short_desc=&product=Core&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&emailassigned_to1=1&emailtype1=substring&email1=&emailassigned_to2=1&emailreporter2=1&emailqa_contact2=1&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=2007-01-01&chfieldto=Now&chfield=[Bug+creation]&chfieldvalue=&format=table&action=wrap&field0-0-0=noop&type0-0-0=noop&value0-0-0=
The sorted data is attached below.

Is it worth considering amalgamating some of the less-used Components
with each other or into other components? Note: this is the old list;
some of them have already met a merge/move fate of some sort. I've
annotated the current status all of those in single digits.

Does anyone with knowledge of the areas want to propose anything?
Looking at the bottom, it seems that the big components (JavaScript
Engine, Layout, DOM) seem to work without subdivision.

Gerv

0 DOM: Abstract Schemas
0 DOM: Validation
0 DOM: Views and Formatting (merged into DOM: CSS Object Model)
0 Embedding: Packaging
0 GFX: Photon
0 Installer: GRE (obsoleted)
0 IPC
0 Java APIs for DOM
0 Java APIs to WebShell
0 MailNews: BiDi Hebrew & Arabic (-> new Product but no change)
0 MailNews: Localization (-> new Product but no change)
0 MailNews: Printing (-> new Product but no change)
0 MailNews: Profile Migration (-> new Product but no change)
0 Printing: Xprint (obsoleted)
0 Skinability (obsoleted)
0 Viewer App (obsoleted)
0 WebDAV
0 Widget: Photon
0 X-remote
1 Embedding: Mac
1 Embedding: MFC Embed
1 GFX: Xlib
1 Installer: MFCEmbed (obsoleted)
1 Java-Implemented Plugins
1 Layout: CTL (merged into new Layout: Text)
1 Ports: Qt (obsoleted)
1 Profile: Migration
1 Widget: Xlib (obsoleted)
1 XPCOM Registry (merged into XPCOM)
2 DOM: Load and Save (renamed to DOM: Other)
2 Form Manager (merged into Toolkit: Form Manager)
2 GFX: BeOS
2 Location Bar (moved to SeaMonkey)
2 Networking: News
3 History: Global
3 MailNews: Movemail (-> new Product but no change)
3 MailNews: Security (-> new Product but no change)
3 Search
3 SQL
4 Image Blocking
4 MailNews: Import (-> new Product but no change)
4 MailNews: Internationalization (-> new Product but no change)
4 Web Services
5 Error Console (moved to SeaMonkey)
5 MailNews: Simple MAPI (-> new Product but no change)
6 Image: GFX (renamed to Image: Painting)
6 Profile: Roaming
6 QuickLaunch (AKA turbo mode)
6 Themes (moved to SeaMonkey)
6 Widget: OS/2
6 XP Miscellany (obsoleted)
7 Cmd-line Features
8 Embedding: GRE Core
8 GFX: OS/2
8 Localization
8 Networking: POP
8 Networking: SMTP
8 xpidl (merged into XPCOM)
9 Java: Live Connect
9 MailNews: Search (-> new Product but no change)
9 XTF
10 Java Embedding Plugin
10 Keyboard: Find as you Type
10 MailNews: Networking
10 Widget: BeOS
11 Embedding: ActiveX Wrapper
11 Networking: JAR
11 Profile: BackEnd
11 String
12 MailNews: LDAP Integration
12 MailNews: Palm Sync
12 Networking: FTP
12 Tabbed Browser
15 MailNews: MIME
16 DOM: CSSOM
16 MailNews: Attachments
16 Networking: File
16 Security: S/MIME
17 Layout: Images
17 RDF
18 GFX: Mac
18 Layout: R & A Pos
18 Preferences: Backend
19 Embedding: GTK Widget
20 DOM to Text Conversion
20 GFX: Win32
20 Layout: HTML Frames
20 MailNews: Database
22 DOM: Traversal-Range
22 Drag and Drop
23 Security: CAPS
25 Embedding: APIs
26 Talkback Client
27 History: Session
29 HTML: Form Submission
29 Networking: Cookies
30 Tamarin
31 DOM: Mozilla Extensions
31 GFX: Gtk
31 Networking: Cache
31 Widget: Win32
32 Installer: XPInstall Engine
32 Networking: IMAP
32 Widget
34 Keyboard: Navigation
37 DOM: Level 0
37 Java: OJI
37 MailNews: Filters
38 Tracking
39 XP Toolkit/Widgets: Menus
40 DOM: Core
40 Widget: Mac
42 Print Preview
43 Java to XPCOM Bridge
45 Embedding: Docshell
47 MailNews: Address Book
47 Security: UI
50 GFX
51 DOM: HTML
52 File Handling
52 Layout: BiDi Hebrew & Arabic
53 XSLT
57 Layout: Floats
57 Selection
59 Security
60 Layout: Canvas
62 Layout: Misc Code
62 XP Toolkit/Widgets: Trees
63 HTML: Parser
63 Widget: Gtk
63 XP Toolkit/Widgets
67 Networking: HTTP
72 XBL
73 Layout: Block and Inline
75 Internationalization
76 MailNews: Composition
76 MathML
79 Layout: View Rendering
82 XML
84 Layout: Fonts and Text
93 DOM: Events
99 Event Handling
102 XPConnect
103 MailNews: Backend
108 ImageLib
128 Security: PSM
131 Editor
136 XP Toolkit/Widgets: XUL
137 Style System (CSS)
148 Spelling checker
152 Layout: Form Controls
164 Networking
175 Printing
200 Testing
236 XForms
244 Build Config
264 XPCOM
282 Layout: Tables
291 Widget: Cocoa
325 Plug-ins
366 General
383 DOM
480 SVG
487 Disability Access APIs
559 GFX: Thebes
831 Layout
1104 JavaScript Engine

Gervase Markham

unread,
Jul 5, 2007, 4:32:19 AM7/5/07
to
Gervase Markham wrote:
> The component count in Bugzilla, particularly in Core (currently 167;
> planned to be 123) is quite high.

This post has got no response whatsoever. Do I assume therefore that
people are happy with the component count, or did I not do enough work
to make the data digestible?

Gerv

Robert Kaiser

unread,
Jul 5, 2007, 6:54:34 AM7/5/07
to
Gervase Markham schrieb:

I think that we definitely should further reduce that count, though it's
somewhat hard for me to know about all the components. Some may be
obsolete, some with low to no traffic are still good to be there.

I wonder myself why nobody reacted here.

Robert Kaiser

Robert Kaiser

unread,
Jul 5, 2007, 7:22:50 AM7/5/07
to
> 0 DOM: Abstract Schemas
> 0 DOM: Validation
> 2 DOM: Load and Save (renamed to DOM: Other)

Benjamin's original proposal in "Consolidation of Core components" had
them merged into a bigger DOM component, from this bug count it sounds
like they really should be merged into some bigger DOM component, maybe
the "DOM: Other" one mentioned in the last entry?

> 0 Embedding: Packaging

Not sure if this is still needed, might be obsolete. Benjamin's proposal
had it merged with other similar components to a big "Embedding" one,
maybe this is still a good idea?

> 0 GFX: Photon
> 0 Widget: Photon

Can't do a lot about those, I guess, though I wonder if it might make
sense to merge such components into a common one for that port, i.e.
"Ports: Photon" - this would apply to other GFX:* and Widget:* ones as well.

> 0 Java APIs for DOM
> 0 Java APIs to WebShell

Maybe those can be merged? Maybe even into some bigger "Java support"
component?

> 0 MailNews: BiDi Hebrew & Arabic (-> new Product but no change)
> 0 MailNews: Localization (-> new Product but no change)
> 0 MailNews: Printing (-> new Product but no change)
> 0 MailNews: Profile Migration (-> new Product but no change)

We probably need some MailNews people to look into all that reorg plans.
Not sure if the BiDi component makes sense here, I guess that stuff is
done either in the general BiDi area or specific MailNews areas.
L10n here can be obsoleted, we have Core:L10n anyways, and specific
L10n-aware changes should go into the specific components for the
affected code.
I can't comment on Printing here, but I guess the amount of
MailNews-specific printing code is low.
Profile Migration does probably not make too much sense in MailNews, as
Thunderbird and SeaMonkey both have own copies of profile migration code.

> 0 WebDAV

This might just be bug-free :P
Or might "Web Services" cover this as well?

> 0 X-remote

I believe this can be obsoleted, the code we're using on trunk is
probably not what is tracked by that component.

> 1 Embedding: Mac
> 1 Embedding: MFC Embed

See the "Enbedded" story I mentioned above. Additionally, isn't our
MFCEmbed code obsolete?

> 1 GFX: Xlib

Should probably be obsoleted. We dropped Xlib support, AFAIK.

> 1 Java-Implemented Plugins

Should go into a bigger Java-related component as well?

> 1 Profile: Migration

Not sure if we have global code for profile migration, I don't know the
code well enough. If we have code there, this might be valid - but maybe
it could be merged with profile backend (profile migration frontends are
forked to the different apps, AFAIK).

> 2 GFX: BeOS
> 10 Widget: BeOS
> 6 Widget: OS/2
> 8 GFX: OS/2

Once again, maybe a good idea to merge those into "Ports: BeOS" and
"Ports: OS/2"?

> 6 Profile: Roaming

This code is not used at the moment, but in the light of the SoC project
around a similar topic, maybe this gets revamped in some way.

> 6 QuickLaunch (AKA turbo mode)

obsolete - either move it to SeaMonkey while it's still maintained on
branch or to the Graveyard, depending on what the story of components
for branch-only code is.


I think the components with higher bug counts are probably good to exist
unless covered elsewhere.

Robert Kaiser

Aaron Leventhal

unread,
Aug 13, 2007, 9:01:45 PM8/13/07
to
I think everyone just has a lot to do to get Firefox 3 out the door. My take is
that any kind of project rethinking will probably get a better response once
Firefox 3 is either shipped or just getting the final touches.

- Aaron

0 new messages