Commit graph

34 commits

Author SHA1 Message Date
Pat Hartl
d7e0646da4 Update packages 2024-12-06 23:30:00 -06:00
Pat Hartl
5f00f2100a Remove lazy loading 2024-11-27 01:51:47 -06:00
Pat Hartl
1fc74d22dd Add background job for generating all thumbnails 2024-11-05 19:39:32 -06:00
Pat Hartl
0821dfde5c Merge tag 'v1.0.4' into v1.1.0
# Conflicts:
#	LANCommander.Launcher.Services/InstallService.cs
#	LANCommander.Launcher.Services/ProfileService.cs
#	LANCommander.Launcher/UI/Components/DownloadQueue.razor
#	LANCommander.Launcher/wwwroot/css/app.css.map
#	LANCommander.SDK/Enums/InstallStatus.cs
2024-10-28 01:01:57 -05:00
Pat Hartl
365da83342 New UI layout, navigation on left side 2024-10-22 19:54:38 -05:00
Pat Hartl
42ca5c323a WIP MySQL concurrency fixes
- Removed the Blazor authentication pages and went back to Razor pages
- Fixed issues with dashboard charts that were pulling data on render and causing the database context to be open longer than it should
- Switched back to UserManager and RoleManager
- Temporarily disabled authentication state in pages that might try to use user claims/roles
- Reverted spacing changes to forms to allow for validation messages
- Moved initialization of database connection to database context
- Updated PostgreSQL provider
- Rescaffolded MySQL migrations
- Added a bunch of logging stuff that should eventually be stripped out
2024-10-21 20:06:52 -05:00
James Paussa
d13567a3eb bumping Server csproj version to 1.0.3 2024-10-21 10:52:27 +00:00
Pat Hartl
2056b06207 Working new login page 2024-10-18 19:15:05 -05:00
Pat Hartl
2805f34449 WIP fix for MySQL connection concurrency issues
This is a large commit. There are a number of things that this commit does to try to fix various issues that were occurring when the database provider was set to MySQL:
- The DAL `Repository` has been completely refactored to follow best practices. The repository is now being injected into services instead of the database context itself. This allows the DI to handle the repository's lifetime instead of creating a new repository for every transaction and sharing the context across repositories. As part of these changes, there is no more allowed usage of `IQueryable` and all service/repository methods must actually execute database queries before their return. This is to ensure that the context does not stay open longer than it needs to. Abusing `IQueryable`s by tossing them into Blazor components seems to be a big no-no.
- Some deletion behaviors on relationships have been tweaked as MySQL wasn't able to apply migrations with behaviors that were contradictory.
- A `ConnectionInterceptor` was added to try to keep track of `DatabaseContext` lifetimes. This is really only for debugging and should be put into `#if DEBUG` regions. This helped identify some potential issues where some contexts were basically never closing, causing the MySQL connector to not function.
- Docs for generating migrations have been updated to reflect the addition of being able to specify the database provider and connection string when adding a migration, avoiding the need to edit `Settings.yml`
- The application can now be put into a pause state on startup by adding the `--debugger` argument when used from the command line. When a debugger is attached, it resumes execution.
- The application can now log to Seq when using debug build
- Service lifetime on `DatabaseContext` has switched to transient. This may be reverted in the future.
- Lazy loading has been disabled for debugging purposes. It didn't directly help the concurrency issues, but it needs to be tested individually to be re-enabled.
- All usage of `UserManager`, `RoleManager`, and `SignInManager` have been removed from all controllers, pages, and Blazor components. Functionality has been moved to `UserService` and `RoleService`. This might have done the most amount of help, but could probably be improved upon in the future by not relying on them and instead having our own implementation.
- Application startup migrations and server autostarts have been disabled temporarily. There might be an issue of `DatabaseContext` lifetimes that spawn from this.
2024-10-13 20:42:45 -05:00
Pat Hartl
ba18096dde Update packages 2024-10-12 18:33:57 -05:00
Pat Hartl
f4257ade10 Add migrations for MySQL and PostgreSQL 2024-10-07 19:54:22 -05:00
Pat Hartl
91ee1d47a9 Move data and service layers to separate projects, update packages 2024-10-07 18:04:26 -05:00
Pat Hartl
d3edbecef5 Put NetBeauty back, switch to reusable workflows 2024-10-03 20:18:38 -05:00
Pat Hartl
4ea12e5e59 Try NetBeauty on publish only 2024-10-03 19:39:47 -05:00
Pat Hartl
fbc8c3fda9 Retry NetBeauty on server, skip bundling 2024-10-03 19:02:48 -05:00
Pat Hartl
b30c6e7801 Remove NetBeauty2 from server 2024-10-03 16:57:01 -05:00
Pat Hartl
337425345b Remove reference to old project 2024-10-02 12:28:57 -05:00
Pat Hartl
ebc9aa9ca0 Update packages 2024-09-26 20:13:59 -05:00
Pat Hartl
c254768007 Add NetBeauty to server 2024-09-26 20:13:12 -05:00
Pat Hartl
5ab5894f02 Include new snippets in csproj 2024-09-17 19:48:45 -05:00
Pat Hartl
bb63593fc7 Update packages across solution 2024-09-10 23:39:57 -05:00
Pat Hartl
85aceae60a Bump version for testing purposes 2024-09-09 18:22:19 -05:00
Pat Hartl
910ba2367b Add basic streaming logs with color 2024-08-29 00:19:56 -05:00
Pat Hartl
1c615cbce2 Remove nlog, use Serilog, prefer ILogger 2024-08-28 20:33:59 -05:00
Pat Hartl
4d868ea5f5 Ignore files in build 2024-08-22 00:52:24 -05:00
Pat Hartl
9582e2a207 Load frontend libraries properly 2024-08-18 15:48:14 -05:00
Pat Hartl
020437531d Consolidate shared components 2024-08-18 15:05:25 -05:00
Pat Hartl
bfaf27c04e Add components library 2024-08-18 14:39:31 -05:00
Pat Hartl
052d8f1c8e Remove wiki functionality 2024-08-12 00:20:43 -05:00
Pat Hartl
a689b4db5c Update packages 2024-08-11 23:56:23 -05:00
Pat Hartl
f24669d21a Fix markdown usage in updates page 2024-08-11 23:56:14 -05:00
Pat Hartl
8c36e52d9a Update packages 2024-08-10 12:56:23 -05:00
Pat Hartl
fac61d93af Update YamlDotNet 2024-08-04 20:48:43 -05:00
Pat Hartl
5174ea90d1 Update ignore file, move server project file 2024-08-04 18:46:57 -05:00
Renamed from LANCommander/LANCommander.csproj (Browse further)