While most of our uploads successfully make their journey through the world wide web, we sometimes lose one along the way.

That's because the web is a dangerous place, and things frequently get lost in between routers and ISPs, leading to those connections timing out. And of course, some people are just unlucky with the uplink speed of their home connection, so they end up closing the browser tab impatiently.

We try to help with the latter by providing upload progress information across all browsers, so that folks can estimate the required time, and do something else in the meanwhile. And that seems to work pretty well, so far only 1.7% of our uploads were aborted or timed out on us.

However, up until now we were unable to detect at which point an upload goes stale, so we kept showing the 'ASSEMBLY_UPLOADING' status forever. That obviously sucked, so we finally did a little work on our handcrafted upload parser, and we are now able to detect those unfortunate uploads and mark them as 'REQUEST_ABORTED'.

Going forward we will also detect the difference between uploads timing out, and people closing their browser tabs. However, we need to land a patch in the Node.js core first.

We also marked all previously stalled uploads as 'REQUEST_ABORTED' on our website.