Skip to content

Catch if ssocard contains NULL character instead of null value #32

@Siltala

Description

@Siltala

Hi Max,

Since the SsODNet update that came out on Friday, i see rocks 1.9.7 failing for some cases where in other cases it works - i,e, I think this is a regression caused by some SsODNet, rather than rocks change.
Example broken use case:

$ rocks albedos 2011 AA37
Traceback (most recent call last):
  File "/home/ubuntu/.local/bin/rocks", line 8, in <module>
    sys.exit(cli_rocks())
  File "/home/ubuntu/.local/lib/python3.10/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/click/core.py", line 1682, in invoke
    cmd_name, cmd, args = self.resolve_command(ctx, args)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/click/core.py", line 1729, in resolve_command
    cmd = self.get_command(ctx, cmd_name)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/rocks/cli.py", line 47, in get_command
    return echo()
  File "/home/ubuntu/.local/lib/python3.10/site-packages/rocks/cli.py", line 384, in echo
    rock = core.Rock(id_, datacloud=catalogues)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/rocks/core.py", line 1054, in __init__
    super().__init__(**ssocard)  # type: ignore
  File "/home/ubuntu/.local/lib/python3.10/site-packages/pydantic/main.py", line 171, in __init__
    self.__pydantic_validator__.validate_python(data, self_instance=self)
  File "/home/ubuntu/.local/lib/python3.10/site-packages/rocks/core.py", line 185, in _compute_mean_error
    [np.abs(values["error"][which]) for which in ["min", "max"]]
  File "/home/ubuntu/.local/lib/python3.10/site-packages/rocks/core.py", line 185, in <listcomp>
    [np.abs(values["error"][which]) for which in ["min", "max"]]
numpy.core._exceptions._UFuncNoLoopError: ufunc 'absolute' did not contain a loop with signature matching types <class 'numpy.dtypes.StrDType'> -> None

rocks albedos Ceres, on the other hand, works as expected.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions