Build Logs

toolsplus/atlassian-jwt • 3.8.0-RC6:2026-01-08

Errors

0

Warnings

0

Total Lines

270

1##################################
2Clonning https://github.com/toolsplus/atlassian-jwt.git into /build/repo using revision v0.4.0
3##################################
4Note: switching to '92b36b394bb6374a88503752cad35a82f5bd716d'.
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
21----
22Preparing build for 3.8.0-RC6
23Scala binary version found: 3.8
24Implicitly using source version 3.8
25Scala binary version found: 3.8
26Implicitly using source version 3.8
27Would try to apply common scalacOption (best-effort, sbt/mill only):
28Append: ,REQUIRE:-source:3.8
29Remove: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
30----
31Starting build for 3.8.0-RC6
32Execute tests: true
33sbt project found:
34No prepare script found for project toolsplus/atlassian-jwt
35##################################
36Scala version: 3.8.0-RC6
37Targets: io.toolsplus%atlassian-jwt-api io.toolsplus%atlassian-jwt-core io.toolsplus%atlassian-jwt-generators
38Project projectConfig: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}
39##################################
40Using extra scalacOptions: ,REQUIRE:-source:3.8
41Filtering out scalacOptions: ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
42[sbt_options] declare -a sbt_options=()
43[process_args] java_version = '21'
44[copyRt] java9_rt = '/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21/rt.jar'
45# Executing command line:
46java
47-Dfile.encoding=UTF-8
48-Dcommunitybuild.scala=3.8.0-RC6
49-Dcommunitybuild.project.dependencies.add=
50-Xmx7G
51-Xms4G
52-Xss8M
53-Dsbt.script=/root/.sdkman/candidates/sbt/current/bin/sbt
54-Dscala.ext.dirs=/root/.sbt/1.0/java9-rt-ext-eclipse_adoptium_21
55-jar
56/root/.sdkman/candidates/sbt/1.11.5/bin/sbt-launch.jar
57"setCrossScalaVersions 3.8.0-RC6"
58"++3.8.0-RC6 -v"
59"mapScalacOptions ",REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s" ",-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e""
60"set every credentials := Nil"
61"excludeLibraryDependency com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}"
62"removeScalacOptionsStartingWith -P:wartremover"
63
64moduleMappings
65"runBuild 3.8.0-RC6 """{"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}""" io.toolsplus%atlassian-jwt-api io.toolsplus%atlassian-jwt-core io.toolsplus%atlassian-jwt-generators"
66
67[info] [launcher] getting org.scala-sbt sbt 1.11.7 (this may take some time)...
68[info] welcome to sbt 1.11.7 (Eclipse Adoptium Java 21)
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 3 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.414s.
74[info] done compiling
75[info] loading settings for project atlassian-jwt from build.sbt, version.sbt...
76[info] set current project to atlassian-jwt (in build file:/build/repo/)
77Execute setCrossScalaVersions: 3.8.0-RC6
78OpenCB::Changing crossVersion 3.3.6 -> 3.8.0-RC6 in atlassian-jwt-core/crossScalaVersions
79OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC6) in atlassian-jwt-core/crossScalaVersions
80OpenCB::Changing crossVersion 3.3.6 -> 3.8.0-RC6 in atlassian-jwt-api/crossScalaVersions
81OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC6) in atlassian-jwt-api/crossScalaVersions
82OpenCB::Changing crossVersion 3.3.6 -> 3.8.0-RC6 in atlassian-jwt/crossScalaVersions
83OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC6) in atlassian-jwt/crossScalaVersions
84OpenCB::Changing crossVersion 3.3.6 -> 3.8.0-RC6 in atlassian-jwt-generators/crossScalaVersions
85OpenCB::Limitting incorrect crossVersions List(2.12.20) -> List(3.8.0-RC6) in atlassian-jwt-generators/crossScalaVersions
86[info] set current project to atlassian-jwt (in build file:/build/repo/)
87[info] Setting Scala version to 3.8.0-RC6 on 4 projects.
88[info] Switching Scala version on:
89[info] * atlassian-jwt (3.8.0-RC6)
90[info] atlassian-jwt-api (3.8.0-RC6)
91[info] atlassian-jwt-generators (3.8.0-RC6)
92[info] atlassian-jwt-core (3.8.0-RC6)
93[info] Excluding projects:
94[info] Reapplying settings...
95[info] set current project to atlassian-jwt (in build file:/build/repo/)
96Execute mapScalacOptions: ,REQUIRE:-source:3.8,-Wconf:msg=can be rewritten automatically under:s ,-deprecation,-feature,-Xfatal-warnings,-Werror,MATCH:.*-Wconf.*any:e
97[info] Reapplying settings...
98[info] set current project to atlassian-jwt (in build file:/build/repo/)
99[info] Defining Global / credentials, atlassian-jwt-api / credentials and 2 others.
100[info] The new values will be used by Compile / scalafmtOnly, Global / pgpSelectPassphrase and 31 others.
101[info] Run `last` for details.
102[info] Reapplying settings...
103[info] set current project to atlassian-jwt (in build file:/build/repo/)
104Execute excludeLibraryDependency: com.github.ghik:zerowaste_{scalaVersion} com.olegpy:better-monadic-for_3 org.polyvariant:better-tostring_{scalaVersion} org.wartremover:wartremover_{scalaVersion}
105[info] Reapplying settings...
106OpenCB::Failed to reapply settings in excludeLibraryDependency: Reference to undefined setting:
107
108 Global / allExcludeDependencies from Global / allExcludeDependencies (CommunityBuildPlugin.scala:331)
109 Did you mean atlassian-jwt-generators / allExcludeDependencies ?
110 , retry without global scopes
111[info] Reapplying settings...
112[info] set current project to atlassian-jwt (in build file:/build/repo/)
113Execute removeScalacOptionsStartingWith: -P:wartremover
114[info] Reapplying settings...
115[info] set current project to atlassian-jwt (in build file:/build/repo/)
116[success] Total time: 0 s, completed Jan 8, 2026, 1:27:36 AM
117Build config: {"projects":{"exclude":[],"overrides":{}},"java":{"version":"21"},"sbt":{"commands":[],"options":[]},"mill":{"options":[]},"tests":"full","migrationVersions":[],"sourcePatches":[]}
118Parsed config: Success(ProjectBuildConfig(ProjectsConfig(List(),Map()),Full,List()))
119Starting build...
120Projects: Set(atlassian-jwt-api, atlassian-jwt-core, atlassian-jwt-generators)
121Starting build for ProjectRef(file:/build/repo/,atlassian-jwt-api) (atlassian-jwt-api)... [0/3]
122OpenCB::Exclude Scala3 specific scalacOption `REQUIRE:-source:3.8` in Scala 2.12.20 module Global
123Compile scalacOptions: -Wconf:msg=can be rewritten automatically under:s, -source:3.8
124[info] compiling 2 Scala sources to /build/repo/modules/api/target/scala-3.8.0-RC6/classes ...
125[info] done compiling
126Starting build for ProjectRef(file:/build/repo/,atlassian-jwt-core) (atlassian-jwt-core)... [1/3]
127Compile scalacOptions: -Wconf:msg=can be rewritten automatically under:s, -source:3.8
128[info] compiling 11 Scala sources to /build/repo/modules/core/target/scala-3.8.0-RC6/classes ...
129[info] done compiling
130[info] compiling 7 Scala sources to /build/repo/modules/generators/target/scala-3.8.0-RC6/classes ...
131[info] done compiling
132[info] compiling 9 Scala sources to /build/repo/modules/core/target/scala-3.8.0-RC6/test-classes ...
133[info] done compiling
134[info] JwtParserSpec:
135[info] Using a JwtParser
136[info] when given a valid JWT string
137[info] - should successfully parse a JWT
138[info] - should successfully parse a JWSObject
139[info] - should successfully parse JWTClaimsSet
140[info] when given an invalid JWT string
141[info] - should fail to parse a JWT from an unsigned token string
142[info] - should fail to parse a JWSObject from an unsigned token string
143[info] - should fail to parse a JWTClaimSet from a random string
144[info] JwtBuilderSpec:
145[info] A JwtBuilder
146[info] when used to generate a token
147[info] - should successfully create JWT claims with specific expiration time
148[info] - should successfully create JWT claims with overridden expiration time
149[info] - should successfully create JWT claims with overridden issue time
150[info] - should successfully create JWT with standard claims
151[info] - should successfully create JWT with custom claims
152[info] - should successfully create JWT with qsh claim
153[info] JwtClaimSetVerifiersSpec:
154[info] Using a JwtClaimSetVerifiers
155[info] when hasIssueTimeAndExpirationTime
156[info] - should succeed if claims have issue time (iat) and expiry (exp)
157[info] - should fail if issue time (iat) is missing
158[info] - should fail if issue time (exp) is missing
159[info] when expirationTimeIsAfterNotBefore
160[info] - should succeed if expiry (exp) is after not before (nbf) time
161[info] - should succeed if not before (nbf) is missing
162[info] - should fail if expiry (exp) is missing
163[info] - should fail if expiry (exp) is earlier than not before (nbf) time
164[info] when nowIsAfterNotBefore
165[info] - should succeed if current time is after not before (nbf) time
166[info] - should succeed if not before (nbf) is missing
167[info] - should fail if expiry (exp) is earlier than not before (nbf) time
168[info] when nowIsBeforeExpirationTime
169[info] - should succeed if current time is before expiry (exp) time
170[info] - should fail if expiry (exp) time is missing
171[info] - should fail if current time is after expiry (exp) time
172[info] when queryStringHash
173[info] - should succeed if qsh claim matches expected qsh
174[info] - should succeed if qsh claim is missing
175[info] - should fail if qsh claim does not match expected qsh
176[info] HttpRequestCanonicalizerSpec:
177[info] Using a HttpRequestCanonicalizer
178[info] when given a valid CanonicalHttpRequest
179[info] - should compute the correct canonical request string
180[info] - should compute the correct canonical method string
181[info] - should compute the correct canonical uri string
182[info] - should successfully compute canonical request hash
183[info] JwtJsonBuilderSpec:
184[info] A JwtJsonBuilder
185[info] when used to build a JWT
186[info] - should create JWT claims with default lifetime if no arguments are given
187[info] - should create JWT claims with specific expiration time
188[info] - should create JWT claims with overridden expiration time
189[info] - should create JWT claims with specific issue time
190[info] - should create JWT claims with specific audience
191[info] - should create JWT claims with specific issuer
192[info] - should create JWT claims with specific jwt id
193[info] - should create JWT claims with specific not before timestamp
194[info] - should create JWT claims with specific subject
195[info] - should create JWT claims with specific type
196[info] - should create JWT claims with specific query string hash
197[info] - should create JWT claims with specific custom claim
198[info] - should successfully check if a specific claim has been set
199[info] SymmetricJwtReaderSpec:
200[info] Using a SymmetricJwtReader
201[info] when given a valid JWT string
202[info] - should successfully read and verify a JWT
203[info] - should successfully read and verify a JWT even if qsh is not present (self-authenticated)
204[info] - should fail if algorithm ('alg') is is not HS256
205[info] - should fail if not before claim ('nbf') is after expiry time
206[info] - should fail if not before claim ('nbf') is after current time
207[info] - should fail if expiry ('exp') is before current time
208[info] - should fail if there is no issue time ('iat')
209[info] - should fail if there is no expiration time ('exp')
210[info] when given an invalid JWT string
211[info] - should fail to read a JWT with query string hash mismatch
212[info] - should fail to read a JWT from an unsigned token string
213[info] - should fail to read a JWT from a token string with invalid signature
214[info] AsymmetricJwtReaderSpec:
215[info] Using a AsymmetricJwtReader
216[info] when given a valid JWT string
217[info] - should successfully read and verify a JWT
218[info] - should successfully read and verify a JWT even if qsh is not present (self-authenticated)
219[info] - should fail if algorithm ('alg') is is not HS256
220[info] - should fail if not before claim ('nbf') is after expiry time
221[info] - should fail if not before claim ('nbf') is after current time
222[info] - should fail if expiry ('exp') is before current time
223[info] - should fail if there is no issue time ('iat')
224[info] - should fail if there is no expiration time ('exp')
225[info] when given an invalid JWT string
226[info] - should fail to read a JWT with query string hash mismatch
227[info] - should fail to read a JWT from an unsigned token string
228[info] - should fail to read a JWT from a token string with invalid signature
229Starting build for ProjectRef(file:/build/repo/,atlassian-jwt-generators) (atlassian-jwt-generators)... [2/3]
230Compile scalacOptions: -Wconf:msg=can be rewritten automatically under:s, -source:3.8
231
232************************
233Build summary:
234[{
235 "module": "atlassian-jwt-api",
236 "compile": {"status": "ok", "tookMs": 2948, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
237 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
238 "test-compile": {"status": "ok", "tookMs": 117, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
239 "test": {"status": "ok", "tookMs": 115, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
240 "publish": {"status": "skipped", "tookMs": 0},
241 "metadata": {
242 "crossScalaVersions": ["2.12.20"]
243}
244},{
245 "module": "atlassian-jwt-core",
246 "compile": {"status": "ok", "tookMs": 4218, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
247 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
248 "test-compile": {"status": "ok", "tookMs": 7772, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
249 "test": {"status": "ok", "tookMs": 5963, "passed": 67, "failed": 0, "ignored": 0, "skipped": 0, "total": 67, "byFramework": [{"framework": "unknown", "stats": {"passed": 67, "failed": 0, "ignored": 0, "skipped": 0, "total": 67}}]},
250 "publish": {"status": "skipped", "tookMs": 0},
251 "metadata": {
252 "crossScalaVersions": ["2.12.20"]
253}
254},{
255 "module": "atlassian-jwt-generators",
256 "compile": {"status": "ok", "tookMs": 89, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
257 "doc": {"status": "skipped", "tookMs": 0, "files": 0, "totalSizeKb": 0},
258 "test-compile": {"status": "ok", "tookMs": 127, "warnings": 0, "errors": 0, "sourceVersion": "3.8"},
259 "test": {"status": "ok", "tookMs": 115, "passed": 0, "failed": 0, "ignored": 0, "skipped": 0, "total": 0, "byFramework": []},
260 "publish": {"status": "skipped", "tookMs": 0},
261 "metadata": {
262 "crossScalaVersions": ["2.12.20"]
263}
264}]
265************************
266[success] Total time: 25 s, completed Jan 8, 2026, 1:28:01 AM
267[0JChecking patch project/plugins.sbt...
268Checking patch build.sbt...
269Applied patch project/plugins.sbt cleanly.
270Applied patch build.sbt cleanly.