@@ -41,7 +41,7 @@ object Branch {
41
41
case object All extends Branch
42
42
case class Named (name : String ) extends Branch
43
43
44
- implicit val codec : JsonCodec [Branch ] = JsonCodec .string.transform(
44
+ implicit lazy val codec : JsonCodec [Branch ] = JsonCodec .string.transform(
45
45
{
46
46
case " *" => All
47
47
case name => Named (name)
@@ -64,15 +64,15 @@ case class Triggers(
64
64
65
65
object Triggers {
66
66
67
- implicit val codec : JsonCodec [Triggers ] = DeriveJsonCodec .gen[Triggers ]
67
+ implicit lazy val codec : JsonCodec [Triggers ] = DeriveJsonCodec .gen[Triggers ]
68
68
}
69
69
70
70
sealed trait Trigger
71
71
72
72
object Trigger {
73
73
case class InputValue (description : String , required : Boolean , default : String )
74
74
object InputValue {
75
- implicit val jsonCodec : JsonCodec [InputValue ] = DeriveJsonCodec .gen[InputValue ]
75
+ implicit lazy val jsonCodec : JsonCodec [InputValue ] = DeriveJsonCodec .gen[InputValue ]
76
76
}
77
77
78
78
case class WorkflowDispatch (
@@ -86,15 +86,15 @@ object Trigger {
86
86
JsonDecoder .keyValueChunk[K , V ].map(c => ListMap (c : _* ))
87
87
)
88
88
89
- implicit val jsonCodec : JsonCodec [WorkflowDispatch ] = DeriveJsonCodec .gen[WorkflowDispatch ]
89
+ implicit lazy val jsonCodec : JsonCodec [WorkflowDispatch ] = DeriveJsonCodec .gen[WorkflowDispatch ]
90
90
}
91
91
92
92
case class Release (
93
93
types : Seq [ReleaseType ] = Seq .empty
94
94
) extends Trigger
95
95
96
96
object Release {
97
- implicit val jsonCodec : JsonCodec [Release ] = DeriveJsonCodec .gen[Release ]
97
+ implicit lazy val jsonCodec : JsonCodec [Release ] = DeriveJsonCodec .gen[Release ]
98
98
}
99
99
100
100
sealed trait ReleaseType
@@ -103,7 +103,7 @@ object Trigger {
103
103
case object Published extends ReleaseType
104
104
case object Prereleased extends ReleaseType
105
105
106
- implicit val codec : JsonCodec [ReleaseType ] = JsonCodec .string.transformOrFail(
106
+ implicit lazy val codec : JsonCodec [ReleaseType ] = JsonCodec .string.transformOrFail(
107
107
{
108
108
case " created" => Right (Created )
109
109
case " published" => Right (Published )
@@ -127,7 +127,7 @@ object Trigger {
127
127
) extends Trigger
128
128
129
129
object PullRequest {
130
- implicit val jsonCodec : JsonCodec [PullRequest ] = DeriveJsonCodec .gen[PullRequest ]
130
+ implicit lazy val jsonCodec : JsonCodec [PullRequest ] = DeriveJsonCodec .gen[PullRequest ]
131
131
}
132
132
133
133
case class Push (
@@ -136,7 +136,7 @@ object Trigger {
136
136
) extends Trigger
137
137
138
138
object Push {
139
- implicit val jsonCodec : JsonCodec [Push ] = DeriveJsonCodec .gen[Push ]
139
+ implicit lazy val jsonCodec : JsonCodec [Push ] = DeriveJsonCodec .gen[Push ]
140
140
}
141
141
142
142
case class Create (
@@ -145,7 +145,7 @@ object Trigger {
145
145
) extends Trigger
146
146
147
147
object Create {
148
- implicit val jsonCodec : JsonCodec [Create ] = DeriveJsonCodec .gen[Create ]
148
+ implicit lazy val jsonCodec : JsonCodec [Create ] = DeriveJsonCodec .gen[Create ]
149
149
}
150
150
}
151
151
@@ -155,12 +155,12 @@ case class Strategy(matrix: ListMap[String, List[String]], maxParallel: Option[I
155
155
object Strategy {
156
156
import Workflow .listMapCodec
157
157
158
- implicit val codec : JsonCodec [Strategy ] = DeriveJsonCodec .gen[Strategy ]
158
+ implicit lazy val codec : JsonCodec [Strategy ] = DeriveJsonCodec .gen[Strategy ]
159
159
}
160
160
161
161
case class ActionRef (ref : String )
162
162
object ActionRef {
163
- implicit val codec : JsonCodec [ActionRef ] = JsonCodec .string.transform(ActionRef (_), _.ref)
163
+ implicit lazy val codec : JsonCodec [ActionRef ] = JsonCodec .string.transform(ActionRef (_), _.ref)
164
164
}
165
165
166
166
sealed trait Condition {
@@ -191,7 +191,7 @@ object Condition {
191
191
}
192
192
193
193
object Expression {
194
- implicit val codec : JsonCodec [Expression ] = JsonCodec .string.transform(Expression (_), _.asString)
194
+ implicit lazy val codec : JsonCodec [Expression ] = JsonCodec .string.transform(Expression (_), _.asString)
195
195
}
196
196
197
197
case class Function (expression : String ) extends Condition {
@@ -205,10 +205,10 @@ object Condition {
205
205
}
206
206
207
207
object Function {
208
- implicit val codec : JsonCodec [Function ] = JsonCodec .string.transform(Function (_), _.expression)
208
+ implicit lazy val codec : JsonCodec [Function ] = JsonCodec .string.transform(Function (_), _.expression)
209
209
}
210
210
211
- implicit val codec : JsonCodec [Condition ] = JsonCodec .string.transform(
211
+ implicit lazy val codec : JsonCodec [Condition ] = JsonCodec .string.transform(
212
212
{
213
213
case expression if expression.startsWith(" ${{" ) => Expression (expression)
214
214
case expression => Function (expression)
@@ -251,17 +251,17 @@ object Step {
251
251
steps.flatMap(_.flatten)
252
252
}
253
253
254
- implicit val codec : JsonCodec [Step ] = DeriveJsonCodec .gen[Step ]
254
+ implicit lazy val codec : JsonCodec [Step ] = DeriveJsonCodec .gen[Step ]
255
255
}
256
256
257
257
case class ImageRef (ref : String )
258
258
object ImageRef {
259
- implicit val codec : JsonCodec [ImageRef ] = JsonCodec .string.transform(ImageRef (_), _.ref)
259
+ implicit lazy val codec : JsonCodec [ImageRef ] = JsonCodec .string.transform(ImageRef (_), _.ref)
260
260
}
261
261
262
262
case class ServicePort (inner : Int , outer : Int )
263
263
object ServicePort {
264
- implicit val codec : JsonCodec [ServicePort ] = JsonCodec .string.transformOrFail(
264
+ implicit lazy val codec : JsonCodec [ServicePort ] = JsonCodec .string.transformOrFail(
265
265
v =>
266
266
Try (v.split(" :" , 2 ).map(_.toInt).toList) match {
267
267
case Success (inner :: outer :: Nil ) => Right (ServicePort (inner.toInt, outer.toInt))
@@ -279,7 +279,7 @@ case class Service(
279
279
ports : Option [Seq [ServicePort ]] = None
280
280
)
281
281
object Service {
282
- implicit val codec : JsonCodec [Service ] = DeriveJsonCodec .gen[Service ]
282
+ implicit lazy val codec : JsonCodec [Service ] = DeriveJsonCodec .gen[Service ]
283
283
}
284
284
285
285
@ jsonMemberNames(KebabCase )
@@ -340,7 +340,7 @@ case class Concurrency(
340
340
)
341
341
342
342
object Concurrency {
343
- implicit val codec : JsonCodec [Concurrency ] = DeriveJsonCodec .gen[Concurrency ]
343
+ implicit lazy val codec : JsonCodec [Concurrency ] = DeriveJsonCodec .gen[Concurrency ]
344
344
}
345
345
346
346
case class Workflow (
@@ -372,5 +372,5 @@ object Workflow {
372
372
JsonEncoder .keyValueIterable[K , V , ListMap ],
373
373
JsonDecoder .keyValueChunk[K , V ].map(c => ListMap (c : _* ))
374
374
)
375
- implicit val codec : JsonCodec [Workflow ] = DeriveJsonCodec .gen[Workflow ]
375
+ implicit lazy val codec : JsonCodec [Workflow ] = DeriveJsonCodec .gen[Workflow ]
376
376
}
0 commit comments