Jump to content

Darian Miller

Members
  • Content Count

    559
  • Joined

  • Last visited

  • Days Won

    12

Everything posted by Darian Miller

  1. Amazon S3 bucket. You can setup lifecycles to auto-delete data > 30 minutes.
  2. Darian Miller

    Prevent OnClick to be handled twice

    Note: once you start down this path of customizing basic component behavior, it's best to derive a custom set of components. Derive your own component from TButton and reuse whatever custom code that ends up working out for you. You may find yourself with a custom version of all the basic components and you'll end up with customized behavior controlled in a central location. Whatever happens, please don't copy-n-paste this code into 27 different Click events throughout your app...
  3. Darian Miller

    Prevent OnClick to be handled twice

    Managing multiple clicks is a common issue that offer many solutions...one simple way around it is the following code: procedure TUButton.Click; begin TUButton.Enabled := False; try //do stuff except on E:Exception do begin //handle errors end; TUButton.Enabled := True; end;
  4. Darian Miller

    Refactoring issue in 10.4.2 re: Rename

    The RADStudio tooling still has a ways to go in order to catch up to the new inline variable language feature (first introduced in November 2018.) IMHO complete support for the language feature should have been available before its full release as I believe releasing it half baked was a waste of a lot of goodwill. At minimum, it should have been a user-enabled optional experimental feature. Last time I checked, some issues remain: RSP-32507 Inline variable breaks the Methods drop-down box in Navigation Toolbar RSP-33176 Extract method refactoring broken by inline var definition RSP-33365 In-block variables break the "Find references" RSP-23096 Incorrect debugger values RSP-22089 Code Formatter Fails on Inline Vars
  5. Darian Miller

    upcoming language enhancements?

    True, but modern vs historical is appropriate in the particular sense that they likely have not adequately evolved their internal systems over time while the complexity of the product has skyrocketed. They seem to be trying to develop/test/release the 28th version of Delphi similar to how the 12th version was built. They appear to be slowly improving the internal tooling but it needs a major upgrade. Iterative releases, feature toggles, community empowerment and transparency, etc. - simply a long way to go. They are (mostly) out of the 90's (EDN still online?) now need to speed through the 2000's and 2010's and get current. Retooling their online presence seems to be happening. Hard to see the progress on internal operations though. They seem to be attempting to improve releases through sheer grit rather than appropriate increases in resources. That approach only goes so far before the people burn out and that really sucks as the equity decision makers typically don't care about people - but success in development projects is usually based on keeping the right people. (Fatal flaw with private equity types and development projects...innovation is typically not found in the board room unless your name is Elon.)
  6. Darian Miller

    upcoming language enhancements?

    To their credit, the complexity of today's Delphi greatly eclipses a Borland version. I also wonder what the team size of internal experts is today is versus then.
  7. Darian Miller

    upcoming language enhancements?

    Agreed. They are in the hard situation where they need to quickly release the bug fixes from prior releases that customers are demanding, but also trying to extend or replace old functionality which introduces a slew of new bugs. I spent years digging out of a very deep hole like that... it's not fun.
  8. Darian Miller

    upcoming language enhancements?

    I imagine if you asked today, you would get access before the week is out and have time to play with the beta before it gets released. No one really knows the expected release date (probably most at Embarcadero don't even know yet) ... but you can make an educated guess. Their current sale ends August 31 and last year 10.4.1 was released September 2 and their latest marketing says to "buy now and get the next version as soon as it's released." There's nothing saying they couldn't ship RADStudio 11 tomorrow, but if you have a little free time to test the Beta, it might be worth your time and you just might find a bug or two that can get fixed before release to make the version even better. I haven't had time to test the Beta much myself yet so I don't know how close it is. I was hoping to find some time this week. My wish would be that it wouldn't ship until it's actually ready...even if that means next year and we keep patching 10.4.2 until then.
  9. Darian Miller

    upcoming language enhancements?

    The 10.5 info is still applicable. (But now version 11) How much of this actually gets released into the next version is debateable. (And how much that is released is actually usable without having to wait for a patch or two.) Anticipated New Features 10.5 Delphi Language Extensions Consolidation of multiple debuggers Improved Delphi language support for LLDB Math Performance Improvements "Significant work" around high-DPI support in IDE, target of "Full" HighDPI support VCL Style support in the designer FireMonkey Designer improvements Fill in missing features like alignment guides Multi-developer productivity IDE Onboarding Experience Improvements to the IDE source control integrations Command-line tools installer for Windows Intended for build-server targets (no longer need full IDE on build server) C++ Visual Assist support C++ new Win64 Linker New target platform: macOS ARM (based on Apple Silicon CPUs) Quality focus areas: VCL FireMonkey C++ Toolchain Delphi Compiler Data Connectivity RAD Server
  10. Darian Miller

    upcoming language enhancements?

    This future releases page has everything I know about RAD Studio 11 (formerly known as 10.5) that can be said publically. https://github.com/ideasawakened/DelphiKB/wiki/Future-Releases-for-RAD-Studio-and-Delphi Otherwise, join the beta to see what's "coming soon"
  11. Darian Miller

    multi-threading question

    You seem to have two main goals - do a little work after each thread completes and coordinate a bigger task once everything is done. When each thread completes you could fairly easily post a user defined windows message and have the form update the state when the message is received. For the second, more complicated synchronization issue of waiting on a varying number of threads to complete, since your total count is under 64 you could go with WaitForMultipleObjects as previously suggested. However, if your thread count might rise above that fixed limit, you may want to consider utilizing TCountDownEvent for this second task instead. Here's a blog post on it: https://www.ideasawakened.com/post/test-driving-delphi-s-tcountdownevent with corresponding example code on GitHub.
  12. Darian Miller

    macOS missing redist OSX64 folder

    Some persistent problems with the installer and the \redist\ folder https://quality.embarcadero.com/browse/RSP-30852 https://quality.embarcadero.com/browse/RSP-33640
  13. Darian Miller

    VMWare Workstation PRO vs MS Hyper-V

    I'll keep your products in mind, thanks!
  14. Darian Miller

    How and when install the Patches.

    There recent patch links are listed here: https://github.com/ideasawakened/DelphiKB/wiki/Delphi-Master-Release-List The pages for the 10.4 patch #2 and #3 each contain a link to a how-to-install blog post from Embarcadero
  15. Darian Miller

    VMWare Workstation PRO vs MS Hyper-V

    VMWare Workstation Pro took out the shared VM / auto-start feature in 16.0 but added it back for 16.1 after a ton of complaints. The feature is marked as deprecated but they may be adding a new way to auto-start VMs in a future version.
  16. Darian Miller

    Several F2084 Internal Error on Delphi 10.4.2

    And now a patch for 10.4.2 is released!
  17. Darian Miller

    Several F2084 Internal Error on Delphi 10.4.2

    Its kinda sad that there aren't even any notes on that particular issue...which was opened in 2018. The problem is too deep into their legacy code to even attempt a fix. I don't come up against that particular issue as I wouldn't re-use the same variable name within the same routine. It's definitely a cost-benefit question on fixing it...how many people care about this particular issue, or say formatting the code or extracting a method which is likely done multiple times per coding session. But thanks, I'll add it to my list of reasons why not to use inline variables. https://github.com/radprogrammer/radteam/wiki/RADProgrammer-Style-Guide-Other-Guidance#Assume-These-Items-Are-Deprecated
  18. Darian Miller

    Several F2084 Internal Error on Delphi 10.4.2

    I listed 4 separate QC issues (32507, 33176, 33365, 22089) and there are likely a number more. And yes, refactoring and code navigation is important. And of course, code formatting is also very important. CTRL-D needs to work so you can write code while in the groove and let it flow and then standardize/clean-up as needed during a break. I don't want to waste brain cycles on mundane tasks like fixing the spacing and alignment after editing / refactoring but I do want to try to have standardized code. CTRL-D mostly works great for my uses- but it simply cannot handle inline variables. (CTRL-D is broken for other reasons, but none that affect me as much.)
  19. Darian Miller

    Several F2084 Internal Error on Delphi 10.4.2

    I agree that it's not doable to be fully comprehensive, but there are some major issues people should be aware of for each version. What might be useful is a list of major function topics and warnings next to each. For example, inline variables were introduced in 10.3 but should still be avoided as their usage breaks tooling. (32507, 33176, 33365, 22089) Another issue for those that rely on IDE Fix Pack would be a warning that's its not available for 10.4 but by 10.4.2 many features have been implemented. I remember being stuck at XE2, but I no longer recall what was broken in XE3 which preventing me from upgrading. We are currently in the seemingly never-ending chase of requiring to use the latest version for bug fixes, but the latest version always adds new issues. We end up with developers 'stranded' at particular versions because of major issues that they are waiting to be resolved. Eventually the perceived pain of upgrading accumulates until such time as someone decides to 'abandon ship' and switch to a different solution. This thread is an example - 10.4.2 follows with even more bug fixes than the 'quality' focused release of 10.4.1 and yet, two months after release, some people cannot use the product due to internal errors. I wonder how many developers thought that their specific pain points were finally addressed and they would upgrade to 10.4.2 and then got smacked in the face with this particular issue and finally raised the white flag (especially after waiting for months now.) For me 10.4.2 is their best release in a long while. But I'm also no longer managing complex projects with many millions of lines of code so I'm not running into this particular showstopper. However, I would really like to use inline variables, but until they fix the issues surrounding them (including the code formatter) then I refuse to use them. I assume the code formatter might be upgraded in the 10.5 release cycle and it'll take until sometime into 10.6 before it's solid so I assume inline variables are dead to me until sometime in 2023, or later. That's not intended as a slam, it's simply a reasoned forecast. Therefore it comes down to a new language feature being introduced in 2018 and forecasted to be potentially usable in 2023. Saying that out loud makes me sad and question my life choices...
  20. Darian Miller

    Several F2084 Internal Error on Delphi 10.4.2

    That would make for an interesting resource... a list of every recent Delphi version and what major problems each of them has for users to be aware of and suggested work arounds, if available.
  21. Darian Miller

    Delphi 10.4.2 Professional

    You can get a new Model M online: https://www.pckeyboard.com/page/product/NEW_M Classic: https://www.pckeyboard.com/page/product/UNI041A
  22. Darian Miller

    VCL Handling of dpi changes - poor performance

    I used the LockWindowUpdate(Handle) on BeforeMonitorDPIChanged and LockWindowUpdate(0) on AfterMonitorDPIChanged + set ParentFont := True in child controls and it helped me with this issue. (A gigantic delay was reduced to a huge delay.) I haven't checked out this repo in a while - does it help 10.4.2 at all? https://github.com/rruz/vcl-styles-utils Now that IDE Fix Pack is mostly integrated, I hope VCL Styles Utils would be another repo that was really nice to have to fill in gaps, but is no longer needed.
  23. Darian Miller

    community.embarcadero.com's forums

    Interesting... how much data are we talking? Could it be posted somewhere for download?
  24. More expansion into the Dev space by Idera https://www.businesswire.com/news/home/20210302005147/en/Idera-Inc.-Acquires-PreEmptive-Adding-Security-Tools-Trusted-by-Fortune-500-Businesses-to-DevOps-Business-Unit
  25. Have you tried in-memory datasets? There's one included with Firedac. If you are manageing multiple lists of 10,000 records and indexed dataset might be worth adding to your speed test.
×