Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Post 2.3.0~alpha1 release bumps and fixes #6204

Merged
merged 6 commits into from
Sep 23, 2024

Conversation

kit-ty-kate
Copy link
Member

@kit-ty-kate kit-ty-kate commented Sep 20, 2024

The release process for 2.3.0~alpha1 was pretty eventful and a couple of fixes were required after the merge of #5381 which we missed.

This PR is also bumping master to 2.4.0~alpha1 as a new 2.3 branch was already created. I'll create a similar PR for the 2.3 branch as well

Backported in #6205

@kit-ty-kate kit-ty-kate added this to the 2.4.0~alpha1 milestone Sep 20, 2024
Bump done in 1e79693
Dune 2.6 makes the opam executables non-writeable so we have to chmod to
strip the symbols
… the FreeBSD package manager

This can happen when the current release is out-of-date (e.g. FreeBSD 13.2 vs 13.3)
This leaves more time for the release manager to execute 'net stop sshd && net start sshd' when needed, as sometimes Windows will refuse to have users ssh into the machine without a password
dune 2.6 has a bug that prevents opam-core from being built
Copy link
Member

@dra27 dra27 left a comment

Choose a reason for hiding this comment

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

All good - on a combined altar of removing some Dune magic from the scripts and reducing code duplication, it looks like it would be worth adding a target to Makefile which produces a stripped opam executable.

Comment on lines +30 to 33
chmod u+w _build/default/src/client/opamMain.exe && \
strip opam ; \
} >&2 && \
cat opam
Copy link
Member

Choose a reason for hiding this comment

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

Wouldn't it be slightly better to copy it here? (or even potentially move this into Makefile - make opam-stripped or some such)? Along the lines of:

Suggested change
chmod u+w _build/default/src/client/opamMain.exe && \
strip opam ; \
} >&2 && \
cat opam
Suggested change
chmod u+w _build/default/src/client/opamMain.exe && \
strip opam ; \
} >&2 && \
cat opam
cp opam opam-stripped && \
chmod 775 opam-stripped && \
strip opam-stripped ; \
} >&2 && \
cat opam-stripped

@@ -124,6 +123,7 @@ host: $(OUTDIR)/opam-full-$(VERSION).tar.gz build/$(HOST).env
echo "$(call LINKING,$(HOST_OS))" >src/client/linking.sexp && \
$(MAKE) opam; \
)
chmod u+w build/opam-full-$(VERSION)/_build/default/src/client/opamMain.exe
Copy link
Member

Choose a reason for hiding this comment

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

Similarly here: in fact, the duplication kinda increases the case for having $(MAKE) opam-stripped?

Copy link
Member Author

Choose a reason for hiding this comment

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

done in #6208

@kit-ty-kate kit-ty-kate merged commit b812814 into ocaml:master Sep 23, 2024
29 checks passed
@kit-ty-kate kit-ty-kate deleted the post-2.3.0-alpha1 branch September 23, 2024 13:13
@avsm
Copy link
Member

avsm commented Sep 23, 2024

Just a minor data point that makes it a bit easier to package in operating systems is to use similar targets to GNU projects: in this case, it would be install-strip: https://www.gnu.org/prep/standards/html_node/Standard-Targets.html

@kit-ty-kate
Copy link
Member Author

in our case the stripped binary is not installed but only copied to the root directory of the project

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