Jump to content


Popular Content

Showing content with the highest reputation on 07/11/19 in all areas

  1. Has anyone heard any more about this yet? The dreaded 1st August deadline is 3 weeks away after which we won't be able to give our Android users app updates should we need to. If things are running according to the last roadmap at EMB, then they're behind and haven't even released 10.3.2 yet let alone the sorely needed 10.4 which is supposed to contain the Android 64 bit work. I'm getting very worried that we might not be able to support our Android users for 3 months while they get a 10.4 beta out. We have 220,000 of them and the thought of not being able to get even an emergency bug fix to them should we need to terrifies me! Surely EMB must be taking this deadline seriously?
  2. Uwe Raabe

    Can GExperts format multiline method definition to single line?

    I filed a feature request for a new sort option to normalize the code while sorting.
  3. Well i was on updating the FastCode "RTL replacement" then. Anyhow that is not my point, if you want to be the leader be my guest! My point is that all these years after FastCode nothing else is done and Microsoft has already made .Net Core open source. At least to me it's a start man to motivate your minds! I'll start to work moving the old FastCode code into this new project and on new Benchmark and Validation tools (on my free time), just follow the repository to see updates. That's all i can do for now. Thank you
  4. Bill Meyer

    Can GExperts format multiline method definition to single line?

    A further thought: Perhaps a command to normalize without sorting class(es)? Resorting the classes would make for some source control issues in future. The normalization of signatures, though it would obviously affect source control, would be relatively minor, by comparison.
  5. Mike Torrettinni

    UltraCode64 for Delphi (aka 64-bit FastCode)

    I have a plan to start with 64bit development in a few months, so I will definitely be available to contribute with testing, bench marking, if needed.
  6. I would consider this to be a Stone Soup. So with minor contributions from everyone, this could really be a great thing. It could of course also go the way quite a few open source projects have gone straight towards oblivion, but I tend to look at things positive. I would be happy to contribute "human readable" content such as installation instructions (something lacking in most other OS projects) and so forth.
  7. dummzeuch

    Can GExperts format multiline method definition to single line?

    No, GExperts can't (because nobody answered that question yet).
  8. Eli M.

    FMXLinux web app deployment

    Updated version. Takes two params. First is the path of the app to run and the second is the port to run it on. Apparently balance only supports 16 (or 32) groups unless you compile it yourself. Example: ./gtkcloud.sh /root/FireMonkeyPaintDemo 81 #!/bin/bash for i in {1..16} do nohup broadwayd :$i & export GDK_BACKEND=broadway export BROADWAY_DISPLAY=:$i $1 & #echo "" done servers="" for ii in {1..18} do let port=8080+$ii servers="$servers localhost:$port:1 %" done echo $servers balance $2 $servers
  9. You might want to do a survey to confirm your speculation on how many developers are still on 32-bit vs 64-bit. I'd be surprised if even 25% of Delphi users are on 64-bit.
  10. Well, we already have the Current RTL for benchmarking. I'll see what i can do tranfering the old FastCode pascal to this project
  11. Arnaud Bouchez

    UltraCode64 for Delphi (aka 64-bit FastCode)

    First step may be to write faster code in pure pascal, with the associated tests. Then add some asm version, and see if it is actually faster. There is already a lot of code in http://mormot.net SynCommons.pas which has faster alternatives than the Delphi version. But two remarks: 1. I wouldn't stick to 64-bit - do why call it UltraCode64 ? 2. FPC compatibility could be very beneficial - as we did for mORMot.
  12. Andrea Magni

    FireDAC Connections

    Hi @Stuart Clennett, I am happy you found a way to solve by yourself while I was in vacation 🙂 Your solution works but has a couple of things to consider: 1) that BeforeHandleRequest code gets executed for each incoming request (performance) 2) manipulating Parameters is not suggested as App.Parameters is like a global object (IIRC). You have an other opportunity through (yet another) undocumented MARS feature: [Context, Connection('Dynamic_MyConnection', True)] FD: TMARSFireDAC; The Connection attribute specifies the name of the connection definition to be used with the TMARSFireDAC instance injected. The name supports macros (the second argument enables macro expansion). You can rely on built-in macros (i.e. using some part of the token, params, username or similar things. A list is available here: https://github.com/andrea-magni/MARS/blob/a8d323558bd591589ef667eac326324302d167a9/Source/MARS.Data.FireDAC.pas#L528 ). Last chance of the macro-expander is looking for custom providers. You can register your own in the initialization of one of your units or in the Server.Ignition.pas file: TMARSFireDAC.AddContextValueProvider( procedure (const AActivation: IMARSActivation; const AName: string; const ADesiredType: TFieldType; out AValue: TValue) begin if SameText(AName, 'Dynamic_MyConnection') then begin if Odd(SecondOf(Now))then AValue := 'OddConnection_' + AActivation.Request.HostName else AValue := 'EvenConnection_' + AActivation.Request.HostName; end; end ); Beware: the connection name has to be this format: [PREFIX]_[SUFFIX](_[OTHER_SUFFIX]) Using 'MyConnection' won't work for instance... Pros of this approach: 1) code is executed only when needed (when the TMARSFireDAC instance gets created to be injected in your resources), all others REST endpoints won't be affected. 2) it seems more isolated to me (but this can be a personal evaluation). If you need to fix some TFDConnection instances on your datamodules, try having a TMARSFireDAC instance injected in the datamodule itself and use the FD.ConnectionDefName (already expanded once injected) to fix the ConnectionDefName of your components (OnCreate event of the datamodule should be fine, or AfterConstruction method as well). If you encounter troubles doing this, write here again: there's another hidden feature for you to fix this (when registering the datamodule as resource you can specify an anonymous method to initialize it or to call a custom constructor instead of TDatamodule.Create(AOwner)). Sincerely, Andrea