major
minor
defect
major
minor
#26382
Error messages "Duplicate tag name..." when starting an application in the IDE from a TL-Studio
#26405
TTypeRewriter logs warning "Unable to resolve items by external reference" also unnecessarily
#26431
Changed superclass relationship leads to changed attribute list in the form editor only after a restart
enhancement
major
#25881
No more automatic creation of "table types" for database tables
Until now, model elements have been automatically created in the dynamic model for database tables for TL-5 compatibility reasons. These "table types" are not part of the model configuration and therefore cannot be migrated automatically.
Furthermore, additional model elements are generated for tables for which no model is defined (e.g., Person, Group, ...) (in the "tl.legacy.tabletypes" module)
Improvement
- These legacy table types are no longer generated automatically. Model elements must be defined for such tables.
Code Migration
- Model references to ` tl.legacy.tabletypes ` must be replaced with references to “real” model elements.
- Replacing model references:
- tl.legacy.tabletypes:PersonTable => tl.accounts:Person
- tl.tables:PersonTableInterface => tl.accounts:Person
- tl.legacy.tabletypes:GroupTable => tl.accounts:Group
- tl.legacy.tabletypes:WebFolderTable => tl.folder:WebFolder
- tl.legacy.tabletypes:DocumentTable => tl.folder:Document
- tl.legacy.tabletypes:DocumentVersionTable => tl.folder:DocumentVersion
- tl.tables:AbstractUnitTableInterface => tl.units:AbstractUnit
- tl.legacy.tabletypes:CurrencyTable => tl.units:Currency
- tl.legacy.tabletypes:UnitTable => tl.units:Unit
- tl.legacy.tabletypes:CommentTable => tl.comments:Comment
- tl.legacy.tabletypes:MetaElementTable => tl.model:TLClass
- tl.tables:FastListEltTableInterface => tl.model:TLClassifier
- tl.legacy.tabletypes:FastListEltTable => tl.model:TLClassifier
- tl.legacy.tabletypes:MetaAttributeTable => tl.model:TLStructuredTypePart
- tl.legacy.tabletypes:FastListTable => tl.model:TLEnumeration
- tl.legacy.tabletypes:AddressTable => tl.accounts:Address
- tl.legacy.tabletypes:BoundedRoleTable => tl.accounts:Role
- tl.legacy.tabletypes:MailFolderTable => tl.mail:MailFolder
- tl.legacy.tabletypes:MailTable => tl.mail:Mail
- tl.tables:UsedSkillProfileTableInterface => Resources:UsedSkillProfile
- Remove the <reference-builder ... /> or <reference-builder ... ></reference-builder> tag.
- Search for attributes of type tl.tables:ContactTableInterface and replace them with either Contacts:Contact.Person or Contacts:Contact.Company.
Data Migration
Once the above code changes have been made, a migration script must be created to apply these changes to the database. You can use the script com.top_logic.element/webapp/WEB-INF/kbase/migration/tl-element/Ticket_25881_Removed_legacy_types.migration.xml as a guide.
Test
Refactoring; no additional testing required.