Jump to content

Ondrej Kelle

  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by Ondrej Kelle

  1. There's an option of running WebAssembly via ChakraCore. I've blogged about it here: WebAssembly with Delphi and ChakraCore. There's source code for Delphi 7 or higher and Free Pascal 3.0.4 or higher. It should be possible to use V8 or SpiderMonkey in a similar way. I haven't tried this. I also know of some WebAssembly runtimes like wasmtime and wasmer (these two are both written in Rust) but unfortunately their C-style API is still incomplete (even the API spec itself is still work in progress)...
  2. Ondrej Kelle

    git and Delphi tooling?

    I've found this way: In the Explorer view, open your working copy file In the File History view, right-click on the first commit in your range, select "Select for Compare". Still in the File History view, right-click on the last commit in your range, select "Compare with Selected"
  3. Ondrej Kelle

    git and Delphi tooling?

    Recently, I also find GitLens extension for VS Code quite useful.
  4. Ondrej Kelle

    git and Delphi tooling?

    I find TortoiseGit useful. It's a Windows Explorer extension, similar to TortoiseSVN which you might know already.
  5. The new experimental/variants branch of chakracore-delphi introduces some experimental support for Variants... Read more on my blog
  6. Ondrej Kelle

    Variant support in chakracore-delphi

    Also, it already has Delphi and Free Pascal bindings: https://github.com/Coldzer0/QuickJS-Pascal
  7. Ondrej Kelle

    Variant support in chakracore-delphi

    It's interesting. Thank you!
  8. Ondrej Kelle

    Variant support in chakracore-delphi

    Thanks! You can read about their future plans here on the GitHub repo: Version 1.12 plan Overall plan I think the current ChakraCore is still very nice if you need a high-performance scripting engine with JIT and GC embedded in your desktop application (with support for Windows, MacOS and Linux) and if ES6/partial ES2017 language support is sufficient for you: here are the compatibility tables . It depends on whether you need to support the evolving ES standards and if the opensource community can provide new features. Also, security fixes - IIRC, Microsoft plan to provide them until March 2021.
  9. Ondrej Kelle

    Delphi AES encryption/decryption

    Also, CryptoLib4Pascal (MIT license)
  10. Ondrej Kelle

    Looking for Icon Fonts support in Delphi for High-DPI and Themed app?

    If you wanted to avoid the requirement of having the fonts installed globally in Windows you could write a design package with the fonts linked in as resources. The package, when loaded by the IDE, could load the fonts from the resources (using the code shown by @Attila Kovacs) and call Screen.ResetFonts to signal the IDE to reinitialize its font list . After that the fonts would be available to the IDE.
  11. Great news from Dalija Prasnikar! Thank you! https://dalijap.blogspot.com/2020/03/unified-memory-management-coming-with.html
  12. Ondrej Kelle

    Setting a "nullable" property on a .NET object

    The problem, I think, is that .NET's Nullable is a generic type and as such can't be exposed to COM.
  13. Ondrej Kelle

    class designation question

    Thanks! I think you're completely right and off-topic to the question. πŸ™‚
  14. Ondrej Kelle

    class designation question

    The first is a class reference (metaclass), the second is a type declaration (class).
  15. Ondrej Kelle

    TWebModule response content truncated before return

    Simple assignment to Content should be sufficient: Response.Content := doc.XML.Text; This will both encode the incoming string value and set ContentLength automatically. (See TISAPIResponse.SetContent in Web.Win.IsapiHTTP.) In your case the encoded stream was longer than the original text, e.g. due to insertion of escape characters. By setting ContentLength explicitly you have effectively truncated the encoded stream.
  16. Ondrej Kelle

    [Macos, APFS, VmWare] Shrinking VM images

    Also see Sysinternals sdelete -z: -z Zero free space (good for virtual disk optimization).
  17. Ondrej Kelle

    Unit testing cross platform code

    DUnit for Delphi, fpcunit for FPC, one source code for the tests as they are largely compatible, you only need to conditionally compile with the right uses clause. There's an example of that in chakracore-delphi.
  18. Ondrej Kelle

    Add aΒ system-menu item to all applications?

    SetWindowsHookEx is one of the ways of 'injecting code' on Windows. Documentation: " SetWindowsHookEx can be used to inject a DLL into another process."
  19. Ondrej Kelle

    Resolve a uses clause unit path?

    I apologise, no flame intended πŸ™‚ Was that a reply to me? It's not terribly important - but do you disagree with the fact that the code was posted in 2009? πŸ™‚ Just curious. I wish you a nice Sunday. πŸ™‚
  20. Ondrej Kelle

    Resolve a uses clause unit path?

    I'm not surprised - it's 10 years old. πŸ˜‰
  21. Ondrej Kelle

    Resolve a uses clause unit path?

    Some pointers can also be found here.
  22. Ondrej Kelle

    his control requires version 4.70 or great of COMCTL32.DLL

    I would guess probably something from ComCtrls.
  23. Ondrej Kelle

    Dark mode Blue Balls tweaking

    In case the blue ball image is linked into one of Delphi's binaries as a resource it might be possible to use a resource editor to replace it with your own.
  24. Ondrej Kelle

    Jedi - Git => SVN?

    It should also be possible to use branches and commit, according to their article: Support for Subversion clients.
  25. Ondrej Kelle

    How do you deal with git conflict annotations added to DFM files

    In case of lack of authority, proceed with slapping until the desired level is achieved. πŸ™‚