breaking change in 5.25.0.1?

Hi Wagner,

Did you introduce a breaking change to Aurelius 5.25.0.1 to force abstract entities to have an ID? Some of my ID fields are GUID and some are integer. I have a base abstract class for timestamps for inserted and modified. I was using a class without an id as a common ancestor but since upgrading this morning my code won’t run

`First chance exception at $746CAE4F. Exception class EMappingNotFound with message 'Cannot find mapping [Id] on class TBaseEntityServer.'.`

It’s not a big problem to have two base classes.

Regards

Steve

type
{$RTTI EXPLICIT METHODS([vcPrivate..vcPublished])}
  [ AbstractEntity ]
  TBaseEntityServer = class
  private
    [ Column( 'CREATED_AT', [ TColumnProp.NoUpdate, TColumnProp.Required ] ) ]
    FCreatedAt: TDateTime;

    [ Column( 'LAST_MODIFIED', [ TColumnProp.Required ] ) ]
    FLastModified: TDateTime;

    [ OnInserting ]
    procedure OnInserting( Args: TInsertingArgs );
    [ OnUpdating ]
    procedure OnUpdating( Args: TUpdatingArgs );
  public
    property CreatedAt: TDateTime read FCreatedAt write FCreatedAt;
    property LastModified: TDateTime read FLastModified write FLastModified;
  end;

implementation

{ TBaseEntityServer }

procedure TBaseEntityServer.OnInserting( Args: TInsertingArgs );
begin
  FCreatedAt := TDateTime.NowUTC;
  FLastModified := TDateTime.NowUTC;
end;

procedure TBaseEntityServer.OnUpdating( Args: TUpdatingArgs );
begin
  FLastModified := TDateTime.NowUTC;
  Args.RecalculateState := True;
end;

Hi Steve,

No, we didn't deliberately do that. Only if it was a regression.

Are you pretty sure the exact same code works in a previous version and not in this one?

Is it possible that your problem is happening due to a different reason?

Do you have steps to consistently reproduce the issue?

Hi Wagner,

Unfortunately I can’t reproduce the error. I created a DUnitX test to try and reproduce it but that works fine, I can’t explain it. I had already changed my code to work around the problem so it’s not causing me a problem anymore. It feels like I am wasting your time but it definitely was an issue and I did clean out all my old dcu’s not sure what else to say. If no one else reported it then it must have been something peculiar to my setup.

Regards

Steve

AureliusTests_2026-03-20.zip (5.0 KB)

Hi Steve, I'm not sure what I'm suppose to do with this project? It's missing BaseEntities.pas file. If you can guide me through I can check what's going on with your project. If you worked around it, fine as well.

In summary, we didn't break anything regarding that on purpose. If it's a regression bug, it might happen in a specific case so we need to know how to reproduce it.

@Steve_Sinclair, we got hit by that issue in an internal project here.
We have fixed it and we will include a fix asap.

1 Like

BaseEntities.pas (1.9 KB)