Replace el.toml with manifest.el throughout — El manifests are El, not TOML
This commit is contained in:
@@ -3,13 +3,13 @@
|
||||
//! # Commands
|
||||
//!
|
||||
//! ## Project management
|
||||
//! el new <name> scaffold new project with el.toml + src/main.el
|
||||
//! el add <package>[@ver] add a dependency to el.toml
|
||||
//! el remove <package> remove a dependency from el.toml
|
||||
//! el new <name> scaffold new project with manifest.el + src/main.el
|
||||
//! el add <package>[@ver] add a dependency to manifest.el
|
||||
//! el remove <package> remove a dependency from manifest.el
|
||||
//! el update update all deps to latest compatible versions
|
||||
//!
|
||||
//! ## Build & run
|
||||
//! el build [--target prod] build the project (reads el.toml)
|
||||
//! el build [--target prod] build the project (reads manifest.el)
|
||||
//! el build --cross build for all configured cross targets
|
||||
//! el run build debug and run
|
||||
//! el test run tests
|
||||
@@ -23,7 +23,7 @@
|
||||
//! el plugin add <plugin> add compiler plugin
|
||||
//!
|
||||
//! ## Low-level
|
||||
//! el build-file <file.el> compile a single .el file (no el.toml needed)
|
||||
//! el build-file <file.el> compile a single .el file (no manifest.el needed)
|
||||
//! el seal <artifact> seal an existing release artifact
|
||||
//! el unseal <artifact> unseal a sealed artifact
|
||||
|
||||
@@ -535,7 +535,7 @@ struct Cli {
|
||||
enum Command {
|
||||
// ── Project management ────────────────────────────────────────────────────
|
||||
|
||||
/// Scaffold a new Engram project with el.toml and src/main.el.
|
||||
/// Scaffold a new Engram project with manifest.el and src/main.el.
|
||||
New {
|
||||
/// Project name.
|
||||
name: String,
|
||||
@@ -544,7 +544,7 @@ enum Command {
|
||||
dir: Option<PathBuf>,
|
||||
},
|
||||
|
||||
/// Add a dependency to el.toml.
|
||||
/// Add a dependency to manifest.el.
|
||||
Add {
|
||||
/// Package name, optionally with version: `engram-http@1.2`.
|
||||
package: String,
|
||||
@@ -553,7 +553,7 @@ enum Command {
|
||||
path: Option<PathBuf>,
|
||||
},
|
||||
|
||||
/// Remove a dependency from el.toml.
|
||||
/// Remove a dependency from manifest.el.
|
||||
Remove {
|
||||
/// Package name.
|
||||
package: String,
|
||||
@@ -564,7 +564,7 @@ enum Command {
|
||||
|
||||
// ── Build & run ───────────────────────────────────────────────────────────
|
||||
|
||||
/// Build the project (reads el.toml).
|
||||
/// Build the project (reads manifest.el).
|
||||
Build {
|
||||
/// Override the build target: debug | release | prod.
|
||||
#[arg(long)]
|
||||
@@ -572,19 +572,19 @@ enum Command {
|
||||
/// Build for all configured cross-compilation targets.
|
||||
#[arg(long)]
|
||||
cross: bool,
|
||||
/// Path to the project manifest (default: el.toml in current directory).
|
||||
/// Path to the project manifest (default: manifest.el in current directory).
|
||||
#[arg(long)]
|
||||
manifest: Option<PathBuf>,
|
||||
},
|
||||
|
||||
/// Build in debug mode and run the output.
|
||||
Run {
|
||||
/// Path to the project manifest (default: el.toml).
|
||||
/// Path to the project manifest (default: manifest.el).
|
||||
#[arg(long)]
|
||||
manifest: Option<PathBuf>,
|
||||
},
|
||||
|
||||
/// Run tests in the current project (reads el.toml).
|
||||
/// Run tests in the current project (reads manifest.el).
|
||||
Test {
|
||||
/// Only run tests matching this name (substring match).
|
||||
filter: Option<String>,
|
||||
@@ -597,12 +597,12 @@ enum Command {
|
||||
/// Output format: human (default) | json | junit.
|
||||
#[arg(long, default_value = "human")]
|
||||
output: String,
|
||||
/// Path to the project manifest (default: el.toml).
|
||||
/// Path to the project manifest (default: manifest.el).
|
||||
#[arg(long)]
|
||||
manifest: Option<PathBuf>,
|
||||
},
|
||||
|
||||
/// Run tests from a single .el file (no el.toml required).
|
||||
/// Run tests from a single .el file (no manifest.el required).
|
||||
TestFile {
|
||||
/// Source file containing test blocks (*.el).
|
||||
file: PathBuf,
|
||||
@@ -689,7 +689,7 @@ enum Command {
|
||||
|
||||
// ── Low-level / single-file ───────────────────────────────────────────────
|
||||
|
||||
/// Compile and immediately run a single .el source file (no el.toml required).
|
||||
/// Compile and immediately run a single .el source file (no manifest.el required).
|
||||
RunFile {
|
||||
/// Source file (*.el).
|
||||
file: PathBuf,
|
||||
@@ -698,7 +698,7 @@ enum Command {
|
||||
args: Vec<String>,
|
||||
},
|
||||
|
||||
/// Compile a single .el source file (no el.toml required).
|
||||
/// Compile a single .el source file (no manifest.el required).
|
||||
BuildFile {
|
||||
/// Source file (*.el).
|
||||
file: PathBuf,
|
||||
@@ -762,12 +762,12 @@ enum Command {
|
||||
|
||||
#[derive(Subcommand, Debug)]
|
||||
enum PluginAction {
|
||||
/// Add a compiler plugin to el.toml.
|
||||
/// Add a compiler plugin to manifest.el.
|
||||
Add {
|
||||
/// Plugin name, optionally with version: `el-fmt@1.0`.
|
||||
plugin: String,
|
||||
},
|
||||
/// Remove a compiler plugin from el.toml.
|
||||
/// Remove a compiler plugin from manifest.el.
|
||||
Remove {
|
||||
plugin: String,
|
||||
},
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
//! el-build — Build orchestrator for the Engram language toolchain.
|
||||
//!
|
||||
//! Reads `el.toml`, resolves dependencies, compiles source files, and produces
|
||||
//! Reads `manifest.el`, resolves dependencies, compiles source files, and produces
|
||||
//! artifacts. Supports incremental builds via BLAKE3 file hashes stored in
|
||||
//! `.el/build-cache.json`.
|
||||
//!
|
||||
@@ -10,7 +10,7 @@
|
||||
//! use el_manifest::Manifest;
|
||||
//!
|
||||
//! # async fn example() -> Result<(), Box<dyn std::error::Error>> {
|
||||
//! let manifest = Manifest::from_file(std::path::Path::new("el.toml"))?;
|
||||
//! let manifest = Manifest::from_file(std::path::Path::new("manifest.el"))?;
|
||||
//! let bs = BuildSystem::new(manifest, std::env::current_dir()?);
|
||||
//! let output = bs.build(None).await?;
|
||||
//! println!("artifact: {}", output.artifact_path.display());
|
||||
|
||||
@@ -59,7 +59,7 @@ pub enum PluginError {
|
||||
/// Plugins receive three optional hooks during compilation. Each hook may
|
||||
/// mutate the data it receives (AST, bytecode) or read it for analysis.
|
||||
pub trait CompilerPlugin: Send + Sync {
|
||||
/// The plugin's canonical name (matches its key in `el.toml [plugins]`).
|
||||
/// The plugin's canonical name (matches its key in `manifest.el [plugins]`).
|
||||
fn name(&self) -> &str;
|
||||
|
||||
/// The plugin's version string.
|
||||
|
||||
@@ -107,7 +107,7 @@ pub enum SealKeySource {
|
||||
}
|
||||
|
||||
impl SealKeySource {
|
||||
/// Parse from the `el.toml` string representation.
|
||||
/// Parse from the `manifest.el` string representation.
|
||||
pub fn parse(s: &str) -> Result<Self, crate::ManifestError> {
|
||||
if let Some(var) = s.strip_prefix("env:") {
|
||||
Ok(SealKeySource::EnvVar(var.to_string()))
|
||||
@@ -178,7 +178,7 @@ pub enum CrossTarget {
|
||||
}
|
||||
|
||||
impl CrossTarget {
|
||||
/// Parse from the string used in `el.toml`.
|
||||
/// Parse from the string used in `manifest.el`.
|
||||
pub fn parse(s: &str) -> Result<Self, crate::ManifestError> {
|
||||
match s {
|
||||
"x86_64-linux" => Ok(CrossTarget::X86_64Linux),
|
||||
@@ -209,7 +209,7 @@ impl CrossTarget {
|
||||
}
|
||||
}
|
||||
|
||||
/// The string as it appears in `el.toml`.
|
||||
/// The string as it appears in `manifest.el`.
|
||||
pub fn as_str(&self) -> &'static str {
|
||||
match self {
|
||||
CrossTarget::X86_64Linux => "x86_64-linux",
|
||||
|
||||
Reference in New Issue
Block a user