MasterEx commented on pull request #2169:
URL: https://github.com/apache/netbeans/pull/2169#issuecomment-642934047


   Hi @geertjanw, thank you for your comment.
   
   The dependencies that are introduced are used for the creation of the files 
in the various supported formats (.csv, .tsv, .xls., .xlsx).
   
   Let me elaborate a bit more about each one.
   
   For the creation of the .csv (Comma Separated Values) and the .tsv (Tab 
Separated Values) the **commons-csv** library is used. Using a library for that 
task is a good idea because correctly escaping every character may be tricky 
and libraries such as **commons-csv** lift this burden.
   
   For the creation of the .xls (Excel 97-2003) files the Apache **poi** 
library is used. However **poi** for some functionality depends on other 
libraries too. I have tried to include the minimum required dependencies to 
make it work as intended.
   
   
[Dependencies](https://repo1.maven.org/maven2/org/apache/poi/poi/4.1.2/poi-4.1.2.pom)
 required by **poi** are:
   
   - commons-collections4
   - commons-math3
   - SparseBitSet (if I remember correctly it is required for functionality 
only used in the unit tests)
   
   For the creation of the .xlsx (Excel) files again the Apache **poi** library 
is used. Additionally in order to write .xlsx it is required the **poi-ooxml**. 
This dependency has some other 
[dependencies](https://repo1.maven.org/maven2/org/apache/poi/poi-ooxml/4.1.2/poi-ooxml-4.1.2.pom):
   
   - poi-ooxml-schemas
   - commons-compress
   
   In its turn **poi-ooxml-schemas** has too as a 
[dependency](https://repo1.maven.org/maven2/org/apache/poi/poi-ooxml-schemas/4.1.2/poi-ooxml-schemas-4.1.2.pom)
 the **xmlbeans**.
   
   As I have mentioned I have tried to include the minimum set of required 
dependencies in order to achieve the required functionality. As you may see in 
the maven poms I have linked there are also other transitive dependencies that 
haven't been included.
   
   All the above dependencies are licensed under the Apache license.
   
   Most dependencies are required for the .xls and .xlsx file creation.
   
   So, I guess there are a significant number of dependencies but I think they 
are essential. What do you think? Do you have any suggestion about how to 
reduce the number of dependencies?
   
   If adding too many dependencies is a concern maybe we could add only the 
.csv/.tsv support for now and reexamine the addition of the .xls/.xlsx support 
in the future?
   
   Thank you.
   
   P.S.: I see there are some issues in travis such as missing license files. I 
will address them later if this is going to be accepted.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists

Reply via email to