The focus on 4.1 has been on bringing it up to a point where it's functionally usable on a day-to-day basis. In general, we have achieved this, we have a ways to go before we can match the legacy eclipse's 100+ million man-hours of use but it is time to begin putting more eyes and hands on it.
This page is intended to let you know what issues have already been identified and represents the current state of the 4.1 SDK's compatibility layer for those that decide to switch over to the new world.
When using the 4.1 SDK for development, please report any loss of functionality as a defect. One of the advantages of working on the new codebase is that our bug 'fix' rate is far above that of the 3.x stream, meaning that the time between a defect being reported and a fix arriving is many times a matter of hours, not days, the hard part for us is finding all of the corner cases for each component.
At the end of this document is a list of things that the 4.1 SDK can already provide you but which are unavailable in the 3.x stream. We would love to get feedback on how much you like these and if there are any other presentation enhancements you'd like to see (i.e. per-perspective editor areas...).
There are parts of the 4.1 SDK where we have already identified issues that new users are sure to notice.
If you are interested in the current list of defects under active work / review go to the BugList.
Splash Screen polish
(4.2) The current implementation of the splash screen is not as polished as the 3.x version; it doesn't show the progress of of the bundle loading and also goes away too early in relation to when the workbench window appears.
(4.2) The Welcome screen will not appear for fresh workspaces. This has relatively low impact on development activities and requires a fairly high time and resource investment to get right so it has been deferred to the 4.2 release.
Menu / Toolbar Issues
- We are still experiencing ordering issues with menu and toolbar items. In particular, contributions from the
org.eclipse.ui.actionSetsextension points may not be ordered properly.
- There may be instances where an item is visible or enabled when it should not be.
- (4.2) Capabilities / Activities are not integrated into the Command system's processing. While this is unlikely to be completely done by the release of 4.1 we've defaulted everything to being 'on'. This may result in more contributions appearing that you see in 3.x but should guarantee that anything you need is available to you.
CSS / Styling Issues
- The UI is not yet completely polished, so there may be some rendering artifacts (especially after changing themes). To change themes, please go to the 'General > Appearance' preference page.
- Acceptance of the new look is (of course) a matter of taste, if it is not to your liking then you can change the theme to the 'Classic' theme (which mimics as much as possible of the 3.x look).
We've done much more polish on both the UI and CSS themes, generally ensuring consistency within the presentation as well as tightening up the amount of white space within the UI. For example the Shared Area (formerly known as the Editor Area) will no longer show up in the presentation until the area contains more than one visible stack.
No Fast Views
This was intentionally dropped since it has been subsumed by the ability to minimize any stack to the trim.
- Cannot dock the Perspective Switcher in other positions (see bug 314163).
- Cannot save a custom perspective (see bug 320478).
- Cannot customize the perspective's wizards, view shortcuts, menu items, or tool bar items.
- On 64-bit Linux distributions that have a GTK version greater than 2.18, it is possible to come across some clipping issues. If encountered, the temporary workaround is to set the environment variable GDK_NATIVE_WINDOWS=1 in a shell and then launch eclipse from that same shell.
- On recent Ubuntu Linux distributions that feature the Unity desktop, the menus from the workbench will not appear in the top desktop menu bar. They will continue to appear in the shell.
There are issues in the way that saveable views are being processed by perspective operations. If you are about to close or reset a perspective, you should make sure you have no dirty views lying around before initiating the operation (see bug 349331).
All views will be shown as having a view menu even if they don't actually have one (see bug 319621).
(4.2) General Enterprise Issues:
There are a number of features that, while crucial for deploying production applications, do not impact the development workflows and have thus been deferred to the 4.2 release.
Note that in many cases, many of these issues may already work but have not been tested in the actual product environments.
- BiDi support: We've run the UI through a basic smoke test in RTL mode with no apparent regressions
bug 344761 [BIDI] WBWRenderer should look for RTL flags
- NLS Support: A 'TVT' (Translation Verification Test) has been performed on the 4.1 SDK. The only defects found were in context menus used within the e4 core and these have been fixed.
- Scalability: We've successfully run a very large commercial application on top of 4.1 with no apparent memory or performance issues.
- Performance: See the comment above.
On the plus side there are a number of things that you can do in the 4.1 SDK that you could not do in 3.x:
- Detached windows can contain multiple part stacks.
- Editors can now be detached.
- You can mix editors and views in the same stack.
- You can place views into the shared area (i.e. the "editor area"), this is particularly useful for views with a lot of content such as the 'Console' view. If you are interested in defining a view to be opened in the shared area using 3.x, see bug 338124.
We're now looking into what we should be doing in the 4.2 (and beyond) as far as using e4's new capabilities to enhance the Eclipse UX. At this point we've identified the following:
- Use the ability to embed parts to allow JDT's compare editor to use a 'real' editor as the left pane of its Compare editor.
- Refactor the more commonly used views so that they can be used in an Eclipse 4 RCP application without having to bring in the complete stack of code that provides backwards compatibility.
- Replace the current Error Dialog with one that embeds the Error View
If you have any ideas about how your component might be improved by using any of these capabilities we'd love to hear from you and help ! This is one of reasons why we're doing this after all...