2023-10-10 03:13:42 +00:00
|
|
|
# TODO
|
|
|
|
|
2024-07-04 03:39:49 +00:00
|
|
|
## v0.2 - update to linkml-arrays and formal release
|
|
|
|
|
|
|
|
NWB schema translation
|
|
|
|
- handle `links` field in groups
|
|
|
|
- handle compound `dtype` like in ophys.PlaneSegmentation.pixel_mask
|
|
|
|
- handle compound `dtype` like in TimeSeriesReferenceVectorData
|
|
|
|
- Create a validator that checks if all the lists in a compound dtype dataset are same length
|
2024-08-07 02:57:45 +00:00
|
|
|
- [ ] Move making `target` optional in vectorIndex from pydantic generator to linkml generators!
|
2024-07-04 03:39:49 +00:00
|
|
|
|
2024-07-10 06:15:29 +00:00
|
|
|
Cleanup
|
|
|
|
- [ ] Update pydantic generator
|
2024-07-25 04:51:55 +00:00
|
|
|
- [ ] Restore regressions from stripping the generator
|
2024-07-25 05:47:06 +00:00
|
|
|
- [x] Make any_of with array ranges work
|
2024-07-29 23:31:34 +00:00
|
|
|
- [ ] PR upstream `equals_string` and `ifabsent` (if existing PR doesn't fix)
|
2024-07-18 08:01:29 +00:00
|
|
|
- [ ] Use the class rather than a string in _get_class_slot_range_origin:
|
|
|
|
```
|
|
|
|
or inlined_as_list
|
|
|
|
or (
|
|
|
|
# sv.get_identifier_slot(range_cls.name, use_key=True) is None and
|
|
|
|
```
|
|
|
|
|
2024-07-10 06:15:29 +00:00
|
|
|
- [ ] Make a minimal pydanticgen-only package to slim linkml deps?
|
|
|
|
- [ ] Disambiguate "maps" terminology - split out simple maps from the eg. dataset mapping classes
|
2024-08-07 04:40:23 +00:00
|
|
|
- [x] Remove unnecessary imports
|
2024-07-10 07:09:17 +00:00
|
|
|
- dask
|
|
|
|
- nptyping
|
2024-07-18 08:01:29 +00:00
|
|
|
- [ ] Adapt the split generation to the new split generator style
|
2024-07-10 06:15:29 +00:00
|
|
|
|
2023-10-10 03:13:42 +00:00
|
|
|
Important things that are not implemented yet!
|
|
|
|
|
2024-07-10 06:15:29 +00:00
|
|
|
- [x] {meth}`nwb_linkml.adapters.classes.ClassAdapter.handle_dtype` does not yet handle compound dtypes,
|
2023-10-10 03:13:42 +00:00
|
|
|
leaving them as `AnyType` instead. This is fine for a first draft since they are used rarely within
|
|
|
|
NWB, but we will need to handle them by making slots for each of the dtypes since they typically
|
2023-10-20 04:20:50 +00:00
|
|
|
represent table-like data.
|
2024-07-10 06:15:29 +00:00
|
|
|
- [ ] Need to handle DynamicTables!
|
|
|
|
- Adding columns?
|
|
|
|
- Validating eg. all are same length?
|
|
|
|
- Or do we want to just say "no dynamictables, just subclass and add more slots since it's super easy to do that."
|
|
|
|
- method to return a dataframe
|
|
|
|
- append rows/this should just be a df basically.
|
2024-07-10 07:09:17 +00:00
|
|
|
- existing handler is fucked, for example, in `maps/hdmf`
|
2024-07-10 06:15:29 +00:00
|
|
|
- [ ] Handle indirect indexing eg. https://pynwb.readthedocs.io/en/stable/tutorials/general/plot_timeintervals.html#accessing-referenced-timeseries
|
2023-10-20 04:20:50 +00:00
|
|
|
|
2024-07-25 04:51:55 +00:00
|
|
|
Remove monkeypatches/overrides once PRs are closed
|
|
|
|
- [ ] https://github.com/linkml/linkml-runtime/pull/330
|
|
|
|
|
2024-07-25 05:47:06 +00:00
|
|
|
Tests
|
|
|
|
- [ ] Ensure schemas and pydantic modules in repos are up to date
|
|
|
|
|
2024-09-12 04:04:41 +00:00
|
|
|
Loading
|
|
|
|
- [ ] Top-level containers are still a little janky, eg. how `ProcessingModule` just accepts
|
|
|
|
extra args rather than properly abstracting `value` as a `__getitem__(self, key) -> T:`
|
|
|
|
|
2023-10-20 04:20:50 +00:00
|
|
|
## Docs TODOs
|
|
|
|
|
|
|
|
```{todolist}
|
|
|
|
```
|