Topics of post-6.0 work in Core & Platform areas in NetBeans
Topics scheduled for evaluation (+implementation) in 6.5
General
Ant Projects
- TBD in M2 - P2 - follow-up on Sharable Libraries - some kind of versioning API of those Shared Libs which are provided by the IDE because their upgrade in user's project may be needed in next IDE version
(#133451) (mkleint)(tomas)
Maven Projects
- DONE in M1 - remote repository browsing, querying, management, bootstrapping version control checkout.
(mkleint)(jara)
Already done in a new version of maven support available also on 6.1 update center.
Platform
- DONE in M1 - P3 - evaluation of UNC paths usage - in filesystems and also in the rest of the product
(#46813) (jskrivanek)(lukas)
- DONE in M1 - P2 - treetable view redesign taken from David Strupl's contrib/ttv module? would fix a few bugs
(33281) (saubrecht)(lukas)
- DONE in M1 - P3 - Options (#109538) - API+impl for opening Options dialog with preselected subcategories, e.g. panels in Miscellaneous
(jskrivanek)(petr)
- DONE in M2 - P2 - finish killing advanced options - first implement File Associations panel and Open With... dialog
(#105589 - Milestone 1) then get rid of Advanced Options (Milestone 2) (#133773) (jskrivanek)(petr)
- DONE in M2 - P3 - support for informational error messages in wizards (#137737) (mkubec)
Autoupdate
- TBD in M2 - P1 - Expand uniqueID by one additional unique number unrelated to userdir (#137113) (jrechtacek)
- TBD in M2 - P2 - evaluate possibility of verification of 3rd party plugin signature against CA and corresponding changes in Plugin Manager's installation wizard UI
(#133504) (jrechtacek)(jara)
- DONE in M1 - P2 - slightly change behavior of balloon-like tooltip
(#125119) (jrechtacek)(jara)
Window System
- DONE in M2 - P3 - change default layout of windows (UI Spec)
- in progress - P2 - run smoothly on Nimbus L&F
(#120656) (mslama, saubrecht)(petr)
- DONE in M1 - P3 - modify sliding windows to support original window sizes
(#135318) (saubrecht)(petr)
- partially DONE in M1 - P2 - add new API for configuring existing visual aspects of window system - enable/disable DnD, floating windows, JFrames x jDialogs, tab layouts, sliding windows on/off, or only on some sides, native x cross platform L&F, fixed layout.
(#134670 ) (dsimonek)(petr)
Various UI issues
- DONE in M2 - P3 - Tasklist - visual finetuning of the window (#138189) (saubrecht)
- DONE in M1 and M2 - P2 - Quick Search - text searching in main menu, actions, modules, options, files, projects. Similar to Vista OS menu, similar to competitor's quick access feature.
(#134398 ), see also overall UI and Func spec (dsimonek)(petr)
- DONE in M1 (API only) and M2 - P2 - explain icon badges in tooltips - new users have currently no clue what icon badges indicate
(#123469) (t_h)(petr)
- RESOLVED - P1 - add a parameter to item's class name in palette (93451) (saubrecht)
- DONE in M1 (TBD in all editors in M2) - P3 - allow drag and drop of text selected in editor window into the common palette to create new code clips
(#93002) (saubrecht)(petr)
Deferred
- style text in editor tabs
(#47290)
- improvements in project import and more precise autoconfiguration of freeform based on analysis of the build script
(AutomaticProjects) (#135157)
- utilizing Maven repositories and index to resolve 3rd party library problems. Using Maven remote repositories for creating NetBeans library definitions.
(MavenIndexingOnePager) (#134677)
- merge "from Scratch" and "with Existing Sources" project wizards
(#123430)
- improve UI for resolving broken references
(#123464)
- fix appearance of NetBeans on Mac OS X look and feel (#132291)(petr)
- TC persistency changes - PERSIST_LAYOUT option + adoption of Preferences API
- merge various Output and Result windows (#123429) - requested by xDesign, agreed as nice to have only
- common status line (#123344) - requested by xDesign, old window system relic, we're likely the only IDE that takes up space with the status line that's dedicated to editor
Open unscheduled topics
Projects
- Packaging a project output into an OSGi bundle - OSGi is becoming more widespread, and for example, GlassFish v3 can be extended through OSGi bundles.
- performance improvements
- If you change a single file (particularly in a platform application), then running the application invokes a lot of ant targets and takes a long, long time. Perhaps this could be improved somehow to eliminate any unnecessary steps.
- elimination of copy&pasted code in the many existing project types
- possibility to do optimizations in one place
- write once & use in all project types for certain features (e.g. includes/excludes)
- different levels of reuse, something applies to ant projects only, something is more general
ProjectTypeMusings
OSProjectsEvaluation
Maven Support
- extending the support to better cover advanced usecases
(any VOC about this? how many users who would profit from this potentially?)
- profiling, debugging, deployment for web and j2ee projects
- make webframeworks work (visual web)
- dependency graphing and analysis (also useful for Ivy support)
- catch up on project configuration capabilities (customizer panels etc) to make it comparable to ant projects.
Window System
Table of Core UI work post 6.0
Platform
- tasklist API enhancement for triggering actions
- possibility for real embedded web browser - could be WebKit which will be included in JDK 6u10 - evaluation was done; because WebKit will not be available via public API in JDK 6u10 using WebKit in NetBeans is postponed
- module system changes - compatibility with JSR 277
(what is the right moment to start working on this?)
- incorporate 3rd party libraries without library wrapper modules - use Maven for 3rd-party libraries, either in apisupport or directly in module system
- related to JSR 277 as Stanley Ho reported that he has a bridge between JSR 277 APIs and Maven
- ???!
- Print APIs and Preview - adopting what has been suggested by entpack team
but was not suitable for acceptance in platform in the form suggested
- multiview redesign to serve the reqs accumulated
- palette improvements - preview instead of icon
- Wizard API is waiting for redesign for long time
- Impl of IZ 55627: Double clicking the project template should move to next step
- actions support module - get rid of another SharedClassObject subclass - e.g. give people a chance to easy write their actions without the need to subclass NodeAction, CookieAction or co.
- running platform on top of Consumer JRE
- running platform as an applet?
(hard security issues -jglick)
- API for reading Proxy Settings, writing only via Options (friend API for writing Proxy Settings)
APIsupport
- chaining of suites
- (hard without rewrite of apisupport -jglick)
- many more wizards
- Geertjan has wizard for "enhanced file type" - with multiview, with visual library, etc.
- tasklist wizard
- CLI option wizard
- (bad priority, we have far better things to do -jglick)
- More GUI support for working with window system: defining new modes, editing .wstcref and .settings files
- support in build harness for building setup packages (preferably with a bundled JRE), just as you can build ZIP distributions now. see Tonny Kohar's blog for an example, but maybe OpenInstaller is an option too.
- create API to allow other people to write their own wizards (maybe with FreeMarker)
- make explorer views more matisse friendly - e.g. create their own category in component palette, add setExplorerManager/getExplorerManager to views.
- rewrite layer nodes (see IZ #72541)
Autoupdate
- Download NBMs/Offline mode (OfflineMode) without installing them
- leveraging Plugin Portal - tighter communication between users and developers of plugins
from within the IDE (commenting and rating plugins, viewing stats about the plugins - #downloads)
- reading additional data from PP (#downloads, ratings, comments) - showing them, allowing searching and sorting
- allowing user to write data to PP (ratings, comments) - could be delegated to a web page on PP
- logging of changes done through autoupdate - for the user's view, or for sending to support/attaching to issue
- displaying more advanced information about plugins - dependencies, installation directory,...
- support for language packs?
(current implementation with dummy modules seems to be enough even for community contributed
localizations, so the support for real language packs may be unnecessary)
(makes sense only if we want to put more emphasis on sustaining older !NetBeans releases) -- well, supporting older releases is important for platform applications.
Gesture Collector
- task-focused UI (what is it all about actually? and how big change this would be?)
- mkleint: can turn quite big, needs integration with issue tracking systems, complex manipulations with user's IDE desktop.
- tips and context sensitive help based on user's workflow
Collaboration
- simplification and stability - rewrite some parts of collaboration support (filesharing)
- employing the collaboration support (chat, filesharing, ...?)
in a much bigger team collaboration feature (TBD, cross-team effort)
- Continuous integration server integration, also touches projects area.
Topics completed in 6.1
Projects
Platform
- filesystem simplifications
- getting rid of the old support for VCS Generic by peeling the upper delegating filesystem, locking for bulk operations, a few handy methods (#123542)
- speeding up file locking mechanism (#106128)
Autoupdate
- Plugin Manager non-modal dialog box
- downloading plugins on background (#98870)
- wizard for automatic resolving of broken dependencies - Missing Modules Resolver available on Beta UC of 6.1
- semitransparent lightweight popup window which indicates that some updates of plugins are available. (#122751)
- stabilize APIs/SPIs (#19930)
- Allow setting AU check interval programmatically
IDE