Core Merging Plan for the API #571
Comments
I think we're pretty much done with step 0, so marking as done. |
I'm curious, is WP-API on track for integration into WP 4.1 (approx 10 December)? |
There's no fixed timeline for integration into core at this time. |
Still no fixed timeline for integration into core? |
Getting closer! |
Updating timeline note to reflect the current status from WP-API#571
Updated this issue to represent latest priorities/progress:
|
#561 doesn't seem to be about batch requests support - for example see @danielbachhuber's latest comment there:
This is conflating two issues I think. Sending multiple requests as a matter of convenience to reduce HTTP requests shouldn't be conflated with "How should we support creating multiple Resources in one request" as that brings the complexity that Daniel highlights above. It seems we need a ticket to just support multiple parallel independent requests which would return each response enveloped in someway. |
Updated to mark the following as complete:
|
Updated to represent our progress thus far as we release v2.0 Beta 1. |
PSR 7 is now accepted |
Related #1542 |
@rmccue Can you revise this plan to reflect what we need to do by end of January? Alternatively, I'm open to closing, and just using the 2.0 milestone for everything between now and then. |
We are now merged. |
The key to getting the API into core is breaking the merge into steps. I've been talking these through with the rest of the team at WCSF, and we're going to break this up into a few basic steps.
Each of these steps has challenges, but the idea is to try and handle these step-by-step to chip away at the larger task.
At the end of each step, we'll stop and make sure we've completed everything we wanted to, ensure we have nothing else to do, then shepherd it into core. The next step doesn't start until the previous is fully complete.
The actual process of finalising each step will be to separate the relevant code into a separate repository, then formatting it as a core patch. These can then be reviewed separately, and merged into WP core at the behest of the core team. (The actual timing for this depends on the release cycles and such, but
this doesn't need to affect our work.)
Step 0: Reinvigorate the two-dot-oh branch
We've decided internally that the resource approach taken on
two-dot-oh
isn't going to work. In short, the benefits we imagined didn't really turn up, however we did learn some about our approach here. We'll handle that in a later step.There's plenty that we've done on the
two-dot-oh
branch that's still applicable, so we should salvage these now before they diverge any further. Ideally, this means no new code, just judicious use of cherry-picking.Cherry-pick non-resource commits from
two-dot-oh
*/*_raw
to*.rendered/*.raw
Cherry-pick (or otherwise bring across) any changes to users.
(There are some non-resource-related changes in the branch that fix bugs or add features missing on the master branch right now.)
Step 1: Pushing ahead with infrastructure
The first part up for merge is the infrastructure. This is the bare basics to run any sort of API, and will consist primarily of our
plugin.php
andlib/class-wp-json-server.php
files.plugin.php
andclass-wp-json-server.php
into separate directory #717[ ] Create internal structure for linking routes to object types: #578Server Code (Routing, Serialisation, etc)
[0] -> ['handler']
,[1] -> ['methods']
): #544Other Infrastructure
plugin.php
(JS loader, etc): #575Step 2: Making our core objects available
Once the infrastructure is in core, let's work step-by-step and evaulate our core objects. These are the Core Objects: Posts, Comments, Terms and Users. This also includes meta for each (except terms).
This does not include options or similar (plugins, themes, customiser endpoints,
etc).
(PCTU = Posts, Comments, Terms and Users)
@joehoyle@rachelbaker ) #693Collections
Posts
Comments
Terms
Check on status of
term_id
/term_taxonomy_id
unification in core(Depending on this, we may need to change the way the API works with IDs.)
Users
Options
Schema
register_post_type
) parameters for API controllers #769Step 3: Periphery
Now that core has the vast majority of the API in place, it's time to worry about all those extras we missed out on the way.
json_last_error
shim into core (integrate withServices_JSON
)JsonSerializable
shim into core (integrate withwp_json_encode
)WP_HTTP_Response
to matchPost-Process
Once the process is complete and the API is merged, we can move on to new features outside our main focus. These can also happen in parallel if we have sufficient resources (i.e. people) to handle these as well.
The text was updated successfully, but these errors were encountered: