jamulus icon indicating copy to clipboard operation
jamulus copied to clipboard

Update macOS runner (legacy)

Open ann0see opened this issue 3 years ago • 6 comments

Describe the bug

GitHub is deprecating the use of macOS Catalina: https://github.com/actions/virtual-environments/issues/5583

We'll need to update soon to still support the legacy build.

To Reproduce

/

Expected behavior

/

Screenshots

/

Operating system macOS

ann0see avatar Aug 08 '22 14:08 ann0see

We currently use Xcode 12.1.1 for the legacy build. This version is no longer available on macos-11 images. We either need to downgrade to 11.7 or upgrade to 12.4.

Based on the comments, we can't upgrade to 12.4 as it contains SDK 11.x which is not supported by Qt5: https://github.com/jamulussoftware/jamulus/blob/340ea33649b0b102e71dcb31a19bd40c5a21bede/.github/workflows/autobuild.yml#L157-L161 Therefore, it seems like the only valid options would be downgrading to 11.7 even if it sounds totally wrong.

hoffie avatar Aug 12 '22 22:08 hoffie

Started a build here: https://github.com/hoffie/jamulus/runs/7814643184?check_suite_focus=true

https://github.com/hoffie/jamulus/pull/new/autobuild-macos-11-legacy

hoffie avatar Aug 12 '22 22:08 hoffie

The question is if not supported = produces broken build or just untested.

ann0see avatar Aug 14 '22 06:08 ann0see

This issue is almost certainly going to affect us this year. We should somehow figure out how to continue with legacy builds.

  1. Do we now which macOS versions require the legacy version at all?
  2. Are those macOS versions still supported?
  3. Do we know of any users who use such software?

I'd propose to ask at least the latter question in the Discussion section (maybe ping some known Mac users). If they are still on those old releases and have good reasons, we might keep it. Otherwise I'd argue for dropping support for that build.

@ann0see Could you do that? Pinging @softins here as well in case he has opinions on that... :)

hoffie avatar Sep 16 '22 22:09 hoffie

@hoffie macOS legacy is being used: https://somsubhra.github.io/github-release-stats/?username=jamulussoftware&repository=jamulus&page=1&per_page=5

Ofc. Not that many people in comparison to the normal Mac version, but still a considerable amount. I do know quite some (not so tech savvy) musicians who use outdated macs/PCs for music applications like my second choir leader.

Especially buying a new Mac is expensive and a lot of music applications work well on these old machines.

ann0see avatar Sep 17 '22 06:09 ann0see

We could of course make a policy shift: provide legacy base version, but if we introduce features which don't work out of the box on old Qt versions, we don't provide workarounds (as for softins' language PR, where we'd drop legacy translation support).

ann0see avatar Sep 17 '22 07:09 ann0see

I think 3.9.1 will be the last version we can build on the old runner.

ann0see avatar Oct 07 '22 19:10 ann0see

Meh, problems here as well: something (brew?) doesn't support xcode 11.7. :( https://github.com/hoffie/jamulus/actions/runs/3365069827/jobs/5580149907#step:10:1427

Maybe we can try an older brew or switch xcode right before the create-dmg step.

The legacy build is a collection of hacks and workarounds. :(

hoffie avatar Oct 31 '22 22:10 hoffie

That's probably the problematic check: https://github.com/Homebrew/brew/blob/master/Library/Homebrew/os/mac/xcode.rb#L363

We could workaround that by switching to a more recent xcode for brew/create-dmg stage. I've tried that here: https://github.com/hoffie/jamulus/actions/runs/3369510835

Can someone test if the resulting build is usable as a "legacy" build? If so, I'll try to come up with a way to get this into a mergable state...

hoffie avatar Nov 01 '22 13:11 hoffie

Previous artifacts expired, I've kicked off a new run here: https://github.com/hoffie/jamulus/actions/runs/3492108643

hoffie avatar Nov 17 '22 21:11 hoffie

@hoffie will this have a PR ready soon?

pljones avatar Apr 19 '23 15:04 pljones