Make Sense.PartOfSpeech an object instead of a string #616
fw-lite.yaml
on: pull_request
Build FW Lite and run tests
21m 55s
Publish FW Lite app for Mac
0s
Publish FW Lite app for Linux
0s
Publish FW Lite app for Android
0s
Publish FW Lite app for Windows
0s
Create Release
0s
Annotations
7 errors and 10 warnings
LcmCrdt.Tests.DataModelSnapshotTests.VerifyDbModel
VerifyException : Directory: D:\a\languageforge-lexbox\languageforge-lexbox\backend\FwLite\LcmCrdt.Tests
NotEqual:
- Received: DataModelSnapshotTests.VerifyDbModel.received.txt
Verified: DataModelSnapshotTests.VerifyDbModel.verified.txt
FileContent:
NotEqual:
Received: DataModelSnapshotTests.VerifyDbModel.received.txt
Model:
EntityType: ProjectData
Properties:
Id (Guid) Required PK AfterSave:Throw ValueGenerated.OnAdd
ClientId (Guid) Required
FwProjectId (Guid?)
Name (string) Required
OriginDomain (string)
Keys:
Id PK
Annotations:
DiscriminatorProperty:
Relational:FunctionName:
Relational:Schema:
Relational:SqlQuery:
Relational:TableName: ProjectData
Relational:ViewName:
Relational:ViewSchema:
EntityType: ComplexFormComponent
Properties:
Id (Guid) Required PK AfterSave:Throw ValueGenerated.OnAdd
ComplexFormEntryId (Guid) Required FK Index
ComplexFormHeadword (string)
ComponentEntryId (Guid) Required FK Index
ComponentHeadword (string)
ComponentSenseId (Guid?) FK Index
Annotations:
Relational:ColumnName: ComponentSenseId
DeletedAt (DateTimeOffset?)
SnapshotId (no field, Guid?) Shadow FK Index
Keys:
Id PK
Foreign keys:
ComplexFormComponent {'ComplexFormEntryId'} -> Entry {'Id'} Required Cascade ToDependent: Components
ComplexFormComponent {'ComponentEntryId'} -> Entry {'Id'} Required Cascade ToDependent: ComplexForms
ComplexFormComponent {'ComponentSenseId'} -> Sense {'Id'} Cascade
ComplexFormComponent {'SnapshotId'} -> ObjectSnapshot {'Id'} Unique SetNull
Indexes:
ComponentEntryId
ComponentSenseId
SnapshotId Unique
ComplexFormEntryId, ComponentEntryId Unique
Annotations:
Relational:Filter: ComponentSenseId IS NULL
ComplexFormEntryId, ComponentEntryId, ComponentSenseId Unique
Annotations:
Relational:Filter: ComponentSenseId IS NOT NULL
Annotations:
DiscriminatorProperty:
Relational:FunctionName:
Relational:Schema:
Relational:SqlQuery:
Relational:TableName: ComplexFormComponents
Relational:ViewName:
Relational:ViewSchema:
EntityType: ComplexFormType
Properties:
Id (Guid) Required PK AfterSave:Throw ValueGenerated.OnAdd
DeletedAt (DateTimeOffset?)
Name (MultiString) Required
Annotations:
Relational:ColumnType: jsonb
SnapshotId (no field, Guid?) Shadow FK Index
Keys:
Id PK
Foreign keys:
ComplexFormType {'SnapshotId'} -> ObjectSnapshot {'Id'} Unique SetNull
Indexes:
SnapshotId Unique
Annotations:
DiscriminatorProperty:
Relational:FunctionName:
Relational:Schema:
Relational:SqlQuery:
Relational:TableName: ComplexFormType
Relational:ViewName:
Relational:ViewSchema:
EntityType: Entry
Properties:
Id (Guid) Required PK AfterSave:Throw ValueGenerated.OnAdd
CitationForm (MultiString) Required
Annotations:
Relational:ColumnType: jsonb
ComplexFormTypes (IList<ComplexFormType>) Required
Annotations:
Relational:ColumnType: jsonb
DeletedAt (DateTimeOffset?)
LexemeForm (MultiString) Required
Annotations:
Relational:ColumnType: jsonb
LiteralMeaning (MultiString) Required
Annotations:
Relational:ColumnType: jsonb
Note (MultiString) Required
Annotations:
Relational:ColumnType: jsonb
SnapshotId (no field, Guid?) Shadow FK Index
Navigations:
ComplexForms (IList<ComplexFormComponent>) Collection ToDependent ComplexFormComponent
Components (IList<ComplexFormComponent>) Collection ToDependent ComplexFormComponent
Senses (List<Sense>) Collection ToDependent Sense
Keys:
Id PK
Foreign keys:
Entry {'SnapshotId'} -> ObjectSnapshot {'Id'} Unique SetNull
Indexes:
SnapshotId
|
FwLiteProjectSync.Tests.UpdateDiffTests.SenseDiffShouldUpdateAllFields:
backend/FwLite/FwLiteProjectSync.Tests/UpdateDiffTests.cs#L45
Expected property before.PartOfSpeech to be MiniLcm.Models.PartOfSpeech
{
DeletedAt = <2025-01-09 12:19:42.2761683 +0h>,
Id = {d1db7aa0-0015-c86f-8e00-698b2968f556},
Name = {[MiniLcm.Models.WritingSystemId
{
Code = "lmn"
}] = "Landing"
}
,
Predefined = False
}, but found <null>.
With configuration:
- Use declared types and members
- Compare enums by value
- Compare tuples by their properties
- Compare anonymous types by their properties
- Compare records by their members
- Include non-browsable members
- Exclude member Id
- Exclude member EntryId
- Exclude member DeletedAt
- Exclude member ExampleSentences
- Exclude member SemanticDomains
- Match member by name (or throw)
- Be strict about the order of items in byte arrays
- Without automatic conversion.
|
FwLiteProjectSync.Tests.SyncTests.PartsOfSpeechSyncInEntries:
backend/FwLite/FwLiteProjectSync.Tests/SyncTests.cs#L309
System.AggregateException : One or more errors occurred. (An error occurred while saving the entity changes. See the inner exception for details.) (The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.)
---- Microsoft.EntityFrameworkCore.DbUpdateException : An error occurred while saving the entity changes. See the inner exception for details.
-------- Microsoft.Data.Sqlite.SqliteException : SQLite Error 19: 'FOREIGN KEY constraint failed'.
---- Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException : The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.
|
FwLiteProjectSync.Tests.SyncTests.SyncDryRun_NoChangesAreSynced:
backend/FwLite/FwLiteProjectSync.Tests/SyncTests.cs#L166
System.AggregateException : One or more errors occurred. (The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.) (The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.)
---- Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException : The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.
---- Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException : The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.
|
FwLiteProjectSync.Tests.SyncTests.SecondSyncDoesNothing:
backend/FwLite/FwLiteProjectSync.Tests/SyncTests.cs#L99
System.AggregateException : One or more errors occurred. (The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.) (The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.)
---- Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException : The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.
---- Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException : The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.
|
FwLiteProjectSync.Tests.SyncTests.PartsOfSpeechSyncBothWays:
backend/FwLite/FwLiteProjectSync.Tests/SyncTests.cs#L254
System.AggregateException : One or more errors occurred. (The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.) (The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.)
---- Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException : The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.
---- Microsoft.EntityFrameworkCore.DbUpdateConcurrencyException : The database operation was expected to affect 1 row(s), but actually affected 0 row(s); data may have been modified or deleted since entities were loaded. See https://go.microsoft.com/fwlink/?LinkId=527962 for information on understanding and handling optimistic concurrency exceptions.
|
Build FW Lite and run tests
Process completed with exit code 1.
|
Build FW Lite and run tests:
backend/FwLite/FwDataMiniLcmBridge/Api/FwDataMiniLcmApi.cs#L208
This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
|
Build FW Lite and run tests:
backend/FwLite/FwDataMiniLcmBridge/LcmUtils/LcmThreadedProgress.cs#L10
The event 'LcmThreadedProgress.Canceling' is never used
|
Build FW Lite and run tests:
backend/FwLite/FwDataMiniLcmBridge/Api/UpdateProxy/UpdateSenseProxy.cs#L121
Observe the awaitable result of this method call by awaiting it, assigning to a variable, or passing it to another method (https://github.com/Microsoft/vs-threading/blob/main/doc/analyzers/VSTHRD110.md)
|
Build FW Lite and run tests:
backend/FwLite/LcmCrdt/CrdtProjectsService.cs#L25
The default value specified for parameter 'saveChangesOnDispose' will have no effect because it applies to a member that is used in contexts that do not allow optional arguments
|
Build FW Lite and run tests:
backend/FwLite/LcmCrdt/CrdtMiniLcmApi.cs#L19
Parameter 'dbContext' is unread.
|
Build FW Lite and run tests:
backend/FwLite/LcmCrdt/Changes/RemoveSemanticDomainChange.cs#L11
This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
|
Build FW Lite and run tests:
backend/FwLite/LcmCrdt/RemoteSync/CrdtHttpSyncService.cs#L53
This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
|
Build FW Lite and run tests:
backend/FwLite/LcmCrdt/Data/SetupCollationInterceptor.cs#L27
The variable 'e' is declared but never used
|
Build FW Lite and run tests:
backend/FwLite/LcmCrdt/CrdtMiniLcmApi.cs#L378
This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.
|
Build FW Lite and run tests:
backend/FwLite/LcmCrdt/HistoryService.cs#L94
The result of the expression is always 'true' since a value of type 'Guid' is never equal to 'null' of type 'Guid?'
|