diff --git a/build.xml b/build.xml
index 6a3b6a057..dc4ee8eb7 100644
--- a/build.xml
+++ b/build.xml
@@ -143,7 +143,6 @@ under the License.
-
@@ -1020,14 +1019,6 @@ FORREST_HOME environment variable!
-
-
-
-
-
-
-
-
diff --git a/changelog.xsl b/changelog.xsl
deleted file mode 100644
index 5ae6b20b9..000000000
--- a/changelog.xsl
+++ /dev/null
@@ -1,143 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- |
-
-
-
-
- |
-
-
-
-
- |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- mailto:
-
-
-
-
-
-
-
-
-
-
- /?rev=&content-type=text/x-cvsweb-markup
-
-
- /?r1=&r2=
-
-
- ()
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/documentation/content/xdocs/changes.xml b/src/documentation/content/xdocs/changes.xml
deleted file mode 100644
index b79dac650..000000000
--- a/src/documentation/content/xdocs/changes.xml
+++ /dev/null
@@ -1,700 +0,0 @@
-
-
-
-
-
- History of Changes
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 47206 - Fixed XSSFCell to properly read inline strings
- 47250 - Fixed FontRecord to expect unicode flags even when name length is zero
- 47198 - Fixed formula evaluator comparison of -0.0 and 0.0
- 47229 - Fixed ExternalNameRecord to handle DDE links
- 46287 - Control of header and footer extraction in ExcelExtractor / XSSFExcelExtractor
- 46554 - New ant target "jar-examples"
- 46161 - Support in XSSF for setGroupColumnCollapsed and setGroupRowCollapsed
- 46806 - Allow columns greater than 255 and rows greater than 0x100000 in XSSF formulas
- 41711 - Base class for "old version" exceptions, and new HSLF detection + use of old versions exception
- 47179 - Fix string encoding issues with HSMF chunks on non-windows platforms
- 47183 - Attachment support for HSMF
- 47154 - Handle the cell format @ as the same as General
- 47048 - Fixed evaluation of defined names with the 'complex' flag set
- 46953 - More tweaks to PageSettingsBlock parsing logic in Sheet constructor
- 47089 - Fixed XSSFWorkbook.createSheet to properly increment sheetId
- 46568 - Fixed XSLFPowerPointExtractor to properly process line breaks
- 39056 - Fixed POIFSFileSystem to set CLSID of root when constructing instances from InputStream
- 47054 - Fixed cloneStyleFrom to avoid exception when cloning styles of the same family
- 46186 - Fixed Sheet to read GutsRecord in the Sheet(RecordStream rs)
- 46714 - Automatically call sheet.setAlternativeExpression when sheet.setRowSumsBelow is called
- 46279 - Allow 255 arguments for excel functions in XSSF
- 47028 - Fixed XSSFCell to preserve cell style when cell value is set to blank
- 47026 - Avoid NPE in XSSFCell.setCellType() when workbook does not have SST
- 46987 - Allow RecordFactory to handle non-zero padding at the end of the workbook stream
- 47034 - Fix reading the name of a NameRecord when the name is very long
- 47001 - Fixed WriteAccessRecord and LinkTable to handle unusual format written by Google Docs
- 46973 - Fixed defined names to behave better when refersToFormula is unset
- 46832 - Allow merged regions with columns greater than 255 or rows bigger than 65536 in XSSF
- 46951 - Fixed formula parser to better handle range operators and whole row/column refs.
- 46948 - Fixed evaluation of range operator to allow for area-ref operands
- 46918 - Fixed ExtendedPivotTableViewFieldsRecord(SXVDEX) to allow shorter format
- 46898 - Fixed formula evaluator to not cache intermediate circular-reference error results
- 46917 - Fixed PageItemRecord(SXPI) to allow multiple field infos
- 46904 - Fix POIFS issue with duplicate block 0 references on very old BIFF5/BIFF7 files
- 46840 - PageSettingsBlock should include HEADERFOOTER record
- 46885 - update cell type when setting cached formula result in XSSFCell
- added modifiers for anchor type to XSSFClientAnchor
- 46772 - support built-in data formats in XSSFDataFormat
- 46719 - fixed XSSFSheet.shiftRows to correctly preserve row heights
- 46715 - preserve custom column widths across re-serialization of XSSFWorkbook
- 46703 - added setDisplayZeros / isDisplayZeros to common interface org.apache.poi.ss.usermodel.Sheet
- 46708 - added getMergedRegion(int) to common interface org.apache.poi.ss.usermodel.Sheet
- fixed Sheet.autoSizeColumn() to use cached formula values when processing formula cells
- Fixed formula parser to handle names with backslashes
- 46660 - added Workbook getHidden() and setHidden(boolean)
- 46693 - Fixed serialization bugs in records: CHARTFORMAT, SHTPROPS, SXVD and SXVDEX
- 46627 - Fixed offset of added images if Pictures stream contains pictures with zero length
-
-
- 46536 - When shifting rows, update formulas on that sheet to point to the new location of those rows
- 46663 - Fixed XSSFSheet.shiftRows to properly update references of the shifted cells
- 46535 - Remove reference from calculation chain when a formula is deleted
- 46654 - HSSFRow/RowRecord to properly update cell boundary indexes
- 46643 - Fixed formula parser to encode range operator with tMemFunc
- 46647 - Fixed COUNTIF NE operator and other special cases involving type conversion
- 46635 - Added a method to remove slides
- 40520 - Fixed HSSFFont.applyFont() to properly apply font to overlapping regions
- 46545 - Fixed ObjRecord to ignore excessive padding written by previous POI versions
- 46613 - Fixed evaluator to perform case insensitive string comparisons
- 46544 - command line interface for hssf ExcelExtractor
- 46547 - Allow addition of conditional formatting after data validation
- 46548 - Page Settings Block fixes - continued PLS records and PSB in sheet sub-streams
- 46523 - added implementation for SUMIF function
- Support for reading HSSF column styles
- Hook up POIXMLTextExtractor.getMetadataTextExtractor() to the already written POIXMLPropertiesTextExtractor
- 46472 - Avoid NPE in HPSFPropertiesExtractor when no properties exist
- 46479 - fixed bugs related to cached formula values and HSSFFormulaEvaluator.evaluateInCell()
- 45031 - added implementation for CHOOSE() function
- 46361 - resolve licensing issues around the HDGF resource file, chunks_parse_cmds.tbl
- 46410 - added implementation for TIME() function
- 46320 - added HSSFPictureData.getFormat()
- 46445 - fixed HSSFSheet.shiftRow to move hyperlinks
- fixed formula parser to correctly resolve sheet-level names
- 46433 - support for shared formulas in XSSF
- 46299 - support for carriage return and line break in XWPFRun
- 46300 - support for line spacing in XWPFParagraph
- 46308 - initial support for creation of XWPFTable
- Added getters to parent objects: HSSFSheet.getWorkbook(), HSSFRow.getSheet() and HSSFCell.getRow()
- 46385 - (also patch 46362) fix serialization of StyleRecord with unicode name
- 46368 - Fix HSSFRichTextRun and strings longer than 32768 characters
- Support sheet-level names
- Fixed XSSFCell to properly handle cell references with column numbers up to XFD
- 44914 - Fixed warning message "WARN. Unread n bytes of record 0xNN"
- 46156 - Improved number to text conversion to be closer to that of Excel
- 46312 - Fixed ValueRecordsAggregate to handle removal of new empty row
- 46269 - Improved error message when attempting to read BIFF2 file
- 46206 - Fixed Sheet to tolerate missing DIMENSION records
- 46301 - added pivot table records: SXDI, SXVDEX, SXPI, SXIDSTM, SXVIEW, SXVD, SXVS, et al
- 46280 - Fixed RowRecordsAggregate etc to properly skip PivotTable records
-
-
- 46213 - Fixed FormulaRecordAggregate to gracefully ignore extra StringRecords
- 46174 - Fixed HSSFName to handle general formulas (not just area references)
- 46189 - added chart records: CHARTFRTINFO, STARTBLOCK, ENDBLOCK, STARTOBJECT, ENDOBJECT, and CATLAB
- 46199 - More tweaks to EmbeddedObjectRefSubRecord
- Changes to formula evaluation allowing for reduced memory usage
- 45290 - Support odd files where the POIFS header block comes after the data blocks, and is on the data blocks list
- 46184 - More odd escaped date formats
- Include the sheet number in the output of XLS2CSVmra
- 46043 - correctly write out HPSF properties with HWPF
- 45973 - added CreationHelper.createFormulaEvaluator(), implemeted both for HSSF and XSSF
- 46182 - fixed Slideshow.readPictures() to skip pictures with invalid headers
- 46137 - Handle odd files with a ContinueRecord after EOFRecord
- Fixed problem with linking shared formulas when ranges overlap
- 45784 - More fixes to SeriesTextRecord
- 46033 - fixed TableCell to correctly set text type
- 46122 - fixed Picture.draw to skip rendering if picture data was not found
- 15716 - memory usage optimisation - converted Ptg arrays into Formula objects
- 46065 - added implementation for VALUE function
- 45966 - added implementation for FIND function
- 45778 - fixed ObjRecord to read ftLbsData properly
- 46053 - fixed evaluation cache dependency analysis when changing blank cells
-
-
- 45518 - Fix up ColumnHelper to output valid col tags, by making 1 based and 0 based bits clearer, and using the right ones
- 45676 - Handle very long cells in the XSSF EventUserModel example
- Initial ExtractorFactory support for building TextExtractors for embeded documents
-
-
- Support stripping XSSF header and footer fields (eg page number) out of header and footer text if required
- Add POIXMLPropertiesTextExtractor, which provides to the OOXML file formats a similar function to HPSF's HPSFPropertiesExtractor
- 45539 - Improve XWPFWordExtractor to extract headers and footers
- Improve how XWPF handles paragraph text
- Support in XWPF handles headers and footers
- 45592 - Improve XWPF text extraction to include tables always, and picture text where possible
- 45545 - Improve XSLF usermodel support, and include XSLF comments in extracted text
- 45540 - Fix XSSF header and footer support, and include headers and footers in the output of XSSFExcelExtractor
- 45431 - Support for .xlsm files, sufficient for simple files to be loaded by excel without warning
- New class org.apache.poi.hssf.record.RecordFormatException, which DDF uses instead of the HSSF version, and the HSSF version inherits from
- 45431 - Partial support for .xlm files. Not quite enough for excel to load them though
- 45430 - Correct named range sheet reporting when no local sheet id is given in the xml
-
-
- 45018 - Support for fetching embeded documents from within an OOXML file
- Port support for setting a policy on missing / blank cells when fetching, to XSSF too
- Common text extraction factory, which returns the correct POITextExtractor for the supplied data
- Text Extraction support for the new OOXML files (.xlsx, .docx and .pptx)
- Initial support for processing OOXML Excel files (.xlsx), both directly through XSSF, and also through the new common UserModel
- Created a common interface for handling PowerPoint files, irrespective of if they are .ppt or .pptx
- Created a common interface for handling Excel files, irrespective of if they are .xls or .xlsx
-
-
- 45866 - allowed for change of unicode compression across Continue records
- 45964 - support for link formulas in Text Objects
- 43354 - support for evalating formulas with missing args
- 45912 - fixed ArrayIndexOutOfBoundsException in EmbeddedObjectRefSubRecord
- 45889 - fixed ArrayIndexOutOfBoundsException when constructing HSLF Table with a single row
- Initial support for creating hyperlinks in HSLF
- 45876 - fixed BoundSheetRecord to allow sheet names longer than 31 chars
- 45890 - fixed HSSFSheet.shiftRows to also update conditional formats
- 45865 modified Formula Parser/Evaluator to handle cross-worksheet formulas
- Optimised the FormulaEvaluator to take cell dependencies into account
- 16936 - Initial support for whole-row cell styling
- Update hssf.extractor.ExcelExtractor to optionally output blank cells too
- Include the sheet name in the output of examples.XLS2CSVmra
- 45784 - Support long chart titles in SeriesTextRecords
- 45777 - Throw an exception if HSSF Footer or Header is attemped to be set too long, rather than having it break during writing out
- 45844 - Addtional diagnostics for HSLF SlideShowRecordDumper
- 45829 - HSSFPicture.getImageDimension() failed when DPI of image is zero
- 45815 - Bit mask values in StyleTextPropAtom were not preserved across read-write
- 45814 - Specify RecordType for slide show Handout (4041)
- 45805 - Fixed 16-bit signed/unsigned bug in HSSFSheet.getColWidth etc
- 45780 - Fixed HSSFSheet.shiftRows to also update Area refs
- 45804 - Update HSMF to handle Outlook 3.0 msg files, which have a different string chunk type
- Expose the name of Named Cell Styles via HSSFCellStyle (normally held on the parent style though)
- 45978 - Fixed IOOBE in Ref3DPtg.toFormulaString() due eager initialisation of SheetReferences
- Made HSSFFormulaEvaluator no longer require initialisation with sheet or row
- Extended support for cached results of formula cells
- 45639 - Fixed AIOOBE due to bad index logic in ColumnInfoRecordsAggregate
- Fixed special cases of INDEX function (single column/single row, errors)
- 45761 - Support for Very Hidden excel sheets in HSSF
- 45738 - Initial HWPF support for Office Art Shapes
- 45720 - Fixed HSSFWorkbook.cloneSheet to correctly clone sheets with drawings
- 45728 - Fix for SlideShow.reorderSlide in HSLF
- Initial support for embedded movies and controls in HSLF
- 45358 - signed/unsigned error when parsing 3-d area refs, performance problem evaluating area refs, and ClassCastExcecption in IF()
- Support for HPBF Publisher hyperlinks, including during text extraction
- 26321 and 44958 - preserve position of ArrayRecords and TableRecords among cell value records
- Impove empty header or footer handling in HWPF HeaderStories
- Avoid NPE in hssf.usermodel.HeaderFooter when stripping fields out
- Avoid NPE in EscherBSERecord on older escher records
- Basic text extractraction support in HPBF
- Initial, low level support for Publisher files, in the form of HPBF
- 45699 - Fix RowRecordsAggregate to tolerate intervening MERGEDCELLS records
- 45698 - Fix LinkTable to tolerate multiple EXTERNSHEET records
- 45682 - Fix for cloning of CFRecordsAggregate
- Initial support for evaluating external add-in functions like YEARFRAC
- 45672 - Fix for MissingRecordAwareHSSFListener to prevent multiple LastCellOfRowDummyRecords when shared formulas are present
- 45645 - Fix for HSSFSheet.autoSizeColumn() for widths exceeding Short.MAX_VALUE
- 45623 - Support for additional HSSF header and footer fields, including bold and full file path
- 45623 - Support stripping HSSF header and footer fields (eg page number) out of header and footer text if required
- 45622 - Support stripping HWPF fields (eg macros) out of text, via Range.stripFields(text)
- New HPSF based TextExtractor for document metadata, org.apache.poi.hpsf.extractor.HPSFPropertiesExtractor
- Properly update the array of Slide's text runs in HSLF when new text shapes are added
- 45590 - Fix for Header/footer extraction for .ppt files saved in Office 2007
- Big improvement in how HWPF handles unicode text, and more sanity checking of text ranges within HWPF
- Include headers and footers int he extracted text from HWPF's WordExtractor
- Added support to HWPF for headers and footers
- Improve how HWPF deals with unicode internally. Should avoid some odd behaviour when manipulating unicode text
- 45577 - Added implementations for Excel functions NOW and TODAY
- 45582 - Fix for workbook streams with extra bytes trailing the EOFRecord
- 45537 - Include headers and footers (of slides and notes) in the extracted text from HSLF
- 45472 - Fixed incorrect default row height in OpenOffice 2.3
- 44692 - HSSFPicture.resize() stretched image when there was a text next to it
- 45543 - Optionally extract comment text with PowerPointExtractor, and initial hslf model support for comments
- 45538 - Include excel headers and footers in the output of ExcelExtractor
- 44894 - refactor duplicate logic from EventRecordFactory to RecordFactory
- Support for Headers / Footers in HSLF
- 44953 - Extensive fixes for data validation
- 45519 - Fixed to keep datavalidation records together
- Support for creating new HSLF CurrentUserAtoms
- 45466 - Partial support for removing excel comments (won't work for all excel versions yet)
- 45437 - Detect encrypted word documents, and throw an EncryptedDocumentException instead of a OOM
- 45404 - New class, hssf.usermodel.HSSFDataFormatter, for formatting numbers and dates in the same way that Excel does
- 45414 - Don't add too many UncalcedRecords to sheets with charts in them
- 45398 - Support detecting date formats containing "am/pm" as date times
- 45410 - Removed dependency from contrib on commons beanutils,collections and lang
- New helper, HSSFOptimiser, which handles removing duplicated font and style records, to avoid going over the limits in Excel
- 45322 - Fixed NPE in HSSFSheet.autoSizeColumn() when cell number format was not found
- 45380 - Missing return keyword in ArrayPtg.toFormulaString()
- 44958 - Record level support for Data Tables. (No formula parser support though)
- 35583 - Include a version class, org.apache.poi.Version, to allow easy introspection of the POI version
- Allow the cloning of one HSSFCellStyle onto another, including cloning styles from one HSSFWorkbook onto another
- 45289 - finished support for special comparison operators in COUNTIF
- 45126 - Avoid generating multiple NamedRanges with the same name, which Excel dislikes
- Fix cell.getRichStringCellValue() for formula cells with string results
- 45365 - Handle more excel number formatting rules in FormatTrackingHSSFListener / XLS2CSVmra
- 45373 - Improve the performance of HSSFSheet.shiftRows
- 45367 - Fixed bug when last row removed from sheet is row zero
- 45348 - Tweaks to RVA formula logic
- 45354 - Fixed recognition of named ranges within formulas
- 45338 - Fix HSSFWorkbook to give you the same HSSFFont every time, and then fix it to find newly added fonts
- 45336 - Fix HSSFColor.getTripletHash()
- 45334 - Fixed formula parser to handle dots in identifiers
- 45252 - Improvement for HWPF Range.replaceText()
- 45001 - Further fix for HWPF Range.delete() and unicode characters
- 45175 - Support for variable length operands in org.apache.poi.hwpf.sprm.SprmOperation
- Avoid spurious missing lines with the MissingRecordAware event code, and odd files that contain RowRecords in the middle of the cell Records.
- Support for parsing formulas during EventUserModel processing, via the new EventWorkbookBuilder
-
-
- 30978 - Fixed re-serialization of tRefErr3d and tAreaErr3d
- 45234 - Removed incorrect shared formula conversion in CFRuleRecord
- 45001 - Improved HWPF Range.replaceText()
- 44692 - Fixed HSSFPicture.resize() to properly resize pictures if the underlying columns/rows have modified size
- Support custom image renderers in HSLF
- Correctly increment the reference count of a blip when a picture is inserted
- 45110 - Fixed TextShape.resizeToFitText() to properly resize TextShape
- 45091 - Fixed serialization of RefN~ tokens. Simplified Ptg class hierarchy
- 45133 - Fixed OBJ Record (5Dh) to pad the sub-record data to a 4-byte boundary
- 45145 - Fixed Sheet to always enforce RowRecordsAggregate before ValueRecordsAggregate
- 45123 - Fixed SharedFormulaRecord.convertSharedFormulas() to propagate token operand classes
- 45087 - Correctly detect date formats like [Black]YYYY as being date based
- 45060 - Improved token class transformation during formula parsing
- 44840 - Improved handling of HSSFObjectData, especially for entries with data held not in POIFS
- 45043 - Support for getting excel cell comments when extracting text
- Extend the support for specifying a policy to HSSF on missing / blank cells when fetching, to be able to specify the policy at the HSSFWorkbook level
- 45025 - improved FormulaParser parse error messages
- 45046 - allowed EXTERNALBOOK(0x01AE) to be optional in the LinkTable
- 45066 - fixed sheet encoding size mismatch problems
- 45003 - Support embeded HDGF visio documents
- 45001 - Partial fix for HWPF Range.insertBefore() and Range.delete() with unicode characters
- 44977 - Support for AM/PM in excel date formats
- Support for specifying a policy to HSSF on missing / blank cells when fetching
- 44937 - Partial support for extracting Escher images from HWPF files
- 44824 - Avoid an infinite loop when reading some HWPF pictures
- 44898 - Correctly handle short last blocks in POIFS
-
-
- 44306 - fixed reading/writing of AttrPtg(type=choose) and method toFormulaString() for CHOOSE formulas
- 24207 - added HSSFName.isDeleted() to check if the name points to cell that no longer exists
- 40414 - fixed selected/active sheet after removing sheet from workbook
- 44523 - fixed workbook sheet selection and focus
- 45000 - Fixed NPE in ListLevel when numberText is null
- 44985 - Properly update TextSpecInfoAtom when the parent text is changed
- 41187 - fixed HSSFSheet to properly read xls files without ROW records
- 44950 - fixed HSSFFormulaEvaluator.evaluateInCell() and Area3DEval.getValue() also added validation for number of elements in AreaEvals
- 42570 - fixed LabelRecord to use empty string instead of null when the length is zero.
- 42564 - fixed ArrayPtg to use ConstantValueParser. Fixed a few other ArrayPtg encoding issues.
- Follow-on from 28754 - StringPtg.toFormulaString() should escape double quotes
- 44929 - Improved error handling in HSSFWorkbook when attempting to read a BIFF5 file
- 44675 - Parameter operand classes (function metadata) required to encode SUM() etc properly. Added parse validation for number of parameters
- 44921 - allow Ptg.writeBytes() to be called on relative ref Ptgs (RefN* and AreaN*)
- 44914 - Fix/suppress warning message "WARN. Unread n bytes of record 0xNN"
- 44892 - made HSSFWorkbook.getSheet(String) case insensitive
- 44886] - Correctly process PICT metafile in EscherMetafileBlip
- 44893 - Take into account indentation in HSSFSheet.autoSizeColumn
-
-
- 44857 - Avoid OOM on unknown escher records when EscherMetafileBlip is incorrect
- HSLF: Support for getting embedded sounds from slide show
- HSLF: Initial support for rendering slides into images
- HSLF: Support for getting OLE object data from slide show
- HSLF: Implemented more methods in PPGraphics2D
- HSLF: Added Freeform shape which can contain both lines and Bezier curves
- 41071 - Improved text extraction in HSLF
- 30311 - Conditional Formatting - improved API, added HSSFSheetConditionalFormatting
- Update the formula parser code to use a HSSFWorkbook, rather than the low level model.Workbook, to make things cleaner and make supporting XSSF formulas in future much easier
- Fix the logger used by POIFSFileSystem, so that commons-logging isn't required when not used
- Update HSLFSlideShow and HSSFWorkbook to take advantage of POIFS updates, and allow reading embeded documents
- Improve how POIFS works with directory entries, and update HWPFDocument to support reading an embeded word document
- Initial support for getting and changing chart and series titles
- Implement a proxy HSSFListener which tracks the format records, and lets you lookup the format string for a given cell. Convert the xls to csv example to use it
- 44792 - fixed encode/decode problems in ExternalNameRecord and CRNRecord.
- 43670, 44501 - Fix how HDGF deals with trailing data in the list of chunk headers
- 30311 - More work on Conditional Formatting
- refactored all junits' usage of HSSF.testdata.path to one place
- 44739 - Small fixes for conditional formatting (regions with max row/col index)
- Implement Sheet.removeShape(Shape shape) in HSLF
- 44694 - HPSF: Support for property sets without sections
- Various fixes: Recognising var-arg built-in functions #44675, ExternalNameRecord serialisation bug #44695, PMT() bug #44691
- 30311 - More work on Conditional Formatting
- Move the Formula Evaluator code out of scratchpad
- Move the missing record aware eventusermodel code out of scratchpad
- 44652 / 44603 - Improved handling of Pictures in Word Documents
- 44636 - Fix formula parsing of RefVPtg, which was causing #VALUE to be shown on subsequent edits
- 44627 - Improve the thread safety of POILogFactory
- 30311 - Initial support for Conditional Formatting
- 44609 - Handle leading spaces in formulas, such as '= 4'
- 44608 - Support for PercentPtg in the formula evaluator
- 44606 - Support calculated string values for evaluated formulas
- Add accessors to horizontal and vertical alignment in HSSFTextbox
- 44593 - Improved handling of short DVRecords
- 28627 / 44580 - Fix Range.delete() in HWPF
- 44539 - Support for area references in formulas of rows >= 32768
- 44536 - Improved support for detecting read-only recommended files
- 43901 - Correctly update the internal last cell number when adding and removing cells (previously sometimes off-by-one)
- 28231 - For apparently truncated files, which are somehow still valid, now issue a truncation warning but carry on, rather than giving an exception as before
- 44504 - Added initial support for recognising external functions like YEARFRAC and ISEVEN (using NameXPtg), via LinkTable support
- 44504 - Improvements to FormulaParser - operators, precedence, error literals, quotes in string literals, range checking on IntPtg, formulas with extra un-parsed stuff at the end, improved parse error handling
- 44504 - Fixed number conversion inconsistencies in many functions, and improved RefEval
- 44508 - Fix formula evaluation with evaluateInCell on boolean formulas
- 44510 - Fix how DVALRecord works with dropdowns
- 44495 - Handle named cell ranges in formulas that have lower case parts
- 44491 - Don't have the new-style "HPSF properties are always available" affect the old-style use of HPSF alongside HSSF
- 44471 - Crystal Reports generates files with short StyleRecords, which isn't allowed in the spec. Work around this
- 44450 - Support for Lookup, HLookup and VLookup functions
- 44449 - Avoid getting confused when two sheets have shared formulas for the same areas, and when the shared formula is set incorrectly
- 44366 - InputStreams passed to POIFSFileSystem are now automatically closed. A warning is generated for people who might've relied on them not being closed before, and a wrapper to restore the old behaviour is supplied
- 44371 - Support for the Offset function
- 38921 - Have HSSFPalette.findSimilar() work properly
- 44456 - Fix the contrib SViewer / SViewerPanel to not fail on sheets with missing rows
- 44403 - Further support for unusual, but valid, arguments to the Mid function
- 44410 - Support for whole-column ranges, such as C:C, in formula strings and the formula evaluator
- 44421 - Update Match function to properly support Area references
- 44417 - Improved handling of references for the need to quote the sheet name for some formulas, but not when fetching a sheet by name
- 44413 - Fix for circular references in INDEX, OFFSET, VLOOKUP formulas, where a cell is actually allowed to reference itself
- 44403 - Fix for Mid function handling its arguments wrong
- 44364 - Support for Match, NA and SumProduct functions, as well as initial function error support
- 44375 - Cope with a broken dictionary in Document Summary Information stream. RuntimeExceptions that occured when trying to read bogus data are now caught. Dictionary entries up to but not including the bogus one are preserved, the rest is ignored.
- 38641 - Handle timezones better with cell.setCellValue(Calendar), so now 20:00-03:00, 20:00+00:00 and 20:00+03:00 will all be recorded as 20:00, and not 17:00 / 20:00 / 23:00 (pass a Date not a Calendar for old behaviour)
- 44373 - Have HSSFDateUtil.isADateFormat recognize more formats as being dates
- 37923 - Support for Excel hyperlinks
- Implement hashCode() and equals(obj) on HSSFFont and HSSFCellStyle
- 44345 - Implement CountA, CountIf, Index, Rows and Columns functions
- 44336 - Properly escape sheet names as required when figuring out the text of formulas
- 44326 - Improvements to how SystemOutLogger and CommonsLogger log messages with exceptions, and avoid an infinite loop with certain log messages with exceptions
- Support for a completed Record based "pull" stream, via org.apache.poi.hssf.eventusermodel.HSSFRecordStream, to complement the existing "push" Event User Model listener stuff
-
-
- 44297 - IntPtg must operate with unsigned short. Reading signed short results in incorrect formula calculation
- 44296 - Fix for reading slide background images
- 44293 - Avoid swapping AreaPtgs from relative to absolute
- 44292 - Correctly process the last paragraph in a word file
- 44254 - Avoid some unread byte warnings, and properly understand DVALRecord
- Add another formula evaluation method, evaluateFormulaCell(cell), which will re-calculate the value for a formula, without affecting the formula itself.
- 41726 - Fix how we handle signed cell offsets in relative areas and references
- 44233 - Support for getting and setting a flag on the sheet, which tells excel to re-calculate all formulas on it at next reload
- 44201 - Enable cloning of sheets with data validation rules
- 44200 - Enable cloning of sheets with notes
- 43008 - Add a moveCell method to HSSFRow, and deprecate setCellNum(), which didn't update things properly
- 43058 - Support setting row grouping on files from CR IX, which lack GutsRecords
- 31795 - Support cloning of sheets with certain drawing objects on them
- 43902 - Don't consider merged regions when auto-sizing columns
- 42464 - Avoid "Expected ExpPtg to be converted from Shared to Non-Shared Formula" on large, formula heavy worksheets
- 42033 - Add support for named ranges with unicode names
- 34023 - When shifting rows, update formulas on that sheet to point to the new location of those rows
- Support getting all the cells referenced by an AreaReference, not just the corner ones
- 43510 - Add support for named ranges in formulas, including non-contiguous named ranges
- 43937 - Add support for hiding and un-hiding sheets, and checking their current hidden status
- 44167 - Fix for non-contiguous named ranges
- 44070 - Fix for shifting comments when shifting rows
-
-
- Support for tables in HSLF
- 43781 - Fix for extracting text from TextBoxes HSLF in
- Improve JavaDocs relating to hssf font and fill colourings
- 44095, 44097, 44099 - [PATCH] Support for Mid, Replace and Substitute excel functions
- 44055 - [PATCH] Support for getting the from field from HSMF messages
- 43551 - [PATCH] Support for 1904 date windowing in HSSF (previously only supported 1900 date windowing)
- 41064 - [PATCH] Support for String continue records
- 27511 - [PATCH] Support for data validation, via DVRecord and DVALRecord
-
-
- 43877 and 39512 - Fix for handling mixed OBJ and CONTINUE records.
- 43807 - Throw an IllegalArgumentException if asked to create a merged region with invalid columns or rows, rather than writing out a corrupt file
- 43837 - [PATCH] Support for unicode NameRecords
- 43721 - [PATCH] Support for Chart Title Format records
- 42794 - [PATCH] Fix for BOF records from things like Access
- 43648 - Fix for IntPtg and short vs int
- 43751 - [PATCH] - Fix for handling rotated text in HSSFSheet.autoSizeColumn
- Include an Excel text extractor, and put all existing text extractors under a common superclass
- Improvements to the LZW compression engine used by HDGF
- HSSFPicture.resize() - a handy method to reset a picture to its original width and height
- Add a getSheetIndex(HSSFSheet) method to HSSFWorkbook, and allow a HSSFSheet to get at its parent HSSFWorkbook
- Move POIDocument out of Scratchpad, and update HSSFWorkbook to use it
- 43399 - [PATCH] - Fix for Cell References for rows > 32678
- 43410 - [PATCH] - Improved Formula Parser support for numbers and ranges
- When writing HSLF files out, optionally preserve all OLE2 nodes (default is just the HSLF related nodes)
- 43323 - [PATCH] - Support for adding Pictures to ShapeGroups in HSLF.
- 43222 - [PATCH] - Support for getting OLE object data from HSSFWorkbook.
- 43247 - [PATCH] - Support for getting OLE object data from slideshows.
- 43125 - [PATCH] - Support for reading EMF, WMF and PICT images via HSSFWorkbook.getAllPictures()
- 43088 - [PATCH] - Fix for reading files with long cell comments and text boxes
- 42844 - [PATCH] - Fix for the EventUserModel and records that aren't immediately followed by their ContinueRecords
- 43055 - [PATCH] - Fix for saving Crystal Reports xls files when preserving nodes
- 43116 - [PATCH] - Fix for Escher layer handling of embeded OLE2 documents
- 43108 - [PATCH] - Where permissions deny fetching System Properties, use sensible defaults
- 43093 - [PATCH] - Fix formula evaluator support for Area3D references to other sheets
- Improvements to HSSFDateUtils.isADateFormat, and have HSSFDateUtil.isCellDateFormatted use this
- 42999 - [PATCH] - Fix for HSSFPatriarch positioning problems
- Support for write-protecting a HSSF workbook
- Support for querying, setting and un-setting protection on sheets in a HSSF workbook
- Initial HSMF (outlook) support
- Tidy up the javadocs
-
-
-
- Administrative updates to the Maven POMs, and the release artificat build process
- 23951 - [PATCH] Fix for HSSF setSheetOrder and tab names
- 42524 - [PATCH] Better HSLF support for problem shape groups
- 42520 - [PATCH] Better HSLF support for corrupt picture records
- Initial support for a "missing record aware" HSSF event model
- Additional HSLF support for Title and Slide Master Sheets
- 42474 - [PATCH] Improved HSLF note to slide matching, and a NPE
- 42481 - [PATCH] Tweak some HSLF exceptions, to make it clearer what you're catching
- 42667 - [PATCH] Fix for HSLF writing of files with tables
- Improved way of detecting HSSF cells that contain dates, isADateFormat
- Initial, read-only support for Visio documents, as HDGF
-
-
-
- 39977 - [PATCH] Fix POM for Maven users
- 38976 - [PATCH] Add createPicture to HSSFShapeGroup
- Detect Office 2007 XML documents, and throw a meaningful exception
- Additional HSLF support for PowerPoint
- Initial support for HWPF image extraction
-
-
-
- Additional HSLF support for PowerPoint
-
-
-
- HSSF Formula support
- Additional HSLF support for PowerPoint
- 39389 - [PATCH] Extended Ascii support for WingDings
-
-
-
- Bugzilla Bug 29976 [PATCH] HSSF hyperlink formula size problem
- Image writing support
- HSLF - Initial PowerPoint support
-
-
-
- Outlining support
- 27574 - [PATCH] HSSFDateUtil.getExcelDate() is one hour off when DST changes
- 26465 - [PATCH] wrong lastrow entry
- 28203 - [PATCH] Unable to open read-write excel file including forms
-
-
-
- Add support for the Escher file format
- 27005 java.lang.IndexOutOfBoundsException during Workbook.cloneSheet()
-
-
-
- No changes
-
-
-
- Bug 25695 - HSSFCell.getStringCellValue() on cell which has string formula will return swap bye unicode characters.
- Updated website for upcoming release
- Formula Parser fixes with tests, by Peter M Murray Bug 25457
- Fixed cloning merge regions
- The cloned reference for merged cells did not create a new collection, so deletes cascaded to the original.
- Fix to 24519 call to getCustomPalette() from a newly created workbook now works
- Fix supplied for bug 24397 where some compilation got ambiguous classes. Explicitly imports the classes. Patch supplied by Jean-Pierre Paris.
-
-
- 12561 (Min) HSSFWorkbook throws Exceptions
- 12730 (Nor) values dont get copied to another sheet.
- 13224 (Maj) Exception thrown when cell has =Names call
- 13796 (Nor) Error Reading Formula Record (optimized if, external link)
- 13921 (Nor) Sheet name cannot exceed 31 characters and cannot contain :
- 14330 (Nor) Error reading FormulaRecord
- 14460 (Nor) Name in Formula - ArrayOutOfBoundsException
- 15228 (Cri) [Urgent] ArrayIndexoutofbounds Exception. POI - Version 1.8
- 16488 (Maj) Unable to open written spreadsheet in Excel, but can in Open
- 16559 (Nor) testCustomPalette.xls crashes Excel 97
- 16560 (Nor) testBoolErr.xls crashes Excel '97
- 17374 (Min) HSSFFont - BOLDWEIGHT_NORMAL
- 18800 (Maj) The sheet made by HSSFWorkbook#cloneSheet() doesn't work cor
- 18846 (Min) [PATCH][RFE]Refactor the transformation between byte array a
- 19599 (Min) java.lang.IllegalArgumentException
- 19961 (Nor) [PATCH] Sheet.getColumnWidth() returns wrong value
- 21066 (Blo) Can not modify a blank spreadsheet
- 21444 (Enh) [PATCH] Macro functions
- 21447 (Nor) [RFE]String Formula Cells
- 21674 (Enh) [PATCH] Documentation changes for @(Greater|Less|Not)EqualPt
- 21863 (Enh) [PATCH] build.xml fixes
- 22195 (Nor) [RFE] [PATCH] Support for Storage Class ID
- 22742 (Cri) Failed to create HSSFWorkbook!
- 22922 (Cri) HSSFSheet.shiftRows() throws java.lang.IndexOutOfBoundsExcep
- 22963 (Nor) org.apache.poi.hpsf.SummaryInformation.getEditTime() should
- 24149 (Maj) Error passing inputstream to POIFSFileSystem
- 21722 (Nor) [PATCH] Add a ProtectRecord to Sheets and give control over
- 9576 (Nor) [PATCH] DBCELL, INDEX EXTSST (was Acess 97 import)
- 13478 (Blo) [PATCH] [RFE] POIFS, RawDataBlock: Missing workaround for lo
- 14824 (Nor) Unable to modify empty sheets
- 12843 (Cri) [PATCH] Make POI handle chinese better
- 15353 (Nor) [RFE] creating a cell with a hyperlink
- 15375 (Blo) Post 1.5.1 POI causes spreadsheet to become unopenable.
-
-
-
- HPSF is now able to read properties which are given in the property set stream but which don't have a value ("variant" type VT_EMPTY). The getXXX() methods of the PropertySet class return null if their return type is a reference (like a string) or 0 if the return type is numeric. Details about the return types and about how to distinguish between a property value of zero and a property value that is not present can be found in the API documentation.
- Gridlines can now be turned on and off
- NamePTG refactoring/fixes
- minor fixes to ExternSheet and formula strings
- Sheet comparisons now ignore case
-
-
-
- A nasty concurrency problem has been fixed. Any users working in a multithreaded environment should seriously consider upgrading to this release.
- The EXTSST record has been implemented. This record is used by excel for optimized reading of strings.
- When rows are shifted, the merged regions now move with them. If a row contains 2 merged cells, the resulting shifted row should have those cells merged as well.
- There were some issues when removing merged
- regions (specifically, removing all of them and then adding some more) and have been resolved.
- When a sheet contained shared formulas (when a formula is
- dragged across greater than 6 cells), the clone would fail. We now support cloning of
- sheets that contain this Excel optimization.
- Support added for reading formulas with UnaryPlus and UnaryMinus operators.
-
-
-
- Patch applied for deep cloning of worksheets was provided
- Patch applied to allow sheet reordering
- Added additional print area setting methods using row/column numbers
- HDF: Negative Array size fix
- Added argument pointers to support the IF formula
- Formulas: Added special character support for string literals, specifically for SUMIF formula support and addresses a bug as well
- BlockingInputStream committed to help ensure reads
- Fixed problem with NaN values differing from the investigated value from file reads in FormulaRecords
- Patch for getColumnWidth in HSSF
- Patch for dealing with mult-level numbered lists in HDF
- Due to named reference work, several named-ranged bugs were closed
- Patch applied to prevent sheet corruption after a template modification
- Shared Formulas now Supported
- Added GreaterEqual, LessEqual and NotEqual to Formula Parser
- Added GreaterThan and LessThan functionality to formulas
- Patches for i10n
- POI Build System Updated
- font names can now be null
-
-
-
- Support for zoom level
- Freeze and split pane support
- Row and column headers on printouts
-
-
- Custom Data Format Support
- Enhanced Unicode Support for Russian and Japanese
- Enhanced formula support including read-only for
- "optimized if" statements.
- Support for cloning objects
- Fixes for header/footer
- Spanish Documentation translations
- Support for preserving VBA macros
-
-
- Removed runtime dependency on commons logging.
- Formula support
-
-
- Removed depedency on commons logging. Now define poi.logging system property to enable logging to standard out.
- Fixed SST string handling so that spreadsheets with rich text or extended text will be read correctly.
-
-
- New project build.
- New project documentation system based on Cocoon.
- Package rename
- Various bug fixes
- Early stages of HSF development (not ready for development)
- Initial low level record support for charting (not complete)
-
-
- Created new event model
- Optimizations made to HSSF including aggregate records for
- values, rows, etc.
- predictive sizing, offset based writing (instead of lots of
- array copies)
- minor re-factoring and bug fixes.
-
-
- Minor documentation updates.
-
-
- Added DataFormat helper class and exposed set and get format
- on HSSFCellStyle
- Fixed column width apis (unit wise) and various javadoc on
- the subject
- Fix for Dimensions record (again)... (one of these days I'll
- write a unit test for this ;-p).
- Some optimization on sheet creation.
-
-
- Changes not recorded.
-
-
- Added MulBlank, Blank, ColInfo
- Added log4j facility and removed all sys.out type logging
- Added support for adding font's, styles and corresponding
- high level api for styling cells
- added support for changing row height, cell width and default
- row height/cell width.
- Added fixes for internationalization (UTF-16 should work now
- from HSSFCell.setStringValue, etc when the encoding is set)
- added support for adding/removing and naming sheets.
-
-
- Bugfix release. We were throwing an exception when reading
- RKRecord objects.
-
-
- Got continuation records to work (read/write)
- Added various pre-support for formulas
- Massive API reorganization, repackaging.
- BiffViewer class added for validating HSSF & POI and/or
- HSSF Output.
- Better API support for modification.
-
-
- Added encoding flag to high and low level api to use utf-16
- when needed (HSSFCell.setEncoding())
- added read only support for Label records (which are
- reinterpreted as LabelSST when written)
- Broken continuation record implementation (oops)
- BiffViewer class added for validating HSSF & POI and/or
- HSSF Output.
-
-
- Support for read/write and modify.
- Read only support for MulRK records (converted to Number when
- writing)
-
-
-
-
diff --git a/src/documentation/skinconf.xml b/src/documentation/skinconf.xml
index b84204a9b..1e542954d 100644
--- a/src/documentation/skinconf.xml
+++ b/src/documentation/skinconf.xml
@@ -57,7 +57,7 @@ be used to configure the chosen Forrest skin.
-
+
@@ -90,23 +90,20 @@ be used to configure the chosen Forrest skin.
true
-
- false
-
- false
-
poi.apache.org
poi
POI
+ POI
http://poi.apache.org/
resources/images/project-logo.jpg
Apache POI
+ Apache POI
http://poi.apache.org
resources/images/group-logo.jpg
@@ -116,7 +113,7 @@ be used to configure the chosen Forrest skin.
- 2002-2007
+ 2002-2009
The Apache Software Foundation