* feat: Add option for worlds to get data from other worlds
* docs: Add docs to new methods
* refactor: Add more error handling for potential edge cases
* fix: Catch exception for http listener start
* fix: Maybe stop throwing js exceptions at start from process check
* fix: Stop VRCX from dying if monitored processes are elevated
* fix: If auto close is turned off, update process states properly
* refactor: Limit db key length to 255, limit /getall to 10000 entries
* docs: Change readme
* feat: New /settings endpoint; Make U# implementation easier
To further avoid the 5 second string loading delay, developers are no longer required to use /init before getting data; Every data request endpoint will now initialize the world automatically and include a connection key in the response.
Changed the way debug init works; It should now work for all endpoints without extra checks by just returning the current world as wrld_12345.
New /settings endpoint allows the change of the allow_external_reads column in the database, but getting data is currently unimplemented.
Fix store request logging being... completely wrong.
* Update README.md
Co-authored-by: Tayou <31988415+TayouVR@users.noreply.github.com>
---------
Co-authored-by: Tayou <31988415+TayouVR@users.noreply.github.com>
* fix: Fix world-db not getting current world properly when traveling
* fix: Stop redundant and exception-prone funcResult definition
* Fix: fetching current location
* refactor: Move constructing responseData to its own functions
* Fix: ignore own string requests
* feat: Add NLog dependency, and add some logging to .NET, mostly worlddb
* fix: I missed a semicolon
* refactor: Add more debug logging, change log format, archive less
* feat: Add /getall endpoint
---------
Co-authored-by: Natsumi <cmcooper123@hotmail.com>
* chore: Change vscode workspace settings to work with omnisharp
* refactor(.NET): Use connection string builder to init sqlite database
* docs(.NET): Add method documentation to most things that matter
* docs(.NET): Add more docs I forgot to commit apparently
* feat: Add PoC world database structure ^& http listener
* fix: Send a response if VRCX isn't initialized rather than hanging
* feat: Initialize world db schema on startup
* feat: Allow worlds to store data in db through logfile
* use existing current location for worldDB
* Add tooltips
* chore: Make it so vscode can format C# files without prettier
* refactor: Add sqlite-net to (eventually) replace sqlite impl
* refactor: Make use of sqlite-net for world database
* docs: Add todo for fixing some random exception
* refactor: Remove now-unused SQLiteWorld
* refactor: Fix DB init query and change table structure again
* refactor: Add WorldDataRequest, add attributes for camelcase json keys
* Support current user location from API in addition to gameLog
* Change current location check for worldDB
* feat: Take store requests in JSON, identify worlds by GUID on store.
* refactor: Remove unused worldId param from connection key generator
* docs: Add more documentation to the methods for the world database
* fix: Hey wait that's not a primary key
* feat: Add a 10MB data cap for worlds shared across all of their rows.
* fix: Don't calculate size of world date twice when inserting
* refactor: Discard the guid variable since we only check for validity
* docs: Add docs/comments for new data cap functionality
* feat: Implement /getbulk API endpoint
* fix: Correct WorldDB init query typo
* fix: Update data entries properly instead of using 'OR REPLACE'
* refactor: Move endpoint processing to separate methods
* refactor: Add another check for error 503, remove old code
* feat: Add debug capability to /vrcx/getbulk
* fix: Correct the usage of getUser in actuallyGetCurrentLocation
* feat: Add store errors, implement external reading, stop 404ing
* docs: Add docs for new world db funcs
* refactor: Change world db server listen port to 22500
* fix: Use getUser correctly, dumb dumb
* fix: This error set shouldn't be here
* feat: Future-proof api endpoints. Add /status endpoint
---------
Co-authored-by: Natsumi <cmcooper123@hotmail.com>