Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mix:watch webpack config not being cleaned - Windows OS #1176

Open
damsfx opened this issue Jul 31, 2024 · 1 comment
Open

Mix:watch webpack config not being cleaned - Windows OS #1176

damsfx opened this issue Jul 31, 2024 · 1 comment
Labels
blocked Issues/PRs that cannot proceed at this point in time third party Issues/PRs that are dependent on changes made to a third-party library
Milestone

Comments

@damsfx
Copy link
Contributor

damsfx commented Jul 31, 2024

Winter CMS Build

dev-develop

PHP Version

8.1

Database engine

MySQL/MariaDB

Plugins installed

No response

Issue description

When running the command php artisan mix:watch on Windows OS native terminal, the halt signal is not well handle and the mix.webpack.js is not automatically cleaned up.

The getSubscribedSignals method of the Winter's trait is never fired on Windows.

My investigations :
In the command process execution the Symfony console in his constructor set a signalsToDispatchEvent private variable if the SignalRegistry::isSupported() test is successful.
Application.php#L99-L102

The SignaRegistry::isSupported() method perform a test for PHP pcntl_signal support.
SignalRegistry.php#L40-L43

The PHP PCNTL documentation says :

Currently, this module will not function on non-Unix platforms (Windows).

So ... No way to get halting signals on Windows OS while running Symfony console v6.2.xxx

In the next Synfony console version (6.3.xxx) a new architecture was introduced to better handle exit signals from command that works with Winter's commands.

But for now the 6.3.x Symfony console can't be installed due to Winter.Storm requirements :
"symfony/console": ">=6.0.9 <6.3.0",

Steps to replicate

Run a php artisan mix:watch ... command and press CONTROL+C to escape the run.

Workaround

Use WSL on Windows OS .

@damsfx damsfx added needs review Issues/PRs that require a review from a maintainer Type: Unconfirmed Bug labels Jul 31, 2024
@LukeTowers LukeTowers added this to the 1.3.0 milestone Aug 1, 2024
@LukeTowers
Copy link
Member

We'll have to address this in 1.3 as Symofny/Console 6.3 doesn't support PHP 8.0 so we can't switch to it yet on 1.2: wintercms/storm@facb27d

@bennothommo bennothommo added blocked Issues/PRs that cannot proceed at this point in time third party Issues/PRs that are dependent on changes made to a third-party library and removed Type: Unconfirmed Bug needs review Issues/PRs that require a review from a maintainer labels Oct 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked Issues/PRs that cannot proceed at this point in time third party Issues/PRs that are dependent on changes made to a third-party library
Projects
None yet
Development

No branches or pull requests

3 participants