-
Content Count
3510 -
Joined
-
Last visited
-
Days Won
115
Everything posted by Lars Fosdal
-
Version Control.
-
promise Introducing My Delphi TFuture PPL For Thread Safe UI
Lars Fosdal replied to bravesofts's topic in I made this
TEventually<T> 😛 -
promise Introducing My Delphi TFuture PPL For Thread Safe UI
Lars Fosdal replied to bravesofts's topic in I made this
But you are still blocking, if looping around a wait. Are you going to put a ProcessMessages in that loop? -
promise Introducing My Delphi TFuture PPL For Thread Safe UI
Lars Fosdal replied to bravesofts's topic in I made this
Wait = Block. Events = Asynch w/o block. -
I have a 5K 40" Lenovo, that can be split into two "virtual" displays. I can set up different resolutions and scalings on those when I need to test HighDPI. Generally speaking, the test results are so disheartening that I still stick with 100% scaling in the OS, and use BDS in DPI-Unaware mode.
-
promise Introducing My Delphi TFuture PPL For Thread Safe UI
Lars Fosdal replied to bravesofts's topic in I made this
Generally speaking I prefer offloading background tasks to a threadpool in-queue. The threadpool messages the main thread when the work is done. The main thread then retrieves the response from the threadpool out-queue.(i.e. mailbox principle). If there are multiple parallell tasks (i.e. a job), the main thread will need to know that, and whenever a thread completes, check if it fullfill the needs of the job and then fire off whatever should happen after the job is complete. There really is no single best way to deal with background processing - except ensuring that the main thread is not blocked. -
How to use Swagger via MARS REST API?
Lars Fosdal replied to KostasR's topic in MARS-Curiosity REST Library
I see there are several attributes relevant for the Swagger data, such as RequestParamAttribute, but I see very few examples of use. Github: search for "Param]" (without the quotes) I woud suggest you experiment with those to see what you get. -
How to use Swagger via MARS REST API?
Lars Fosdal replied to KostasR's topic in MARS-Curiosity REST Library
Ah, so how to generate complete Swagger info from your MARS API? -
How to use Swagger via MARS REST API?
Lars Fosdal replied to KostasR's topic in MARS-Curiosity REST Library
Not sure if I understand your question? Swagger is API documentation. Are you looking for how to generate code for MARS REST based on a Swagger definition? -
@audi30tdi We do all our EHF invoices through third party systems, so I have no Delphi code to offer. Are you looking for the specification of the EHF invoice document or code for sending the document to an http endpoint?
-
RAD Studio 12.3: E2213 Bad packaged unit format
Lars Fosdal replied to Chau Chee Yang's topic in Delphi IDE and APIs
Isn't that the type of error you get when you try to link a .dcu that is for the wrong platform? -
How much RAM for Macbook Pro M4 to Run RAD Studio 12?
Lars Fosdal replied to amit's topic in General Help
Apple's RAM and disk prices are ridiculous, but personally I'd go for at least 24GB and 1TB. My MBP M1 has 32GB/2TB. -
Looks fixed now.
-
Delphi 11.1 + patches - No debug source / breakpoints?
Lars Fosdal posted a topic in Delphi IDE and APIs
I have the weirdest issue. I just installed a fresh Delphi 11.1 + patches on a new, fully patched Windows 10 Enterprise laptop. For some weird reason - I can't debug. Breakpoints don't break. Exceptions break shows assembly code, says it is mixed mode, but no source lines show, and I can't trace to next sourceline. Yes, I am in 32-bit debug mode. Yes, the project has the debug settings and debug info included. Yes, the output folders have full access for the current user. Yes, there is only one set of DCUs in the path. Yes, there is only one .EXE file. Edit: Yes, they are debug DCUs Yes, line endings are CRLF Yes, current user has local admin rights As soon as my app starts, the breakpoints are grayed out. Edit 2: It does not happen to all apps. The problem app is about 600k lines. Tiny apps and a larger 1100k line app - no problems. What am I missing? Update - Possible causes? A developer on a non-corporate laptop does not have this problem. Another developer on corporate laptops have the same problem as me on both new and old laptops. That seems to indicate a Windows policy may be a factor here. Anyways - workaround: Project | Options | Linking | Include remote debug symbols: A tick here gave working breakpoints for us. -
IMO, if you need multiple values for a field, you should use a list element. Duplicate key/value pairs in JSON just doesn't make sense. https://JsonLint.com does not like them either.
-
Delphi 11.1 + patches - No debug source / breakpoints?
Lars Fosdal replied to Lars Fosdal's topic in Delphi IDE and APIs
Sorry, no updates. Not using Delphi much, except from small utils. Haven't checked on the problem since 12.3. -
Option to set read topic on Unread Content list
Lars Fosdal replied to ŁukaszDe's topic in Community Management
AFAIK, no. You could run it through an RSS reader. Perhaps there is one that can ignore topics the way you desire? -
Option to set read topic on Unread Content list
Lars Fosdal replied to ŁukaszDe's topic in Community Management
@ŁukaszDe You find a topic uninteresting, but it keeps reappearing? Have you tried the "Ignore this topic" for a thread you don't want to read again? -
RAD Studio 12.3 patch available - April 2025
Lars Fosdal replied to Roger Cigol's topic in Tips / Blogs / Tutorials / Videos
Yeah, THAT surfaced the dreaded error [dcc64 Error] NonNullableConstraint.dpr(41): Type parameter 'T' must be a non-nullable value type Half-baked patches are no fun. Edit - Also noticed that the Error ID is lost when using MSBuild. -
RAD Studio 12.3 patch available - April 2025
Lars Fosdal replied to Roger Cigol's topic in Tips / Blogs / Tutorials / Videos
@Anders Melander I just tried my example code which failed before the April patch in the 64-bit IDE, targeting 64-bit Windows. It no longer stops compiling. program NonNullableConstraint; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils; type TMyClass = class function Select<T:Record>(const selector: string):TArray<T>; end; TNotifcationRow = record const Query = 'SELECT * FROM v_server_notifications'; public Id: Integer; Name: String; Data: String; ByWho: String; CreatedWhen: TDateTime; function DataAsId: Integer; end; TServerNotificationArray = TArray<TNotifcationRow>; { TMyClass } function TMyClass.Select<T>(const selector: string): TArray<T>; begin end; procedure Test; var MyClass: TMyClass; Res: TServerNotificationArray; begin MyClass := TMyClass.Create; Res := MyClass.Select<TNotifcationRow>('foo'); // <- E2512 Type parameter 'T' must be a non-nullable value type end; { TNotifcationRow } function TNotifcationRow.DataAsId: Integer; begin Result := 0; end; begin try Test; except on E: Exception do Writeln(E.ClassName, ': ', E.Message); end; end. -
RAD Studio 12.3 patch available - April 2025
Lars Fosdal replied to Roger Cigol's topic in Tips / Blogs / Tutorials / Videos
It is fixed. It is no longer necessary to remove the record constraint to avoid the non-nullable type error. Edit: Woops - missed that 64-bit thing... do you mean the 64-bit target, or the 64-bit compiler? -
You can reserve a video against embedding, so that might be a factor?
- 12 replies
-
- delphi xe7
- youtube
-
(and 1 more)
Tagged with:
-
Recommended string format to work with UTF-8 databases
Lars Fosdal replied to Bruce Eglington's topic in Databases
Correct me if I'm wrong - but isn't the Delphi String automatically converted to/from UTF-8 (or other native db string formats) by FireDAC / Driver? -
AI Rewrite and COBOL Port Announced for Immediate Development
Lars Fosdal replied to dummzeuch's topic in GExperts
Why convert when you can enjoy the verbosity and indentation in all its glory? https://www.rocketsoftware.com/en-us/products/cobol/visual-cobol 🙂 -
I use PowerShell + dbatools module to do backups and restores, as well as check for space, database schema sync, check contents of DB and run scripts, etc.