Modify

Opened 12 months ago

Closed 12 months ago

Last modified 11 months ago

#19937 closed enhancement (fixed)

Update macOS build process

Reported by: Stereo Owned by: Don-vip
Priority: normal Milestone: 20.11
Component: Installer MacOS Version:
Keywords: github Cc:

Description (last modified by Stereo)

Hi,

https://github.com/openstreetmap/josm/pull/65/files describes the changes required to get actual macOS releases built on GitHub Actions. https://github.com/openstreetmap/josm/pull/65.diff is the machine-readable diff.

Because the tests are currently failing, the action has been configured to only run on macos, and to build automatically instead of waiting for the tests to fail.

https://github.com/thomersch/josm/releases has a few test releases. If the build number isn't the same as tested, the releases get marked as pre-releases.

The next step will be to trigger some kind of update on the main wiki page when a release is actually built.

Attachments (0)

Change History (17)

comment:1 Changed 12 months ago by Stereo

Description: modified (diff)

comment:2 Changed 12 months ago by Stereo

On linking to the latest release: according to https://docs.github.com/en/free-pro-team@latest/github/administering-a-repository/linking-to-releases we can just link to https://github.com/openstreetmap/josm/releases/latest/download/JOSM-macos.zip.

The nightlies download page can just link to all releases at https://github.com/openstreetmap/josm/releases/ to also show the ones classified as prerelease.

Last edited 12 months ago by Stereo (previous) (diff)

comment:3 Changed 12 months ago by Don-vip

In 17236/josm:

see #19937 - Update macOS build process (patch by Stereo, modified)

See See https://github.com/openstreetmap/josm/pull/65

comment:4 Changed 12 months ago by simon04

@Stereo, big thanks for taking care of the macOS build process!

comment:5 Changed 12 months ago by Stereo

Just scratching my own itch :).

As @Don-vip has pointed out, Java 14 is actually not supported anymore already. Before this can really be used for releases, we'll have to get Java 15 builds going. My previous attempts have been abominable failures: https://github.com/thomersch/josm/runs/1259479550

comment:6 Changed 12 months ago by Don-vip

In 17239/josm:

see #19937 - Fix building on java 15. Disable java 14 fully, 16-ea for macOS (patch by Stereo)

See https://github.com/openstreetmap/josm/pull/66

comment:7 Changed 12 months ago by Stereo

Almost there! Java 15's jpackage has removed a dylib, and codesign fails on that.

Would it please be possible to delete line 73 of native/macosx/macos-jpackage.sh? Where it says:

app/JOSM.app/Contents/MacOS/libapplauncher.dylib \

and then because I messed up the path, in .github/workflows/ant.yml update line 140 near the bottom from:

asset_path: app/josm-custom.jar

to:

asset_path: dist/josm-custom.jar

Last edited 12 months ago by Stereo (previous) (diff)

comment:8 Changed 12 months ago by Don-vip

In 17244/josm:

see #19937 - Update macOS build process (patch by Stereo)

comment:9 Changed 12 months ago by Don-vip

Milestone: 20.10
Owner: changed from team to Don-vip
Status: newassigned

comment:10 Changed 12 months ago by Stereo

https://github.com/openstreetmap/josm/releases now contains a macOS app on every build. Thank you all! I'll ask people to test it to find any eventual bugs before 20.10.

comment:11 Changed 12 months ago by Don-vip

I see only Java 15 builds, we need also to ship LTS builds (8 and 11). Also 16-ea would be very useful to test Java bugfixes.

comment:12 Changed 12 months ago by Stereo

Since jpackager only supports 14 and up, I had no plans to do that. If someone really wants to build JOSM.app for Java 8 or 11 (why?), I guess they can use the legacy build process?

Noted for 16.

comment:13 in reply to:  12 Changed 12 months ago by Don-vip

Replying to Stereo:

Since jpackager only supports 14 and up

I forgot about that, you're right. So we'll start to provide LTS builds this way with Java 17 then.

comment:14 Changed 12 months ago by Don-vip

Keywords: github added

comment:15 Changed 12 months ago by Don-vip

In 17254/josm:

see #19937 - see #19724 - Enable macOS build on Java 16-ea instead of 15, add an option to disable Error-Prone at build time

comment:16 Changed 12 months ago by Stereo

Resolution: fixed
Status: assignedclosed

This seems to work well enough. Closing.

There's a known issue where JOSM closes when you open it for the first time, but opens fine every time after that. Tracking in #20033

Last edited 11 months ago by Stereo (previous) (diff)

comment:17 Changed 11 months ago by Don-vip

Milestone: 20.1020.11

Milestone renamed

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Don-vip.
as The resolution will be set.
The resolution will be deleted.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.