- This page is intended to summarize plans and directions for Firebug.next
- Provide any feedback on Firebug newsgroup
This section describes the strategy and goals that keep Firebug a competitive in-browser tool and leader in space of in-browser developer tools.
The next planned version number is: 1.12
Development happens on
master branch (currently alpha).
If a significant new feature (or set of features) is introduced in new release, the version numbering can move into 2.* scheme. An example of such feature can be support for remote debugging.
The goal is to introduce new Firebug release till April 2013
- The entire release cycle (from the first alpha to the final release) should target 4-5 months
- The beta phase should be at least 4 weeks
- The new release should introduce 8-10 new features (or significant bug fixes)
Use this section to suggest any feature you'd like to see in Firebug.next.
- JSD2 Adoption
- Remote Debugging
- Undo/redo option in HTML panel (+ CSS + DOM if possible) (issue 54, issue 2569)
- Cut option in HTML panel (issue 6217)
Planned Features / Changes
This section summarizes all features that are planned for Firebug.next. Every feature in this section must have an owner.
|Adopt JSD2||Honza, Sebastian, Farshid||Issue 5421: Adopt JSD2||started|
Issue 5175: Integrate Orion as replacement for the Script panel UI
|Group console messages||Sebastian||Issue 4979: Group console messages||started|
|Mutation events removal||Simon||Issue 5490: Get rid of mutation events||started|
|Auto-completion for Command Editor||Simon|| Issue 55: Auto-completion for Command Editor|
issue 5741: Auto-completion within expression in Command Line
|Closure Inspector||Simon|| Issue 5873: Integrate FireClosure|
Issue 6183: Closure Inspector: some variables are treated as DOM properties
Issue 6184: Closure Inspector: named function expression scopes are duplicated
Issue 6185: Closure Inspector: .% syntax doesn't work when execution is stopped in frame
|Event types filter||Sebastian||Issue 229: Allow event types to be filtered with "Log Events"||started|
|Libraries code rewrite||Florent||Issue 6164: Libraries code rewrite||started|
|Line numbers in CSS Edit Mode||-||Issue 2153: Show line numbers in Edit mode||not started|
|Cache options||Sebastian||Issue 4536: Cache options||started|
Feature planning should keep in mind the suggested release schedule above
This section provides detailed description of all planned features.
Firebug script debugger and all related features like BON (break on ...) should be based on new JSD2 API. Using JSD2 API will also enable remote debugging.
Part of this task is also internal Firebug architecture refactoring so it's ready for remote debugging features. Note that adopting JSD2 doesn't automatically mean that Firebug is remote-debugging-ready. This is covered by issue 5837
Note that this task doesn't have to make it into Firebug.next, but it could be possible (if useful) to at least merge code changes.
- Firebug 1.7 BTI
- Script Panel Refactoring
- Remoting Prototype
- Remoting Architecture
- JSD2 List of tasks
Source Repository: Development happens on JSD2 branch
SourceBoxcode by Orion
- Re-add context menu options
- Adjust CSS to match the Firebug UI
Group console messages
Console messages optionally need to be grouped to avoid spamming the Console Panel.
- Group error messages
- Group messages produced by the
Mutation events removal
Mutation events are replaced by mutation observers. So we need to move to them.
- Replace mutation events by mutation observers in HTML panel
- Replace mutation events by mutation observers in CSS panel
- Remove "mutation" event type
- Replace mutation events by mutation observers in FBTest
Auto-completion for Command Editor
- Allow auto-completion within an expression
- Add auto-completion to the Command Editor
- Enhance positioning of the Completion List Popup
- Integrate FireClosure
- Improve UI
- Fix issues of FireClosure
Event types filter
The user should have the possibility to choose certain event types to be logged to the Console Panel.
- Create menu items for the different event groups
- Refactor setting the event types to work together with the ones set via
Libraries code rewrite
The APIs inside the
/lib should be refactored to simplify and optimize them. Because extensions are also using these functions, it is important to keep the backward compatibility as far as possible.
- Rewrite the functions
- Add JSDocs to all functions
Line numbers in CSS Edit Mode
The Source Edit Mode of the CSS Panel should have line numbers for easier navigation.
- Integrate Orion into the Source Edit Mode
- Ajust the display to fit to the Firebug UI
Reading the Firebug preferences from the Firefox preferences should just happen once to avoid unnecessary disk accesses.