joaorb64 / joaorb64/TournamentStreamHelper
5.7: Null values from Startgg are not treated as a blank string
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 139
- Forks
- 59
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 6
Description
Essentially, any data that has a value of null (e.g. players) are treated as if it should skip updating any fields like scores or player names, instead of as a blank string. I've attached an image which should be a 2-1 in Hbox's favor vs. Dunktastic, This is using the "Load tournament and sets from StartGG user" feature, where currently the screenshot has loaded a set that does not have an opponent for Hbox (Winners Semi-Final).
Another example that sometimes pops up are that if an opposing player's pronouns are she/her, and that's set in Startgg, and Hbox has won against her, it'll load up the next set after that Hbox has... but said player will not have put anything in the pronoun field. Hbox's opponent will still have the "she/her" pronouns set, despite the player not having it set in the profile.
This gets fixed when the program is restarted.
This bug itself led to the pronoun issue that plagued Hbox at the SF6 Coinbox alongside async race conditions, see https://github.com/joaorb64/TournamentStreamHelper/issues/450 on that.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the “Load tournament and sets from StartGG user” feature and reproduce a set containing null player or pronoun data after loading consecutive sets. Trace where those responses update scores, player names, and pronouns; done means null fields clear the previous value rather than being skipped, including the no-opponent example. Verify the behavior after loading multiple sets and after restart.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100