Development/Budget2023

Below are proposal for tenders, to be discussed in the ESC.

See what was on a similar page a year ago.

Traditionally we have prioritized tasks that there is no probability that will be delivered for free by someone else, in order to conserve TDF's budget. As such larger, less glamorous structural things are interesting, alongside put features.

My idea
CostEstimate: 1 week

Contact: John

Reviewers: Hannah, Josphine

Short description

Requirements:
 * costs are stated in rough guestimate person weeks, so that it is possible to rank the proposals against each other.
 * costings should be created by or signed-off by a certified LibreOffice developer.
 * reviewers: these are people willing to oversee the project, help review the tender, sign off on its completion and help adminster this task for TDF.

Finish Firebird implementation
CostEstimate: ?

Contact: ?

Reviewers: ?


 * [META] Default to Firebird not HSQLDB in Base (for _new_ files)
 * [META] Migrating existing embedded HSQLDB databases to Firebird

The goal is to reduce dependency with Java.

Finish Very Large Spreadsheet support
CostEstimate: 8 weeks

Contact: Noel Grandin, Miklos Vajna, Xisco Fauli

Reviewers: ?


 * Allow more than 1024 columns in calc
 * [META] Very large spreadsheets problem
 * Comment 152

Floating multi-page tables in Writer
CostEstimate: 24 weeks

Contact: Tamás Zolnai

See e.g. https://bugs.documentfoundation.org/show_bug.cgi?id=61594, Word can have tables which are wrapped around by body text and they still split across multiple pages. Writer can't do this. The idea would be to have SwTabFrame not only inherit from SwFlowFrame, but also from SwFlyFrame to reach this. Cost is large because table layout is complex.

Relevant meta bug showing it's a widely used feature: https://bugs.documentfoundation.org/show_bug.cgi?id=139532

Rotated Writer TextFrames
CostEstimate: 24 weeks

Contact: Miklos Vajna

https://bugs.documentfoundation.org/show_bug.cgi?id=82627 Text from DOCX shapes is always mapped to Writer TextFrames so complex content can be represented (tables, etc). Writer TextFrame content can't be rotated, so the task is to add rotation support to TextFrames.

Continous Sections
CostEstimate: ???

Contact: ???

Main bug: https://bugs.documentfoundation.org/show_bug.cgi?id=89297 (+9 duplicates)

In Word the continous section break can generate a section with section-level headers&footers, which only take effect if the section moves to the next page. Writer does not have a similar feature, so it is necessary to implement & standardize a new section type that can have its own headers&footers, similar to the Word feature. Also it is necessary to add ODF & OOXML import+export support.

Interdependant change tracking
Main bug: https://bugs.documentfoundation.org/show_bug.cgi?id=56266

Currently it is not possible to record interdependant changes in change tracking and to save them as ODF, such as:
 * Deleting text from other users tracked insertion
 * Formatting text in tracked insertion of text and tables
 * Moving deleted/inserted text in a numbered list up/down with toolbar commands

While it is possible to import and export such changes in DOCX files made with Word to some degree.

For improved feature-parity with Word it would be useful to extend the ODF standard with support of interdependant revision marks support, as well as extending Writer to record such changes affecting text and tables during editing.

Add more combo chart types
CostEstimate: ???

Contact: ???

Main bug: https://bugs.documentfoundation.org/show_bug.cgi?id=142046 (meta)

MS Office has a wide variety of combo charts: charts with different representations of individual data series. LibreOffice only supports the combination of column and line charts. To improve interoperability it would be necessary to support more types of combination charts in LO in accordance with MSO such as Column, Bar, Line, Area, XY (Scatter). Also improve UI to support selecting any number of these combinations for the available data series. Also improve OOXML import-export support.

XLSX Aggressive Competitors tracker: add support for sparklines
CostEstimate: 3.5 weeks

Contact: Dennis Francis

https://bugs.documentfoundation.org/show_bug.cgi?id=91476

Filters, implementing the cell graph drawing (consider reuse from chart2) and write cppunit tests.

XLSX Aggressive Competitors tracker: support math equations in Calc shapes
CostEstimate: 5 weeks

Contact: Dennis Francis

https://bugs.documentfoundation.org/show_bug.cgi?id=60469

Allow importing math markup from XLSX shape markup into Calc, similar to what already works for Impress.

XLSX Aggressive Competitors tracker: table styles
CostEstimate: 24 weeks

Contact: Dennis Francis

Main bug: https://bugs.documentfoundation.org/show_bug.cgi?id=66377 - Feature request: Format As Table (+8 duplicates) Format as table is a widely used Excel feature which has no equivalent table-style formatting feature in Calc (only cell and page level styles are supported), although the database-like features are supported as Database range.

Fixing this problem would require bringing the core functionality of formatting a part of the sheet with a style (also binding to a database range for interoperability), ODF import-export + XLSX import-export.

Fixing this depends on the table styles project: https://wiki.documentfoundation.org/Development/GSoC/Ideas#Implement_table_styles

Chart: data table rendered below chart
CostEstimate: 7 weeks

Contact: Dennis Francis

https://bugs.documentfoundation.org/show_bug.cgi?id=72304

Commit ba76bf5c7b705d3f5e8d807346a34d9da34127d3 (fdo#72304 Added properties to store Chart data table information, during import., 2013-12-12) already tokenizes the majority of the OOXML markup (added for roundtrip/grab-bag purposes), but then the real layout is missing.

Pivot Table – Compact view
CostEstimate: 9 weeks

Contact: Lubos Lunak

Compact view of pivot tables is currently the default for new Excel pivots – a big interoperability problem for XLSX. The task is to implement a compatible layout in Calc that matches the compact view of Excel.

Missing ODF Features (general collection)
CostEstimate: see items below, 2+4+6+0.5+4 = 16.5 weeks minimally

Contact: Regina, Michael Stahl

Lots of features that were already in ODF 1.2 are not implemented:


 * SVG Gradients: already tracked under its own item "Multi-color gradient"
 * persistent xml:id on lots of elements in all applications - 02-20 weeks depending on scope
 * sw: most important would be the ones that create noise in diffs
 * 
 * 
 * these don't have xml:id, only text:id, so noise is the only problem:
 * , , 
 * sw:
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 

vcl/source/gdi/CommonSalLayout.cxx

The insanity described above together with the the whole DX array madness and the use of integers to hold glyph positions, makes is so that any rounding errors would cause VCL to think that writer wants to insert a kashida in this place.

Fixing kashida once and for all requires:


 * 1) making the communication between Writer and VCL explicit e.g. have a separate “kashida insertion points” array
 * 2) Kill DX array for good and enter the 21 century (it is an API “inspired” by Windows 3.1 3) Fix rounding errors by preserving fractional glyph positions in a way or another.

From

Fix diacritics rendering defects
CostEstimate: ?

Contact: Khaled 

There are several problems with diacritics rendering for Arabic/Hebrew. Some of these problems are listed here:



Please note that some of these issues are related to the problems in justified text rendering.

Automated test tools for finding text rendering defects
CostEstimate: ?

Contact: Khaled 

As the text rendering for LibreOffice is done via HarfBuzz, it is possible to compare the output from HarfBuzz/Pango. Some of the rendering defects happen when styling is used, for example this is rendered with problems in LibreOffice.

This is an effort to find similar problems through automated tests that work with HarfBuzz/Pango and also LibreOffice. Several situations can be tested; for example different colors and styles, font sizes, different fonts for the characters, and different diacritics.

Finding effect of character styles would be easier, because the reference rendering is available, but for the paragraph styles including the full justifying of the paragraphs, it would be harder to find defects because there is no reference available. In such a situation, analyzing the connectivity of the characters can be a solution, at least for Arabic script languages.