You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

Status

as of Sept. 8.

Display and navigation

All primary components of main window are in place and active to some degree:

  • Central area for display of output and per-package files of interest, such as release.notes
  • Menu bar with working menus
  • Tool bar with working tools
  • Status area
  • Package hierarchy for base release
  • Packages in override directory (currently disabled)
  • File hierarchy within selected package

Configure options

Functions

  • Select a package
  • Display per-package information
    • Release notes
    • SConscript
    • <package>Lib.py
    • ChangeLog
    • version information
    • command output
  • Search displayed information for string
  • Repository functions
  • Build functions

Performance

Execution of the first command SCons is given is especially slow. Subsequent commands for a code base as large as ScienceTools (to say nothing of GlastRelease) are still intolerably slow with default behavior (reread everything to regenerate all dependencies), especially on Windows. GoGui now makes use of the SCons facility to run subsequent commands without re-checking the dependency tree. SCons must be re-initialized if the base directory (the one containing the SConstruct file) or external library have changed; GoGui handles this automatically. It is also possible for the user to explicitly ask for SCons to re-init if s/he knows the dependency tree has changed.

To do

Display and navigation

  • Visual representation of variants is misleading. Should disable builds of variants that our implementation of SCons will not in fact build and indicate visually which variant is the buildable one.
  • Minor unpleasantness in base browser display: if keys are used to scroll a page at a time the highlighted package can change if the actual selected package scrolls out of view.

Configure options

  • select preferred debugging environment

More functions

  • run a program
  • run a program in debugger
  • full support of override directory. [Most of the work remaining is in SCons infrastructure, not GoGui]

  • cvs tag
  • file-specific functions selected by right-click in package hierarchy
    • bring up file in Qt editor
    • (better) bring up file in user-selected editor
    • cvs diff of file
  • capture qDebug() output in another panel of central tabbed widget. (See grits-cpp/src/lsf/lsfDaemon.cxx for example and qt doc. for qInstallMsghandler.)
  • implement dry-run builds and cleans (print what they would do without actually doing it)

Performance

Make SCons operations asynchronous so as not to tie up the gui.

Windows-specific

  • Container checkout from GoGui
  • Make Project and Solution files as part of build [requires changes to SCons infrastructure]

  • No labels