Open michaelglass opened 3 years ago
have specific environmental variables to watch rather than everything
The idea is to be agnostic to the existing environment, so everything Just Works from Spring users' point of view.
Some additional possibilities to pursue:
Process.spawn
can wipe the environment as well, with the unsetenv_others: true
option. That'd limit env size. Not sure about support in older Ruby versions.
Spring is great! You are great!
When spring spawns new processes, it passes in a copy of the original spring env,
SPRING_ORIGINAL_ENV
as an environmental variable.https://github.com/rails/spring/blob/a85d32ef3726931b2b81abbb10a6e1c2964e7e32/lib/spring/application_manager.rb#L102
If the environment size is greater than half of
ARG_MAX
, the spring server, as well as other processes will spawn without spring but fail with spring because of anArgument list too long
error.Potential solutions:
SPRING_ORIGINAL_ENV
via a tempfile rather than another environmental variableSPRING_ORIGINAL_ENV
> 1/2ARG_MAX
(perhaps suggesting user increases(ARG_MAX is hard-coded in OS X)ulimit
)