kvesteri / sqlalchemy-continuum

Versioning extension for SQLAlchemy.
BSD 3-Clause "New" or "Revised" License
575 stars 127 forks source link

Add column property in the version table #301

Open AbdealiLoKo opened 2 years ago

AbdealiLoKo commented 2 years ago

polymorphic_on supports column_property() defined on the mapper. But the version mapper does not have the column property making it fail even though the mapper_args are being copied into the version table.

This also makes it more natural for the user - because they can directly access column properties from the version table itself

This also copies the column_property() into the version tables

Relates to https://github.com/kvesteri/sqlalchemy-continuum/issues/297

AbdealiLoKo commented 2 years ago

Right now - I have impleented this assuming all column properties should be copied - cause I thought that would be useful. But if you think this is not a good idea, I can add the column property only if a column property is being used in the polymorphic_on

Also - @marksteward I was not sure whether this should be in builder.py or model_builder.py I saw the mapper args were being added in model_builder.py but column-properties and relationships are being added in builder.py I feel like this should be in model_builder.py

AbdealiLoKo commented 2 years ago

@marksteward this one is blocking me from using continuum too

Does next-release mean next major or minor or patch release ?