New app header syntax

Implements the new app header syntax as discussed in Zulip [1].

    app [main] {
	cli: platform "../platform/main.roc",
	json: "../json/main.roc"
    }

Old headers still parse and are automatically upgraded to the new
syntax by the formatter.

[1] 418444862
This commit is contained in:
Agus Zubiaga 2024-03-04 19:01:16 -03:00
parent 057a18573a
commit 8dedd9f03c
No known key found for this signature in database
90 changed files with 1044 additions and 1056 deletions

View file

@ -124,6 +124,18 @@ pub(crate) mod diag {
error
)
}
LoadingProblem::MultiplePlatformPackages { filename, .. } => {
format!(
"Multiple platform packages specified ({}). An app must specify exactly one platform.",
filename.display()
)
}
LoadingProblem::NoPlatformPackage { filename, .. } => {
format!(
"No platform package specified ({}). An app must specify exactly one platform.",
filename.display()
)
}
LoadingProblem::ParsingFailed(fe) => {
let problem = &fe.problem.problem;
format!("Failed to parse Roc source file: {problem:?}")