scratchfoundation / scratch-gui

Graphical User Interface for creating and running Scratch 3.0 projects.
https://scratchfoundation.github.io/scratch-gui/develop/
BSD 3-Clause "New" or "Revised" License
4.46k stars 3.56k forks source link

Make "Project could not be saved" more explicit #5657

Open Ascor8522 opened 4 years ago

Ascor8522 commented 4 years ago

Quite a few users have been complaining on the forums their project could not be saved when using the online editor.

I suspect it is a problem with their internet connection. You have no idea how unreliable the French internet in the countryside may sometimes be.

When trying to save a project using the online editor while being actually offline (internet connection cut off), the message "Poject could not be saved" pops up, but doesn't give any other information why it could neot be saved.

This is, of course, only the case in the online editor, and not Scratch Desktop.

Expected Behavior

There should be a way to inform the user he is actually offline.

One of the best way to do that would be a banner on top of the editor or a red/green label in the main menu bar i.m.o.

The banner appears when becoming offline and stays until back online or dismissed by the user. image The banner when back online. image

These event can be listened to with JavaScript with the builtin browser API.

window.addEventListener('online',  updateOnlineStatus);
window.addEventListener('offline', updateOnlineStatus);

Actual Behavior

no way to know you're offline. You just see your project can't be saved when trying to save.

Steps to Reproduce

Create a project while being logged in (in order to try to save it). Cut off your initernet connection. Can be don in the Networking tab in the browser dev tools. Try to save your project.

Operating System and Browser

any.

qucchia commented 4 years ago

It would also be useful if the editor told you when the project was too large to be saved online or when you were logged out.

BoomerScratch commented 4 years ago

It would also be useful if the editor told you when the project was too large to be saved online or when you were logged out.

There is a topic on the scratch forums suggesting that. (about the size limit)

ntlrsk commented 4 years ago

I am seeing the error "Project could not save." over the past week even on small new projects, on my account (on my own today again a few times) and I saw on someone else who was sharing their screen. This was from today on my account: image In this case -I think it's network issues perhaps on the Scratch side, because I haven't had any other network issues. And when I was watching someone else's screen we were connected on video chat with no problems.

ntlrsk commented 4 years ago

Might it be because of increase in network load? Would it make sense to have this warning appear less often?

BoomerScratch commented 4 years ago

I am seeing the error "Project could not save." over the past week even on small new projects, on my account (on my own today again a few times) and I saw on someone else who was sharing their screen. This was from today on my account: image In this case -I think it's network issues perhaps on the Scratch side, because I haven't had any other network issues. And when I was watching someone else's screen we were connected on video chat with no problems.

The problem is COVID-19. More people got onto Scratch, and the servers slowed down, because the servers need to handle more requests. The Scratch team tried a lot to make the servers faster. image The servers slowing down is temporarily. When coronavirus is over, the servers should speed up again.

Ascor8522 commented 4 years ago

Still, the popup should give more information on why the project could not be saved. Is it due to:

BoomerScratch commented 4 years ago

I have created a userscript that shows the user when you are offline. 4a1db914-2c07-46fa-9a58-2d809a75afd4 (online-video-cutter com) Sadly, it does not say "You are back online", and it can not be dismissed (only if the user is back online). Install by clicking here. (you are allowed to share userscripts on GitHub, right?)

apple502j commented 4 years ago

Note: currently asset server raises 503 if the asset was too large to save. This should be changed to 413 so that we can show correct errors (otherwise the user may encounter "the asset is too large" error when actually the Scratch is in maintenance mode!)