method cvs_update_dir (dir : string) =
      try
        let l = Ocvs_commands.update_dir dir in
        (* we must remove from data the removed files *)
        let elements = data#elements dir in
        let files = List.map (fun e -> (data#cvs_info_of_t e).cvs_file) elements in
        let removed_files = List.filter (fun f -> not (Sys.file_exists f)) files in
        List.iter data#remove_element removed_files ;
        self#cvs_status_dir dir ;
        l
      with CvsFailure s -> raise (Failure s)