Create dimensions during DataArray creation
- Dominant language
- C++
- Stars
- 72
- Forks
- 36
- PR merge metrics
- No merged PRs in 30d
Description
Pass information about dimensions to DataArray's create method. The goal is to have a similar behavior as in the prototype:
``` c++
DataArray da = block.createDataArray("da", "signal", nix::DataType::Double, {D("ms", "Time", 0.1)})
```
Further all methods to set or append dimensions should be removed and it should not be possible to change the unit of existing dimensions (or at least not to an incompatible unit).
This is a major API change and has a huge impact on the bindings and the documentation of the c++ API and the bindings.
Contributor guide
Research direction
Start by tracing the C++ DataArray creation API and the existing dimension-setting and appending methods. Compare the current API with the prototype call in the issue, then map the impact on bindings and C++ API documentation. Done means dimensions are supplied during creation and incompatible post-creation changes are no longer allowed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend-api-design, documentation
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100