Fix-forward "Change synchronization of Preferences.reset() to addr…" by heeheehee-kolmafia · Pull Request #1889 · kolmafia/kolmafia
…ess concurrency issue between timein() and Preferences.saveToFile() (#1811)" (#1886)" This reverts commit dfcf477. First step for a fix-forward.
The PR was opened in August and has pretty much languished. Should it be committed or closed?
My memory, which can probably be corrected by someone who wants to search KoLmafia.us, was that a PR was written to deal with an absence of synchronization when writing preference files. The PR was committed. A couple of users reported a problem when cheating with the Deck of Every Card. Out of an abundance of caution the PR was reverted. Subsequently, the original PR was cherry-picked for changes not related to synchronization (which have since been committed) and what was left was retained to support research and debugging.
@gausie has raised the question about closing or committing it since nothing has happened in several months.
I have spend a fair amount of time trying to reproduce the deck cheating problem and have not been able to do so. I have also been building and running the code with the synchronization changes and have seen no problems. But I also don't do things like leave KoLmafia running 24/7 and dealing with logout/in at rollover.
I agree that this has languished and it would be nice to move on. I see several possibilities:
- Someone besides me could try and reproduce the Deck cheat issue or otherwise decide it is "safe" to commit.
- It could be committed as is and reported problems will be addressed in some way besides reverting it.
- It could be closed because the benefits of improved synchronization are less than the cost of resolving other issues.
Tagging @MCroft and @heeheehee since they were most involved.
Discuss.
Thanks.