The bug where WebFileUploader was adding garbage to the end of an uploaded file was fixed during the 2021R1.1 betas, but appears to have shown up again in the 2021R1.1 release version.
This is a critcal bug and a 2021R1.2 will have to be released to remedy this, as there is no workaround.
Regression testing of prior builds:
Build # : Behavior:
2021 R1.1 (release) : uploaded file is truncated
2021 R1.1 (52913) : uploaded file is truncated
2021 R1.1 (52906) : uploaded file is truncated
2021 R1.1 (52865) : uploaded file is truncated
2021 R1.1 (52841) : uploaded file has trailing garbage
Iām confused by how this happened, as I was testing the betas and thought it was fixed. Weird. In the 2021 R1.1 release version (and prior betas) it looks like the file is getting truncated at 1MB approximately.
Donāt trust just in the file size, get a hash of the file (like sha256 or md5) on origin and check against what you find at destination. Iāve found systems fails in the past with correct sizes but buffer garbage at end (or middle).
somehow this WebFileUploader need a unit test with different browsers and files
with use of checksum validation.
the files() must also processed at UploadFinished because outside they will gone/deleted.
Bump - itās nearly a week later and <https://xojo.com/issue/64552> still shows as āneeds reviewā - @Greg_O_Lone this is a pretty bad regression which corrupts data - it would be good to hear about Xojoās plans to deal with it, hopefully a quick R1.2 release?
The first rule of being a Xojo user: NEVER EVER use a new release to compile a end user app, you have to do all the QA in your software that Xojo does not do, even wait for others to report some problems. Otherwise you will end with broken software on your side without even make changes in your code.
Where did I write anything about releasing an end-user app? . I said, and I am happy to repeat that most of my apps need upload functionality, and I dare to conclude that most people have solutions in mind where they will need a trusted upload functionality as well to solve a customerās problem.
But this plan B doesnāt change my opinion that a viable web solution needs rock-solid upload functionality. But Iām aware as well that it isnāt an easy task to realize. Many programming solutions have and had challenges with this.
I noticed yesterday some interesting behaviour. Code working perfectly fine on macOS and Linux (for small files around 250 KB max and compiled with 2021 1.1). fails on a Window Server in all type of browsers. Compiled the code with release 2021 1 instead of 2021 1.1 and it worked perfectly fine again for those small files (didnāt test for large files).
Side note: It seems the release 2021 R1 is no longer available for download? At least I didnāt found it. I think I remember that Xojo is not keeping hold of older releases when a point release is published, but this might cause some trouble for users in such circumstances. But perhaps I have just overlooked it.