Patches in mediawiki/extensions/VisualEditor have been recently failing CI with errors like this:
21:39:56 Running "git-status" task 21:39:56 >> Unstaged changes in these files: 21:39:56 >> lib/ve 21:39:57 --- a/lib/ve 21:39:57 +++ b/lib/ve 21:39:57 @@ -1 +1 @@ 21:39:57 -Subproject commit 1f76dea7e63ca6b7bd5f1ef6a372c1878429f973 21:39:57 +Subproject commit 3891890c29a72941b0eae1bfd7b3b829bc58b343 21:39:57 Warning: Task "git-status" failed. Use --force to continue.
This is despite the patch not touching the lib/ve submodule.
Examples:
- https://gerrit.wikimedia.org/r/c/mediawiki/extensions/VisualEditor/+/698547
- https://gerrit.wikimedia.org/r/c/mediawiki/extensions/VisualEditor/+/698597
Timing seems to match the switch to Node 12 from Node 10 (T284345). No idea how it could be related.
git-status comes from:
grunt.registerTask( 'git-status', function () { var done = this.async(); // Are there unstaged changes? require( 'child_process' ).exec( 'git ls-files --modified', function ( err, stdout, stderr ) { var ret = err || stderr || stdout; if ( ret ) { grunt.log.error( 'Unstaged changes in these files:' ); grunt.log.error( ret ); // Show a condensed diff require( 'child_process' ).exec( 'git diff -U1 | tail -n +3', function ( err2, stdout2, stderr2 ) { grunt.log.write( err2 || stderr2 || stdout2 ); done( false ); } ); } else { grunt.log.ok( 'No unstaged changes.' ); done(); } } ); } );
And the CI job did:
14:49:01 + git submodule update --init --remote 14:49:06 Submodule path 'lib/ve': checked out '3891890c29a72941b0eae1bfd7b3b829bc58b343'
But the submodule got set to 1f76dea7e63ca6b7bd5f1ef6a372c1878429f973 by a previous change: https://gerrit.wikimedia.org/r/c/mediawiki/extensions/VisualEditor/+/698062