lmms icon indicating copy to clipboard operation
lmms copied to clipboard

CI: Run LMMS

Open JohannesLorenz opened this issue 1 year ago • 4 comments

This runs lmms --version and lmms --help in the github CI. Further checks, like importing an LMMS project to WAV via CLI, are conceivable.

Note: This is a split of https://github.com/LMMS/lmms/pull/6983 . Mutliple reviews have been done there, but one from DomClark is still outstanding, which I am reworking here.

Edit: CI is finally working, but I still need to rework the comments from review -> Keeping this a draft.

JohannesLorenz avatar Aug 04 '24 15:08 JohannesLorenz

I tried everything. CI is just ignoring the build.yml at all :cry:

JohannesLorenz avatar Aug 09 '24 19:08 JohannesLorenz

Looking at the workflow results, it says that there is an error at the bottom.

sakertooth avatar Aug 09 '24 22:08 sakertooth

Ah, this can be seen only via the Actions tab. Thanks saker!

JohannesLorenz avatar Aug 10 '24 07:08 JohannesLorenz

Status: I still need to care about proper downloading of the artifacts.

JohannesLorenz avatar Aug 26 '24 17:08 JohannesLorenz

Will merge in 7 days if there are no complaints.

JohannesLorenz avatar Feb 15 '25 23:02 JohannesLorenz

Will merge in 7 days if there are no complaints.

@JohannesLorenz I know you mentioned on Discord that you were awaiting some help from Dom in regards to testing lmms.exe on Windows... I'm happy to step in and do this for you however when I tested master on Windows and from my testing the terminal support is either broken or not obvious how to get something usable to STDOUT.

This leaves use a few options:

  1. Ignore and leave Windows alone for now
    --OR--
  2. Figure out why (Related; https://github.com/LMMS/lmms/pull/4719)
    --OR--
  3. Add a secondary lmms-console.exe target to our build system that enforces a compile with -mconsole, mentioned 8 years ago here.

tresf avatar Feb 17 '25 21:02 tresf

Thanks for offering help.

however when I tested master on Windows and from my testing the terminal support is either broken or not obvious how to get something usable to STDOUT.

At least, I can say for sure that branch JohannesLorenz/ci-run-lmms, which was an old version where I did build and run in one script, worked fine on Windows, so the --help commandline output does work, probably just not on your machine (for whatever reasons).

If there are more complex solutions required to get it run for you, I would rather finish this for Linux and Mac. Like I said, I want to reduce the number of open PRs. A Windows solution can still be delivered later.

JohannesLorenz avatar Feb 19 '25 21:02 JohannesLorenz

so the --help commandline output does work, probably just not on your machine (for whatever reasons).

This could be the case. I'm using Prism emulation on ARM. I'll see if it behaves differently on Wintel.

tresf avatar Feb 20 '25 00:02 tresf

so the --help commandline output does work, probably just not on your machine (for whatever reasons).

This could be the case. I'm using Prism emulation on ARM. I'll see if it behaves differently on Wintel.

Nope, no luck. I can get some carla dll errors to show up, but that's about it. Maybe the log handler isn't being registered in time or something.

tresf avatar Feb 20 '25 01:02 tresf

Maybe the log handler isn't being registered in time or something.

Using a local msys2 build, I tried moving the AttachConsole earlier in main.cpp, but I still can't get lmms.exe --help to work in PowerShell.

So I feel unless we want to either refactor main.cpp's --help to be a QCoreApplication or compile using -mconsole, the Windows portions of this task will have to wait until another time and should not hold up this PR.

tresf avatar Feb 24 '25 04:02 tresf

@JohannesLorenz since I haven't received any help over in #7732, I think we'll have to remove Windows from scope of this PR for now. If someone's able to help over on that PR to get a second binary for calling LMMS from console, we can re-add it.

tresf avatar Mar 31 '25 15:03 tresf