From 052ff657c1310e4b4b03803554c9e5ffd6f94a77 Mon Sep 17 00:00:00 2001 From: sascha Date: Mon, 18 May 2026 14:07:20 +0200 Subject: [PATCH] updated todo.md --- todo.md | 50 ++------------------------------------------------ 1 file changed, 2 insertions(+), 48 deletions(-) diff --git a/todo.md b/todo.md index 8af85b7..fe94f84 100644 --- a/todo.md +++ b/todo.md @@ -1,58 +1,12 @@ # Todo -Order of next steps: -1. Finish pk generator - - classes - - detection on schema attach - - tests -2. PK accessor class - - extract from `insert_query_builder` class - - get(), set(), is_null/valid/set() - - detection on schema attach - - tests -3. Add owner-awareness to the collection class - - add owner field - - bind owner on session insert - - tests -4. Finish `insert_query_builder` - - collect all inserts for entities with relations - - tests - - cascade_type: `Insert` - - has_many <-> belongs_to: set root id into the join column of elements - - belongs_to <-> has_many: ? - - belongs_to <-> has_one: set root id into the foreign object - - has_one <-> belongs_to: set root id into the foreign object - - has_many_to_many: insert relation table entry - -if generator type `manual` => extract pk before insert - => -if generator type `sequence` or `table` => generate pk before insert -if generator type `identity` => extract pk after insert and before insert of relation objects - -5. Finish `session::insert` method - - use `insert_query_builder` - - correct handling of pk generator - - tests - - move `prepare_*` methods from `dialect` to `query_compiler` -- add `insert_query_builder` and `update_update_builder` (returning multiple statements) -- finish fetch eager many-to-many relations -- implement lazy loading +- add `update_update_builder` (returning multiple statements) +- add `delete_update_builder` (returning multiple statements) - implement polymorphic class hierarchies - finish `database` (schema_repository) class (move add/drop from `session` to `schema`) - implement a flag class for enumerations -- PK generator -1. Introduce execute_result -2. Add `abstract_pk_generator` class -3. Add `identity_pk_generator` class -4. Add `sequence_pk_generator` class -5. Add `table_pk_generator` class -6. Add `manual_pk_generator` class -7. Extend `session::insert` logic to use pk generator -8. Add generator to `schema_node` or `table` class when attaching type - - __Proposal for polymorphic classes:__ object_ptr::as does the following checks;