Revision of WSCCI update from Mon, 2013-03-11 00:33

翻譯自 http://groups.drupal.org/node/286108

Drupal 8 的功能凍結的日子已經到了,兩年間無數人們的努力之後,這正是時候停一停,談一談 Web Services and Context Core Initiative (WSCCI) ,還有看一看餘下的工作。

先總結:太扯了,我們已經完成了這麼多!太扯了,我們還有那麼多工作!

Drupal 8 的第一年我們沒有太多的新功能或者超凡的改變。我們修補了很多臭蟲,做了很多地基的工作,但最重的擔子要等到2012年2月才到達。那就是決定完全使用 Symfony2 的Components 作為 Drupal 8 的基本的 pipeline。這是一個多年來 Drupal 最大和最重要的決定,而且我相信完全是一個正確的決定。

直到現在的工作

WSCCI 基本上分成了 SCOTCH 和 WSCCI ,還有 WSCCI rebooted。也即是說過去一年的完成的工作有:

  1. 使用 Symfony2 HttpKernel component 和 model 處理請求
  2. 重寫 routing (路由) 系統,脫離自 menus
  3. 全新的 routing 系統以支持基於路徑路由 (routing by path), HTTP 方法,HTTP vs HTTPS,基本的 mime-based 路由,還有支持第三方的插件。這是一個劃時代的進化,帶來更多的可能性
  4. 全新的 routing 系統可以抽換成基於 non-SQL 的後台
  5. 全新的,更彈性的存取權限管理,支持一個路由有多個存取檢查點
  6. 新的串列化 (serialization)系統,可以輸出任何 entity 到一個標準的格式,例如 Atom, JSON, 或 HAL,支持現有的任何 entity,欄位組合
  7. 新的 rest.module,為任一 entity 對象提供一個 RESTful 存取方式
  8. REST/serialization 支持 Views,令 views 的結果變成一個串列化的資源
  9. Guzzle 加到 core,一個完全支持 HTTP 1.1 的客戶端,比現在的 drupal_http_request()更強大和有彈性

Although not strictly part of WSCCI per se, we've also had a knock-on effect throughout Drupal of paying down gobs of code debt, refactoring many core systems to be cleanly injected services, introducing a Dependency Injection Container to help make code more unit testable, and lots of general API improvements. As a side effect, core is far more modular and it's now far easier to swap out entire swaths of core without hacking core. Score!

Some of those feature requests have been open in some form or another for years. (consider rendering into multiple formats, which was first opened in 2007.) The impact of these improvements is huge, and far reaching. Drupal 8 will be a viable Hypermedia server, something it never has been before. Combined with all of the other work that's gone into Drupal 8, and Drupal's long history as a CMS, we are looking at a platform that can take the web by storm.

Google