com.wallstop-studios.dxmessaging 2.2.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (270) hide show
  1. package/CHANGELOG.md +315 -67
  2. package/CHANGELOG.md.meta +7 -7
  3. package/Editor/Analyzers/BaseCallIlInspector.cs +277 -0
  4. package/Editor/Analyzers/BaseCallIlInspector.cs.meta +11 -0
  5. package/Editor/Analyzers/BaseCallLogMessageParser.cs +295 -0
  6. package/Editor/Analyzers/BaseCallLogMessageParser.cs.meta +11 -0
  7. package/Editor/Analyzers/BaseCallReportAggregator.cs +308 -0
  8. package/Editor/Analyzers/BaseCallReportAggregator.cs.meta +11 -0
  9. package/Editor/Analyzers/BaseCallTypeScanner.cs +110 -0
  10. package/Editor/Analyzers/BaseCallTypeScanner.cs.meta +11 -0
  11. package/Editor/Analyzers/BaseCallTypeScannerCore.cs +562 -0
  12. package/Editor/Analyzers/BaseCallTypeScannerCore.cs.meta +11 -0
  13. package/Editor/Analyzers/DxMessagingConsoleHarvester.cs +1129 -0
  14. package/Editor/Analyzers/DxMessagingConsoleHarvester.cs.meta +11 -0
  15. package/Editor/Analyzers/Microsoft.CodeAnalysis.CSharp.dll.meta +44 -44
  16. package/Editor/Analyzers/Microsoft.CodeAnalysis.dll.meta +44 -44
  17. package/Editor/Analyzers/System.Collections.Immutable.dll.meta +44 -44
  18. package/Editor/Analyzers/System.Reflection.Metadata.dll.meta +44 -44
  19. package/Editor/Analyzers/System.Runtime.CompilerServices.Unsafe.dll.meta +44 -44
  20. package/Editor/Analyzers/WallstopStudios.DxMessaging.Analyzer.dll +0 -0
  21. package/Editor/Analyzers/WallstopStudios.DxMessaging.Analyzer.dll.meta +46 -0
  22. package/Editor/Analyzers/WallstopStudios.DxMessaging.SourceGenerators.dll +0 -0
  23. package/Editor/Analyzers/WallstopStudios.DxMessaging.SourceGenerators.dll.meta +72 -72
  24. package/Editor/Analyzers.meta +8 -8
  25. package/Editor/AssemblyInfo.cs.meta +11 -3
  26. package/Editor/CustomEditors/MessageAwareComponentFallbackEditor.cs +81 -0
  27. package/Editor/CustomEditors/MessageAwareComponentFallbackEditor.cs.meta +11 -0
  28. package/Editor/CustomEditors/MessageAwareComponentInspectorOverlay.cs +429 -0
  29. package/Editor/CustomEditors/MessageAwareComponentInspectorOverlay.cs.meta +11 -0
  30. package/Editor/CustomEditors/MessagingComponentEditor.cs +1 -1
  31. package/Editor/CustomEditors/MessagingComponentEditor.cs.meta +11 -3
  32. package/Editor/CustomEditors.meta +2 -2
  33. package/Editor/DxMessagingEditorIdle.cs +62 -0
  34. package/Editor/DxMessagingEditorIdle.cs.meta +11 -0
  35. package/Editor/DxMessagingEditorInitializer.cs +112 -15
  36. package/Editor/DxMessagingEditorInitializer.cs.meta +11 -3
  37. package/Editor/DxMessagingEditorLog.cs +32 -0
  38. package/Editor/DxMessagingEditorLog.cs.meta +11 -0
  39. package/Editor/DxMessagingMenu.cs.meta +11 -11
  40. package/Editor/DxMessagingSceneBuildProcessor.cs.meta +11 -11
  41. package/Editor/Settings/DxMessagingBaseCallIgnoreSync.cs +313 -0
  42. package/Editor/Settings/DxMessagingBaseCallIgnoreSync.cs.meta +11 -0
  43. package/Editor/Settings/DxMessagingSettings.cs +261 -11
  44. package/Editor/Settings/DxMessagingSettings.cs.meta +11 -3
  45. package/Editor/Settings/DxMessagingSettingsProvider.cs +50 -33
  46. package/Editor/Settings/DxMessagingSettingsProvider.cs.meta +11 -3
  47. package/Editor/Settings.meta +2 -2
  48. package/Editor/SetupCscRsp.cs +406 -39
  49. package/Editor/SetupCscRsp.cs.meta +11 -3
  50. package/Editor/Testing/MessagingComponentEditorHarness.cs +2 -2
  51. package/Editor/Testing/MessagingComponentEditorHarness.cs.meta +11 -3
  52. package/Editor/Testing.meta +3 -3
  53. package/Editor/WallstopStudios.DxMessaging.Editor.asmdef +14 -14
  54. package/Editor/WallstopStudios.DxMessaging.Editor.asmdef.meta +7 -7
  55. package/Editor.meta +8 -8
  56. package/LICENSE.md +9 -9
  57. package/LICENSE.md.meta +7 -7
  58. package/README.md +940 -900
  59. package/README.md.meta +7 -7
  60. package/Runtime/AssemblyInfo.cs +4 -0
  61. package/Runtime/AssemblyInfo.cs.meta +11 -3
  62. package/Runtime/Core/Attributes/DxAutoConstructorAttribute.cs.meta +11 -3
  63. package/Runtime/Core/Attributes/DxBroadcastMessageAttribute.cs.meta +11 -3
  64. package/Runtime/Core/Attributes/DxIgnoreMissingBaseCallAttribute.cs +26 -0
  65. package/Runtime/Core/Attributes/DxIgnoreMissingBaseCallAttribute.cs.meta +11 -0
  66. package/Runtime/Core/Attributes/DxOptionalParameterAttribute.cs +2 -4
  67. package/Runtime/Core/Attributes/DxOptionalParameterAttribute.cs.meta +11 -3
  68. package/Runtime/Core/Attributes/DxTargetedMessageAttribute.cs.meta +11 -3
  69. package/Runtime/Core/Attributes/DxUntargetedMessageAttribute.cs.meta +11 -3
  70. package/Runtime/Core/Attributes/Il2CppSetOptionAttribute.cs +56 -0
  71. package/Runtime/Core/Attributes/Il2CppSetOptionAttribute.cs.meta +11 -0
  72. package/Runtime/Core/Attributes.meta +2 -2
  73. package/Runtime/Core/Configuration/DxMessagingRuntimeSettings.cs +195 -0
  74. package/Runtime/Core/Configuration/DxMessagingRuntimeSettings.cs.meta +11 -0
  75. package/Runtime/Core/Configuration/DxMessagingRuntimeSettingsProvider.cs +179 -0
  76. package/Runtime/Core/Configuration/DxMessagingRuntimeSettingsProvider.cs.meta +11 -0
  77. package/Runtime/Core/Configuration.meta +9 -0
  78. package/Runtime/Core/DataStructure/CyclicBuffer.cs +46 -28
  79. package/Runtime/Core/DataStructure/CyclicBuffer.cs.meta +11 -3
  80. package/Runtime/Core/DataStructure.meta +2 -2
  81. package/Runtime/Core/Diagnostics/MessageEmissionData.cs.meta +11 -3
  82. package/Runtime/Core/Diagnostics/MessageRegistrationData.cs.meta +11 -3
  83. package/Runtime/Core/Diagnostics/MessageRegistrationType.cs.meta +11 -3
  84. package/Runtime/Core/Diagnostics.meta +2 -2
  85. package/Runtime/Core/DxMessagingStaticState.cs +19 -0
  86. package/Runtime/Core/DxMessagingStaticState.cs.meta +11 -11
  87. package/Runtime/Core/Extensions/EnumExtensions.cs +6 -5
  88. package/Runtime/Core/Extensions/EnumExtensions.cs.meta +11 -3
  89. package/Runtime/Core/Extensions/IListExtensions.cs.meta +11 -3
  90. package/Runtime/Core/Extensions/MessageBusExtensions.cs.meta +12 -12
  91. package/Runtime/Core/Extensions/MessageExtensions.cs +0 -60
  92. package/Runtime/Core/Extensions/MessageExtensions.cs.meta +11 -11
  93. package/Runtime/Core/Extensions.meta +8 -8
  94. package/Runtime/Core/Helper/MessageCache.cs +32 -0
  95. package/Runtime/Core/Helper/MessageCache.cs.meta +11 -3
  96. package/Runtime/Core/Helper/MessageHelperIndexer.cs.meta +11 -3
  97. package/Runtime/Core/Helper.meta +2 -2
  98. package/Runtime/Core/IMessage.cs +3 -3
  99. package/Runtime/Core/IMessage.cs.meta +11 -11
  100. package/Runtime/Core/InstanceId.cs +25 -1
  101. package/Runtime/Core/InstanceId.cs.meta +11 -11
  102. package/Runtime/Core/Internal/DxUnsafe.cs +60 -0
  103. package/Runtime/Core/Internal/DxUnsafe.cs.meta +11 -0
  104. package/Runtime/Core/Internal/FlatDispatch.cs +198 -0
  105. package/Runtime/Core/Internal/FlatDispatch.cs.meta +11 -0
  106. package/Runtime/Core/Internal/TypedGlobalSlotIndex.cs +38 -0
  107. package/Runtime/Core/Internal/TypedGlobalSlotIndex.cs.meta +11 -0
  108. package/Runtime/Core/Internal/TypedSlotIndex.cs +81 -0
  109. package/Runtime/Core/Internal/TypedSlotIndex.cs.meta +11 -0
  110. package/Runtime/Core/Internal/TypedSlots.cs +597 -0
  111. package/Runtime/Core/Internal/TypedSlots.cs.meta +11 -0
  112. package/Runtime/Core/Internal.meta +9 -0
  113. package/Runtime/Core/MessageBus/DiagnosticsTarget.cs.meta +11 -11
  114. package/Runtime/Core/MessageBus/GlobalMessageBusProvider.cs.meta +11 -11
  115. package/Runtime/Core/MessageBus/IMessageBus.cs +189 -15
  116. package/Runtime/Core/MessageBus/IMessageBus.cs.meta +11 -11
  117. package/Runtime/Core/MessageBus/IMessageBusProvider.cs.meta +11 -11
  118. package/Runtime/Core/MessageBus/IMessageRegistrationBuilder.cs +1 -0
  119. package/Runtime/Core/MessageBus/IMessageRegistrationBuilder.cs.meta +11 -11
  120. package/Runtime/Core/MessageBus/Internal/BusContextIndex.cs +16 -0
  121. package/Runtime/Core/MessageBus/Internal/BusContextIndex.cs.meta +11 -0
  122. package/Runtime/Core/MessageBus/Internal/BusSinkIndex.cs +40 -0
  123. package/Runtime/Core/MessageBus/Internal/BusSinkIndex.cs.meta +11 -0
  124. package/Runtime/Core/MessageBus/Internal/BusSlots.cs +719 -0
  125. package/Runtime/Core/MessageBus/Internal/BusSlots.cs.meta +11 -0
  126. package/Runtime/Core/MessageBus/Internal/DispatchKind.cs +38 -0
  127. package/Runtime/Core/MessageBus/Internal/DispatchKind.cs.meta +11 -0
  128. package/Runtime/Core/MessageBus/Internal/DispatchPhase.cs +20 -0
  129. package/Runtime/Core/MessageBus/Internal/DispatchPhase.cs.meta +11 -0
  130. package/Runtime/Core/MessageBus/Internal/DispatchVariant.cs +28 -0
  131. package/Runtime/Core/MessageBus/Internal/DispatchVariant.cs.meta +11 -0
  132. package/Runtime/Core/MessageBus/Internal/IEvictableSlot.cs +48 -0
  133. package/Runtime/Core/MessageBus/Internal/IEvictableSlot.cs.meta +11 -0
  134. package/Runtime/Core/MessageBus/Internal/ISweepable.cs +15 -0
  135. package/Runtime/Core/MessageBus/Internal/ISweepable.cs.meta +11 -0
  136. package/Runtime/Core/MessageBus/Internal/RegistrationMethodAxes.cs +222 -0
  137. package/Runtime/Core/MessageBus/Internal/RegistrationMethodAxes.cs.meta +11 -0
  138. package/Runtime/Core/MessageBus/Internal/SlotKey.cs +192 -0
  139. package/Runtime/Core/MessageBus/Internal/SlotKey.cs.meta +11 -0
  140. package/Runtime/Core/MessageBus/Internal.meta +9 -0
  141. package/Runtime/Core/MessageBus/MessageBus.cs +5366 -3838
  142. package/Runtime/Core/MessageBus/MessageBus.cs.meta +11 -11
  143. package/Runtime/Core/MessageBus/MessageBusRebindMode.cs.meta +11 -11
  144. package/Runtime/Core/MessageBus/MessageRegistrationBuilder.cs +187 -14
  145. package/Runtime/Core/MessageBus/MessageRegistrationBuilder.cs.meta +11 -11
  146. package/Runtime/Core/MessageBus/MessagingRegistration.cs.meta +11 -11
  147. package/Runtime/Core/MessageBus/RegistrationLog.cs.meta +11 -11
  148. package/Runtime/Core/MessageBus.meta +8 -8
  149. package/Runtime/Core/MessageHandler.cs +2399 -1042
  150. package/Runtime/Core/MessageHandler.cs.meta +11 -11
  151. package/Runtime/Core/MessageRegistrationHandle.cs.meta +11 -11
  152. package/Runtime/Core/MessageRegistrationToken.cs +429 -44
  153. package/Runtime/Core/MessageRegistrationToken.cs.meta +11 -11
  154. package/Runtime/Core/Messages/GlobalStringMessage.cs.meta +11 -3
  155. package/Runtime/Core/Messages/IBroadcastMessage.cs.meta +11 -11
  156. package/Runtime/Core/Messages/ITargetedMessage.cs.meta +11 -11
  157. package/Runtime/Core/Messages/IUntargetedMessage.cs.meta +11 -11
  158. package/Runtime/Core/Messages/ReflexiveMessage.cs.meta +11 -3
  159. package/Runtime/Core/Messages/SourcedStringMessage.cs.meta +11 -11
  160. package/Runtime/Core/Messages/StringMessage.cs.meta +11 -3
  161. package/Runtime/Core/Messages.meta +8 -8
  162. package/Runtime/Core/MessagingDebug.cs.meta +11 -11
  163. package/Runtime/Core/Pooling/CollectionPool.cs +266 -0
  164. package/Runtime/Core/Pooling/CollectionPool.cs.meta +11 -0
  165. package/Runtime/Core/Pooling/CollectionPoolDiagnostics.cs +30 -0
  166. package/Runtime/Core/Pooling/CollectionPoolDiagnostics.cs.meta +11 -0
  167. package/Runtime/Core/Pooling/DxPools.cs +157 -0
  168. package/Runtime/Core/Pooling/DxPools.cs.meta +11 -0
  169. package/Runtime/Core/Pooling/EvictionPlayerLoopHook.cs +106 -0
  170. package/Runtime/Core/Pooling/EvictionPlayerLoopHook.cs.meta +11 -0
  171. package/Runtime/Core/Pooling/IDxMessagingClock.cs +18 -0
  172. package/Runtime/Core/Pooling/IDxMessagingClock.cs.meta +11 -0
  173. package/Runtime/Core/Pooling/PoolDiagnosticsSnapshot.cs +55 -0
  174. package/Runtime/Core/Pooling/PoolDiagnosticsSnapshot.cs.meta +11 -0
  175. package/Runtime/Core/Pooling/StopwatchClock.cs +27 -0
  176. package/Runtime/Core/Pooling/StopwatchClock.cs.meta +11 -0
  177. package/Runtime/Core/Pooling/UnityRealtimeClock.cs +31 -0
  178. package/Runtime/Core/Pooling/UnityRealtimeClock.cs.meta +11 -0
  179. package/Runtime/Core/Pooling.meta +9 -0
  180. package/Runtime/Core.meta +8 -8
  181. package/Runtime/Unity/CurrentGlobalMessageBusProvider.cs.meta +12 -12
  182. package/Runtime/Unity/DxMessagingRuntimeInitializer.cs.meta +11 -11
  183. package/Runtime/Unity/InitialGlobalMessageBusProvider.cs.meta +12 -12
  184. package/Runtime/Unity/Integrations/Reflex/AssemblyInfo.cs.meta +11 -3
  185. package/Runtime/Unity/Integrations/Reflex/ReflexRegistrationInstaller.cs +73 -0
  186. package/Runtime/Unity/Integrations/Reflex/ReflexRegistrationInstaller.cs.meta +11 -11
  187. package/Runtime/Unity/Integrations/Reflex/WallstopStudios.DxMessaging.Reflex.asmdef +20 -20
  188. package/Runtime/Unity/Integrations/Reflex/WallstopStudios.DxMessaging.Reflex.asmdef.meta +7 -7
  189. package/Runtime/Unity/Integrations/Reflex.meta +8 -8
  190. package/Runtime/Unity/Integrations/VContainer/AssemblyInfo.cs.meta +11 -3
  191. package/Runtime/Unity/Integrations/VContainer/VContainerRegistrationExtensions.cs +109 -1
  192. package/Runtime/Unity/Integrations/VContainer/VContainerRegistrationExtensions.cs.meta +11 -11
  193. package/Runtime/Unity/Integrations/VContainer/WallstopStudios.DxMessaging.VContainer.asmdef +30 -30
  194. package/Runtime/Unity/Integrations/VContainer/WallstopStudios.DxMessaging.VContainer.asmdef.meta +7 -7
  195. package/Runtime/Unity/Integrations/VContainer.meta +8 -8
  196. package/Runtime/Unity/Integrations/Zenject/AssemblyInfo.cs.meta +11 -3
  197. package/Runtime/Unity/Integrations/Zenject/WallstopStudios.DxMessaging.Zenject.asmdef +30 -30
  198. package/Runtime/Unity/Integrations/Zenject/WallstopStudios.DxMessaging.Zenject.asmdef.meta +7 -7
  199. package/Runtime/Unity/Integrations/Zenject/ZenjectRegistrationInstaller.cs +79 -1
  200. package/Runtime/Unity/Integrations/Zenject/ZenjectRegistrationInstaller.cs.meta +11 -11
  201. package/Runtime/Unity/Integrations/Zenject.meta +8 -8
  202. package/Runtime/Unity/Integrations.meta +8 -8
  203. package/Runtime/Unity/MessageAwareComponent.cs +74 -0
  204. package/Runtime/Unity/MessageAwareComponent.cs.meta +11 -11
  205. package/Runtime/Unity/MessageBusProviderHandle.cs.meta +12 -12
  206. package/Runtime/Unity/MessagingComponent.cs +43 -10
  207. package/Runtime/Unity/MessagingComponent.cs.meta +11 -11
  208. package/Runtime/Unity/MessagingComponentInstaller.cs.meta +12 -12
  209. package/Runtime/Unity/ScriptableMessageBusProvider.cs.meta +12 -12
  210. package/Runtime/Unity.meta +8 -8
  211. package/Runtime/WallstopStudios.DxMessaging.asmdef +14 -14
  212. package/Runtime/WallstopStudios.DxMessaging.asmdef.meta +7 -7
  213. package/Runtime.meta +8 -8
  214. package/Samples~/DI/Prefabs/MessagingInstallerSample.prefab +98 -98
  215. package/Samples~/DI/Prefabs/MessagingInstallerSample.prefab.meta +7 -7
  216. package/Samples~/DI/Prefabs.meta +8 -8
  217. package/Samples~/DI/Providers/GlobalMessageBusProvider.asset +14 -14
  218. package/Samples~/DI/Providers/GlobalMessageBusProvider.asset.meta +8 -8
  219. package/Samples~/DI/Providers/InitialGlobalMessageBusProvider.asset +14 -14
  220. package/Samples~/DI/Providers/InitialGlobalMessageBusProvider.asset.meta +8 -8
  221. package/Samples~/DI/Providers.meta +8 -8
  222. package/Samples~/DI/README.md +51 -51
  223. package/Samples~/DI/README.md.meta +7 -7
  224. package/Samples~/DI/Reflex/SampleInstaller.cs +7 -0
  225. package/Samples~/DI/Reflex/SampleInstaller.cs.meta +11 -11
  226. package/Samples~/DI/Reflex.meta +8 -8
  227. package/Samples~/DI/VContainer/SampleLifetimeScope.cs +6 -1
  228. package/Samples~/DI/VContainer/SampleLifetimeScope.cs.meta +11 -11
  229. package/Samples~/DI/VContainer.meta +8 -8
  230. package/Samples~/DI/Zenject/SampleInstaller.cs +8 -0
  231. package/Samples~/DI/Zenject/SampleInstaller.cs.meta +11 -11
  232. package/Samples~/DI/Zenject.meta +8 -8
  233. package/Samples~/DI.meta +8 -8
  234. package/Samples~/Mini Combat/Boot.cs.meta +11 -11
  235. package/Samples~/Mini Combat/Enemy.cs.meta +11 -11
  236. package/Samples~/Mini Combat/Messages.cs.meta +11 -11
  237. package/Samples~/Mini Combat/Player.cs.meta +11 -11
  238. package/Samples~/Mini Combat/README.md +324 -323
  239. package/Samples~/Mini Combat/README.md.meta +7 -7
  240. package/Samples~/Mini Combat/UIOverlay.cs.meta +11 -11
  241. package/Samples~/Mini Combat/Walkthrough.md +430 -430
  242. package/Samples~/Mini Combat/Walkthrough.md.meta +7 -7
  243. package/Samples~/Mini Combat/WallstopStudios.DxMessaging.MiniCombat.Sample.asmdef +13 -13
  244. package/Samples~/Mini Combat/WallstopStudios.DxMessaging.MiniCombat.Sample.asmdef.meta +7 -7
  245. package/Samples~/Mini Combat.meta +8 -8
  246. package/Samples~/UI Buttons + Inspector/DiagnosticsEnabler.cs.meta +11 -11
  247. package/Samples~/UI Buttons + Inspector/Messages.cs.meta +11 -11
  248. package/Samples~/UI Buttons + Inspector/MessagingObserver.cs.meta +11 -11
  249. package/Samples~/UI Buttons + Inspector/README.md +210 -209
  250. package/Samples~/UI Buttons + Inspector/README.md.meta +7 -7
  251. package/Samples~/UI Buttons + Inspector/UIButtonEmitter.cs.meta +11 -11
  252. package/Samples~/UI Buttons + Inspector/WallstopStudios.DxMessaging.UIButtons.Sample.asmdef +13 -13
  253. package/Samples~/UI Buttons + Inspector/WallstopStudios.DxMessaging.UIButtons.Sample.asmdef.meta +7 -7
  254. package/Samples~/UI Buttons + Inspector.meta +8 -8
  255. package/SourceGenerators/Directory.Build.props +50 -3
  256. package/SourceGenerators/Directory.Build.props.meta +7 -7
  257. package/SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/DxAutoConstructorGenerator.cs +96 -63
  258. package/SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/DxAutoConstructorGenerator.cs.meta +11 -11
  259. package/SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/DxMessageIdGenerator.cs +745 -87
  260. package/SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/DxMessageIdGenerator.cs.meta +11 -3
  261. package/SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators.csproj +39 -46
  262. package/SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators.csproj.meta +7 -7
  263. package/SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators.meta +8 -8
  264. package/SourceGenerators/global.json +7 -0
  265. package/SourceGenerators/global.json.meta +7 -0
  266. package/SourceGenerators.meta +8 -8
  267. package/Third Party Notices.md +3 -3
  268. package/Third Party Notices.md.meta +7 -7
  269. package/package.json +102 -92
  270. package/package.json.meta +7 -7
@@ -1,3 +1,11 @@
1
- fileFormatVersion: 2
2
- guid: 8525b467bd2c430a90ccee97f321a845
3
- timeCreated: 1744403125
1
+ fileFormatVersion: 2
2
+ guid: 8525b467bd2c430a90ccee97f321a845
3
+ MonoImporter:
4
+ externalObjects: {}
5
+ serializedVersion: 2
6
+ defaultReferences: []
7
+ executionOrder: 0
8
+ icon: {instanceID: 0}
9
+ userData:
10
+ assetBundleName:
11
+ assetBundleVariant:
@@ -1,79 +1,72 @@
1
1
  <Project Sdk="Microsoft.NET.Sdk">
2
2
  <PropertyGroup>
3
3
  <TargetFramework>netstandard2.0</TargetFramework>
4
- <LangVersion>latest</LangVersion>
5
- <MicrosoftCodeAnalysisVersion>4.2.0</MicrosoftCodeAnalysisVersion>
6
- <SystemCollectionsImmutableVersion>5.0.0</SystemCollectionsImmutableVersion>
7
- <SystemReflectionMetadataVersion>9.0.0</SystemReflectionMetadataVersion>
8
- <SystemRuntimeCompilerServicesUnsafeVersion>6.0.0</SystemRuntimeCompilerServicesUnsafeVersion>
9
- <SystemTextEncodingsWebVersion>6.0.0</SystemTextEncodingsWebVersion>
4
+ <!-- DO NOT bump this without verifying Unity 2021 still loads the source
5
+ generators. Unity 2021's analyzer/source-generator loader runs on
6
+ Roslyn 3.8.x and fails to instantiate generators compiled against
7
+ Roslyn 4.x. No automated test pins this anymore; verify in Unity
8
+ before changing it. -->
9
+ <MicrosoftCodeAnalysisVersion>3.8.0</MicrosoftCodeAnalysisVersion>
10
+ <AssemblyInformationalVersion>$(Version)</AssemblyInformationalVersion>
10
11
  </PropertyGroup>
11
12
  <ItemGroup>
12
13
  <PackageReference Include="Microsoft.CodeAnalysis.Analyzers" Version="3.3.3">
13
14
  <PrivateAssets>all</PrivateAssets>
14
15
  <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
15
16
  </PackageReference>
16
- <PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="4.2.0">
17
+ <PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="3.8.0">
17
18
  <PrivateAssets>all</PrivateAssets>
18
19
  </PackageReference>
19
20
  <PackageReference Include="System.Collections.Immutable" Version="5.0.0">
20
21
  <PrivateAssets>all</PrivateAssets>
21
22
  </PackageReference>
22
23
  </ItemGroup>
23
- <!-- Post-build copy of analyzer DLL/PDB into package Editor/Analyzers and, when building inside a Unity project Packages/, into Assets/Editor/Wallstop Studios -->
24
- <Target Name="PostBuildCopyAnalyzers" AfterTargets="Build">
24
+ <!-- Post-build copy of the source-generator DLL into the analyzer payload
25
+ directory selected by AnalyzerPayloadOutputDir.
26
+
27
+ This target copies ONLY the freshly-built source-generator DLL.
28
+ The Roslyn runtime deps that this package ships alongside it
29
+ (Microsoft.CodeAnalysis[.CSharp], System.Collections.Immutable,
30
+ System.Reflection.Metadata, System.Runtime.CompilerServices.Unsafe)
31
+ are committed in Editor/Analyzers/ as fixed bytes and are NOT
32
+ re-copied by this build: a normal (non-clean) rebuild therefore
33
+ leaves those committed dep DLLs untouched. Do NOT wipe
34
+ Editor/Analyzers/ wholesale; the committed dep bytes are the proven,
35
+ Unity-validated set and are not reproduced by this 3.8.0-pinned build
36
+ (the committed deps were built against Roslyn 4.2.0).
37
+
38
+ AnalyzerPayloadOutputDir defaults to Editor/Analyzers for local refresh
39
+ builds. CI freshness checks pass a temp directory so builds do not dirty
40
+ the worktree. CopyAnalyzerPayload=false disables this target for tests
41
+ that reference this project but do not validate the shipped payload.
42
+
43
+ The shipped Editor/Analyzers/*.dll.meta files for the two analyzer
44
+ assemblies carry the analyzer configuration directly, and SetupCscRsp
45
+ copies the analyzer DLLs into Assets/Plugins/Editor/ so the source
46
+ generator applies project-wide. -->
47
+ <Target
48
+ Name="PostBuildCopyAnalyzers"
49
+ AfterTargets="Build"
50
+ Condition="'$(CopyAnalyzerPayload)' == 'true'"
51
+ >
25
52
  <!-- Compute paths relative to this project directory -->
26
53
  <PropertyGroup>
27
54
  <!-- Repo/package root: two levels up from this project directory -->
28
55
  <PackageRootDir>$([System.IO.Path]::GetFullPath('$(MSBuildProjectDirectory)/../../'))</PackageRootDir>
29
- <EditorAnalyzersDir>$([System.IO.Path]::Combine('$(PackageRootDir)', 'Editor', 'Analyzers'))</EditorAnalyzersDir>
30
- <!-- Unity project root candidate when this package is inside Unity's Packages folder (4 levels up) -->
31
- <UnityRootCandidate1>$([System.IO.Path]::GetFullPath('$(MSBuildProjectDirectory)/../../../../'))</UnityRootCandidate1>
32
- <UnityAssetsDir>$([System.IO.Path]::Combine('$(UnityRootCandidate1)', 'Assets'))</UnityAssetsDir>
33
- <UnityAssetsEditorDir>$([System.IO.Path]::Combine('$(UnityAssetsDir)', 'Editor'))</UnityAssetsEditorDir>
34
- <UnityAssetsEditorWallstopStudiosDir>$([System.IO.Path]::Combine('$(UnityAssetsEditorDir)', 'Wallstop Studios'))</UnityAssetsEditorWallstopStudiosDir>
35
- <UnityAssetsPluginsEditorWallstopDir>$([System.IO.Path]::Combine('$(UnityAssetsDir)', 'Plugins', 'Editor', 'WallstopStudios.DxMessaging'))</UnityAssetsPluginsEditorWallstopDir>
36
56
  <AnalyzerDll>$(TargetPath)</AnalyzerDll>
37
57
  </PropertyGroup>
38
58
  <ItemGroup>
39
59
  <AnalyzerOutput Include="$(AnalyzerDll)" />
40
- <AnalyzerDependency Include="$(NuGetPackageRoot)microsoft.codeanalysis.common\$(MicrosoftCodeAnalysisVersion)\lib\netstandard2.0\Microsoft.CodeAnalysis.dll" />
41
- <AnalyzerDependency Include="$(NuGetPackageRoot)microsoft.codeanalysis.csharp\$(MicrosoftCodeAnalysisVersion)\lib\netstandard2.0\Microsoft.CodeAnalysis.CSharp.dll" />
42
- <AnalyzerDependency Include="$(NuGetPackageRoot)system.collections.immutable\$(SystemCollectionsImmutableVersion)\lib\netstandard2.0\System.Collections.Immutable.dll" />
43
- <AnalyzerDependency
44
- Include="$(NuGetPackageRoot)system.reflection.metadata\$(SystemReflectionMetadataVersion)\lib\net6.0\System.Reflection.Metadata.dll"
45
- Condition="Exists('$(NuGetPackageRoot)system.reflection.metadata\$(SystemReflectionMetadataVersion)\lib\net6.0\System.Reflection.Metadata.dll')"
46
- />
47
- <AnalyzerDependency
48
- Include="$(NuGetPackageRoot)system.reflection.metadata\$(SystemReflectionMetadataVersion)\lib\netstandard2.0\System.Reflection.Metadata.dll"
49
- Condition="Exists('$(NuGetPackageRoot)system.reflection.metadata\$(SystemReflectionMetadataVersion)\lib\netstandard2.0\System.Reflection.Metadata.dll')"
50
- />
51
- <AnalyzerDependency Include="$(NuGetPackageRoot)system.runtime.compilerservices.unsafe\$(SystemRuntimeCompilerServicesUnsafeVersion)\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll" />
52
60
  <AllAnalyzerFiles Include="@(AnalyzerOutput)" />
53
- <AllAnalyzerFiles
54
- Include="@(AnalyzerDependency)"
55
- Condition="Exists('%(AnalyzerDependency.Identity)')"
56
- />
57
61
  </ItemGroup>
58
- <!-- Copy into package Editor/Analyzers (used by SetupCscRsp and package consumers) -->
59
- <MakeDir Directories="$(EditorAnalyzersDir)" Condition="!Exists('$(EditorAnalyzersDir)')" />
60
- <Copy
61
- SourceFiles="@(AllAnalyzerFiles)"
62
- DestinationFolder="$(EditorAnalyzersDir)"
63
- SkipUnchangedFiles="true"
64
- />
65
- <!-- If building from inside a Unity project (Assets exists), also copy into Assets/Editor/Wallstop Studios -->
66
- <!-- Preferred legacy Plugins path used by SetupCscRsp -->
67
62
  <MakeDir
68
- Directories="$(UnityAssetsPluginsEditorWallstopDir)"
69
- Condition="Exists('$(UnityAssetsDir)') AND !Exists('$(UnityAssetsPluginsEditorWallstopDir)')"
63
+ Directories="$(AnalyzerPayloadOutputDir)"
64
+ Condition="!Exists('$(AnalyzerPayloadOutputDir)')"
70
65
  />
71
66
  <Copy
72
67
  SourceFiles="@(AllAnalyzerFiles)"
73
- DestinationFolder="$(UnityAssetsPluginsEditorWallstopDir)"
68
+ DestinationFolder="$(AnalyzerPayloadOutputDir)"
74
69
  SkipUnchangedFiles="true"
75
- Condition="Exists('$(UnityAssetsPluginsEditorWallstopDir)')"
76
70
  />
77
- <!-- Removed copy to Assets/Editor/Wallstop Studios as requested -->
78
71
  </Target>
79
72
  </Project>
@@ -1,7 +1,7 @@
1
- fileFormatVersion: 2
2
- guid: e4915fed9609ee64f9cbdaaf0324b3d0
3
- DefaultImporter:
4
- externalObjects: {}
5
- userData:
6
- assetBundleName:
7
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: e4915fed9609ee64f9cbdaaf0324b3d0
3
+ DefaultImporter:
4
+ externalObjects: {}
5
+ userData:
6
+ assetBundleName:
7
+ assetBundleVariant:
@@ -1,8 +1,8 @@
1
- fileFormatVersion: 2
2
- guid: c7573be5899a5694398fa600a0bcd7b1
3
- folderAsset: yes
4
- DefaultImporter:
5
- externalObjects: {}
6
- userData:
7
- assetBundleName:
8
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: c7573be5899a5694398fa600a0bcd7b1
3
+ folderAsset: yes
4
+ DefaultImporter:
5
+ externalObjects: {}
6
+ userData:
7
+ assetBundleName:
8
+ assetBundleVariant:
@@ -0,0 +1,7 @@
1
+ {
2
+ "sdk": {
3
+ "version": "9.0.314",
4
+ "rollForward": "disable",
5
+ "allowPrerelease": false
6
+ }
7
+ }
@@ -0,0 +1,7 @@
1
+ fileFormatVersion: 2
2
+ guid: e1b04a4e87df47fbb3cba7a0f6d2f921
3
+ DefaultImporter:
4
+ externalObjects: {}
5
+ userData:
6
+ assetBundleName:
7
+ assetBundleVariant:
@@ -1,8 +1,8 @@
1
- fileFormatVersion: 2
2
- guid: d606141670307c245b7a3726659948e6
3
- folderAsset: yes
4
- DefaultImporter:
5
- externalObjects: {}
6
- userData:
7
- assetBundleName:
8
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: d606141670307c245b7a3726659948e6
3
+ folderAsset: yes
4
+ DefaultImporter:
5
+ externalObjects: {}
6
+ userData:
7
+ assetBundleName:
8
+ assetBundleVariant:
@@ -1,3 +1,3 @@
1
- # Third Party Notices
2
-
3
- This package contains third-party software components governed by the license(s) indicated below:
1
+ # Third Party Notices
2
+
3
+ This package contains third-party software components governed by the license(s) indicated below:
@@ -1,7 +1,7 @@
1
- fileFormatVersion: 2
2
- guid: 35c462d45db3116429ff318131e6bd84
3
- TextScriptImporter:
4
- externalObjects: {}
5
- userData:
6
- assetBundleName:
7
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: 35c462d45db3116429ff318131e6bd84
3
+ TextScriptImporter:
4
+ externalObjects: {}
5
+ userData:
6
+ assetBundleName:
7
+ assetBundleVariant:
package/package.json CHANGED
@@ -1,92 +1,102 @@
1
- {
2
- "name": "com.wallstop-studios.dxmessaging",
3
- "version": "2.2.0",
4
- "displayName": "DxMessaging",
5
- "description": "Synchronous Event Bus for Unity",
6
- "unity": "2021.3",
7
- "documentationUrl": "https://wallstop.github.io/DxMessaging/",
8
- "changelogUrl": "https://github.com/wallstop/DxMessaging/blob/master/CHANGELOG.md",
9
- "licensesUrl": "https://github.com/wallstop/DxMessaging/blob/master/LICENSE.md",
10
- "keywords": [
11
- "messaging",
12
- "message",
13
- "messages",
14
- "event",
15
- "event bus",
16
- "eventing",
17
- "send",
18
- "receive",
19
- "signal",
20
- "slot"
21
- ],
22
- "license": "MIT",
23
- "repository": {
24
- "type": "git",
25
- "url": "git+https://github.com/wallstop/DxMessaging.git"
26
- },
27
- "bugs": {
28
- "url": "https://github.com/wallstop/DxMessaging/issues"
29
- },
30
- "author": "wallstop studios <wallstop@wallstopstudios.com> (https://wallstopstudios.com)",
31
- "homepage": "https://wallstop.github.io/DxMessaging/",
32
- "main": "README.md",
33
- "files": [
34
- "Editor/**",
35
- "Runtime/**",
36
- "Samples~/**",
37
- "SourceGenerators/Directory.Build.props",
38
- "SourceGenerators/Directory.Build.props.meta",
39
- "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/*.cs",
40
- "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/*.cs.meta",
41
- "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/*.csproj",
42
- "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/*.csproj.meta",
43
- "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators.meta",
44
- "CHANGELOG.md",
45
- "CHANGELOG.md.meta",
46
- "LICENSE.md",
47
- "LICENSE.md.meta",
48
- "README.md",
49
- "README.md.meta",
50
- "Third Party Notices.md",
51
- "Third Party Notices.md.meta",
52
- "package.json.meta",
53
- "Editor.meta",
54
- "Runtime.meta",
55
- "SourceGenerators.meta"
56
- ],
57
- "scripts": {
58
- "test": "jest",
59
- "test:watch": "jest --watch",
60
- "test:coverage": "jest --coverage",
61
- "format:md": "prettier --write \"**/*.{md,markdown}\"",
62
- "format:md:check": "prettier --check \"**/*.{md,markdown}\"",
63
- "format:json": "prettier --write \"**/*.{json,asmdef,asmref}\"",
64
- "format:json:check": "prettier --check \"**/*.{json,asmdef,asmref}\"",
65
- "format:yaml": "prettier --write \"**/*.{yml,yaml}\"",
66
- "format:yaml:check": "prettier --check \"**/*.{yml,yaml}\"",
67
- "check:yaml": "prettier --check \"**/*.{yml,yaml}\" && yamllint -c .yamllint.yaml .",
68
- "lint:markdown": "markdownlint-cli2 \"**/*.md\" \"**/*.markdown\""
69
- },
70
- "devDependencies": {
71
- "jest": "^30.2.0",
72
- "markdownlint-cli2": "^0.20.0",
73
- "prettier": "3.8.1"
74
- },
75
- "samples": [
76
- {
77
- "displayName": "Mini Combat",
78
- "description": "Simple combat scenario showing Untargeted (settings), Targeted (heal), Broadcast (damage) with MessageAwareComponent and emit helpers.",
79
- "path": "Samples~/Mini Combat"
80
- },
81
- {
82
- "displayName": "UI Buttons + Inspector",
83
- "description": "UI-driven message emissions and a global observer demonstrating inspector diagnostics and RegisterGlobalAcceptAll.",
84
- "path": "Samples~/UI Buttons + Inspector"
85
- },
86
- {
87
- "displayName": "Dependency Injection",
88
- "description": "Integration samples for Zenject, VContainer, and Reflex showing IMessageRegistrationBuilder usage with container lifecycles.",
89
- "path": "Samples~/DI"
90
- }
91
- ]
92
- }
1
+ {
2
+ "name": "com.wallstop-studios.dxmessaging",
3
+ "version": "3.1.0",
4
+ "displayName": "DxMessaging",
5
+ "description": "Synchronous Event Bus for Unity",
6
+ "unity": "2021.3",
7
+ "documentationUrl": "https://ambiguous-interactive.github.io/DxMessaging/",
8
+ "changelogUrl": "https://raw.githubusercontent.com/Ambiguous-Interactive/DxMessaging/master/CHANGELOG.md",
9
+ "licensesUrl": "https://github.com/Ambiguous-Interactive/DxMessaging/blob/master/LICENSE.md",
10
+ "keywords": [
11
+ "messaging",
12
+ "message",
13
+ "messages",
14
+ "event",
15
+ "event bus",
16
+ "eventing",
17
+ "send",
18
+ "receive",
19
+ "signal",
20
+ "slot"
21
+ ],
22
+ "license": "MIT",
23
+ "repository": {
24
+ "type": "git",
25
+ "url": "git+https://github.com/Ambiguous-Interactive/DxMessaging.git"
26
+ },
27
+ "bugs": {
28
+ "url": "https://github.com/Ambiguous-Interactive/DxMessaging/issues"
29
+ },
30
+ "author": "wallstop studios <wallstop@wallstopstudios.com> (https://wallstopstudios.com)",
31
+ "homepage": "https://ambiguous-interactive.github.io/DxMessaging/",
32
+ "main": "README.md",
33
+ "files": [
34
+ "Editor/**",
35
+ "Runtime/**",
36
+ "Samples~/**",
37
+ "SourceGenerators/Directory.Build.props",
38
+ "SourceGenerators/Directory.Build.props.meta",
39
+ "SourceGenerators/global.json",
40
+ "SourceGenerators/global.json.meta",
41
+ "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/*.cs",
42
+ "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/*.cs.meta",
43
+ "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/*.csproj",
44
+ "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/*.csproj.meta",
45
+ "SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators.meta",
46
+ "CHANGELOG.md",
47
+ "CHANGELOG.md.meta",
48
+ "LICENSE.md",
49
+ "LICENSE.md.meta",
50
+ "README.md",
51
+ "README.md.meta",
52
+ "Third Party Notices.md",
53
+ "Third Party Notices.md.meta",
54
+ "package.json.meta",
55
+ "Editor.meta",
56
+ "Runtime.meta",
57
+ "SourceGenerators.meta"
58
+ ],
59
+ "scripts": {
60
+ "test": "node --test scripts/",
61
+ "format": "prettier --write \"**/*.{md,markdown,json,asmdef,asmref,yml,yaml}\"",
62
+ "format:check": "prettier --check \"**/*.{md,markdown,json,asmdef,asmref,yml,yaml}\"",
63
+ "lint:markdown": "markdownlint-cli2 \"**/*.md\" \"**/*.markdown\"",
64
+ "check:spelling": "cspell --no-progress --no-summary \"**/*.{md,markdown,cs,json,yml,yaml,ps1,js}\"",
65
+ "sync:banner": "node scripts/sync-banner-version.js",
66
+ "update:llms-txt": "node scripts/update-llms-txt.js",
67
+ "check:llms-txt": "node scripts/update-llms-txt.js --check",
68
+ "update:skills-index": "node scripts/generate-skills-index.js && prettier --write .llm/skills/index.md",
69
+ "check:skills-index": "node scripts/generate-skills-index.js --check",
70
+ "refresh:analyzers": "node scripts/analyzers/verify-analyzer-payload.js --write",
71
+ "check:analyzers": "node scripts/analyzers/verify-analyzer-payload.js --check",
72
+ "fix:csharp-underscores": "node scripts/fix-csharp-underscore-methods.js",
73
+ "validate:asmdef-references": "node scripts/validate-asmdef-references.js",
74
+ "validate:unity-versions": "node scripts/validate-unity-versions.js",
75
+ "validate:js-loc-budget": "node scripts/validate-js-loc-budget.js",
76
+ "validate:npm-meta": "node scripts/validate-npm-meta.js",
77
+ "validate:docs:strict": "python3 -m venv .artifacts/docs-venv && .artifacts/docs-venv/bin/python -m pip install -r requirements-docs.txt && .artifacts/docs-venv/bin/mkdocs build --strict --site-dir _site",
78
+ "validate:all": "npm run validate:asmdef-references && npm run validate:unity-versions && npm run validate:js-loc-budget && npm run validate:npm-meta && npm run check:analyzers && npm run check:llms-txt && npm run check:skills-index"
79
+ },
80
+ "devDependencies": {
81
+ "cspell": "10.0.1",
82
+ "markdownlint-cli2": "0.22.1",
83
+ "prettier": "3.8.4"
84
+ },
85
+ "samples": [
86
+ {
87
+ "displayName": "Mini Combat",
88
+ "description": "Simple combat scenario showing Untargeted (settings), Targeted (heal), Broadcast (damage) with MessageAwareComponent and emit helpers.",
89
+ "path": "Samples~/Mini Combat"
90
+ },
91
+ {
92
+ "displayName": "UI Buttons + Inspector",
93
+ "description": "UI-driven message emissions and a global observer demonstrating inspector diagnostics and RegisterGlobalAcceptAll.",
94
+ "path": "Samples~/UI Buttons + Inspector"
95
+ },
96
+ {
97
+ "displayName": "Dependency Injection",
98
+ "description": "Integration samples for Zenject, VContainer, and Reflex showing IMessageRegistrationBuilder usage with container lifecycles.",
99
+ "path": "Samples~/DI"
100
+ }
101
+ ]
102
+ }
package/package.json.meta CHANGED
@@ -1,7 +1,7 @@
1
- fileFormatVersion: 2
2
- guid: 0ba0ca7e30f2de0489c0268f937ad9b1
3
- PackageManifestImporter:
4
- externalObjects: {}
5
- userData:
6
- assetBundleName:
7
- assetBundleVariant:
1
+ fileFormatVersion: 2
2
+ guid: 0ba0ca7e30f2de0489c0268f937ad9b1
3
+ PackageManifestImporter:
4
+ externalObjects: {}
5
+ userData:
6
+ assetBundleName:
7
+ assetBundleVariant: