News:

Simutrans.com Portal
Our Simutrans site. You can find everything about Simutrans from here.

FYI GitHub Actions will deprecrate Node12

Started by Matthew, February 26, 2023, 05:03:13 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Matthew

GitHub is now attaching a note to both Standard and Extended build Actions warning that Node12 will be deprecated. It points to this blogpost which warns that maintainers(?) need to move to Node16. There is no deadline yet but summer 2023 is mentioned, so it seems not imminent.

I am aware that the GitHub repos aren't officially supported by Standard but I don't know where else to raise it.

I have zero experience with JavaScript so I'd not be the best person to help with this.
(Signature being tested) If you enjoy playing Simutrans, then you might also enjoy watching Japan Railway Journal
Available in English and simplified Chinese
如果您喜欢玩Simutrans的话,那么说不定就想看《日本铁路之旅》(英语也有简体中文字幕)。

Dwachs

Thanks for the message. I do not see that warning message. Imho we do not use any node-related code in the build actions.
Parsley, sage, rosemary, and maggikraut.


prissi

The listserver runs independent of github actions. Actions are not suitable to run a server since there is a time limit. So nothing to worry, indeed.

Matthew

Quote from: Dwachs on February 26, 2023, 08:18:30 AMThanks for the message. I do not see that warning message. Imho we do not use any node-related code in the build actions.

Thank you for the quick reply. This is an example of what I see:



Looking more closely it seems that it might relate to an Action that our workflow is calling? Something to do with uploading releases?

I found the issue about this warning in that Action's repo. It seems that the Action was updated to Node 16 in version 1.10. And in fact the latest version of the script is 2.5. So possibly we are running an outdated version of it. Our YAML file says:

Quotename: Update binaries of Nightly Release
      uses: svenstaro/upload-release-action@v1-release

The discussion of that issue also mentioned that the Action has been forked here to deal with this problem, though the GitHub stars etc. suggest the fork has not proved very popular.

Hopefully this info will save some digging for anyone who understands GitHub Actions, which I don't.
(Signature being tested) If you enjoy playing Simutrans, then you might also enjoy watching Japan Railway Journal
Available in English and simplified Chinese
如果您喜欢玩Simutrans的话,那么说不定就想看《日本铁路之旅》(英语也有简体中文字幕)。

Dwachs

Thanks! I changed the actions to not use the deprecate node stuff.

But the MacOS-build action also targets a deprecated system. Not sure about this.
Parsley, sage, rosemary, and maggikraut.

prissi


Dwachs

Parsley, sage, rosemary, and maggikraut.

prissi

No, this is very complicated. The fragile build system works up to Api level 29. Google wants at least 31 (soon 32), i.e. only support phone newer than three years ago or no listing in the play store. Also needs to use new build tools, but the syntax of calling clang has changed. This is however encoded somewhere deep inside the build system.

The proper way would be to start from scratch, i.e. download SDL2, freetype, libzstd, (libz and libpng are needed to build SLD2 anyway, I think) and then build them independent from the pelya patch. That would hopefully work also next year.

Unfortunately, my time to go on this endevour is very limited. Quick fixes doe not work, sicne google change the build system completely from ant to gradle to whatever now. Sicne any app has to provide all libs, it has to build them (why not lining statically then but enforcing individual shared libs?!?) and many other pitfalls.

It seems worse than apple ...

Roboron

I don't know if it helps, but I found that pelya's port has been updated in this fork https://github.com/n-ice-community/commandergenius (OTTD: https://github.com/n-ice-community/openttd-android)

Maybe you can find what you are looking for there...

Roboron

I've managed to fix the clang error by setting APILEVEL to 21 at project/jni/application/setEnvironment-armeabi-v7a.sh

=> https://github.com/Roboron3042/commandergenius/commit/c4645c9dcb05833512fceabf48b32dc6d7d40456


However, now it fails with:
src/simutrans/sys/clipboard_s2.cc:14:10: fatal error: 'SDL2/SDL.h' file not found
#include <SDL2/SDL.h>