2.0.0-incubating
Feature
- Add an afterSheetDispose method to the SheetWriteHandler by @wangmiscoding in #413
- Handle very old Excel BIFF formats gracefully with no-op executor by @alaahong in #559
- Add a parameter named autoStrip by @delei in #567
- Update JDK version support to include JDK 25 by @alaahong in #584, #585, #734
- Add Matomo analytics tracking script and docusaurus-plugin-matomo by @delei and @psxjoy in #626, #630, #635
- Add docusaurus-search-local plugin for search by @delei in #636
- Introduce Workbook constant for maximum sheet name length validation by @delei in #658
- Add conditional triggers for workflows by @GOODBOY008 in #664
- Add GitHub Actions workflow for Netlify preview deployments by @ongdisheng in #667
- Introduce header merge strategy for Excel writing by @liugddx in #674
- Add workflow to automatically close stale issues by @ongdisheng in #692
- Add the support module to meet ASF policy requirements by @psxjoy in #781
Bugfix
- Fixed NPE exception in the WriteSheetWorkbookWriteHandler class by @delei in #566
- Fix broken links in contribution guide by @delei in #622
- Fix typo in core-class.md and guide.md by @ngocnhan-tran1996 and @gaushon in #621, #644
- Use SHA reference for Netlify action by @ongdisheng in #680
- Fix incorrect link to docs contribution guide by @ongdisheng in #702
- Fix incorrect code example in documentation website by @bengbengbalabalabeng in #766
- Fix vulnerability alerts by @delei in #785
- Update import statements to use shaded cglib package by @psxjoy in #786
Optimize
- Website for Apache DNS and build fixes by @tisonkun in #600, #601
- Update example method doc by @X-qinghai in #599
- Update contributing guide and README by @delei and @psxjoy in #609, #646, #672
- Rebuild new website content about ASF by @delei in #620
- Optimize the Community section of the official website by @delei in #627
- TeamPage optimised mobile devices by @wlgusqkr in #642
- Add Chinese translation of README (readme-cn.md) by @harshasiddartha in #671
- Add DISCLAIMER and NOTICE files by @delei in #701
- Format md files by @psxjoy in #722
- Improve Javadoc by @ngocnhan-tran1996 and @hezhangjian in #735, #742
- Configure daily dependency updates for maven and github actions by @delei in #593
- Update ASF configuration for better branch protection by @delei in #628
- Update github issue templates by @delei in #605, #629
- Optimize CI workflow by ignoring non-code changes by @GOODBOY008 in #711
- Update parent version and POM configurations by @psxjoy in #737, #752, #758
- Add concurrency control to GitHub Actions workflows by @GOODBOY008 in #777
- Bump com.alibaba.fastjson2:fastjson2 from 2.0.51 to 2.0.60 (#538, #589, #660)
- Bump org.apache.maven.plugins (shade, surefire, compiler, javadoc, jacoco) (#577, #576, #591, #594, #643)
- Bump org.springframework:spring-core from 5.3.37 to 5.3.39 (#595)
- Bump ch.qos.logback:logback-classic from 1.5.18 to 1.5.24 (#625, #654, #683, #731, #743, #779)
- Update poi.version from 5.4.1 to 5.5.1 (#727)
Refactor
- Update repository and project names in config by @psxjoy in #587
- Update package structure to align with Apache naming and remove useless support module by @alaahong and @psxjoy in #607, #682
- Rename resources and classes for improved organization and clarity by @alaahong in #608
- Add automatic license header management via Spotless and config by @alaahong and @tisonkun in #602, #611
- Rename and deprecate legacy core classes by @delei in #688
- Rename FastExcel to Fesod/FesodSheet across codebase, docs, and examples by @delei, @ongdisheng, @GOODBOY008 in #691, #694, #695, #698, #771, #772, #776
- Refactor into a multi-module architecture by @delei in #706
- Split license check into standalone workflow by @ongdisheng in #704
- Consolidate documentation CI with markdown linting by @ongdisheng in #715
- Remove @EqualsAndHashCode annotation from AnalysisCell class by @GOODBOY008 in #723
- Remove outdated and incorrect @SInCE tags by @delei and @bengbengbalabalabeng in #736, #754
- Remove the duplicate ExcelWriteHeadProperty class by @delei in #747
- Internationalize comments and test data in write demo package by @X-qinghai in #753
- Add fesod-distribution module and include assembly descriptors by @psxjoy in #760
- Rename license files for consistency by @psxjoy in #774
Test
- Reset test location and exclude spring-boot test by @alaahong in #554
- Add fuzz testing for Excel reading and improve error handling by @alaahong in #555
- Add and update daily fuzz testing workflow by @alaahong in #560, #570, #748, #787
- Migrate csv unit tests from the example module by @delei in #568
- Bump com.code-intelligence:jazzer-junit from 0.25.0 to 0.25.1 by @dependabot[bot] in #596
- Remove deprecated format field from ExcelProperty and add comprehensive tests for date formatting by @alaahong in #610
- Improve assertion usage for better clarity and order by @GOODBOY008 in #685
- Update fuzz test package path to reflect new structure by @alaahong in #690
- Add unit tests for utility classes by @bengbengbalabalabeng in #756
New Contributors
- @dependabot[bot] made their first contribution in #538
- @X-qinghai made their first contribution in #599
- @ngocnhan-tran1996 made their first contribution in #621
- @YIminta made their first contribution in #640
- @jounghu made their first contribution in #641
- @wlgusqkr made their first contribution in #642
- @gaushon made their first contribution in #644
- @GOODBOY008 made their first contribution in #664
- @ongdisheng made their first contribution in #667
- @harshasiddartha made their first contribution in #671
- @pjfanning made their first contribution in #727
- @liugddx made their first contribution in #674
- @hezhangjian made their first contribution in #742
- @bengbengbalabalabeng made their first contribution in #754
Full Changelog: 1.3.0...2.0.0-incubating