Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Browse files

Add naming convention bylaw

  • Loading branch information...
1 parent a590bda commit b834116b94b1ed34fd86c4d6597ddbda8db9858b @Seldaek Seldaek committed
Showing with 18 additions and 0 deletions.
  1. +18 −0 bylaws/
18 bylaws/
@@ -0,0 +1,18 @@
+Naming conventions for code released by PHP-FIG
+1. Interfaces MUST be suffixed by `Interface`: e.g. `Psr\Foo\BarInterface`.
+2. Abstract classes MUST be prefixed by `Abstract`: e.g. `Psr\Foo\AbstractBar`.
+3. Traits MUST be suffixed by `Trait`: e.g. `Psr\Foo\BarTrait`.
+4. PSR-0, 1 and 2 MUST be followed.
+5. The vendor namespace MUST be `Psr`.
+6. There MUST be a package/second-level namespace in relation with the PSR that
+ covers the code.
+7. Composer package MUST be named `psr/<package>` e.g. `psr/log`. If they
+ require an implementation as a virtual package it MUST be named
+ `psr/<package>-implementation` and be required with a specific version like
+ `1.0.0`. Implementors of that PSR can then provide
+ `"psr/<package>-implementation": "1.0.0"` in their package to satisfy that
+ requirement. Specification changes via further PSRs should only lead to a new
+ tag of the `psr/<package>` package, and an equal version bump of the
+ implementation being required.

0 comments on commit b834116

Please sign in to comment.
Something went wrong with that request. Please try again.