lovasoa / highs-js

Javascript linear programming library
https://lovasoa.github.io/highs-js/
MIT License
51 stars 14 forks source link

ci: update what version of emsdk is used to compile #24

Closed RebeccaStevens closed 2 years ago

RebeccaStevens commented 2 years ago

fix #23

You may want to migrate to https://hub.docker.com/r/emscripten/emsdk but I thought it best not to make such a large change to resolve this issue.

lovasoa commented 2 years ago

You can't just set version to "latest". One day there will be a breaking change or a bug in emscripten, and this would just break highsjs. You have to set it to a version you tested and you know works.

RebeccaStevens commented 2 years ago

Doesn't the next few lines test that the build was successfully and works as expected?

If there's a major update to emsdk that break highs, those tests should prevent a broken build from being released and report the issue. When that happens, it will just require another small update to the build process to either pin to an older version of emsdk or to make the necessary updates.

This allows future releases of highs to use the latest features and bugfixes of emsdk as they become available without any developer overhead.

Pinning to a specific version all the time doesn't seem ideal...

lovasoa commented 2 years ago

Yes, the problem is less with releasing a broken build (which could still happen), and more with requiring more maintenance work. We want to be able to update emscripten and highs independently.

RebeccaStevens commented 2 years ago

Should be sorted now

lovasoa commented 2 years ago

adding ln -s /emsdk/upstream/emscripten /usr/share/emscripten should be enough to let cmake find emscripten