Entitas: Jenny can no longer generate since OS .NET updates
Hi,
After some OS updates I have started getting errors when trying to generate using Jenny. Last week I was able to generate without issues. As of today I get an error. I tried checking out older git commits, a newer Unity, and fresh project… but I still get the same issue.
It seems to be the same error as #797. But in my case it started happening to my existing project, not just with a new project. It seems like an SQLite library used by Roslyn has been updated and has errors or incorrect dependencies?
System
Ubuntu 18.04.1
Mono JIT compiler version 5.16.0.179 (tarball Thu Oct 4 10:20:38 UTC 2018)
Entitas 1.8.2
Unity 2018.2.2f1 (main project), Unity 2018.7.1f1 (new test project)
Error when running Jenny gen
~/UnityProjects/Unity-2018.2.7f1-testing $ mono Jenny/Jenny.exe gen
Generating using /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny.properties
Could not set up field 'Statement' due to: Could not load type of field 'Microsoft.CodeAnalysis.SQLite.Interop.SqlStatement:_rawStatement' (1) due to: Could not load file or assembly 'SQLitePCLRaw.core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1488e028ca7ab535' or one of its dependencies. assembly:/home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/Plugins/Entitas.Roslyn/Microsoft.CodeAnalysis.Workspaces.Desktop.dll type:SqlStatement member:(null)
A new Jenny created, auto import Jenny.properties
~/UnityProjects/Unity-2018.2.7f1-testing $ cat Jenny.properties
Jenny.Ignore.Keys = Preferences.Entitas, \
Entitas.VisualDebugging.Unity.Editor.SystemWarningThreshold, \
Entitas.VisualDebugging.Unity.Editor.DefaultInstanceCreatorFolderPath, \
Entitas.VisualDebugging.Unity.Editor.TypeDrawerFolderPath
Jenny.SearchPaths = Assets/DesperateDevs/Editor/Plugins, \
Assets/Entitas/Editor/Plugins, \
Jenny/Plugins/Entitas.Roslyn
Jenny.Plugins = DesperateDevs.CodeGeneration.Plugins, \
DesperateDevs.CodeGeneration.Unity.Plugins, \
Entitas.CodeGeneration.Plugins, \
Entitas.Roslyn.CodeGeneration.Plugins, \
Entitas.VisualDebugging.CodeGeneration.Plugins
Jenny.PreProcessors = DesperateDevs.CodeGeneration.Plugins.ValidateProjectPathPreProcessor, \
DesperateDevs.CodeGeneration.Plugins.TargetFrameworkProfilePreProcessor
Jenny.DataProviders = Entitas.CodeGeneration.Plugins.ContextDataProvider, \
Entitas.Roslyn.CodeGeneration.Plugins.CleanupDataProvider, \
Entitas.Roslyn.CodeGeneration.Plugins.ComponentDataProvider, \
Entitas.Roslyn.CodeGeneration.Plugins.EntityIndexDataProvider
Jenny.CodeGenerators = Entitas.CodeGeneration.Plugins.ComponentContextApiGenerator, \
Entitas.CodeGeneration.Plugins.ComponentEntityApiGenerator, \
Entitas.CodeGeneration.Plugins.ComponentEntityApiInterfaceGenerator, \
Entitas.CodeGeneration.Plugins.ComponentGenerator, \
Entitas.CodeGeneration.Plugins.ComponentLookupGenerator, \
Entitas.CodeGeneration.Plugins.ComponentMatcherApiGenerator, \
Entitas.CodeGeneration.Plugins.ContextAttributeGenerator, \
Entitas.CodeGeneration.Plugins.ContextGenerator, \
Entitas.CodeGeneration.Plugins.ContextMatcherGenerator, \
Entitas.CodeGeneration.Plugins.ContextsGenerator, \
Entitas.CodeGeneration.Plugins.EntityGenerator, \
Entitas.CodeGeneration.Plugins.EntityIndexGenerator, \
Entitas.CodeGeneration.Plugins.EventEntityApiGenerator, \
Entitas.CodeGeneration.Plugins.EventListenerComponentGenerator, \
Entitas.CodeGeneration.Plugins.EventListenertInterfaceGenerator, \
Entitas.CodeGeneration.Plugins.EventSystemGenerator, \
Entitas.CodeGeneration.Plugins.EventSystemsGenerator, \
Entitas.Roslyn.CodeGeneration.Plugins.CleanupSystemGenerator, \
Entitas.Roslyn.CodeGeneration.Plugins.CleanupSystemsGenerator, \
Entitas.VisualDebugging.CodeGeneration.Plugins.ContextObserverGenerator, \
Entitas.VisualDebugging.CodeGeneration.Plugins.FeatureClassGenerator
Jenny.PostProcessors = DesperateDevs.CodeGeneration.Plugins.AddFileHeaderPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.CleanTargetDirectoryPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.MergeFilesPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.NewLinePostProcessor, \
DesperateDevs.CodeGeneration.Plugins.UpdateCSProjPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.WriteToDiskPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.ConsoleWriteLinePostProcessor
Jenny.Server.Port = 3333
Jenny.Client.Host = localhost
DesperateDevs.CodeGeneration.Plugins.ProjectPath = Assembly-CSharp.csproj
Entitas.CodeGeneration.Plugins.Contexts = Game, \
Input
Entitas.CodeGeneration.Plugins.IgnoreNamespaces = false
DesperateDevs.CodeGeneration.Plugins.TargetDirectory = Assets/Sources
Preferences.Entitas = Entitas.Unity.Editor.EntitasPreferencesDrawer, \
DesperateDevs.CodeGeneration.CodeGenerator.Unity.Editor.CodeGeneratorPreferencesDrawer, \
Entitas.VisualDebugging.Unity.Editor.VisualDebuggingPreferencesDrawer
Entitas.VisualDebugging.Unity.Editor.SystemWarningThreshold = 5
Entitas.VisualDebugging.Unity.Editor.DefaultInstanceCreatorFolderPath = Assets/Editor/DefaultInstanceCreator
Entitas.VisualDebugging.Unity.Editor.TypeDrawerFolderPath = Assets/Editor/TypeDrawer
Running Jenny doctor -v
~/UnityProjects/Unity-2018.2.7f1-testing $ mono Jenny/Jenny.exe doctor -v
Loading assemblies from /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Analytics.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Analytics.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.CLI.Utils.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.CLI.Utils.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.CodeGeneration.CodeGenerator.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.CodeGeneration.CodeGenerator.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.CodeGeneration.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.CodeGeneration.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Logging.Formatters.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Logging.Formatters.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Logging.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Logging.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Networking.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Networking.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Serialization.CLI.Utils.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Serialization.CLI.Utils.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Serialization.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Serialization.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Utils.dll
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/DesperateDevs.Utils.dll
Jenny.exe load: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/Jenny.exe
➜ Loading: /home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/Jenny.exe
Jenny.Ignore.Keys = Preferences.Entitas, \
Entitas.VisualDebugging.Unity.Editor.SystemWarningThreshold, \
Entitas.VisualDebugging.Unity.Editor.DefaultInstanceCreatorFolderPath, \
Entitas.VisualDebugging.Unity.Editor.TypeDrawerFolderPath
Jenny.SearchPaths = Assets/DesperateDevs/Editor/Plugins, \
Assets/Entitas/Editor/Plugins, \
Jenny/Plugins/Entitas.Roslyn
Jenny.Plugins = DesperateDevs.CodeGeneration.Plugins, \
DesperateDevs.CodeGeneration.Unity.Plugins, \
Entitas.CodeGeneration.Plugins, \
Entitas.Roslyn.CodeGeneration.Plugins, \
Entitas.VisualDebugging.CodeGeneration.Plugins
Jenny.PreProcessors = DesperateDevs.CodeGeneration.Plugins.ValidateProjectPathPreProcessor, \
DesperateDevs.CodeGeneration.Plugins.TargetFrameworkProfilePreProcessor
Jenny.DataProviders = Entitas.CodeGeneration.Plugins.ContextDataProvider, \
Entitas.Roslyn.CodeGeneration.Plugins.CleanupDataProvider, \
Entitas.Roslyn.CodeGeneration.Plugins.ComponentDataProvider, \
Entitas.Roslyn.CodeGeneration.Plugins.EntityIndexDataProvider
Jenny.CodeGenerators = Entitas.CodeGeneration.Plugins.ComponentContextApiGenerator, \
Entitas.CodeGeneration.Plugins.ComponentEntityApiGenerator, \
Entitas.CodeGeneration.Plugins.ComponentEntityApiInterfaceGenerator, \
Entitas.CodeGeneration.Plugins.ComponentGenerator, \
Entitas.CodeGeneration.Plugins.ComponentLookupGenerator, \
Entitas.CodeGeneration.Plugins.ComponentMatcherApiGenerator, \
Entitas.CodeGeneration.Plugins.ContextAttributeGenerator, \
Entitas.CodeGeneration.Plugins.ContextGenerator, \
Entitas.CodeGeneration.Plugins.ContextMatcherGenerator, \
Entitas.CodeGeneration.Plugins.ContextsGenerator, \
Entitas.CodeGeneration.Plugins.EntityGenerator, \
Entitas.CodeGeneration.Plugins.EntityIndexGenerator, \
Entitas.CodeGeneration.Plugins.EventEntityApiGenerator, \
Entitas.CodeGeneration.Plugins.EventListenerComponentGenerator, \
Entitas.CodeGeneration.Plugins.EventListenertInterfaceGenerator, \
Entitas.CodeGeneration.Plugins.EventSystemGenerator, \
Entitas.CodeGeneration.Plugins.EventSystemsGenerator, \
Entitas.Roslyn.CodeGeneration.Plugins.CleanupSystemGenerator, \
Entitas.Roslyn.CodeGeneration.Plugins.CleanupSystemsGenerator, \
Entitas.VisualDebugging.CodeGeneration.Plugins.ContextObserverGenerator, \
Entitas.VisualDebugging.CodeGeneration.Plugins.FeatureClassGenerator
Jenny.PostProcessors = DesperateDevs.CodeGeneration.Plugins.AddFileHeaderPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.CleanTargetDirectoryPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.MergeFilesPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.NewLinePostProcessor, \
DesperateDevs.CodeGeneration.Plugins.UpdateCSProjPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.WriteToDiskPostProcessor, \
DesperateDevs.CodeGeneration.Plugins.ConsoleWriteLinePostProcessor
Jenny.Server.Port = 3333
Jenny.Client.Host = localhost
DesperateDevs.CodeGeneration.Plugins.ProjectPath = Assembly-CSharp.csproj
Entitas.CodeGeneration.Plugins.Contexts = Game, \
Input
Entitas.CodeGeneration.Plugins.IgnoreNamespaces = false
DesperateDevs.CodeGeneration.Plugins.TargetDirectory = Assets/Sources
Preferences.Entitas = Entitas.Unity.Editor.EntitasPreferencesDrawer, \
DesperateDevs.CodeGeneration.CodeGenerator.Unity.Editor.CodeGeneratorPreferencesDrawer, \
Entitas.VisualDebugging.Unity.Editor.VisualDebuggingPreferencesDrawer
Entitas.VisualDebugging.Unity.Editor.SystemWarningThreshold = 5
Entitas.VisualDebugging.Unity.Editor.DefaultInstanceCreatorFolderPath = Assets/Editor/DefaultInstanceCreator
Entitas.VisualDebugging.Unity.Editor.TypeDrawerFolderPath = Assets/Editor/TypeDrawer
Jenny.exe load: DesperateDevs.CodeGeneration.Plugins
➜ Loading: DesperateDevs.CodeGeneration.Plugins
➜ Resolved: Assets/DesperateDevs/Editor/Plugins/DesperateDevs.CodeGeneration.Plugins.dll
Jenny.exe load: DesperateDevs.CodeGeneration.Unity.Plugins
➜ Loading: DesperateDevs.CodeGeneration.Unity.Plugins
➜ Resolved: Assets/DesperateDevs/Editor/Plugins/DesperateDevs.CodeGeneration.Unity.Plugins.dll
Jenny.exe load: Entitas.CodeGeneration.Plugins
➜ Loading: Entitas.CodeGeneration.Plugins
➜ Resolved: Assets/Entitas/Editor/Plugins/Entitas.CodeGeneration.Plugins.dll
Jenny.exe load: Entitas.Roslyn.CodeGeneration.Plugins
➜ Loading: Entitas.Roslyn.CodeGeneration.Plugins
➜ Resolved: Jenny/Plugins/Entitas.Roslyn/Entitas.Roslyn.CodeGeneration.Plugins.dll
Jenny.exe load: Entitas.VisualDebugging.CodeGeneration.Plugins
➜ Loading: Entitas.VisualDebugging.CodeGeneration.Plugins
➜ Resolved: Assets/Entitas/Editor/Plugins/Entitas.VisualDebugging.CodeGeneration.Plugins.dll
ℹ️ Available: DesperateDevs.CodeGeneration.Unity.Plugins.WarnIfCompilationErrorsPreProcessor
ℹ️ Available: Entitas.CodeGeneration.Plugins.ComponentDataProvider
ℹ️ Available: Entitas.CodeGeneration.Plugins.EntityIndexDataProvider
ℹ️ Available: DesperateDevs.CodeGeneration.Unity.Plugins.DebugLogPostProcessor
Dry Run
Jenny.exe load: DesperateDevs.CodeGeneration.Plugins
➜ Loading: DesperateDevs.CodeGeneration.Plugins
➜ Resolved: Assets/DesperateDevs/Editor/Plugins/DesperateDevs.CodeGeneration.Plugins.dll
Jenny.exe load: DesperateDevs.CodeGeneration.Unity.Plugins
➜ Loading: DesperateDevs.CodeGeneration.Unity.Plugins
➜ Resolved: Assets/DesperateDevs/Editor/Plugins/DesperateDevs.CodeGeneration.Unity.Plugins.dll
Jenny.exe load: Entitas.CodeGeneration.Plugins
➜ Loading: Entitas.CodeGeneration.Plugins
➜ Resolved: Assets/Entitas/Editor/Plugins/Entitas.CodeGeneration.Plugins.dll
Jenny.exe load: Entitas.Roslyn.CodeGeneration.Plugins
➜ Loading: Entitas.Roslyn.CodeGeneration.Plugins
➜ Resolved: Jenny/Plugins/Entitas.Roslyn/Entitas.Roslyn.CodeGeneration.Plugins.dll
Jenny.exe load: Entitas.VisualDebugging.CodeGeneration.Plugins
➜ Loading: Entitas.VisualDebugging.CodeGeneration.Plugins
➜ Resolved: Assets/Entitas/Editor/Plugins/Entitas.VisualDebugging.CodeGeneration.Plugins.dll
Opening Assembly-CSharp.csproj
➜ Loading Dependency: Microsoft.CodeAnalysis.Features, Version=2.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
➜ Loading Dependency: Microsoft.CodeAnalysis.Features, Version=2.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
➜ Loading Dependency: Microsoft.CodeAnalysis.CSharp.Features, Version=2.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
➜ Loading Dependency: Microsoft.CodeAnalysis.CSharp.Features, Version=2.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
➜ Loading Dependency: Microsoft.CodeAnalysis.VisualBasic.Features, Version=2.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
➜ Loading Dependency: Microsoft.CodeAnalysis.VisualBasic.Features, Version=2.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
➜ Loading Dependency: SQLitePCLRaw.core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1488e028ca7ab535
➜ Loading Dependency: SQLitePCLRaw.core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1488e028ca7ab535
System.TypeLoadException: Could not set up field 'Statement' due to: Could not load type of field 'Microsoft.CodeAnalysis.SQLite.Interop.SqlStatement:_rawStatement' (1) due to: Could not load file or assembly 'SQLitePCLRaw.core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1488e028ca7ab535' or one of its dependencies. assembly:/home/kevin/UnityProjects/Unity-2018.2.7f1-testing/Jenny/Plugins/Entitas.Roslyn/Microsoft.CodeAnalysis.Workspaces.Desktop.dll type:SqlStatement member:(null)
at (wrapper managed-to-native) System.RuntimeTypeHandle.is_subclass_of(intptr,intptr)
at System.RuntimeType.IsSubclassOf (System.Type type) <0x7f4cda9651d0 + 0x0003e> in <3833a6edf2074b959d3dab898627f0ac>:0
at System.RuntimeType.IsValueTypeImpl () <0x7f4cda961450 + 0x00020> in <3833a6edf2074b959d3dab898627f0ac>:0
at System.Type.get_IsClass () <0x7f4cda976f70 + 0x00021> in <3833a6edf2074b959d3dab898627f0ac>:0
at System.Composition.TypedParts.Discovery.TypeInspector.InspectTypeForPart (System.Reflection.TypeInfo type, System.Composition.TypedParts.Discovery.DiscoveredPart& part) [0x0000b] in <9aac21a4a3f24063b2b8b59143acddfc>:0
at System.Composition.TypedParts.TypedPartExportDescriptorProvider..ctor (System.Collections.Generic.IEnumerable`1[T] types, System.Composition.Convention.AttributedModelProvider attributeContext) [0x00037] in <9aac21a4a3f24063b2b8b59143acddfc>:0
at System.Composition.Hosting.ContainerConfiguration.CreateContainer () [0x00042] in <9aac21a4a3f24063b2b8b59143acddfc>:0
at Microsoft.CodeAnalysis.Host.Mef.MefHostServices.Create (System.Collections.Generic.IEnumerable`1[T] assemblies) [0x0001e] in <a4b6e470f95047fb822f681582b0e302>:0
at Microsoft.CodeAnalysis.Host.Mef.DesktopMefHostServices.get_DefaultServices () [0x00011] in <1644e7370de141eca00406e57c629f50>:0
at Microsoft.CodeAnalysis.MSBuild.MSBuildWorkspace.Create (System.Collections.Generic.IDictionary`2[TKey,TValue] properties) [0x00000] in <1644e7370de141eca00406e57c629f50>:0
at Microsoft.CodeAnalysis.MSBuild.MSBuildWorkspace.Create () [0x00000] in <1644e7370de141eca00406e57c629f50>:0
at DesperateDevs.Roslyn.ProjectParser..ctor (System.String projectPath) [0x0001b] in <b590fa441c8344e8bb2722e51c425b28>:0
at DesperateDevs.Roslyn.CodeGeneration.Plugins.PluginUtil.GetCachedProjectParser (System.Collections.Generic.Dictionary`2[TKey,TValue] objectCache, System.String projectPath) [0x0000f] in <a13d56fd143a49ceb960b6591f07351a>:0
at Entitas.Roslyn.CodeGeneration.Plugins.CleanupDataProvider.GetData () [0x00021] in <9b3d59da2f5047e98ce32419dc56e7c7>:0
at DesperateDevs.CodeGeneration.CodeGenerator.CodeGenerator.generate (System.String messagePrefix, DesperateDevs.CodeGeneration.IPreProcessor[] preProcessors, DesperateDevs.CodeGeneration.IDataProvider[] dataProviders, DesperateDevs.CodeGeneration.ICodeGenerator[] codeGenerators, DesperateDevs.CodeGeneration.IPostProcessor[] postProcessors) [0x00125] in <f4aeeb22e469410b9430bcbbbc55fc17>:0
at DesperateDevs.CodeGeneration.CodeGenerator.CodeGenerator.DryRun () [0x000c2] in <f4aeeb22e469410b9430bcbbbc55fc17>:0
at DesperateDevs.CodeGeneration.CodeGenerator.CLI.DoctorCommand.run () [0x00037] in <f4281e7008534af4a7b64d7bfa1438b4>:0
at DesperateDevs.CLI.Utils.AbstractCommand.Run (DesperateDevs.CLI.Utils.CLIProgram program, System.String[] args) [0x0001f] in <6f1644502be0452880cd4a5c4a6c102a>:0
at DesperateDevs.Serialization.CLI.Utils.AbstractPreferencesCommand.Run (DesperateDevs.CLI.Utils.CLIProgram program, System.String[] args) [0x000b7] in <9f0f6b628fda4b81b4841c3997c7b2fb>:0
at DesperateDevs.CLI.Utils.CLIProgram.runCommand (System.String[] args) [0x0000e] in <6f1644502be0452880cd4a5c4a6c102a>:0
Cheers
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Reactions: 1
- Comments: 17 (5 by maintainers)
I’ve found a work around for this dll issue that doesn’t involve rolling back the mono version. See here: github.com/dotnet/docfx/issues/3389
net45SQLitePCLRaw.core.dllinto<your-project>/Jenny/.I had the same problem on my Mac with Mono 5.16. Downgrading to 5.14 worked for me as well.
I had the same issue (on Arch linux) with mono-5.16.0.179-1-x86_64. I was able to get Jenny working again by downgrading to mono-5.14.0.177-1-x86_64.
I originally had used homebrew to install mono, but when I installed Visual Studio for Mac it installed its own version automatically. As far as I remember using VS with 5.14 created huge cpu spikes and I was really glad when 5.16 arrived and fixed it for me. While I prefer working in VS Code the Unity debugging plugin is not working for me, so I had to use Visual Studio for that.