YoYoGames / GameMaker-Bugs

Public tracking for GameMaker bugs
26 stars 8 forks source link

Startup: Logging for various RSS functionality should be consistent and always clarify which feed #5531

Open YYDan opened 7 months ago

YYDan commented 7 months ago

Description

Looking into a web caching issue with our RSS feeds at the moment, it has become clear that by default (verbose logging off), we have inconsistent logging for our various RSS feed operations and the wording is incorrect for some of it.

IDE Feed

We do not have a LoadingState for this phase. We do not actually log anything for the web calls or a line saying that we're downloading a file and where it's being saved. We simply log the result of checking the feed and whether we need to update or not:

[11:14:38:492(4e1e)] LoadingState: BeginUserLogin
[11:14:38:496(4e1e)] LoadingState: UserLogin
[11:14:38:638(4e1e)] Current assembly revision is 2024.400.0.541
[11:14:38:650(4e1e)] Update found - got 144 items
[11:14:38:651(4e1e)] Latest revision 2024.400.0.540 found
[11:14:38:652(4e1e)] We do NOT need to update

And, as the below shows, we do this check before creating/re-creating GM's temp folder:

[11:14:38:801(4e1e)] LoadingState: Preferences
[11:14:38:824(4e1e)] Creating temp directory C:\Users\dan.cleaton\AppData\Local\GameMakerStudio2-Beta\GMS2TEMP
[11:14:38:837(4e1e)] LoadingState: CheckingRSS

Runtime Feed

We do have a dedicated LoadingState for this one, however it's not clear that it's only the runtime being checked during this phase:

[11:59:44:566(cb13)] LoadingState: CheckingRSS

And that's all the logging for the runtime. We do not actually log anything for the web calls or a line saying that we're downloading a file and where it's being saved. There is no "we need to update"/"we do not need to update" check.

Manual Feed

[11:59:44:910(cb13)] LoadingState: DownloadManualRSS
[11:59:44:930(cb13)] Download File C:\ProgramData/GameMakerStudio2-Beta/Cache/runtimes\runtime-2024.400.0.562\692eb298update-manual-beta.rss to https://gms.yoyogames.com/update-manual-beta.rss

We do have a LoadingState and it is clear what's happening. We log the web call and the save location (although, the values are reversed and so the wording should be fixed). You can see that the manual feed is being downloaded to the current runtime's folder, rather than a general folder, which might trip up some AV clients (as it's typically the runtime folders that users have to whitelist if they have problems).

Splash Screen

As as result of all of the above, when the Splash Screen shows that we're Checking RSS, this is only talking about the runtime feed and we don't show anything for the other feeds:

image

Expected Change

For all three feeds to be consistent in their logging and also for GM's TEMP folder to be the location the feeds go into, rather than a runtime folder.

E.g., this copy/paste mock-up:

[11:14:38:492(4e1e)] LoadingState: BeginUserLogin
[11:14:38:496(4e1e)] LoadingState: UserLogin
[11:14:38:801(4e1e)] LoadingState: Preferences
[11:14:38:824(4e1e)] Creating temp directory C:\Users\...\AppData\Local\GameMakerStudio2-Beta\GMS2TEMP
[11:14:38:496(4e1e)] LoadingState: CheckingIDERSS
[11:14:38:638(4e1e)] Current version is 2024.400.0.541
[11:59:44:930(cb13)] Download file https://gms.yoyogames.com/update-ide-win-Nubeta.rss to  C:\Users\...\AppData\Local\GameMakerStudio2-Beta\GMS2TEMP\692eb298update-ide-win-Nubeta.rss
[11:14:38:650(4e1e)] Downloaded RSS file - got 144 items
[11:14:38:651(4e1e)] Latest revision found is 2024.400.0.540
[11:14:38:652(4e1e)] We do NOT need to update
[11:14:38:837(4e1e)] LoadingState: CheckingRuntimeRSS
[11:14:38:638(4e1e)] Current version is 2024.400.0.541
[11:59:44:930(cb13)] Download file https://gms.yoyogames.com/update-runtme-Nubeta.rss to  C:\Users\...\AppData\Local\GameMakerStudio2-Beta\GMS2TEMP\692eb298update-runtme-Nubeta.rss
[11:14:38:650(4e1e)] Downloaded RSS file - got 144 items
[11:14:38:651(4e1e)] Latest revision found is 2024.400.0.540
[11:14:38:652(4e1e)] We do NOT need to update
[11:59:44:910(cb13)] LoadingState: CheckingManualRSS
[11:14:38:638(4e1e)] Current version is 2024.400.0.541
[11:59:44:930(cb13)] Download file https://gms.yoyogames.com/update-manual-beta.rss to  C:\Users\...\AppData\Local\GameMakerStudio2-Beta\GMS2TEMP\692eb298update-manual-beta.rss
[11:14:38:650(4e1e)] Downloaded RSS file - got 144 items
[11:14:38:651(4e1e)] Latest revision found is 2024.400.0.540
[11:14:38:652(4e1e)] We do NOT need to update

ui.log

Expected Change

No response

Steps To Reproduce

  1. Start GameMaker
  2. Allow it to reach the Start Page normally - however, pay attention to the Splash Screen and the text it shows
  3. Once on the Start Page, click Help > "Open log in Explorer"
  4. See the issue in your ui.log Repro: 100%

How reliably can you recreate this issue using your steps above?

Always

Which version of GameMaker are you reporting this issue for?

2024.2.0 (Monthly), 2024.400 (Betas)

Which operating system(s) are you seeing the problem on?

Windows 10

Are you running GameMaker from inside your Steam library?

No

Contact Us Package Attached?

Sample Project Added?

rwkay commented 7 months ago

there are 2 RSS feeds that are handled in 2 different ways

  1. IDE feed is checked (this is not a loading state, so is not logged as such) - this happens in the splash screen (there is no logging on splash screen states)
  2. Runtime feed is checked (this is a loading state)