!!! abstract “”
A guide for users moving from `cogent3.app` to `scinexus`.
Replace cogent3.app imports with their
scinexus equivalents:
```python { notest } # before from cogent3.app.composable import define_app, NotCompleted
from scinexus import define_app, NotCompleted
## Summary methods return plain Python objects
Data store summary methods (`describe`, `summary_logs`, `summary_not_completed`, `summary_citations`, `validate`) now return `list[dict]` or `dict` instead of cogent3 `Table` objects.
To restore `Table`-based display, register a converter with `set_summary_display()`:
```python { notest }
from cogent3.core.table import Table
from scinexus.data_store import set_summary_display
def _summary_to_table(data, *, name):
if isinstance(data, dict):
rows = [[k, v] for k, v in data.items()]
return Table(header=["Condition", "Value"], data=rows, title=name)
if isinstance(data, list) and data:
header = list(data[0].keys())
rows = [list(row.values()) for row in data]
return Table(header=header, data=rows, title=name)
return data
set_summary_display(_summary_to_table)
Failure types are categorised using the NotCompletedType
enum rather than bare strings:
```python { notest } from scinexus.composable import NotCompletedType
nc.type == “ERROR”
nc.type == NotCompletedType.ERROR ```
The three values are ERROR, FAIL, and
BUG.
Composing apps with + now creates a shallow copy of the
right-hand operand. Composed pipelines no longer share mutable state, so
ComposableApp.disconnect() is no longer needed and is
deprecated.
These capabilities are new in scinexus and were not
available in cogent3.app:
check_data_type property – toggle
runtime input type checking on or off. See Runtime type
checking.AppBase[T, R],
ComposableApp[T, R], and WriterApp[T, R] can
be inherited from directly as an alternative to
@define_app.tqdm or
rich for progress display. See Track progress.set_id_from_source(). See Customise display and IDs.logger=False to apply_to() to skip log file
creation.See the changelog for a complete list of changes from the cogent3 app infrastructure.