Skip to content

cli options in conf.py should be allowed to have no default

Traceback (most recent call last):
  File "/home/gareth/.pyenv/versions/3.7.7/bin/takara", line 11, in <module>
    load_entry_point('takara', 'console_scripts', 'takara')()
  File "/home/gareth/code/takara/takara/scripts.py", line 8, in start
    hub.takara.init.cli()
  File "/home/gareth/.pyenv/versions/3.7.7/lib/python3.7/site-packages/pop/contract.py", line 170, in __call__
    return self.func(*args, **kwargs)
  File "/home/gareth/code/takara/takara/takara/init.py", line 18, in cli
    hub.pop.config.load(["takara"], cli="takara")
  File "/home/gareth/.pyenv/versions/3.7.7/lib/python3.7/site-packages/pop/contract.py", line 170, in __call__
    return self.func(*args, **kwargs)
  File "/home/gareth/.pyenv/versions/3.7.7/lib/python3.7/site-packages/pop/mods/pop/config.py", line 7, in load
    hub.config.integrate.load(sources, cli, dyne_name, loader, parse_cli)
  File "/home/gareth/.pyenv/versions/3.7.7/lib/python3.7/site-packages/pop/contract.py", line 170, in __call__
    return self.func(*args, **kwargs)
  File "/home/gareth/.pyenv/versions/3.7.7/lib/python3.7/site-packages/pop_config/config/integrate.py", line 27, in load
    opt = hub.config.order.apply(raw, raw_cli, cli, cli_args, os_vars, configs)
  File "/home/gareth/.pyenv/versions/3.7.7/lib/python3.7/site-packages/pop/contract.py", line 174, in __call__
    fn(contract_context)
  File "/home/gareth/.pyenv/versions/3.7.7/lib/python3.7/site-packages/pop/contract.py", line 170, in __call__
    return self.func(*args, **kwargs)
  File "/home/gareth/.pyenv/versions/3.7.7/lib/python3.7/site-packages/pop_config/config/contracts/order.py", line 80, in pre_apply
    ctx.cache["root_defaults"] = _insert_default_placeholders(kwargs["raw"])
  File "/home/gareth/.pyenv/versions/3.7.7/lib/python3.7/site-packages/pop_config/config/contracts/order.py", line 15, in _insert_default_placeholders
    raise KeyError(f"No default value for '{key}' in '{imp}'s conf.py")
KeyError: "No default value for 'string' in 'takara's conf.py"