docs: @NonNull
    public CompletionStage<SessionT> buildAsync() {
      CompletionStage<CqlSession> buildStage = buildDefaultSessionAsync();
      CompletionStage<SessionT> wrapStage = buildStage.thenApply(this::wrap);
      // thenApply does not propagate cancellation (!)
      CompletableFutures.propagateCancellation(wrapStage, buildStage);
      return wrapStage;
    }