Skip to content
master
Go to file
Code
This branch is 3 commits ahead of container-interop:master.

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 

README.md

Container Compiler Interoperability

compiler-interop tries to identify and standardize features in container compiler objects to achieve interoperability.

While container-interop/container-interop tries to standardize how we fetch entries from containers, container-interop/compiler-interop tries to standardize how we put entries into a (compiled) container.

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:

{
    "require": {
        "container-interop/compiler-interop": "dev-master"
    }
}

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

Standards

Available

  • None yet

Proposed

  • None yet

Compatible projects

  • None yet

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.

About

Promoting the interoperability of compiled container objects

Resources

License

Packages

No packages published

Languages

You can’t perform that action at this time.