[RSS]

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)
  • search in Options dialog

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,...
  • CLI client?
  • 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)
  • rollback of updates?
(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