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

Why are Args parallel shown when there are no parallel args to be set? #470

Closed
jluethi opened this issue Apr 24, 2024 · 0 comments · Fixed by #467
Closed

Why are Args parallel shown when there are no parallel args to be set? #470

jluethi opened this issue Apr 24, 2024 · 0 comments · Fixed by #467
Labels
fractal-server-v2 High Priority What we should be working on ASAP

Comments

@jluethi
Copy link
Collaborator

jluethi commented Apr 24, 2024

The newest version of the Convert Cellvoyager Multiplexing to OME-Zarr task (not in a prerelease yet) has no more parallel-args. The web interface still shows a section for it though. Can we not show the init / parallel Args sections when there are no arguments?

Screenshot 2024-04-24 at 16 15 55

There are arguments to that task, but none are user-exposed in the web interface.

For reference, it has a schema like this:
Args Schema non parallel

{
  "title": "CellvoyagerToOmeZarrInitMultiplex",
  "type": "object",
  "properties": {
    "acquisitions": {
      "title": "Acquisitions",
      "type": "object",
      "additionalProperties": {
        "$ref": "#/definitions/MultiplexingAcquisition"
      },
      "description": "dictionary of acquisitions. Each key is the acquisition identifier (normally 0, 1, 2, 3 etc.). Each item defines the acquisition by providing the image_dir and the allowed_channels."
    },
    "image_glob_patterns": {
      "title": "Image Glob Patterns",
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "If specified, only parse images with filenames that match with all these patterns. Patterns must be defined as in https://docs.python.org/3/library/fnmatch.html, Example: `image_glob_pattern=[\"*_B03_*\"]` => only process well B03 `image_glob_pattern=[\"*_C09_*\", \"*F016*\", \"*Z[0-5][0-9]C*\"]` => only process well C09, field of view 16 and Z planes 0-59."
    },
    "num_levels": {
      "title": "Num Levels",
      "default": 5,
      "type": "integer",
      "description": "Number of resolution-pyramid levels. If set to `5`, there will be the full-resolution level and 4 levels of downsampled images."
    },
    "coarsening_xy": {
      "title": "Coarsening Xy",
      "default": 2,
      "type": "integer",
      "description": "Linear coarsening factor between subsequent levels. If set to `2`, level 1 is 2x downsampled, level 2 is 4x downsampled etc."
    },
    "image_extension": {
      "title": "Image Extension",
      "default": "tif",
      "type": "string",
      "description": "Filename extension of images (e.g. `\"tif\"` or `\"png\"`)."
    },
    "metadata_table_files": {
      "title": "Metadata Table Files",
      "type": "object",
      "additionalProperties": {
        "type": "string"
      },
      "description": "If `None`, parse Yokogawa metadata from mrf/mlf files in the input_path folder; else, a dictionary of key-value pairs like `(acquisition, path)` with `acquisition` a string like the key of the `acquisitions` dict and `path` pointing to a csv file containing the parsed metadata table."
    },
    "overwrite": {
      "title": "Overwrite",
      "default": false,
      "type": "boolean",
      "description": "If `True`, overwrite the task output."
    }
  },
  "required": [
    "acquisitions"
  ],
  "additionalProperties": false,
  "definitions": {
    "Window": {
      "title": "Window",
      "description": "Custom class for Omero-channel window, based on OME-NGFF v0.4.",
      "type": "object",
      "properties": {
        "min": {
          "title": "Min",
          "type": "integer",
          "description": "Do not change. It will be set to `0` by default."
        },
        "max": {
          "title": "Max",
          "type": "integer",
          "description": "Do not change. It will be set according to bit-depth of the images by default (e.g. 65535 for 16 bit images)."
        },
        "start": {
          "title": "Start",
          "type": "integer",
          "description": "Lower-bound rescaling value for visualization."
        },
        "end": {
          "title": "End",
          "type": "integer",
          "description": "Upper-bound rescaling value for visualization."
        }
      },
      "required": [
        "start",
        "end"
      ]
    },
    "OmeroChannel": {
      "title": "OmeroChannel",
      "description": "Custom class for Omero channels, based on OME-NGFF v0.4.",
      "type": "object",
      "properties": {
        "wavelength_id": {
          "title": "Wavelength Id",
          "type": "string",
          "description": "Unique ID for the channel wavelength, e.g. `A01_C01`."
        },
        "index": {
          "title": "Index",
          "type": "integer",
          "description": "Do not change. For internal use only."
        },
        "label": {
          "title": "Label",
          "type": "string",
          "description": "Name of the channel."
        },
        "window": {
          "$ref": "#/definitions/Window",
          "title": "Window",
          "description": "Optional `Window` object to set default display settings for napari."
        },
        "color": {
          "title": "Color",
          "type": "string",
          "description": "Optional hex colormap to display the channel in napari (it must be of length 6, e.g. `00FFFF`)."
        },
        "active": {
          "title": "Active",
          "default": true,
          "type": "boolean",
          "description": "Should this channel be shown in the viewer?"
        },
        "coefficient": {
          "title": "Coefficient",
          "default": 1,
          "type": "integer",
          "description": "Do not change. Omero-channel attribute."
        },
        "inverted": {
          "title": "Inverted",
          "default": false,
          "type": "boolean",
          "description": "Do not change. Omero-channel attribute."
        }
      },
      "required": [
        "wavelength_id"
      ]
    },
    "MultiplexingAcquisition": {
      "title": "MultiplexingAcquisition",
      "description": "Input class for Multiplexing Cellvoyager converter",
      "type": "object",
      "properties": {
        "image_dir": {
          "title": "Image Dir",
          "type": "string",
          "description": "Path to the folder that contains the Cellvoyager image files for that acquisition and the MeasurementData & MeasurementDetail metadata files."
        },
        "allowed_channels": {
          "title": "Allowed Channels",
          "type": "array",
          "items": {
            "$ref": "#/definitions/OmeroChannel"
          },
          "description": "A list of `OmeroChannel` objects, where each channel must include the `wavelength_id` attribute and where the `wavelength_id` values must be unique across the list."
        }
      },
      "required": [
        "image_dir",
        "allowed_channels"
      ]
    }
  }
}

Parallel:

{
  "title": "CellvoyagerToOmeZarrCompute",
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false,
  "definitions": {
    "InitArgsCellVoyager": {
      "title": "InitArgsCellVoyager",
      "description": "Arguments to be passed from cellvoyager converter init to compute",
      "type": "object",
      "properties": {
        "image_dir": {
          "title": "Image Dir",
          "type": "string"
        },
        "plate_prefix": {
          "title": "Plate Prefix",
          "type": "string"
        },
        "well_ID": {
          "title": "Well Id",
          "type": "string"
        },
        "image_extension": {
          "title": "Image Extension",
          "type": "string"
        },
        "image_glob_patterns": {
          "title": "Image Glob Patterns",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "acquisition": {
          "title": "Acquisition",
          "type": "integer"
        }
      },
      "required": [
        "image_dir",
        "plate_prefix",
        "well_ID",
        "image_extension"
      ]
    }
  }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
fractal-server-v2 High Priority What we should be working on ASAP
Projects
Development

Successfully merging a pull request may close this issue.

1 participant