NFIBrokerage / spear

A sharp EventStoreDB v20+ client backed by Mint :yum:
https://hex.pm/packages/spear
Apache License 2.0
85 stars 14 forks source link

changes for the v21.10.0 server release #63

Closed the-mikedavis closed 2 years ago

the-mikedavis commented 2 years ago

release notes: https://www.eventstore.com/blog/21.10.0-release-notes

the-mikedavis commented 2 years ago
diff --git a/src/Protos/Grpc/serverfeatures.proto b/src/Protos/Grpc/serverfeatures.proto
new file mode 100644
index 000000000..3563084ae
--- /dev/null
+++ b/src/Protos/Grpc/serverfeatures.proto
@@ -0,0 +1,20 @@
+syntax = "proto3";
+package event_store.client.server_features;
+option java_package = "com.eventstore.dbclient.proto.serverfeatures";
+import "shared.proto";
+
+service ServerFeatures {
+       rpc GetSupportedMethods (event_store.client.Empty) returns (SupportedMethods);
+}
+
+message SupportedMethods {
+       repeated SupportedMethod methods = 1;
+       string event_store_server_version = 2;
+}
+
+message SupportedMethod {
+       string method_name = 1;
+       string service_name = 2;
+       repeated string features = 3;
+}
+
diff --git a/src/Protos/Grpc/streams.proto b/src/Protos/Grpc/streams.proto
index dd71e65f5..2037038e5 100644
--- a/src/Protos/Grpc/streams.proto
+++ b/src/Protos/Grpc/streams.proto
@@ -34,6 +34,7 @@ message ReadReq {
                        event_store.client.Empty no_filter = 8;
                }
                UUIDOption uuid_option = 9;
+               ControlOption control_option = 10;

                enum ReadDirection {
                        Forwards = 0;
@@ -82,6 +83,9 @@ message ReadReq {
                                event_store.client.Empty string = 2;
                        }
                }
+               message ControlOption {
+                       uint32 compatibility = 1;
+               }
        }
 }

@@ -91,6 +95,9 @@ message ReadResp {
                SubscriptionConfirmation confirmation = 2;
                Checkpoint checkpoint = 3;
                StreamNotFound stream_not_found = 4;
+               uint64 first_stream_position = 5;
+               uint64 last_stream_position = 6;
+               AllStreamPosition last_all_stream_position = 7;
        }

        message ReadEvent {