To report Gnumeric bugs, please visit bugzilla.gnome.org.

This file is used as a scratch pad by developers.  It is a list of know
issues that need to be addressed.  Divided into, things that will prevent
release, and longer term bugs.


Release Critical
----------------

    - Add an idle handler at start up to check for availablity of
      evo and guppi.  They should only be enabled if they are available.
    - config check for xml-i18n-tool version (or should it be
      intltool ?)

Pending Patches
---------------

Long term breakage
------------------

- Consistent capitalization of labels.

- Need to figure out accelerators and pixmaps for Search.

- can_try_save_to uses access().  That's bogus in a number of ways: (a) it
  checks the wrong permissions in the set[gu]id case.  (b) It reports the
  wrong result if the path is not readable.  The Right Way to do this, is
  just to do it.  And then check the error code.

- gnumeric_error_invalid change call sequence to use printf argument style.

- Panes 
    : support horizontal or vertical only
- outline mode
    : finish implementing optionally putting markers above/left
    : Make ungroup smarter about handling extra items of lower level at the edges

- It is possible to navigate to hidden cols/rows at the start/end of the sheet.

- clean up the range_list codes to differentiate a list of ranges from a list
  of cellranges.

- Names
    : Fix XL named expr import for sheet local names
      * externsheet for biff7 type=3
      * test for unicode
    : Changing an expression name that is in use does not recalc, or regen
      depends correctly.
    : references in names do not get changed with cut/paste or ins/del row/col.

- When using the new range-selector for dialogs with only one range, it
  should not be necessary to select the range field before selecting the
  range.  As long as the selector is in a modal dialog.

- In selected regions the borders of cells that
  have their background color set are drawn incorrectly.
  An off-by-one pixel problem. For details see :
  http://bugzilla.gnome.org/show_bug.cgi?id=52240

- Search-and-replace.
  - It is doubtful whether the regexp selection belongs on the first page.

- The max row/col canvas scroll size is still hard coded.

- scrollbar sizes are based on rows/cols rather than visible pixels
    : Is this a bug ?
- scrollbar size includes hidden rows/cols
    : Is this a bug ?

- calculated cells do not span.
    : this is by design, we'll fix it when we move to just in time rendering.

- Formats
    : support negative durations with [h]
    : Why does the number matching bother comparing against formats that are
      covered by 'General' ?
    : format.c: we should resolve all the separators at gnumeric_setlocale time,
      not every time we need them.
    : the format classification should know about other currencies and currency
      placements.
    : The currency list in the format dialog needs to be sorted for the locale
    : When applying a currency symbol we need to store the NON-localized id.
    : hour month and year format strings need to be internationalized.
	eg tt:ss instead of hh:ss for other locales.
    : formats with AM/PM need to be internationalized.
    : we should parse fractions
    : We do not format fractional seconds correctly.

- Inc/Dec precision should work.  Try "44", click $, then add/remove decimals.
- While we're playing with those functions, let's add simple ones like inc/dec
  font size and things like that.

- locale : Saving xml should not rely on changing the textdomain to
           disable translation of TRUE/FALSE in expressions.
	 : Support parsing and displaying locale specific function
	   names.

- Auto resize needs to handle empty cells.

- auto-fill does not resize row/col

- The implication of mixed mode references ($B$2:C3)
  is large.  All accesses to a RangeRef need to be normalized. (1/2 done)

- Styles
    : improve uniform_get to handle full sheet more quickly.
    : Borders
	* use new border code for cell format dialog (possibly preview-grid)
    : Underline
	* should scale with font size.  (Say, max (1, font->descent/4?)
	  gnome-print has a function we could use for printing which returns the
	  underline thickness.
	* Should be visible in the edit-item (should edit item use cell_draw ?)

- SheetObjects
    : Add acetate_create virtual to handle shaped objects.
    : Other anchor types for sheet objects
    : Add keyboard controls for the control points
    : display a view per Pane not per scg

Dialogs
-------
- Function selector
    : 'Most recently used'
- Formula Guru
    : As we auto add new entries for varargs we should make them visible.
    : Editing nested functions.  How best to express this.
    : Switching between multiple function at the same level.

Function Breakage
-----------------
- Index : does not support 0,0 or reference syntax.
- address : This code is a duplicate.  Have the function use the standard
    routines.
- There are a number of #UNIMPLEMENTED! things to take care of in the
    financial functions.  Mostly this is due to incomplete documentation.
- Function range_min_k uses an O(n*log n) algorithm.  It should use O(n)
  algorithm, see Knuth.
- Functions like SUMPRODUCT need to have better support for sparse ranges.
  We should probably create synchronously_walk_ranges.  (XL goes kaboom on
  large ranges also, but we ought to be smarter.)

Printing
--------
- cell text wraps differently when printing than displaying due to scaling
  differences in font size.  do we want to eliminate this ?

Widget polishing
----------------
- extensions to the notebook to enable dragging a tab to reorder and copy
- Add an optional flag to GnumericExprEntry which forces single-cell-only
  selection.

Plugins
-------
- i18n support for third-party plugins.
- Add extra info (authors, etc.) to XML file.
- Plugin manager: add "refresh list" button.
- Plugin manager: add GUI for adding extra directories with plugins.
- Beautify ErrorInfo dialog (it's ugly).
- Mark plugin as "broken" if deactivation failed.
- mps
    : has some fixed-length arrays that can be overrun.
- dif 
    : uses g_alloca inside function calls.  This does not work.
- latex
    : multiline rows not handled properly.
    : nor are spans
