Commit 1cc8b54
Registrations handlers and sagas (#7597)
* Bring back range
* Brute forced emitter and parser
* Bring back tests and infrastructure to run them
* Delete left over approval files
* Scrub away versions
* Cleanup
* Align code
* Remove interface less handlers for now
* Approve current name for registration endpoint (probably requires rework)
* Add basic fixer version
* Cleanup redundancy
* Make fixer less expensive
* WithAnalyzer tests
* Reuse same type extension
* Bump the leaf node to error
* More test scenarios
* Report on non-handler
* Xml documentation please less fancy name replacement
* Better spacing of content
* Improve message
* Bring the interceptor back with some code sharing
* Acceptance tests
* Delete wrongly added files
* Skip on no location
* Set capacity
* Move out
* Internal and move
* Fast path check for non-abstract classes just in case
* SagaAttribute and base infrastructure for saga generation
* Nested handlers
* Fix add
* Get the partial class registration working with some left refactorings
* Split
* Grouping and rename
* Slowly start unifying
* Simplify the tree generation and conventions
* First attempt at step tracking seperation
* Fix generator stage assertion
* Fix warning
* Get modifiers and namespace
* Simplify emitting
* Some cleanup
* Fix class detection
* Refactor candidate checking
* Registration attribute with analyzer with some redudancy
* Partial diagnostic
* Simplify
* Extract
* Remove redundancy
* Killing common
* Approve
* Revert "Killing common"
This reverts commit c98d26f.
* Tracking names prototype
* More usage of tracking names
* Start filling in the saga generation logic
* Tweak the handler parsing and emitting slightly
* Better tracking names
* Approve rest of the file which I forgot for whatever reason
* Simplify nesting
* Remove commented out code for now
* Improve xml documentation
* Use spec kind
* Better file names
* Allow overriding entry point and simplify
* Update analyzer and make it deterministic
* Fix saga approval
* Fix warning
* Fix the analyzer and tests
* Simplify
* Add Preamble and temporarily make types public
* Basic saga metadata writing
* Emit the correlation property accessor
* Simplify into cases
* Simplify syntax
* First saga registration test
* When mixing
* Align AddHandlerInterceptor and parser
* Nest saga parser like others
* Bring the interceptor to life
* More extensive generator tests
* Better analysis message
* Saga attribute analyzer (currently seperate thing from the other saga analyzer)
* Header mapping test
* Move into extension method
* SagaAttributeFixer
* Saga Fixer Tests
* Switch to current assembly only
* Small analyzer tweak
* HashSet
* Nested class cases
* Sagas with timeout test
* Multi handler saga
* Cover saga case and add more analyzer tests
* Fix nasty recursion between adding and removing
* Streamline slightly more
* Accessor block
* Preserve attribute tests
* Verify saga attribute cannot be placed on handler
* Provide fixers for all
* More tests that probably fail
* Implement heuristic
* Improve fixture slightly
* Fix HandlerAttributeAnalyzer
* Adjust saga attribute analyzer accordingly
* Pattern override
* Approve
* Use __ for nested classes
* Fix approvals again
* Better documentation
* Short attribute form
* Better trivia white space handling
* Align fixers and style
* Rename test
* Switch to short Saga attribute usage
* Switch to short Handler attribute usage
* Supression Analyzer (currently without tests)
* Nesting looks nicer actually
* Use generator to add the attribute
* Remove the generator to remove the attributes
* Further simplify the removal because generator handles the list cases
* Remove explicit formatting since that is handled
* File scoped
* Use the solution editor to further reduce boiler plate
* Cleanup the known types
* Move the fixer into a group
* Verify non abstract base handlers work
* Align diagnostic IDs
* Fix wrong API usage
* Run fixers against acceptance tests
* Collapse WithAnalyzer tests into acceptance tests
* Avoid name clashes between tests
* Align encoding
* Replace LINQ GroupBy with Dictionary for O(1) deduplication in saga accessor generation
* Avoid creating the regex over and over again
* Static and cleanup using
* Another in place sort
* Updates to DiagnosticDescriptor text and xmldoc for attributes and handler registry
* Better XML documentation
* Test the suppression analyzers now that we have the trimming stuff in place
* DefaultServer with disabled auto registration
---------
Co-authored-by: Daniel Marbach <danielmarbach@users.noreply.github.com>
Co-authored-by: David Boike <david.boike@gmail.com>1 parent eb91909 commit 1cc8b54
File tree
481 files changed
+12560
-2710
lines changed- src
- NServiceBus.AcceptanceTesting
- AcceptanceTestingPersistence
- SagaPersister
- SubscriptionStorage
- Customization
- Support
- NServiceBus.AcceptanceTests
- Audit
- Core
- Audit
- AutomaticSubscriptions
- BestPractices
- Causation
- Conventions
- CriticalError
- DelayedDelivery
- DependencyInjection
- Diagnostics
- FakeTransport
- CriticalError
- Feature
- Hosting
- JsonSerializer
- Mutators
- OpenTelemetry
- Metrics
- Traces
- Outbox
- Persistence
- Pipeline
- PublishSubscribe
- Recoverability
- Reliability/SynchronizedStorage
- Routing
- AutomaticSubscriptions
- MessageDrivenSubscriptions
- Sagas
- Stopping
- SubscriptionMigration
- UnitOfWork/TransactionScope
- Correlation
- DelayedDelivery
- EndpointTemplates
- Feature
- Forwarding
- MessageId
- Outbox
- Pipeline
- Recoverability
- Registrations
- Handlers
- Sagas
- Routing
- MessageDrivenSubscriptions
- NativePublishSubscribe
- Sagas
- Serialization
- TimeToBeReceived
- Tx
- ImmediateDispatch
- Versioning
- NServiceBus.Core.Analyzer.Fixes
- Handlers
- Sagas
- NServiceBus.Core.Analyzer.Tests.Common
- Helpers
- NServiceBus.Core.Analyzer.Tests.Roslyn5
- ApprovalFiles
- ForwardCancellationToken
- Handlers
- Helpers
- Sagas
- UniformSessionStubs
- NServiceBus.Core.Analyzer
- Features
- Handlers
- Sagas
- Utility
- NServiceBus.Core.Tests
- ApprovalFiles
- NServiceBus.Core
- NServiceBus.Learning.AcceptanceTests
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
481 files changed
+12560
-2710
lines changedLines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
0 commit comments