Jump to content

Vincent Parrett

Members
  • Content Count

    786
  • Joined

  • Last visited

  • Days Won

    61

Everything posted by Vincent Parrett

  1. It's this rich api that makes Spring4D collections worthwhile. The perf hit is still worth it for this alone. In a real world application (FinalBuilder) I have not noticed any perf issues that could be attributed to the spring4d collections, but then I'm rarely enumerating huge collections - certainly in my profiling efforts there were plenty of areas to optimise, but spring4d wasn't showing up as an area of concern in the profiler (vtune). Now if only we could have non ref counted interfaces (ie no calls to add/release) and we could implement interfaces on records - best of both worlds 😉
  2. Vincent Parrett

    OmniPascal: Auto-Implementation of methods not working

    I very much doubt embarcadero would have any interest in doing anything for freepascal - as for VSCode - they have their hands full just getting LSP to work properly for the delphi IDE (it's a work in progress right now).
  3. Vincent Parrett

    OmniPascal: Auto-Implementation of methods not working

    No idea if this is true or not, but last I heard (don't remember where I heard this) he was working for embarcadero on their LSP.
  4. A few months ago I replaced all RTL collections (apart from TStringList) with spring4d 2.0 collections and I saw noticeably smaller binaries (exe/bpl) and faster overall application performance. Spring4D collections are just so much nicer to use, being interface based is a plus for me, and the LINQ like functionality makes it really easy to do sorting, filtering, projections etc - if only Delphi had lambdas so the predicates etc were not so damned verbose! I'm extremely thankful for the work @Stefan Glienke has put into Spring4D 👍
  5. Vincent Parrett

    Child Table in BDE shows only Last 62 records of 262

    Can't say I've used woll2woll or the BDE in the last 20 years... but just a guess - is paging perhaps enabled somewhere, with a page size of 200? Perhaps it's just showing the last page?
  6. Vincent Parrett

    SSL certificate for VCL Application Exe

    https://www.ksoftware.net/code-signing-certificates/ OV certificates for $84 per year - EV for $349 per year. Either way, be prepared to jump through hoops to prove you are who you say you are. EV's are typically issued on a dongle and are a pain. You can automate them to a degree - but not when running from a windows service (ie on a ci server) https://www.finalbuilder.com/forums/t/signtool-with-ev-certificate-fails/6535/22
  7. Vincent Parrett

    Delphi 10.4.2 always recompiling in IDE

    Confirmed - this only happens when Classic Code Insight is enabled.
  8. Vincent Parrett

    Delphi 10.4.2 always recompiling in IDE

    That could be it, I have LSP turned off due to issues, so perhaps it's Classic insight vs LSP that determines whether it occurs?
  9. Vincent Parrett

    Delphi 10.4.2 always recompiling in IDE

    100% reproducible with a new VCL project, no IDE plugins installed.
  10. Vincent Parrett

    Delphi 10.4.2 always recompiling in IDE

    When I saw this post it triggered something that has been bugging me for a while, which is how long it takes to run after I have already compiled - so I watched the exe date time and observed the change - I don't use MMX but thought perhaps it was another (or any) plugin - so I removed them (and confirmed they were gone) before testing again - it's 100% reproducible with my main project - I didn't test with a new project though.
  11. Vincent Parrett

    Delphi 10.4.2 always recompiling in IDE

    I'm seeing this issue here and I do not have mmx installed - I did a full build, waited 1 minute and then hit Run - the exe is most definitely re-linked - oddly the exe size changes each time too. I did have GExperts and your Stefan's uses helper plugin - disabling them made no difference - the exe is still regenerated every time! So this looks like an IDE issue not MMX or any other plugins.
  12. Vincent Parrett

    Delphi and Azure DevOps?

    What integration would you like to see. Not making any promises here but it's much easier to get things right if we know what customers want rather than guessing 😉
  13. Vincent Parrett

    Determining text width

    Anyone know of a better way to determine the width as it would be displayed. Canvas.TextWidth is consistently giving back too a value that is around 15-20% too small. I'm using this in a custom control and have assigned the control's font to the canvas.. all to no avail. I have spent at least an hour searching for answers to this but got nowhere. I feel like I must be missing something obvious?
  14. Vincent Parrett

    Determining text width

    Solved - the font style was being changed elsewhere which was causing TextWidth to return the value for a different font style! 🤦‍♂️
  15. Vincent Parrett

    JCL installation problems in D10.4.2

    This is something I'm working to improve with my package manager project. I would just say I want to install Jcl and it would work that out and install the dependencies etc in the correct order.
  16. Vincent Parrett

    JCL installation problems in D10.4.2

    I'm really not a fan of installers like this either.. and especially not a fan of code that a bunch of different modes/ifdefs that change it's behaviour. I would imagine that would be a nightmare for support - having to first work out how it was installed (with the correct options) before trying to reproduce issues. Jcl/Jvcl has always been too complicated - there are some real gems in there but I tend to avoid them because if you use one unit it pulls in 50 more - delphi being delphi, not everything is optimised away. Granted it's been many years since I last looked at it.. but just looking at that installer is enough make me avoid it.
  17. Vincent Parrett

    VMWare Workstation PRO vs MS Hyper-V

    I have 12 versions of delphi on my dev machine (XE2-10.4.2) all working fine. The trick is managing your system path environment variable.. which the delphi installer still rudely prepends it's entries to.. the result of which can push the path length over 2048 which on some older systems will cause issues with windows. The trick is to not install in the default location and keep the paths as short as possible. This blog post from 2014 always gets lots of views shortly after a new delphi release - I wonder why?
  18. Vincent Parrett

    Bulk change of Manifest settings??

    It's certainly gotten better, but the generated manifest is still missing the Description and AssemblyIdentity (required as per the specs) elements.
  19. Vincent Parrett

    Bulk change of Manifest settings??

    ^^^^ is the answer. There are a bunch of reasons why this is better than using the ide generated manifest file
  20. Vincent Parrett

    Theme updates incomplete

    I have seen this issue with my IDE plugin too... the problem is the IDE is not a normal VCL app when it comes to themes(it uses a custom version vcl themes).. and some controls just don't get told to repaint or that the theme has changed. I wasted a lot of time on this, but it's really an IDE problem. Delphi 10.4 is better with this than 10.3
  21. Vincent Parrett

    Vote for Segoe UI as Default Font opened.

    With Vcl Themes, setting the font on the form in code works (assuming parentfont is set on all the controls). That said, I'm not sure I like Sego UI any better than Tahoma - I think Tahoma has better character spacing which makes it more readable.. especially with smaller font sizes.
  22. Vincent Parrett

    Vote for Segoe UI as Default Font opened.

    Correct, it completely disables dpi scaling. Also doesn't work when using VCL Themes - seems to have zero effect. The Bitmap Style designer allows you to specify fonts for the individual elements, and I tried changing those in my themes, but again, seems to have no effect.
  23. This is a bad idea, should only ever be enabled while developing the package. Having the IDE rebuild packages which will be loaded into the ide isn't a good idea - I touched on rebuild as needed in this post https://www.finalbuilder.com/resources/blogs/advice-for-delphi-library-authors What do you have in your dpk? Don't try ifdeffing in there (the IDE doesn't handle it well), better to create two separate package projects and explicitly add fmx or vcl to the requires clause.
  24. Vincent Parrett

    Find exception location from MAP file?

    I think you should evaluate both and decide which suits your needs best. I've mostly used madexcept but when I have used Eurekalog it's worked fine.
  25. Vincent Parrett

    Several F2084 Internal Error on Delphi 10.4.2

    So far so good. I turned LSP back on, was able to do a full build (100+ projects in the group) - then debug the main project, exit, change some code, compile and debug again. The IDE is using a lot of memory though. Code navigation between projects is still broken for LSP (when only referencing dcp's) - so back to classic code insight it is.
×