@weierophinney weierophinney released this Apr 16, 2015 · 223 commits to master since this release

Assets 4

Welcome to the first release in the 1.1 series!

This release features a completely rewritten UI! We expect it to resolve many of the performance issues and edge cases observed previously by users; it also simplifies the most-common workflows and puts more information at developers' fingertips than previously. On top of that, it's now fully responsive; you can even use it on your smartphone!

The major features in this release include:

  • Doctrine-Connected REST service creation (if the zfcampus/zf-apigility-doctrine module is present)
  • Database Autodiscovery, which improves on the DB-Connected services by allowing you to choose all tables you wish to expose as services, and to provide basic validations based on column types.
  • Addition of a Packaging service to the Admin API and UI to simplify and automate creation of deployment packages.
  • Apigility now supports multiple authentication adapters for each type supported, and per API authentication (vs per-application, as supported in 1.0).

Other features:

  • API modules can now use PSR-4 directory structures. zf-apigility-admin still creates modules using PSR-0, but will detect PSR-4 directory structures and work correctly with them (including for code generation purposes).
  • A new module, zf-http-cache, is available for integrating should you wish to add HTTP cache features to your API.

The following modules were tagged at 1.1.0, with features as noted below.

  • zf-apigility-admin
    • Integration of zf-apigility-doctrine support in UI
    • Addition of DB Autodiscovery feature for creation of REST services
    • #246 deprecated PUT for authorization service, implemented PATCH
    • #266 New API service for creating a deployment package
    • #262 PSR-4 module structure support
    • #271 Per-API authentication configuration
  • zf-apigility-admin-ui
    • Completely rewritten UI, with new features including:
      • Per-API authentication
      • Packaging
      • Doctrine-Connected REST services
      • DB Autodiscovery for REST service creation
  • zf-console
    • #18 ability to remove a route
    • #19 autodetect console adapter if not passed to constructor
  • zf-content-validation
    • #38 adds EVENT_BEFORE_VALIDATE to allow manipulating an input filter prior to validation
    • #34 allow specifying custom HTTP methods that do not have message bodies
    • #29 allow opting in, by controller service name, to inject the body parameters with the validated, filtered values of validation
    • #41 remove the InputFilterAbstractFactory in favor of the version shipped in ZF 2.4
  • zf-hal
    • #79 "post" events for renderEntity and renderCollection
    • #91 only export public members of objects when no hydrator present
  • zf-mvc-auth
    • #60 allow multiple http and/or oauth2 adapters, and allow authenticating per-API instead of per-application
  • zf-oauth2
    • #70 configurable grant types
    • #72 allow returning the OAuth2 response format instead of Problem Details for error conditions
    • #83 enable the JWT grant type
    • #87 introduction of User ID providers, to map a token to a user/identity
    • #89 introduction of IbmDb2-specific OAuth2 storage adapter
  • zf-rest
    • #65 removes setTerminal() call on view model in RestController, to allow using within templated systems
    • #71 syncs RestController::deleteList() with Zend\Mvc\Controller\AbstractRestfulController::deleteList() from ZF 2.4
    • #68 allow returning a Response from a Resource listener

Acknowledgements

We had a number of quite significant contributions to this release. While I'd like to name everyone who contributed, the following individuals stand out in particular:

  • Tom Anderson, who contributed the zf-apigility-doctrine module.
  • Julien Guittard, who did the UI integration (and much of the Admin API work) for the Doctrine-Connected REST resources, developed the DB Autodiscovery feature, and who was tireless in his testing of the UI integrations.
  • Corentin Larose, who contributed zf-http-cache.
  • Steve Rhoades, who contributed the PSR-4 support.
  • Enrico Zimuel, who rewrote the UI for 1.1.