Hi, I was wondering what the difference between type=mirror and type=stage is.

Is it that:

 - a mirror gets its list of package exclusively from its 'bases' and you can't upload to it
 - a stage allows you to upload to it and never looks at its list of bases for packages

Or is it something else? I'm seeing the following behavior:

$ devpi index --create one type=stage bases=root/pypi
http://localhost/pypi/root/one:
  type=stage
  bases=root/pypi
  volatile=True
  uploadtrigger_jenkins=None
  acl_upload=root
$ devpi index --create one type=stage bases=root/pypi
http://localhost/pypi/root/one:
  type=stage
  bases=root/pypi
  volatile=True
  uploadtrigger_jenkins=None
  acl_upload=root
$ devpi list
$ devpi index --create two type=mirror bases=
http://localhost/pypi/root/two:
  type=mirror
  bases=
  volatile=False
Traceback (most recent call last):
  File "/usr/local/bin/devpi", line 9, in <module>
    load_entry_point('devpi-common==1.2', 'console_scripts', 'devpi')()
  File "/usr/local/lib/python2.7/site-packages/devpi/main.py", line 29, in main
    return method(hub, hub.args)
  File "/usr/local/lib/python2.7/site-packages/devpi/index.py", line 63, in main
    return index_create(hub, url, kvdict)
  File "/usr/local/lib/python2.7/site-packages/devpi/index.py", line 5, in index_create
    index_show(hub, url)
  File "/usr/local/lib/python2.7/site-packages/devpi/index.py", line 36, in index_show
    ixconfig["uploadtrigger_jenkins"],))
KeyError: 'uploadtrigger_jenkins'
$ devpi use root/two
current devpi index: http://localhost/pypi/root/two/ (logged in as root)
~/.pydistutils.cfg     : no config file exists
~/.pip/pip.conf        : no config file exists
~/.buildout/default.cfg: no config file exists
always-set-cfg: no
$ devpi list
0x10c-asm
1009558_nester
131228_pytest_1
17MonIP
18-e
1ee
1pass
1to001
2013007_pyh
2C.py
... [Removed huge list a pacakges presumably from root/pypi]
$ devpi use -l
root/pypi       bases=                volatile=False
root/two        bases=                volatile=True
root/one        bases=root/pypi       volatile=True

Why didn't 'root/one' list any packages when it had 'root/pypi' as a base. And, why did 'root/two' list a whole bunch of packages when didn't have any bases? Is a 'mirror' always a mirror of the central pypi server? Can I not have 'root/one' and 'root/two' be stage indexes and 'root/three' be a mirror of just those two and not the central public pypi server? And why did I get that 'uploadtrigger_jenkins' error?