Build Logs

chrisnappin/play-recaptcha • 3.8.0-RC4:2025-12-22

Errors

55

Warnings

3

Total Lines

648

1##################################
2Clonning https://github.com/chrisnappin/play-recaptcha.git into /build/repo using revision release-3.0
3##################################
4Note: switching to '376edad05d9db18426a76ad77ae999f8386a08d8'.
5
6You are in 'detached HEAD' state. You can look around, make experimental
7changes and commit them, and you can discard any commits you make in this
8state without impacting any branches by switching back to a branch.
9
10If you want to create a new branch to retain commits you create, you may
11do so (now or later) by using -c with the switch command. Example:
12
13 git switch -c <new-branch-name>
14
15Or undo this operation with:
16
17 git switch -
18
19Turn off this advice by setting config variable advice.detachedHead to false
20
21Using target Scala version for migration: 3.7.4
22Migrating project for -source:3.4 using Scala 3.7.4
23----
24Preparing build for 3.7.4
25Would try to apply common scalacOption (best-effort, sbt/mill only):
26Append: -rewrite,REQUIRE:-source:3.4-migration
27Remove: -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
28----
29Starting build for 3.7.4
30Execute tests: false
31sbt project found:
32Sbt version 1.9.9
33 is not supported, minimal supported version is 1.11.5
34Enforcing usage of sbt in version 1.11.5
35No prepare script found for project chrisnappin/play-recaptcha
36##################################
37Scala version: 3.7.4
38Targets: com.nappin%play-recaptcha
39Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[]}
40##################################
41Using extra scalacOptions: -rewrite,REQUIRE:-source:3.4-migration
42Filtering out scalacOptions: -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
43[sbt_options] declare -a sbt_options=()
44[process_args] java_version = '17'
45[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
46# Executing command line:
47java
48-Dfile.encoding=UTF-8
49-Dcommunitybuild.scala=3.7.4
50-Dcommunitybuild.project.dependencies.add=
51-Xmx7G
52-Xms4G
53-Xss8M
54-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
55-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
56-jar
57/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
58"setCrossScalaVersions 3.7.4"
59"++3.7.4 -v"
60"mapScalacOptions "-rewrite,REQUIRE:-source:3.4-migration,-Wconf:msg=can be rewritten automatically under:s" "-indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
61"set every credentials := Nil"
62"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
63"removeScalacOptionsStartingWith -P:wartremover"
64
65moduleMappings
66"runBuild 3.7.4 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[]}""" com.nappin%play-recaptcha"
67
68[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
69[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
70[info] loading project definition from /build/repo/project
71[info] compiling 2 Scala sources to /build/repo/project/target/scala-2.12/sbt-1.0/classes ...
72[info] Non-compiled module 'compiler-bridge_2.12' for Scala 2.12.20. Compiling...
73[info] Compilation completed in 8.483s.
74[info] done compiling
75[info] loading settings for project root from build.sbt...
76[info] __ __
77[info] \ \ ____ / /____ _ __ __
78[info] \ \ / __ \ / // __ `// / / /
79[info] / / / /_/ // // /_/ // /_/ /
80[info] /_/ / .___//_/ \__,_/ \__, /
81[info] /_/ /____/
82[info]
83[info] Version 3.0.2 running Java 17.0.8
84[info]
85[info] Play is run entirely by the community. Please consider contributing and/or donating:
86[info] https://www.playframework.com/sponsors
87[info]
88Execute setCrossScalaVersions: 3.7.4
89OpenCB::Changing crossVersion 3.3.3 -> 3.7.4 in root/crossScalaVersions
90OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.7.4) in root/crossScalaVersions
91[info] __ __
92[info] \ \ ____ / /____ _ __ __
93[info] \ \ / __ \ / // __ `// / / /
94[info] / / / /_/ // // /_/ // /_/ /
95[info] /_/ / .___//_/ \__,_/ \__, /
96[info] /_/ /____/
97[info]
98[info] Version 3.0.2 running Java 17.0.8
99[info]
100[info] Play is run entirely by the community. Please consider contributing and/or donating:
101[info] https://www.playframework.com/sponsors
102[info]
103[info] Setting Scala version to 3.7.4 on 1 projects.
104[info] Switching Scala version on:
105[info] * root (3.7.4)
106[info] Excluding projects:
107[info] Reapplying settings...
108[info] __ __
109[info] \ \ ____ / /____ _ __ __
110[info] \ \ / __ \ / // __ `// / / /
111[info] / / / /_/ // // /_/ // /_/ /
112[info] /_/ / .___//_/ \__,_/ \__, /
113[info] /_/ /____/
114[info]
115[info] Version 3.0.2 running Java 17.0.8
116[info]
117[info] Play is run entirely by the community. Please consider contributing and/or donating:
118[info] https://www.playframework.com/sponsors
119[info]
120Execute mapScalacOptions: -rewrite,REQUIRE:-source:3.4-migration,-Wconf:msg=can be rewritten automatically under:s -indent,-no-indent,-new-syntax,,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
121[info] Reapplying settings...
122[info] __ __
123[info] \ \ ____ / /____ _ __ __
124[info] \ \ / __ \ / // __ `// / / /
125[info] / / / /_/ // // /_/ // /_/ /
126[info] /_/ / .___//_/ \__,_/ \__, /
127[info] /_/ /____/
128[info]
129[info] Version 3.0.2 running Java 17.0.8
130[info]
131[info] Play is run entirely by the community. Please consider contributing and/or donating:
132[info] https://www.playframework.com/sponsors
133[info]
134[info] Defining Global / credentials, credentials
135[info] The new values will be used by Global / pgpSelectPassphrase, Global / pgpSigningKey and 4 others.
136[info] Run `last` for details.
137[info] Reapplying settings...
138[info] __ __
139[info] \ \ ____ / /____ _ __ __
140[info] \ \ / __ \ / // __ `// / / /
141[info] / / / /_/ // // /_/ // /_/ /
142[info] /_/ / .___//_/ \__,_/ \__, /
143[info] /_/ /____/
144[info]
145[info] Version 3.0.2 running Java 17.0.8
146[info]
147[info] Play is run entirely by the community. Please consider contributing and/or donating:
148[info] https://www.playframework.com/sponsors
149[info]
150Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
151[info] Reapplying settings...
152OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
153
154 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
155 Did you mean allExcludeDependencies ?
156 , retry without global scopes
157[info] Reapplying settings...
158[info] __ __
159[info] \ \ ____ / /____ _ __ __
160[info] \ \ / __ \ / // __ `// / / /
161[info] / / / /_/ // // /_/ // /_/ /
162[info] /_/ / .___//_/ \__,_/ \__, /
163[info] /_/ /____/
164[info]
165[info] Version 3.0.2 running Java 17.0.8
166[info]
167[info] Play is run entirely by the community. Please consider contributing and/or donating:
168[info] https://www.playframework.com/sponsors
169[info]
170Execute removeScalacOptionsStartingWith: -P:wartremover
171[info] Reapplying settings...
172[info] __ __
173[info] \ \ ____ / /____ _ __ __
174[info] \ \ / __ \ / // __ `// / / /
175[info] / / / /_/ // // /_/ // /_/ /
176[info] /_/ / .___//_/ \__,_/ \__, /
177[info] /_/ /____/
178[info]
179[info] Version 3.0.2 running Java 17.0.8
180[info]
181[info] Play is run entirely by the community. Please consider contributing and/or donating:
182[info] https://www.playframework.com/sponsors
183[info]
184[success] Total time: 0 s, completed Dec 22, 2025, 6:25:24 PM
185Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"compile-only","migrationVersions":["3.4"],"sourcePatches":[]}
186Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),CompileOnly,List()))
187Starting build...
188Projects: Set(root)
189Starting build for ProjectRef(file:/build/repo/,root) (play-recaptcha)... [0/1]
190OpenCB::Exclude Scala3 specific scalacOption `-rewrite` in Scala 2.12.20 module Global
191OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.4-migration` in Scala 2.12.20 module Global
192OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
193Compile scalacOptions: -unchecked, -encoding, utf8, -rewrite, -Wconf:msg=can be rewritten automatically under:s, -source:3.4-migration
194[info] compiling 10 Scala sources to /build/repo/target/scala-3.7.4/classes ...
195[info] [patched file /build/repo/target/scala-3.7.4/twirl/main/views/html/recaptcha/invisibleButton.template.scala]
196[info] [patched file /build/repo/target/scala-3.7.4/twirl/main/views/html/recaptcha/recaptchaField.template.scala]
197[info] [patched file /build/repo/target/scala-3.7.4/twirl/main/views/html/recaptcha/recaptchaWidget.template.scala]
198[info] done compiling
199[info] compiling 3 Scala sources to /build/repo/target/scala-3.7.4/classes ...
200[info] done compiling
201[info] compiling 8 Scala sources to /build/repo/target/scala-3.7.4/test-classes ...
202[info] [patched file /build/repo/test/com/nappin/play/recaptcha/RecaptchaVerifierSpec.scala]
203[info] done compiling
204[info] compiling 1 Scala source to /build/repo/target/scala-3.7.4/test-classes ...
205[info] done compiling
206
207************************
208Build summary:
209[{
210 "module": "play-recaptcha",
211 "compile": {"status": "ok", "tookMs": 6976, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
212 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
213 "test-compile": {"status": "ok", "tookMs": 8611, "warnings": 0, "errors": 0, "sourceVersion": "3.4-migration"},
214 "test": {"status": "skipped", "tookMs": 0, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
215 "publish": {"status": "skipped", "tookMs": 0},
216 "metadata": {
217 "crossScalaVersions": ["2.12.20"]
218}
219}]
220************************
221[success] Total time: 77 s (0:01:17.0), completed Dec 22, 2025, 6:26:41 PM
222[0J/build/build.patch:20: trailing whitespace.
223sbt.version=1.9.9
224Checking patch project/plugins.sbt...
225Checking patch project/build.properties...
226Checking patch build.sbt...
227Applied patch project/plugins.sbt cleanly.
228Applied patch project/build.properties cleanly.
229Applied patch build.sbt cleanly.
230warning: 1 line adds whitespace errors.
231Commit migration rewrites
232Switched to a new branch 'opencb/migrate-source-3.4'
233[opencb/migrate-source-3.4 b2c389c] Apply Scala compiler rewrites using -source:3.4-migration using Scala 3.7.4
234 1 file changed, 3 insertions(+), 3 deletions(-)
235----
236Preparing build for 3.8.0-RC4
237Scala binary version found: 3.8
238Implicitly using source version 3.8
239Scala binary version found: 3.8
240Implicitly using source version 3.8
241Would try to apply common scalacOption (best-effort, sbt/mill only):
242Append: ,REQUIRE:-source:3.8
243Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
244----
245Starting build for 3.8.0-RC4
246Execute tests: true
247sbt project found:
248Sbt version 1.9.9
249 is not supported, minimal supported version is 1.11.5
250Enforcing usage of sbt in version 1.11.5
251No prepare script found for project chrisnappin/play-recaptcha
252##################################
253Scala version: 3.8.0-RC4
254Targets: com.nappin%play-recaptcha
255Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":["3.4"],"sourcePatches":[]}
256##################################
257Using extra scalacOptions: ,REQUIRE:-source:3.8
258Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
259[sbt_options] declare -a sbt_options=()
260[process_args] java_version = '17'
261[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8/rt.jar'
262# Executing command line:
263java
264-Dfile.encoding=UTF-8
265-Dcommunitybuild.scala=3.8.0-RC4
266-Dcommunitybuild.project.dependencies.add=
267-Xmx7G
268-Xms4G
269-Xss8M
270-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
271-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_17_0_8
272-jar
273/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
274"setCrossScalaVersions 3.8.0-RC4"
275"++3.8.0-RC4 -v"
276"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
277"set every credentials := Nil"
278"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
279"removeScalacOptionsStartingWith -P:wartremover"
280
281moduleMappings
282"runBuild 3.8.0-RC4 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":["3.4"],"sourcePatches":[]}""" com.nappin%play-recaptcha"
283
284[info] welcome to sbt 1.11.5 (Eclipse Adoptium Java 17.0.8)
285[info] loading settings for project repo-build from akka.sbt, plugins.sbt...
286[info] loading project definition from /build/repo/project
287[info] loading settings for project root from build.sbt...
288[info] __ __
289[info] \ \ ____ / /____ _ __ __
290[info] \ \ / __ \ / // __ `// / / /
291[info] / / / /_/ // // /_/ // /_/ /
292[info] /_/ / .___//_/ \__,_/ \__, /
293[info] /_/ /____/
294[info]
295[info] Version 3.0.2 running Java 17.0.8
296[info]
297[info] Play is run entirely by the community. Please consider contributing and/or donating:
298[info] https://www.playframework.com/sponsors
299[info]
300Execute setCrossScalaVersions: 3.8.0-RC4
301OpenCB::Changing crossVersion 3.3.3 -> 3.8.0-RC4 in root/crossScalaVersions
302OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC4) in root/crossScalaVersions
303[info] __ __
304[info] \ \ ____ / /____ _ __ __
305[info] \ \ / __ \ / // __ `// / / /
306[info] / / / /_/ // // /_/ // /_/ /
307[info] /_/ / .___//_/ \__,_/ \__, /
308[info] /_/ /____/
309[info]
310[info] Version 3.0.2 running Java 17.0.8
311[info]
312[info] Play is run entirely by the community. Please consider contributing and/or donating:
313[info] https://www.playframework.com/sponsors
314[info]
315[info] Setting Scala version to 3.8.0-RC4 on 1 projects.
316[info] Switching Scala version on:
317[info] * root (3.8.0-RC4)
318[info] Excluding projects:
319[info] Reapplying settings...
320[info] __ __
321[info] \ \ ____ / /____ _ __ __
322[info] \ \ / __ \ / // __ `// / / /
323[info] / / / /_/ // // /_/ // /_/ /
324[info] /_/ / .___//_/ \__,_/ \__, /
325[info] /_/ /____/
326[info]
327[info] Version 3.0.2 running Java 17.0.8
328[info]
329[info] Play is run entirely by the community. Please consider contributing and/or donating:
330[info] https://www.playframework.com/sponsors
331[info]
332Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
333[info] Reapplying settings...
334[info] __ __
335[info] \ \ ____ / /____ _ __ __
336[info] \ \ / __ \ / // __ `// / / /
337[info] / / / /_/ // // /_/ // /_/ /
338[info] /_/ / .___//_/ \__,_/ \__, /
339[info] /_/ /____/
340[info]
341[info] Version 3.0.2 running Java 17.0.8
342[info]
343[info] Play is run entirely by the community. Please consider contributing and/or donating:
344[info] https://www.playframework.com/sponsors
345[info]
346[info] Defining Global / credentials, credentials
347[info] The new values will be used by Global / pgpSelectPassphrase, Global / pgpSigningKey and 4 others.
348[info] Run `last` for details.
349[info] Reapplying settings...
350[info] __ __
351[info] \ \ ____ / /____ _ __ __
352[info] \ \ / __ \ / // __ `// / / /
353[info] / / / /_/ // // /_/ // /_/ /
354[info] /_/ / .___//_/ \__,_/ \__, /
355[info] /_/ /____/
356[info]
357[info] Version 3.0.2 running Java 17.0.8
358[info]
359[info] Play is run entirely by the community. Please consider contributing and/or donating:
360[info] https://www.playframework.com/sponsors
361[info]
362Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
363[info] Reapplying settings...
364OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
365
366 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
367 Did you mean allExcludeDependencies ?
368 , retry without global scopes
369[info] Reapplying settings...
370[info] __ __
371[info] \ \ ____ / /____ _ __ __
372[info] \ \ / __ \ / // __ `// / / /
373[info] / / / /_/ // // /_/ // /_/ /
374[info] /_/ / .___//_/ \__,_/ \__, /
375[info] /_/ /____/
376[info]
377[info] Version 3.0.2 running Java 17.0.8
378[info]
379[info] Play is run entirely by the community. Please consider contributing and/or donating:
380[info] https://www.playframework.com/sponsors
381[info]
382Execute removeScalacOptionsStartingWith: -P:wartremover
383[info] Reapplying settings...
384[info] __ __
385[info] \ \ ____ / /____ _ __ __
386[info] \ \ / __ \ / // __ `// / / /
387[info] / / / /_/ // // /_/ // /_/ /
388[info] /_/ / .___//_/ \__,_/ \__, /
389[info] /_/ /____/
390[info]
391[info] Version 3.0.2 running Java 17.0.8
392[info]
393[info] Play is run entirely by the community. Please consider contributing and/or donating:
394[info] https://www.playframework.com/sponsors
395[info]
396[success] Total time: 0 s, completed Dec 22, 2025, 6:26:50 PM
397Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"17"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":["3.4"],"sourcePatches":[]}
398Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
399Starting build...
400Projects: Set(root)
401Starting build for ProjectRef(file:/build/repo/,root) (play-recaptcha)... [0/1]
402OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
403OpenCB::Filter out '-deprecation', matches setting pattern '^-?-deprecation'
404Compile scalacOptions: -unchecked, -encoding, utf8, -Wconf:msg=can be rewritten automatically under:s, -source:3.8
405[info] compiling 10 Scala sources to /build/repo/target/scala-3.8.0-RC4/classes ...
406[info] done compiling
407[info] compiling 8 Scala sources to /build/repo/target/scala-3.8.0-RC4/test-classes ...
408[info] done compiling
409[info] WidgetHelperSpec
410[info] getWidgetScriptUrl should
41118:27:19.006 [specs2-4] INFO play.api.http.HttpErrorHandlerExceptions -- Registering exception handler: guice-provision-exception-handler
412[info] + exclude public key
413INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
414[info] + exclude error code if specified
415INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
416[info] + exclude language if mode is auto
417INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
418[info] + include language if mode is force
419INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
420[info] + include language (only) if mode is play
421INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
422[info] + include language and country if mode is play
423INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
424[info] + include just language if mode is play
425[info] getWidgetNoScriptUrl should
426INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
427[info] + include public key
428INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
429[info] + exclude error code if specified
430[info] getPublicKey should
431INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
432[info] + return the public key
433[info] getFieldError should
434INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
435[info] + return None if no error
436INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
437[info] + return error if captcha incorrect
438INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
439[info] + return error if recaptcha not reachable
440INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
441[info] + return error if api error
442INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
443[info] + return error if response missing
444INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
445[info] + return None if other error
446[info] resolveRecaptchaErrors should
447INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
448[info] + return existing errors unchanged
449INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
450[info] + resolve recaptcha error (en)
451[info] formatClass should
452INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
453[info] + handle main class and no args
454INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
455[info] + ignore non-class args
456INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
457[info] + include single class args
458INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
459[info] + include multiple class args
460[info] formatOtherAttributes should
461INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
462[info] + produce nothing if no args
463INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
464[info] + ignore class args
465INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
466[info] + include multiple args
467[info] Total for specification WidgetHelperSpec
468[info] Finished in 4 seconds, 22 ms
469[info] 25 examples, 0 failure, 0 error
470INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
471[info] RecaptchaWidgetSpec
472[info] recaptchaWidget should
473[info] + render widget with noscript block
474INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
475[info] + render widget without noscript
476INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
477[info] + render widget with theme
478INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
479[info] + render widget with type
480INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
481[info] + render v2 widget with size
482INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
483INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
484[info] + render widget with extra classes
485[info] + render widget with extra attributes
486INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
487[info] + render widget with nonce if request attribute set
488[info] Total for specification RecaptchaWidgetSpec
489[info] Finished in 626 ms
490[info] 8 examples, 0 failure, 0 error
491[info] RecaptchaSettingsSpec
492[info] Construction of RecaptchaSettings should
493[info] + succeed if only the mandatory configuration was present
494[info] + succeed if all possible configuration was present
495[info] + fail if no configuration
496[info] + fail if private key is missing
497[info] + fail if public key is missing
498[info] + fail if requestTimeout config value can not parsed as a valid duration
499[info] + fail if captcha type is not one of allowed values
500[info] + fail if captcha size is not one of allowed values
501ERROR c.n.p.r.RecaptchaSettings - If languageMode is "force" then forceLanguage must be defined
502[info] + fail if languageMode is force but forceLanguage not set
503[info] Recaptcha Settings widgetScriptUrl should
504[info] + return a secure api v2 url
505[info] Recaptcha Settings widgetNoScriptUrl should
506[info] + return a secure api v2 url
507[info] Total for specification RecaptchaSettingsSpec
508[info] Finished in 146 ms
509[info] 11 examples, 0 failure, 0 error
510[info] ResponseParserSpec
511[info] ResponseParser should
512ERROR c.n.p.r.ResponseParser - Invalid response: {}
513[info] + reject an empty response
514ERROR c.n.p.r.ResponseParser - Invalid response: {"success":null}
515[info] + reject a null response
516ERROR c.n.p.r.ResponseParser - Invalid response: {"success":123}
517[info] + reject a invalid success (wrong type) response
518[info] + accept a single line valid response
519[info] + accept a multi line valid response
520[info] + accept a failure response without error code
521[info] + accept a failure response with error code
522[info] + accept a failure response with multiple error codes
523[info] Total for specification ResponseParserSpec
524[info] Finished in 112 ms
525[info] 8 examples, 0 failure, 0 error
526[info] InvisibleButtonSpec
527[info] invisibleButton should
528INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
529[info] + render widget with no explicit language
530INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
531[info] + render widget with language forced
532INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
533[info] + render widget with play language
534INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
535[info] + render widget with play language and country
536INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
537[info] + render widget with additional class
538INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
539[info] + render widget with additional attributes
540INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
541[info] + render widget with nonces if request attribute set
542[info] Total for specification InvisibleButtonSpec
543[info] Finished in 471 ms
544[info] 7 examples, 0 failure, 0 error
545INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
546[info] RecaptchaFieldSpec
547[info] recaptchaField should
548[info] + include noscript and tabindex
549[info] + exclude noscript and required marker when set
550[info] + show required marker when set
551[info] + show captcha incorrect error
552[info] + show recaptcha not reachable error
553[info] + show api error
554[info] + show response missing error
555[info] + ignores other errors
556[info] + include extra classes and attributes
557[info] Total for specification RecaptchaFieldSpec
558[info] Finished in 119 ms
559[info] 9 examples, 0 failure, 0 error
560[info] NonceActionBuilderSpec
561[info] Controller1 using NonceActionBuilder should
562INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
563[info] + Wrap simple response with no implicit request
564INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
565[info] + Wrap simple response with implicit request
566INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
567[info] + Wrap future response without implicit request
568INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
569[info] + Wrap Action without implicit request
570INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
571[info] + Wrap Action with implicit request and nonce config
572[info] Controller2 using NonceActionBuilder should
573INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
574[info] + Wrap messages action with no implicit request
575INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
576[info] + Wrap messages action with implicit request
577INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
578[info] + Wrap future messages action without implicit request
579INFO p.a.h.HttpErrorHandlerExceptions - Registering exception handler: guice-provision-exception-handler
580[info] + Wrap future messages action with implicit request
581[info] Total for specification NonceActionBuilderSpec
582[info] Finished in 668 ms
583[info] 9 examples, 0 failure, 0 error
584[info] RecaptchaVerifierSpec
585[info] (v2) RecaptchaVerifier (low level API) should
586OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
587[info] + handle a valid response as a success
588[info] + handle a parser error as an error
589ERROR c.n.p.r.RecaptchaVerifier - Error calling recaptcha v2 API, HTTP response 404
590[info] + handle a 404 response as an error
591ERROR c.n.p.r.RecaptchaVerifier - Unable to call recaptcha v2 API
592java.io.IOException: Oops
593 at com.nappin.play.recaptcha.RecaptchaVerifierSpec.$anonfun$1(RecaptchaVerifierSpec.scala:413)
594 at scala.concurrent.Future$.apply$$anonfun$1(Future.scala:692)
595 at scala.concurrent.impl.Promise$Transformation.run(Promise.scala:503)
596 at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1395)
597 at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
598 at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
599 at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
600 at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
601 at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)
602[info] + handle an IOException as an error
603[info] RecaptchaVerifier (high level API) - form URL encoded body should
604[info] + stop at a binding error and not call recaptcha
605ERROR c.n.p.r.RecaptchaVerifier - No recaptcha response POSTed, check the form submitted was valid
606[info] + throw exception if no recaptcha response
607ERROR c.n.p.r.RecaptchaVerifier - Multiple recaptcha responses POSTed, check the form submitted was valid
608[info] + throw exception if multiple recaptcha responses
609[info] + return form error if empty recaptcha response
610[info] + return form errors if empty recaptcha response and form bind error
611[info] + return form error if recaptcha error
612[info] + return form if recaptcha is successful
613[info] RecaptchaVerifier (high level API) - JSON body should
614[info] + stop at a binding error and not call recaptcha
615ERROR c.n.p.r.RecaptchaVerifier - No recaptcha response POSTed, check the form submitted was valid
616[info] + throw exception if no recaptcha response
617[info] + return form error if empty recaptcha response
618[info] + return form errors if empty recaptcha response and form bind error
619[info] + return form error if recaptcha error
620[info] + return form if recaptcha is successful
621[info] Total for specification RecaptchaVerifierSpec
622[info] Finished in 1 second, 777 ms
623[info] 17 examples, 0 failure, 0 error
624
625************************
626Build summary:
627[{
628 "module": "play-recaptcha",
629 "compile": {"status": "ok", "tookMs": 8886, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
630 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
631 "test-compile": {"status": "ok", "tookMs": 8834, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
632 "test": {"status": "ok", "tookMs": 10003, "passed": 94, "failed": 0, "ignored": 0, "skipped": 0, "total": 94, "byFramework": [{"framework": "specs2", "stats": {"passed": 94, "failed": 0, "ignored": 0, "skipped": 0, "total": 94}}]},
633 "publish": {"status": "skipped", "tookMs": 0},
634 "metadata": {
635 "crossScalaVersions": ["2.12.20"]
636}
637}]
638************************
639[success] Total time: 37 s, completed Dec 22, 2025, 6:27:27 PM
640[0J/build/build.patch:20: trailing whitespace.
641sbt.version=1.9.9
642Checking patch project/plugins.sbt...
643Checking patch project/build.properties...
644Checking patch build.sbt...
645Applied patch project/plugins.sbt cleanly.
646Applied patch project/build.properties cleanly.
647Applied patch build.sbt cleanly.
648warning: 1 line adds whitespace errors.