codecharta: Standalone app doesn't work

Bug

Expected Behavior

Given a new version is released When downloading the assets Then we get executable for Windows, Mac and Linux.

Actual Behavior

See ci output of job “Build visualization” and available assets of release 1.96.0:

  • Windows version is not build due to missing wine in build image
  • Mac x64 is not build due to a bug in nwjs-builder-phoenix; maybe related to this bug and this bug
  • When I download Linux x64 version and want to run it in my Ubuntu 20.04 WSL I get the following error: (codecharta-visualization:293): Pango-ERROR **: 17:54:03.066: Harfbuzz version too old (1.2.1)

Open questions

  • Do we need any standalone version and if so do we need Windows, Mac and Linux? -> erstmal ja
  • For Linux: Is it the user responsibility to have the right version of Harfbuzz or out responsibility to use a not outdated version?
  • nwjs-builder-phoenix isn’t maintained anymore. Do we want to migrate away from it?

Specifications

  • is released in online-demo: yes
  • CodeCharta Version: 1.96.0
  • OS: Windows, Mac, Linux

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 15 (7 by maintainers)

Commits related to this issue

Most upvoted comments

Ich habe den nwjs Build unter Windows untersucht mit folgendem Ergebnis: Es läuft aktuell nicht, da der nwjs-builder-phoenix das Modul node-rcedit in einer sehr alten Version referenziert, die nur die 32-bit Version der “rcedit.exe” mitbringt. Daher läuft es in unserer 64-bit Buildpipeline nicht. Ein 32-bit kompatibles Wine dort zu installieren ist nicht trivial. Sinnvoller wäre es, die neuere node-rcedit zu nutzen, die unter 64-bit läuft. Mit folgendem snippet in der package.json kann ich zwar eine neuere node-rcedit erzwingen, allerdings läuft dann der builder nicht mehr durch, da sich das API von node-rcedit geändert hat:

"overrides": {
  "nwjs-builder-phoenix": {
    "rcedit": "^3.0.1"
  }
}

Wir müssten also unsere eigene, angepasste Version von nwjs-builder-phoenix pflegen.

Stattdessen würde ich empfehlen, erstmal das alternative Build-Tool nw-builder (https://github.com/nwutils/nw-builder) zu testen. Das ist zwar nur die zweite Wahl laut Doku (https://docs.nwjs.io/en/latest/For Users/Package and Distribute/), aber dafür deutlich aktueller (letztes Update 2022 statt 2018) - vielleicht ist die Doku veraltet. Es scheint auch ein sehr ähnliches Featureset zu haben.

But the web build doesn’t require internet. And it works on all operating systems without any additional dependencies. Doesn’t that already meet the requirements? Plus it’s already available for every version we release link grafik

We might have different understandings when it comes to this: #2573 was about simplifying the build process for the standalone version. We used to have two types of builds: one for the web that caused different javascript code to be executed than in the standalone version. Now both builds are identical but we still have to be able to execute the standalone version properly.

So if I understood this issue correct it’s only about not being able to properly start the standalone version at the moment and that should definitely be the case.