-
Content Count
3323 -
Joined
-
Last visited
-
Days Won
110
Everything posted by Lars Fosdal
-
git and Delphi tooling?
Lars Fosdal replied to Lars Fosdal's topic in Project Planning and -Management
QED: Lars is a sucker π -
git and Delphi tooling?
Lars Fosdal replied to Lars Fosdal's topic in Project Planning and -Management
https://git-fork.com/ looks very interesting! ...and I suddenly realized that front page image shows Anders Heijlsberg doing his TypeScript commits with Fork. /star-struck -
git and Delphi tooling?
Lars Fosdal replied to Lars Fosdal's topic in Project Planning and -Management
Even as a long time TortoiseSVN user, I am slightly uncomfortable by the rather cluttered interface in TortoiseGit. Too many options. We are more likely to document step by step actions using a specific GUI and use powershell scripts that are based on this method of working: https://nvie.com/posts/a-successful-git-branching-model/ where possible. Using git with Delphi is straight forward but using git for SQL Server is a major exercise in Catch-22. Currently evaluating 1. Visual Studio Solution & git integration commit and push -> pull request -> CI script to deploy to staging databases 2. Ediiting DB in SSMS ->script that runs DB -> ApexSQL Diff -> local file folder -> git commit and push -> pull request -> CI script to deploy to staging databases 3. ApexSQL Diff direct to/from DB and git (which should have worked, but does not - awaiting support response) -> CI script to deploy to staging databases Each of the variants have pros and cons. -
git and Delphi tooling?
Lars Fosdal replied to Lars Fosdal's topic in Project Planning and -Management
Indeed. -
Delphi 10.4.1 Codecompletion no overrides etc
Lars Fosdal replied to mvanrijnen's topic in Delphi IDE and APIs
Have you checked if this is registered on https://quality.embarcadero.com/ ? Could you please register it if you can't find it? -
It is pretty quirky - even on Windows.
-
I had not read that. Lots of useful info, so I will have chat with the Azure guy. Azure being Azure, I don't know how much control we have of the separation of the VMs, except you pay quite a bit more if you want a dedicated instance.
-
You know the tool π Continua + FinalBuilder, @Vincent Parrett. Can't say that going from 10.3.3 to 10.4.1 made any significant improvement - that said - we also switched from a dedicated VM on a local cluster to a managed VM on Azure at the same time, so it is difficult to make a direct comparison. Yes, the code is generics heavy, but the above time also includes unit testing, code signing and Sisulizer translation of two of the apps as well as deploying the files to the staging catalog (edit2: oh, and we use Eurekalog which takes forever to fixup and link). Edit: the build time also goes up if the live branch is compiling at the same time as the trunk branch. Will need to learn to say main instead of trunk soon - to stay with git terminology. Finally making the move from SVN to git. Wish us luck.
-
Now is the time.. We build linux servers (@PrimoΕΎ)
Lars Fosdal replied to t2000's topic in OmniThreadLibrary
Experimental only, and not with OTL - but we would also like to have OTL fully functional on Linux to open that door. -
We've got some old, handcrafted Delphi code that produces dynamic HTML/CSS content that we use as a web UI to a service. I would NOT have done it the same way today.
-
Building our software takes about 20 minutes now. Building the 1MLoc "workstation" app, takes 1:17 with Eurekalog linking on my laptop. Just enough time to quickly glance at these forums π
-
DPM Package Manager - presentation
Lars Fosdal replied to Vincent Parrett's topic in Delphi Third-Party
Sometimes I've spotted domain names that were unused, and I wondered if I should be squatting - but - I decided against it. I do wish I grabbed some two decades back, though. -
How to optimize exe loading times
Lars Fosdal replied to a topic in Software Testing and Quality Assurance
For some it can be daunting to get started on multi-threading and asynchronous applications. @Dalija Prasnikar can help with that. https://dalijap.blogspot.com/2020/11/just-released-ebook-delphi-event-based.html -
How to optimize exe loading times
Lars Fosdal replied to a topic in Software Testing and Quality Assurance
We do extensive use of client-side threading. Lengthy UI blocking jobs, such as querying for data or generating output, are delegated to a thread - culminating in a UI refresh to display the updated data. "Not responding" UI messages are so last decade. -
QuickBooks API getting Access Token with OAuth2
Lars Fosdal replied to CliveMM's topic in Network, Cloud and Web
These temporary component inclusions of EMBT are bullshit. Free and included, my rear end... -
DPM Package Manager - presentation
Lars Fosdal replied to Vincent Parrett's topic in Delphi Third-Party
JMIW - djay-meeve - Just Make It Work -
Enumeration Type as Parameter
Lars Fosdal replied to chkaufmann's topic in RTL and Delphi Object Pascal
This brings up my pet peeve with Generics - the lack of an Enumeration constraint for the generic type T. If you put something else than an enumeration as T in the call, it will blow up, but putting <T> on the methods allows you to do what you want? If you are running multiple sets, but the class basically does the same, can you use this? TBSCatalogBuilderSet = class(TBSCatalogBuilder) public // constructor Create; // Does what you need it do to, but stays away from the generics bits procedure Build<T>(ACatalogId: Integer; const AName: String; ADefault: T); end; procedure TBSCatalogBuilderSet.Build<T>(ACatalogId: Integer; const AName: String; ADefault: T) var V: TValue; Ordinal: Integer; begin V := TValue.From<T>(aDefault); Ordinal := V.AsOrdinal; // You already have the TypeInfo example above for extracting the range of T, or the name of the type as well // so the rest of your magic happens here end; -
DPM Package Manager - presentation
Lars Fosdal replied to Vincent Parrett's topic in Delphi Third-Party
Or even DuGet π -
Enumeration Type as Parameter
Lars Fosdal replied to chkaufmann's topic in RTL and Delphi Object Pascal
I am still not sure what you want to achieve or what it is that is the actual problem? Do you need to validate that the second parameter is valid for the first parameter? Or is it converting to/from an integer? if it compiles, aValue is a member of T function TFoo.IsMember<T>(const aValue:T): Boolean; begin Result := True; end; Convert it to an integer? function TFoo.ToInteger<T>(const aValue:T): Integer var V: TValue; begin V := TValue.From<T>(aValue); Result := V.AsOrdinal; end; -
DPM Package Manager - presentation
Lars Fosdal replied to Vincent Parrett's topic in Delphi Third-Party
Or... VuGet (name play on NuGet) -
DPM Package Manager - presentation
Lars Fosdal replied to Vincent Parrett's topic in Delphi Third-Party
My unsolicited suggestion: VPAM (vee-pam)- Vincent's PAckage Manager aka Vincent Parrett's Asset Manager π VPAM currently gives less than 300k hits on Google and the existing ones appear not to be in the software/IT sector. -
Embt cannot read your local license data - so if it is mentioned in the email, that is something on their side. License Manager will only affect which licenses that are present for your local installation.
-
@ertank - If you do that, the trial license may still be hanging around, but can be removed using the LicenseManager. C:\Program Files (x86)\Embarcadero\Studio\<version>.0\bin\LicenseManager.exe
-
The Byte example shows that flakiness, but it does seem to work well in 10.4.1 - also with regards to Error Insight.
-
Makes sense, I suppose. Personally, I am not enthusiast enough to rummage through the variations the resulting assembly code for everything I do - so I ask.