diff --git a/ayanova/devdocs/todo.txt b/ayanova/devdocs/todo.txt index d4f000f8..a3590382 100644 --- a/ayanova/devdocs/todo.txt +++ b/ayanova/devdocs/todo.txt @@ -5,12 +5,13 @@ PRIORITY - ALWAYS Lowest level stuff first, i.e. TODO at server, api route chang todo: INSTALLER - NEXT UP: Include the portable postgres - Batch file needs to launch the postgres by calling it before launching the web browser and finally the server - Then need to determine default folder structure and implement it - I'm liking the app being in the "files" folder though it might warrant a better name - and then data all in the above root folder in their own subdirs (also logs there too) - This way all the program file shit is separate from all the user editable content makes for cleaner updates etc + Runner harness wrapper thing? + even if windows only + it could modify config since it's outside the server + check for Postgres server extant and if not automatically start the standalone postgres instance + manage postgres start and stop and configuration changes, sit in tray, run AyaNova server from there? + Linux users don't mind doing the manual config thing as much, they're used to it and it could just be a shell file anyway + easy way to select command line params without resorting to editing text files for end user initially it's an installation option, but then need to edit after the fact Quick check of installers available still and is it still kosher to keep using INNO setup or is something better, more supported by windows etc? @@ -22,65 +23,29 @@ todo: INSTALLER https://docs.microsoft.com/en-us/dotnet/core/rid-catalog -todo: Test run on v7 laptop - +todo: need page where OPS can "View server configuration" easily + put it on the main page in the OPS menu + make sure it's "VIEW" configuration not just "configuration" so it's clear you can't modify it + similar to the about form server block but with all details of config as well + VIEW type icon for it, binoculars or vista or something, not gears because that implies can change it + +todo: run batch file should open Client AND Server UI's BOTH todo: add shutdown server Client UI for new route in serverstate + menu item, big red warning dialog, double checks todo: contact link on server api host page should include dbid in link +todo: Not licensed Client license page should start with trial evaluation expanded automatically todo: Server page error when no license should guide to starting trial "E1020 - License key not found in database, running in unlicensed mode Only *the* SuperUser account can login to make changes" Maybe a link to the docs directly on evaluation start + Or just say "Login as SuperUser to start evaluation / install license" -todo: Error running standalone -2020-08-11 11:00:16.8764|INFO|AyaNova.Api.Controllers.AuthController|User "AyaNova SuperUser" logged in from "::ffff:127.0.0.1" ok -2020-08-11 11:00:37.5875|INFO|Seeder|Seeding data, level Small, time zone offset -7 -2020-08-11 11:00:37.5966|INFO|Seeder|Erasing Database "AyaNova" -2020-08-11 11:00:38.8769|INFO|Seeder|Seeding SMALL number of user(s).... -2020-08-11 11:00:38.9458|INFO|Seeder|25 Users seeded in 62 ms -2020-08-11 11:00:40.5802|INFO|Seeder|100 Widgets seeded in 1618 ms -2020-08-11 11:00:40.5975|INFO|Seeder|Seeding completed successfully -2020-08-11 11:00:40.5975|INFO|Seeder|Seeder: setting server state back to Open -2020-08-11 11:00:41.7735|ERROR|SERVER|Error=>System.NullReferenceException: Object reference not set to an instance of an object. - at AyaNova.Api.Controllers.NotifyController.GetPreLoginPing() in C:\data\code\raven\server\AyaNova\Controllers\NotifyController.cs:line 55 - at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) -2020-08-11 11:00:41.7955|ERROR|NotifyEventProcessor|Ops problem notification: "Server API internal error, see log for more details"=>System.NullReferenceException: Object reference not set to an instance of an object. - at AyaNova.Api.Controllers.NotifyController.GetPreLoginPing() in C:\data\code\raven\server\AyaNova\Controllers\NotifyController.cs:line 55 - at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) -2020-08-11 11:00:44.4018|ERROR|SERVER|Error=>System.NullReferenceException: Object reference not set to an instance of an object. - at AyaNova.Api.Controllers.NotifyController.GetPreLoginPing() in C:\data\code\raven\server\AyaNova\Controllers\NotifyController.cs:line 55 - at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) -2020-08-11 11:00:44.4428|ERROR|NotifyEventProcessor|Ops problem notification: "Server API internal error, see log for more details"=>System.NullReferenceException: Object reference not set to an instance of an object. - at AyaNova.Api.Controllers.NotifyController.GetPreLoginPing() in C:\data\code\raven\server\AyaNova\Controllers\NotifyController.cs:line 55 - at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.TaskOfIActionResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) - at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted) -2020-08-11 11:01:04.5899|INFO|BOOT|AyaNova server shutting down - +todo: NEW FRESH BUILD BEFORE PROCEEDING +todo: Test run on v7 laptop todo: Once above is done, give to Joyce to try as a download off our server with no instructions +todo: Replicate above but for Linux in a shell script to run everything then test on linux as a standalone app ========================================================================================================= @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@