Skip to content

Commit

Permalink
Merge branch 'net7'
Browse files Browse the repository at this point in the history
  • Loading branch information
olmobrutall committed Nov 8, 2022
2 parents 50bba8b + 4520f01 commit 8377d1b
Show file tree
Hide file tree
Showing 34 changed files with 190 additions and 199 deletions.
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net7.0</TargetFramework>
<TargetLatestRuntimePatch>true</TargetLatestRuntimePatch>
<Platforms>AnyCPU;x64</Platforms>
<NoWarn>NU1201</NoWarn>
Expand Down
11 changes: 4 additions & 7 deletions Signum.Engine.Extensions/Authorization/AzureADLogic.cs
Expand Up @@ -546,13 +546,10 @@ public MicrosoftGraphCreateUserContext(User user)
public string? SID => null;
}

#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
public class ActiveDirectoryUser
{
public string DisplayName;
public string UPN;
public Guid ObjectID;

public string JobTitle;
public required string DisplayName;
public required string UPN;
public required Guid ObjectID;
public required string JobTitle;
}
#pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
Expand Up @@ -117,14 +117,11 @@ public override string ToString()

}

#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
public class AzureInvalidationMessage
{
public DateTime CreationDate;
public string OriginMachineName;
public string OriginApplicationName;
public string MethodName;

public string Argument { get; internal set; }
public required DateTime CreationDate;
public required string OriginMachineName;
public required string OriginApplicationName;
public required string MethodName;
public required string Argument;
}
#pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
23 changes: 10 additions & 13 deletions Signum.Engine.Extensions/MachineLearning/PredictorAlgorithm.cs
Expand Up @@ -190,28 +190,25 @@ public void SetCodifications(PredictorCodification[] codifications)
}
}

#pragma warning disable CS8618 // Non-nullable field is uninitialized.
public class MainQuery
{
public QueryRequest QueryRequest { get; internal set; }
public ResultTable ResultTable { get; internal set; }
public Func<ResultRow, object?[]> GetParentKey { get; internal set; }
public required QueryRequest QueryRequest { get; set; }
public required ResultTable ResultTable { get; set; }
public required Func<ResultRow, object?[]> GetParentKey { get; set; }
}
#pragma warning restore CS8618 // Non-nullable field is uninitialized.

#pragma warning disable CS8618 // Non-nullable field is uninitialized.
public class SubQuery
{
public PredictorSubQueryEntity SubQueryEntity;
public QueryRequest QueryGroupRequest;
public ResultTable ResultTable;
public Dictionary<object?[], Dictionary<object?[], object?[]>> GroupedValues;
public required PredictorSubQueryEntity SubQueryEntity;
public required QueryRequest QueryGroupRequest;
public required ResultTable ResultTable;
public required Dictionary<object?[], Dictionary<object?[], object?[]>> GroupedValues;


public ResultColumn[] SplitBy { get; internal set; }
public ResultColumn[] ValueColumns { get; internal set; }
public required ResultColumn[] SplitBy { get; set; }
public required ResultColumn[] ValueColumns { get; set; }
//From ColumnIndex (i.e: [3->0, 4->1)
public Dictionary<int, int> ColumnIndexToValueIndex { get; internal set; }
public required Dictionary<int, int> ColumnIndexToValueIndex { get; set; }
}
#pragma warning restore CS8618 // Non-nullable field is uninitialized.

Expand Down
Expand Up @@ -17,6 +17,7 @@ public static void RetrieveData(PredictorTrainingContext ctx)
{
QueryRequest = mainQueryRequest,
ResultTable = mainResult,
GetParentKey = null!,
};

if (!mainQueryRequest.GroupResults)
Expand Down
8 changes: 3 additions & 5 deletions Signum.Engine.Extensions/Migrations/SqlMigrationRunner.cs
Expand Up @@ -371,12 +371,11 @@ public static void SquashMigrationHistory()
SafeConsole.WriteLineColor(ConsoleColor.Green, "Initial Migration saved and marked as executed");
}

#pragma warning disable CS8618 // Non-nullable field is uninitialized.
public class MigrationInfo
{
public string? FileName;
public string Version;
public string Comment;
public required string? FileName;
public required string Version;
public required string Comment;

public bool IsExecuted;

Expand All @@ -385,5 +384,4 @@ public override string ToString()
return Version;
}
}
#pragma warning restore CS8618 // Non-nullable field is uninitialized.
}
30 changes: 14 additions & 16 deletions Signum.Engine.Extensions/Processes/ProcessRunner.cs
Expand Up @@ -517,29 +517,27 @@ public override string ToString()



#pragma warning disable CS8618 // Non-nullable field is uninitialized.
public class ProcessLogicState
{
public int MaxDegreeOfParallelism;
public int? InitialDelayMilliseconds;
public string MachineName;
public string ApplicationName;
public bool Running;
public bool JustMyProcesses;
public DateTime? NextPlannedExecution;
public List<ExecutionState> Executing;
public required int MaxDegreeOfParallelism;
public required int? InitialDelayMilliseconds;
public required string MachineName;
public required string ApplicationName;
public required bool Running;
public required bool JustMyProcesses;
public required DateTime? NextPlannedExecution;
public required List<ExecutionState> Executing;
}

public class ExecutionState
{
public Lite<ProcessEntity> Process;
public ProcessState State;
public bool IsCancellationRequested;
public decimal? Progress;
public string MachineName;
public string ApplicationName;
public required Lite<ProcessEntity> Process;
public required ProcessState State;
public required bool IsCancellationRequested;
public required decimal? Progress;
public required string MachineName;
public required string ApplicationName;
}
#pragma warning restore CS8618 // Non-nullable field is uninitialized.



32 changes: 15 additions & 17 deletions Signum.Engine.Extensions/Scheduler/ScheduleTaskRunner.cs
Expand Up @@ -346,34 +346,32 @@ public ScheduledTaskPair(ScheduledTaskEntity scheduledTask, DateTime nextDate)



#pragma warning disable CS8618 // Non-nullable field is uninitialized.
public class SchedulerState
{
public bool Running;
public int? InitialDelayMilliseconds;
public TimeSpan SchedulerMargin;
public DateTime? NextExecution;
public List<SchedulerItemState> Queue;
public string MachineName;
public string ApplicationName;

public List<SchedulerRunningTaskState> RunningTask;
public required bool Running;
public required int? InitialDelayMilliseconds;
public required TimeSpan SchedulerMargin;
public required DateTime? NextExecution;
public required List<SchedulerItemState> Queue;
public required string MachineName;
public required string ApplicationName;

public required List<SchedulerRunningTaskState> RunningTask;
}

public class SchedulerItemState
{
public Lite<ScheduledTaskEntity> ScheduledTask;
public string Rule;
public DateTime NextDate;
public required Lite<ScheduledTaskEntity> ScheduledTask;
public required string Rule;
public required DateTime NextDate;
}

public class SchedulerRunningTaskState
{
public Lite<ScheduledTaskLogEntity> SchedulerTaskLog;
public DateTime StartTime;
public string Remarks;
public required Lite<ScheduledTaskLogEntity> SchedulerTaskLog;
public required DateTime StartTime;
public required string Remarks;
}
#pragma warning restore CS8618 // Non-nullable field is uninitialized.

public class ScheduledTaskContext
{
Expand Down
2 changes: 1 addition & 1 deletion Signum.Engine.Extensions/Signum.Engine.Extensions.csproj
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<TargetFramework>net7.0</TargetFramework>
<RootNamespace>Signum.Engine</RootNamespace>
<Nullable>enable</Nullable>
<WarningsAsErrors>nullable</WarningsAsErrors>
Expand Down
50 changes: 24 additions & 26 deletions Signum.Engine.Extensions/Translation/TranslatedInstanceLogic.cs
Expand Up @@ -457,15 +457,15 @@ public static FileContent ExportExcelFile(Type type, CultureInfo culture)
.ToDictionary();

var list = result
.OrderBy(a=>a.Key.Instance.Id)
.ThenBy(a=>a.Key.Route.PropertyInfo!.MetadataToken).Select(r => new ExcelRow
{
Instance = r.Key.Instance.Key(),
Path = r.Key.Route.PropertyString(),
RowId = r.Key.RowId?.ToString(),
Original = r.Value.OriginalText,
Translated = r.Value.TranslatedText
}).ToList();
.OrderBy(a => a.Key.Instance.Id)
.ThenBy(a => a.Key.Route.PropertyInfo!.MetadataToken).Select(r => new ExcelRow
{
Instance = r.Key.Instance.Key(),
Path = r.Key.Route.PropertyString(),
RowId = r.Key.RowId?.ToString(),
Original = r.Value.OriginalText,
Translated = r.Value.TranslatedText
}).ToList();

return new FileContent(
fileName: "{0}.{1}.View.xlsx".FormatWith(TypeLogic.GetCleanName(type), culture.Name),
Expand Down Expand Up @@ -651,13 +651,12 @@ internal TranslatableElement(Lite<Entity> entity, PropertyRoute route, MList<T>.
}
}

#pragma warning disable CS8618 // Non-nullable field is uninitialized.
public class TranslationRecord
{
public CultureInfo Culture;
public LocalizedInstanceKey Key;
public string TranslatedText;
public string OriginalText;
public required CultureInfo Culture;
public required LocalizedInstanceKey Key;
public required string TranslatedText;
public required string OriginalText;

public override string ToString()
{
Expand All @@ -667,9 +666,9 @@ public override string ToString()

public class InstanceChanges
{
public Lite<Entity> Instance { get; set; }
public required Lite<Entity> Instance { get; set; }

public Dictionary<IndexedPropertyRoute, Dictionary<CultureInfo, PropertyRouteConflict>> RouteConflicts { get; set; }
public required Dictionary<IndexedPropertyRoute, Dictionary<CultureInfo, PropertyRouteConflict>> RouteConflicts { get; set; }

public override string ToString()
{
Expand Down Expand Up @@ -721,7 +720,7 @@ public class PropertyRouteConflict
public string? OldOriginal;
public string? OldTranslation;

public string Original;
public required string Original;
public List<AutomaticTranslation> AutomaticTranslations = new List<AutomaticTranslation>();

public override string ToString()
Expand All @@ -732,11 +731,11 @@ public override string ToString()

class ExcelRow
{
public string Instance;
public string Path;
public string? RowId;
public string Original;
public string? Translated;
public required string Instance;
public required string Path;
public required string? RowId;
public required string Original;
public required string? Translated;
}

public struct LocalizedInstanceKey : IEquatable<LocalizedInstanceKey>
Expand Down Expand Up @@ -786,8 +785,7 @@ public string RouteAndRowId()

public class TranslatedTypeSummary
{
public Type Type;
public CultureInfo CultureInfo;
public TranslatedSummaryState? State;
public required Type Type;
public required CultureInfo CultureInfo;
public required TranslatedSummaryState? State;
}
#pragma warning restore CS8618 // Non-nullable field is uninitialized.
36 changes: 17 additions & 19 deletions Signum.Engine.Extensions/Workflow/CaseFlowLogic.cs
Expand Up @@ -234,28 +234,26 @@ private static bool IsValidPath(DoneType doneType, string? doneDecision, Stack<W
}
}

#pragma warning disable CS8618 // Non-nullable field is uninitialized.
public class CaseActivityStats
{
public Lite<CaseActivityEntity> CaseActivity;
public Lite<CaseActivityEntity>? PreviousActivity;
public Lite<IWorkflowNodeEntity> WorkflowActivity;
public WorkflowActivityType? WorkflowActivityType;
public WorkflowEventType? WorkflowEventType;
public Lite<WorkflowEntity>? SubWorkflow;
public int Notifications;
public DateTime StartDate;
public DateTime? DoneDate;
public DoneType? DoneType;
public string? DoneDecision;
public Lite<IUserEntity>? DoneBy;
public double? Duration;
public double? AverageDuration;
public double? EstimatedDuration;

public string BpmnElementId { get; internal set; }
public required Lite<CaseActivityEntity> CaseActivity;
public required Lite<CaseActivityEntity>? PreviousActivity;
public required Lite<IWorkflowNodeEntity> WorkflowActivity;
public required WorkflowActivityType? WorkflowActivityType;
public required WorkflowEventType? WorkflowEventType;
public required Lite<WorkflowEntity>? SubWorkflow;
public required int Notifications;
public required DateTime StartDate;
public required DateTime? DoneDate;
public required DoneType? DoneType;
public required string? DoneDecision;
public required Lite<IUserEntity>? DoneBy;
public required double? Duration;
public required double? AverageDuration;
public required double? EstimatedDuration;

public required string BpmnElementId;
}
#pragma warning restore CS8618 // Non-nullable field is uninitialized.

public class CaseConnectionStats
{
Expand Down
20 changes: 9 additions & 11 deletions Signum.Engine.Extensions/Workflow/WorkflowActivityMonitorLogic.cs
Expand Up @@ -51,25 +51,23 @@ public static WorkflowActivityMonitor GetWorkflowActivityMonitor(WorkflowActivit
}
}

#pragma warning disable CS8618 // Non-nullable field is uninitialized.
public class WorkflowActivityMonitorRequest
{
public Lite<WorkflowEntity> Workflow;
public List<Filter> Filters; // Case
public List<Column> Columns; // CaseActivity
public required Lite<WorkflowEntity> Workflow;
public required List<Filter> Filters; // Case
public required List<Column> Columns; // CaseActivity
}

public class WorkflowActivityStats
{
public Lite<IWorkflowNodeEntity> WorkflowActivity;
public int CaseActivityCount;
public object?[] CustomValues;
public required Lite<IWorkflowNodeEntity> WorkflowActivity;
public required int CaseActivityCount;
public required object?[] CustomValues;
}

public class WorkflowActivityMonitor
{
public Lite<WorkflowEntity> Workflow;
public List<string> CustomColumns;
public List<WorkflowActivityStats> Activities;
public required Lite<WorkflowEntity> Workflow;
public required List<string> CustomColumns;
public required List<WorkflowActivityStats> Activities;
}
#pragma warning restore CS8618 // Non-nullable field is uninitialized.

4 comments on commit 8377d1b

@olmobrutall
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Upgrade to .Net 7

.Net 7 is Available Today!!!

... and today is Signum Framework updated 😃

There are not huge changes, but there are good performance improvements and some cool new features in C# 11, like:

How to Upgrade?

Update to Visual Studio 17.4.0 and run Signum.Upgrade. Upgrade_20221108_DotNet7 should take care of updating the .csproj and 'deployToLive/Test.ps1andDockerfile`.

If you want more fun, and you have many #pragma warning disable CS8618, checkout this commit using required properties 4520f01

Enjoy!

@rezanos
Copy link
Contributor

@rezanos rezanos commented on 8377d1b Nov 9, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hooray! 🥳🎉👏 👏
probably a new world record for the quick upgrade 😄 😄

Thank you @olmobrutall! 🙏

@goldenauge
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome!

Thank you @olmobrutall

@MehdyKarimpour
Copy link
Contributor

@MehdyKarimpour MehdyKarimpour commented on 8377d1b Nov 15, 2022 via email

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.