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

Start of an Asp.Net Core port #47

Closed
wants to merge 15 commits into
base: master
from

Conversation

Projects
None yet
@rposener
Contributor

rposener commented Mar 6, 2016

Haven't had a lot of time to do much else, yet. Coming weeks should provide more options. Any chance you guys will be at Build event? Would like to see a V1 of this published as nupkg's by then. If you guys can provide some guidance / how IServiceCollection should/should not be used, etc. that would be helpful. Also, should it leverage the HttpRequest ApplicationServices property to do all resolution? Do we need the Default Service functionality, or should that be handled as a default during registration using an option lambda on the extension method for Configuring WebHooks?

@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener Mar 8, 2016

Contributor

Does this look more in line with the approach you would expect?

Contributor

rposener commented Mar 8, 2016

Does this look more in line with the approach you would expect?

@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener Mar 28, 2016

Contributor

Just a note about couple items that need input / review:

  1. IOptions/IConfiguration setup for secrets / settings
  2. CustomWebHookReceiver can't seem to read request body (it's all default initialized bytes of 0) not sure what I've missed on that?
  3. Configuration Extensions of Services / Resolution of Services may need some revision - was not sure how to setup configuration extensions with options Action to pass in configuration
  4. Error Handling for various accept types in the MiddleWare (I changed all exceptions to use a custom Exception type to specify status code + message) since HttpResponseException is not part of ASP.Net Core.
Contributor

rposener commented Mar 28, 2016

Just a note about couple items that need input / review:

  1. IOptions/IConfiguration setup for secrets / settings
  2. CustomWebHookReceiver can't seem to read request body (it's all default initialized bytes of 0) not sure what I've missed on that?
  3. Configuration Extensions of Services / Resolution of Services may need some revision - was not sure how to setup configuration extensions with options Action to pass in configuration
  4. Error Handling for various accept types in the MiddleWare (I changed all exceptions to use a custom Exception type to specify status code + message) since HttpResponseException is not part of ASP.Net Core.

@Eilon Eilon self-assigned this Mar 28, 2016

@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener Apr 20, 2016

Contributor

Any further information / details regarding this? Does it need to get updated to the current dev branch / RC2? Is it a good time to do that, or should we hold off until it releases?

Contributor

rposener commented Apr 20, 2016

Any further information / details regarding this? Does it need to get updated to the current dev branch / RC2? Is it a good time to do that, or should we hold off until it releases?

@HenrikFrystykNielsen

This comment has been minimized.

Show comment
Hide comment
@HenrikFrystykNielsen

HenrikFrystykNielsen Apr 20, 2016

Contributor

I am sorry it takes so long. I have poked the 'core' folks but I think they are busy. Will try again.

Contributor

HenrikFrystykNielsen commented Apr 20, 2016

I am sorry it takes so long. I have poked the 'core' folks but I think they are busy. Will try again.

Show outdated Hide outdated .gitignore
Show outdated Hide outdated global.json
@Eilon

This comment has been minimized.

Show comment
Hide comment
@Eilon

Eilon May 17, 2016

Member

{

This file shouldn't be needed; the root folder's global.json should be enough.


Refers to: src/Microsoft.AspNetCore.WebHooks.Common/global.json:1 in 1b1edb7. [](commit_id = 1b1edb7, deletion_comment = False)

Member

Eilon commented May 17, 2016

{

This file shouldn't be needed; the root folder's global.json should be enough.


Refers to: src/Microsoft.AspNetCore.WebHooks.Common/global.json:1 in 1b1edb7. [](commit_id = 1b1edb7, deletion_comment = False)

@Eilon

This comment has been minimized.

Show comment
Hide comment
@Eilon

Eilon May 17, 2016

Member

Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Src.AspNetCore", "Src.AspNetCore", "{668B3959-3928-472F-9341-06BF8C9BADE9}"

I might just be misreading the SLN file, but are the names and paths of the projects here correct?


Refers to: WebHooks.sln:145 in 1b1edb7. [](commit_id = 1b1edb7, deletion_comment = False)

Member

Eilon commented May 17, 2016

Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Src.AspNetCore", "Src.AspNetCore", "{668B3959-3928-472F-9341-06BF8C9BADE9}"

I might just be misreading the SLN file, but are the names and paths of the projects here correct?


Refers to: WebHooks.sln:145 in 1b1edb7. [](commit_id = 1b1edb7, deletion_comment = False)

@Eilon

This comment has been minimized.

Show comment
Hide comment
@Eilon

Eilon May 17, 2016

Member

@rposener thank you for being so patient with us. As you may have seen earlier today, we just released ASP.NET Core 1.0 RC2, which was a long awaited released. Fortunately, that means I had a little bit of time to start reviewing this PR. I tried to focus most of my comments on the bigger questions and some other stuff that might help simplify the PR. Once we iterate on those I think things can speed up quite a bit.

Again, sorry for taking so, sooo very long to get back to you on this. I realize you've put a lot of effort into this and I want to make sure we can make WebHooks work super well with ASP.NET Core!

Member

Eilon commented May 17, 2016

@rposener thank you for being so patient with us. As you may have seen earlier today, we just released ASP.NET Core 1.0 RC2, which was a long awaited released. Fortunately, that means I had a little bit of time to start reviewing this PR. I tried to focus most of my comments on the bigger questions and some other stuff that might help simplify the PR. Once we iterate on those I think things can speed up quite a bit.

Again, sorry for taking so, sooo very long to get back to you on this. I realize you've put a lot of effort into this and I want to make sure we can make WebHooks work super well with ASP.NET Core!

@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener May 17, 2016

Contributor

Excellent, thanks for the review. I will get some time in the next couple days to iterate from your comments and help things move along here. Excited to see RC2. Sounds like the cli will be simpler and a good move forward.

Contributor

rposener commented May 17, 2016

Excellent, thanks for the review. I will get some time in the next couple days to iterate from your comments and help things move along here. Excited to see RC2. Sounds like the cli will be simpler and a good move forward.

@Eilon

This comment has been minimized.

Show comment
Hide comment
@Eilon

Eilon May 22, 2016

Member

Looking forward for the updates! 😄

Member

Eilon commented May 22, 2016

Looking forward for the updates! 😄

@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener May 23, 2016

Contributor

I am going to create a new pull request - start from middle tier and work my way out. Will use a number of the same bits, but I have learned so much I really think this needs a full 1.0 revision like asp.net core instead of trying so hard to convert the prior. Will work to same interfaces for receivers and handlers as well as extensions for controllers to initiate sending.

Contributor

rposener commented May 23, 2016

I am going to create a new pull request - start from middle tier and work my way out. Will use a number of the same bits, but I have learned so much I really think this needs a full 1.0 revision like asp.net core instead of trying so hard to convert the prior. Will work to same interfaces for receivers and handlers as well as extensions for controllers to initiate sending.

@HenrikFrystykNielsen

This comment has been minimized.

Show comment
Hide comment
@HenrikFrystykNielsen

HenrikFrystykNielsen May 23, 2016

Contributor

This sounds fantastic -- I very much appreciate all your work here!

Contributor

HenrikFrystykNielsen commented May 23, 2016

This sounds fantastic -- I very much appreciate all your work here!

@davidfowl

This comment has been minimized.

Show comment
Hide comment
@davidfowl

davidfowl May 23, 2016

Member

👏

Member

davidfowl commented May 23, 2016

👏

Start on RC2 WebHooks
Middleware
Options
Receivers
CustomReceiver
@Eilon

This comment has been minimized.

Show comment
Hide comment
@Eilon

Eilon May 23, 2016

Member

Sweet 😄

Member

Eilon commented May 23, 2016

Sweet 😄

@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener May 23, 2016

Contributor

OK I've updated my fork with a bunch of new projects for the core stuff. I have a few questions that I need some input on.

  • For Receivers Middleware now calls Receivers, which produce a Context if the Handlers should be called. If no handler should be called (e.g. echo/Validation) then it just returns null. Otherwise, they set the context, or in error situation throw.
  • All options are set via IOptions, and ServiceCollectionExtensions and MiddlewareExtensions have a setupAction to apply conifguration options as necessary.
  • NotificationDictionary is now IWebHookNotification (I created 2 classes to support existing items, but should provide nice options for DTO's for WebHooks.
  • Resources are not loading - trying to test sending of custom notification seems to die. Not sure what/how I've messed up resources. Any information anyone can provide would be helpful.
  • Overall it converted much easier on RC2, some is just my experience with asp.net core growing, some is the tooling!
  • Items not necessary for asp.net core have been omitted. Projects should be setup a bit cleaner now.
Contributor

rposener commented May 23, 2016

OK I've updated my fork with a bunch of new projects for the core stuff. I have a few questions that I need some input on.

  • For Receivers Middleware now calls Receivers, which produce a Context if the Handlers should be called. If no handler should be called (e.g. echo/Validation) then it just returns null. Otherwise, they set the context, or in error situation throw.
  • All options are set via IOptions, and ServiceCollectionExtensions and MiddlewareExtensions have a setupAction to apply conifguration options as necessary.
  • NotificationDictionary is now IWebHookNotification (I created 2 classes to support existing items, but should provide nice options for DTO's for WebHooks.
  • Resources are not loading - trying to test sending of custom notification seems to die. Not sure what/how I've messed up resources. Any information anyone can provide would be helpful.
  • Overall it converted much easier on RC2, some is just my experience with asp.net core growing, some is the tooling!
  • Items not necessary for asp.net core have been omitted. Projects should be setup a bit cleaner now.
@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener May 24, 2016

Contributor

Figured out my Resource Loading issue (dotnet/corefx#8754)

Contributor

rposener commented May 24, 2016

Figured out my Resource Loading issue (dotnet/corefx#8754)

rposener added some commits May 24, 2016

Registration and Filter Controller in Custom.Api Project
Registrars as Optional (Resolve on Demand)
Custom Subscribe/Unsubscribe / Notification working
@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener May 24, 2016

Contributor

Ok - custom senders and receivers are working with all the same interfaces implemented. I have not made my way back to writing tests, but generally all the same tests as the .net project should be passing.

Question for Henrik - I had not paid attention to the Registrars before. It doesn't look like any sample or other project implements them. Is that there just in case someone needs to do some additional verification? I also did not really get the point of the IdValidator along the same lines. Could those not be just consolidated into a single validator, and leave it up to the implementation to decide what to validate?

I am heading out on Vacation till next Tuesday. If you guys can give this a bit of a review (Eilon) in the mean time, I will start on converting the tests, and look at updating the other receivers, which should not take too much effort to crank through.

Contributor

rposener commented May 24, 2016

Ok - custom senders and receivers are working with all the same interfaces implemented. I have not made my way back to writing tests, but generally all the same tests as the .net project should be passing.

Question for Henrik - I had not paid attention to the Registrars before. It doesn't look like any sample or other project implements them. Is that there just in case someone needs to do some additional verification? I also did not really get the point of the IdValidator along the same lines. Could those not be just consolidated into a single validator, and leave it up to the implementation to decide what to validate?

I am heading out on Vacation till next Tuesday. If you guys can give this a bit of a review (Eilon) in the mean time, I will start on converting the tests, and look at updating the other receivers, which should not take too much effort to crank through.

@MisterJames

This comment has been minimized.

Show comment
Hide comment
@MisterJames

MisterJames Jun 21, 2016

@rposener @HenrikFrystykNielsen Hey folks, no milestone here, but it looks like it's getting close? Is there an ETA for this PR to get merged?

MisterJames commented Jun 21, 2016

@rposener @HenrikFrystykNielsen Hey folks, no milestone here, but it looks like it's getting close? Is there an ETA for this PR to get merged?

@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener Jun 23, 2016

Contributor

Well, I have had some time away where I was unable to work on it. Should be able to get more done soon. Kind of wish I could get some review from the asp.net core team to know if middleware is looking OK, and from Henrik based on questions above. Certainly is close - just want a little confidence I'm not severely overlooking something. If it's good, then we should be able to just start porting all the implementations and tests.

Or perhaps, the team wants it to be a single project that targets both frameworks. If that is the case, a lot of refactoring is probably needed... Open to input, and would love some feedback.

Contributor

rposener commented Jun 23, 2016

Well, I have had some time away where I was unable to work on it. Should be able to get more done soon. Kind of wish I could get some review from the asp.net core team to know if middleware is looking OK, and from Henrik based on questions above. Certainly is close - just want a little confidence I'm not severely overlooking something. If it's good, then we should be able to just start porting all the implementations and tests.

Or perhaps, the team wants it to be a single project that targets both frameworks. If that is the case, a lot of refactoring is probably needed... Open to input, and would love some feedback.

@rposener

This comment has been minimized.

Show comment
Hide comment
@rposener

rposener Jul 12, 2016

Contributor

Should I just close this and let someone else start again?

Contributor

rposener commented Jul 12, 2016

Should I just close this and let someone else start again?

@HenrikFrystykNielsen

This comment has been minimized.

Show comment
Hide comment
@HenrikFrystykNielsen

HenrikFrystykNielsen Jul 12, 2016

Contributor

I really appreciate all the work you have put into it and I apologize for the lack of response. Part of it has been because core has been in flux but with core 1.0 out it should be possible to get a stable model together. I absolutely do want this to run on core but it has been difficult to get things to align. Let me chat with some of the core folks and see how we can bring your work forward. thanks!

Contributor

HenrikFrystykNielsen commented Jul 12, 2016

I really appreciate all the work you have put into it and I apologize for the lack of response. Part of it has been because core has been in flux but with core 1.0 out it should be possible to get a stable model together. I absolutely do want this to run on core but it has been difficult to get things to align. Let me chat with some of the core folks and see how we can bring your work forward. thanks!

@tutukar

This comment has been minimized.

Show comment
Hide comment
@tutukar

tutukar Aug 15, 2016

Any word on if and when this branch is going to be merged to master? We have a Webhook based running we are looking to Migrate to .net core. Thanks!

tutukar commented Aug 15, 2016

Any word on if and when this branch is going to be merged to master? We have a Webhook based running we are looking to Migrate to .net core. Thanks!

@invisibleaxm

This comment has been minimized.

Show comment
Hide comment
@invisibleaxm

invisibleaxm Sep 15, 2016

+1 it would be awesome if we can start developing webhooks in .net core

invisibleaxm commented Sep 15, 2016

+1 it would be awesome if we can start developing webhooks in .net core

@dalestone

This comment has been minimized.

Show comment
Hide comment
@dalestone

dalestone Sep 19, 2016

Any further update on this? It would be great if we could use WebHooks in .NET core

dalestone commented Sep 19, 2016

Any further update on this? It would be great if we could use WebHooks in .NET core

@amivit

This comment has been minimized.

Show comment
Hide comment
@amivit

amivit Sep 27, 2016

I'm super excited for this! Any eta?

amivit commented Sep 27, 2016

I'm super excited for this! Any eta?

@yilativ

This comment has been minimized.

Show comment
Hide comment
@yilativ

yilativ Sep 30, 2016

Anyone try this yet?

yilativ commented Sep 30, 2016

Anyone try this yet?

@dkent600

This comment has been minimized.

Show comment
Hide comment
@dkent600

dkent600 Nov 7, 2016

It seems no one is paying attention

dkent600 commented Nov 7, 2016

It seems no one is paying attention

@CharlBest

This comment has been minimized.

Show comment
Hide comment
@CharlBest

CharlBest Dec 9, 2016

This would be very cool indeed

CharlBest commented Dec 9, 2016

This would be very cool indeed

@alhardy

This comment has been minimized.

Show comment
Hide comment
@alhardy

alhardy Jan 10, 2017

We have a project were this would be very useful, hesitant to use it though because there doesn't appear to be much recent work done on the project, is work going to continue on the project?

alhardy commented Jan 10, 2017

We have a project were this would be very useful, hesitant to use it though because there doesn't appear to be much recent work done on the project, is work going to continue on the project?

@HenrikFrystykNielsen

This comment has been minimized.

Show comment
Hide comment
@HenrikFrystykNielsen

HenrikFrystykNielsen Jan 12, 2017

Contributor

It is on the road map but the stars haven't aligned yet to make it come together. I will provide an update when that happens. Thanks! Henrik

Contributor

HenrikFrystykNielsen commented Jan 12, 2017

It is on the road map but the stars haven't aligned yet to make it come together. I will provide an update when that happens. Thanks! Henrik

@tutukar

This comment has been minimized.

Show comment
Hide comment
@tutukar

tutukar Mar 3, 2017

Anything on this yet?

tutukar commented Mar 3, 2017

Anything on this yet?

@henningst

This comment has been minimized.

Show comment
Hide comment
@henningst

henningst Mar 20, 2017

When can we expect to get WebHooks support in ASP.NET Core? This blog post says:

A port to the ASP.NET Core is being planned so please stay tuned!

Could you share any more details on that?

@HenrikFrystykNielsen

henningst commented Mar 20, 2017

When can we expect to get WebHooks support in ASP.NET Core? This blog post says:

A port to the ASP.NET Core is being planned so please stay tuned!

Could you share any more details on that?

@HenrikFrystykNielsen

@Eilon

This comment has been minimized.

Show comment
Hide comment
@Eilon

Eilon Oct 6, 2017

Member

Closing this PR because we're going with #153 instead. Thanks!

Member

Eilon commented Oct 6, 2017

Closing this PR because we're going with #153 instead. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment