nixbot

builds
unpackPhase
1unpacking source archive /nix/store/wwsjd21m5lmxqyw2p3krh1zw5a1dsjnh-source2source root is source
configurePhase
3no configure script, doing nothing
buildPhase
4Picked up JAVA_TOOL_OPTIONS: -Duser.home=/nix/store/rh84p9pd70gz5b0q43ycvjnwpi2ra74n-clojure-home -Djava.io.tmpdir=/build5Picked up JAVA_TOOL_OPTIONS: -Duser.home=/nix/store/rh84p9pd70gz5b0q43ycvjnwpi2ra74n-clojure-home -Djava.io.tmpdir=/build6Picked up JAVA_TOOL_OPTIONS: -Duser.home=/nix/store/rh84p9pd70gz5b0q43ycvjnwpi2ra74n-clojure-home -Djava.io.tmpdir=/build7Picked up JAVA_TOOL_OPTIONS: -Duser.home=/nix/store/rh84p9pd70gz5b0q43ycvjnwpi2ra74n-clojure-home -Djava.io.tmpdir=/build8Skipping coordinate: {:git/url https://github.com/Ramblurr/coffi.git, :git/branch feat/update-tools-build, :git/sha 9b05e268b915b1992bfd4175cb7c8c7c45d8973a, :deps/manifest :deps, :deps/root /nix/store/fnm0xh19n7179lak59x1f1r2l0fprmrf-org.suskalo-coffi-9b05e268b915b1992bfd4175cb7c8c7c45d8973a-prepped, :parents #{[]}, :paths [/nix/store/fnm0xh19n7179lak59x1f1r2l0fprmrf-org.suskalo-coffi-9b05e268b915b1992bfd4175cb7c8c7c45d8973a-prepped/src/clj /nix/store/fnm0xh19n7179lak59x1f1r2l0fprmrf-org.suskalo-coffi-9b05e268b915b1992bfd4175cb7c8c7c45d8973a-prepped/target/classes /nix/store/fnm0xh19n7179lak59x1f1r2l0fprmrf-org.suskalo-coffi-9b05e268b915b1992bfd4175cb7c8c7c45d8973a-prepped/resources]}9Skipping coordinate: {:git/sha 04f7bf854bcbe379df14e3f9d7221af9d0c030d6, :git/url https://github.com/outskirtslabs/clave.git, :deps/manifest :deps, :deps/root /nix/store/k51zqgrqnh5a0bxd2glkbdn8bkd9c870-clave-04f7bf8, :parents #{[]}, :paths [/nix/store/k51zqgrqnh5a0bxd2glkbdn8bkd9c870-clave-04f7bf8/src]}
checkPhase
10All source files formatted correctly11linting took 584ms, errors: 0, warnings: 012Picked up JAVA_TOOL_OPTIONS: -Duser.home=/nix/store/rh84p9pd70gz5b0q43ycvjnwpi2ra74n-clojure-home -Djava.io.tmpdir=/build13Picked up JAVA_TOOL_OPTIONS: -Duser.home=/nix/store/rh84p9pd70gz5b0q43ycvjnwpi2ra74n-clojure-home -Djava.io.tmpdir=/build14--- h2o (clojure.test) ---------------------------15ol.busker.config-test16 load-new-config-shape-test17 loads top-level tls, map entrypoints, and dispatch defaults18 exposes config defaults used by the loader19 entrypoint-http3-defaults-test20 defaults HTTP/3 from effective entrypoint TLS21 session-ticket-config-contract-test22 accepts the minimal active session ticket config23 rejects storage persistence without top-level tls storage24 rejects unknown session ticket knobs25 malformed session ticket values stay on the normal spec validation path26 bind-address-valid-test27 accepts supported bind address forms28 config->listeners-test29 flattens entrypoint map into listeners with entrypoint ids30 bind-address-invalid-test31 rejects unsupported bind address forms32 validate-entrypoint-selection-test33 rejects dispatch references to unknown entrypoints34 rejects HTTP/3 on explicit cleartext entrypoints35 rejects conflicting bind usage across entrypoints36 validate-top-level-tls-test37 rejects tls listeners when no global certificates are available38 rejects pem load entries with missing files39 parse-bind-test40 parses tcp binds41 parses unix binds42 rejects invalid bind values4344ol.busker.byte-bounded-queue-test45 close-test46 Close prevents new puts47 Close allows draining existing items48 Close is idempotent49 put-and-drain-test50 Put and drain single item51 Put and drain multiple items52 Drain respects max-bytes limit53 Drain returns empty vector when queue is empty54 byte-bounded-spsc-queue-creation-test55 Creates queue with valid capacity56 Rejects invalid capacity57 backpressure-test58 Put blocks when capacity exceeded59 Rejects item larger than capacity60 zero-byte-items-test61 Zero-byte items don't consume capacity62 accounting-accuracy-test63 Accounting remains accurate across operations6465ol.busker.util-test66 parse-authority-test67 parses valid RFC 9110 host forms68 treats malformed authorities as opaque values with the default port6970ol.busker.reload-test71 reload-publishes-candidate-before-old-generation-begins-drain-test72 http3-reload-activates-new-generation-and-drains-old-connections-test73 reload-failure-keeps-current-generation-active-test74 memory-session-tickets-not-reused-after-disabled-reload-test75 http3-reload-with-worker-topology-increase-reuses-transport-and-routes-to-active-generation-test76 http3-reload-with-worker-topology-change-reuses-transport-and-routes-to-active-generation-test77 repeated-reloads-retain-multiple-draining-generations-test78 memory-session-ticket-policy-change-replaces-service-but-preserves-keys-test79 reload-reports-listener-acquisition-failure-stage-test80 memory-service-is-not-reused-after-mode-change-during-overlap-test81 begin-drain-waits-for-stop-accepting-before-background-stop-test82 memory-session-ticket-service-is-shared-during-reload-overlap-test83 reload-reports-tls-startup-failure-stage-test84 memory-session-tickets-survive-reload-test85 stop-waits-for-active-and-draining-generations-test86 reload-activates-new-generation-and-drains-old-test87 reload-calls-serialize-through-lifecycle-gate-test88 failed-reload-does-not-leak-shared-ticket-native-manager-test89 reload-activates-while-managed-certificates-converge-test9091ol.busker.examples-test92 first-server-doc-source-test FAIL93 examples-layout-test94 quickstart95 early-hints96 sse97 first-server FAIL98 sse-example-test99 events stream100 brotli stream101 protocol headers102 first-server-example-test103 plain HTTP hello104 built-in gzip compression105 quickstart-example-test106 HTTP/1.1 keep-alive promptly serves the next request107 hello, echo, and large response108 protocol headers109 early-hints-example-test110 html and css111 early hints over http2112 protocol headers113114ol.busker.clave-adapter-test115 start-managed-test116 starts clave, manages names, and returns before initial cert readiness117 post-activation certificate-failed events are consumed in the background118 wrap-handler-test119 returns original handler when runtime is nil120 composes acme middleware for challenge routes121 stop-managed-test122 delegates stop to clave automation123 returns nil when runtime is nil124 build-managed-plan-test125 returns nil when no managed subject names exist126 extracts managed subject names and clave config from top-level tls127 lookup-certificate-test128 returns nil when runtime is missing129 delegates to clave lookup130131ol.busker.http3-test132 http3-request-with-streaming-body-test133 HTTP/3 streaming response works correctly134 create-ptls-context-test135 ptls context creation succeeds with valid cert/key136 tcp-tls-session-resumption-test137 TCP TLS 1.2 session resumption via tickets138 http3-no-sni-default-domain-miss-no-crash-test139 HTTP/3 no-SNI miss fails closed without crashing the server process140 server-no-udp-when-http3-disabled-test141 Server with :http3? false does not create UDP socket142 http3-request-response-test143 HTTP/3 request receives correct response144 http3-and-http2-share-limit-test145 HTTP/3 and HTTP/2 connections share the global limit146 http3-global-limit-across-workers-test147 Connection limit is global across workers, not per-worker148 non-tls-listener-no-http3-test149 Non-TLS listeners should not have HTTP/3150 http3-zero-rtt-test151 HTTP/3 0-RTT early data detection152 http3-graceful-shutdown-test153 Server gracefully shuts down HTTP/3 connections154 tcp-tls13-session-resumption-test155 TCP TLS 1.3 session resumption via tickets156 pooled-http3-udp-bind-supports-ipv6-host-test157 A pooled HTTP/3 UDP bind can reserve an IPv6 host158 pooled-http3-udp-bind-retains-port-until-release-test159 A pooled HTTP/3 UDP bind keeps the port unavailable until release160 http3-connection-limit-test161 HTTP/3 connections respect global max-connections limit162 create-ptls-context-invalid-cert-test[SHIM DEBUG] failed to load certificates from nonexistent.crt163164 ptls context creation returns nil with invalid cert165 http3-can-be-disabled-test166 TLS listeners can opt-out of HTTP/3 with :http3? false167 http3-early-data-key-present-test168 HTTP/3 requests include :ol.busker/early-data? key169 create-quicly-context-test170 quicly context creation succeeds with valid ptls context171 server-creates-udp-listener-test172 Server with TLS listener creates UDP socket on same port173 http3-no-sni-managed-fallback-success-test174 HTTP/3 handshake without SNI succeeds when a managed fallback subject exists175 http3-enabled-by-default-test176 TLS listeners should have HTTP/3 enabled by default177 ipv6-http2-and-http3-request-response-test178 A TLS IPv6 entrypoint serves both HTTP/2 and HTTP/3 traffic179180ol.busker.runtime-test181 runtime-starts-and-serves-one-generation-test182 state reports the running generation183 requests are served through the runtime handle184 stop! waits for the in-flight request to finish185 candidate-plan-skips-unchanged-snapshots-unless-forced-test186 cert-automation-reuse-and-replacement-test187 runtime-start-fails-when-automation-startup-fails-test188 candidate-plan-computes-listener-and-automation-deltas-test189190ol.busker.generation-test191 generation-starts-and-stops-without-runtime-bridge-test192193ol.busker.specs-test194 managed-plan-spec-test195 managed plan conforms when using managed subject names196 managed plan rejects empty subject names197 every-spec-has-descriptor-map-test198 each Busker spec key has a descriptor map var with :key/:doc/:default199200ol.busker.dispatch-test201 dispatch-handler-test202 routes by entrypoint and resolves qualified symbols203 honors mutually exclusive groups and terminal dispatchers204 wraps middleware around dispatcher handlers205206ol.busker.server-test207 ring-cookie-and-session-middleware-response-headers-test208 test-request-info209 Request info is correctly populated210 tcp-and-tls-share-limit-test211 TCP and TLS connections share the global limit212 tcp-connection-limit-test213 TCP connections respect global max-connections limit214 test-async215 async response216 103 early hints217 sse218 test-query-strings219 Query strings are parsed correctly220 persistent-session-ticket-keys-survive-restart-test221 top-level tls storage persists session ticket keys across restart222 test-host-header-without-request-body223 domain Host headers do not make empty requests enter body streaming224 tls-lookup-no-sni-uses-first-managed-subject-test225 lookup function routes missing SNI to the first managed subject name226 tls-lookup-falls-back-to-clave-test227 lookup function uses clave bundle when no static cert material exists228 disabled-session-tickets-skip-native-ticket-manager-test229 disabled session tickets do not create ticket manager state230 persistent-session-ticket-resumption-works-across-peer-processes-test231 a saved TLS session resumes against a peer Busker process sharing the same storage root232 tls-lookup-prefers-static-certificate-test233 lookup function returns static cert/key material before clave lookup234 repeated-ring-headers-over-http1-and-http2-test235 h1236 h2237 corrupt-persistent-session-ticket-file-fails-startup-test238 storage-backed startup fails against a corrupt persisted session ticket file239 test-content-length240 content-length with get and head241 tcp-tls-no-sni-falls-back-to-managed-subject-test242 TCP TLS handshake without SNI succeeds using the first managed subject name243 test-tls-listener244 TLS listener with HTTPS connections245 plaintext HTTP endpoint works246 HTTPS endpoint works247 HTTPS with HTTP/2 ALPN negotiation248 tls-storage-alone-does-not-enable-ticket-persistence-test249 top-level tls storage without persistence selector remains memory only250 tcp-tls-no-sni-miss-without-fallback-test251 TCP TLS handshake without SNI fails when no fallback material exists252 test-ring-body-types253 All Ring StreamableResponseBody types work correctly254 String body255 Byte array body256 Sequence body257 File body258 InputStream body259 Nil body260 No body (204)261 persistent-session-ticket-resumption-survives-restart-test262 a saved TLS session resumes after restart when storage-backed tickets are enabled263 test-ipv6-request-info264 IPv6 listeners accept requests and expose correct Ring metadata265 tls-lookup-no-sni-miss-without-fallback-test266 lookup function returns miss when SNI is missing and no fallback material exists267 managed-clave-lifecycle-test268 server starts/stops managed clave runtime with server lifecycle269 test-unix-socket-listener270 Unix socket listeners serve requests and clean up their socket path271 tls-lookup-callback-lifecycle-test272 server builds lookup callback at startup273 test-different-status-codes274 Different status codes are returned correctly275 tls-lookup-no-sni-uses-first-static-certificate-test276 lookup function uses the first static certificate when SNI is absent277 test-simple-request278 simple279 chunked280 large281 gzip282283ol.busker.large-payload-test284 request-body285 response-body286287ol.busker-test288 public-api-reload-test289 public-api-managed-reload-stays-healthy-after-delayed-certificate-failure-test290 public-api-start-stop-and-state-test291 The public API starts the server and exposes pure state data292 public-api-unchanged-and-failed-reload-test293294ol.busker.request-test295 write-request-channel-empty-final-chunk-test296 empty final chunks do not occupy the body queue297 write-request-channel-final-chunk-test298 a final chunk and EOF can be delivered before the handler reads299300ol.busker.tickets-test301 rotate-keys-preserves-distinct-full-ticket-names-test302 rotation keeps keys whose 16-byte names differ even if the first byte matches303 storage-ticket-store-persists-rotation-schedule-metadata-test304 storage-backed snapshots persist explicit rotation schedule metadata305 storage-ticket-store-startup-fails-on-corrupt-persisted-data-test306 storage-backed startup fails when persisted ticket data is corrupt307 rotate-keys-trims-retained-set-to-max-keys-test308 rotation keeps only the newest max-keys valid entries309 storage-ticket-store-reuses-persisted-keys-across-managers-test310 two managers using the same storage root converge on one stored key set311 storage-ticket-store-startup-reuses-existing-keys-test312 storage-backed startup reloads the stored snapshot instead of generating a new one313 storage-ticket-store-startup-honors-stored-next-rotation-ms-test314 storage-backed startup trusts persisted next-rotation timing instead of deriving it from key age315 storage-ticket-store-startup-persists-immediately-test316 storage-backed startup persists keys under the fixed storage key and lock317 storage-ticket-store-startup-fails-on-storage-read-error-test318 storage-backed startup fails when persisted ticket data cannot be read319 storage-ticket-store-startup-fails-when-storage-is-unavailable-test320 storage-backed startup treats storage lock failures as fatal321 rotate-keys-max-keys-one-activates-replacement-immediately-test322 rotation with max-keys 1 keeps an immediately valid encryption key323 memory-ticket-store-does-not-persist-across-managers-test324 memory-only stores lose keys across restart325326ol.busker.listen-test327 pooled-udp-claim-retains-port-until-final-release-test328 UDP claims keep the bound port unavailable until the final release329 pooled-unix-final-cleanup-skips-replacement-nonsocket-file-test330 Final unix cleanup leaves a replacement non-socket file alone331 pooled-claims-expose-live-resources-test332 Claims return the live pooled resource for reuse333 pooled-ipv6-tcp-claim-retains-port-until-final-release-test334 IPv6 TCP claims keep the bound port unavailable until the final release335 pooled-unix-claim-refuses-preexisting-nonsocket-path-test336 Unix socket claims refuse to overwrite a pre-existing non-socket path337 pooled-abstract-unix-claim-has-no-filesystem-side-effects-test338 Abstract unix socket claims never create filesystem paths339 pooled-unix-claim-replaces-stale-socket-file-test340 Unix socket claims replace a stale socket file before binding341 pooled-unix-claim-retains-path-until-final-release-test342 Unix socket claims keep the socket path alive until the final release343 listener-key-normalizes-bind-identity-test344 Listener keys normalize host defaults and keep transports distinct345 pooled-tcp-claim-retains-port-until-final-release-test346 TCP claims keep the bound port unavailable until the final release347348Randomized with --seed 1157667996349350FAIL in ol.busker.examples-test/first-server-doc-source-test (examples_test.clj:135)351Expected:352 {:deps "{:paths [\".\"]\n :deps {org.clojure/clojure {:mvn/version \"1.12.5\"}\n com.outskirtslabs/busker {:git/url \"https://github.com/outskirtslabs/busker\"\n :git/sha \"07fb6b7962a8d534bbb11006c78a4c5a99160d97\"}\n ;; Choose the package for your platform.\n com.outskirtslabs.busker/linux-x86-64 {:mvn/version \"0.0.4\"}}\n :aliases {:repl {:jvm-opts [\"--enable-native-access=ALL-UNNAMED\"]}}}",353 :main "(ns main\n (:require\n [ol.busker :as busker]))\n\n(defn handler\n [req]\n {:status 200\n :headers {\"content-type\" \"text/plain; charset=utf-8\"}\n :body (str \"Hello from Busker over \" (:protocol req) \".\\n\"\n \"Busker can compress this response automatically when the client asks for it.\\n\")})\n\n(def config\n {:entrypoints {:http {:bind \"127.0.0.1:8080\"\n :tls false}}\n :dispatch [{:handler handler}]})\n\n(def server (atom nil))\n\n(defn start!\n []\n (reset! server (busker/start! config))\n nil)\n\n(defn stop!\n []\n (busker/stop! @server)\n (reset! server nil))"}354Actual:355 {:deps -"{:paths [\".\"]\n :deps {org.clojure/clojure {:mvn/version \"1.12.5\"}\n com.outskirtslabs/busker {:git/url \"https://github.com/outskirtslabs/busker\"\n :git/sha \"07fb6b7962a8d534bbb11006c78a4c5a99160d97\"}\n ;; Choose the package for your platform.\n com.outskirtslabs.busker/linux-x86-64 {:mvn/version \"0.0.4\"}}\n :aliases {:repl {:jvm-opts [\"--enable-native-access=ALL-UNNAMED\"]}}}"356 +"{:paths [\".\"]\n :deps {org.clojure/clojure {:mvn/version \"1.12.5\"}\n ;; Choose the package for your platform.\n com.outskirtslabs.busker/linux-x86-64 {:mvn/version \"0.0.4\"}\n\n com.outskirtslabs/busker {:git/url \"https://github.com/outskirtslabs/busker\"\n :git/sha \"07fb6b7962a8d534bbb11006c78a4c5a99160d97\"}}\n :aliases {:repl {:jvm-opts [\"--enable-native-access=ALL-UNNAMED\"]}}}",357 :main "(ns main\n (:require\n [ol.busker :as busker]))\n\n(defn handler\n [req]\n {:status 200\n :headers {\"content-type\" \"text/plain; charset=utf-8\"}\n :body (str \"Hello from Busker over \" (:protocol req) \".\\n\"\n \"Busker can compress this response automatically when the client asks for it.\\n\")})\n\n(def config\n {:entrypoints {:http {:bind \"127.0.0.1:8080\"\n :tls false}}\n :dispatch [{:handler handler}]})\n\n(def server (atom nil))\n\n(defn start!\n []\n (reset! server (busker/start! config))\n nil)\n\n(defn stop!\n []\n (busker/stop! @server)\n (reset! server nil))"}358359FAIL in ol.busker.examples-test/examples-layout-test (examples_test.clj:126)360first-server361Expected:362 ["-m" "main"]363Actual:364 -["-m" "main"] +nil365138 tests, 843 assertions, 2 failures.