Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmdline/utils/multi_line_input: fix "referenced before assignment" #4440

Conversation

dev-zero
Copy link
Contributor

can be triggered by leaving a pre/post script for a code empty:

Traceback (most recent call last):
  File "/scratch/tiziano/virtualenvs/aiida/bin/verdi", line 12, in <module>
    sys.exit(verdi())
  File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 1259, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 1257, in invoke
    sub_ctx = cmd.make_context(cmd_name, args, parent=ctx)
  File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 700, in make_context
    self.parse_args(ctx, args)
  File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 1048, in parse_args
    value, args = param.handle_parse_result(ctx, opts, args)
  File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 1630, in handle_parse_result
    value = invoke_param_callback(self.callback, ctx, self, value)
  File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 123, in invoke_param_callback
    return callback(ctx, param, value)
  File "/scratch/tiziano/work/aiida/aiida_core/aiida/cmdline/params/options/interactive.py", line 274, in prompt_callback
    value = self.prompt_loop(ctx, param, value)
  File "/scratch/tiziano/work/aiida/aiida_core/aiida/cmdline/params/options/interactive.py", line 208, in simple_prompt_loop
    value = self.prompt_func(ctx)
  File "/scratch/tiziano/work/aiida/aiida_core/aiida/cmdline/params/options/interactive.py", line 309, in prompt_func
    return edit_multiline_template(self.template, extension=self.extension, **kwargs)
  File "/scratch/tiziano/work/aiida/aiida_core/aiida/cmdline/utils/multi_line_input.py", line 34, in edit_multiline_template
    return value
UnboundLocalError: local variable 'value' referenced before assignment

can be triggered by leaving a pre/post script for a code empty:

    Traceback (most recent call last):
      File "/scratch/tiziano/virtualenvs/aiida/bin/verdi", line 12, in <module>
        sys.exit(verdi())
      File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 829, in __call__
        return self.main(*args, **kwargs)
      File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 782, in main
        rv = self.invoke(ctx)
      File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 1259, in invoke
        return _process_result(sub_ctx.command.invoke(sub_ctx))
      File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 1257, in invoke
        sub_ctx = cmd.make_context(cmd_name, args, parent=ctx)
      File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 700, in make_context
        self.parse_args(ctx, args)
      File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 1048, in parse_args
        value, args = param.handle_parse_result(ctx, opts, args)
      File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 1630, in handle_parse_result
        value = invoke_param_callback(self.callback, ctx, self, value)
      File "/scratch/tiziano/virtualenvs/aiida/lib/python3.6/site-packages/click/core.py", line 123, in invoke_param_callback
        return callback(ctx, param, value)
      File "/scratch/tiziano/work/aiida/aiida_core/aiida/cmdline/params/options/interactive.py", line 274, in prompt_callback
        value = self.prompt_loop(ctx, param, value)
      File "/scratch/tiziano/work/aiida/aiida_core/aiida/cmdline/params/options/interactive.py", line 208, in simple_prompt_loop
        value = self.prompt_func(ctx)
      File "/scratch/tiziano/work/aiida/aiida_core/aiida/cmdline/params/options/interactive.py", line 309, in prompt_func
        return edit_multiline_template(self.template, extension=self.extension, **kwargs)
      File "/scratch/tiziano/work/aiida/aiida_core/aiida/cmdline/utils/multi_line_input.py", line 34, in edit_multiline_template
        return value
    UnboundLocalError: local variable 'value' referenced before assignment
@dev-zero
Copy link
Contributor Author

seems there's already PR #4436 open for that one

@dev-zero dev-zero closed this Oct 14, 2020
@dev-zero dev-zero deleted the bugfix/multi-line-input-ref-before-assigned branch October 14, 2020 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant