flyingsaucerproject / flyingsaucer

XML/XHTML and CSS 2.1 renderer in pure Java
Other
1.95k stars 549 forks source link

Remove various old packages and libraries #297

Closed andreasrosdal closed 3 months ago

andreasrosdal commented 3 months ago

I recommend removing these old packages and libraries. By removing flying-saucer-pdf-itext5 and flying-saucer-swt there will be a smaller, more maintainable code-base, which will ease the modernization of this library, eg. support modern HTML 5 etc. Also remove the jar files in lib/dev, these jar files should be included by Maven if they are needed.

https://github.com/flyingsaucerproject/flyingsaucer/tree/main/lib/dev https://github.com/flyingsaucerproject/flyingsaucer/tree/main/lib

https://github.com/flyingsaucerproject/flyingsaucer/tree/main/flying-saucer-pdf-itext5 (iText 5 is EOL) https://github.com/flyingsaucerproject/flyingsaucer/tree/main/flying-saucer-swt (SWT is not used much, could be removed or forked out to a separate project under https://github.com/flyingsaucerproject) https://github.com/flyingsaucerproject/flyingsaucer/tree/main/flying-saucer-swt-examples

asolntsev commented 3 months ago

Thank you, I was also thinking about it. Especially, about removing Swing code.

@pbrant What do you think, can we remove "itext5" and "swt" support"?

pbrant commented 3 months ago

I'm pretty sure that the JARs under lib are just detritus from the old Ant build. They can definitely go.

Looking at the Maven download stats, both itext5 and swt get considerably more downloads than I would have thought (67k and 1.6k last month respectively). It doesn't seem worth it to spend extra effort keeping them going, but I don't think we need to be in any rush to remove them either.

Basically we need concrete arguments here, e.g. "I have this awesome flex box PR, but that darn SWT support is getting in the way" In that case, it's an easy choice.