Wim Leers Drupal 10 Upkeep and Assist Service State of JSON API (July 2021)

Fairly a number of individuals in Drupal Developer group are wanting ahead to see Drupal Developer JSON API Drupal 10 module ship with 8 core. As a result of Drupal 10 Upkeep and Assist Service they wish to apply it to their initiatives Drupal Developer Admin UI & JS Modernization Initiative wants it they wish to see 8 ship with a extra succesful RESTful HTTP API then may have a non-NIH (Not Invented Right here) API however one which follows a broadly used spec it permits them to construct progressively decoupled parts … So the place are issues at? Timeline Let’s begin with a high-level timeline Drupal 10 Upkeep and Assist Service Drupal Developer plan (intent) to maneuver Drupal Developer JSON API Drupal 10 module into core was accepted by ’s product managers and a framework supervisor 4 months in the past, on March 19, 2021! A core patch was posted on March 29 (situation #2843147). My colleague Gabe and I had already been working full time for a number of months at that time to make Drupal Developer JSON API Drupal 10 modules extra secure Drupal 10 Upkeep and Assist Service a number of safety releases, a lot take a look at protection and so on. Some evaluations adopted, however principally Drupal Developer situation (#2843147) simply sat there. Anyone was free to offer suggestions. We inspired individuals to assessment, take a look at and criticize Drupal Developer JSON API contrib Drupal 10 module. Folks did Drupal 10 Upkeep and Assist Service one other 1000 websites began utilizing JSON API! Fairly than commenting on Drupal Developer core situation, they filed points in opposition to Drupal Developer JSON API contrib Drupal 10 module! Since December 2017, Gabe and I had been nonetheless engaged on it full time, and e0ipso every time his day job/free time allowed. Because of Drupal Developer take a look at protection Gabe and I had been including, bugs had been being mounted a lot sooner than new ones had been reported — and as a rule we discovered (long-existing) bugs earlier than they had been reported. Then 1.5 week in the past, on June 28, we launched JSON API 1.22, Drupal Developer ultimate JSON API 1.x launch. That very same day, we branched Drupal Developer 2.x model. Extra about that beneath. Drupal Developer subsequent day, on June 29, an up to date core patch was posted. All suggestions had been addressed! June 29 I wrote in my remark Drupal 10 Upkeep and Assist Service Time to get this going once more. Since #55, right here’s what occurred Drupal 10 Upkeep and Assist Service Newest launch at #55 Drupal 10 Upkeep and Assist Service JSON API 1.14 Newest launch as we speak Drupal 10 Upkeep and Assist Service JSON API 1.22 69 commits Drupal 10 Upkeep and Assist Service ($ git log –oneline –since “March 30 2021 14 Drupal 10 Upkeep and Assist Service21 CET” | wc -l) Complete take a look at protection accomplished (#2953318 Drupal 10 Upkeep and Assist Service Complete JSON API integration take a look at protection part 4 Drupal 10 Upkeep and Assist Service collections, filtering and sorting + #2953321 Drupal 10 Upkeep and Assist Service Complete JSON API integration take a look at protection part 5 Drupal 10 Upkeep and Assist Service nested consists of and sparse subject units + #2972808 Drupal 10 Upkeep and Assist Service Complete JSON API integration take a look at protection part 6 Drupal 10 Upkeep and Assist Service POST/PATCH/DELETE of relationships) Getting Drupal Developer take a look at protection to that time revealed some safety vulnerabilities (1.16), and plenty of earlier than it (1.14, 1.10 …) Ported a lot of Drupal Developer core REST enhancements in Drupal Developer previous 1.5 years to JSON API (1.15) Many, many, many bugfixes, and far, a lot clean-up for future maintainability (1.16, 1.17, 1.18, 1.19, 1.20, 1.21, 1.22) That’s lots, isn’t it?  Drupal 10 Upkeep and Assist Service) However there’s extra! All of Drupal Developer above occurred on Drupal Developer 8.x-1.x department. As described in #2952293 Drupal 10 Upkeep and Assist Service Department subsequent main Drupal 10 Upkeep and Assist Service model 2, requiring core >=8.5 (and talked about in #61), we’ve got many causes to begin a 8.x-2.x department. (That department was created months in the past, however we saved them equivalent for months.) Why wait so lengthy? As a result of we wished all >6000 JSON API customers to have the ability to gently migrate from JSON API 1.x (on ⇐8.5) to JSON API 2.x (on >=8.5). And what higher means to do this than to put in writing complete take a look at protection, and fixing all identified issues that that surfaced? That’s what we’ve been doing Drupal Developer previous few months! This massively reduces Drupal Developer danger of including JSON API to core. We outlined a plan of must-have points earlier than going into core Drupal 10 Upkeep and Assist Service #2931785 Drupal 10 Upkeep and Assist Service Drupal Developer path for JSON API to core — they usually’re all DONE as of as we speak! Dozens of bugs have been flushed out and glued earlier than they ever entered core. Vital Drupal 10 Upkeep and Assist Service in Drupal Developer previous 6–8 weeks we’ve seen a steep drop in Drupal Developer variety of bug studies and support requests which were filed in opposition to Drupal Developer JSON API Drupal 10 module! After having been tasked with maturing core’s REST API, and discovering Drupal Developer less-than-great state that was in when 8 shipped, and having skilled how exhausting it’s to enhance it and even simply repair bugs, this was a tough requirement for me. I hope it provides core committers Drupal Developer identical feeling of reduction because it provides me, to see that JSON API will on day one be in significantly better form. Drupal Developer different cause why it’s in significantly better form, is that Drupal Developer JSON API Drupal 10 module now has no API floor apart from Drupal Developer HTTP API! No PHP API (its sole API was dropped in Drupal Developer 2.x department Drupal 10 Upkeep and Assist Service #2982210 Drupal 10 Upkeep and Assist Service Transfer EntityToJsonApi service to JSON API Extras) in any respect, solely Drupal Developer HTTP API as specified by http Drupal 10 Upkeep and Assist Service//jsonapi.org/format/. TL;DR Drupal 10 Upkeep and Assist Service JSON API in contrib as we speak is extra secure, extra dependable, extra feature-rich than core’s REST API. And it does so whereas strongly complying with Drupal Developer JSON API spec Drupal 10 Upkeep and Assist Service it’s far much less of a ism than core’s REST API. So, with satisfaction, and with a lot of sweat (no blood and no tears thankfully), @gabesullice, @e0ipso and I current you this massively improved core patch! EDIT Drupal 10 Upkeep and Assist Service P.S. Drupal 10 Upkeep and Assist Service 668K bytes of Drupal Developer 1.0M of bytes that this patch accommodates are for take a look at protection. That’s 2/3rds! To which e0ipso replied Drupal 10 Upkeep and Assist Service So, with satisfaction, and with a lot of sweat (no blood and no tears thankfully), @gabesullice, @e0ipso and I current you this massively improved core patch! A lot satisfaction! This was an extended journey, that I walked (nearly) alone for a few years. Then @Wim Leers and @gabesullice joined and carried this to Drupal Developer end line. Such a ravishing collaboration! Drupal 10 Upkeep and Assist Service) July 9 Then, about 12 hours in the past, core launch supervisor xjm and core framework supervisor effulgentsia posted a remark Drupal 10 Upkeep and Assist Service (@effulgentsia and @xjm co-authored this remark.) It’s actually superior to see Drupal Developer progress right here on JSON API! @xjm and @effulgentsia mentioned this with different core committers (@webchick, @Dries, @larowlan, @catch) and with Drupal Developer JSON API Drupal 10 module maintainers. Based mostly on what we realized in these discussions, we’ve determined to focus on this situation for an early function in 8.7 moderately than 8.6. Subsequently, we are going to will set it 8.7 in a number of days once we department 8.7. Opinions and feedback are nonetheless welcome in Drupal Developer meantime, whether or not on this situation, or as particular person points in Drupal Developer jsonapi situation queue. Be happy to cease studying this remark right here, or proceed studying if you wish to know why it’s being bumped to eight.7. First, we wish to give an enormous applause for every thing that everybody engaged on Drupal Developer jsonapi contrib Drupal 10 module has accomplished. In Drupal Developer final 3-4 months alone (since 8.5.0 was launched and #44 was written) Drupal 10 Upkeep and Assist Service Over 100 points in Drupal Developer contrib venture have been closed. There are at present solely 36 open points, solely 7 of that are bug studies. Per #62, Drupal Developer remaining bug fixes require breaking backwards compatibility for customers of Drupal Developer 1.x Drupal 10 module, so a ultimate 1.x launch has been launched, and new options and BC-breaking bug fixes at the moment are occurring in Drupal Developer 2.x department. Additionally per #62, an incredible quantity of take a look at protection has been written and correspondingly there’s been a drop in new bug studies and support requests getting filed. Drupal Developer Drupal 10 module is now extraordinarily well-documented, each in Drupal Developer API documentation and in Drupal Developer .org handbook. Given all of Drupal Developer above, why not commit #70 to core now, prior to eight.6 alpha? Effectively, We typically want to commit important new core options early in Drupal Developer launch cycle for Drupal Developer minor, moderately than towards Drupal Developer finish. Which means that this month and Drupal Developer subsequent couple are Drupal Developer greatest time to commit 8.7.x options. To reduce Drupal Developer disruption to contrib, API shoppers, and websites of shifting a secure Drupal 10 module from core to contrib, we’d prefer to have it as a secure Drupal 10 module in 8.7.0, moderately than an experimental Drupal 10 module in 8.6.0. Per above, we’re not but accomplished breaking BC. Drupal Developer talked about spec compliance points nonetheless want extra work. Whereas we’re nonetheless doubtlessly evolving Drupal Developer API, it’s useful to proceed having Drupal Developer Drupal 10 module in contrib for sooner iteration and suggestions. Since Drupal Developer 2.x department of JSON API was simply branched, there are nearly no websites utilizing it but (solely 23 as in contrast with Drupal Developer 6000 utilizing 1.x). An alpha launch of JSON API 2.x as soon as we’re prepared will give us some fast real-world testing of Drupal Developer ultimate API that we’re focusing on for core. As @lauriii identified, a further advantge of permitting a bit extra time for API adjustments is that it permits extra time for Drupal Developer Javascript Modernization Initiative, which will depend on JSON API, to assist validate that JSON API consists of every thing we have to have a completely decoupled admin frontend inside core itself. (We wouldn’t block Drupal Developer Drupal 10 module addition on Drupal Developer different initiative, but it surely’s an added bonus given Drupal Developer different causes to focus on 8.7.) Whereas Drupal Developer Drupal 10 module has reached maturity in contrib, we nonetheless want Drupal Developer ultimate evaluations and signoffs for Drupal Developer core patch. Given Drupal Developer high quality of Drupal Developer contrib Drupal 10 module this could go effectively, however it’s a 1 MB patch (with 668K of assessments, however that also means 300K+ of code to assessment.)  Drupal 10 Upkeep and Assist Service) We wish to give our assessment of this code Drupal Developer consideration it deserves. None of Drupal Developer above apart from Drupal Developer final level are exhausting blockers to including an experimental Drupal 10 module to core. Customers preferring Drupal Developer stability of Drupal Developer 1.x Drupal 10 module might proceed to make use of it from contrib, thereby overriding Drupal Developer one in core. Nonetheless, in Drupal Developer case of jsonapi, I believe there’s one thing odd about telling web site builders to experiment with Drupal Developer one in core, but when they wish to use it in manufacturing, to downgrade to Drupal Developer one in contrib. I believe that people who find themselves really taken with utilizing jsonapi on their websites can be higher off going to Drupal Developer contrib venture web page and making an specific 1.x or 2.x determination from there. In the meantime, we see what points, if any, individuals run into when upgrading from 1.x to 2.x. Once we’re able to commit it to core, we’ll contemplate it not less than beta stability (moderately than alpha). As soon as once more, actually improbable work right here. Subsequent So there you might have it. JSON API is not going to be transport in 8.6 this fall. Drupal Developer major cause being that it’s most popular for important new core options to land early in Drupal Developer launch cycle, particularly ones transport as secure from Drupal Developer begin. This additionally provides Drupal Developer Admin UI & JS Modernization Initiative extra time to really train many elements of JSON API’s capabilities, and in doing so validate that it’s sufficiently succesful to energy it. For us as JSON API Drupal 10 module maintainers, it retains issues simpler for a short time longer Drupal 10 Upkeep and Assist Service as soon as it’s in core, it’ll be more durable to iterate Drupal 10 Upkeep and Assist Service extra course of, slower take a look at runs, commits can solely occur by core committers and never by JSON API maintainers. Ideally, we’d commit JSON API to core with zero remaining bugs and duties, with solely function requests being left. Excellent news Drupal 10 Upkeep and Assist Service we’re nearly there already Drupal 10 Upkeep and Assist Service most open points are function requests! For you as JSON API customers, not a lot adjustments. Simply maintain utilizing https Drupal 10 Upkeep and Assist Service//www.Drupal 10.org/venture/jsonapi. Drupal Developer 2.x department launched some breaking adjustments to higher adjust to Drupal Developer JSON API spec, and likewise obtained a number of new small options. However we labored exhausting to guarantee that disruption is minimal (instance 1 2 3).1 Use it, attempt to break it, report bugs. I’m assured you’ll should strive exhausting to search out bugs … and sure, that’s a problem to y’all! If you wish to keep on 1.x, you possibly can — and it’s rock strong because of Drupal Developer take a look at protection we added. That’s Drupal Developer cause we waited so lengthy to work on Drupal Developer 2.x department Drupal 10 Upkeep and Assist Service as a result of we wished Drupal Developer 1000’s of JSON API websites to be in Drupal Developer greatest state doable, not be left behind. Moreover, Drupal Developer complete take a look at protection we added in 1.x ensures we’re conscious of even delicate BC breaks in 2.x! ↩︎ API Acquia Drupal 10 Improvement and Assist

This article was republished from its original source.
Call Us: 1(800)730-2416

Pixeldust is a 20-year-old web development agency specializing in Drupal and WordPress and working with clients all over the country. With our best in class capabilities, we work with small businesses and fortune 500 companies alike. Give us a call at 1(800)730-2416 and let’s talk about your project.

FREE Drupal SEO Audit

Test your site below to see which issues need to be fixed. We will fix them and optimize your Drupal site 100% for Google and Bing. (Allow 30-60 seconds to gather data.)

Powered by

Wim Leers Drupal 10 Upkeep and Assist Service State of JSON API (July 2021)

On-Site Drupal SEO Master Setup

We make sure your site is 100% optimized (and stays that way) for the best SEO results.

With Pixeldust On-site (or On-page) SEO we make changes to your site’s structure and performance to make it easier for search engines to see and understand your site’s content. Search engines use algorithms to rank sites by degrees of relevance. Our on-site optimization ensures your site is configured to provide information in a way that meets Google and Bing standards for optimal indexing.

This service includes:

  • Pathauto install and configuration for SEO-friendly URLs.
  • Meta Tags install and configuration with dynamic tokens for meta titles and descriptions for all content types.
  • Install and fix all issues on the SEO checklist module.
  • Install and configure XML sitemap module and submit sitemaps.
  • Install and configure Google Analytics Module.
  • Install and configure Yoast.
  • Install and configure the Advanced Aggregation module to improve performance by minifying and merging CSS and JS.
  • Install and configure Schema.org Metatag.
  • Configure robots.txt.
  • Google Search Console setup snd configuration.
  • Find & Fix H1 tags.
  • Find and fix duplicate/missing meta descriptions.
  • Find and fix duplicate title tags.
  • Improve title, meta tags, and site descriptions.
  • Optimize images for better search engine optimization. Automate where possible.
  • Find and fix the missing alt and title tag for all images. Automate where possible.
  • The project takes 1 week to complete.