Error after upgrading to TMS Web Core v2.9.2.1

Hi,

After updating my TMS Web Core installation to v2.9.2.1, I encountered an issue when trying to compile and run an existing project.

  • Even with a breakpoint at the start of the .dpr file, the error still occurs immediately.
  • The console reports a Generics.Defaults error. I removed all references to this unit, but the error persists.
  • While debugging step by step in the browser developer console, execution leads to the error inside rtl.run();. Because of this, I suspect it might be a Pas2JS-related issue.

Screenshots:
Img1:


Img2:

Could you please advise if this is a known issue with Pas2JS or if there is a recommended workaround/fix?

Best Regards.

We haven't seen a similar problem before.
Can this be isolated? Do you have steps to reproduce?
All demo projects still compile & run fine on your machine?

Thank you for the quick response.
I will try to reproduce and isolate the issue, and I’ll also test with the demo projects to see if they compile and run correctly on my machine.
I’ll get back to you with the results.

Hi,

Just to keep you updated:

  • I tracked the issue down to that project’s form page or its associated Delphi (non-JS) library.
  • All demo projects compile and run successfully on my side.
  • I am now working on isolating and reproducing the issue in a new project.

At this point, it seems related to my usage of:

TObjectList<TMyCustomObject>
Compare

Note: Even if I remove Generics.Defaults, this form page (and its library) still references Generics.Collections, which internally brings in Generics.Defaults.

I’ll continue investigating and will share a minimal reproducible case once I have it.

Best regards.

I have the same problem.
While debugging rtl.js, I encountered the following situation:
The left is the current version.
The right is version 2.7.
In the red block, the passed value "i" is undefined.
This triggers the exception.

I'm no JavaScript expert, but in these new lines, the "i" is initialized a little further down.

Could that be the reason?

File: ...\Core Source\RTL\rtl.js

We will check this with the pas2js team.
It would help if you could indicate how we can reproduce this issue here or isolate this and provide a sample source project with which we can reproduce this here.