Compare commits

..

2 Commits

Author SHA1 Message Date
jakob 79fd57401e Merge pull request 'Fix: CLI generate command works with single invocation' (#4) from issue-2 into main
Reviewed-on: #4
2026-04-10 14:18:00 +02:00
jakob 460bb460bb Fix: CLI generate command works with single invocation
The remove_env_flags function was incorrectly returning index 0 when no --env
flag was present, causing it to mistakenly skip the first argument
(program name) and shift all arguments incorrectly.

This required users to specify 'generate' twice to make the CLI work.

Fix by checking if --env was actually found (env_idx > 0) before removing
any arguments from the list.
2026-04-10 14:05:46 +02:00
+3
View File
@@ -263,6 +263,9 @@ fn parse_env_flag(args: &[String]) -> (Env, usize) {
/// command without affecting positional argument parsing. /// command without affecting positional argument parsing.
fn remove_env_flags(args: &[String]) -> Vec<String> { fn remove_env_flags(args: &[String]) -> Vec<String> {
let (_, env_idx) = parse_env_flag(args); let (_, env_idx) = parse_env_flag(args);
if env_idx == 0 {
return args.to_vec();
}
let mut result = Vec::with_capacity(args.len()); let mut result = Vec::with_capacity(args.len());
for (i, arg) in args.iter().enumerate() { for (i, arg) in args.iter().enumerate() {