Skip to content

Merge back Windows launcher code and add release workflow#6869

Merged
neilcsmith-net merged 2 commits intoapache:masterfrom
neilcsmith-net:windows-launchers
Jan 3, 2024
Merged

Merge back Windows launcher code and add release workflow#6869
neilcsmith-net merged 2 commits intoapache:masterfrom
neilcsmith-net:windows-launchers

Conversation

@neilcsmith-net
Copy link
Copy Markdown
Member

@neilcsmith-net neilcsmith-net commented Dec 20, 2023

This PR merges back the Windows native launcher code back into the main repo, and adds a GitHub workflow to build source and binary zips for release.

The first commit copies back files from https://github.com/apache/netbeans-native-launchers into their original locations. Unfortunately, at present, history from the separate repo is lost.

The second commit fixes paths and adds a GitHub workflow based on the dlight and profiler workflows. This builds a source and binary zip that we can release via dist.a.o in the same way as those other native binaries.

The workflow uses the same technique of building a source zip keeping the native libraries in their existing relative path locations. Separate isolated steps build the binary files and binary zip from that source zip (ensuring completeness of the sources).

Artefacts still need testing. A second PR will need generating to use the staged artefacts for test build and vote (see process used for other binaries).

As well as pending changes, we'll need to consider versioning in versions.h and possibly whether that can be configured via environment variables that can be set via GH workflow??

Copy link
Copy Markdown
Member

@mbien mbien left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

workflow looks good.

Not importing the history is probably fine in this case.

@mbien
Copy link
Copy Markdown
Member

mbien commented Dec 20, 2023

wondering if a java program compiled to native image could launch NB, analog to how the mvnd CLI client works which communicates with the daemon.

@neilcsmith-net
Copy link
Copy Markdown
Member Author

@mbien have had that thought, too. Some easier replacement for the Windows launchers would be good to consider in a future update. In some ways, having the bulk of the logic in a script form could also be good to explore. The macOS Swift launcher is just a tiny stub that executes the shell script. Anyway, let's follow up on that on mailing list or Slack. Important thing initially is to find an easier way to include the existing functionality.

@neilcsmith-net
Copy link
Copy Markdown
Member Author

Just updated the second (IDE) version file to match the one in bootstrap. Need to look at how we inject these from the action ideally.

Currently set to 101.1.0.0 because that is higher than existing and no way to be confused with IDE / platform versions (for the foreseeable future!)

Copy link
Copy Markdown
Contributor

@ebarboni ebarboni left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@neilcsmith-net
Copy link
Copy Markdown
Member Author

I'll look to merge this tomorrow unless anyone has further comments or wants to request changes.

cc/ @jlahoda if we can then bring the changes suggested in the separate repo on top of this, we should be able to proceed with a launcher release with those changes prior to freeze.

@neilcsmith-net neilcsmith-net removed the do not merge Don't merge this PR, it is not ready or just demonstration purposes. label Jan 2, 2024
@mbien mbien added this to the NB21 milestone Jan 2, 2024
@mbien
Copy link
Copy Markdown
Member

mbien commented Jan 2, 2024

I think this would close https://issues.apache.org/jira/browse/NETBEANS-1590 too once merged. I am mostly posting this because i would otherwise forget about it.

@neilcsmith-net
Copy link
Copy Markdown
Member Author

@mbien in the short term, yes. We also need to not forget about finding a better way to manage versioning so that we don't let that issue recur. And also, how we progress from 101.1.0.0 - in my mind, incidentally, I used 101 as a prefix ahead of the IDE and anything used before, with the thought we'd then do 101.2..., 101.3... etc.

@mbien
Copy link
Copy Markdown
Member

mbien commented Dec 4, 2024

should https://github.com/apache/netbeans-native-launchers be archived?

@neilcsmith-net
Copy link
Copy Markdown
Member Author

should https://github.com/apache/netbeans-native-launchers be archived?

@mbien start a consensus thread on dev@ Likely will be asked for by infra to enact this change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants