At some point between 3.14 and current trunk, the behaviour of the following code changed: XSSFWorkbook.setWorkbookPassword(""); Previously this would result in no password on the workbook, but protection enabled. Now, a password is set which renders the workbook impossible to un-protect (Excel doesn't accept the empty string as a password). Passing null disables protection entirely; we want an option which protects the workbook but not with a password. Fix to follow shortly.
Fixed r1754744