|
From: Thomas L. <ta...@gm...> - 2019-09-11 16:41:57
|
Some shells have begun silently removing environment variables they
don't like. In particular, they seem to dislike names starting with
"0" or containing hyphens. e.g.
$ python
Python 2.7.16 (default, Apr 6 2019, 01:42:57)
[GCC 8.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.environ['XXX'] = 'OK'
>>> os.environ['0XXX'] = 'MISSING'
>>> os.system('env | grep XXX')
XXX=OK
0
>>> import subprocess
>>> for line in subprocess.check_output(['env']).split('\n'):
... if 'XXX' in line: print line
...
XXX=OK
0XXX=MISSING
To fix this, I've made a couple of new releases:
0install 2.3.6 (the old Python branch) fixes this, and also has some
other updates:
- Update for changed GnuPG output format.
- Require Python < 3.7. Python 3.7 turned "async" into a keyword, but
we use it everywhere.
- Bugfix: fetcher.download_impls can return None. Reported by Bastian Eicher.
(luckily, the OCaml version switched to using safe characters back in
2014 for other reasons)
Also, 0compile 1.6 has been released
(http://0install.net/0compile.html) with some similar changes, as well
as a minor change to print a better message when using "0compile
publish" without an argument, which is now the preferred way to do
things.
0release has also been updated on master. The problem was causing the
unit-tests to fail, but it probably doesn't affect normal use.
--
talex5 (GitHub/Twitter) http://roscidus.com/blog/
GPG: 5DD5 8D70 899C 454A 966D 6A51 7513 3C8F 94F6 E0CC
|