Skip to content

OCaml: default to version 5.3#397478

Merged
adamcstephens merged 10 commits into
NixOS:masterfrom
vbgl:ocaml-default-5.3
Apr 18, 2025
Merged

OCaml: default to version 5.3#397478
adamcstephens merged 10 commits into
NixOS:masterfrom
vbgl:ocaml-default-5.3

Conversation

@vbgl

@vbgl vbgl commented Apr 9, 2025

Copy link
Copy Markdown
Contributor

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions Bot added the 6.topic: ocaml OCaml is a general-purpose, high-level, multi-paradigm programming language. label Apr 9, 2025
@nix-owners nix-owners Bot requested a review from ulrikstrid April 9, 2025 20:38
@github-actions github-actions Bot added 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. labels Apr 9, 2025
@nix-owners nix-owners Bot requested review from Julow and Zimmi48 April 9, 2025 20:45
@adamcstephens

Copy link
Copy Markdown
Contributor

Format check is failing

@vbgl

vbgl commented Apr 10, 2025

Copy link
Copy Markdown
Contributor Author

Format check is failing

If you have some spare time, you can file a bug report against nixfmt (the last argument to lib.throwIf should not be indented).

@adamcstephens

adamcstephens commented Apr 10, 2025

Copy link
Copy Markdown
Contributor

Please apply nixfmt-rfc-style in its current version. The entire tree has been formatted and we should consider a failing check to be actionable here. An issue in its output is not justification for ignoring the check, and you’d be leaving this problem for the next user or the next treewide format.

I understand you may not like how this is being formatted, it may even be a bug upstream, but in the end these are mostly nits that the standardization is intended to remove.

@vbgl

vbgl commented Apr 10, 2025

Copy link
Copy Markdown
Contributor Author

You might be right. But this is certainly not the place to discuss this issue.

@adamcstephens

Copy link
Copy Markdown
Contributor

We're discussing it here because of the failing check. Will you apply the formatter to fix that failing check?

@vbgl

vbgl commented Apr 10, 2025

Copy link
Copy Markdown
Contributor Author

No.

GaetanLepage

This comment was marked as duplicate.

@adamcstephens adamcstephens left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Formatting is no longer optional and failing to do so can cause failures for other PRs. This is true since the treewide format and enforcement PR. #380990.

Please see the approved and adopted RFC https://github.com/NixOS/rfcs/blob/master/rfcs/0166-nix-formatting.md

If you don’t like the output one suggestion could be to use this instead

assert lib.throwIf (lib.versionAtLeast ocaml.version "5.3") "eliom is not available for OCaml ${ocaml.version}" true;

@piegamesde

Copy link
Copy Markdown
Member

If you have some spare time, you can file a bug report against nixfmt (the last argument to lib.throwIf should not be indented).

This not a bug. Nixfmt is not reponsible for making every Nixpkgs idiosyncracy look good, and either way it has no means of doing that without resorting to static code analysis

@adamcstephens

Copy link
Copy Markdown
Contributor

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review pr 397478


x86_64-linux

⏩ 3 packages marked as broken and skipped:
  • linuxKernel.packages.linux_5_4_hardened.drbd
  • linuxPackages_5_4_hardened.drbd
  • qubes-core-vchan-xen
❌ 22 packages failed to build:
  • diffoscope
  • diffoscope.dist
  • diffoscope.man
  • gnat14Packages.gnatprove
  • htcondor
  • linuxKernel.packages.linux_5_10.drbd
  • linuxKernel.packages.linux_6_13.drbd
  • linuxPackages_6_13_hardened.drbd (linuxKernel.packages.linux_6_13_hardened.drbd)
  • linuxPackages_latest.drbd (linuxKernel.packages.linux_6_14.drbd)
  • linuxPackages_ham.drbd (linuxKernel.packages.linux_ham.drbd)
  • linuxPackages_latest-libre.drbd (linuxKernel.packages.linux_latest_libre.drbd)
  • linuxPackages_lqx.drbd (linuxKernel.packages.linux_lqx.drbd)
  • linuxPackages_xanmod_latest.drbd (linuxKernel.packages.linux_xanmod_latest.drbd ,linuxPackages_xanmod_stable.drbd)
  • linuxPackages_zen.drbd (linuxKernel.packages.linux_zen.drbd)
  • python313Packages.guestfs
  • python313Packages.guestfs.dist
  • qemu_xen
  • qemu_xen.debug
  • qemu_xen.doc
  • qemu_xen.ga
  • sgx-psw
  • usync
✅ 242 packages built:
  • acgtk
  • advi
  • alt-ergo
  • alt-ergo.bin
  • anders
  • appvm
  • beluga
  • bibtex2html
  • caper
  • cmdstan
  • coccinelle
  • collectd
  • comby
  • compcert
  • compcert.doc
  • compcert.lib
  • compcert.man
  • coq2html
  • coqPackages.QuickChick
  • coqPackages.autosubst
  • coqPackages.coq-elpi
  • coqPackages.coqeal
  • coqPackages.coquelicot
  • coqPackages.deriving
  • coqPackages.equations
  • coqPackages.extructures
  • coqPackages.fourcolor
  • coqPackages.gaia
  • coqPackages.hierarchy-builder
  • coqPackages.jasmin
  • coqPackages.mathcomp
  • coqPackages.mathcomp-algebra
  • coqPackages.mathcomp-algebra-tactics
  • coqPackages.mathcomp-bigenough
  • coqPackages.mathcomp-character
  • coqPackages.mathcomp-field
  • coqPackages.mathcomp-fingroup
  • coqPackages.mathcomp-finmap
  • coqPackages.mathcomp-real-closed
  • coqPackages.mathcomp-solvable
  • coqPackages.ssreflect (coqPackages.mathcomp-ssreflect)
  • coqPackages.mathcomp-tarjan
  • coqPackages.mathcomp-word
  • coqPackages.mathcomp-zify
  • coqPackages.metacoq
  • coqPackages.metacoq-common
  • coqPackages.metacoq-erasure
  • coqPackages.metacoq-erasure-plugin
  • coqPackages.metacoq-pcuic
  • coqPackages.metacoq-quotation
  • coqPackages.metacoq-safechecker
  • coqPackages.metacoq-safechecker-plugin
  • coqPackages.metacoq-template-coq
  • coqPackages.metacoq-template-pcuic
  • coqPackages.metacoq-translations
  • coqPackages.metacoq-utils
  • coqPackages.multinomials
  • coqPackages.odd-order
  • coqPackages.reglang
  • cryptoverif
  • csvtool
  • cvehound
  • cvehound.dist
  • distrobuilder
  • docfd
  • docker-machine-kvm2
  • dot-merlin-reader
  • dune-release
  • dune_2
  • dune_3
  • easycrypt
  • eff
  • fdroidserver
  • fdroidserver.dist
  • flow
  • framac
  • fstar
  • glsurf
  • gnat12Packages.gnatprove
  • gnatprove (gnatPackages.gnatprove)
  • gnome-boxes
  • google-drive-ocamlfuse
  • gradescope-submit
  • haxe (haxe_4_3)
  • haxePackages.format
  • haxePackages.heaps
  • haxePackages.hlopenal
  • haxePackages.hlsdl
  • hxcpp (haxePackages.hxcpp)
  • haxePackages.hxcs
  • haxePackages.hxjava
  • haxePackages.hxnodejs_4
  • haxe_4_0
  • haxe_4_1
  • headache
  • heptagon
  • hevea
  • hivex
  • hol_light
  • ikos
  • iprover
  • jackline
  • jasmin-compiler
  • jasmin-compiler.bin
  • jasmin-compiler.lib
  • kdePackages.kalzium
  • kdePackages.kalzium.debug
  • kdePackages.kalzium.dev
  • kdePackages.kalzium.devtools
  • ledit
  • libbap
  • libguestfs
  • libguestfs.guestfsd
  • librenms
  • libvirt
  • libvirt-glib
  • libvirt-glib.dev
  • libvirt-glib.devdoc
  • libvmi
  • libvmi.dev
  • libvmi.lib
  • ligo
  • linuxPackages_5_10_hardened.drbd (linuxKernel.packages.linux_5_10_hardened.drbd)
  • linuxKernel.packages.linux_5_15.drbd
  • linuxPackages_5_15_hardened.drbd (linuxKernel.packages.linux_5_15_hardened.drbd)
  • linuxKernel.packages.linux_5_4.drbd
  • linuxKernel.packages.linux_6_1.drbd
  • linuxPackages.drbd (linuxKernel.packages.linux_6_12.drbd)
  • linuxPackages_hardened.drbd (linuxPackages_6_12_hardened.drbd)
  • linuxPackages_6_1_hardened.drbd (linuxKernel.packages.linux_6_1_hardened.drbd)
  • linuxKernel.packages.linux_6_6.drbd
  • linuxPackages_6_6_hardened.drbd (linuxKernel.packages.linux_6_6_hardened.drbd)
  • linuxPackages-libre.drbd (linuxKernel.packages.linux_libre.drbd)
  • linuxPackages_xanmod.drbd (linuxKernel.packages.linux_xanmod.drbd)
  • liquidsoap
  • llpp
  • merge-fmt
  • mgmt
  • minikube
  • mopsa (mopsa.bin)
  • msat
  • multipass
  • obelisk
  • obuild
  • ocaml
  • ocaml-crunch (ocaml-crunch.bin ,ocaml-crunch.lib)
  • ocaml-top
  • ocamlformat (ocamlformat_0_27_0)
  • ocamlformat_0_19_0
  • ocamlformat_0_20_0
  • ocamlformat_0_20_1
  • ocamlformat_0_21_0
  • ocamlformat_0_22_4
  • ocamlformat_0_23_0
  • ocamlformat_0_24_1
  • ocamlformat_0_25_1
  • ocamlformat_0_26_0
  • ocamlformat_0_26_1
  • ocsigen-i18n
  • odig
  • omake
  • opaline
  • opam
  • opam-installer
  • opam-publish
  • opam.installer
  • opam2json
  • orpie
  • ott
  • patdiff
  • pdfsandwich
  • perl538Packages.SysVirt
  • perl538Packages.SysVirt.devdoc
  • perl540Packages.SysVirt
  • perl540Packages.SysVirt.devdoc
  • podman-bootc
  • prometheus-libvirt-exporter
  • prooftree
  • proverif
  • python312Packages.bap
  • python312Packages.bap.dist
  • python312Packages.cmdstanpy
  • python312Packages.cmdstanpy.dist
  • python312Packages.guestfs
  • python312Packages.guestfs.dist
  • python312Packages.libvirt
  • python312Packages.libvirt.dist
  • python312Packages.prophet
  • python312Packages.prophet.dist
  • xen (python312Packages.xen)
  • xen.boot (python312Packages.xen.boot)
  • xen.dev (python312Packages.xen.dev)
  • xen.doc (python312Packages.xen.doc)
  • xen.man (python312Packages.xen.man)
  • python313Packages.bap
  • python313Packages.bap.dist
  • python313Packages.cmdstanpy
  • python313Packages.cmdstanpy.dist
  • python313Packages.libvirt
  • python313Packages.libvirt.dist
  • python313Packages.prophet
  • python313Packages.prophet.dist
  • python313Packages.xen
  • python313Packages.xen.boot
  • python313Packages.xen.dev
  • python313Packages.xen.doc
  • python313Packages.xen.man
  • reason
  • rescript-language-server
  • rocqPackages.rocq-elpi
  • rtop
  • rubyPackages.ruby-libvirt (rubyPackages_3_3.ruby-libvirt)
  • rubyPackages_3_1.ruby-libvirt
  • rubyPackages_3_2.ruby-libvirt
  • rubyPackages_3_4.ruby-libvirt
  • sail-riscv
  • satyrographos
  • satysfi
  • sawjap
  • sgx-sdk
  • sgx-ssl
  • soupault
  • spatial-shell
  • stanc
  • stog
  • tatl
  • unison
  • vagrant
  • virt-manager
  • virt-manager-qt
  • virt-top
  • virt-v2v
  • virt-viewer
  • virtnbdbackup
  • virtnbdbackup.dist
  • vscode-extensions.chenglou92.rescript-vscode
  • wasm
  • wayland-proxy-virtwl
  • why3
  • why3.dev
  • wyrd
  • xen-guest-agent

@adamcstephens adamcstephens left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

All the failures are already happening on master. diffoscope was the only odd one out, but a check of its build yielded the same failure on master.

@adamcstephens

Copy link
Copy Markdown
Contributor

Thanks for the update. Sorry if it's not ideal. :/

@adamcstephens adamcstephens merged commit c444dfa into NixOS:master Apr 18, 2025
@vbgl vbgl deleted the ocaml-default-5.3 branch April 19, 2025 04:42
@alyssais alyssais mentioned this pull request May 6, 2026
13 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: ocaml OCaml is a general-purpose, high-level, multi-paradigm programming language. 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants