Skip to content

Commit d6a347c

Browse files
Document OS compatibility restrictions for extensions
Added guidelines for 'os-families' and 'os-families-exclude' directives to restrict OS compatibility for extensions.
1 parent e74075a commit d6a347c

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

docs/extension-maintainers.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,22 @@ change the behaviour of downloading the source package.
241241
* `{ExtensionName}-{Version}.tgz` (this is intended for backwards
242242
compatibility with PECL packages)
243243

244+
##### `os-families` restrictions
245+
246+
The `os-families` and `os-families-exclude` directive allow extention maintainers
247+
to restrict the Operating System compatibility.
248+
249+
* `os-families` An array of OS families to mark as compatible with the extension.
250+
(e.g. `"os-families": ["windows"]` for an extension only available on Windows)
251+
* `os-families-exclude` An array of OS families to mark as incompatible with the
252+
extension. (e.g. `"os-families-exclude": ["windows"]` for an extension cannot
253+
be installed available on Windows)
254+
255+
The list of accepted OS families: "windows", "bsd", "darwin", "solaris", "linux",
256+
"unknown"
257+
258+
> Note: only once of `os-families` and `os-families-exclude` can be defined.
259+
244260
#### Extension dependencies
245261

246262
Extension authors may define some dependencies in `require`, but practically,

0 commit comments

Comments
 (0)