Download the PHP package masgeek/windows-ext-ignorer without Composer
On this page you can find all versions of the php package masgeek/windows-ext-ignorer. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download masgeek/windows-ext-ignorer
More information about masgeek/windows-ext-ignorer
Files in masgeek/windows-ext-ignorer
Package windows-ext-ignorer
Short Description Composer plugin to ignore pcntl/posix platform reqs on Windows
License MIT
Informations about the package windows-ext-ignorer
Windows Extension Ignorer for Composer
A Composer plugin that automatically ignores platform requirements like ext-pcntl
and ext-posix
on Windows systems.
🚧 The Problem
Many PHP packages require extensions such as ext-pcntl
and ext-posix
—extensions that are not available on Windows. As a Windows developer, you're often forced to:
- Add the
--ignore-platform-reqs
flag to every Composer command - Set up custom command aliases
- Modify
composer.json
manually to workaround the missing extensions
✅ The Solution
This plugin automatically detects when you're on a Windows system and spoofs the required extensions for you—no flags, no aliases, no extra steps.
It works out of the box with sensible defaults (ignoring ext-pcntl
and ext-posix
), and you can also customize which extensions you want to ignore via composer.json
!
⚠️ Production Environment Disclaimer
Important:
This plugin is designed for development environments on Windows only.
It should not be used in production environments, staging servers, or CI pipelines that require accurate platform checks.Ignoring required PHP extensions may cause runtime errors or unexpected behavior in your application. Always ensure your production environment meets the actual extension requirements of your packages.
⚙️ Installation
It’s recommended to install the plugin as a development dependency, since it’s only useful in development environments:
🚀 Usage
Once installed, the plugin just works on Windows.
When running any Composer command:
- The plugin detects that you're on Windows
- It automatically injects the specified extensions into Composer’s platform config
- Composer proceeds without showing errors about missing extensions
🔧 Customizing Ignored Extensions
By default, the plugin injects these extensions into Composer’s platform
config:
ext-pcntl
:1.0.0
ext-posix
:1.0.0
If you want to ignore additional (or different) extensions, you can specify them in your composer.json
file under the extra
section.
Example composer.json
Configuration:
You can specify any extensions that are not supported or available in your Windows environment.
🖥️ Verbose Output
To see the plugin in action, run Composer with the -v
or -vvv
flag:
Example output:
⚙️ How It Works
- Subscribes to Composer’s
pre-command-run
event - Detects if the OS is Windows
- If true, it merges default and
composer.json
configured ignored extensions - It updates Composer’s
platform
config at runtime - After Composer runs, the overrides are cleared (no changes are persisted to your files)
❓ FAQ
Q: Will this modify my composer.json
?
A: No. It temporarily adjusts Composer’s internal configuration and does not write to your composer.json
file.
Q: Can I use this on Linux or Mac?
A: No. The plugin only activates on Windows (PHP_OS_FAMILY === 'Windows'
). On other operating systems, it does nothing.
📝 License
MIT License
Author: Sammy Barasa
All versions of windows-ext-ignorer with dependencies
composer-plugin-api Version ^2.0