11'use strict' ;
22
3+ var messages = require ( '@gulpjs/messages' ) ;
4+
35/* istanbul ignore next */
46function noop ( ) { }
57
@@ -17,6 +19,9 @@ function toConsole(log, opts, translate) {
1719 // Default loglevel to info level (3).
1820 var loglevel = opts . logLevel || 3 ;
1921
22+ var deprecatedPrinted = false ;
23+ log . on ( 'deprecated' , onDeprecated ) ;
24+
2025 // -L: Logs error events.
2126 if ( loglevel > 0 ) {
2227 log . on ( 'error' , onError ) ;
@@ -37,12 +42,33 @@ function toConsole(log, opts, translate) {
3742 }
3843
3944 return function ( ) {
45+ log . removeListener ( 'deprecated' , onDeprecated ) ;
4046 log . removeListener ( 'error' , onError ) ;
4147 log . removeListener ( 'warn' , onWarn ) ;
4248 log . removeListener ( 'info' , onInfo ) ;
4349 log . removeListener ( 'debug' , onDebug ) ;
4450 } ;
4551
52+ function onDeprecated ( ) {
53+ if ( ! deprecatedPrinted ) {
54+ var msg = { tag : messages . GULPLOG_DEPRECATED } ;
55+ // Get message and timestamp before printing anything to avoid
56+ // logging a half message if there's an error in one of them
57+ var message = translate . message ( msg ) ;
58+ var timestamp = translate . timestamp ( msg ) ;
59+
60+ if ( message ) {
61+ // Ensure timestamp is not written without a message
62+ if ( timestamp ) {
63+ process . stderr . write ( timestamp + ' ' ) ;
64+ }
65+ console . error ( message ) ;
66+ }
67+
68+ deprecatedPrinted = true ;
69+ }
70+ }
71+
4672 function onError ( msg ) {
4773 // Get message and timestamp before printing anything to avoid
4874 // logging a half message if there's an error in one of them
0 commit comments