indygreg / PyOxidizer

A modern Python application packaging and distribution tool
Mozilla Public License 2.0
5.4k stars 234 forks source link

`pyoxidizer run` extra args are ignored #665

Open pquentin opened 1 year ago

pquentin commented 1 year ago

The PyOxidizer Getting Started docs suggest using pyoxidizer run -- [args]:

https://github.com/indygreg/PyOxidizer/blob/0defb06fd21c81dbde43ff8ffddd92ff133ec4c0/pyoxidizer/docs/pyoxidizer_getting_started.rst?plain=1#L330-L350

But it does not actually work. Looking at the code, pyoxidizer run does accept extra args, which get passed to projectmgmt::run as _extra_args:

https://github.com/indygreg/PyOxidizer/blob/0defb06fd21c81dbde43ff8ffddd92ff133ec4c0/pyoxidizer/src/projectmgmt.rs#L142-L171

However, this function does not use them so they just get lost. I looks like the regression was introduced in https://github.com/indygreg/PyOxidizer/commit/df0d459e044419369854918a03baa496d565608c released in 0.5.1. I tried to see quickly if I could fix the issue, but looks like starlark::eval::EvaluationContextBuilder does not support extra args at all? I don't know Rust or PyOxidizer enough to tell.