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

Reduce JabRef release size by not bundling WebKit for both Windows and Linux in all installers #6340

Closed
Sethur opened this issue Apr 24, 2020 · 6 comments
Assignees
Labels
installation status: waiting-for-feedback The submitter or other users need to provide more information about the issue type: enhancement

Comments

@Sethur
Copy link

Sethur commented Apr 24, 2020

Since JabRef 3.x and JabRef 4.x had release sizes of around 35 to 55 MB while JabRef 5.x now vastly ramped this up to over 330 MB, I did some digging and found that this stems from:

  1. At least for the windows build, there is quite a number of redundant api-ms-win DLLs both on the lowest level and in the main JAR-file. These are small though.
  2. The JRE is now always bundled, there are no packages any more for users who want to stick with the Java version they have installed.
  3. WebKit is bundled once for every OS, no matter the OS the release targets.

I would suggest to get rid of at least the WebKit redundancy. That would already take away some 80 MBs or so.

EDIT: I understand that JabRef 5.x is using the Java Platform Module System (JPMS) now, so developers are supposed to bundle the JDK with their apps, but a runtime directory of >210 MB while the size of the whole JDK 14 is only around 300MB seem suspicious to me.

@AEgit
Copy link

AEgit commented Apr 24, 2020

Probably duplicate of #5771

@tobiasdiez
Copy link
Member

I think there is a problem with the merged module (build/jlinkbase/jilinkjars/JabRef.merged.module). It should only contain class files (and resources) and no dlls at all. This should indeed reduce the size of the installer by 150mb.

@koppor @LyzardKing do you have time to investigate this further?

@tobiasdiez
Copy link
Member

The size of the installer should now be drastically smaller. Can you please check if the webkit issue is still present, and in case it is how you discovered that all os-specific versions are shipped. Thanks!

http://builds.jabref.org/master/

@tobiasdiez tobiasdiez added the status: waiting-for-feedback The submitter or other users need to provide more information about the issue label Jul 27, 2020
@tobiasdiez tobiasdiez removed this from the v5.1 milestone Jul 29, 2020
@ilippert
Copy link
Contributor

JabRef 5.1--2020-07-29--00a4fb2
Linux 5.7.10-201.fc32.x86_64 amd64
Java 14.0.2

my perception is that the file size is smaller, and jabref runs as before.

@Sethur
Copy link
Author

Sethur commented Jul 30, 2020

Looks good to me on Windows 10 as well.

If you now package only the truely required Java modules you can maybe even get the installer close to 100 MB again.

@koppor
Copy link
Member

koppor commented Aug 2, 2020

@Sethur Your wish is hard to do, since it is not a quick win. Quickly checking

mergedModule {
, it seems that we already do that. I created a follow-up issue JabRef#444.

Maybe, our third party libraries (such as citeproc-java) need many modules (refs #6010).

A plugin system enabling the user to choose the featuers (s)he needs could help to reduce the sice. We removed the plugin system a few years ago by purpose to ease maintaining the plugins. We observed that most plugins were maintained for a year or so and then became incompatible with JabRef.

@koppor koppor closed this as completed Aug 2, 2020
koppor pushed a commit that referenced this issue Dec 17, 2022
84dba23 Update international-union-of-crystallography.csl (#6279)
13dd9e8 Update zeitschrift-fur-deutsche-philologie.csl (#6340)
d95b652 Create cahiers-mondes-anciens.csl (#6203)
ded567c Create rassegna-degli-archivi-di-stato-bibliografia-generale.csl (#6275)
124777a Create scientific-online-letters-on-the-atmosphere.csl (#6261)
3c276e7 Create american-medical-association-no-url-alphabetical.csl (#6252)
595ad95 Bump mathieudutour/github-tag-action from 6.0 to 6.1 (#6287)
7008128 Create cambridge-a (#6336)
17e930c Update norsk-apa-manual-note.csl (#6338)
b360859 Update norsk-apa-manual.csl (#6337)
f6c778e Update emerald-harvard.csl (#6335)
d6c6a16 Fix Brazilian quotes on  chicago-author-date.csl (#6317)
a1549b6 Update medizinische-hochschule-hannover.csl (#6330)
da88073 Update journal-of-the-american-college-of-cardiology.csl (#6334)
a520d8e Bump nokogiri from 1.13.9 to 1.13.10 (#6333)
ba54b44 Update royal-society-of-chemistry.csl (#6328)
1378ba7 LUSEM: Remove full stop (#6332)
9e3cf89 Create interpreting.csl (#6254)
bef74ed Create conservation-science-and-practice.csl (#6258)
9fb7eb7 Bug fixes triangle.csl (#6251)
e6112ba Update ucl-university-college-apa.csl (#6250)
6dcba3a Update engineering-technology-and-applied-science-research.csl (#6247)
00fe4a2 Create constructivist-foundations.csl (#6243)
03ad71b Create les-mondes-du-travail.csl (#6234)
a2bce86 Corrections based on author instructions (#6306)

git-subtree-dir: buildres/csl/csl-styles
git-subtree-split: 84dba23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
installation status: waiting-for-feedback The submitter or other users need to provide more information about the issue type: enhancement
Projects
Archived in project
Development

No branches or pull requests

5 participants