anchor.diff:          spark, monitor);
       task.run().then((_) {
         spark.showSuccessMessage('Changes pushed successfully');
  -
       }).catchError((e) {
         spark.showErrorMessage('Error while pushing changes', e.toString());
  -
       }).whenComplete(() {
         _restoreDialog();
         _hide();
       });
  -
     }
   
     void _toggleProgressVisible(bool visible) {
  
positive.code:   }
  
    void _restoreDialog() {
      SparkButton cloneButton = getElement('#gitPush');
      cloneButton.enabled = true;
      cloneButton.text = "Push";
      SparkButton closeButton = getElement('#gitPushClose');
      closeButton.enabled = true;
      _toggleProgressVisible(false);
  
negative.code:   ProgressMonitor monitor;
  
    _GitPushTask(this.gitOperations, this.username, this.password, this.spark,
        this.monitor);
  
    Future run() => gitOperations.push(username, password);
  }
  
  abstract class PackageManagementJob extends Job {
  