Hmm…this is weird.
Given a simple alias:
defp aliases do
[
foo: [
fn x ->
IO.inspect(x)
:ok
end
]
]
end
that prints out its argv, if you do:
mix foo helpdesk \ --install ash,ash_postgres \ --with phx.new \ --extend postgres \ --example
it prints out:
["helpdesk", " --install", "ash,ash_postgres", " --with", "phx.new",
" --extend", "postgres", " --example"]
notice the extra spaces at the head of the flags. This feels like some strange behavior of \?
If I add some OptionParser code in that alias:
OptionParser.parse!(x, strict: [install: :string])
it does not work if it gets a flag with a leading space. So I’m pretty sure thats why it also doesn’t work in igniter.
@kamaroly I think you should update the instructions in your post to use newlines after the \ or just remove the \ as they are only used in our examples to separate a task over multiple lines.
@josevalim This could be fixed in OptionParser or Mix also? Like should OptionParser or Mix trim leading whitespace? Or just OptionParser be adjusted to ignore leading whitespace?






















