Files
uha4 c0dd24b6c5 Proteus-Zweig: dataset.yaml-Pipeline und 5.0/8.0-Modellbaumvergleich
- create_dataset.py, compare_snapshots.py, rst_to_dataset.py: Proteus-
  Testdatensatz anlegen/vergleichen bzw. aus *.rst-Szenarien extrahieren
- create_dataset.py: Feld-Alias-Fallback (FIELD_RENAMES) für bekannte
  Umbenennungen wie stock.move.uom -> unit, bidirektional
- merge_dedup_rsts.py: Extrahierte YAMLs pro Version zusammenführen,
  versionsinterne Duplikate entfernen, abhängigkeitskorrekt sortieren
- extract_model_tree.py: Modellbaum (Modelle/Felder) statisch aus dem
  Tryton-Quellcode ziehen, für 5.0 und 8.0
- model_diff.py, model_coverage.py: 5.0<->8.0-Modelländerungen finden und
  gegen die aktuelle Testdatenabdeckung abgleichen, priorisiert nach
  tatsächlicher Änderung
- reports/*_merged.yaml: Extraktionsergebnisse für die aktiven
  Module (rohe *.rst-Quellen bewusst nicht mitversioniert)
- Ordner doc ergänzt
2026-08-22 10:52:13 +02:00

19 KiB

modul country

Tabelle country_country

5.0

  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'name_uniq'
    • code: 'table.drop_constraint('name_uniq')'
  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'code_uniq'
    • code: 'table.drop_constraint('code_uniq')'
  • after_super not_null_action
    • object: table
    • files:
      • country.py
    • args: 'code', 'remove'
    • code: 'table.not_null_action('code', 'remove')'

5.4

  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'name_uniq'
    • code: 'table.drop_constraint('name_uniq')'
  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'code_uniq'
    • code: 'table.drop_constraint('code_uniq')'
  • after_super not_null_action
    • object: table
    • files:
      • country.py
    • args: 'code', 'remove'
    • code: 'table.not_null_action('code', 'remove')'

5.8

  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'name_uniq'
    • code: 'table.drop_constraint('name_uniq')'
  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'code_uniq'
    • code: 'table.drop_constraint('code_uniq')'
  • after_super not_null_action
    • object: table
    • files:
      • country.py
    • args: 'code', 'remove'
    • code: 'table.not_null_action('code', 'remove')'

6.2

  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'name_uniq'
    • code: 'table.drop_constraint('name_uniq')'
  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'code_uniq'
    • code: 'table.drop_constraint('code_uniq')'
  • after_super not_null_action
    • object: table
    • files:
      • country.py
    • args: 'code', 'remove'
    • code: 'table.not_null_action('code', 'remove')'

6.6

  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'name_uniq'
    • code: 'table.drop_constraint('name_uniq')'
  • after_super drop_constraint
    • object: table
    • files:
      • country.py
    • args: 'code_uniq'
    • code: 'table.drop_constraint('code_uniq')'
  • after_super not_null_action
    • object: table
    • files:
      • country.py
    • args: 'code', 'remove'
    • code: 'table.not_null_action('code', 'remove')'

Tabelle country_postal_code

6.0

  • before_super table_rename
    • object: backend.TableHandler
    • files:
      • country.py
    • args: 'country_zip', cls._table
    • code: 'backend.TableHandler.table_rename('country_zip', cls._table)'
  • before_super column_rename
    • object: table_h
    • files:
      • country.py
    • args: 'zip', 'postal_code'
    • code: 'table_h.column_rename('zip', 'postal_code')'

6.4

  • before_super table_rename
    • object: backend.TableHandler
    • files:
      • country.py
    • args: 'country_zip', cls._table
    • code: 'backend.TableHandler.table_rename('country_zip', cls._table)'
  • before_super column_rename
    • object: table_h
    • files:
      • country.py
    • args: 'zip', 'postal_code'
    • code: 'table_h.column_rename('zip', 'postal_code')'

6.8

  • before_super table_rename
    • object: backend.TableHandler
    • files:
      • country.py
    • args: 'country_zip', cls._table
    • code: 'backend.TableHandler.table_rename('country_zip', cls._table)'
  • before_super column_rename
    • object: table_h
    • files:
      • country.py
    • args: 'zip', 'postal_code'
    • code: 'table_h.column_rename('zip', 'postal_code')'

7.2

  • before_super table_rename
    • object: backend.TableHandler
    • files:
      • country.py
    • args: 'country_zip', cls._table
    • code: 'backend.TableHandler.table_rename('country_zip', cls._table)'
  • before_super column_rename
    • object: table_h
    • files:
      • country.py
    • args: 'zip', 'postal_code'
    • code: 'table_h.column_rename('zip', 'postal_code')'

Tabelle country_subdivision

6.4

  • after_super not_null_action
    • object: table_h
    • files:
      • country.py
    • args: 'type'
    • kwargs:
      • action: 'remove'
    • code: 'table_h.not_null_action('type', action='remove')'

6.6

  • after_super not_null_action
    • object: table_h
    • files:
      • country.py
    • args: 'code'
    • kwargs:
      • action: 'remove'
    • code: 'table_h.not_null_action('code', action='remove')'

6.8

  • after_super not_null_action
    • object: table_h
    • files:
      • country.py
    • args: 'type'
    • kwargs:
      • action: 'remove'
    • code: 'table_h.not_null_action('type', action='remove')'

7.0

  • after_super not_null_action
    • object: table_h
    • files:
      • country.py
    • args: 'code'
    • kwargs:
      • action: 'remove'
    • code: 'table_h.not_null_action('code', action='remove')'

7.2

  • after_super not_null_action
    • object: table_h
    • files:
      • country.py
    • args: 'type'
    • kwargs:
      • action: 'remove'
    • code: 'table_h.not_null_action('type', action='remove')'

7.4

  • after_super not_null_action
    • object: table_h
    • files:
      • country.py
    • args: 'code'
    • kwargs:
      • action: 'remove'
    • code: 'table_h.not_null_action('code', action='remove')'

7.6

  • after_super not_null_action
    • object: table_h
    • files:
      • country.py
    • args: 'type'
    • kwargs:
      • action: 'remove'
    • code: 'table_h.not_null_action('type', action='remove')'

7.8

  • after_super not_null_action
    • object: table_h
    • files:
      • country.py
    • args: 'code'
    • kwargs:
      • action: 'remove'
    • code: 'table_h.not_null_action('code', action='remove')'

8.0

  • after_super not_null_action
    • object: table_h
    • files:
      • country.py
    • args: 'type'
    • kwargs:
      • action: 'remove'
    • code: 'table_h.not_null_action('type', action='remove')'

Tabelle country_zip

6.0

  • before_super table_rename
    • object: backend.TableHandler
    • files:
      • country.py
    • args: 'country_zip', cls._table
    • code: 'backend.TableHandler.table_rename('country_zip', cls._table)'

6.4

  • before_super table_rename
    • object: backend.TableHandler
    • files:
      • country.py
    • args: 'country_zip', cls._table
    • code: 'backend.TableHandler.table_rename('country_zip', cls._table)'

6.8

  • before_super table_rename
    • object: backend.TableHandler
    • files:
      • country.py
    • args: 'country_zip', cls._table
    • code: 'backend.TableHandler.table_rename('country_zip', cls._table)'

7.2

  • before_super table_rename
    • object: backend.TableHandler
    • files:
      • country.py
    • args: 'country_zip', cls._table
    • code: 'backend.TableHandler.table_rename('country_zip', cls._table)'

Tabelle ir_model_data

5.4

  • after_super execute
    • object: cursor
    • files:
      • country.py
    • args: *data.delete(where=(data.module == 'country') & (data.model == cls.__name__))
    • code: '(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country') & (data.model == cls.name)))'
  • after_super delete
    • object: data
    • files:
      • country.py
    • kwargs:
      • where: (data.module == 'country') & (data.model == cls.__name__)
    • code: 'data.delete(where=(data.module == 'country') & (data.model == cls.name))'

5.8

  • after_super execute
    • object: cursor
    • files:
      • country.py
    • args: *data.delete(where=(data.module == 'country') & (data.model == cls.__name__))
    • code: '(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country') & (data.model == cls.name)))'
  • after_super delete
    • object: data
    • files:
      • country.py
    • kwargs:
      • where: (data.module == 'country') & (data.model == cls.__name__)
    • code: 'data.delete(where=(data.module == 'country') & (data.model == cls.name))'

6.2

  • after_super execute
    • object: cursor
    • files:
      • country.py
    • args: *data.delete(where=(data.module == 'country') & (data.model == cls.__name__))
    • code: '(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country') & (data.model == cls.name)))'
  • after_super delete
    • object: data
    • files:
      • country.py
    • kwargs:
      • where: (data.module == 'country') & (data.model == cls.__name__)
    • code: 'data.delete(where=(data.module == 'country') & (data.model == cls.name))'

6.6

  • after_super execute
    • object: cursor
    • files:
      • country.py
    • args: *data.delete(where=(data.module == 'country') & (data.model == cls.__name__))
    • code: '(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country') & (data.model == cls.name)))'
  • after_super delete
    • object: data
    • files:
      • country.py
    • kwargs:
      • where: (data.module == 'country') & (data.model == cls.__name__)
    • code: 'data.delete(where=(data.module == 'country') & (data.model == cls.name))'

7.0

  • after_super execute
    • object: cursor
    • files:
      • country.py
    • args: *data.delete(where=(data.module == 'country') & (data.model == cls.__name__))
    • code: '(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country') & (data.model == cls.name)))'
  • after_super delete
    • object: data
    • files:
      • country.py
    • kwargs:
      • where: (data.module == 'country') & (data.model == cls.__name__)
    • code: 'data.delete(where=(data.module == 'country') & (data.model == cls.name))'

7.4

  • after_super execute
    • object: cursor
    • files:
      • country.py
    • args: *data.delete(where=(data.module == 'country') & (data.model == cls.__name__))
    • code: '(Transaction().connection.cursor()).execute(*data.delete(where=(data.module == 'country') & (data.model == cls.name)))'
  • after_super delete
    • object: data
    • files:
      • country.py
    • kwargs:
      • where: (data.module == 'country') & (data.model == cls.__name__)
    • code: 'data.delete(where=(data.module == 'country') & (data.model == cls.name))'

Tabelle unknown

5.0

  • before_super get
    • object: backend
    • files:
      • party.py
    • args: 'TableHandler'
    • code: 'backend.get('(backend.get('TableHandler'))')'
  • before_super table_exist
    • object: TableHandler
    • files:
      • party.py
    • args: cls._table
    • code: '(backend.get('TableHandler')).table_exist(cls._table)'
  • before_super column_exist
    • condition: exist
    • object: table
    • files:
      • party.py
    • args: 'company'
    • code: 'table.column_exist('company')'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field
    • kwargs:
      • fields: ['company']
    • code: 'migrate_property( 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field, fields=['company'])'
  • after_super _migrate_property
    • condition: not exist
    • object: super(PartyLang, cls)
    • files:
      • party.py
    • args: field_names, value_names, fields
    • code: 'super(PartyLang, cls)._migrate_property( field_names, value_names, fields)'
  • after_super super
    • condition: not exist
    • files:
      • party.py
    • args: PartyLang, cls
    • code: 'super(PartyLang, cls)'

5.4

  • before_super get
    • object: backend
    • files:
      • party.py
    • args: 'TableHandler'
    • code: 'backend.get('(backend.get('TableHandler'))')'
  • before_super table_exist
    • object: TableHandler
    • files:
      • party.py
    • args: cls._table
    • code: '(backend.get('TableHandler')).table_exist(cls._table)'
  • before_super column_exist
    • condition: exist
    • object: table
    • files:
      • party.py
    • args: 'company'
    • code: 'table.column_exist('company')'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field
    • kwargs:
      • fields: ['company']
    • code: 'migrate_property( 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field, fields=['company'])'
  • after_super _migrate_property
    • condition: not exist
    • object: super(PartyLang, cls)
    • files:
      • party.py
    • args: field_names, value_names, fields
    • code: 'super(PartyLang, cls)._migrate_property( field_names, value_names, fields)'
  • after_super super
    • condition: not exist
    • files:
      • party.py
    • args: PartyLang, cls
    • code: 'super(PartyLang, cls)'
  • before_super Pool
    • files:
      • country.py
    • code: 'Pool()'
  • before_super cursor
    • object: Transaction().connection
    • files:
      • country.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super Transaction
    • files:
      • country.py
    • code: 'Transaction()'

5.8

  • before_super column_exist
    • condition: exist
    • object: table
    • files:
      • party.py
    • args: 'company'
    • code: 'table.column_exist('company')'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field
    • kwargs:
      • fields: ['company']
    • code: 'migrate_property( 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field, fields=['company'])'
  • after_super _migrate_property
    • condition: not exist
    • object: super(PartyLang, cls)
    • files:
      • party.py
    • args: field_names, value_names, fields
    • code: 'super(PartyLang, cls)._migrate_property( field_names, value_names, fields)'
  • after_super super
    • condition: not exist
    • files:
      • party.py
    • args: PartyLang, cls
    • code: 'super(PartyLang, cls)'
  • before_super Pool
    • files:
      • country.py
    • code: 'Pool()'
  • before_super cursor
    • object: Transaction().connection
    • files:
      • country.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'
  • before_super Transaction
    • files:
      • country.py
    • code: 'Transaction()'

6.0

  • before_super Pool
    • files:
      • res.py
    • code: 'Pool()'
  • before_super Transaction
    • files:
      • res.py
    • code: 'Transaction()'
  • after_super cursor
    • object: transaction.connection
    • files:
      • res.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'

6.2

  • before_super column_exist
    • condition: exist
    • object: table
    • files:
      • party.py
    • args: 'company'
    • code: 'table.column_exist('company')'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field
    • kwargs:
      • fields: ['company']
    • code: 'migrate_property( 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field, fields=['company'])'
  • after_super _migrate_property
    • condition: not exist
    • object: super(PartyLang, cls)
    • files:
      • party.py
    • args: field_names, value_names, fields
    • code: 'super(PartyLang, cls)._migrate_property( field_names, value_names, fields)'
  • after_super super
    • condition: not exist
    • files:
      • party.py
    • args: PartyLang, cls
    • code: 'super(PartyLang, cls)'
  • before_super cursor
    • object: Transaction().connection
    • files:
      • country.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'

6.4

  • before_super Pool
    • files:
      • res.py
    • code: 'Pool()'
  • before_super Transaction
    • files:
      • res.py
    • code: 'Transaction()'
  • after_super cursor
    • object: transaction.connection
    • files:
      • res.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'

6.6

  • before_super column_exist
    • condition: exist
    • object: table
    • files:
      • party.py
    • args: 'company'
    • code: 'table.column_exist('company')'
  • after_super migrate_property
    • condition: not exist
    • files:
      • party.py
    • args: 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field
    • kwargs:
      • fields: ['company']
    • code: 'migrate_property( 'party.configuration', cls._configuration_value_field, cls, cls._configuration_value_field, fields=['company'])'
  • after_super _migrate_property
    • condition: not exist
    • object: super(PartyLang, cls)
    • files:
      • party.py
    • args: field_names, value_names, fields
    • code: 'super(PartyLang, cls)._migrate_property( field_names, value_names, fields)'
  • after_super super
    • condition: not exist
    • files:
      • party.py
    • args: PartyLang, cls
    • code: 'super(PartyLang, cls)'
  • before_super cursor
    • object: Transaction().connection
    • files:
      • country.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'

6.8

  • before_super Pool
    • files:
      • res.py
    • code: 'Pool()'
  • before_super Transaction
    • files:
      • res.py
    • code: 'Transaction()'
  • after_super cursor
    • object: transaction.connection
    • files:
      • res.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'

7.0

  • before_super cursor
    • object: Transaction().connection
    • files:
      • country.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'

7.2

  • before_super Pool
    • files:
      • res.py
    • code: 'Pool()'
  • before_super Transaction
    • files:
      • res.py
    • code: 'Transaction()'
  • after_super cursor
    • object: transaction.connection
    • files:
      • res.py
    • code: 'transaction.connection.(transaction.connection.cursor())()'

7.4

  • before_super cursor
    • object: Transaction().connection
    • files:
      • country.py
    • code: 'Transaction().connection.(Transaction().connection.cursor())()'