anchor.diff:      }
   
       var terminate = Future.any([until, fatalBuildCompleter.future]).then((_) {
  -      _logger.info('Terminating. No further builds will be scheduled');
  +      _logger.info('Terminating. No further builds will be scheduled\n');
       });
   
       // Start watching files immediately, before the first build is even started.
  
positive.code:         .transform(debounceBuffer(_debounceDelay))
          .transform(takeUntil(terminate))
          .transform(asyncMapBuffer(_recordCurrentBuild(doBuild)))
          .listen(controller.add)
          .onDone(() async {
            await _buildDefinition.resourceManager.beforeExit();
            await controller.close();
            _logger.info('Builds finished. Safe to exit');
          });
  
      // Schedule the actual first build for the future so we can return the
  
negative.code:       build = await BuildImpl.create(_buildDefinition, buildActions,
            onDelete: _expectedDeletes.add);
  
        // It is possible this is already closed if the user kills the process
        // early, which results in an exception without this check.
        if (!controller.isClosed) controller.add(build.firstBuild);
  
        firstBuildCompleter.complete(build.firstBuild);
      }();
  
  