Commit graph

332 commits

Author SHA1 Message Date
0f4f2dd683 also list linkml versions in the available versions for a pydantic provider 2023-10-04 22:27:36 -07:00
d46e86c676 return None when the module actually doesn't exist 2023-10-04 22:08:01 -07:00
5438b2489b Fix relative imports in ectopic models --
Use a MetaPathFinder to allow python to resolve imports from the temporary model directory
Build dependent versions in split builds
Clear package imports when allow_repo=False
2023-10-04 22:06:26 -07:00
3b11afded6 fix truncate hdf5 file to not try and write while iterating 2023-10-04 20:19:54 -07:00
ab63ea071c removing pandas 2023-10-04 18:02:40 -07:00
9947edfed2 Removing DataFrame type from imports, leaving as stub 2023-10-04 17:59:10 -07:00
f682105c1a it working
had to very hackily handle special cases on NWBFile class but it working. Now badly in need of a tidying, docs, and tests.
2023-10-02 23:26:43 -07:00
34f8969fa9 Like 15 validation errors away from fully reading a file.
Just going to make a special completion phase for the top-level NWBFile because it's so special cased it's not worth trying to generalize.

- Resolving hardlinked datasets in read maps
- Resolving 2nd-order empty groups
- Completing container groups
- Move fixing references to recursive function
- Multiple passes for a given phase
- NDArrayProxies should resolve dask or h5py reading on their own
- Correctly build split schema from PydanticProvider instead of needing external logic
2023-10-02 22:19:11 -07:00
eca7a5ec2e Correct schema for hdf5 path type
dont double MRO for basemodels in generated dynamictable
2023-09-28 17:58:45 -07:00
6bbf56d1a0 Make all maps exclusive
Track dependencies in build results and dont try and complete model if dependencies not alreay completed (ie. need multiple passes to complete, which is the correct behavior)
Use base models in dynamic tables, we should fix the dynamictable base class rather than just having everything be an anonymous BaseModel in order to satisfy type validation
Clear completed queue when advancing stages - we should make sure to move everything to completed with maps rather than implicitly keeping things in completed when they aren't - so we might be getting old versions of results that aren't actually fully completed but have some reference stubs still in them.
2023-09-27 20:07:39 -07:00
9fcc1458fb nearing the end - need to do final top-level packing but we're almost there! 2023-09-27 01:19:10 -07:00
a2da236b2b Regenerate models 2023-09-26 21:33:14 -07:00
8a9b6903b6 Fix generation to use actual class in type annotation even when has identifier value, while also making dicts for container classes 2023-09-26 21:30:53 -07:00
f672b931e5 Correctly handle container classes, use dicts instead of lists to be able to index by name. overriding __getitem__ and __getattr__ later 2023-09-26 20:50:11 -07:00
d16b4757e1 Use dask instead of trying to make a dataframe
compress arrays when serializing to json
2023-09-26 19:50:49 -07:00
50e816bad4 Working on finalizing the mapping operation... doing it single threaded for now and it's very slow but it completes up until the stage where we need to zip up the orphaned objects and other things that can be inferred from the model.
Need to make a proxytable model like proxyarray because reading all these tables takes way too fuckin long and it's not what we want to do anyway.
2023-09-25 22:03:53 -07:00
ce75dacf93 autogenerating models for dynamictable 2023-09-23 01:33:28 -07:00
57fa3d34a2 pandas dataframe mimic 2023-09-23 00:08:59 -07:00
aac0c7abdd need 2 stop for the night but its sort of happening 2023-09-22 02:48:40 -07:00
40984a6582 figuring out the strategy here...
- added linkml_meta classvar to store additional linkml properties if needed
- injecting path field to metaclass
- sketch of doing a queue-based read
- prune datasets & example allen institute data
2023-09-22 00:31:34 -07:00
321740f674 weird python relative import error from not having version naming 2023-09-15 01:06:50 -07:00
1f61dca46f weird python relative import error from not having version naming 2023-09-15 01:03:40 -07:00
94c204e8ea ok but really actually correct paths 2023-09-15 00:53:07 -07:00
b283e8b0bf get correct path for provider 2023-09-15 00:50:16 -07:00
ccf267babd regenerating models, some minor code cleanup and coverage omissions 2023-09-15 00:37:20 -07:00
3e2e6915cf Add ability to make JSON schema with numpy arrays! 2023-09-14 23:43:00 -07:00
e6a41415f5 successfully building many versions of nwb schema.
working on hdf5 importing, come back to it when fresh, just sorta poking at it because it's so close.
2023-09-14 02:45:01 -07:00
32f81fd409 more toctree limiting? 2023-09-11 22:26:15 -07:00
054ca8fd5e add monkeypatch to schemaview 2023-09-11 22:23:42 -07:00
6ff7e6baab correct docs toctree depth so homepage isn't so hectic 2023-09-11 19:57:29 -07:00
095d0bc6a9 fixing tests by using temp directory and changing random prior commit hash from nwb core schema 2023-09-11 19:55:45 -07:00
c69cbdfb38 Docstrings and basic tests for providers.
bugfix - remove redundant language elements that cause a recursion error (eg. subtyping "float" with "float")
2023-09-11 19:38:29 -07:00
2e87fa0556 working generation from provider 2023-09-08 19:46:42 -07:00
0b0fb6c67a cute progress bar and also linkml provider works 2023-09-08 16:12:19 -07:00
d15ba8e2e1 fixing docs build 2023-09-07 19:58:38 -07:00
0cc1dbd862 fixing docs build 2023-09-07 19:53:12 -07:00
42ac8e6d7b fixing docs build 2023-09-07 19:48:58 -07:00
43f35c50d8 fixing docs build 2023-09-07 19:39:19 -07:00
75b710c3eb docs! 2023-09-07 19:32:17 -07:00
a01bb49b1e working on providers to cache generated models 2023-09-07 18:50:50 -07:00
0ec09a035a commit hdf5 starts 2023-09-07 14:09:27 -07:00
2b828082e0 perf enhancements to pydantic generation 2023-09-06 22:48:47 -07:00
7b97b749ef monkeypatch to fix perf problems from nptyping 2023-09-06 19:32:33 -07:00
6a9d612b41 i'm just sorta making a mess here. coming back tomorrow 2023-09-06 00:50:49 -07:00
85beef4276 trying to get absolute paths out of coverage report 2023-09-05 22:54:20 -07:00
ecbb106581 proper .coveragerc formatting 2023-09-05 22:45:26 -07:00
456a5315d2 abandoning github action build 2023-09-05 22:42:46 -07:00
ce5cd18212 move to .coveragerc 2023-09-05 22:37:41 -07:00
2e1130c3f6 passing test directory??? 2023-09-05 22:29:48 -07:00
fcd4f70442 explicit configuration passing 2023-09-05 22:21:30 -07:00