Skip to content

Commit 8728e1a

Browse files
Using Option[Option[Path]] in launcher
1 parent b491672 commit 8728e1a

File tree

4 files changed

+45
-44
lines changed

4 files changed

+45
-44
lines changed

engine/launcher/src/main/scala/org/enso/launcher/Launcher.scala

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ case class Launcher(cliOptions: GlobalCLIOptions) {
7474
versionOverride: Option[SemVer],
7575
useSystemJVM: Boolean,
7676
jvmOpts: Seq[(String, String)],
77-
jvmMode: Boolean,
77+
jvm: Option[Option[Path]],
7878
additionalArguments: Seq[String]
7979
): Int = {
8080
val actualPath = path.getOrElse(Launcher.workingDirectory.resolve(name))
@@ -89,7 +89,7 @@ case class Launcher(cliOptions: GlobalCLIOptions) {
8989
path = actualPath,
9090
name = name,
9191
engineVersion = version,
92-
jvmMode = jvmMode,
92+
jvm = jvm,
9393
normalizedName = normalizedName,
9494
projectTemplate = projectTemplate,
9595
authorName = globalConfig.authorName,
@@ -212,7 +212,7 @@ case class Launcher(cliOptions: GlobalCLIOptions) {
212212
logLevel: Level,
213213
useSystemJVM: Boolean,
214214
jvmOpts: Seq[(String, String)],
215-
jvmMode: Boolean,
215+
jvm: Option[Option[Path]],
216216
additionalArguments: Seq[String]
217217
): Int = {
218218
runner
@@ -223,7 +223,7 @@ case class Launcher(cliOptions: GlobalCLIOptions) {
223223
versionOverride,
224224
logLevel,
225225
cliOptions.internalOptions.logMasking,
226-
jvmMode,
226+
jvm,
227227
additionalArguments
228228
)
229229
.get,
@@ -257,7 +257,7 @@ case class Launcher(cliOptions: GlobalCLIOptions) {
257257
logLevel: Level,
258258
useSystemJVM: Boolean,
259259
jvmOpts: Seq[(String, String)],
260-
jvmMode: Boolean,
260+
jvm: Option[Option[Path]],
261261
additionalArguments: Seq[String]
262262
): Int = {
263263
val exitCode = runner
@@ -268,7 +268,7 @@ case class Launcher(cliOptions: GlobalCLIOptions) {
268268
versionOverride,
269269
logLevel,
270270
cliOptions.internalOptions.logMasking,
271-
jvmMode,
271+
jvm,
272272
additionalArguments
273273
)
274274
.get,

engine/launcher/src/main/scala/org/enso/launcher/cli/LauncherApplication.scala

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ object LauncherApplication {
7979
versionOverride,
8080
systemJVMOverride,
8181
jvmOpts,
82-
jvmMode,
82+
jvm,
8383
additionalArgs
8484
) mapN {
8585
(
@@ -90,7 +90,7 @@ object LauncherApplication {
9090
versionOverride,
9191
systemJVMOverride,
9292
jvmOpts,
93-
jvmMode,
93+
jvm,
9494
additionalArgs
9595
) => (config: Config) =>
9696
Launcher(config).newProject(
@@ -101,7 +101,7 @@ object LauncherApplication {
101101
versionOverride = versionOverride,
102102
useSystemJVM = systemJVMOverride,
103103
jvmOpts = jvmOpts,
104-
jvmMode = jvmMode,
104+
jvm = Option(jvm),
105105
additionalArguments = additionalArgs
106106
)
107107
}
@@ -112,11 +112,12 @@ object LauncherApplication {
112112
"jvm",
113113
"These parameters will be passed to the launched JVM as -DKEY=VALUE."
114114
)
115-
private def jvmMode =
116-
Opts.flag(
115+
private def jvm =
116+
Opts.optionalParameter[Path](
117117
"jvm",
118-
"Setting this flag runs Enso in JVM mode rather than the default native one.",
119-
showInUsage = true
118+
"path",
119+
"Runs Enso in JVM mode rather than the default native one.",
120+
true
120121
)
121122
private def systemJVMOverride =
122123
Opts.flag(
@@ -166,7 +167,7 @@ object LauncherApplication {
166167
engineLogLevel,
167168
systemJVMOverride,
168169
jvmOpts,
169-
jvmMode,
170+
jvm,
170171
additionalArgs
171172
) mapN {
172173
(
@@ -175,15 +176,15 @@ object LauncherApplication {
175176
engineLogLevel,
176177
systemJVMOverride,
177178
jvmOpts,
178-
jvmMode,
179+
jvm,
179180
additionalArgs
180181
) => (config: Config) =>
181182
Launcher(config).runRun(
182183
path = path,
183184
versionOverride = versionOverride,
184185
useSystemJVM = systemJVMOverride,
185186
jvmOpts = jvmOpts,
186-
jvmMode = jvmMode,
187+
jvm = Option(jvm),
187188
additionalArguments = additionalArgs,
188189
logLevel = engineLogLevel
189190
)
@@ -255,7 +256,7 @@ object LauncherApplication {
255256
engineLogLevel,
256257
systemJVMOverride,
257258
jvmOpts,
258-
jvmMode,
259+
jvm,
259260
additionalArgs
260261
) mapN {
261262
(
@@ -271,7 +272,7 @@ object LauncherApplication {
271272
engineLogLevel,
272273
systemJVMOverride,
273274
jvmOpts,
274-
jvmMode,
275+
jvm,
275276
additionalArgs
276277
) => (config: Config) =>
277278
Launcher(config).runLanguageServer(
@@ -283,7 +284,7 @@ object LauncherApplication {
283284
secureRpcPort = secureRpcPort,
284285
dataPort = dataPort,
285286
secureDataPort = secureDataPort,
286-
jvmModeEnabled = jvmMode
287+
jvm = Option(jvm)
287288
),
288289
contentRoot = path,
289290
versionOverride = versionOverride,
@@ -316,7 +317,7 @@ object LauncherApplication {
316317
engineLogLevel,
317318
systemJVMOverride,
318319
jvmOpts,
319-
jvmMode,
320+
jvm,
320321
additionalArgs
321322
) mapN {
322323
(
@@ -325,15 +326,15 @@ object LauncherApplication {
325326
engineLogLevel,
326327
systemJVMOverride,
327328
jvmOpts,
328-
jvmMode,
329+
jvm,
329330
additionalArgs
330331
) => (config: Config) =>
331332
Launcher(config).runRepl(
332333
projectPath = path,
333334
versionOverride = versionOverride,
334335
useSystemJVM = systemJVMOverride,
335336
jvmOpts = jvmOpts,
336-
jvmMode = jvmMode,
337+
jvm = Option(jvm),
337338
additionalArguments = additionalArgs,
338339
logLevel = engineLogLevel
339340
)

engine/launcher/src/main/scala/org/enso/launcher/components/LauncherRunner.scala

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ class LauncherRunner(
4545
versionOverride: Option[SemVer],
4646
logLevel: Level,
4747
logMasking: Boolean,
48-
jvmMode: Boolean,
48+
jvm: Option[Option[Path]],
4949
additionalArguments: Seq[String]
5050
): Try[RunSettings] =
5151
Try {
@@ -68,7 +68,7 @@ class LauncherRunner(
6868
}
6969
RunSettings(
7070
version,
71-
jvmMode,
71+
jvm,
7272
arguments ++ setLogLevelArgs(logLevel, logMasking)
7373
++ additionalArguments,
7474
workingDirectory = workingDirectory,
@@ -85,7 +85,7 @@ class LauncherRunner(
8585
versionOverride: Option[SemVer],
8686
logLevel: Level,
8787
logMasking: Boolean,
88-
jvmMode: Boolean,
88+
jvm: Option[Option[Path]],
8989
additionalArguments: Seq[String]
9090
): Try[RunSettings] =
9191
Try {
@@ -134,7 +134,7 @@ class LauncherRunner(
134134
}
135135
RunSettings(
136136
version,
137-
jvmMode,
137+
jvm,
138138
arguments ++ setLogLevelArgs(logLevel, logMasking)
139139
++ additionalArguments,
140140
workingDirectory = workingDirectory,
@@ -216,7 +216,7 @@ class LauncherRunner(
216216
(
217217
RunSettings(
218218
version,
219-
jvmMode = false,
219+
jvm = None,
220220
arguments,
221221
workingDirectory = None,
222222
connectLoggerIfAvailable = false
@@ -267,7 +267,7 @@ class LauncherRunner(
267267
tokenOpts ++ hideProgressOpts
268268
RunSettings(
269269
version,
270-
jvmMode = false,
270+
jvm = None,
271271
arguments ++ setLogLevelArgs(logLevel, logMasking)
272272
++ additionalArguments,
273273
workingDirectory = None,
@@ -316,7 +316,7 @@ class LauncherRunner(
316316
hideProgressOpts
317317
RunSettings(
318318
version,
319-
jvmMode = false,
319+
jvm = None,
320320
arguments ++ setLogLevelArgs(logLevel, logMasking)
321321
++ additionalArguments,
322322
workingDirectory = None,

engine/launcher/src/test/scala/org/enso/launcher/components/LauncherRunnerSpec.scala

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
6464

6565
val runSettings = RunSettings(
6666
SemVer.of(0, 0, 0),
67-
jvmMode = true,
67+
jvm = Some(None),
6868
Seq("arg1", "--flag2"),
6969
workingDirectory = None,
7070
connectLoggerIfAvailable = true
@@ -127,7 +127,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
127127
path = projectPath,
128128
name = "ProjectName",
129129
engineVersion = defaultEngineVersion,
130-
jvmMode = false,
130+
jvm = None,
131131
normalizedName = None,
132132
projectTemplate = None,
133133
authorName = Some(authorName),
@@ -156,7 +156,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
156156
path = projectPath,
157157
name = "ProjectName",
158158
engineVersion = defaultEngineVersion,
159-
jvmMode = false,
159+
jvm = None,
160160
normalizedName = Some(normalizedName),
161161
projectTemplate = None,
162162
authorName = None,
@@ -187,7 +187,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
187187
path = projectPath,
188188
name = "ProjectName2",
189189
engineVersion = nightlyVersion,
190-
jvmMode = false,
190+
jvm = None,
191191
normalizedName = None,
192192
projectTemplate = None,
193193
authorName = None,
@@ -221,7 +221,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
221221
additionalArguments = Seq("arg", "--flag"),
222222
logLevel = Level.INFO,
223223
logMasking = true,
224-
jvmMode = false
224+
jvm = None
225225
)
226226
.get
227227

@@ -248,7 +248,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
248248
additionalArguments = Seq(),
249249
logLevel = Level.INFO,
250250
logMasking = true,
251-
jvmMode = false
251+
jvm = None
252252
)
253253
.get
254254

@@ -265,7 +265,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
265265
additionalArguments = Seq(),
266266
logLevel = Level.INFO,
267267
logMasking = true,
268-
jvmMode = false
268+
jvm = None
269269
)
270270
.get
271271

@@ -282,7 +282,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
282282
additionalArguments = Seq(),
283283
logLevel = Level.INFO,
284284
logMasking = true,
285-
jvmMode = false
285+
jvm = None
286286
)
287287
.get
288288

@@ -306,7 +306,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
306306
secureRpcPort = None,
307307
dataPort = 4321,
308308
secureDataPort = None,
309-
jvmModeEnabled = false
309+
jvm = None
310310
)
311311
val runSettings = runner
312312
.languageServer(
@@ -359,7 +359,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
359359
additionalArguments = Seq(),
360360
logLevel = Level.INFO,
361361
logMasking = true,
362-
jvmMode = false
362+
jvm = None
363363
)
364364
.get
365365

@@ -376,7 +376,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
376376
additionalArguments = Seq(),
377377
logLevel = Level.INFO,
378378
logMasking = true,
379-
jvmMode = false
379+
jvm = None
380380
)
381381
.get
382382

@@ -392,7 +392,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
392392
additionalArguments = Seq(),
393393
logLevel = Level.INFO,
394394
logMasking = true,
395-
jvmMode = false
395+
jvm = None
396396
)
397397
.get
398398

@@ -408,7 +408,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
408408
additionalArguments = Seq(),
409409
logLevel = Level.INFO,
410410
logMasking = true,
411-
jvmMode = false
411+
jvm = None
412412
)
413413
.isFailure,
414414
"Running outside project without providing any paths should be an error"
@@ -436,7 +436,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
436436
additionalArguments = Seq(),
437437
logLevel = Level.INFO,
438438
logMasking = true,
439-
jvmMode = false
439+
jvm = None
440440
)
441441
.get
442442

@@ -462,7 +462,7 @@ class LauncherRunnerSpec extends RuntimeVersionManagerTest with FlakySpec {
462462
additionalArguments = Seq(),
463463
logLevel = Level.INFO,
464464
logMasking = true,
465-
jvmMode = false
465+
jvm = None
466466
)
467467
.get
468468

0 commit comments

Comments
 (0)