Adding Wangkanai.Detection.Abstraction #537
Replies: 8 comments
-
Thank you for the nice complement. I really much appreciated your kind words. While the original interfaces and abstract was in the NuGet package But, nevertheless. I'm very curious about your needs and why you need just the abstraction package in your module project. Because the whole I had a quick looked at the project you are working https://github.com/CrestApps/OrchardCore that is very promising and following principle of single responsibility. I'm looking forward to hear back from you. |
Beta Was this translation helpful? Give feedback.
-
Hi @wangkanai, First, I'd also like to thank you for putting together this library. It's definitely made tracking browser information much simpler for our analytics. I'm not the original poster, but I was just looking at something similar from a different angle. I found this issue while doing a supply-chain audit for our internal products. This is to verify what all of our dependencies are so we could know what projects we would need to track for vulnerability alerts and license notifications. It appears that while This might be the source of the concern from the OP, or it could also be about allowing them to create modules that don't have to reference the ASP.NET Core framework - or any of the other dependencies that the Detection package requires like the DI registration or configuration - at all. Additional details on the dependency chain: As far as I have been able to determine, the whole usage of the Additionally, it appears that the EF package is only pulled in to support a IApplicationBuilder extension to trigger EF migrations, which is only used (at least in this repository) in a commented out line in the test project for the I'd be happy to contribute a PR that cleans up those dependencies (and lifts a copy of the marker check method into the Thanks! |
Beta Was this translation helpful? Give feedback.
-
Hi @wangkanai, The project https://github.com/CrestApps/OrchardCore provides provides a modular framework. So I created a module that would provide browser detection in my app obviously depending on your project. This module would register any of the required services. Now if any of my other modules need browser detection, all it needs is an access to the interface like |
Beta Was this translation helpful? Give feedback.
-
@nkilzer Thank you very much for your breakdown analysis. I'm very much appreciate it. I was trying not to duplicate my code and reuse them as much as possible. Also it would be an great honor if you could come and help contribute to the project. |
Beta Was this translation helpful? Give feedback.
-
Okay, I can now understand the issue and its make sense to have no dependency on thing that are not required. |
Beta Was this translation helpful? Give feedback.
-
I have refactor this dependency from |
Beta Was this translation helpful? Give feedback.
-
@CrestApps Please see if But let open this topic to discussion. I would like to hear more about it. |
Beta Was this translation helpful? Give feedback.
-
Hello,
First of all, thank you for these amazing libraries.
I do have a suggestion to create a new package called something like
Wangkanai.Detection.Abstraction
that would contain interfaces and abstract services likes IDetectionService.cs. Now theWangkanai.Detection.Abstraction
would be a light weight package that would be installed when only the interface is needed like in a module project where asWangkanai.Detection
would be installed in a host project when the registration is needed.Beta Was this translation helpful? Give feedback.
All reactions