Subject: leading '=' in enviroment variable truncated
From: Jacob Lowe <[email-masked]>
To: [email-masked]
Date: Sat, 07 May 2016 16:21:22 +0000
List-Id: Zsh Workers List <zsh-workers.zsh.org>

Hey all,

First off thanks for making/maintaining ZSH. Its a awesome project, and has
been my default shell for 3 plus years.

I recently ran into a unique thing that ZSH does that cause a bug that was
filed on a project I help maintain.

https://github.com/motdotla/dotenv/issues/140

It is a javascript module that loads environment variables into the process
for the node program to use. I noticed the module was parsing the the env
ok and the bug only occurred while preloading the script. I tried to load
in the env via the command line straight into the node program as well.

TEST='=FOO' node -e 'console.log(process.env.TEST)'

This spits out "FOO" with no leading "=".

So I filed and issue on nodejs repo thinking this had to do with the way it
was handling the environment variables.

https://github.com/nodejs/node/issues/6627

>From the feedback in the ticket, it seems this is happening in ZSH only and
when logging into bash the command works as expected. I also tried
something very similar in ruby and got the same result.

TEST='=test' ruby -e 'puts ENV["TEST"]'

This also spits out "FOO" with no leading "=".

Is this intended behavior? and thanks again.