ballerina-lang
ballerina-lang copied to clipboard
[Bug]: `bal pack` crashes when missing `dependency` keys in CompilerPlugin.toml file
Description
$Subject
Execution bal pack
crashes when the CompilerPlugin.toml
file has missing dependency
keys.
output:
[2023-09-19 14:20:35,013] SEVERE {b7a.log.crash} - Index 0 out of bounds for length 0
java.lang.IndexOutOfBoundsException: Index 0 out of bounds for length 0
at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:266)
at java.base/java.util.Objects.checkIndex(Objects.java:361)
at java.base/java.util.ArrayList.get(ArrayList.java:427)
at io.ballerina.projects.JBallerinaBalaWriter.addCompilerPlugin(JBallerinaBalaWriter.java:121)
at io.ballerina.projects.BalaWriter.populateBalaArchive(BalaWriter.java:135)
at io.ballerina.projects.BalaWriter.write(BalaWriter.java:108)
at io.ballerina.projects.JBallerinaBackend.emitBala(JBallerinaBackend.java:241)
at io.ballerina.projects.JBallerinaBackend.emit(JBallerinaBackend.java:218)
at io.ballerina.cli.task.CreateBalaTask.execute(CreateBalaTask.java:79)
at io.ballerina.cli.TaskExecutor.executeTasks(TaskExecutor.java:40)
at io.ballerina.cli.cmd.PackCommand.execute(PackCommand.java:256)
at java.base/java.util.Optional.ifPresent(Optional.java:178)
at io.ballerina.cli.launcher.Main.main(Main.java:58)
Steps to Reproduce
Add a CompilerPlugin.toml
file (empty or with plugin
key) to a Ballerina project and execute bal pack
command
sample:
CompilerPlugin.toml
[plugin]
id = "openapi-validator"
class = "io.ballerina.openapi.Validator"
Affected Version(s)
No response
OS, DB, other environment details and versions
No response
Related area
-> API Docs
Related issue(s) (optional)
No response
Suggested label(s) (optional)
No response
Suggested assignee(s) (optional)
No response