Re: [openstack-dev] [all] [api] Re-Reminder on the state of WSME
ironic-inspector is using Flask, and it has been quite nice so far. On 04/11/2018 12:56 AM, Michael Johnson wrote: I echo Ben's question about what is the recommended replacement. Not long ago we were advised to use WSME over the alternatives which is why Octavia is using the WSME types and pecan extension. Thanks, Michael On Mon, Apr 9, 2018 at 10:16 AM, Ben Nemec wrote: On 04/09/2018 07:22 AM, Chris Dent wrote: A little over two years ago I sent a reminder that WSME is not being actively maintained: http://lists.openstack.org/pipermail/openstack-dev/2016-March/088658.html Today I was reminded of this becasue a random (typo-related) patchset demonstrated that the tests were no longer passing and fixing them is enough of a chore that I (at least temporarily) marked one test as an expected failure.o https://review.openstack.org/#/c/559717/ The following projects appear to still use WSME: aodh blazar cloudkitty cloudpulse cyborg glance gluon iotronic ironic magnum mistral mogan octavia panko qinling radar ranger searchlight solum storyboard surveil terracotta watcher Most of these are using the 'types' handling in WSME and sometimes the pecan extension, and not the (potentially broken) Flask extension, so things should be stable. However: nobody is working on keeping WSME up to date. It is not a good long term investment. What would be the recommended alternative, either for new work or as a migration path for existing projects? __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [all] [api] Re-Reminder on the state of WSME
On Wed, 11 Apr 2018, Michael Johnson wrote: I am willing to help with maintenance (patch reviews/gate fixes), but I cannot commit time to development work on it. Michael and I also spoke in IRC and he too is now a WSME core. Thanks to both of you for stepping up and being willing to help out. -- Chris Dent ٩◔̯◔۶ https://anticdent.org/ freenode: cdent tw: @anticdent__ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [all] [api] Re-Reminder on the state of WSME
I am willing to help with maintenance (patch reviews/gate fixes), but I cannot commit time to development work on it. Michael On Wed, Apr 11, 2018 at 6:21 AM, Chris Dent wrote: > On Wed, 11 Apr 2018, Dougal Matthews wrote: > >> I would like to see us move away from WSME. I'm not sure I have time to >> drive an effort in finding a replacement (and migration path) but I would >> certainly like to help. > > > Dougal and I talked about this in IRC and agreed that being able to > merge changes in WSME would help the goal of establishing a > migration path. So I've added him to WSME cores. > > > -- > Chris Dent ٩◔̯◔۶ https://anticdent.org/ > freenode: cdent tw: @anticdent > > __ > OpenStack Development Mailing List (not for usage questions) > Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [all] [api] Re-Reminder on the state of WSME
On Wed, 11 Apr 2018, Dougal Matthews wrote: I would like to see us move away from WSME. I'm not sure I have time to drive an effort in finding a replacement (and migration path) but I would certainly like to help. Dougal and I talked about this in IRC and agreed that being able to merge changes in WSME would help the goal of establishing a migration path. So I've added him to WSME cores. -- Chris Dent ٩◔̯◔۶ https://anticdent.org/ freenode: cdent tw: @anticdent__ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [all] [api] Re-Reminder on the state of WSME
On 11 April 2018 at 11:39, Chris Dent wrote: > On Tue, 10 Apr 2018, Michael Johnson wrote: > > I echo Ben's question about what is the recommended replacement. >> > > It's a good question. Unfortunately I don't have a good answer. My > involvement in WSME is simply the result of submitting some bug fixes > in early 2015 and there being no one to review them. Lucas Gomes and > I were pressganged into becoming the sole core reviews for a project > that was already languishing. > > A short answer could be this: There doesn't have to be a > replacement. There are people in the community who are active users > of WSME, if those people would like to become maintainers of WSME, > Lucas and I can make those people core and help them to shepherd the > project to an active state. It may be that nothing really needs to > change. The reason this is coming up now is because a code change > was proposed that failed the gate because for unrelated reasons (the > pep8 python3 thing mentioned elsewhere). If the existing feature set > is sufficient the only real work to do is to keep those features > working as we move to python3. > I would like to see us move away from WSME. I'm not sure I have time to drive an effort in finding a replacement (and migration path) but I would certainly like to help. > > Any volunteers? > > For new projects, I think the standby is Flask + jsonschema. They > are both boring and common. > > I know some people really like django REST framework, but it appears > to have lots of magic and magic is bad. > > The longer answer is just opinion so if the above is enough of an > answer you can stop here before I go off on a ramble. > > I've never really been all that sure on what WSME is for. It > describes itself with "simplifies the writing of REST web services > by providing simple yet powerful typing, removing the need to > directly manipulate the request and the response objects." This is > pretty much exactly the opposite of what I want when writing a web > service. I want to be closely aware of the request and response and > not abstract away the details of HTTP because those details are what > makes a web service useful and maintainable. So I tend to avoid > typing systems like WSME and object dispatch systems like pecan in > favor of tools that are more explicit about the data (both headers > and body) coming in and going out, and that make the association > between URLs and code explicit rather than implicit. > > That is: you want to write code for the API layer so that future > maintainers of that code find it easy to trace the path through the > code that a request takes without having to make a lot of guesses or > de-serialize (in their heads) an object inheritance hierarchy. > > Flask can do that, if you chose to use it that way, but like many > tools it also allows you to do things in confusing ways too. > > I personally don't think that consistency of web framework across > OpenStack projects is important. What's important is: > > * The exposed HTTP APIs have some degree of consistency (that is, > they don't have glaring differences in grammar and semantics). > * The code is low on abstraction and high on scrutability so that > future maintainers aren't scratching their heads. > * Any frameworks chosen (if any) are maintained by the broader > Python community and are not OpenStack snowflakes. > > Committing to any particular framework is the same as committing to > being wrong and calcified in some fairly short amount of time. > > Who wants to volunteer to help maintain WSME? > > > -- > Chris Dent ٩◔̯◔۶ https://anticdent.org/ > freenode: cdent tw: @anticdent > > __ > OpenStack Development Mailing List (not for usage questions) > Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev > > __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [all] [api] Re-Reminder on the state of WSME
On Tue, 10 Apr 2018, Michael Johnson wrote: I echo Ben's question about what is the recommended replacement. It's a good question. Unfortunately I don't have a good answer. My involvement in WSME is simply the result of submitting some bug fixes in early 2015 and there being no one to review them. Lucas Gomes and I were pressganged into becoming the sole core reviews for a project that was already languishing. A short answer could be this: There doesn't have to be a replacement. There are people in the community who are active users of WSME, if those people would like to become maintainers of WSME, Lucas and I can make those people core and help them to shepherd the project to an active state. It may be that nothing really needs to change. The reason this is coming up now is because a code change was proposed that failed the gate because for unrelated reasons (the pep8 python3 thing mentioned elsewhere). If the existing feature set is sufficient the only real work to do is to keep those features working as we move to python3. Any volunteers? For new projects, I think the standby is Flask + jsonschema. They are both boring and common. I know some people really like django REST framework, but it appears to have lots of magic and magic is bad. The longer answer is just opinion so if the above is enough of an answer you can stop here before I go off on a ramble. I've never really been all that sure on what WSME is for. It describes itself with "simplifies the writing of REST web services by providing simple yet powerful typing, removing the need to directly manipulate the request and the response objects." This is pretty much exactly the opposite of what I want when writing a web service. I want to be closely aware of the request and response and not abstract away the details of HTTP because those details are what makes a web service useful and maintainable. So I tend to avoid typing systems like WSME and object dispatch systems like pecan in favor of tools that are more explicit about the data (both headers and body) coming in and going out, and that make the association between URLs and code explicit rather than implicit. That is: you want to write code for the API layer so that future maintainers of that code find it easy to trace the path through the code that a request takes without having to make a lot of guesses or de-serialize (in their heads) an object inheritance hierarchy. Flask can do that, if you chose to use it that way, but like many tools it also allows you to do things in confusing ways too. I personally don't think that consistency of web framework across OpenStack projects is important. What's important is: * The exposed HTTP APIs have some degree of consistency (that is, they don't have glaring differences in grammar and semantics). * The code is low on abstraction and high on scrutability so that future maintainers aren't scratching their heads. * Any frameworks chosen (if any) are maintained by the broader Python community and are not OpenStack snowflakes. Committing to any particular framework is the same as committing to being wrong and calcified in some fairly short amount of time. Who wants to volunteer to help maintain WSME? -- Chris Dent ٩◔̯◔۶ https://anticdent.org/ freenode: cdent tw: @anticdent__ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [all] [api] Re-Reminder on the state of WSME
I echo Ben's question about what is the recommended replacement. Not long ago we were advised to use WSME over the alternatives which is why Octavia is using the WSME types and pecan extension. Thanks, Michael On Mon, Apr 9, 2018 at 10:16 AM, Ben Nemec wrote: > > > On 04/09/2018 07:22 AM, Chris Dent wrote: >> >> >> A little over two years ago I sent a reminder that WSME is not being >> actively maintained: >> >> >> http://lists.openstack.org/pipermail/openstack-dev/2016-March/088658.html >> >> Today I was reminded of this becasue a random (typo-related) >> patchset demonstrated that the tests were no longer passing and >> fixing them is enough of a chore that I (at least temporarily) >> marked one test as an expected failure.o >> >> https://review.openstack.org/#/c/559717/ >> >> The following projects appear to still use WSME: >> >> aodh >> blazar >> cloudkitty >> cloudpulse >> cyborg >> glance >> gluon >> iotronic >> ironic >> magnum >> mistral >> mogan >> octavia >> panko >> qinling >> radar >> ranger >> searchlight >> solum >> storyboard >> surveil >> terracotta >> watcher >> >> Most of these are using the 'types' handling in WSME and sometimes >> the pecan extension, and not the (potentially broken) Flask >> extension, so things should be stable. >> >> However: nobody is working on keeping WSME up to date. It is not a >> good long term investment. > > > What would be the recommended alternative, either for new work or as a > migration path for existing projects? > > __ > OpenStack Development Mailing List (not for usage questions) > Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [all] [api] Re-Reminder on the state of WSME
On 04/09/2018 07:22 AM, Chris Dent wrote: A little over two years ago I sent a reminder that WSME is not being actively maintained: http://lists.openstack.org/pipermail/openstack-dev/2016-March/088658.html Today I was reminded of this becasue a random (typo-related) patchset demonstrated that the tests were no longer passing and fixing them is enough of a chore that I (at least temporarily) marked one test as an expected failure.o https://review.openstack.org/#/c/559717/ The following projects appear to still use WSME: aodh blazar cloudkitty cloudpulse cyborg glance gluon iotronic ironic magnum mistral mogan octavia panko qinling radar ranger searchlight solum storyboard surveil terracotta watcher Most of these are using the 'types' handling in WSME and sometimes the pecan extension, and not the (potentially broken) Flask extension, so things should be stable. However: nobody is working on keeping WSME up to date. It is not a good long term investment. What would be the recommended alternative, either for new work or as a migration path for existing projects? __ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
[openstack-dev] [all] [api] Re-Reminder on the state of WSME
A little over two years ago I sent a reminder that WSME is not being actively maintained: http://lists.openstack.org/pipermail/openstack-dev/2016-March/088658.html Today I was reminded of this becasue a random (typo-related) patchset demonstrated that the tests were no longer passing and fixing them is enough of a chore that I (at least temporarily) marked one test as an expected failure.o https://review.openstack.org/#/c/559717/ The following projects appear to still use WSME: aodh blazar cloudkitty cloudpulse cyborg glance gluon iotronic ironic magnum mistral mogan octavia panko qinling radar ranger searchlight solum storyboard surveil terracotta watcher Most of these are using the 'types' handling in WSME and sometimes the pecan extension, and not the (potentially broken) Flask extension, so things should be stable. However: nobody is working on keeping WSME up to date. It is not a good long term investment. -- Chris Dent ٩◔̯◔۶ https://anticdent.org/ freenode: cdent tw: @anticdent__ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev