mirror of
https://github.com/monkeytypegame/monkeytype.git
synced 2025-10-06 05:26:54 +08:00
Cleaned up mongo-todo
This commit is contained in:
parent
2632a38251
commit
f48cd89ce1
1 changed files with 19 additions and 44 deletions
|
@ -1,58 +1,33 @@
|
|||
# Todo
|
||||
# Mongo todo
|
||||
|
||||
- Tags and leaderboard are still buggy
|
||||
- Creating the first tag shows error "Unknown error, cannot read property \_id of undefined"
|
||||
- Check for tag pb doesn't always work
|
||||
- Leaderboard doesn't show the time until the daily reset
|
||||
- User's Leaderboard history is not edited, and therefore distance moved on leaderboard does not work properly
|
||||
- Account data should be updated when new result is added/test completed
|
||||
## Todo
|
||||
|
||||
- Create a script to pull all data from monkeytype and move it to the new mongo server
|
||||
|
||||
## Bugs
|
||||
|
||||
- Creating the first tag shows error "Unknown error, cannot read property \_id of undefined"
|
||||
- Check for tag pb doesn't always work
|
||||
- error probably in checkIfTagPB method in server.js
|
||||
- Leaderboard doesn't show the time until the daily reset
|
||||
- lbmemory is not edited by mongo/express so it leaderboard doesn't show change in placement like it's supposed to
|
||||
- Graph bugs out when new result is added but page is not refreshed
|
||||
- Graph loops back from earliest point to the new points
|
||||
- Results list isn't updated either
|
||||
- Save config doesn't actually return data?
|
||||
- Leaderboard says glb is undefined on first item
|
||||
|
||||
### leaderboard
|
||||
### Minor/efficiency bugs
|
||||
|
||||
- Does clearDailyLeaderboards cause a memory leak?
|
||||
- Try commenting it out and seeing if it makes a difference
|
||||
- Identify bugs
|
||||
- Leaderboard says glb is undefined on first item
|
||||
- No global or daily items are returned
|
||||
- Is filteredResults.reverse(); in account.js going to cause efficiency issues?
|
||||
- For loop in account could work backwards instead, but this would add complexity
|
||||
- Why does `if (page == "account") pageTransition = false;` get rid of endless account loading bug when accessing via url
|
||||
|
||||
## After beta is ready
|
||||
### Possibilities
|
||||
|
||||
- Work on transfering data from firebase to mongo
|
||||
- Make sure that development can be done on mac and windows computers as well
|
||||
- directories in server.js might cause issues
|
||||
- Figure out if filteredResults.reverse(); in account.js is going to cause efficiency issues
|
||||
- Could reverse processing of results, but that would add more complexity to code
|
||||
- Figure out why if (page == "account") pageTransition = false; gets rid of endless account loading bug when accessing via url
|
||||
|
||||
## User transfer
|
||||
|
||||
- Create a script to pull all data from monkeytype and move it to the new mongo server
|
||||
- In order to transfer users over, users should be able to be validated through firebase until they login again, when they will use their password to login. If firebase confirms that the password and email are valid, the new password will be hashed and saved to the new database
|
||||
- All data is moved and retrieved via the mongo server, just authentication uses firebase
|
||||
- Could force users to sign in again immediately in order to transfer users' passwords faster
|
||||
- Is it worth the inconvenience though.
|
||||
- Probably the best option would be to have a notification that asks users to log out and log back in again
|
||||
- Could have a set date that firebase usage will expire and users must log out and back in again before they are forcibly logged out
|
||||
- Still can't completely remove firebase dependency unless ALL users are transferred
|
||||
|
||||
## After release
|
||||
|
||||
- Investigate and improve efficiency after mongo merge or during review
|
||||
- I'm not sure about this but it might be worthwhile to use redis to store userdata up to a certain point
|
||||
- Might be worthwhile to use redis to store userdata up to a certain point
|
||||
- Users who have been requested in the last hour will be stored in the redis database so that their data can be sent again without having to search a large database
|
||||
- After an hour without a new request they can be removed from memory
|
||||
- User data should not be requested from the server every time a test is submitted, result should just be appended to results
|
||||
- Create a backup system to prevent loss of data
|
||||
- Users should be able to export their data themselves
|
||||
- It's convenient because they would just have to download their user document, only one query for the server
|
||||
|
||||
### General noticed bugs
|
||||
|
||||
- Tests started and completed doesn't increment when quitting a running test
|
||||
- Doesn't work as I expected in live version either, no issue
|
||||
- Personal bests items should not be arrays
|
||||
- should be objects that are set on new pb
|
||||
|
|
Loading…
Add table
Reference in a new issue