npoi icon indicating copy to clipboard operation
npoi copied to clipboard

Follow POI 5.x repository directory structure

Open 9rnsr opened this issue 1 year ago • 6 comments

Current NPOI repository directory structure follows old POI (3.x?). It actually causes some difficulties during port from POI code.

I'm started working to fix issues, and I found some build process issues before change directory structures.

  • [x] Scattering of npoi.snk file. (#1028)
  • [x] Outdated packages.config files. (#1028)
  • [x] Outdated build targets for older .NET Framework versions. (#1031)
  • [x] Test cases are not runnable for net472 with VS2022. (#1032)
  • [x] Inconsistent NuGet package versions between projects and target frameworks. (#1032)
  • [x] Troublesome manual .runsettings file specification for testing. (#1037) It's not automatically detected so we cannot run test cases immediately after NPOI.Test.sln or NPOI.Test.Core.sln open.
  • [x] Migrate csproj for net472 to SDK style. (#1037)
  • [ ] Revive scratchpad projects.

My current plan of directory tree changes:

current new assembly name
/main /npoi/main NPOI.dll (keep)
/testcases/main /npoi/test
/ooxml /npoi-ooxml/main NPOI.OOXML.dll (name is unchanged, but will contain additional classes from /openxml4Net)
/openxml4Net /npoi-ooxml/main/openxml4Net NPOI.OpenXml4Net.dll (removed)
/testcases/ooxml /npoi-ooxml/test
/OpenXmlFormats /OpenXmlFormats/main NPOI.OpenXmlFormats.dll (keep)
(or rename to NPOI.OOXML.Full.dll ?)
/testcases/openxml4net /OpenXmlFormats/test
/scratchpad /npoi-scratchpad/main combine three csprojs into one
/testcases/scratchpad /npoi-scratchpad/test
/testcases/test-data /test-data

9rnsr avatar Feb 27 '23 18:02 9rnsr