v0.13.0
#58
Replies: 1 comment 1 reply
-
|
Woah.. This is another incredible release!! Thank you @pdevito3 ❤️ Gonna give this a try later today and let you know if I run into issues with libgitsharp on m1. I wanted a way to manage authorization permissions and validating them on API calls. With AAD B2C authentication, the JWT is a bloated permission soup! That's when I read your Craftsman blog on HeimGuard integration. Thanks for putting together an example too 🙏 I'm excited to dig into permissions with Craftsman and HeimGuard. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Lots of updates here! Highlights are
DDD promoted entities (private setters, factory methods, associated fakers)
Huge permissions upgrade. Significantly simplified setup which resulted in a new library (HeimGuard) that can be used in any .NET project.
Message bus scaffolding and testing improvements
New register:producer command
Added soft delete capability
Added Shared Kernel
Added Complex example for new:example command
Also, big shout out to @sshquack for his first contributions!
🚀 Additions and Updates
Added
Createmethod and anUpdatemethod to promote a DDD workflowSuperAdminrole is added by default and will automatically be given all permissions.Userrole with also be created. This role will not have any permissions assigned to it by default and can be removed if you would like as long as you add another role in addition toSuperAdmin. This will allow for integration tests of theUserPolicyHandlerto be fully scoped.CanFEATURENAME, but can be overridden if desired.ProjectName, but can be overriddenIsProtectedthat, if true, will add an authorization attribute to your endpoint with thePolicyNameand add tests that check for accessUserPolicyHandlerRolePermissionPoliciesprop removed from FeatureSetUserRoleandSetUserRolesmethods to integreation tests'TestFixturefor easy role management in integration testsroleinstead ofscopeSuperAdminand bob is aUserregister:producercommand with CLI promptUseSoftDeleteproperty to theApiTemplatewhich is set to true. When adding an entity after the fact, Craftsman will automatically detect whether or not your project is using soft deletion by checking base entity for the appropriate property.SharedKernelproject at the root to capture DTOs, exceptions, and roles (if using auth)Complexexample fornew:exampleUpdated
Updated FK and basic examples to have more features on the entities
Updated tests to work with new private entity workflow
CurrentUserServer has a method to get the User from the ClaimsPrincipal
Swagger question removed from
add:featureas it wasn't being used. Will be set to true.Removed unused
UnauthorizedandForbiddenMediatR filtersTest Fixture updated to better handle MassTransit
_providerwill always be injected, even when not using MassTransitThe end of the fixture has been slightly updated to look like this:
Added several helper methods to the test fixture
Updated the consumer test to use the helper methods
Producer doesn't take in placeholder props
Producer test generated
Minor update to naming of producer in the bus example
Default exchange type now
Fanoutfor producer and consumerAdded optional (but recommended)
DomainDirectoryprop to producers and consumers. This will move them from theEventHandlersdirectory and keep them directly with features for better colocation.Updated the 1:1 relationships to use proper scaffolding.
Updated the FK example to show proper 1:1 relationship
Entities with a Guid prop will no longer have a default of
Guid.NewGuid()Updated default library from NewtonSoft.Json to System.text.Json (Migrate from Newtonsoft.Json to System.Text.Json #52)
Took audit fields off of DTO
Bumped LibGit2Sharp to preview for M1 compatibility
🐛 Pest Control
batchalong with a functional testing routeIHttpContextAccessorfixted to a singleton in integration tests'TestFixtureadd:featurebatch list options where neededThis discussion was created from the release v0.13.0.
Beta Was this translation helpful? Give feedback.
All reactions