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

nf-core pipelines launch ends in a stacktrace #3500

Open
mahesh-panchal opened this issue Mar 24, 2025 · 0 comments
Open

nf-core pipelines launch ends in a stacktrace #3500

mahesh-panchal opened this issue Mar 24, 2025 · 0 comments
Labels
bug Something isn't working

Comments

@mahesh-panchal
Copy link
Member

Description of the bug

I'm trying to write out the params file for various pipelines in my directory, but it results in a stack trace when using the command-line option for fetchngs.

nf-core pipelines launch fetchngs


                                          ,--./,-.
          ___     __   __   __   ___     /,-._.--~\ 
    |\ | |__  __ /  ` /  \ |__) |__         }  {
    | \| |       \__, \__/ |  \ |___     \`-._,-`-,
                                          `._,._,'

    nf-core/tools version 3.2.0 - https://nf-co.re


INFO     NOTE: This tool ignores any pipeline parameter defaults overwritten by Nextflow config files or   
         profiles                                                                                          
                                                                                                           
WARNING  Could not find GitHub authentication token. Some API requests may fail.                           
? Select release / branch: 1.12.0  [release]
INFO     Downloading workflow: nf-core/fetchngs (1.12.0)                                                   
ERROR    [✗] Pipeline schema does not follow nf-core specs:                                                
          Schema is using the wrong draft: http://json-schema.org/draft-07/schema, should be               
         https://json-schema.org/draft-07/schema                                                           
INFO     No pipeline schema found - creating one from the config                                           
INFO     Would you like to enter pipeline parameters using a web-based interface or a command-line wizard? 
? Choose launch method Command line
╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/bin/nf-core:10 in  │
│ <module>                                                                                         │
│                                                                                                  │
│    7                                                                                             │
│    8 if __name__ == '__main__':                                                                  │
│    9 │   sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])                       │
│ ❱ 10 │   sys.exit(run_nf_core())                                                                 │
│   11                                                                                             │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/nf_core/__main__.py:182 in run_nf_core                                                │
│                                                                                                  │
│    179 │   │   │   log.debug(f"Could not check latest version: {e}")                             │
│    180 │   │   stderr.print("\n")                                                                │
│    181 │   # Launch the click cli                                                                │
│ ❱  182 │   nf_core_cli(auto_envvar_prefix="NFCORE")                                              │
│    183                                                                                           │
│    184                                                                                           │
│    185 @tui(                                                                                     │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/rich_click/rich_command.py:378 in __call__                                            │
│                                                                                                  │
│   375 │   │   # Include this here because I run into a false warning                             │
│   376 │   │   # in the PyCharm IDE otherwise; for some reason PyCharm doesn't                    │
│   377 │   │   # seem to think RichGroups are callable. (No issues with Mypy, though.)            │
│ ❱ 378 │   │   return super().__call__(*args, **kwargs)                                           │
│   379                                                                                            │
│   380                                                                                            │
│   381 class RichCommandCollection(CommandCollection, RichGroup):                                 │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/click/core.py:1161 in __call__                                                        │
│                                                                                                  │
│   1158 │                                                                                         │
│   1159 │   def __call__(self, *args: t.Any, **kwargs: t.Any) -> t.Any:                           │
│   1160 │   │   """Alias for :meth:`main`."""                                                     │
│ ❱ 1161 │   │   return self.main(*args, **kwargs)                                                 │
│   1162                                                                                           │
│   1163                                                                                           │
│   1164 class Command(BaseCommand):                                                               │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/rich_click/rich_command.py:166 in main                                                │
│                                                                                                  │
│   163 │   │   try:                                                                               │
│   164 │   │   │   try:                                                                           │
│   165 │   │   │   │   with self.make_context(prog_name, args, **extra) as ctx:                   │
│ ❱ 166 │   │   │   │   │   rv = self.invoke(ctx)                                                  │
│   167 │   │   │   │   │   if not standalone_mode:                                                │
│   168 │   │   │   │   │   │   return rv                                                          │
│   169 │   │   │   │   │   # it's not safe to `ctx.exit(rv)` here!                                │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/click/core.py:1697 in invoke                                                          │
│                                                                                                  │
│   1694 │   │   │   │   super().invoke(ctx)                                                       │
│   1695 │   │   │   │   sub_ctx = cmd.make_context(cmd_name, args, parent=ctx)                    │
│   1696 │   │   │   │   with sub_ctx:                                                             │
│ ❱ 1697 │   │   │   │   │   return _process_result(sub_ctx.command.invoke(sub_ctx))               │
│   1698 │   │                                                                                     │
│   1699 │   │   # In chain mode we create the contexts step by step, but after the                │
│   1700 │   │   # base command has been invoked.  Because at that point we do not                 │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/click/core.py:1697 in invoke                                                          │
│                                                                                                  │
│   1694 │   │   │   │   super().invoke(ctx)                                                       │
│   1695 │   │   │   │   sub_ctx = cmd.make_context(cmd_name, args, parent=ctx)                    │
│   1696 │   │   │   │   with sub_ctx:                                                             │
│ ❱ 1697 │   │   │   │   │   return _process_result(sub_ctx.command.invoke(sub_ctx))               │
│   1698 │   │                                                                                     │
│   1699 │   │   # In chain mode we create the contexts step by step, but after the                │
│   1700 │   │   # base command has been invoked.  Because at that point we do not                 │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/click/core.py:1443 in invoke                                                          │
│                                                                                                  │
│   1440 │   │   │   echo(style(message, fg="red"), err=True)                                      │
│   1441 │   │                                                                                     │
│   1442 │   │   if self.callback is not None:                                                     │
│ ❱ 1443 │   │   │   return ctx.invoke(self.callback, **ctx.params)                                │
│   1444 │                                                                                         │
│   1445 │   def shell_complete(self, ctx: Context, incomplete: str) -> t.List["CompletionItem"]:  │
│   1446 │   │   """Return a list of completions for the incomplete value. Looks                   │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/click/core.py:788 in invoke                                                           │
│                                                                                                  │
│    785 │   │                                                                                     │
│    786 │   │   with augment_usage_errors(__self):                                                │
│    787 │   │   │   with ctx:                                                                     │
│ ❱  788 │   │   │   │   return __callback(*args, **kwargs)                                        │
│    789 │                                                                                         │
│    790 │   def forward(__self, __cmd: "Command", *args: t.Any, **kwargs: t.Any) -> t.Any:        │
│    791 │   │   """Similar to :meth:`invoke` but fills in default keyword                         │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/click/decorators.py:33 in new_func                                                    │
│                                                                                                  │
│    30 │   """                                                                                    │
│    31 │                                                                                          │
│    32 │   def new_func(*args: "P.args", **kwargs: "P.kwargs") -> "R":                            │
│ ❱  33 │   │   return f(get_current_context(), *args, **kwargs)                                   │
│    34 │                                                                                          │
│    35 │   return update_wrapper(new_func, f)                                                     │
│    36                                                                                            │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/nf_core/__main__.py:551 in command_pipelines_launch                                   │
│                                                                                                  │
│    548 │   """                                                                                   │
│    549 │   Launch a pipeline using a web GUI or command line prompts.                            │
│    550 │   """                                                                                   │
│ ❱  551 │   pipelines_launch(ctx, pipeline, id, revision, command_only, params_in, params_out, s  │
│    552                                                                                           │
│    553                                                                                           │
│    554 # nf-core pipelines list                                                                  │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/nf_core/commands_pipelines.py:264 in pipelines_launch                                 │
│                                                                                                  │
│   261 │   │   url,                                                                               │
│   262 │   │   id,                                                                                │
│   263 │   )                                                                                      │
│ ❱ 264 │   if not launcher.launch_pipeline():                                                     │
│   265 │   │   sys.exit(1)                                                                        │
│   266                                                                                            │
│   267                                                                                            │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/nf_core/pipelines/launch.py:176 in launch_pipeline                                    │
│                                                                                                  │
│   173 │   │   │   │   │   return False                                                           │
│   174 │   │   │   else:                                                                          │
│   175 │   │   │   │   # Kick off the interactive wizard to collect user inputs                   │
│ ❱ 176 │   │   │   │   self.prompt_schema()                                                       │
│   177 │   │                                                                                      │
│   178 │   │   # Validate the parameters that we now have                                         │
│   179 │   │   if not self.schema_obj.validate_params():                                          │
│                                                                                                  │
│ /Users/mahpa906/Documents/Projects/nf-metaomics-daisychain/.pixi/envs/default/lib/python3.13/sit │
│ e-packages/nf_core/pipelines/launch.py:412 in prompt_schema                                      │
│                                                                                                  │
│   409 │   │   definitions_schemas = self.schema_obj.schema.get("$defs", self.schema_obj.schema   │
│   410 │   │   for allOf in self.schema_obj.schema.get("allOf", []):                              │
│   411 │   │   │   d_key = allOf["$ref"][14:]                                                     │
│ ❱ 412 │   │   │   answers.update(self.prompt_group(d_key, definitions_schemas[d_key]))           │
│   413 │   │                                                                                      │
│   414 │   │   # Top level schema params                                                          │
│   415 │   │   for param_id, param_obj in self.schema_obj.schema.get("properties", {}).items():   │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
TypeError: 'dict_items' object is not subscriptable

Command used and terminal output

System information

No response

@mahesh-panchal mahesh-panchal added the bug Something isn't working label Mar 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant