* 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>
* fix(.NET): Stop CheckGameRunning from force checking processes
I'm not really sure what I was thinking when I did that the way I did; They are not supposed to force check if they're closed after the first time...That's what the monitor is for.
* feat(.NET): Add optional child process culling, clean up applauncher
Add an AppApi method to set applauncher settings Enabled/KillChildrenOnExit
Refactor repeated applauncher event code, move into methods
* refactor: Move the pug code for every tab into its own file
* refactor: Add PoC mixins to settings.pug ^& add comments for navigation
Some proof of concept replacements of the categories, switches and a radio group in the General settings seection.
Also added comments for each header-separated section for marginally better navigation of the file.
* refactor: Move the login page to its own file
* fix(.NET): Correct wrong variable being set in SetAppLauncherSettings
* fix(.NET): Remove redundant/exception causing process refresh in monitor
* refactor(.NET): Allow launcher to be disabled; Disabled by default.
* refactor: Change screenshot helper default to true
* feat: Expose new app launcher settings, add new settings category
Translation keys added/removed:
+ view.settings.advanced.advanced.app_launcher.header
+ view.settings.advanced.advanced.app_launcher.folder_tooltip
+ view.settings.advanced.advanced.app_launcher.enable
+ view.settings.advanced.advanced.app_launcher.auto_close
- view.settings.advanced.advanced.auto_launch
- view.settings.advanced.advanced.auto_launch_tooltip
* Add GPU Fix and Udon Exception Logging options, unload favorites tab when not in use
* Fix GPUFix typo
* Fix GPUFix typo 1
* Add logging for AVPro streams without usharp videoplayer
* Lint
---------
Co-authored-by: Natsumi <cmcooper123@hotmail.com>
I thought it would be nice for app.js to roleplay as an organized code file. So I made a regex to prepend all existing manually commented code areas such as "App: FriendLog" with #region so that VSCode can fold them.
There were a couple uncommented regions that are now commented with summaries I can only describe as 'I tried'