Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Get the bundled JAR size under control #911

Open
johnmay opened this issue Sep 14, 2022 · 11 comments
Open

Get the bundled JAR size under control #911

johnmay opened this issue Sep 14, 2022 · 11 comments

Comments

@johnmay
Copy link
Member

johnmay commented Sep 14, 2022

The newer Apache JENA (cdk-iordf) version pulls in a lot of dependencies which ultimately means our "cdk-bundle" size is nearly double. A neat trick to work out where bloat is coming from is to create a WAR file.

Currently we are now sitting at 45MB (up from 26MB for CDK 2.7.1). I would hate for this to spiral further and up in the RDKit's 700MB conda install size territory :-).

Here is the break down:

java
[john@sentinel:bundle]% du -sch target/cdk-bundle-2.8/WEB-INF/lib/* | sort -h
4.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-ionpot-2.8.jar
4.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qm-2.8.jar
4.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarionpot-2.8.jar
4.0K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-core-1.1.jar
8.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-control-2.8.jar
8.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-jniinchi-support-2.8.jar
8.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-pdbcml-2.8.jar
8.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarcml-2.8.jar
 12K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-builder3dtools-2.8.jar
 12K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-libiomd-2.8.jar
 12K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarprotein-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-fragment-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-iordf-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-model-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-renderawt-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-signature-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-tautomer-2.8.jar
 20K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-cip-2.8.jar
 20K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarbond-2.8.jar
 20K	target/cdk-bundle-2.8/WEB-INF/lib/jcl-over-slf4j-1.7.36.jar
 24K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-pcore-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-atomtype-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-diff-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-inchi-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-libiocml-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-valencycheck-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/javax.annotation-api-1.3.2.jar
 36K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-charges-2.8.jar
 40K	target/cdk-bundle-2.8/WEB-INF/lib/beam-func-1.3.4.jar
 40K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-dict-2.8.jar
 40K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-group-2.8.jar
 40K	target/cdk-bundle-2.8/WEB-INF/lib/jama-1.0.3.jar
 44K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsar-2.8.jar
 44K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-render-2.8.jar
 44K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-smarts-2.8.jar
 44K	target/cdk-bundle-2.8/WEB-INF/lib/signatures-1.1.jar
 44K	target/cdk-bundle-2.8/WEB-INF/lib/slf4j-api-1.7.36.jar
 52K	target/cdk-bundle-2.8/WEB-INF/lib/commons-csv-1.9.0.jar
 52K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsio-ps-2.4.jar
 56K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-renderextra-2.8.jar
 60K	target/cdk-bundle-2.8/WEB-INF/lib/commons-cli-1.5.0.jar
 64K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-depict-2.8.jar
 68K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-hash-2.8.jar
 68K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-interfaces-2.8.jar
 68K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-structgen-2.8.jar
 68K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsbase-2.4.jar
 72K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-io-2.2.2.jar
 76K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsio-pdf-2.4.jar
 76K	target/cdk-bundle-2.8/WEB-INF/lib/jackson-annotations-2.13.1.jar
 76K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-api-1.1.jar
 80K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-formula-2.8.jar
 84K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-smiles-2.8.jar
 92K	target/cdk-bundle-2.8/WEB-INF/lib/jgrapht-0.6.0.jar
 92K	target/cdk-bundle-2.8/WEB-INF/lib/tagsoup-1.2.1.jar
104K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-ioformats-2.8.jar
112K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsaratomic-2.8.jar
112K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsio-tests-2.4.jar
128K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-isomorphism-2.8.jar
128K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphics2d-2.4.jar
132K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-datadebug-2.8.jar
136K	target/cdk-bundle-2.8/WEB-INF/lib/beam-core-1.3.4.jar
136K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-silent-2.8.jar
136K	target/cdk-bundle-2.8/WEB-INF/lib/jena-iri-4.5.0.jar
140K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-forcefield-2.8.jar
144K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-ctab-2.8.jar
144K	target/cdk-bundle-2.8/WEB-INF/lib/jakarta.json-2.0.1.jar
148K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-reaction-2.8.jar
156K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-data-2.8.jar
160K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-fingerprint-2.8.jar
164K	target/cdk-bundle-2.8/WEB-INF/lib/collection-0.7.jar
164K	target/cdk-bundle-2.8/WEB-INF/lib/httpclient-cache-4.5.13.jar
168K	target/cdk-bundle-2.8/WEB-INF/lib/vecmath-1.5.2.jar
188K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsio-2.4.jar
192K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-renderbasic-2.8.jar
212K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-extra-2.8.jar
216K	target/cdk-bundle-2.8/WEB-INF/lib/xml-apis-1.4.01.jar
240K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarmolecular-2.8.jar
244K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-sdg-2.8.jar
244K	target/cdk-bundle-2.8/WEB-INF/lib/gson-2.9.0.jar
248K	target/cdk-bundle-2.8/WEB-INF/lib/jena-base-4.5.0.jar
272K	target/cdk-bundle-2.8/WEB-INF/lib/serializer-2.7.2.jar
276K	target/cdk-bundle-2.8/WEB-INF/lib/titanium-json-ld-1.2.0.jar
308K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-core-2.8.jar
308K	target/cdk-bundle-2.8/WEB-INF/lib/log4j-api-2.18.0.jar
320K	target/cdk-bundle-2.8/WEB-INF/lib/commons-io-2.11.0.jar
320K	target/cdk-bundle-2.8/WEB-INF/lib/xom-1.3.7.jar
324K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-standard-2.8.jar
324K	target/cdk-bundle-2.8/WEB-INF/lib/httpcore-4.4.13.jar
340K	target/cdk-bundle-2.8/WEB-INF/lib/libthrift-0.16.0.jar
344K	target/cdk-bundle-2.8/WEB-INF/lib/log4j-1.2-api-2.18.0.jar
348K	target/cdk-bundle-2.8/WEB-INF/lib/commons-codec-1.15.jar
368K	target/cdk-bundle-2.8/WEB-INF/lib/jackson-core-2.13.1.jar
404K	target/cdk-bundle-2.8/WEB-INF/lib/euclid-2.3.jar
440K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-io-2.8.jar
556K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-win32-x86-1.1.jar
560K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-pdb-2.8.jar
576K	target/cdk-bundle-2.8/WEB-INF/lib/commons-lang3-3.12.0.jar
600K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-legacy-2.8.jar
600K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-linux-arm-1.1.jar
620K	target/cdk-bundle-2.8/WEB-INF/lib/joda-time-2.11.0.jar
628K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-linux-x86-1.1.jar
644K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-darwin-aarch64-1.1.jar
660K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-linux-x86-64-1.1.jar
668K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-win32-x86-64-1.1.jar
688K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-darwin-x86-64-1.1.jar
764K	target/cdk-bundle-2.8/WEB-INF/lib/httpclient-4.5.13.jar
968K	target/cdk-bundle-2.8/WEB-INF/lib/commons-math-2.2.jar
996K	target/cdk-bundle-2.8/WEB-INF/lib/commons-compress-1.21.jar
1.0M	target/cdk-bundle-2.8/WEB-INF/lib/cmlxom-4.3.jar
1.4M	target/cdk-bundle-2.8/WEB-INF/lib/xercesImpl-2.12.2.jar
1.5M	target/cdk-bundle-2.8/WEB-INF/lib/jackson-databind-2.13.1.jar
1.6M	target/cdk-bundle-2.8/WEB-INF/lib/protobuf-java-3.19.3.jar
1.7M	target/cdk-bundle-2.8/WEB-INF/lib/jna-5.10.0.jar
1.8M	target/cdk-bundle-2.8/WEB-INF/lib/jena-core-4.5.0.jar
1.8M	target/cdk-bundle-2.8/WEB-INF/lib/log4j-core-2.18.0.jar
2.2M	target/cdk-bundle-2.8/WEB-INF/lib/cdk-builder3d-2.8.jar
2.9M	target/cdk-bundle-2.8/WEB-INF/lib/jsonld-java-0.13.4.jar
3.0M	target/cdk-bundle-2.8/WEB-INF/lib/jena-shaded-guava-4.5.0.jar
3.0M	target/cdk-bundle-2.8/WEB-INF/lib/xalan-2.7.2.jar
3.4M	target/cdk-bundle-2.8/WEB-INF/lib/jena-arq-4.5.0.jar
 45M	total

If I remove cdk-iordf from the bundle it drops back down to 26MB. Which is still big IMO but doubling size between releases is not ideal.

4.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-ionpot-2.8.jar
4.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qm-2.8.jar
4.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarionpot-2.8.jar
4.0K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-core-1.1.jar
8.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-control-2.8.jar
8.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-jniinchi-support-2.8.jar
8.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-pdbcml-2.8.jar
8.0K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarcml-2.8.jar
 12K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-builder3dtools-2.8.jar
 12K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-libiomd-2.8.jar
 12K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarprotein-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-fragment-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-model-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-renderawt-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-signature-2.8.jar
 16K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-tautomer-2.8.jar
 20K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-cip-2.8.jar
 20K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarbond-2.8.jar
 24K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-pcore-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-atomtype-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-diff-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-inchi-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-libiocml-2.8.jar
 28K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-valencycheck-2.8.jar
 36K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-charges-2.8.jar
 40K	target/cdk-bundle-2.8/WEB-INF/lib/beam-func-1.3.4.jar
 40K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-dict-2.8.jar
 40K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-group-2.8.jar
 40K	target/cdk-bundle-2.8/WEB-INF/lib/jama-1.0.3.jar
 44K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsar-2.8.jar
 44K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-render-2.8.jar
 44K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-smarts-2.8.jar
 44K	target/cdk-bundle-2.8/WEB-INF/lib/signatures-1.1.jar
 52K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsio-ps-2.4.jar
 56K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-renderextra-2.8.jar
 64K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-depict-2.8.jar
 68K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-hash-2.8.jar
 68K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-interfaces-2.8.jar
 68K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-structgen-2.8.jar
 68K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsbase-2.4.jar
 72K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-io-2.2.2.jar
 76K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsio-pdf-2.4.jar
 76K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-api-1.1.jar
 80K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-formula-2.8.jar
 84K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-smiles-2.8.jar
 92K	target/cdk-bundle-2.8/WEB-INF/lib/jgrapht-0.6.0.jar
 92K	target/cdk-bundle-2.8/WEB-INF/lib/tagsoup-1.2.1.jar
104K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-ioformats-2.8.jar
112K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsaratomic-2.8.jar
112K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsio-tests-2.4.jar
128K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-isomorphism-2.8.jar
128K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphics2d-2.4.jar
132K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-datadebug-2.8.jar
136K	target/cdk-bundle-2.8/WEB-INF/lib/beam-core-1.3.4.jar
136K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-silent-2.8.jar
140K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-forcefield-2.8.jar
144K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-ctab-2.8.jar
148K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-reaction-2.8.jar
156K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-data-2.8.jar
160K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-fingerprint-2.8.jar
168K	target/cdk-bundle-2.8/WEB-INF/lib/vecmath-1.5.2.jar
188K	target/cdk-bundle-2.8/WEB-INF/lib/freehep-graphicsio-2.4.jar
192K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-renderbasic-2.8.jar
212K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-extra-2.8.jar
216K	target/cdk-bundle-2.8/WEB-INF/lib/xml-apis-1.4.01.jar
240K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-qsarmolecular-2.8.jar
244K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-sdg-2.8.jar
272K	target/cdk-bundle-2.8/WEB-INF/lib/serializer-2.7.2.jar
308K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-core-2.8.jar
308K	target/cdk-bundle-2.8/WEB-INF/lib/log4j-api-2.18.0.jar
320K	target/cdk-bundle-2.8/WEB-INF/lib/commons-io-2.11.0.jar
320K	target/cdk-bundle-2.8/WEB-INF/lib/xom-1.3.7.jar
324K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-standard-2.8.jar
344K	target/cdk-bundle-2.8/WEB-INF/lib/log4j-1.2-api-2.18.0.jar
404K	target/cdk-bundle-2.8/WEB-INF/lib/euclid-2.3.jar
440K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-io-2.8.jar
556K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-win32-x86-1.1.jar
560K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-pdb-2.8.jar
576K	target/cdk-bundle-2.8/WEB-INF/lib/commons-lang3-3.12.0.jar
600K	target/cdk-bundle-2.8/WEB-INF/lib/cdk-legacy-2.8.jar
600K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-linux-arm-1.1.jar
620K	target/cdk-bundle-2.8/WEB-INF/lib/joda-time-2.11.0.jar
628K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-linux-x86-1.1.jar
644K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-darwin-aarch64-1.1.jar
660K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-linux-x86-64-1.1.jar
668K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-win32-x86-64-1.1.jar
688K	target/cdk-bundle-2.8/WEB-INF/lib/jna-inchi-darwin-x86-64-1.1.jar
968K	target/cdk-bundle-2.8/WEB-INF/lib/commons-math-2.2.jar
1.0M	target/cdk-bundle-2.8/WEB-INF/lib/cmlxom-4.3.jar
1.4M	target/cdk-bundle-2.8/WEB-INF/lib/xercesImpl-2.12.2.jar
1.7M	target/cdk-bundle-2.8/WEB-INF/lib/jna-5.10.0.jar
1.8M	target/cdk-bundle-2.8/WEB-INF/lib/log4j-core-2.18.0.jar
2.2M	target/cdk-bundle-2.8/WEB-INF/lib/cdk-builder3d-2.8.jar
3.0M	target/cdk-bundle-2.8/WEB-INF/lib/xalan-2.7.2.jar
 26M	total
@johnmay
Copy link
Member Author

johnmay commented Sep 14, 2022

The overheads:

  • JENA ~20MB
  • CMLXOM ~6MB (log4j-core is a big contributor)
  • JNA InChI ~6MB
  • xerces+xalan ~4MB (used in multiple places)
  • cdk-builder 2.2MB (mainly a zipped SDF)
  • cdk-depict + deps ~1MB
  • cdk-legacy + deps ~1MB

@uli-f
Copy link
Member

uli-f commented Sep 15, 2022

JENA (due to its size) and xerces (due to the potential issues of having various XML libs on the path) seem like primary candidates for removal if possible.

What is the zipped SDF in the cdk-builder?

@egonw
Copy link
Member

egonw commented Sep 15, 2022

Removing Xerces does not remove functionality. So, removing that from the bundle makes sense. I also understand the argument for removing the iordf module. I will see if I can further tweak the dependencies. All projects struggle with the same question: core versus size. The key question is, should the bundle be all functionality or not.

@johnmay
Copy link
Member Author

johnmay commented Sep 15, 2022

w.r.t to iordf I wonder if we just write our own owl reader/writer. I presume the specs of these are super extensive though so might be an impossible task. Otherwise we could make this an optional dependency and exclude it from the bundle. i.e. if you want this functionality you probably already have JENA on your class path so are OK to pay that cost.

It is frustrating how much it's bloated, the older JENA was quite compact.

@uli-f The Zipped SDF is 3D templates, improving the 3D generation capabilities would perhaps mean it could be removed.

@zachcp
Copy link

zachcp commented Sep 19, 2022

As a follow on to #915 is there a relatively straightforward way to generate the WAR file as above?

@johnmay
Copy link
Member Author

johnmay commented Sep 19, 2022

Set packaging type of cdk-bundle to “war” instead of “pom” then add an empty web.xml file in the correct place (it tells you where). But I’ve given the sizes there, what rcdk needs is another bundle like pom of it’s own that only includes what it needs.

@johnmay
Copy link
Member Author

johnmay commented Sep 19, 2022

Although I think as rajarshi pointed out, it basically is just all functionality made available so really “everything” is needed but choices can be made to cut the less essential things.

@egonw
Copy link
Member

egonw commented Apr 10, 2023

@johnmay, how are we doing?

@johnmay
Copy link
Member Author

johnmay commented Apr 12, 2023

[john@sentinel:cdk]% du -sch bundle/target/cdk-2.9-SNAPSHOT.jar
 41M	bundle/target/cdk-2.9-SNAPSHOT.jar
 41M	total

Note the RInChI inclusion will make this larger so it's a losing battle :-).

@johnmay
Copy link
Member Author

johnmay commented Apr 12, 2023

41 still down from the peak of 45 but still larger

@johnmay
Copy link
Member Author

johnmay commented Aug 21, 2023

Up to 42 again...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants