-
Content Count
616 -
Joined
-
Last visited
-
Days Won
16
Posts posted by Darian Miller
-
-
Last time I tried his, it worked for me, but it's been a while.
Note: please vote for a SonarSource supported plugin here: https://community.sonarsource.com/t/add-delphi-language-support/5492/15
I believe we have more votes than any other new feature request. But last time I contacted their CEO, he said "it wasn't on the roadmap for now". Maybe if we get enough votes that will change his mind...
Darian
-
Hopefully next year for me.
-
On 10/4/2019 at 10:00 AM, Darian Miller said:What I have been considering building is a resource for every hotfix for every version, listed in order. Today it's a mess to try to go back and figure out how to properly install an older version and get all updates. I am waiting until their new EDN portal is released - hopefully they will have that ability built-in.
I had this idea brewing for a bit, so while working on another project, I put together some info on 10.3+ in a Github Wiki as a start. Since a new EDN portal is coming with 10.3.3, perhaps this won't be needed to be populated for older versions....I might do so if the EDN portal is underwhelming, or if I just want all the info in one place and I have more time:
https://github.com/ideasawakened/DelphiKB/wiki/Delphi-Master-Release-List
-
2
-
-
10 hours ago, Stefan Glienke said:Everything that DUnitX does can also be achieved using DUnit
Including FMX client screen testing and full mobile compiler support?
-
41 minutes ago, Vincent Parrett said:The readme is a bit out of date, embarcadero did contribute some changes to make it work on mobile and linux.
Thanks. I obviously didn't dig too deep... started a new Unit Test project and selected platform and there was Win32/Win64/MacOS platform options only. I'll definitely dig in deeper! Thanks
-
Related: Jolyon has some recent articles on his blog, and a new SmokeTest 2.0 tool on GitHub: https://github.com/deltics/deltics.smoketest
He's apparently currently building a whole new set of tooling for Delphi 7-10.3, including a Nuget for Delphi: http://www.deltics.co.nz/blog/
-
3 hours ago, David Heffernan said:What would be platform specific about a unit testing library?
There are plenty of differences beyond basic code checks... File I/O, socket implementation, authentication, database drivers, etc. Also - many people test GUI interactions with DUnit which is VCL based. There needs to be a FMX based version.
Then you have the whole interaction with running tests on a different system than what you are developing on and providing feedback to the developer. Then of course you'd want to run all the tests automatically with Jenkins or some other tooling so now the C/I system also needs to build/run/report/monitor tests on different platforms. You should also be running tests across different versions of each platform.
I assumed that there was a solution for actual cross platform testing for Delphi.
I did find this today: https://sourceforge.net/projects/dunitfmx/
Project description: "DUnit translation to FMX and Mac OS X" with an additional note: "When project finish, it shall work for run unit test in Windows and Mac OS X. And of course for Android and IOS too."
But this repo hasn't been updated in 5 years.
I started building my own custom tooling and the more I sketched it out, the bigger the project got so I thought I'd pause and post a simple question to see what sort of responses I'd get.
-
1
-
-
Just now, Wagner Landgraf said:The thing here is that you don't have UI for the test runner. You can compile and run all your tests, but to gather information about the results, then you have to use custom output. Well, for Linux you can use the console output. For Android/iOS, I've built a custom one myself where I send test results through TCP to a VCL client in another computer.
But there are great tools out there, I believe TestInsight from @Stefan Glienke might do the job for you: https://bitbucket.org/sglienke/testinsight/wiki/Home.
Well, that's what I was getting at... full support isn't built-in.
Do you test FMX client applications on Android this way?
-
Also related, DUnitX says
Cross platform currently supporting:
- Win32,Win64 and OSX Compilers.
-
1 minute ago, Wagner Landgraf said:Yes.
Is there FMX support for client-side testing? I must have missed something obvious - wouldn't be the first time. Can you share a simple test project for all platforms?
-
Just now, Wagner Landgraf said:DUnit works on all supported Delphi platforms.
Do you use it today on Linux/Android/iOS?
-
5 hours ago, David Heffernan said:Surely all the widely know unit testing libraries are cross platform.
Cross platform, as in Win32/Win64 sure...
-
5 hours ago, Ondrej Kelle said: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.
From what I understand, DUnit is Win32/Win64/MacOS 32-bit only.
-
15 hours ago, Arnaud Bouchez said:But it is mostly about server-side process and Win32/Win64 for Delphi.
It is cross-platform (Win, BSD, Linux, i386/x86-64/arm32/aarch64) for FPC.Any plans to support more platforms in Delphi? I don't use FPC at all.
-
Which tool(s) are you utilizing for unit-testing code to be used across all platforms?
-
As long as you repeat them in the right order, I assume it work out fine as you will end up with all updates. But, it also might be a good opportunity to rebuild from scratch.
What I have been considering building is a resource for every hotfix for every version, listed in order. Today it's a mess to try to go back and figure out how to properly install an older version and get all updates. I am waiting until their new EDN portal is released - hopefully they will have that ability built-in.
-
2
-
-
AFAIK, since some patches are manually installed (files copied to a folder), currently there's no automated way of knowing if you have all the patches installed. Use this list of patches and go through each one to manually verify:
I imagine someone could write a tool to scan your installation and tell you which patch level you are at...
-
2
-
-
On 6/20/2019 at 4:28 PM, Dmitry Arefiev said:BTW, the test suite in above link is 98% successfully passed by 10.3.1 System.JSON. From 7 failing tests, 3-4 may be considered as a "feature" ...
So when the test suite was executed, were the other 3-4 issues documented as problems to be fixed in System.JSON?
-
I wonder how many patches 10.3.2 can produce? This seems like one for a patch!
-
I've been using Delphi in a VM for a number of years utilizing VMWare Workstation and I believe it runs really well. It sounds like a VMWare settings / allocation issue.
Couple pointers:
- Do not utilize 'thin-provisioned' disks. Pre-allocate the assigned space otherwise you'll get sporadic speed issues as the disk increases in size.
- Exclude the directory on the host machine where your VM files are stored from realtime AV scanning. If you cannot exclude a specific folder (like McAfee), get a different AV.
- Don't try to assign too much RAM to the VM. Test scaling it back from 12GB to 10 and then 8. I have 64GB RAM in the host and only allocate 8GB to my Delphi VM.
- Use SCSI virtual disks
- Display: Accelerate 3D Graphics + assign a decent amount of graphics memory (1GB)
- The more snapshots of a VM, the worse the performance seems. Make physical backups instead and get rid of your snapshots.
- I periodically defragment the virtual disks within VMWare (https://docs.vmware.com/en/VMware-Workstation-Pro/15.0/com.vmware.ws.using.doc/GUID-BD914064-D20D-4032-9373-88F4DA7AE7C6.html)
Some items I don't use, not sure on the performance benefit
- Don't use the built-in Shared Folders
- Don't use the built-in auto-protect
- Don't sync time with host
If you can swing it - use NVMe disk instead of SSD.
-
2
-
1
-
-
18 hours ago, John Kouraklis said:Noone; but sadly common sense and logic are what modern managers miss big time.
Yes, if you are in Silicon Valley and in your twenties...
I strongly believe that it's something for everyone to consider. I'm 50-something in the MidWest and left my well paying job early this year for similar reasons. (I 'fired' my employer.) It's also related to a basic rule in life: Never work a job that you don't like. Think of the percentage of your life which is spent at/on work related activities, and if you aren't enjoying it and/or cannot stand the choices management is making and it's eating at your soul, then it makes no sense to stay there. Now, you certainly will always have minor annoyances, as no job is going to be perfect. And you may have to take a shit-job on occasion for special circumstances for a limited time, but it's a general rule that I've preached all my life (as my father before me.) If you are in a job that you don't like, declare it as a shit-job that's allowed to continue for a limited amount of time and find an alternative. I loved the vast majority of my previous job (and certainly disliked some parts) and I would have stayed, however the new private-equity installed board handcuffed me and my team where I simply couldn't do my job so I had to leave. I certainly have a distaste for private-equity types like the ones that have purchased Delphi and massively cut the R&D staff. They actually believe they can rely on cheap foreign developers for most of the work and the quality which is being produced today should provide ample proof that their plan is seriously flawed. But, they'll keep plugging away as the numbers likely look better with the much lower costs. And meanwhile we'll get repeated bad installs, required hotfixes after every single release (2 more today!), long-term infrastructure failures that should be a career embarrassment for everyone involved, platform support always putting out fires, and less and less core reliability. That's certainly not a successful long-term plan - so I assume their plan is to sell after showing large increases in bottom line due to all the cuts.
But back to the job issue - I think it would be better to work for yourself. I'll never have another boss again. I ran my own side business for 7 years and sold it after the Great Recession was over so I could concentrate on my corporate job. Running your own business is not for everyone though as you have to be able to manage the risk.
-
1
-
-
4 hours ago, John Kouraklis said:This is rarely a good career move
Sorry, I'm a Right is Right type person. Who wants to work for management that doesn't listen to logic? Better for your career to leave... You can put up with losing some battles, but to stay and watch them gut the place would be extremely difficult.
-
1 hour ago, FredS said:OK, but there is that 'other' stuff, you know 'GetIt' the flagship library management system down for nearly a month now.. well I don't want rub salt in it but at some point some bean counter will ask why the shop using C++Builder can't build an Android app...
Totally agree. It's all related to short changing the infrastructure and R&D budgets in order to 'save money' which in actually costs them a lot more than what they are 'saving' - it's just harder to calculate so the guys running their spreadsheets don't put it in.
-
2 hours ago, FredS said:"Kick the can" comes to mind..
"Paying the piper" comes to mind. They cut R&D too deeply and will suffer the consequences. Sometimes you have to tell the money people NO. You always need someone on staff that has the cojonnes or influence to do the right thing versus the least expensive thing.
-
3
-
SonarCube Plugin for Delphi
in Delphi Third-Party
Posted
If you would commit to some spending some money on their commercial version, the SonarSource guy might be worth a contact to help push things along. Olivier Gaudin, CEO/Co-Founder. (first.last@sonarsource.com)
Too many people directly pleading for a free add-on would likely diminish the cause, but if there is money to be gained behind the suggestion, then it would probably help.