com.wallstop-studios.dxmessaging 3.1.0 → 3.2.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.
- package/CHANGELOG.md +286 -0
- package/Editor/Analyzers/BaseCallLogMessageParser.cs.meta +3 -3
- package/Editor/Analyzers/BaseCallReportAggregator.cs.meta +3 -3
- package/Editor/Analyzers/DxMessagingConsoleHarvester.cs.meta +3 -3
- package/Editor/CustomEditors/MessageAwareComponentFallbackEditor.cs.meta +3 -3
- package/Editor/CustomEditors/MessageAwareComponentInspectorOverlay.cs.meta +3 -3
- package/Editor/DxMessagingMenu.cs.meta +3 -3
- package/Editor/DxMessagingSceneBuildProcessor.cs.meta +3 -3
- package/Editor/Settings/DxMessagingBaseCallIgnoreSync.cs +2 -3
- package/Editor/Settings/DxMessagingBaseCallIgnoreSync.cs.meta +3 -3
- package/Editor/SetupCscRsp.cs +232 -163
- package/README.md +1 -1
- package/Runtime/Analyzers.meta +8 -0
- package/Runtime/Core/Attributes/DxIgnoreMissingBaseCallAttribute.cs.meta +3 -3
- package/Runtime/Core/DxMessagingStaticState.cs.meta +3 -3
- package/Runtime/Core/Extensions/MessageBusExtensions.cs.meta +3 -3
- package/Runtime/Core/Extensions/MessageExtensions.cs.meta +3 -3
- package/Runtime/Core/IMessage.cs.meta +3 -3
- package/Runtime/Core/InstanceId.cs.meta +3 -3
- package/Runtime/Core/Internal/TypedSlots.cs +42 -0
- package/Runtime/Core/MessageBus/DiagnosticsTarget.cs.meta +3 -3
- package/Runtime/Core/MessageBus/GlobalMessageBusProvider.cs.meta +3 -3
- package/Runtime/Core/MessageBus/IMessageBus.cs +63 -28
- package/Runtime/Core/MessageBus/IMessageBus.cs.meta +3 -3
- package/Runtime/Core/MessageBus/IMessageBusProvider.cs.meta +3 -3
- package/Runtime/Core/MessageBus/IMessageRegistrationBuilder.cs.meta +3 -3
- package/Runtime/Core/MessageBus/MessageBus.cs +548 -474
- package/Runtime/Core/MessageBus/MessageBus.cs.meta +3 -3
- package/Runtime/Core/MessageBus/MessageBusRebindMode.cs.meta +3 -3
- package/Runtime/Core/MessageBus/MessageBusRegistration.cs +207 -0
- package/Runtime/Core/MessageBus/MessageBusRegistration.cs.meta +11 -0
- package/Runtime/Core/MessageBus/MessageRegistrationBuilder.cs.meta +3 -3
- package/Runtime/Core/MessageBus/MessagingRegistration.cs.meta +3 -3
- package/Runtime/Core/MessageBus/RegistrationLog.cs.meta +3 -3
- package/Runtime/Core/MessageHandler.cs +1210 -394
- package/Runtime/Core/MessageHandler.cs.meta +3 -3
- package/Runtime/Core/MessageRegistrationHandle.cs.meta +3 -3
- package/Runtime/Core/MessageRegistrationToken.cs +1296 -819
- package/Runtime/Core/MessageRegistrationToken.cs.meta +3 -3
- package/Runtime/Core/Messages/IBroadcastMessage.cs.meta +3 -3
- package/Runtime/Core/Messages/ITargetedMessage.cs.meta +3 -3
- package/Runtime/Core/Messages/IUntargetedMessage.cs.meta +3 -3
- package/Runtime/Core/Messages/SourcedStringMessage.cs.meta +3 -3
- package/Runtime/Core/MessagingDebug.cs.meta +3 -3
- package/Runtime/Unity/CurrentGlobalMessageBusProvider.cs.meta +3 -3
- package/Runtime/Unity/DxMessagingRuntimeInitializer.cs.meta +3 -3
- package/Runtime/Unity/InitialGlobalMessageBusProvider.cs.meta +3 -3
- package/Runtime/Unity/Integrations/Reflex/ReflexRegistrationInstaller.cs.meta +3 -3
- package/Runtime/Unity/Integrations/VContainer/VContainerRegistrationExtensions.cs.meta +3 -3
- package/Runtime/Unity/Integrations/Zenject/ZenjectRegistrationInstaller.cs.meta +3 -3
- package/Runtime/Unity/MessageAwareComponent.cs.meta +3 -3
- package/Runtime/Unity/MessageBusProviderHandle.cs.meta +3 -3
- package/Runtime/Unity/MessagingComponent.cs.meta +3 -3
- package/Runtime/Unity/MessagingComponentInstaller.cs.meta +3 -3
- package/Runtime/Unity/ScriptableMessageBusProvider.cs.meta +3 -3
- package/Samples~/DI/Reflex/SampleInstaller.cs.meta +3 -3
- package/Samples~/DI/VContainer/SampleLifetimeScope.cs.meta +3 -3
- package/Samples~/DI/Zenject/SampleInstaller.cs.meta +3 -3
- package/Samples~/Mini Combat/Boot.cs.meta +3 -3
- package/Samples~/Mini Combat/Enemy.cs.meta +3 -3
- package/Samples~/Mini Combat/Messages.cs.meta +3 -3
- package/Samples~/Mini Combat/Player.cs.meta +3 -3
- package/Samples~/Mini Combat/UIOverlay.cs.meta +3 -3
- package/Samples~/UI Buttons + Inspector/DiagnosticsEnabler.cs.meta +3 -3
- package/Samples~/UI Buttons + Inspector/Messages.cs.meta +3 -3
- package/Samples~/UI Buttons + Inspector/MessagingObserver.cs.meta +3 -3
- package/Samples~/UI Buttons + Inspector/UIButtonEmitter.cs.meta +3 -3
- package/SourceGenerators/Directory.Build.props +5 -5
- package/SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/DxAutoConstructorGenerator.cs.meta +3 -3
- package/SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators/WallstopStudios.DxMessaging.SourceGenerators.csproj +12 -11
- package/package.json +6 -3
- /package/{Editor → Runtime}/Analyzers/Microsoft.CodeAnalysis.CSharp.dll +0 -0
- /package/{Editor → Runtime}/Analyzers/Microsoft.CodeAnalysis.CSharp.dll.meta +0 -0
- /package/{Editor → Runtime}/Analyzers/Microsoft.CodeAnalysis.dll +0 -0
- /package/{Editor → Runtime}/Analyzers/Microsoft.CodeAnalysis.dll.meta +0 -0
- /package/{Editor → Runtime}/Analyzers/System.Collections.Immutable.dll +0 -0
- /package/{Editor → Runtime}/Analyzers/System.Collections.Immutable.dll.meta +0 -0
- /package/{Editor → Runtime}/Analyzers/System.Reflection.Metadata.dll +0 -0
- /package/{Editor → Runtime}/Analyzers/System.Reflection.Metadata.dll.meta +0 -0
- /package/{Editor → Runtime}/Analyzers/System.Runtime.CompilerServices.Unsafe.dll +0 -0
- /package/{Editor → Runtime}/Analyzers/System.Runtime.CompilerServices.Unsafe.dll.meta +0 -0
- /package/{Editor → Runtime}/Analyzers/WallstopStudios.DxMessaging.Analyzer.dll +0 -0
- /package/{Editor → Runtime}/Analyzers/WallstopStudios.DxMessaging.Analyzer.dll.meta +0 -0
- /package/{Editor → Runtime}/Analyzers/WallstopStudios.DxMessaging.SourceGenerators.dll +0 -0
- /package/{Editor → Runtime}/Analyzers/WallstopStudios.DxMessaging.SourceGenerators.dll.meta +0 -0
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
end with '~'. If a SourceGenerators project builds its obj/ or bin/ in-tree,
|
|
10
10
|
Unity imports those build outputs. The analyzer/source-generator DLLs there
|
|
11
11
|
have the SAME assembly names as the correctly-configured shipped analyzers in
|
|
12
|
-
|
|
13
|
-
RoslynAnalyzer label /
|
|
12
|
+
Runtime/Analyzers/, but their Unity-auto-generated .meta lack the
|
|
13
|
+
RoslynAnalyzer label / all-platforms-disabled PluginImporter config.
|
|
14
14
|
Unity then fails to resolve their Microsoft.CodeAnalysis reference and the
|
|
15
15
|
duplicate shadows the real analyzers, so the source generator never runs and
|
|
16
16
|
every [Dx*Message] type fails to implement its generated interface
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
|
|
19
19
|
Building these projects is REQUIRED by the dev workflow (the main projects'
|
|
20
20
|
PostBuildCopyAnalyzers target copies the freshly-built DLL into
|
|
21
|
-
|
|
21
|
+
Runtime/Analyzers/), so the build MUST go somewhere Unity ignores.
|
|
22
22
|
|
|
23
23
|
HOW: redirect per-project obj/ and bin/ to
|
|
24
24
|
$(SolutionDir).artifacts/$(MSBuildProjectName)/{obj,bin}/$(Configuration)/.
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
Configuration-scoped obj subfolder) and OutputPath (bin) are set for the
|
|
31
31
|
build itself. $(TargetPath) therefore resolves under .artifacts/, and the
|
|
32
32
|
PostBuildCopyAnalyzers targets still copy the built DLL into
|
|
33
|
-
|
|
33
|
+
Runtime/Analyzers/ correctly.
|
|
34
34
|
-->
|
|
35
35
|
<PropertyGroup>
|
|
36
36
|
<SolutionDir Condition="'$(SolutionDir)' == ''">$(MSBuildThisFileDirectory)..\</SolutionDir>
|
|
@@ -51,6 +51,6 @@
|
|
|
51
51
|
<DebugSymbols>false</DebugSymbols>
|
|
52
52
|
<CopyAnalyzerPayload Condition="'$(CopyAnalyzerPayload)' == ''">true</CopyAnalyzerPayload>
|
|
53
53
|
<AnalyzerPayloadOutputDir Condition="'$(AnalyzerPayloadOutputDir)' == ''"
|
|
54
|
-
>$([System.IO.Path]::Combine('$(SolutionDir)', '
|
|
54
|
+
>$([System.IO.Path]::Combine('$(SolutionDir)', 'Runtime', 'Analyzers'))</AnalyzerPayloadOutputDir>
|
|
55
55
|
</PropertyGroup>
|
|
56
56
|
</Project>
|
|
@@ -25,25 +25,26 @@
|
|
|
25
25
|
directory selected by AnalyzerPayloadOutputDir.
|
|
26
26
|
|
|
27
27
|
This target copies ONLY the freshly-built source-generator DLL.
|
|
28
|
-
The Roslyn
|
|
28
|
+
The pinned Roslyn dependency DLLs the analyzer host needs
|
|
29
29
|
(Microsoft.CodeAnalysis[.CSharp], System.Collections.Immutable,
|
|
30
30
|
System.Reflection.Metadata, System.Runtime.CompilerServices.Unsafe)
|
|
31
|
-
are committed in
|
|
32
|
-
re-copied by this build: a normal (non-clean) rebuild therefore
|
|
31
|
+
are committed co-located in Runtime/Analyzers/ as fixed bytes and are
|
|
32
|
+
NOT re-copied by this build: a normal (non-clean) rebuild therefore
|
|
33
33
|
leaves those committed dep DLLs untouched. Do NOT wipe
|
|
34
|
-
|
|
35
|
-
Unity-validated set
|
|
36
|
-
|
|
34
|
+
Runtime/Analyzers/ wholesale; the committed dep bytes are the proven,
|
|
35
|
+
Unity-validated set (notably for Unity 2021's analyzer loader) and are
|
|
36
|
+
not reproduced by this 3.8.0-pinned build.
|
|
37
37
|
|
|
38
|
-
AnalyzerPayloadOutputDir defaults to
|
|
38
|
+
AnalyzerPayloadOutputDir defaults to Runtime/Analyzers for local refresh
|
|
39
39
|
builds. CI freshness checks pass a temp directory so builds do not dirty
|
|
40
40
|
the worktree. CopyAnalyzerPayload=false disables this target for tests
|
|
41
41
|
that reference this project but do not validate the shipped payload.
|
|
42
42
|
|
|
43
|
-
The shipped
|
|
44
|
-
assemblies carry the
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
The shipped Runtime/Analyzers/*.dll.meta files for the two analyzer
|
|
44
|
+
assemblies carry the RoslynAnalyzer label directly, so Unity scopes the
|
|
45
|
+
source generator to the DxMessaging runtime assembly and every assembly
|
|
46
|
+
that references it (including the predefined Assembly-CSharp), so
|
|
47
|
+
nothing is copied into the consumer's project. -->
|
|
47
48
|
<Target
|
|
48
49
|
Name="PostBuildCopyAnalyzers"
|
|
49
50
|
AfterTargets="Build"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "com.wallstop-studios.dxmessaging",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"displayName": "DxMessaging",
|
|
5
5
|
"description": "Synchronous Event Bus for Unity",
|
|
6
6
|
"unity": "2021.3",
|
|
@@ -63,10 +63,13 @@
|
|
|
63
63
|
"lint:markdown": "markdownlint-cli2 \"**/*.md\" \"**/*.markdown\"",
|
|
64
64
|
"check:spelling": "cspell --no-progress --no-summary \"**/*.{md,markdown,cs,json,yml,yaml,ps1,js}\"",
|
|
65
65
|
"sync:banner": "node scripts/sync-banner-version.js",
|
|
66
|
+
"check:banner": "node scripts/sync-banner-version.js --check",
|
|
66
67
|
"update:llms-txt": "node scripts/update-llms-txt.js",
|
|
67
68
|
"check:llms-txt": "node scripts/update-llms-txt.js --check",
|
|
68
69
|
"update:skills-index": "node scripts/generate-skills-index.js && prettier --write .llm/skills/index.md",
|
|
69
70
|
"check:skills-index": "node scripts/generate-skills-index.js --check",
|
|
71
|
+
"update:issue-template-versions": "node scripts/generate-issue-template-versions.js",
|
|
72
|
+
"check:issue-template-versions": "node scripts/generate-issue-template-versions.js --check",
|
|
70
73
|
"refresh:analyzers": "node scripts/analyzers/verify-analyzer-payload.js --write",
|
|
71
74
|
"check:analyzers": "node scripts/analyzers/verify-analyzer-payload.js --check",
|
|
72
75
|
"fix:csharp-underscores": "node scripts/fix-csharp-underscore-methods.js",
|
|
@@ -75,12 +78,12 @@
|
|
|
75
78
|
"validate:js-loc-budget": "node scripts/validate-js-loc-budget.js",
|
|
76
79
|
"validate:npm-meta": "node scripts/validate-npm-meta.js",
|
|
77
80
|
"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"
|
|
81
|
+
"validate:all": "npm run validate:asmdef-references && npm run validate:unity-versions && npm run validate:js-loc-budget && npm run check:banner && npm run validate:npm-meta && npm run check:analyzers && npm run check:llms-txt && npm run check:skills-index && npm run check:issue-template-versions"
|
|
79
82
|
},
|
|
80
83
|
"devDependencies": {
|
|
81
84
|
"cspell": "10.0.1",
|
|
82
85
|
"markdownlint-cli2": "0.22.1",
|
|
83
|
-
"prettier": "3.
|
|
86
|
+
"prettier": "3.9.3"
|
|
84
87
|
},
|
|
85
88
|
"samples": [
|
|
86
89
|
{
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|