# File lib/vagrant_cloud/version.rb, line 69
    def update(description = nil, username = nil, box_name = nil, version_number = nil)
      # Ensure version given is a 'proper' version
      begin
        Gem::Version.new(version_number) if version_number
      rescue ArgumentError
        raise VagrantCloud::InvalidVersion, version_number
      end

      update_data = !(username && box_name && version_number)
      description ||= @description
      version = { description: description }
      data = @client.request('put',
                             version_path(username, box_name, version_number),
                             version: version)

      @data = data if update_data
      data
    end