Skip to content

ocamlPackages.cohttp*: 5.0.0 -> 5.1.0#226657

Merged
ulrikstrid merged 2 commits intoNixOS:masterfrom
Niols:cohttp-5.1.0
Apr 18, 2023
Merged

ocamlPackages.cohttp*: 5.0.0 -> 5.1.0#226657
ulrikstrid merged 2 commits intoNixOS:masterfrom
Niols:cohttp-5.1.0

Conversation

@Niols
Copy link
Contributor

@Niols Niols commented Apr 17, 2023

Description of changes

https://github.com/mirage/ocaml-cohttp/blob/v5.1.0/CHANGES.md

Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • 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/)
  • 23.05 Release Notes (or backporting 22.11 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.

@github-actions github-actions bot added the 6.topic: ocaml OCaml is a general-purpose, high-level, multi-paradigm programming language. label Apr 17, 2023
@Niols
Copy link
Contributor Author

Niols commented Apr 17, 2023

In addition to the “things done” above, I have built those packages on aarch64-darwin and x86_64-darwin. However, building cohttp-mirage fails there because of a dependency not building correctly. (The other cohttp-* packages build just fine.) The dependency in question is arp-3.0.0 and it seems like only its tests are failing. What shall I do in such a situation?

@Niols Niols requested a review from vbgl April 17, 2023 14:40
@ofborg ofborg bot added 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Apr 17, 2023
@Alizter
Copy link
Contributor

Alizter commented Apr 17, 2023

Result of nixpkgs-review pr 226657 run on x86_64-linux 1

4 packages built:
  • comby
  • dune-release
  • ligo
  • liquidsoap

@ulrikstrid
Copy link
Member

In addition to the “things done” above, I have built those packages on aarch64-darwin and x86_64-darwin. However, building cohttp-mirage fails there because of a dependency not building correctly. (The other cohttp-* packages build just fine.) The dependency in question is arp-3.0.0 and it seems like only its tests are failing. What shall I do in such a situation?

Imo we can disable tests on arp if we're on Darwin. I don't have a Darwin machine available currently but just to be sure, it's broken on master as well?

@Niols
Copy link
Contributor Author

Niols commented Apr 17, 2023

Just to be sure, it's broken on master as well?

Yes, it is, but only because of the tests.

Build logs for ocamlPackages.arp on aarch64-darwin as of 4df4803
$ nix build --print-build-logs github:nixos/nixpkgs/4df48038a44e9f3a3da8e9b42ca182726b743de4#legacyPackages.aarch64-darwin.ocamlPackages.arp
ocaml4.14.1-arp> unpacking sources
ocaml4.14.1-arp> unpacking source archive /nix/store/j31vpd8y8r7f6jlrxknjbwbbx3vw6qsp-arp-v3.0.0.tbz
ocaml4.14.1-arp> source root is arp-v3.0.0
ocaml4.14.1-arp> setting SOURCE_DATE_EPOCH to timestamp 1639156320 of file arp-v3.0.0/test/tests.ml
ocaml4.14.1-arp> patching sources
ocaml4.14.1-arp> updateAutotoolsGnuConfigScriptsPhase
ocaml4.14.1-arp> configuring
ocaml4.14.1-arp> no configure script, doing nothing
ocaml4.14.1-arp> building
ocaml4.14.1-arp> running tests
ocaml4.14.1-arp> (cd _build/default/test && ./tests.exe)
ocaml4.14.1-arp> Testing `ARP tests'.
ocaml4.14.1-arp> This run has ID `ANWYK2YF'.
ocaml4.14.1-arp>   [OK]          Coder            0   valid arp decoding.
ocaml4.14.1-arp>   [OK]          Coder            1   unhandled arp decoding.
ocaml4.14.1-arp>   [OK]          Coder            2   short arp decoding.
ocaml4.14.1-arp>   [OK]          Coder            3   invalid operation decoding.
ocaml4.14.1-arp>   [OK]          Coder            4   decoding is inverse of encoding.
ocaml4.14.1-arp>   [OK]          Coder            5   encode_into works.
ocaml4.14.1-arp>   [OK]          Coder            6   encode_into fails with small bufs.
ocaml4.14.1-arp>   [OK]          Handler          0   create raises.
ocaml4.14.1-arp>   [OK]          Handler          1   basic tests.
ocaml4.14.1-arp>   [OK]          Handler          2   remove test.
ocaml4.14.1-arp>   [OK]          Handler          3   remove no test.
ocaml4.14.1-arp>   [OK]          Handler          4   alias test.
ocaml4.14.1-arp>   [OK]          Handler          5   alias remove test.
ocaml4.14.1-arp>   [OK]          Handler          6   static test.
ocaml4.14.1-arp>   [OK]          Handler          7   static alias test.
ocaml4.14.1-arp>   [OK]          Handler          8   more tests.
ocaml4.14.1-arp>   [OK]          Handler          9   handle good.
ocaml4.14.1-arp>   [OK]          Handler         10   handle generates req.
ocaml4.14.1-arp>   [OK]          Handler         11   handle generates req, next doesn't.
ocaml4.14.1-arp>   [OK]          Handler         12   alias wakes.
ocaml4.14.1-arp>   [OK]          Handler         13   static wakes.
ocaml4.14.1-arp>   [OK]          Handler         14   handle timeout.
ocaml4.14.1-arp>   [OK]          Handler         15   request send before timeout.
ocaml4.14.1-arp>   [OK]          Handler         16   multiple requests are send.
ocaml4.14.1-arp>   [OK]          Handler         17   multiple requests are send 2.
ocaml4.14.1-arp>   [OK]          Handler         18   handle reply.
ocaml4.14.1-arp>   [OK]          Handler         19   handle garp.
ocaml4.14.1-arp>   [OK]          Handler         20   answers broadcast request.
ocaml4.14.1-arp>   [OK]          Handler         21   answers unicast request.
ocaml4.14.1-arp>   [OK]          Handler         22   not answering random request.
ocaml4.14.1-arp>   [OK]          Handler         23   ignoring random.
ocaml4.14.1-arp>   [OK]          Handler         24   reply does not harm static entries.
ocaml4.14.1-arp>   [OK]          Handler         25   reply is in cache.
ocaml4.14.1-arp>   [OK]          Handler         26   dynamic entry can be queried.
ocaml4.14.1-arp>   [OK]          Handler         27   reply times out.
ocaml4.14.1-arp>   [OK]          Handler         28   dynamic entry overriden by same.
ocaml4.14.1-arp>   [OK]          Handler         29   dynamic entry overriden by other.
ocaml4.14.1-arp>   [OK]          Handler         30   dynamic entry is not advertised.
ocaml4.14.1-arp>   [OK]          Handler         31   reply wakes tasks.
ocaml4.14.1-arp> Full test results in `/private/tmp/nix-build-ocaml4.14.1-arp-3.0.0.drv-0/arp-v3.0.0/_build/default/test/_build/_tests/ARP tests'.
ocaml4.14.1-arp> Test Successful in 0.042s. 39 tests run.
ocaml4.14.1-arp> File "test/mirage/dune", line 2, characters 7-12:
ocaml4.14.1-arp> 2 |  (name tests)
ocaml4.14.1-arp>            ^^^^^
ocaml4.14.1-arp> (cd _build/default/test/mirage && ./tests.exe)
ocaml4.14.1-arp> Testing `arp'.
ocaml4.14.1-arp> This run has ID `PM4N6ZB2'.
ocaml4.14.1-arp>   [OK]          arp          0   conversions neither lose nor gain information.
ocaml4.14.1-arp>   [OK]          arp          1   nonsense requests are ignored.
ocaml4.14.1-arp>   [OK]          arp          2   requests are responded to.
ocaml4.14.1-arp> > [FAIL]        arp          3   entries expire.
ocaml4.14.1-arp>   [OK]          arp          4   irrelevant requests are ignored.
ocaml4.14.1-arp>   [OK]          arp          5   set_ip sets ip, sends GARP.
ocaml4.14.1-arp>   [OK]          arp          6   add_ip, get_ip and remove_ip as advertised.
ocaml4.14.1-arp>   [OK]          arp          7   GARPs are heard and not cached.
ocaml4.14.1-arp>   [OK]          arp          8   unsolicited unicast replies are heard and no...
ocaml4.14.1-arp>   [OK]          arp          9   solicited unicast replies resolve pending th...
ocaml4.14.1-arp>   [OK]          arp         10   entries are replaced with new information.
ocaml4.14.1-arp>   [OK]          arp         11   unreachable IPs time out.
ocaml4.14.1-arp>   [OK]          arp         12   queries are tried repeatedly before timing out.
ocaml4.14.1-arp> ┌──────────────────────────────────────────────────────────────────────────────┐
ocaml4.14.1-arp> │ [FAIL]        arp          3   entries expire.                               │
ocaml4.14.1-arp> └──────────────────────────────────────────────────────────────────────────────┘
ocaml4.14.1-arp> tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:01
ocaml4.14.1-arp> tests.exe: [INFO] Connected Ethernet interface 02:50:00:00:00:02
ocaml4.14.1-arp> tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.10 (02:50:00:00:00:01)
ocaml4.14.1-arp> tests.exe: [DEBUG] starting arp listener for 02:50:00:00:00:01
ocaml4.14.1-arp> tests.exe: [INFO] Sending gratuitous ARP for 192.168.3.1 (02:50:00:00:00:02)
ocaml4.14.1-arp> tests.exe: [DEBUG] frame received for arpv4
ocaml4.14.1-arp> tests.exe: [DEBUG] Set IP for 02:50:00:00:00:02 to 192.168.3.1
ocaml4.14.1-arp> tests.exe: [DEBUG] Listener table contents after IP set on claimant: mac 02:50:00:00:00:01 ip 192.168.3.10 entries 2 timeout 800 retries 5
ocaml4.14.1-arp> 192.168.3.1 at 02:50:00:00:00:02 (timeout in 800)
ocaml4.14.1-arp> 192.168.3.10 at 02:50:00:00:00:01 (static advertising)
ocaml4.14.1-arp> ASSERT mismatch for expected query value
ocaml4.14.1-arp> ASSERT entry in cache when it shouldn't be 192.168.3.1
ocaml4.14.1-arp> FAIL entry in cache when it shouldn't be 192.168.3.1
ocaml4.14.1-arp> Raised at Alcotest_engine__Test.check_err in file "src/alcotest-engine/test.ml", line 157, characters 20-48
ocaml4.14.1-arp> Called from Lwt.Sequential_composition.bind.create_result_promise_and_callback_if_deferred.c in file "src/core/lwt.ml", line 1849, characters 23-26
ocaml4.14.1-arp> Re-raised at Lwt.Miscellaneous.poll in file "src/core/lwt.ml", line 3077, characters 20-29
ocaml4.14.1-arp> Called from Lwt_main.run.run_loop in file "src/unix/lwt_main.ml", line 31, characters 10-20
ocaml4.14.1-arp> Called from Lwt_main.run in file "src/unix/lwt_main.ml", line 118, characters 8-13
ocaml4.14.1-arp> Re-raised at Lwt_main.run in file "src/unix/lwt_main.ml", line 124, characters 4-13
ocaml4.14.1-arp> Called from Alcotest_engine__Core.Make.protect_test.(fun) in file "src/alcotest-engine/core.ml", line 181, characters 17-23
ocaml4.14.1-arp> Called from Alcotest_engine__Monad.Identity.catch in file "src/alcotest-engine/monad.ml", line 24, characters 31-35
ocaml4.14.1-arp> Logs saved to `/private/tmp/nix-build-ocaml4.14.1-arp-3.0.0.drv-0/arp-v3.0.0/_build/default/test/mirage/_build/_tests/arp/arp.003.output'.
ocaml4.14.1-arp>  ──────────────────────────────────────────────────────────────────────────────
ocaml4.14.1-arp> Full test results in `/private/tmp/nix-build-ocaml4.14.1-arp-3.0.0.drv-0/arp-v3.0.0/_build/default/test/mirage/_build/_tests/arp'.
ocaml4.14.1-arp> 1 failure! in 6.068s. 13 tests run.

(Very similar logs for x86_64-darwin.) What's the protocol, then? Should I open a PR to disable tests on Darwin for that package? Add a commit on top of the current PR? Something else?

@ulrikstrid
Copy link
Member

Personally I'm fine with adding a commit here to disable tests

@Niols
Copy link
Contributor Author

Niols commented Apr 18, 2023

Done in 9684ea4. cohttp-mirage does now build on x86_64-linux, x86_64-darwin and aarch64-darwin for me. I have edited my original message accordingly.

@ulrikstrid ulrikstrid merged commit 2f0a700 into NixOS:master Apr 18, 2023
@Niols Niols deleted the cohttp-5.1.0 branch April 18, 2023 22:55
@wegank wegank mentioned this pull request Apr 21, 2023
12 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: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

Comments