guardrail-dev / guardrail-dev/guardrail-maven-plugin
Doesn't work with threaded maven
- Dominant language
- Scala
- Stars
- 2
- Forks
- 6
- PR merge metrics
- No merged PRs in 30d
Description
`mvn -T 1C` reportedly results in the following traceback, with the overall failure: `java.lang.AssertionError : I am not a chatild of my parent`
```
[ERROR] Failed to generate client
com.twilio.guardrail.CodegenFailedException
at com.twilio.guardrail.AbstractGuardrailCodegenMojo.$anonfun$guardrailTask$4 (AbstractGuardrailCodegenMojo.scala:181)
at com.twilio.guardrail.TargetError.fold (Target.scala:108)
at com.twilio.guardrail.AbstractGuardrailCodegenMojo.guardrailTask (AbstractGuardrailCodegenMojo.scala:194)
at com.twilio.guardrail.AbstractGuardrailCodegenMojo.execute (AbstractGuardrailCodegenMojo.scala:141)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:190)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:186)
at java.util.concurrent.FutureTask.run (FutureTask.java:264)
at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:515)
at[ a1mERROR] Erva.ror: Eutil.crrooncr attemptingurrent.FutureTa tosk. proruncess /Users/kpavlov/work (it[1mFutureT/mask.javessa:2aging/a64-service/core-modules/a2p-integratm)i
on-impl/src/ main/resources/number-pool-service.oas3.yml:
java.lang.AssertionError : I am not a chatild of my parent.
at com.tilio.guardrail.SwaggerUtil$.$anonfun$typeName$15(Swag[mger jUtil.scalaava.util.concurrent.Thr:296)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
ead at com.twiliPoolExeco.utor.runWorkerguardrail.Targe (ThreadPoolExecutor.java:1130)t$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.SwaggerUtil$.$anonfun$typeName$3(SwaggerUtil.scala:269)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
at
com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.SwaggerUtil$.typeName(SwaggerUtil.scala:268)
at com.twilio.guardrail.ProtocolGeneraator$.$anonfun$fromEnum$18(Proto[mco java.util.concurrent.ThreadPoolExeculGenerator.scala:149)
tor$Worker.run at com.twilio.guardra (ThreadPoolExecutor.java:630)
il.Target$$anon$1.flatMap(Target. scala:37)
at com.twilio.gurdr[1matail.Targ jet$$anoavan$1.flatMap.la(Target.scala:27)ng.Thread.run
...
( Thr ead.java:832)at com.twilio.guardrail.ProtocolG
enerator$.$anonfun$fromEnum$17(ProtocolGenerator.scala:148)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.ProtocolGenerator$.fromEnum(ProtocolGenerator.scala:147)
at com.twilio.guardrail.ProtocolGenerator$.$anonfun$fromSwagger$20(ProtocolGenerator.scala:726)
at com.twilio.guardrail.core.HighPriorityTrackerSyntax$RefineEitherSyntax.$anonfun$orRefine$2(Tracker.scala:115)
...
at com.twilio.guardrail.core.HighPriorityTrackerSyntax$RefineEitherSyntax.$anonfun$orRefine$1(Tracker.scala:117)
...
at com.twilio.guardrail.core.HighPriorityTrackerSyntax$RefineEitherSyntax.orRefine(Tracker.scala:118)
at com.twilio.guardrail.ProtocolGenerator$.$anonfun$fromSwagger$7(ProtocolGenerator.scala:724)
...
at com.twilio.guardrail.ProtocolGenerator$.$anonfun$fromSwagger$6(ProtocolGenerator.scala:685)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.ProtocolGenerator$.$anonfun$fromSwagger$4(ProtocolGenerator.scala:684)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.ProtocolGenerator$.$anonfun$fromSwagger$3(ProtocolGenerator.scala:683)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.ProtocolGenerator$.fromSwagger(ProtocolGenerator.scala:681)
at com.twilio.guardrail.Common$.prepareDefinitions(Common.scala:48)
at com.twilio.guardrail.core.CoreTermInterp.$anonfun$processArgSet$18(CoreTermInterp.scala:217)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.core.CoreTermInterp.$anonfun$processArgSet$17(CoreTermInterp.scala:215)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.core.CoreTermInterp.$anonfun$processArgSet$16(CoreTermInterp.scala:214)
at com.twilio.guardrail.ReadSwagger$.$anonfun$readSwagger$2(ReadSwagger.scala:23)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.ReadSwagger$.readSwagger(ReadSwagger.scala:23)
at com.twilio.guardrail.CLICommon.$anonfun$guardrailRunner$3(CLI.scala:171)
...
at com.twilio.guardrail.CLICommon.$anonfun$guardrailRunner$2(CLI.scala:168)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:37)
at com.twilio.guardrail.Target$$anon$1.flatMap(Target.scala:27)
...
at com.twilio.guardrail.CLICommon.$anonfun$guardrailRunner$1(CLI.scala:168)
at com.twilio.guardrail.AbstractGuardrailCodegenMojo.guardrailTask(AbstractGuardrailCodegenMojo.scala:158)
at com.twilio.guardrail.AbstractGuardrailCodegenMojo.execute(AbstractGuardrailCodegenMojo.scala:141)
...
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Reproduce the failure with `mvn -T 1C` and the reported number-pool-service.oas3.yml input. Start at AbstractGuardrailCodegenMojo.scala:181, then inspect SwaggerUtil.scala:268-296 and ProtocolGenerator.scala:147-149, where the stack trace reaches the assertion. Done means threaded Maven generation completes without the `I am not a child of my parent` assertion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scala
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100