aiidateam / aiida-restapi

AiiDA Web API for data queries and workflow management.
https://aiida-restapi.readthedocs.io
MIT License
10 stars 7 forks source link

Implement `nodes/{node_id}/download` endpoint #74

Closed agoscinski closed 1 week ago

agoscinski commented 1 week ago

We implement the download of nodes that implement the export functionality as in aiida-core. We use StreamingResponse to send the data in byte chunks of size 1024.

The tests require the client to be asynchronously to prevent I/O operations on closed file handlers.

We require a numpy dependency because we need a node type that implemented the export functionality. The only node type that is not bounded to the domain of material science is ArrayData.