mirror of
https://github.com/apple/pkl.git
synced 2026-07-03 11:41:43 +02:00
Remove obsolete Alpine Linux workaround (#457)
The bug necessitating this workaround was fixed in October 2022. For details: https://github.com/oracle/graal/issues/3398
This commit is contained in:
@@ -19,37 +19,23 @@ package org.pkl.cli
|
|||||||
|
|
||||||
import com.github.ajalt.clikt.core.subcommands
|
import com.github.ajalt.clikt.core.subcommands
|
||||||
import org.pkl.cli.commands.*
|
import org.pkl.cli.commands.*
|
||||||
import org.pkl.commons.cli.CliMain
|
|
||||||
import org.pkl.commons.cli.cliMain
|
import org.pkl.commons.cli.cliMain
|
||||||
import org.pkl.core.Release
|
import org.pkl.core.Release
|
||||||
|
|
||||||
/** Main method of the Pkl CLI (command-line evaluator and REPL). */
|
/** Main method of the Pkl CLI (command-line evaluator and REPL). */
|
||||||
internal fun main(args: Array<String>) {
|
internal fun main(args: Array<String>) {
|
||||||
val version = Release.current().versionInfo()
|
|
||||||
val helpLink = "${Release.current().documentation().homepage()}pkl-cli/index.html#usage"
|
|
||||||
val commands =
|
|
||||||
arrayOf(
|
|
||||||
EvalCommand(helpLink),
|
|
||||||
ReplCommand(helpLink),
|
|
||||||
ServerCommand(helpLink),
|
|
||||||
TestCommand(helpLink),
|
|
||||||
ProjectCommand(helpLink),
|
|
||||||
DownloadPackageCommand(helpLink)
|
|
||||||
)
|
|
||||||
val cmd = RootCommand("pkl", version, helpLink).subcommands(*commands)
|
|
||||||
cliMain {
|
cliMain {
|
||||||
if (CliMain.compat == "alpine") {
|
val version = Release.current().versionInfo()
|
||||||
// Alpine's main thread has a prohibitively small stack size by default;
|
val helpLink = "${Release.current().documentation().homepage()}pkl-cli/index.html#usage"
|
||||||
// https://github.com/oracle/graal/issues/3398
|
RootCommand("pkl", version, helpLink)
|
||||||
var throwable: Throwable? = null
|
.subcommands(
|
||||||
Thread(null, { cmd.main(args) }, "alpineMain", 10000000).apply {
|
EvalCommand(helpLink),
|
||||||
setUncaughtExceptionHandler { _, t -> throwable = t }
|
ReplCommand(helpLink),
|
||||||
start()
|
ServerCommand(helpLink),
|
||||||
join()
|
TestCommand(helpLink),
|
||||||
}
|
ProjectCommand(helpLink),
|
||||||
throwable?.let { throw it }
|
DownloadPackageCommand(helpLink)
|
||||||
} else {
|
)
|
||||||
cmd.main(args)
|
.main(args)
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user