container-interop

Containers interoperability

Github星跟蹤圖

Container Interoperability

Latest Stable Version
Total Downloads

Deprecation warning!

Starting Feb. 13th 2017, container-interop is officially deprecated in favor of PSR-11.
Container-interop has been the test-bed of PSR-11. From v1.2, container-interop directly extends PSR-11 interfaces.
Therefore, all containers implementing container-interop are now de-facto compatible with PSR-11.

  • Projects implementing container-interop interfaces are encouraged to directly implement PSR-11 interfaces instead.
  • Projects consuming container-interop interfaces are very strongly encouraged to directly type-hint on PSR-11 interfaces, in order to be compatible with PSR-11 containers that are not compatible with container-interop.

Regarding the delegate lookup feature, that is present in container-interop and not in PSR-11, the feature is actually a design pattern. It is therefore not deprecated. Documentation regarding this design pattern will be migrated from this repository into a separate website in the future.

About

container-interop tries to identify and standardize features in container objects (service locators,
dependency injection containers, etc.) to achieve interoperability.

Through discussions and trials, we try to create a standard, made of common interfaces but also recommendations.

If PHP projects that provide container implementations begin to adopt these common standards, then PHP
applications and projects that use containers can depend on the common interfaces instead of specific
implementations. This facilitates a high-level of interoperability and flexibility that allows users to consume
any container implementation that can be adapted to these interfaces.

The work done in this project is not officially endorsed by the PHP-FIG, but it is being
worked on by members of PHP-FIG and other good developers. We adhere to the spirit and ideals of PHP-FIG, and hope
this project will pave the way for one or more future PSRs.

Installation

You can install this package through Composer:

composer require container-interop/container-interop

The packages adheres to the SemVer specification, and there will be full backward compatibility
between minor versions.

Standards

Available

Proposed

View open request for comments

Compatible projects

Projects implementing ContainerInterface

Projects implementing the delegate lookup feature

Middlewares implementing ContainerInterface

Projects using ContainerInterface

The list below contains only a sample of all the projects consuming ContainerInterface. For a more complete list have a look here., Downloads, ---, ---, Adroit, , Behat, , blast-facades: Minimize complexity and represent dependencies as facades., , interop.silex.di: an extension to Silex that adds support for any container-interop compatible container, , mindplay/walkway: a modular request router, , mindplay/middleman: minimalist PSR-7 middleware dispatcher, , PHP-DI/Invoker: extensible and configurable invoker/dispatcher, , Prophiler, , Silly: CLI micro-framework, , Slim v3, , Splash, , Woohoo Labs. Harmony: a flexible micro-framework, , zend-expressive, , ## Workflow

Everyone is welcome to join and contribute.

The general workflow looks like this:

  1. Someone opens a discussion (GitHub issue) to suggest an interface
  2. Feedback is gathered
  3. The interface is added to a development branch
  4. We release alpha versions so that the interface can be experimented with
  5. Discussions and edits ensue until the interface is deemed stable by a general consensus
  6. A new minor version of the package is released

We try to not break BC by creating new interfaces instead of editing existing ones.

While we currently work on interfaces, we are open to anything that might help towards interoperability, may that
be code, best practices, etc.

主要指標

概覽
名稱與所有者BrascoJS/delorean
主編程語言JavaScript
編程語言PHP (語言數: 2)
平台
許可證Other
所有者活动
創建於2017-01-19 00:36:15
推送於2020-03-08 01:34:29
最后一次提交2018-07-21 10:39:45
發布數0
用户参与
星數249
關注者數6
派生數13
提交數163
已啟用問題?
問題數4
打開的問題數3
拉請求數36
打開的拉請求數1
關閉的拉請求數2
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?