On 04/22/2015 04:41 AM, Tim Starling wrote:
In the next RFC meeting, we will discuss the following RFC:
- Business Layer Architecture on budget
https://www.mediawiki.org/wiki/Requests_for_comment/Business_Layer_Architecture_on_budget
Minutes: https://tools.wmflabs.org/meetbot/wikimedia-office/2015/wikimedia-office.201...
Log: https://tools.wmflabs.org/meetbot/wikimedia-office/2015/wikimedia-office.201...
Summary of the discussion:
There was a fair amount of discussion about how the request/response model of the MW API ("API" here meaning api.php modules) should map to the proposed wfApi (or replacement). Tim was concerned that done wrong it will not reflect the stateless nature of the API.
People generally agreed that not all code should do SQL.
There was consensus to rewrite the RFC (particularly the assumptions). There was not consensus on the underlying RFC, though there was some support for making FauxRequest better.
I, and others, expressed some concern about the lack of type checking possible in this approach (since every API request is essentially {action: 'thank', parameters: {}}, rather than $$thankServiceInstance->thank( $revision ) or whatever).
A counter-argument to this is that we don't fully take advantage of the type-checking available. However, there are type checkers for PHP which some people use, and it's likely that even if we don't move to Hack, more type-checking features will move into the PHP ecosystem.
Also, we do have basic type-checking at run-time already (type hints, is it a real method?), though not quite the same thing.
Matt Flaschen