F dict heuristic
-
Review changes -
-
Download -
Patches
-
Plain diff
Summary
Part of https://gitlab.indiscale.com/caosdb/customers/3dmmto/management/-/issues/30. Introduce a converter that automatically transforms dictionary entries to property values without having to specify them explicitly. It also also creates referenced Records from object-typed dictionary values. Properties can be blacklisted.
The new converter extends the existing DictElementConverter
, so we can still use the existing treatment via records
and subtree
entries in the converter definition. This allows for the special treatment of blacklisted dictionary keys, but it is not limited to them. We do not change the original create_children
method, so all dictionary entries are also available in the subtree if needed elsewhere.
Focus
Mainly the new converter and its documentation.
Test Environment
make doc
and check the new documentation. Is it understandable? Is it useful?
For actual testing the new unit test should be sufficient. Can you think of corner cases that they do not cover yet?
Check List for the Author
Please, prepare your MR for a review. Be sure to write a summary and a focus and create gitlab comments for the reviewer. They should guide the reviewer through the changes, explain your changes and also point out open questions. For further good practices have a look at our review guidelines
-
All automated tests pass -
Reference related issues -
Up-to-date CHANGELOG.md (or not necessary) -
Up-to-date JSON schema (or not necessary) -
Appropriate user and developer documentation (or not necessary) - How do I use the software? Assume "stupid" users.
- How do I develop or debug the software? Assume novice developers.
-
Annotations in code (Gitlab comments) - Intent of new code
- Problems with old code
- Why this implementation?
Check List for the Reviewer
-
I understand the intent of this MR -
All automated tests pass -
Up-to-date CHANGELOG.md (or not necessary) -
Appropriate user and developer documentation (or not necessary) -
The test environment setup works and the intended behavior is reproducible in the test environment -
In-code documentation and comments are up-to-date. -
Check: Are there specifications? Are they satisfied?
For further good practices have a look at our review guidelines.
Merge request reports
- version 20a4218614
- version 1991a4c7c9
- version 18f2d2ba5a
- version 17a679fb7b
- version 160c58166b
- version 15a0714288
- version 142fdf08b9
- version 13991bcec3
- version 122e09c486
- version 11aed256c9
- version 10215f9c21
- version 9811ee3bc
- version 858357daa
- version 758357daa
- version 60d636d4b
- version 59959dcb3
- version 42cbeb584
- version 37e7eeddc
- version 21842ef89
- version 1963d2f53
- dev (base)
- latest version867b1cc535 commits,
- version 20a421861433 commits,
- version 1991a4c7c932 commits,
- version 18f2d2ba5a31 commits,
- version 17a679fb7b30 commits,
- version 160c58166b28 commits,
- version 15a071428820 commits,
- version 142fdf08b919 commits,
- version 13991bcec318 commits,
- version 122e09c48617 commits,
- version 11aed256c915 commits,
- version 10215f9c2114 commits,
- version 9811ee3bc13 commits,
- version 858357daa12 commits,
- version 758357daa12 commits,
- version 60d636d4b11 commits,
- version 59959dcb310 commits,
- version 42cbeb5849 commits,
- version 37e7eeddc8 commits,
- version 21842ef895 commits,
- version 1963d2f534 commits,
- Side-by-side
- Inline