-
-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove Newtonsoft.Json from FluentStorage project #43
Conversation
Great find, accepted.
What is the reason for this? Testing? You want to bind some logic to the abstract interfaces and not to the concrete implementation? What is the advantage?
I don't understand the benefit. Can you elaborate? Are you trying to make your own concrete implementations of these and not bind it to the FluentStorage implementations? |
well nevermind.... Just for some obssesion i want my application project to just refer to abstractions while all the implementations are in another package. but its not worth it for everything but its my obsession to have less reference as possibile in my applicastion project wich led me to find the unusued newtonsoft.json, so at least something good happended 😄 |
What is the reason for this? Testing? You want to bind some logic to the abstract interfaces and not to the concrete implementation? What is the advantage? I'm willing to accept your PR but at least tell me one concrete advantage? I'm asking you about the new interfaces like |
…hods to easy manage queues, topics and subscriptions
regarding the new interfaces my idea was like this comment in the old repo:
There was even a rejected pull request: But in the end the original author is right, the primary library doesn't have dependency (apart from the newtonsoft.json wich isnt used anywhere). In my proposal i was also wrong, we dont need to create interfaces like Btw i just found that i made a mess... i'm working to a new version for the ServiceBus plugin (#44 ), i was pretty shure that i was in a separate branch but i was in the same of this pr... so i will close this to not make confusion and will open a new, clean, PR for the newtonsoft.json removal. Also the changes for Sorry for the confusion! |
Remove Newtonsoft.Json from FluentStorage project (supersedes #43)
Thanks! |
The main project
FluentStorage
is referencingNewtonsoft.Json
without using it.To me, its better to not take such dependency in the main project, so we can reference it in our main application layer without taking external dependencies, and then reference to desired implementation in our infrastructure project. Then if the implementation needs Newstonsoft.Json, we take the dependency here.
Also i would like to take a step further and create an abstraction project (
FluentStorage.Abstractions
), wich contains all the public interfaces.So we can reference this in our application project, then bind the desired implementation with dependency injection in the infrastructure.
If you are good with this idea i can prepare another PR, otherwise i'll implement the interfaces only in my project :)