diff --git a/Documentation/dev-guide/api_concurrency_reference_v3.md b/Documentation/dev-guide/api_concurrency_reference_v3.md index a5ae7624c244..366bbf3dccce 100644 --- a/Documentation/dev-guide/api_concurrency_reference_v3.md +++ b/Documentation/dev-guide/api_concurrency_reference_v3.md @@ -143,7 +143,7 @@ The election service exposes client-side election facilities as a gRPC interface -##### message `Event` (mvcc/mvccpb/kv.proto) +##### message `Event` (c/mvcc/mvccpb/kv.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -153,7 +153,7 @@ The election service exposes client-side election facilities as a gRPC interface -##### message `KeyValue` (mvcc/mvccpb/kv.proto) +##### message `KeyValue` (c/mvcc/mvccpb/kv.proto) | Field | Description | Type | | ----- | ----------- | ---- | diff --git a/Documentation/dev-guide/api_reference_v3.md b/Documentation/dev-guide/api_reference_v3.md index f2904a98173d..584b4b295111 100644 --- a/Documentation/dev-guide/api_reference_v3.md +++ b/Documentation/dev-guide/api_reference_v3.md @@ -4,7 +4,7 @@ This is a generated documentation. Please read the proto files for more. -##### service `Auth` (etcdserver/etcdserverpb/rpc.proto) +##### service `Auth` (c/etcdserver/etcdserverpb/rpc.proto) | Method | Request Type | Response Type | Description | | ------ | ------------ | ------------- | ----------- | @@ -28,7 +28,7 @@ This is a generated documentation. Please read the proto files for more. -##### service `Cluster` (etcdserver/etcdserverpb/rpc.proto) +##### service `Cluster` (c/etcdserver/etcdserverpb/rpc.proto) | Method | Request Type | Response Type | Description | | ------ | ------------ | ------------- | ----------- | @@ -40,7 +40,7 @@ This is a generated documentation. Please read the proto files for more. -##### service `KV` (etcdserver/etcdserverpb/rpc.proto) +##### service `KV` (c/etcdserver/etcdserverpb/rpc.proto) | Method | Request Type | Response Type | Description | | ------ | ------------ | ------------- | ----------- | @@ -52,7 +52,7 @@ This is a generated documentation. Please read the proto files for more. -##### service `Lease` (etcdserver/etcdserverpb/rpc.proto) +##### service `Lease` (c/etcdserver/etcdserverpb/rpc.proto) | Method | Request Type | Response Type | Description | | ------ | ------------ | ------------- | ----------- | @@ -64,7 +64,7 @@ This is a generated documentation. Please read the proto files for more. -##### service `Maintenance` (etcdserver/etcdserverpb/rpc.proto) +##### service `Maintenance` (c/etcdserver/etcdserverpb/rpc.proto) | Method | Request Type | Response Type | Description | | ------ | ------------ | ------------- | ----------- | @@ -79,7 +79,7 @@ This is a generated documentation. Please read the proto files for more. -##### service `Watch` (etcdserver/etcdserverpb/rpc.proto) +##### service `Watch` (c/etcdserver/etcdserverpb/rpc.proto) | Method | Request Type | Response Type | Description | | ------ | ------------ | ------------- | ----------- | @@ -87,7 +87,7 @@ This is a generated documentation. Please read the proto files for more. -##### message `AlarmMember` (etcdserver/etcdserverpb/rpc.proto) +##### message `AlarmMember` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -96,7 +96,7 @@ This is a generated documentation. Please read the proto files for more. -##### message `AlarmRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AlarmRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -106,7 +106,7 @@ This is a generated documentation. Please read the proto files for more. -##### message `AlarmResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AlarmResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -115,13 +115,13 @@ This is a generated documentation. Please read the proto files for more. -##### message `AuthDisableRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthDisableRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `AuthDisableResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthDisableResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -129,13 +129,13 @@ Empty field. -##### message `AuthEnableRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthEnableRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `AuthEnableResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthEnableResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -143,7 +143,7 @@ Empty field. -##### message `AuthRoleAddRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleAddRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -151,7 +151,7 @@ Empty field. -##### message `AuthRoleAddResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleAddResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -159,7 +159,7 @@ Empty field. -##### message `AuthRoleDeleteRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleDeleteRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -167,7 +167,7 @@ Empty field. -##### message `AuthRoleDeleteResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleDeleteResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -175,7 +175,7 @@ Empty field. -##### message `AuthRoleGetRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleGetRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -183,7 +183,7 @@ Empty field. -##### message `AuthRoleGetResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleGetResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -192,7 +192,7 @@ Empty field. -##### message `AuthRoleGrantPermissionRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleGrantPermissionRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -201,7 +201,7 @@ Empty field. -##### message `AuthRoleGrantPermissionResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleGrantPermissionResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -209,13 +209,13 @@ Empty field. -##### message `AuthRoleListRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleListRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `AuthRoleListResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleListResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -224,7 +224,7 @@ Empty field. -##### message `AuthRoleRevokePermissionRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleRevokePermissionRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -234,7 +234,7 @@ Empty field. -##### message `AuthRoleRevokePermissionResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthRoleRevokePermissionResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -242,13 +242,13 @@ Empty field. -##### message `AuthStatusRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthStatusRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `AuthStatusResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthStatusResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -258,7 +258,7 @@ Empty field. -##### message `AuthUserAddRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserAddRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -269,7 +269,7 @@ Empty field. -##### message `AuthUserAddResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserAddResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -277,7 +277,7 @@ Empty field. -##### message `AuthUserChangePasswordRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserChangePasswordRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -287,7 +287,7 @@ Empty field. -##### message `AuthUserChangePasswordResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserChangePasswordResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -295,7 +295,7 @@ Empty field. -##### message `AuthUserDeleteRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserDeleteRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -303,7 +303,7 @@ Empty field. -##### message `AuthUserDeleteResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserDeleteResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -311,7 +311,7 @@ Empty field. -##### message `AuthUserGetRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserGetRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -319,7 +319,7 @@ Empty field. -##### message `AuthUserGetResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserGetResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -328,7 +328,7 @@ Empty field. -##### message `AuthUserGrantRoleRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserGrantRoleRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -337,7 +337,7 @@ Empty field. -##### message `AuthUserGrantRoleResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserGrantRoleResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -345,13 +345,13 @@ Empty field. -##### message `AuthUserListRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserListRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `AuthUserListResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserListResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -360,7 +360,7 @@ Empty field. -##### message `AuthUserRevokeRoleRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserRevokeRoleRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -369,7 +369,7 @@ Empty field. -##### message `AuthUserRevokeRoleResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthUserRevokeRoleResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -377,7 +377,7 @@ Empty field. -##### message `AuthenticateRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthenticateRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -386,7 +386,7 @@ Empty field. -##### message `AuthenticateResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `AuthenticateResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -395,7 +395,7 @@ Empty field. -##### message `CompactionRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `CompactionRequest` (c/etcdserver/etcdserverpb/rpc.proto) CompactionRequest compacts the key-value store up to a given revision. All superseded keys with a revision less than the compaction revision will be removed. @@ -406,7 +406,7 @@ CompactionRequest compacts the key-value store up to a given revision. All super -##### message `CompactionResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `CompactionResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -414,7 +414,7 @@ CompactionRequest compacts the key-value store up to a given revision. All super -##### message `Compare` (etcdserver/etcdserverpb/rpc.proto) +##### message `Compare` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -431,13 +431,13 @@ CompactionRequest compacts the key-value store up to a given revision. All super -##### message `DefragmentRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `DefragmentRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `DefragmentResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `DefragmentResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -445,7 +445,7 @@ Empty field. -##### message `DeleteRangeRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `DeleteRangeRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -455,7 +455,7 @@ Empty field. -##### message `DeleteRangeResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `DeleteRangeResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -465,7 +465,7 @@ Empty field. -##### message `DowngradeRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `DowngradeRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -474,7 +474,7 @@ Empty field. -##### message `DowngradeResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `DowngradeResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -483,7 +483,7 @@ Empty field. -##### message `HashKVRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `HashKVRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -491,7 +491,7 @@ Empty field. -##### message `HashKVResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `HashKVResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -501,13 +501,13 @@ Empty field. -##### message `HashRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `HashRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `HashResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `HashResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -516,7 +516,7 @@ Empty field. -##### message `LeaseCheckpoint` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseCheckpoint` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -525,7 +525,7 @@ Empty field. -##### message `LeaseCheckpointRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseCheckpointRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -533,7 +533,7 @@ Empty field. -##### message `LeaseCheckpointResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseCheckpointResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -541,7 +541,7 @@ Empty field. -##### message `LeaseGrantRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseGrantRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -550,7 +550,7 @@ Empty field. -##### message `LeaseGrantResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseGrantResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -561,7 +561,7 @@ Empty field. -##### message `LeaseKeepAliveRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseKeepAliveRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -569,7 +569,7 @@ Empty field. -##### message `LeaseKeepAliveResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseKeepAliveResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -579,13 +579,13 @@ Empty field. -##### message `LeaseLeasesRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseLeasesRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `LeaseLeasesResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseLeasesResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -594,7 +594,7 @@ Empty field. -##### message `LeaseRevokeRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseRevokeRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -602,7 +602,7 @@ Empty field. -##### message `LeaseRevokeResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseRevokeResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -610,7 +610,7 @@ Empty field. -##### message `LeaseStatus` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseStatus` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -618,7 +618,7 @@ Empty field. -##### message `LeaseTimeToLiveRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseTimeToLiveRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -627,7 +627,7 @@ Empty field. -##### message `LeaseTimeToLiveResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `LeaseTimeToLiveResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -639,7 +639,7 @@ Empty field. -##### message `Member` (etcdserver/etcdserverpb/rpc.proto) +##### message `Member` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -651,7 +651,7 @@ Empty field. -##### message `MemberAddRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberAddRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -660,7 +660,7 @@ Empty field. -##### message `MemberAddResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberAddResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -670,7 +670,7 @@ Empty field. -##### message `MemberListRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberListRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -678,7 +678,7 @@ Empty field. -##### message `MemberListResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberListResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -687,7 +687,7 @@ Empty field. -##### message `MemberPromoteRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberPromoteRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -695,7 +695,7 @@ Empty field. -##### message `MemberPromoteResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberPromoteResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -704,7 +704,7 @@ Empty field. -##### message `MemberRemoveRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberRemoveRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -712,7 +712,7 @@ Empty field. -##### message `MemberRemoveResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberRemoveResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -721,7 +721,7 @@ Empty field. -##### message `MemberUpdateRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberUpdateRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -730,7 +730,7 @@ Empty field. -##### message `MemberUpdateResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `MemberUpdateResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -739,7 +739,7 @@ Empty field. -##### message `MoveLeaderRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `MoveLeaderRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -747,7 +747,7 @@ Empty field. -##### message `MoveLeaderResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `MoveLeaderResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -755,7 +755,7 @@ Empty field. -##### message `PutRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `PutRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -768,7 +768,7 @@ Empty field. -##### message `PutResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `PutResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -777,7 +777,7 @@ Empty field. -##### message `RangeRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `RangeRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -797,7 +797,7 @@ Empty field. -##### message `RangeResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `RangeResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -808,7 +808,7 @@ Empty field. -##### message `RequestOp` (etcdserver/etcdserverpb/rpc.proto) +##### message `RequestOp` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -820,7 +820,7 @@ Empty field. -##### message `ResponseHeader` (etcdserver/etcdserverpb/rpc.proto) +##### message `ResponseHeader` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -831,7 +831,7 @@ Empty field. -##### message `ResponseOp` (etcdserver/etcdserverpb/rpc.proto) +##### message `ResponseOp` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -843,13 +843,13 @@ Empty field. -##### message `SnapshotRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `SnapshotRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `SnapshotResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `SnapshotResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -859,13 +859,13 @@ Empty field. -##### message `StatusRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `StatusRequest` (c/etcdserver/etcdserverpb/rpc.proto) Empty field. -##### message `StatusResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `StatusResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -882,7 +882,7 @@ Empty field. -##### message `TxnRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `TxnRequest` (c/etcdserver/etcdserverpb/rpc.proto) From google paxosdb paper: Our implementation hinges around a powerful primitive which we call MultiOp. All other database operations except for iteration are implemented as a single call to MultiOp. A MultiOp is applied atomically and consists of three components: 1. A list of tests called guard. Each test in guard checks a single entry in the database. It may check for the absence or presence of a value, or compare with a given value. Two different tests in the guard may apply to the same or different entries in the database. All tests in the guard are applied and MultiOp returns the results. If all tests are true, MultiOp executes t op (see item 2 below), otherwise it executes f op (see item 3 below). 2. A list of database operations called t op. Each operation in the list is either an insert, delete, or lookup operation, and applies to a single database entry. Two different operations in the list may apply to the same or different entries in the database. These operations are executed if guard evaluates to true. 3. A list of database operations called f op. Like t op, but executed if guard evaluates to false. @@ -894,7 +894,7 @@ From google paxosdb paper: Our implementation hinges around a powerful primitive -##### message `TxnResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `TxnResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -904,7 +904,7 @@ From google paxosdb paper: Our implementation hinges around a powerful primitive -##### message `WatchCancelRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `WatchCancelRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -912,7 +912,7 @@ From google paxosdb paper: Our implementation hinges around a powerful primitive -##### message `WatchCreateRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `WatchCreateRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -927,7 +927,7 @@ From google paxosdb paper: Our implementation hinges around a powerful primitive -##### message `WatchProgressRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `WatchProgressRequest` (c/etcdserver/etcdserverpb/rpc.proto) Requests the a watch stream progress status be sent in the watch response stream as soon as possible. @@ -935,7 +935,7 @@ Empty field. -##### message `WatchRequest` (etcdserver/etcdserverpb/rpc.proto) +##### message `WatchRequest` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -946,7 +946,7 @@ Empty field. -##### message `WatchResponse` (etcdserver/etcdserverpb/rpc.proto) +##### message `WatchResponse` (c/etcdserver/etcdserverpb/rpc.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -961,7 +961,7 @@ Empty field. -##### message `Event` (mvcc/mvccpb/kv.proto) +##### message `Event` (c/mvcc/mvccpb/kv.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -971,7 +971,7 @@ Empty field. -##### message `KeyValue` (mvcc/mvccpb/kv.proto) +##### message `KeyValue` (c/mvcc/mvccpb/kv.proto) | Field | Description | Type | | ----- | ----------- | ---- | @@ -1010,7 +1010,7 @@ Empty field. -##### message `Permission` (auth/authpb/auth.proto) +##### message `Permission` (c/auth/authpb/auth.proto) Permission is a single entity @@ -1022,7 +1022,7 @@ Permission is a single entity -##### message `Role` (auth/authpb/auth.proto) +##### message `Role` (c/auth/authpb/auth.proto) Role is a single entry in the bucket authRoles @@ -1033,7 +1033,7 @@ Role is a single entry in the bucket authRoles -##### message `User` (auth/authpb/auth.proto) +##### message `User` (c/auth/authpb/auth.proto) User is a single entry in the bucket authUsers @@ -1046,7 +1046,7 @@ User is a single entry in the bucket authUsers -##### message `UserAddOptions` (auth/authpb/auth.proto) +##### message `UserAddOptions` (c/auth/authpb/auth.proto) | Field | Description | Type | | ----- | ----------- | ---- | diff --git a/Documentation/dev-guide/apispec/swagger/rpc.swagger.json b/Documentation/dev-guide/apispec/swagger/rpc.swagger.json index cdcb32c3d457..4d441af9df53 100644 --- a/Documentation/dev-guide/apispec/swagger/rpc.swagger.json +++ b/Documentation/dev-guide/apispec/swagger/rpc.swagger.json @@ -7,7 +7,7 @@ ], "swagger": "2.0", "info": { - "title": "etcdserver/etcdserverpb/rpc.proto", + "title": "c/etcdserver/etcdserverpb/rpc.proto", "version": "version not set" }, "paths": { diff --git a/Documentation/learning/lock/client/client.go b/Documentation/learning/lock/client/client.go index ab5a9649f582..403f533febfc 100644 --- a/Documentation/learning/lock/client/client.go +++ b/Documentation/learning/lock/client/client.go @@ -26,8 +26,8 @@ import ( "bytes" "encoding/json" "fmt" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" "io/ioutil" "net/http" "os" diff --git a/Makefile b/Makefile index 86cbc7fd5f71..6f7cb4a603ff 100644 --- a/Makefile +++ b/Makefile @@ -23,7 +23,7 @@ clean: rm -f ./*.coverprofile rm -f ./*.log rm -f ./bin/Dockerfile-release - rm -rf ./bin/*.etcd + rm -rf ./bin/etcd.* rm -rf ./default.etcd rm -rf ./tests/e2e/default.etcd rm -rf ./gopath diff --git a/auth/range_perm_cache.go b/auth/range_perm_cache.go index 9e33c0535070..c2726ad47180 100644 --- a/auth/range_perm_cache.go +++ b/auth/range_perm_cache.go @@ -15,7 +15,7 @@ package auth import ( - "go.etcd.io/etcd/v3/auth/authpb" + "go.etcd.io/etcd/c/v3/auth/authpb" "go.etcd.io/etcd/v3/mvcc/backend" "go.etcd.io/etcd/v3/pkg/adt" diff --git a/auth/range_perm_cache_test.go b/auth/range_perm_cache_test.go index 5e697d1b2138..56744d2a5090 100644 --- a/auth/range_perm_cache_test.go +++ b/auth/range_perm_cache_test.go @@ -17,7 +17,7 @@ package auth import ( "testing" - "go.etcd.io/etcd/v3/auth/authpb" + "go.etcd.io/etcd/c/v3/auth/authpb" "go.etcd.io/etcd/v3/pkg/adt" "go.uber.org/zap" diff --git a/auth/store.go b/auth/store.go index c6d02495b59b..c4088e0fa902 100644 --- a/auth/store.go +++ b/auth/store.go @@ -26,10 +26,10 @@ import ( "sync/atomic" "time" - "go.etcd.io/etcd/v3/auth/authpb" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/auth/authpb" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver/cindex" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/mvcc/backend" "go.uber.org/zap" diff --git a/auth/store_test.go b/auth/store_test.go index c620cd4c1dae..a17a049a1b6e 100644 --- a/auth/store_test.go +++ b/auth/store_test.go @@ -25,9 +25,9 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/auth/authpb" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/auth/authpb" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/mvcc/backend" "go.uber.org/zap" diff --git a/bill-of-materials.json b/bill-of-materials.json index 7a233d436def..6b4166847616 100644 --- a/bill-of-materials.json +++ b/bill-of-materials.json @@ -315,7 +315,7 @@ ] }, { - "project": "go.etcd.io/etcd/v3", + "project": "go.etcd.io/etcd", "licenses": [ { "type": "Apache License 2.0", diff --git a/c/.gitignore b/c/.gitignore new file mode 100644 index 000000000000..a3fe109d322a --- /dev/null +++ b/c/.gitignore @@ -0,0 +1,2 @@ +# git mod vendor will regenerate the directory +vendor/ diff --git a/auth/authpb/auth.pb.go b/c/auth/authpb/auth.pb.go similarity index 100% rename from auth/authpb/auth.pb.go rename to c/auth/authpb/auth.pb.go diff --git a/auth/authpb/auth.proto b/c/auth/authpb/auth.proto similarity index 100% rename from auth/authpb/auth.proto rename to c/auth/authpb/auth.proto diff --git a/client/README.md b/c/client/README.md similarity index 100% rename from client/README.md rename to c/client/README.md diff --git a/client/auth_role.go b/c/client/auth_role.go similarity index 100% rename from client/auth_role.go rename to c/client/auth_role.go diff --git a/client/auth_user.go b/c/client/auth_user.go similarity index 100% rename from client/auth_user.go rename to c/client/auth_user.go diff --git a/client/cancelreq.go b/c/client/cancelreq.go similarity index 100% rename from client/cancelreq.go rename to c/client/cancelreq.go diff --git a/client/client.go b/c/client/client.go similarity index 99% rename from client/client.go rename to c/client/client.go index 197b90247a6c..4049036876a4 100644 --- a/client/client.go +++ b/c/client/client.go @@ -29,7 +29,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/version" ) var ( diff --git a/client/client_test.go b/c/client/client_test.go similarity index 99% rename from client/client_test.go rename to c/client/client_test.go index 8691db2dfdf1..158bc0bd8394 100644 --- a/client/client_test.go +++ b/c/client/client_test.go @@ -29,8 +29,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/version" ) type actionAssertingHTTPClient struct { diff --git a/client/cluster_error.go b/c/client/cluster_error.go similarity index 100% rename from client/cluster_error.go rename to c/client/cluster_error.go diff --git a/client/curl.go b/c/client/curl.go similarity index 100% rename from client/curl.go rename to c/client/curl.go diff --git a/client/discover.go b/c/client/discover.go similarity index 97% rename from client/discover.go rename to c/client/discover.go index 7b9868b7fc0d..8aec243cd32f 100644 --- a/client/discover.go +++ b/c/client/discover.go @@ -15,7 +15,7 @@ package client import ( - "go.etcd.io/etcd/v3/pkg/srv" + "go.etcd.io/etcd/c/v3/pkg/srv" ) // Discoverer is an interface that wraps the Discover method. diff --git a/client/doc.go b/c/client/doc.go similarity index 100% rename from client/doc.go rename to c/client/doc.go diff --git a/client/fake_transport_test.go b/c/client/fake_transport_test.go similarity index 100% rename from client/fake_transport_test.go rename to c/client/fake_transport_test.go diff --git a/client/json.go b/c/client/json.go similarity index 98% rename from client/json.go rename to c/client/json.go index 97cdbcd7cfa5..dfe2e15f089a 100644 --- a/client/json.go +++ b/c/client/json.go @@ -15,7 +15,7 @@ package client import ( - "github.com/json-iterator/go" + jsoniter "github.com/json-iterator/go" "github.com/modern-go/reflect2" "strconv" "unsafe" diff --git a/client/keys.go b/c/client/keys.go similarity index 99% rename from client/keys.go rename to c/client/keys.go index bc55c09c1886..1b5ba0bec78a 100644 --- a/client/keys.go +++ b/c/client/keys.go @@ -19,7 +19,7 @@ import ( "encoding/json" "errors" "fmt" - "go.etcd.io/etcd/v3/pkg/pathutil" + "go.etcd.io/etcd/c/v3/pkg/pathutil" "net/http" "net/url" "strconv" diff --git a/client/keys_bench_test.go b/c/client/keys_bench_test.go similarity index 100% rename from client/keys_bench_test.go rename to c/client/keys_bench_test.go diff --git a/client/keys_test.go b/c/client/keys_test.go similarity index 100% rename from client/keys_test.go rename to c/client/keys_test.go diff --git a/client/members.go b/c/client/members.go similarity index 99% rename from client/members.go rename to c/client/members.go index 6a87b1a29493..983cbf450314 100644 --- a/client/members.go +++ b/c/client/members.go @@ -23,7 +23,7 @@ import ( "net/url" "path" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) var ( diff --git a/client/members_test.go b/c/client/members_test.go similarity index 99% rename from client/members_test.go rename to c/client/members_test.go index c75e71d8f762..556f9a40e527 100644 --- a/client/members_test.go +++ b/c/client/members_test.go @@ -23,7 +23,7 @@ import ( "reflect" "testing" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) func TestMembersAPIActionList(t *testing.T) { diff --git a/client/util.go b/c/client/util.go similarity index 100% rename from client/util.go rename to c/client/util.go diff --git a/clientv3/README.md b/c/clientv3/README.md similarity index 100% rename from clientv3/README.md rename to c/clientv3/README.md diff --git a/clientv3/auth.go b/c/clientv3/auth.go similarity index 99% rename from clientv3/auth.go rename to c/clientv3/auth.go index d6c2d3a3d8f4..7bfa08ca8387 100644 --- a/clientv3/auth.go +++ b/c/clientv3/auth.go @@ -19,8 +19,8 @@ import ( "fmt" "strings" - "go.etcd.io/etcd/v3/auth/authpb" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/auth/authpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" ) diff --git a/clientv3/balancer/balancer.go b/c/clientv3/balancer/balancer.go similarity index 98% rename from clientv3/balancer/balancer.go rename to c/clientv3/balancer/balancer.go index 3eecb9d1d27c..ce7eca75ef00 100644 --- a/clientv3/balancer/balancer.go +++ b/c/clientv3/balancer/balancer.go @@ -20,8 +20,8 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/clientv3/balancer/connectivity" - "go.etcd.io/etcd/v3/clientv3/balancer/picker" + "go.etcd.io/etcd/c/v3/clientv3/balancer/connectivity" + "go.etcd.io/etcd/c/v3/clientv3/balancer/picker" "go.uber.org/zap" "google.golang.org/grpc/balancer" diff --git a/clientv3/balancer/balancer_test.go b/c/clientv3/balancer/balancer_test.go similarity index 97% rename from clientv3/balancer/balancer_test.go rename to c/clientv3/balancer/balancer_test.go index 31f1fcbabe61..b1cb1f67a235 100644 --- a/clientv3/balancer/balancer_test.go +++ b/c/clientv3/balancer/balancer_test.go @@ -21,10 +21,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3/balancer/picker" - "go.etcd.io/etcd/v3/clientv3/balancer/resolver/endpoint" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/mock/mockserver" + "go.etcd.io/etcd/c/v3/clientv3/balancer/picker" + "go.etcd.io/etcd/c/v3/clientv3/balancer/resolver/endpoint" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/mock/mockserver" "go.uber.org/zap" "google.golang.org/grpc" diff --git a/clientv3/balancer/connectivity/connectivity.go b/c/clientv3/balancer/connectivity/connectivity.go similarity index 100% rename from clientv3/balancer/connectivity/connectivity.go rename to c/clientv3/balancer/connectivity/connectivity.go diff --git a/clientv3/balancer/picker/doc.go b/c/clientv3/balancer/picker/doc.go similarity index 100% rename from clientv3/balancer/picker/doc.go rename to c/clientv3/balancer/picker/doc.go diff --git a/clientv3/balancer/picker/err.go b/c/clientv3/balancer/picker/err.go similarity index 100% rename from clientv3/balancer/picker/err.go rename to c/clientv3/balancer/picker/err.go diff --git a/clientv3/balancer/picker/picker.go b/c/clientv3/balancer/picker/picker.go similarity index 100% rename from clientv3/balancer/picker/picker.go rename to c/clientv3/balancer/picker/picker.go diff --git a/clientv3/balancer/picker/roundrobin_balanced.go b/c/clientv3/balancer/picker/roundrobin_balanced.go similarity index 100% rename from clientv3/balancer/picker/roundrobin_balanced.go rename to c/clientv3/balancer/picker/roundrobin_balanced.go diff --git a/clientv3/balancer/resolver/endpoint/endpoint.go b/c/clientv3/balancer/resolver/endpoint/endpoint.go similarity index 100% rename from clientv3/balancer/resolver/endpoint/endpoint.go rename to c/clientv3/balancer/resolver/endpoint/endpoint.go diff --git a/clientv3/balancer/utils.go b/c/clientv3/balancer/utils.go similarity index 100% rename from clientv3/balancer/utils.go rename to c/clientv3/balancer/utils.go diff --git a/clientv3/balancer/utils_test.go b/c/clientv3/balancer/utils_test.go similarity index 100% rename from clientv3/balancer/utils_test.go rename to c/clientv3/balancer/utils_test.go diff --git a/clientv3/client.go b/c/clientv3/client.go similarity index 98% rename from clientv3/client.go rename to c/clientv3/client.go index 3b6dd32986f9..a8e57957657e 100644 --- a/clientv3/client.go +++ b/c/clientv3/client.go @@ -26,12 +26,12 @@ import ( "time" "github.com/google/uuid" - "go.etcd.io/etcd/v3/clientv3/balancer" - "go.etcd.io/etcd/v3/clientv3/balancer/picker" - "go.etcd.io/etcd/v3/clientv3/balancer/resolver/endpoint" - "go.etcd.io/etcd/v3/clientv3/credentials" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/clientv3/balancer" + "go.etcd.io/etcd/c/v3/clientv3/balancer/picker" + "go.etcd.io/etcd/c/v3/clientv3/balancer/resolver/endpoint" + "go.etcd.io/etcd/c/v3/clientv3/credentials" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/logutil" "go.uber.org/zap" "google.golang.org/grpc" "google.golang.org/grpc/codes" diff --git a/clientv3/client_test.go b/c/clientv3/client_test.go similarity index 97% rename from clientv3/client_test.go rename to c/clientv3/client_test.go index 232aa441c611..2073e59a0799 100644 --- a/clientv3/client_test.go +++ b/c/clientv3/client_test.go @@ -21,8 +21,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/testutil" "google.golang.org/grpc" ) diff --git a/clientv3/clientv3util/example_key_test.go b/c/clientv3/clientv3util/example_key_test.go similarity index 95% rename from clientv3/clientv3util/example_key_test.go rename to c/clientv3/clientv3util/example_key_test.go index 7290b6698590..a39193c8cb7c 100644 --- a/clientv3/clientv3util/example_key_test.go +++ b/c/clientv3/clientv3util/example_key_test.go @@ -18,8 +18,8 @@ import ( "context" "log" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/clientv3util" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/clientv3util" ) func ExampleKeyMissing() { diff --git a/clientv3/clientv3util/util.go b/c/clientv3/clientv3util/util.go similarity index 97% rename from clientv3/clientv3util/util.go rename to c/clientv3/clientv3util/util.go index 984938614f3e..33d0463940d3 100644 --- a/clientv3/clientv3util/util.go +++ b/c/clientv3/clientv3util/util.go @@ -16,7 +16,7 @@ package clientv3util import ( - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) // KeyExists returns a comparison operation that evaluates to true iff the given diff --git a/clientv3/cluster.go b/c/clientv3/cluster.go similarity index 98% rename from clientv3/cluster.go rename to c/clientv3/cluster.go index 58721c4e0f93..a31b87296637 100644 --- a/clientv3/cluster.go +++ b/c/clientv3/cluster.go @@ -17,8 +17,8 @@ package clientv3 import ( "context" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/types" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "google.golang.org/grpc" ) diff --git a/clientv3/compact_op.go b/c/clientv3/compact_op.go similarity index 96% rename from clientv3/compact_op.go rename to c/clientv3/compact_op.go index b1b09708acb2..c13a4c8b4d2c 100644 --- a/clientv3/compact_op.go +++ b/c/clientv3/compact_op.go @@ -15,7 +15,7 @@ package clientv3 import ( - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) // CompactOp represents a compact operation. diff --git a/clientv3/compact_op_test.go b/c/clientv3/compact_op_test.go similarity index 94% rename from clientv3/compact_op_test.go rename to c/clientv3/compact_op_test.go index c4ddfc89e082..02cf523dae21 100644 --- a/clientv3/compact_op_test.go +++ b/c/clientv3/compact_op_test.go @@ -18,7 +18,7 @@ import ( "reflect" "testing" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) func TestCompactOp(t *testing.T) { diff --git a/clientv3/compare.go b/c/clientv3/compare.go similarity index 98% rename from clientv3/compare.go rename to c/clientv3/compare.go index 149ab7893648..1296226db490 100644 --- a/clientv3/compare.go +++ b/c/clientv3/compare.go @@ -15,7 +15,7 @@ package clientv3 import ( - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) type CompareTarget int diff --git a/clientv3/concurrency/doc.go b/c/clientv3/concurrency/doc.go similarity index 100% rename from clientv3/concurrency/doc.go rename to c/clientv3/concurrency/doc.go diff --git a/clientv3/concurrency/election.go b/c/clientv3/concurrency/election.go similarity index 98% rename from clientv3/concurrency/election.go rename to c/clientv3/concurrency/election.go index 5dadb2e1bf12..269d45896d88 100644 --- a/clientv3/concurrency/election.go +++ b/c/clientv3/concurrency/election.go @@ -19,9 +19,9 @@ import ( "errors" "fmt" - v3 "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) var ( diff --git a/clientv3/concurrency/key.go b/c/clientv3/concurrency/key.go similarity index 93% rename from clientv3/concurrency/key.go rename to c/clientv3/concurrency/key.go index 684019ac5ad8..27dde62c4353 100644 --- a/clientv3/concurrency/key.go +++ b/c/clientv3/concurrency/key.go @@ -18,9 +18,9 @@ import ( "context" "fmt" - v3 "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) func waitDelete(ctx context.Context, client *v3.Client, key string, rev int64) error { diff --git a/clientv3/concurrency/mutex.go b/c/clientv3/concurrency/mutex.go similarity index 98% rename from clientv3/concurrency/mutex.go rename to c/clientv3/concurrency/mutex.go index 8a1ef3fb98c0..4b77f5b74627 100644 --- a/clientv3/concurrency/mutex.go +++ b/c/clientv3/concurrency/mutex.go @@ -20,8 +20,8 @@ import ( "fmt" "sync" - v3 "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) // ErrLocked is returned by TryLock when Mutex is already locked by another session. diff --git a/clientv3/concurrency/session.go b/c/clientv3/concurrency/session.go similarity index 99% rename from clientv3/concurrency/session.go rename to c/clientv3/concurrency/session.go index 7c747183a56b..ee52e8cfbf82 100644 --- a/clientv3/concurrency/session.go +++ b/c/clientv3/concurrency/session.go @@ -18,7 +18,7 @@ import ( "context" "time" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" ) const defaultSessionTTL = 60 diff --git a/clientv3/concurrency/stm.go b/c/clientv3/concurrency/stm.go similarity index 99% rename from clientv3/concurrency/stm.go rename to c/clientv3/concurrency/stm.go index 908a4bed334d..eb4a015ede7d 100644 --- a/clientv3/concurrency/stm.go +++ b/c/clientv3/concurrency/stm.go @@ -18,7 +18,7 @@ import ( "context" "math" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" ) // STM is an interface for software transactional memory. diff --git a/clientv3/config.go b/c/clientv3/config.go similarity index 100% rename from clientv3/config.go rename to c/clientv3/config.go diff --git a/clientv3/credentials/credentials.go b/c/clientv3/credentials/credentials.go similarity index 98% rename from clientv3/credentials/credentials.go rename to c/clientv3/credentials/credentials.go index eb3c81aaa5ab..85d8919d8ac2 100644 --- a/clientv3/credentials/credentials.go +++ b/c/clientv3/credentials/credentials.go @@ -22,7 +22,7 @@ import ( "net" "sync" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" grpccredentials "google.golang.org/grpc/credentials" ) diff --git a/clientv3/ctx.go b/c/clientv3/ctx.go similarity index 95% rename from clientv3/ctx.go rename to c/clientv3/ctx.go index a937f94e014e..19c6ddf1623c 100644 --- a/clientv3/ctx.go +++ b/c/clientv3/ctx.go @@ -17,8 +17,8 @@ package clientv3 import ( "context" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/version" "google.golang.org/grpc/metadata" ) diff --git a/clientv3/ctx_test.go b/c/clientv3/ctx_test.go similarity index 96% rename from clientv3/ctx_test.go rename to c/clientv3/ctx_test.go index 74deed61b38b..3891a0b6342f 100644 --- a/clientv3/ctx_test.go +++ b/c/clientv3/ctx_test.go @@ -19,8 +19,8 @@ import ( "reflect" "testing" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/version" "google.golang.org/grpc/metadata" ) diff --git a/clientv3/doc.go b/c/clientv3/doc.go similarity index 100% rename from clientv3/doc.go rename to c/clientv3/doc.go diff --git a/clientv3/kv.go b/c/clientv3/kv.go similarity index 99% rename from clientv3/kv.go rename to c/clientv3/kv.go index 0628ed0f12c4..a65cc3858a55 100644 --- a/clientv3/kv.go +++ b/c/clientv3/kv.go @@ -17,7 +17,7 @@ package clientv3 import ( "context" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" ) diff --git a/clientv3/lease.go b/c/clientv3/lease.go similarity index 99% rename from clientv3/lease.go rename to c/clientv3/lease.go index 5a26709c4c59..f61a3f1a75d0 100644 --- a/clientv3/lease.go +++ b/c/clientv3/lease.go @@ -19,8 +19,8 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.uber.org/zap" "google.golang.org/grpc" diff --git a/clientv3/leasing/cache.go b/c/clientv3/leasing/cache.go similarity index 98% rename from clientv3/leasing/cache.go rename to c/clientv3/leasing/cache.go index 377a487c7d56..1bf8c45063fd 100644 --- a/clientv3/leasing/cache.go +++ b/c/clientv3/leasing/cache.go @@ -20,9 +20,9 @@ import ( "sync" "time" - v3 "go.etcd.io/etcd/v3/clientv3" - v3pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + v3pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) const revokeBackoff = 2 * time.Second diff --git a/clientv3/leasing/doc.go b/c/clientv3/leasing/doc.go similarity index 100% rename from clientv3/leasing/doc.go rename to c/clientv3/leasing/doc.go diff --git a/clientv3/leasing/kv.go b/c/clientv3/leasing/kv.go similarity index 98% rename from clientv3/leasing/kv.go rename to c/clientv3/leasing/kv.go index 804eeb2cf0d0..7ace9c744ed7 100644 --- a/clientv3/leasing/kv.go +++ b/c/clientv3/leasing/kv.go @@ -20,11 +20,11 @@ import ( "sync" "time" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "google.golang.org/grpc/codes" "google.golang.org/grpc/status" diff --git a/clientv3/leasing/txn.go b/c/clientv3/leasing/txn.go similarity index 98% rename from clientv3/leasing/txn.go rename to c/clientv3/leasing/txn.go index a9e4ed4a6922..974c4a990add 100644 --- a/clientv3/leasing/txn.go +++ b/c/clientv3/leasing/txn.go @@ -18,8 +18,8 @@ import ( "context" "strings" - v3 "go.etcd.io/etcd/v3/clientv3" - v3pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + v3pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) type txnLeasing struct { diff --git a/clientv3/leasing/util.go b/c/clientv3/leasing/util.go similarity index 96% rename from clientv3/leasing/util.go rename to c/clientv3/leasing/util.go index f72e1bcf464f..e70510a70959 100644 --- a/clientv3/leasing/util.go +++ b/c/clientv3/leasing/util.go @@ -17,8 +17,8 @@ package leasing import ( "bytes" - v3 "go.etcd.io/etcd/v3/clientv3" - v3pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + v3pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) func compareInt64(a, b int64) int { diff --git a/clientv3/logger.go b/c/clientv3/logger.go similarity index 98% rename from clientv3/logger.go rename to c/clientv3/logger.go index 0e0bfc8aa4e4..c587fceb6136 100644 --- a/clientv3/logger.go +++ b/c/clientv3/logger.go @@ -18,7 +18,7 @@ import ( "io/ioutil" "sync" - "go.etcd.io/etcd/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/pkg/logutil" "google.golang.org/grpc/grpclog" ) diff --git a/client/integration/main_test.go b/c/clientv3/main_test.go similarity index 85% rename from client/integration/main_test.go rename to c/clientv3/main_test.go index 4dec98da4f81..2173d3085b0f 100644 --- a/client/integration/main_test.go +++ b/c/clientv3/main_test.go @@ -2,13 +2,13 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -package integration +package clientv3 import ( "os" "testing" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestMain(m *testing.M) { diff --git a/clientv3/maintenance.go b/c/clientv3/maintenance.go similarity index 99% rename from clientv3/maintenance.go rename to c/clientv3/maintenance.go index 9da27a4bb0b0..53623ba7b51b 100644 --- a/clientv3/maintenance.go +++ b/c/clientv3/maintenance.go @@ -19,7 +19,7 @@ import ( "fmt" "io" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.uber.org/zap" "google.golang.org/grpc" ) diff --git a/clientv3/mirror/syncer.go b/c/clientv3/mirror/syncer.go similarity index 98% rename from clientv3/mirror/syncer.go rename to c/clientv3/mirror/syncer.go index 86e03c106f30..4d8e4be9222a 100644 --- a/clientv3/mirror/syncer.go +++ b/c/clientv3/mirror/syncer.go @@ -18,7 +18,7 @@ package mirror import ( "context" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) const ( diff --git a/clientv3/namespace/doc.go b/c/clientv3/namespace/doc.go similarity index 100% rename from clientv3/namespace/doc.go rename to c/clientv3/namespace/doc.go diff --git a/clientv3/namespace/kv.go b/c/clientv3/namespace/kv.go similarity index 97% rename from clientv3/namespace/kv.go rename to c/clientv3/namespace/kv.go index 9899222a5a8d..04e799d8713c 100644 --- a/clientv3/namespace/kv.go +++ b/c/clientv3/namespace/kv.go @@ -17,9 +17,9 @@ package namespace import ( "context" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) type kvPrefix struct { diff --git a/clientv3/namespace/lease.go b/c/clientv3/namespace/lease.go similarity index 97% rename from clientv3/namespace/lease.go rename to c/clientv3/namespace/lease.go index f7596d0aa024..df8289fca706 100644 --- a/clientv3/namespace/lease.go +++ b/c/clientv3/namespace/lease.go @@ -18,7 +18,7 @@ import ( "bytes" "context" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) type leasePrefix struct { diff --git a/clientv3/namespace/util.go b/c/clientv3/namespace/util.go similarity index 100% rename from clientv3/namespace/util.go rename to c/clientv3/namespace/util.go diff --git a/clientv3/namespace/util_test.go b/c/clientv3/namespace/util_test.go similarity index 100% rename from clientv3/namespace/util_test.go rename to c/clientv3/namespace/util_test.go diff --git a/clientv3/namespace/watch.go b/c/clientv3/namespace/watch.go similarity index 98% rename from clientv3/namespace/watch.go rename to c/clientv3/namespace/watch.go index 8dc28380a1d4..46ebb25b0cdd 100644 --- a/clientv3/namespace/watch.go +++ b/c/clientv3/namespace/watch.go @@ -18,7 +18,7 @@ import ( "context" "sync" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) type watcherPrefix struct { diff --git a/clientv3/naming/doc.go b/c/clientv3/naming/doc.go similarity index 95% rename from clientv3/naming/doc.go rename to c/clientv3/naming/doc.go index 98987d8fd573..4e7f4cbd31be 100644 --- a/clientv3/naming/doc.go +++ b/c/clientv3/naming/doc.go @@ -17,8 +17,8 @@ // To use, first import the packages: // // import ( -// "go.etcd.io/etcd/v3/clientv3" -// etcdnaming "go.etcd.io/etcd/v3/clientv3/naming" +// "go.etcd.io/etcd/c/v3/clientv3" +// etcdnaming "go.etcd.io/etcd/c/v3/clientv3/naming" // // "google.golang.org/grpc" // "google.golang.org/grpc/naming" diff --git a/clientv3/naming/grpc.go b/c/clientv3/naming/grpc.go similarity index 98% rename from clientv3/naming/grpc.go rename to c/clientv3/naming/grpc.go index b680274bb3be..b96f300b58f6 100644 --- a/clientv3/naming/grpc.go +++ b/c/clientv3/naming/grpc.go @@ -19,7 +19,7 @@ import ( "encoding/json" "fmt" - etcd "go.etcd.io/etcd/v3/clientv3" + etcd "go.etcd.io/etcd/c/v3/clientv3" "google.golang.org/grpc/codes" "google.golang.org/grpc/naming" diff --git a/clientv3/op.go b/c/clientv3/op.go similarity index 99% rename from clientv3/op.go rename to c/clientv3/op.go index f0592ccf5a54..df2bfdafe691 100644 --- a/clientv3/op.go +++ b/c/clientv3/op.go @@ -14,7 +14,7 @@ package clientv3 -import pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" +import pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" type opType int diff --git a/clientv3/op_test.go b/c/clientv3/op_test.go similarity index 96% rename from clientv3/op_test.go rename to c/clientv3/op_test.go index cb0feb59e6e3..5d6ff7b7ce0e 100644 --- a/clientv3/op_test.go +++ b/c/clientv3/op_test.go @@ -18,7 +18,7 @@ import ( "reflect" "testing" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) // TestOpWithSort tests if WithSort(ASCEND, KEY) and WithLimit are specified, diff --git a/clientv3/options.go b/c/clientv3/options.go similarity index 100% rename from clientv3/options.go rename to c/clientv3/options.go diff --git a/clientv3/ordering/doc.go b/c/clientv3/ordering/doc.go similarity index 100% rename from clientv3/ordering/doc.go rename to c/clientv3/ordering/doc.go diff --git a/clientv3/ordering/kv.go b/c/clientv3/ordering/kv.go similarity index 99% rename from clientv3/ordering/kv.go rename to c/clientv3/ordering/kv.go index d62f2c8911cc..36b788258301 100644 --- a/clientv3/ordering/kv.go +++ b/c/clientv3/ordering/kv.go @@ -18,7 +18,7 @@ import ( "context" "sync" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) // kvOrdering ensures that serialized requests do not return diff --git a/c/clientv3/ordering/kv_test.go b/c/clientv3/ordering/kv_test.go new file mode 100644 index 000000000000..7992746f4f9f --- /dev/null +++ b/c/clientv3/ordering/kv_test.go @@ -0,0 +1,149 @@ +// Copyright 2017 The etcd Authors +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package ordering + +import ( + "context" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "sync" + "testing" +) + +type mockKV struct { + clientv3.KV + response clientv3.OpResponse +} + +func (kv *mockKV) Do(ctx context.Context, op clientv3.Op) (clientv3.OpResponse, error) { + return kv.response, nil +} + +var rangeTests = []struct { + prevRev int64 + response *clientv3.GetResponse +}{ + { + 5, + &clientv3.GetResponse{ + Header: &pb.ResponseHeader{ + Revision: 5, + }, + }, + }, + { + 5, + &clientv3.GetResponse{ + Header: &pb.ResponseHeader{ + Revision: 4, + }, + }, + }, + { + 5, + &clientv3.GetResponse{ + Header: &pb.ResponseHeader{ + Revision: 6, + }, + }, + }, +} + +func TestKvOrdering(t *testing.T) { + for i, tt := range rangeTests { + mKV := &mockKV{clientv3.NewKVFromKVClient(nil, nil), tt.response.OpResponse()} + kv := &kvOrdering{ + mKV, + func(r *clientv3.GetResponse) OrderViolationFunc { + return func(op clientv3.Op, resp clientv3.OpResponse, prevRev int64) error { + r.Header.Revision++ + return nil + } + }(tt.response), + tt.prevRev, + sync.RWMutex{}, + } + res, err := kv.Get(nil, "mockKey") + if err != nil { + t.Errorf("#%d: expected response %+v, got error %+v", i, tt.response, err) + } + if rev := res.Header.Revision; rev < tt.prevRev { + t.Errorf("#%d: expected revision %d, got %d", i, tt.prevRev, rev) + } + } +} + +var txnTests = []struct { + prevRev int64 + response *clientv3.TxnResponse +}{ + { + 5, + &clientv3.TxnResponse{ + Header: &pb.ResponseHeader{ + Revision: 5, + }, + }, + }, + { + 5, + &clientv3.TxnResponse{ + Header: &pb.ResponseHeader{ + Revision: 8, + }, + }, + }, + { + 5, + &clientv3.TxnResponse{ + Header: &pb.ResponseHeader{ + Revision: 4, + }, + }, + }, +} + +func TestTxnOrdering(t *testing.T) { + for i, tt := range txnTests { + mKV := &mockKV{clientv3.NewKVFromKVClient(nil, nil), tt.response.OpResponse()} + kv := &kvOrdering{ + mKV, + func(r *clientv3.TxnResponse) OrderViolationFunc { + return func(op clientv3.Op, resp clientv3.OpResponse, prevRev int64) error { + r.Header.Revision++ + return nil + } + }(tt.response), + tt.prevRev, + sync.RWMutex{}, + } + txn := &txnOrdering{ + kv.Txn(context.Background()), + kv, + context.Background(), + sync.Mutex{}, + []clientv3.Cmp{}, + []clientv3.Op{}, + []clientv3.Op{}, + } + res, err := txn.Commit() + if err != nil { + t.Errorf("#%d: expected response %+v, got error %+v", i, tt.response, err) + } + if rev := res.Header.Revision; rev < tt.prevRev { + t.Errorf("#%d: expected revision %d, got %d", i, tt.prevRev, rev) + } + } +} diff --git a/clientv3/ordering/util.go b/c/clientv3/ordering/util.go similarity index 98% rename from clientv3/ordering/util.go rename to c/clientv3/ordering/util.go index a321ede55052..7203b8d154e6 100644 --- a/clientv3/ordering/util.go +++ b/c/clientv3/ordering/util.go @@ -19,7 +19,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) type OrderViolationFunc func(op clientv3.Op, resp clientv3.OpResponse, prevRev int64) error diff --git a/clientv3/retry.go b/c/clientv3/retry.go similarity index 99% rename from clientv3/retry.go rename to c/clientv3/retry.go index c4e840303086..7ddc05f69c2b 100644 --- a/clientv3/retry.go +++ b/c/clientv3/retry.go @@ -17,8 +17,8 @@ package clientv3 import ( "context" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" "google.golang.org/grpc/codes" diff --git a/clientv3/retry_interceptor.go b/c/clientv3/retry_interceptor.go similarity index 99% rename from clientv3/retry_interceptor.go rename to c/clientv3/retry_interceptor.go index c0fda84397b7..82eeabe9b7de 100644 --- a/clientv3/retry_interceptor.go +++ b/c/clientv3/retry_interceptor.go @@ -23,7 +23,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" "go.uber.org/zap" "google.golang.org/grpc" "google.golang.org/grpc/codes" diff --git a/clientv3/sort.go b/c/clientv3/sort.go similarity index 100% rename from clientv3/sort.go rename to c/clientv3/sort.go diff --git a/clientv3/txn.go b/c/clientv3/txn.go similarity index 98% rename from clientv3/txn.go rename to c/clientv3/txn.go index e4cac1521c6e..2f0a691cbf45 100644 --- a/clientv3/txn.go +++ b/c/clientv3/txn.go @@ -18,7 +18,7 @@ import ( "context" "sync" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" ) diff --git a/clientv3/txn_test.go b/c/clientv3/txn_test.go similarity index 98% rename from clientv3/txn_test.go rename to c/clientv3/txn_test.go index 8fabca022000..98f7057e588f 100644 --- a/clientv3/txn_test.go +++ b/c/clientv3/txn_test.go @@ -18,7 +18,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestTxnPanics(t *testing.T) { diff --git a/clientv3/utils.go b/c/clientv3/utils.go similarity index 100% rename from clientv3/utils.go rename to c/clientv3/utils.go diff --git a/clientv3/watch.go b/c/clientv3/watch.go similarity index 99% rename from clientv3/watch.go rename to c/clientv3/watch.go index 773688488d60..8a0b6998482c 100644 --- a/clientv3/watch.go +++ b/c/clientv3/watch.go @@ -21,9 +21,9 @@ import ( "sync" "time" - v3rpc "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3rpc "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.uber.org/zap" "google.golang.org/grpc" diff --git a/clientv3/watch_test.go b/c/clientv3/watch_test.go similarity index 97% rename from clientv3/watch_test.go rename to c/clientv3/watch_test.go index 2efe810769c6..05c36a8edbae 100644 --- a/clientv3/watch_test.go +++ b/c/clientv3/watch_test.go @@ -17,7 +17,7 @@ package clientv3 import ( "testing" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) func TestEvent(t *testing.T) { diff --git a/clientv3/yaml/config.go b/c/clientv3/yaml/config.go similarity index 96% rename from clientv3/yaml/config.go rename to c/clientv3/yaml/config.go index 17390f9cbdae..bcdedb369888 100644 --- a/clientv3/yaml/config.go +++ b/c/clientv3/yaml/config.go @@ -22,8 +22,8 @@ import ( "sigs.k8s.io/yaml" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/pkg/tlsutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/tlsutil" ) type yamlConfig struct { diff --git a/clientv3/yaml/config_test.go b/c/clientv3/yaml/config_test.go similarity index 93% rename from clientv3/yaml/config_test.go rename to c/clientv3/yaml/config_test.go index 7a8f71280ac2..a1f42f6c5a1c 100644 --- a/clientv3/yaml/config_test.go +++ b/c/clientv3/yaml/config_test.go @@ -25,9 +25,9 @@ import ( ) var ( - certPath = "../../integration/fixtures/server.crt" - privateKeyPath = "../../integration/fixtures/server.key.insecure" - caPath = "../../integration/fixtures/ca.crt" + certPath = "../../../integration/fixtures/server.crt" + privateKeyPath = "../../../integration/fixtures/server.key.insecure" + caPath = "../../../integration/fixtures/ca.crt" ) func TestConfigFromFile(t *testing.T) { diff --git a/etcdserver/api/membership/membershippb/membership.pb.go b/c/etcdserver/api/membership/membershippb/membership.pb.go similarity index 100% rename from etcdserver/api/membership/membershippb/membership.pb.go rename to c/etcdserver/api/membership/membershippb/membership.pb.go diff --git a/etcdserver/api/membership/membershippb/membership.proto b/c/etcdserver/api/membership/membershippb/membership.proto similarity index 100% rename from etcdserver/api/membership/membershippb/membership.proto rename to c/etcdserver/api/membership/membershippb/membership.proto diff --git a/etcdserver/api/v3rpc/rpctypes/doc.go b/c/etcdserver/api/v3rpc/rpctypes/doc.go similarity index 100% rename from etcdserver/api/v3rpc/rpctypes/doc.go rename to c/etcdserver/api/v3rpc/rpctypes/doc.go diff --git a/etcdserver/api/v3rpc/rpctypes/error.go b/c/etcdserver/api/v3rpc/rpctypes/error.go similarity index 100% rename from etcdserver/api/v3rpc/rpctypes/error.go rename to c/etcdserver/api/v3rpc/rpctypes/error.go diff --git a/etcdserver/api/v3rpc/rpctypes/error_test.go b/c/etcdserver/api/v3rpc/rpctypes/error_test.go similarity index 100% rename from etcdserver/api/v3rpc/rpctypes/error_test.go rename to c/etcdserver/api/v3rpc/rpctypes/error_test.go diff --git a/etcdserver/api/v3rpc/rpctypes/md.go b/c/etcdserver/api/v3rpc/rpctypes/md.go similarity index 100% rename from etcdserver/api/v3rpc/rpctypes/md.go rename to c/etcdserver/api/v3rpc/rpctypes/md.go diff --git a/etcdserver/api/v3rpc/rpctypes/metadatafields.go b/c/etcdserver/api/v3rpc/rpctypes/metadatafields.go similarity index 100% rename from etcdserver/api/v3rpc/rpctypes/metadatafields.go rename to c/etcdserver/api/v3rpc/rpctypes/metadatafields.go diff --git a/etcdserver/etcdserverpb/etcdserver.pb.go b/c/etcdserver/etcdserverpb/etcdserver.pb.go similarity index 100% rename from etcdserver/etcdserverpb/etcdserver.pb.go rename to c/etcdserver/etcdserverpb/etcdserver.pb.go diff --git a/etcdserver/etcdserverpb/etcdserver.proto b/c/etcdserver/etcdserverpb/etcdserver.proto similarity index 100% rename from etcdserver/etcdserverpb/etcdserver.proto rename to c/etcdserver/etcdserverpb/etcdserver.proto diff --git a/etcdserver/etcdserverpb/gw/rpc.pb.gw.go b/c/etcdserver/etcdserverpb/gw/rpc.pb.gw.go similarity index 99% rename from etcdserver/etcdserverpb/gw/rpc.pb.gw.go rename to c/etcdserver/etcdserverpb/gw/rpc.pb.gw.go index 5b1f7eba2775..ec8b04b879dc 100644 --- a/etcdserver/etcdserverpb/gw/rpc.pb.gw.go +++ b/c/etcdserver/etcdserverpb/gw/rpc.pb.gw.go @@ -1,5 +1,5 @@ // Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: etcdserver/etcdserverpb/rpc.proto +// source: c/etcdserver/etcdserverpb/rpc.proto /* Package etcdserverpb is a reverse proxy. @@ -9,7 +9,7 @@ It translates gRPC into RESTful JSON APIs. package gw import ( - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "io" "net/http" diff --git a/etcdserver/etcdserverpb/raft_internal.pb.go b/c/etcdserver/etcdserverpb/raft_internal.pb.go similarity index 90% rename from etcdserver/etcdserverpb/raft_internal.pb.go rename to c/etcdserver/etcdserverpb/raft_internal.pb.go index c8dad53a0cb6..1099396fadcc 100644 --- a/etcdserver/etcdserverpb/raft_internal.pb.go +++ b/c/etcdserver/etcdserverpb/raft_internal.pb.go @@ -12,7 +12,7 @@ import ( _ "github.com/gogo/protobuf/gogoproto" - membershippb "go.etcd.io/etcd/v3/etcdserver/api/membership/membershippb" + membershippb "go.etcd.io/etcd/c/v3/etcdserver/api/membership/membershippb" io "io" ) @@ -2270,69 +2270,68 @@ var ( func init() { proto.RegisterFile("raft_internal.proto", fileDescriptorRaftInternal) } var fileDescriptorRaftInternal = []byte{ - // 1010 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x96, 0x5b, 0x73, 0xdb, 0x44, - 0x14, 0xc7, 0x6b, 0x37, 0x4d, 0xe3, 0x75, 0x92, 0xa6, 0x9b, 0x94, 0x2e, 0xce, 0x8c, 0x49, 0x53, - 0x0a, 0xe5, 0x96, 0x30, 0xe9, 0x2b, 0x33, 0x60, 0xec, 0x4c, 0x9a, 0x99, 0x52, 0x32, 0x6a, 0xb8, - 0xcc, 0xf0, 0x20, 0xd6, 0xd2, 0x89, 0x2d, 0x22, 0x4b, 0x62, 0x77, 0xed, 0x86, 0xef, 0x51, 0x18, - 0x3e, 0x06, 0xb7, 0x0f, 0xd1, 0x07, 0x2e, 0x05, 0xbe, 0x00, 0x84, 0x17, 0xde, 0x81, 0x77, 0x66, - 0x2f, 0x5a, 0x49, 0xf6, 0x3a, 0x6f, 0xf2, 0xff, 0xfc, 0xcf, 0xef, 0xec, 0x6a, 0xcf, 0x91, 0x17, - 0xad, 0x33, 0x7a, 0x22, 0xfc, 0x28, 0x11, 0xc0, 0x12, 0x1a, 0xef, 0x64, 0x2c, 0x15, 0x29, 0x5e, - 0x06, 0x11, 0x84, 0x1c, 0xd8, 0x04, 0x58, 0xd6, 0x6f, 0x6d, 0x0c, 0xd2, 0x41, 0xaa, 0x02, 0xbb, - 0xf2, 0x49, 0x7b, 0x5a, 0x6b, 0x85, 0xc7, 0x28, 0x0d, 0x96, 0x05, 0xe6, 0xf1, 0x2d, 0x19, 0xdc, - 0x2d, 0x1c, 0xbb, 0x34, 0x8b, 0x76, 0x47, 0x30, 0xea, 0x03, 0xe3, 0xc3, 0x28, 0x2b, 0x3d, 0x66, - 0xfd, 0xd2, 0x0f, 0x9d, 0xbd, 0xfd, 0x29, 0x5a, 0xf1, 0xe0, 0xf3, 0x31, 0x70, 0x71, 0x1f, 0x68, - 0x08, 0x0c, 0xaf, 0xa2, 0xfa, 0x61, 0x8f, 0xd4, 0xb6, 0x6a, 0x77, 0x17, 0xbc, 0xfa, 0x61, 0x0f, - 0xb7, 0xd0, 0xd2, 0x98, 0xcb, 0x05, 0x8f, 0x80, 0xd4, 0xb7, 0x6a, 0x77, 0x1b, 0x9e, 0xfd, 0x8d, - 0x6f, 0xa3, 0x15, 0x3a, 0x16, 0x43, 0x9f, 0xc1, 0x24, 0xe2, 0x51, 0x9a, 0x90, 0xcb, 0x2a, 0x6d, - 0x59, 0x8a, 0x9e, 0xd1, 0xb6, 0x9f, 0x60, 0xb4, 0x7e, 0x68, 0xf6, 0xec, 0xd1, 0x13, 0x61, 0xca, - 0xcd, 0x14, 0xba, 0x83, 0xea, 0x93, 0x3d, 0x55, 0xa2, 0xb9, 0x77, 0x63, 0xa7, 0xfc, 0x56, 0x76, - 0x4c, 0x8a, 0x57, 0x9f, 0xec, 0xe1, 0x37, 0xd1, 0x15, 0x46, 0x93, 0x01, 0xa8, 0x5a, 0xcd, 0xbd, - 0xd6, 0x94, 0x53, 0x86, 0x72, 0xbb, 0x36, 0xe2, 0x57, 0xd1, 0xe5, 0x6c, 0x2c, 0xc8, 0x82, 0xf2, - 0x93, 0xaa, 0xff, 0x68, 0x9c, 0xaf, 0xc7, 0x93, 0x26, 0xdc, 0x45, 0xcb, 0x21, 0xc4, 0x20, 0xc0, - 0xd7, 0x45, 0xae, 0xa8, 0xa4, 0xad, 0x6a, 0x52, 0x4f, 0x39, 0x2a, 0xa5, 0x9a, 0x61, 0xa1, 0xc9, - 0x82, 0xe2, 0x2c, 0x21, 0x8b, 0xae, 0x82, 0xc7, 0x67, 0x89, 0x2d, 0x28, 0xce, 0x12, 0xfc, 0x36, - 0x42, 0x41, 0x3a, 0xca, 0x68, 0x20, 0xe4, 0xfb, 0xbb, 0xaa, 0x52, 0x5e, 0xa8, 0xa6, 0x74, 0x6d, - 0x3c, 0xcf, 0x2c, 0xa5, 0xe0, 0x77, 0x50, 0x33, 0x06, 0xca, 0xc1, 0x1f, 0x30, 0x9a, 0x08, 0xb2, - 0xe4, 0x22, 0x3c, 0x90, 0x86, 0x03, 0x19, 0xb7, 0x84, 0xd8, 0x4a, 0x72, 0xcf, 0x9a, 0xc0, 0x60, - 0x92, 0x9e, 0x02, 0x69, 0xb8, 0xf6, 0xac, 0x10, 0x9e, 0x32, 0xd8, 0x3d, 0xc7, 0x85, 0x26, 0x8f, - 0x85, 0xc6, 0x94, 0x8d, 0x08, 0x72, 0x1d, 0x4b, 0x47, 0x86, 0xec, 0xb1, 0x28, 0x23, 0x7e, 0x1f, - 0xad, 0xe9, 0xb2, 0xc1, 0x10, 0x82, 0xd3, 0x2c, 0x8d, 0x12, 0x41, 0x9a, 0x2a, 0xf9, 0x45, 0x47, - 0xe9, 0xae, 0x35, 0xe5, 0x98, 0x6b, 0x71, 0x55, 0xc7, 0xf7, 0xd0, 0xe2, 0x50, 0xf5, 0x30, 0x09, - 0x15, 0x66, 0xd3, 0xd9, 0x44, 0xba, 0xcd, 0x3d, 0x63, 0xc5, 0x1d, 0xd4, 0x54, 0x2d, 0x0c, 0x09, - 0xed, 0xc7, 0x40, 0xfe, 0x76, 0x9e, 0x40, 0x67, 0x2c, 0x86, 0xfb, 0xca, 0x60, 0xdf, 0x1f, 0xb5, - 0x12, 0xee, 0x21, 0xd5, 0xf0, 0x7e, 0x18, 0x71, 0xc5, 0xf8, 0xe7, 0xaa, 0xeb, 0x05, 0x4a, 0x46, - 0x4f, 0x3b, 0xec, 0x0b, 0xa4, 0x85, 0x86, 0x1f, 0x6a, 0x0a, 0x24, 0x22, 0x0a, 0xa8, 0x00, 0xf2, - 0xaf, 0xa6, 0xbc, 0x52, 0xa5, 0xe4, 0x83, 0xd4, 0x29, 0x59, 0x73, 0x5c, 0x25, 0xdf, 0x6e, 0x8c, - 0x0b, 0x2a, 0xc6, 0x9c, 0xfc, 0x37, 0x77, 0x63, 0x8f, 0x94, 0xa1, 0xb2, 0x31, 0x2d, 0xe1, 0x7d, - 0x33, 0xde, 0x72, 0xde, 0x7d, 0x1a, 0x86, 0xe4, 0xc7, 0xa5, 0x79, 0x3b, 0xfb, 0x80, 0x03, 0xeb, - 0x84, 0x61, 0x65, 0x67, 0x46, 0xc3, 0x0f, 0xd1, 0x5a, 0x81, 0xd1, 0x73, 0x42, 0x7e, 0xd2, 0xa4, - 0xdb, 0x6e, 0x92, 0x19, 0x30, 0x03, 0x5b, 0xa5, 0x15, 0xb9, 0xba, 0xac, 0x01, 0x08, 0xf2, 0xf3, - 0x85, 0xcb, 0x3a, 0x00, 0x31, 0xb3, 0xac, 0x03, 0x10, 0x78, 0x80, 0x9e, 0x2f, 0x30, 0xc1, 0x50, - 0x4e, 0xae, 0x9f, 0x51, 0xce, 0x1f, 0xa7, 0x2c, 0x24, 0xbf, 0x68, 0xe4, 0x6b, 0x6e, 0x64, 0x57, - 0xb9, 0x8f, 0x8c, 0x39, 0xa7, 0x3f, 0x47, 0x9d, 0x61, 0xfc, 0x31, 0xda, 0x28, 0xad, 0x57, 0x8e, - 0x9c, 0xcf, 0xd2, 0x18, 0xc8, 0x33, 0x5d, 0xe3, 0xa5, 0x39, 0xcb, 0x56, 0xe3, 0x9a, 0x16, 0xdd, - 0x72, 0x9d, 0x4e, 0x47, 0xf0, 0x27, 0xe8, 0x46, 0x41, 0xd6, 0xd3, 0xab, 0xd1, 0xbf, 0x6a, 0xf4, - 0xcb, 0x6e, 0xb4, 0x19, 0xe3, 0x12, 0x1b, 0xd3, 0x99, 0x10, 0xbe, 0x8f, 0x56, 0x0b, 0x78, 0x1c, - 0x71, 0x41, 0x7e, 0xd3, 0xd4, 0x5b, 0x6e, 0xea, 0x83, 0x88, 0x8b, 0x4a, 0x2b, 0xe6, 0xa2, 0x25, - 0xc9, 0xa5, 0x69, 0xd2, 0xef, 0x73, 0x49, 0xb2, 0xf4, 0x0c, 0x29, 0x17, 0xed, 0xd1, 0x2b, 0x92, - 0xec, 0xc8, 0x6f, 0x1a, 0xf3, 0x8e, 0x5e, 0xe6, 0x4c, 0x77, 0xa4, 0xd1, 0x6c, 0x47, 0x2a, 0x8c, - 0xe9, 0xc8, 0x6f, 0x1b, 0xf3, 0x3a, 0x52, 0x66, 0x39, 0x3a, 0xb2, 0x90, 0xab, 0xcb, 0x92, 0x1d, - 0xf9, 0xdd, 0x85, 0xcb, 0x9a, 0xee, 0x48, 0xa3, 0xe1, 0xcf, 0x50, 0xab, 0x84, 0x51, 0x8d, 0x92, - 0x01, 0x1b, 0x45, 0x5c, 0xfd, 0xb7, 0x7e, 0xaf, 0x99, 0xaf, 0xcf, 0x61, 0x4a, 0xfb, 0x91, 0x75, - 0xe7, 0xfc, 0x9b, 0xd4, 0x1d, 0xc7, 0x23, 0xb4, 0x59, 0xd4, 0x32, 0xad, 0x53, 0x2a, 0xf6, 0x83, - 0x2e, 0xf6, 0x86, 0xbb, 0x98, 0xee, 0x92, 0xd9, 0x6a, 0x84, 0xce, 0x31, 0xe0, 0x8f, 0xd0, 0x7a, - 0x10, 0x8f, 0xb9, 0x00, 0xe6, 0x4f, 0x80, 0x49, 0xc9, 0xe7, 0x20, 0xc8, 0x13, 0x64, 0x46, 0xa0, - 0x7c, 0x49, 0xd9, 0xe9, 0x6a, 0xe7, 0x87, 0xda, 0xf8, 0xa8, 0x78, 0x5b, 0xd7, 0x83, 0xe9, 0x08, - 0xa6, 0xe8, 0x66, 0x0e, 0xd6, 0x0c, 0x9f, 0x0a, 0xc1, 0x14, 0xfc, 0x4b, 0x64, 0xbe, 0xa0, 0x2e, - 0xf8, 0x7b, 0x4a, 0xeb, 0x08, 0xc1, 0x4a, 0xfc, 0x8d, 0xc0, 0x11, 0xc4, 0xc7, 0x08, 0x87, 0xe9, - 0xe3, 0x64, 0xc0, 0x68, 0x08, 0x7e, 0x94, 0x9c, 0xa4, 0x8a, 0xfe, 0x95, 0xa6, 0xdf, 0xa9, 0xd2, - 0x7b, 0xb9, 0xf1, 0x30, 0x39, 0x49, 0x4b, 0xe4, 0xb5, 0x70, 0x2a, 0xb0, 0x7d, 0x0d, 0xad, 0xec, - 0x8f, 0x32, 0xf1, 0x85, 0x07, 0x3c, 0x4b, 0x13, 0x0e, 0xdb, 0x19, 0xda, 0xbc, 0xe0, 0xeb, 0x8e, - 0x31, 0x5a, 0x50, 0x77, 0xb0, 0x9a, 0xba, 0x83, 0xa9, 0x67, 0x79, 0x37, 0xb3, 0x5f, 0x2c, 0x73, - 0x37, 0xcb, 0x7f, 0xe3, 0x5b, 0x68, 0x99, 0x47, 0xa3, 0x2c, 0x06, 0x5f, 0xa4, 0xa7, 0xa0, 0xaf, - 0x66, 0x0d, 0xaf, 0xa9, 0xb5, 0x63, 0x29, 0xbd, 0xbb, 0xf1, 0xf4, 0xcf, 0xf6, 0xa5, 0xa7, 0xe7, - 0xed, 0xda, 0xb3, 0xf3, 0x76, 0xed, 0x8f, 0xf3, 0x76, 0xed, 0xeb, 0xbf, 0xda, 0x97, 0xfa, 0x8b, - 0xea, 0x62, 0x78, 0xef, 0xff, 0x00, 0x00, 0x00, 0xff, 0xff, 0xbd, 0x24, 0x2a, 0xcc, 0xae, 0x0a, - 0x00, 0x00, + // 1008 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x96, 0x49, 0x73, 0x1b, 0x45, + 0x14, 0xc7, 0x23, 0xc5, 0x71, 0xac, 0x96, 0xed, 0x38, 0x6d, 0x87, 0x34, 0x72, 0x95, 0x70, 0x1c, + 0x02, 0x61, 0xb3, 0x28, 0xe7, 0x0e, 0x08, 0xc9, 0xe5, 0xb8, 0x2a, 0x04, 0xd7, 0xc4, 0x2c, 0x55, + 0x1c, 0x86, 0xd6, 0xcc, 0x93, 0x34, 0x78, 0x36, 0xba, 0x5b, 0x8a, 0xf9, 0x1e, 0x81, 0xe2, 0x63, + 0xb0, 0x7d, 0x88, 0x1c, 0x58, 0x02, 0x7c, 0x01, 0x30, 0x17, 0xee, 0xc0, 0x9d, 0xea, 0x65, 0x36, + 0xa9, 0xe5, 0xdb, 0xe8, 0xff, 0xfe, 0xef, 0xf7, 0xba, 0xa7, 0xdf, 0x1b, 0x35, 0xda, 0x64, 0x74, + 0x28, 0xdc, 0x20, 0x16, 0xc0, 0x62, 0x1a, 0xee, 0xa5, 0x2c, 0x11, 0x09, 0x5e, 0x05, 0xe1, 0xf9, + 0x1c, 0xd8, 0x14, 0x58, 0x3a, 0x68, 0x6d, 0x8d, 0x92, 0x51, 0xa2, 0x02, 0x1d, 0xf9, 0xa4, 0x3d, + 0xad, 0x8d, 0xc2, 0x63, 0x94, 0x06, 0x4b, 0x3d, 0xf3, 0xf8, 0x96, 0x0c, 0x76, 0xbc, 0x4e, 0xe1, + 0xe9, 0xd0, 0x34, 0xe8, 0x44, 0x10, 0x0d, 0x80, 0xf1, 0x71, 0x90, 0x96, 0x1e, 0xd3, 0x41, 0xe9, + 0x87, 0xce, 0xdf, 0xfd, 0x14, 0xad, 0x39, 0xf0, 0xf9, 0x04, 0xb8, 0xb8, 0x0f, 0xd4, 0x07, 0x86, + 0xd7, 0x51, 0xfd, 0xa8, 0x4f, 0x6a, 0x3b, 0xb5, 0xbb, 0x4b, 0x4e, 0xfd, 0xa8, 0x8f, 0x5b, 0x68, + 0x65, 0xc2, 0xe5, 0x92, 0x23, 0x20, 0xf5, 0x9d, 0xda, 0xdd, 0x86, 0x93, 0xff, 0xc6, 0xb7, 0xd1, + 0x1a, 0x9d, 0x88, 0xb1, 0xcb, 0x60, 0x1a, 0xf0, 0x20, 0x89, 0xc9, 0x65, 0x95, 0xb6, 0x2a, 0x45, + 0xc7, 0x68, 0xbb, 0x4f, 0x30, 0xda, 0x3c, 0x32, 0xbb, 0x76, 0xe8, 0x50, 0x98, 0x72, 0x73, 0x85, + 0xee, 0xa0, 0xfa, 0x74, 0x5f, 0x95, 0x68, 0xee, 0xdf, 0xd8, 0x2b, 0xbf, 0x97, 0x3d, 0x93, 0xe2, + 0xd4, 0xa7, 0xfb, 0xf8, 0x4d, 0x74, 0x85, 0xd1, 0x78, 0x04, 0xaa, 0x56, 0x73, 0xbf, 0x35, 0xe3, + 0x94, 0xa1, 0xcc, 0xae, 0x8d, 0xf8, 0x55, 0x74, 0x39, 0x9d, 0x08, 0xb2, 0xa4, 0xfc, 0xa4, 0xea, + 0x3f, 0x9e, 0x64, 0xeb, 0x71, 0xa4, 0x09, 0xf7, 0xd0, 0xaa, 0x0f, 0x21, 0x08, 0x70, 0x75, 0x91, + 0x2b, 0x2a, 0x69, 0xa7, 0x9a, 0xd4, 0x57, 0x8e, 0x4a, 0xa9, 0xa6, 0x5f, 0x68, 0xb2, 0xa0, 0x38, + 0x8b, 0xc9, 0xb2, 0xad, 0xe0, 0xc9, 0x59, 0x9c, 0x17, 0x14, 0x67, 0x31, 0x7e, 0x1b, 0x21, 0x2f, + 0x89, 0x52, 0xea, 0x09, 0xf9, 0xfe, 0xae, 0xaa, 0x94, 0x17, 0xaa, 0x29, 0xbd, 0x3c, 0x9e, 0x65, + 0x96, 0x52, 0xf0, 0x3b, 0xa8, 0x19, 0x02, 0xe5, 0xe0, 0x8e, 0x18, 0x8d, 0x05, 0x59, 0xb1, 0x11, + 0x1e, 0x48, 0xc3, 0xa1, 0x8c, 0xe7, 0x84, 0x30, 0x97, 0xe4, 0x9e, 0x35, 0x81, 0xc1, 0x34, 0x39, + 0x05, 0xd2, 0xb0, 0xed, 0x59, 0x21, 0x1c, 0x65, 0xc8, 0xf7, 0x1c, 0x16, 0x9a, 0x3c, 0x16, 0x1a, + 0x52, 0x16, 0x11, 0x64, 0x3b, 0x96, 0xae, 0x0c, 0xe5, 0xc7, 0xa2, 0x8c, 0xf8, 0x7d, 0xb4, 0xa1, + 0xcb, 0x7a, 0x63, 0xf0, 0x4e, 0xd3, 0x24, 0x88, 0x05, 0x69, 0xaa, 0xe4, 0x17, 0x2d, 0xa5, 0x7b, + 0xb9, 0x29, 0xc3, 0x5c, 0x0b, 0xab, 0x3a, 0xbe, 0x87, 0x96, 0xc7, 0xaa, 0x87, 0x89, 0xaf, 0x30, + 0xdb, 0xd6, 0x26, 0xd2, 0x6d, 0xee, 0x18, 0x2b, 0xee, 0xa2, 0xa6, 0x6a, 0x61, 0x88, 0xe9, 0x20, + 0x04, 0xf2, 0xb7, 0xf5, 0x04, 0xba, 0x13, 0x31, 0x3e, 0x50, 0x86, 0xfc, 0xfd, 0xd1, 0x5c, 0xc2, + 0x7d, 0xa4, 0x1a, 0xde, 0xf5, 0x03, 0xae, 0x18, 0xff, 0x5c, 0xb5, 0xbd, 0x40, 0xc9, 0xe8, 0x6b, + 0x47, 0xfe, 0x02, 0x69, 0xa1, 0xe1, 0x87, 0x9a, 0x02, 0xb1, 0x08, 0x3c, 0x2a, 0x80, 0xfc, 0xab, + 0x29, 0xaf, 0x54, 0x29, 0xd9, 0x20, 0x75, 0x4b, 0xd6, 0x0c, 0x57, 0xc9, 0xcf, 0x37, 0xc6, 0x05, + 0x15, 0x13, 0x4e, 0xfe, 0x5b, 0xb8, 0xb1, 0x47, 0xca, 0x50, 0xd9, 0x98, 0x96, 0xf0, 0x81, 0x19, + 0x6f, 0x39, 0xef, 0x2e, 0xf5, 0x7d, 0xf2, 0xe3, 0xca, 0xa2, 0x9d, 0x7d, 0xc0, 0x81, 0x75, 0x7d, + 0xbf, 0xb2, 0x33, 0xa3, 0xe1, 0x87, 0x68, 0xa3, 0xc0, 0xe8, 0x39, 0x21, 0x3f, 0x69, 0xd2, 0x6d, + 0x3b, 0xc9, 0x0c, 0x98, 0x81, 0xad, 0xd3, 0x8a, 0x5c, 0x5d, 0xd6, 0x08, 0x04, 0xf9, 0xf9, 0xc2, + 0x65, 0x1d, 0x82, 0x98, 0x5b, 0xd6, 0x21, 0x08, 0x3c, 0x42, 0xcf, 0x17, 0x18, 0x6f, 0x2c, 0x27, + 0xd7, 0x4d, 0x29, 0xe7, 0x8f, 0x13, 0xe6, 0x93, 0x5f, 0x34, 0xf2, 0x35, 0x3b, 0xb2, 0xa7, 0xdc, + 0xc7, 0xc6, 0x9c, 0xd1, 0x9f, 0xa3, 0xd6, 0x30, 0xfe, 0x18, 0x6d, 0x95, 0xd6, 0x2b, 0x47, 0xce, + 0x65, 0x49, 0x08, 0xe4, 0x99, 0xae, 0xf1, 0xd2, 0x82, 0x65, 0xab, 0x71, 0x4d, 0x8a, 0x6e, 0xb9, + 0x4e, 0x67, 0x23, 0xf8, 0x13, 0x74, 0xa3, 0x20, 0xeb, 0xe9, 0xd5, 0xe8, 0x5f, 0x35, 0xfa, 0x65, + 0x3b, 0xda, 0x8c, 0x71, 0x89, 0x8d, 0xe9, 0x5c, 0x08, 0xdf, 0x47, 0xeb, 0x05, 0x3c, 0x0c, 0xb8, + 0x20, 0xbf, 0x69, 0xea, 0x2d, 0x3b, 0xf5, 0x41, 0xc0, 0x45, 0xa5, 0x15, 0x33, 0x31, 0x27, 0xc9, + 0xa5, 0x69, 0xd2, 0xef, 0x0b, 0x49, 0xb2, 0xf4, 0x1c, 0x29, 0x13, 0xf3, 0xa3, 0x57, 0x24, 0xd9, + 0x91, 0xdf, 0x34, 0x16, 0x1d, 0xbd, 0xcc, 0x99, 0xed, 0x48, 0xa3, 0xe5, 0x1d, 0xa9, 0x30, 0xa6, + 0x23, 0xbf, 0x6d, 0x2c, 0xea, 0x48, 0x99, 0x65, 0xe9, 0xc8, 0x42, 0xae, 0x2e, 0x4b, 0x76, 0xe4, + 0x77, 0x17, 0x2e, 0x6b, 0xb6, 0x23, 0x8d, 0x86, 0x3f, 0x43, 0xad, 0x12, 0x46, 0x35, 0x4a, 0x0a, + 0x2c, 0x0a, 0xb8, 0xfa, 0x6f, 0xfd, 0x5e, 0x33, 0x5f, 0x5f, 0xc0, 0x94, 0xf6, 0xe3, 0xdc, 0x9d, + 0xf1, 0x6f, 0x52, 0x7b, 0x1c, 0x47, 0x68, 0xbb, 0xa8, 0x65, 0x5a, 0xa7, 0x54, 0xec, 0x07, 0x5d, + 0xec, 0x0d, 0x7b, 0x31, 0xdd, 0x25, 0xf3, 0xd5, 0x08, 0x5d, 0x60, 0xc0, 0x1f, 0xa1, 0x4d, 0x2f, + 0x9c, 0x70, 0x01, 0xcc, 0x9d, 0x02, 0x93, 0x92, 0xcb, 0x41, 0x90, 0x27, 0xc8, 0x8c, 0x40, 0xf9, + 0x92, 0xb2, 0xd7, 0xd3, 0xce, 0x0f, 0xb5, 0xf1, 0x51, 0xf1, 0xb6, 0xae, 0x7b, 0xb3, 0x11, 0x4c, + 0xd1, 0xcd, 0x0c, 0xac, 0x19, 0x2e, 0x15, 0x82, 0x29, 0xf8, 0x97, 0xc8, 0x7c, 0x41, 0x6d, 0xf0, + 0xf7, 0x94, 0xd6, 0x15, 0x82, 0x95, 0xf8, 0x5b, 0x9e, 0x25, 0x88, 0x4f, 0x10, 0xf6, 0x93, 0xc7, + 0xf1, 0x88, 0x51, 0x1f, 0xdc, 0x20, 0x1e, 0x26, 0x8a, 0xfe, 0x95, 0xa6, 0xdf, 0xa9, 0xd2, 0xfb, + 0x99, 0xf1, 0x28, 0x1e, 0x26, 0x25, 0xf2, 0x86, 0x3f, 0x13, 0xd8, 0xbd, 0x86, 0xd6, 0x0e, 0xa2, + 0x54, 0x7c, 0xe1, 0x00, 0x4f, 0x93, 0x98, 0xc3, 0x6e, 0x8a, 0xb6, 0x2f, 0xf8, 0xba, 0x63, 0x8c, + 0x96, 0xd4, 0x1d, 0xac, 0xa6, 0xee, 0x60, 0xea, 0x59, 0xde, 0xcd, 0xf2, 0x2f, 0x96, 0xb9, 0x9b, + 0x65, 0xbf, 0xf1, 0x2d, 0xb4, 0xca, 0x83, 0x28, 0x0d, 0xc1, 0x15, 0xc9, 0x29, 0xe8, 0xab, 0x59, + 0xc3, 0x69, 0x6a, 0xed, 0x44, 0x4a, 0xef, 0x6e, 0x3d, 0xfd, 0xb3, 0x7d, 0xe9, 0xe9, 0x79, 0xbb, + 0xf6, 0xec, 0xbc, 0x5d, 0xfb, 0xe3, 0xbc, 0x5d, 0xfb, 0xfa, 0xaf, 0xf6, 0xa5, 0xc1, 0xb2, 0xba, + 0x18, 0xde, 0xfb, 0x3f, 0x00, 0x00, 0xff, 0xff, 0xfc, 0xdd, 0xf0, 0x7b, 0xb0, 0x0a, 0x00, 0x00, } diff --git a/etcdserver/etcdserverpb/raft_internal.proto b/c/etcdserver/etcdserverpb/raft_internal.proto similarity index 97% rename from etcdserver/etcdserverpb/raft_internal.proto rename to c/etcdserver/etcdserverpb/raft_internal.proto index b7f2f311f56c..2448293644e9 100644 --- a/etcdserver/etcdserverpb/raft_internal.proto +++ b/c/etcdserver/etcdserverpb/raft_internal.proto @@ -4,7 +4,7 @@ package etcdserverpb; import "gogoproto/gogo.proto"; import "etcdserver.proto"; import "rpc.proto"; -import "etcd/etcdserver/api/membership/membershippb/membership.proto"; +import "etcd/c/etcdserver/api/membership/membershippb/membership.proto"; option (gogoproto.marshaler_all) = true; option (gogoproto.sizer_all) = true; diff --git a/etcdserver/etcdserverpb/raft_internal_stringer.go b/c/etcdserver/etcdserverpb/raft_internal_stringer.go similarity index 100% rename from etcdserver/etcdserverpb/raft_internal_stringer.go rename to c/etcdserver/etcdserverpb/raft_internal_stringer.go diff --git a/etcdserver/etcdserverpb/raft_internal_stringer_test.go b/c/etcdserver/etcdserverpb/raft_internal_stringer_test.go similarity index 95% rename from etcdserver/etcdserverpb/raft_internal_stringer_test.go rename to c/etcdserver/etcdserverpb/raft_internal_stringer_test.go index 49e38e77c6d1..113c8685a4b8 100644 --- a/etcdserver/etcdserverpb/raft_internal_stringer_test.go +++ b/c/etcdserver/etcdserverpb/raft_internal_stringer_test.go @@ -17,7 +17,7 @@ package etcdserverpb_test import ( "testing" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) // TestInvalidGoYypeIntPanic tests conditions that caused diff --git a/etcdserver/etcdserverpb/rpc.pb.go b/c/etcdserver/etcdserverpb/rpc.pb.go similarity index 95% rename from etcdserver/etcdserverpb/rpc.pb.go rename to c/etcdserver/etcdserverpb/rpc.pb.go index a101ee7150cf..1816ee88e687 100644 --- a/etcdserver/etcdserverpb/rpc.pb.go +++ b/c/etcdserver/etcdserverpb/rpc.pb.go @@ -12,9 +12,9 @@ import ( _ "github.com/gogo/protobuf/gogoproto" - mvccpb "go.etcd.io/etcd/v3/mvcc/mvccpb" + mvccpb "go.etcd.io/etcd/c/v3/mvcc/mvccpb" - authpb "go.etcd.io/etcd/v3/auth/authpb" + authpb "go.etcd.io/etcd/c/v3/auth/authpb" context "golang.org/x/net/context" @@ -20724,7 +20724,7 @@ var ( func init() { proto.RegisterFile("rpc.proto", fileDescriptorRpc) } var fileDescriptorRpc = []byte{ - // 4111 bytes of a gzipped FileDescriptorProto + // 4112 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x5b, 0x5b, 0x73, 0x1b, 0xc9, 0x75, 0xe6, 0x00, 0xc4, 0xed, 0xe0, 0x42, 0xb0, 0x79, 0x11, 0x04, 0x49, 0x14, 0xb7, 0xb5, 0xd2, 0x72, 0xa5, 0x5d, 0x62, 0x4d, 0xdb, 0xd9, 0x2a, 0x25, 0x71, 0x0c, 0x91, 0x58, 0x89, 0x4b, 0x8a, @@ -20734,252 +20734,252 @@ var fileDescriptorRpc = []byte{ 0x11, 0x29, 0x57, 0xdf, 0x66, 0x7a, 0x6e, 0xa4, 0x6c, 0xac, 0xf6, 0x85, 0x9c, 0x3e, 0x7d, 0xfa, 0x7c, 0xa7, 0x4f, 0x77, 0x9f, 0xd3, 0x7d, 0xba, 0x01, 0x25, 0x67, 0xd4, 0x5b, 0x1f, 0x39, 0xb6, 0x67, 0xa3, 0x0a, 0xf1, 0x7a, 0x7d, 0x97, 0x38, 0x13, 0xe2, 0x8c, 0x8e, 0x9b, 0x8b, 0xa7, 0xf6, - 0xa9, 0xcd, 0x2a, 0x5a, 0xf4, 0x8b, 0xf3, 0x34, 0x6f, 0x52, 0x9e, 0xd6, 0x70, 0xd2, 0xeb, 0xb1, - 0x3f, 0xa3, 0xe3, 0xd6, 0xf9, 0x44, 0x54, 0xdd, 0x62, 0x55, 0xc6, 0xd8, 0x3b, 0x63, 0x7f, 0x46, - 0xc7, 0xec, 0x9f, 0xa8, 0xbc, 0x7d, 0x6a, 0xdb, 0xa7, 0x03, 0xd2, 0x32, 0x46, 0x66, 0xcb, 0xb0, - 0x2c, 0xdb, 0x33, 0x3c, 0xd3, 0xb6, 0x5c, 0x5e, 0x8b, 0xff, 0x4a, 0x83, 0x9a, 0x4e, 0xdc, 0x91, - 0x6d, 0xb9, 0xe4, 0x19, 0x31, 0xfa, 0xc4, 0x41, 0x77, 0x00, 0x7a, 0x83, 0xb1, 0xeb, 0x11, 0xe7, - 0xc8, 0xec, 0x37, 0xb4, 0x55, 0x6d, 0x6d, 0x56, 0x2f, 0x09, 0xca, 0x76, 0x1f, 0xdd, 0x82, 0xd2, - 0x90, 0x0c, 0x8f, 0x79, 0x6d, 0x86, 0xd5, 0x16, 0x39, 0x61, 0xbb, 0x8f, 0x9a, 0x50, 0x74, 0xc8, - 0xc4, 0x74, 0x4d, 0xdb, 0x6a, 0x64, 0x57, 0xb5, 0xb5, 0xac, 0xee, 0x97, 0x69, 0x43, 0xc7, 0x38, - 0xf1, 0x8e, 0x3c, 0xe2, 0x0c, 0x1b, 0xb3, 0xbc, 0x21, 0x25, 0x74, 0x89, 0x33, 0xc4, 0x3f, 0xc9, - 0x41, 0x45, 0x37, 0xac, 0x53, 0xa2, 0x93, 0x1f, 0x8e, 0x89, 0xeb, 0xa1, 0x3a, 0x64, 0xcf, 0xc9, - 0x25, 0x83, 0xaf, 0xe8, 0xf4, 0x93, 0xb7, 0xb7, 0x4e, 0xc9, 0x11, 0xb1, 0x38, 0x70, 0x85, 0xb6, - 0xb7, 0x4e, 0x49, 0xc7, 0xea, 0xa3, 0x45, 0xc8, 0x0d, 0xcc, 0xa1, 0xe9, 0x09, 0x54, 0x5e, 0x08, - 0xa9, 0x33, 0x1b, 0x51, 0x67, 0x13, 0xc0, 0xb5, 0x1d, 0xef, 0xc8, 0x76, 0xfa, 0xc4, 0x69, 0xe4, - 0x56, 0xb5, 0xb5, 0xda, 0xc6, 0xdb, 0xeb, 0xea, 0x40, 0xac, 0xab, 0x0a, 0xad, 0x1f, 0xda, 0x8e, - 0xb7, 0x4f, 0x79, 0xf5, 0x92, 0x2b, 0x3f, 0xd1, 0x47, 0x50, 0x66, 0x42, 0x3c, 0xc3, 0x39, 0x25, - 0x5e, 0x23, 0xcf, 0xa4, 0xdc, 0xbf, 0x46, 0x4a, 0x97, 0x31, 0xeb, 0x0c, 0x9e, 0x7f, 0x23, 0x0c, - 0x15, 0x97, 0x38, 0xa6, 0x31, 0x30, 0xbf, 0x34, 0x8e, 0x07, 0xa4, 0x51, 0x58, 0xd5, 0xd6, 0x8a, - 0x7a, 0x88, 0x46, 0xfb, 0x7f, 0x4e, 0x2e, 0xdd, 0x23, 0xdb, 0x1a, 0x5c, 0x36, 0x8a, 0x8c, 0xa1, - 0x48, 0x09, 0xfb, 0xd6, 0xe0, 0x92, 0x0d, 0x9a, 0x3d, 0xb6, 0x3c, 0x5e, 0x5b, 0x62, 0xb5, 0x25, - 0x46, 0x61, 0xd5, 0x6b, 0x50, 0x1f, 0x9a, 0xd6, 0xd1, 0xd0, 0xee, 0x1f, 0xf9, 0x06, 0x01, 0x66, - 0x90, 0xda, 0xd0, 0xb4, 0x9e, 0xdb, 0x7d, 0x5d, 0x9a, 0x85, 0x72, 0x1a, 0x17, 0x61, 0xce, 0xb2, - 0xe0, 0x34, 0x2e, 0x54, 0xce, 0x75, 0x58, 0xa0, 0x32, 0x7b, 0x0e, 0x31, 0x3c, 0x12, 0x30, 0x57, - 0x18, 0xf3, 0xfc, 0xd0, 0xb4, 0x36, 0x59, 0x4d, 0x88, 0xdf, 0xb8, 0x88, 0xf1, 0x57, 0x05, 0xbf, - 0x71, 0x11, 0xe6, 0xc7, 0xeb, 0x50, 0xf2, 0x6d, 0x8e, 0x8a, 0x30, 0xbb, 0xb7, 0xbf, 0xd7, 0xa9, - 0xcf, 0x20, 0x80, 0x7c, 0xfb, 0x70, 0xb3, 0xb3, 0xb7, 0x55, 0xd7, 0x50, 0x19, 0x0a, 0x5b, 0x1d, - 0x5e, 0xc8, 0xe0, 0x27, 0x00, 0x81, 0x75, 0x51, 0x01, 0xb2, 0x3b, 0x9d, 0xcf, 0xeb, 0x33, 0x94, - 0xe7, 0x65, 0x47, 0x3f, 0xdc, 0xde, 0xdf, 0xab, 0x6b, 0xb4, 0xf1, 0xa6, 0xde, 0x69, 0x77, 0x3b, - 0xf5, 0x0c, 0xe5, 0x78, 0xbe, 0xbf, 0x55, 0xcf, 0xa2, 0x12, 0xe4, 0x5e, 0xb6, 0x77, 0x5f, 0x74, - 0xea, 0xb3, 0xf8, 0xe7, 0x1a, 0x54, 0xc5, 0x78, 0xf1, 0x35, 0x81, 0xbe, 0x03, 0xf9, 0x33, 0xb6, - 0x2e, 0xd8, 0x54, 0x2c, 0x6f, 0xdc, 0x8e, 0x0c, 0x6e, 0x68, 0xed, 0xe8, 0x82, 0x17, 0x61, 0xc8, - 0x9e, 0x4f, 0xdc, 0x46, 0x66, 0x35, 0xbb, 0x56, 0xde, 0xa8, 0xaf, 0xf3, 0x05, 0xbb, 0xbe, 0x43, - 0x2e, 0x5f, 0x1a, 0x83, 0x31, 0xd1, 0x69, 0x25, 0x42, 0x30, 0x3b, 0xb4, 0x1d, 0xc2, 0x66, 0x6c, - 0x51, 0x67, 0xdf, 0x74, 0x1a, 0xb3, 0x41, 0x13, 0xb3, 0x95, 0x17, 0xf0, 0x2f, 0x35, 0x80, 0x83, - 0xb1, 0x97, 0xbe, 0x34, 0x16, 0x21, 0x37, 0xa1, 0x82, 0xc5, 0xb2, 0xe0, 0x05, 0xb6, 0x26, 0x88, - 0xe1, 0x12, 0x7f, 0x4d, 0xd0, 0x02, 0xba, 0x01, 0x85, 0x91, 0x43, 0x26, 0x47, 0xe7, 0x13, 0x06, - 0x52, 0xd4, 0xf3, 0xb4, 0xb8, 0x33, 0x41, 0x6f, 0x41, 0xc5, 0x3c, 0xb5, 0x6c, 0x87, 0x1c, 0x71, - 0x59, 0x39, 0x56, 0x5b, 0xe6, 0x34, 0xa6, 0xb7, 0xc2, 0xc2, 0x05, 0xe7, 0x55, 0x96, 0x5d, 0x4a, - 0xc2, 0x16, 0x94, 0x99, 0xaa, 0x53, 0x99, 0xef, 0xdd, 0x40, 0xc7, 0x0c, 0x6b, 0x16, 0x37, 0xa1, - 0xd0, 0x1a, 0xff, 0x00, 0xd0, 0x16, 0x19, 0x10, 0x8f, 0x4c, 0xe3, 0x3d, 0x14, 0x9b, 0x64, 0x55, - 0x9b, 0xe0, 0x9f, 0x69, 0xb0, 0x10, 0x12, 0x3f, 0x55, 0xb7, 0x1a, 0x50, 0xe8, 0x33, 0x61, 0x5c, - 0x83, 0xac, 0x2e, 0x8b, 0xe8, 0x11, 0x14, 0x85, 0x02, 0x6e, 0x23, 0x9b, 0x32, 0x69, 0x0a, 0x5c, - 0x27, 0x17, 0xff, 0x32, 0x03, 0x25, 0xd1, 0xd1, 0xfd, 0x11, 0x6a, 0x43, 0xd5, 0xe1, 0x85, 0x23, - 0xd6, 0x1f, 0xa1, 0x51, 0x33, 0xdd, 0x09, 0x3d, 0x9b, 0xd1, 0x2b, 0xa2, 0x09, 0x23, 0xa3, 0xdf, - 0x87, 0xb2, 0x14, 0x31, 0x1a, 0x7b, 0xc2, 0xe4, 0x8d, 0xb0, 0x80, 0x60, 0xfe, 0x3d, 0x9b, 0xd1, - 0x41, 0xb0, 0x1f, 0x8c, 0x3d, 0xd4, 0x85, 0x45, 0xd9, 0x98, 0xf7, 0x46, 0xa8, 0x91, 0x65, 0x52, - 0x56, 0xc3, 0x52, 0xe2, 0x43, 0xf5, 0x6c, 0x46, 0x47, 0xa2, 0xbd, 0x52, 0xa9, 0xaa, 0xe4, 0x5d, - 0x70, 0xe7, 0x1d, 0x53, 0xa9, 0x7b, 0x61, 0xc5, 0x55, 0xea, 0x5e, 0x58, 0x4f, 0x4a, 0x50, 0x10, - 0x25, 0xfc, 0x2f, 0x19, 0x00, 0x39, 0x1a, 0xfb, 0x23, 0xb4, 0x05, 0x35, 0x47, 0x94, 0x42, 0xd6, - 0xba, 0x95, 0x68, 0x2d, 0x31, 0x88, 0x33, 0x7a, 0x55, 0x36, 0xe2, 0xca, 0x7d, 0x0f, 0x2a, 0xbe, - 0x94, 0xc0, 0x60, 0x37, 0x13, 0x0c, 0xe6, 0x4b, 0x28, 0xcb, 0x06, 0xd4, 0x64, 0x9f, 0xc2, 0x92, - 0xdf, 0x3e, 0xc1, 0x66, 0x6f, 0x5d, 0x61, 0x33, 0x5f, 0xe0, 0x82, 0x94, 0xa0, 0x5a, 0x4d, 0x55, - 0x2c, 0x30, 0xdb, 0xcd, 0x04, 0xb3, 0xc5, 0x15, 0xa3, 0x86, 0x03, 0x1a, 0x2f, 0x79, 0x11, 0xff, - 0x6f, 0x16, 0x0a, 0x9b, 0xf6, 0x70, 0x64, 0x38, 0x74, 0x34, 0xf2, 0x0e, 0x71, 0xc7, 0x03, 0x8f, - 0x99, 0xab, 0xb6, 0x71, 0x2f, 0x2c, 0x51, 0xb0, 0xc9, 0xff, 0x3a, 0x63, 0xd5, 0x45, 0x13, 0xda, - 0x58, 0x84, 0xc7, 0xcc, 0x6b, 0x34, 0x16, 0xc1, 0x51, 0x34, 0x91, 0x0b, 0x39, 0x1b, 0x2c, 0xe4, - 0x26, 0x14, 0x26, 0xc4, 0x09, 0x42, 0xfa, 0xb3, 0x19, 0x5d, 0x12, 0xd0, 0xbb, 0x30, 0x17, 0x0d, - 0x2f, 0x39, 0xc1, 0x53, 0xeb, 0x85, 0xa3, 0xd1, 0x3d, 0xa8, 0x84, 0x62, 0x5c, 0x5e, 0xf0, 0x95, - 0x87, 0x4a, 0x88, 0x5b, 0x96, 0x7e, 0x95, 0xc6, 0xe3, 0xca, 0xb3, 0x19, 0xe9, 0x59, 0x97, 0xa5, - 0x67, 0x2d, 0x8a, 0x56, 0xc2, 0xb7, 0x86, 0x9c, 0xcc, 0xf7, 0xc3, 0x4e, 0x06, 0x7f, 0x1f, 0xaa, - 0x21, 0x03, 0xd1, 0xb8, 0xd3, 0xf9, 0xe4, 0x45, 0x7b, 0x97, 0x07, 0xa9, 0xa7, 0x2c, 0x2e, 0xe9, - 0x75, 0x8d, 0xc6, 0xba, 0xdd, 0xce, 0xe1, 0x61, 0x3d, 0x83, 0xaa, 0x50, 0xda, 0xdb, 0xef, 0x1e, - 0x71, 0xae, 0x2c, 0x7e, 0xea, 0x4b, 0x10, 0x41, 0x4e, 0x89, 0x6d, 0x33, 0x4a, 0x6c, 0xd3, 0x64, - 0x6c, 0xcb, 0x04, 0xb1, 0x8d, 0x85, 0xb9, 0xdd, 0x4e, 0xfb, 0xb0, 0x53, 0x9f, 0x7d, 0x52, 0x83, - 0x0a, 0xb7, 0xef, 0xd1, 0xd8, 0xa2, 0xa1, 0xf6, 0x9f, 0x34, 0x80, 0x60, 0x35, 0xa1, 0x16, 0x14, - 0x7a, 0x1c, 0xa7, 0xa1, 0x31, 0x67, 0xb4, 0x94, 0x38, 0x64, 0xba, 0xe4, 0x42, 0xdf, 0x82, 0x82, - 0x3b, 0xee, 0xf5, 0x88, 0x2b, 0x43, 0xde, 0x8d, 0xa8, 0x3f, 0x14, 0xde, 0x4a, 0x97, 0x7c, 0xb4, - 0xc9, 0x89, 0x61, 0x0e, 0xc6, 0x2c, 0x00, 0x5e, 0xdd, 0x44, 0xf0, 0xe1, 0xbf, 0xd7, 0xa0, 0xac, - 0x4c, 0xde, 0xdf, 0xd1, 0x09, 0xdf, 0x86, 0x12, 0xd3, 0x81, 0xf4, 0x85, 0x1b, 0x2e, 0xea, 0x01, - 0x01, 0xfd, 0x1e, 0x94, 0xe4, 0x0a, 0x90, 0x9e, 0xb8, 0x91, 0x2c, 0x76, 0x7f, 0xa4, 0x07, 0xac, - 0x78, 0x07, 0xe6, 0x99, 0x55, 0x7a, 0x74, 0x73, 0x2d, 0xed, 0xa8, 0x6e, 0x3f, 0xb5, 0xc8, 0xf6, - 0xb3, 0x09, 0xc5, 0xd1, 0xd9, 0xa5, 0x6b, 0xf6, 0x8c, 0x81, 0xd0, 0xc2, 0x2f, 0xe3, 0x8f, 0x01, - 0xa9, 0xc2, 0xa6, 0xe9, 0x2e, 0xae, 0x42, 0xf9, 0x99, 0xe1, 0x9e, 0x09, 0x95, 0xf0, 0x23, 0xa8, - 0xd2, 0xe2, 0xce, 0xcb, 0xd7, 0xd0, 0x91, 0x1d, 0x0e, 0x24, 0xf7, 0x54, 0x36, 0x47, 0x30, 0x7b, - 0x66, 0xb8, 0x67, 0xac, 0xa3, 0x55, 0x9d, 0x7d, 0xa3, 0x77, 0xa1, 0xde, 0xe3, 0x9d, 0x3c, 0x8a, - 0x1c, 0x19, 0xe6, 0x04, 0xdd, 0xdf, 0x09, 0x7e, 0x06, 0x15, 0xde, 0x87, 0xaf, 0x5b, 0x09, 0x3c, - 0x0f, 0x73, 0x87, 0x96, 0x31, 0x72, 0xcf, 0x6c, 0x19, 0xdd, 0x68, 0xa7, 0xeb, 0x01, 0x6d, 0x2a, - 0xc4, 0x77, 0x60, 0xce, 0x21, 0x43, 0xc3, 0xb4, 0x4c, 0xeb, 0xf4, 0xe8, 0xf8, 0xd2, 0x23, 0xae, - 0x38, 0x30, 0xd5, 0x7c, 0xf2, 0x13, 0x4a, 0xa5, 0xaa, 0x1d, 0x0f, 0xec, 0x63, 0xe1, 0xe6, 0xd8, - 0x37, 0xfe, 0x69, 0x06, 0x2a, 0x9f, 0x1a, 0x5e, 0x4f, 0x0e, 0x1d, 0xda, 0x86, 0x9a, 0xef, 0xdc, - 0x18, 0x45, 0xe8, 0x12, 0x09, 0xb1, 0xac, 0x8d, 0xdc, 0x4a, 0xcb, 0xe8, 0x58, 0xed, 0xa9, 0x04, - 0x26, 0xca, 0xb0, 0x7a, 0x64, 0xe0, 0x8b, 0xca, 0xa4, 0x8b, 0x62, 0x8c, 0xaa, 0x28, 0x95, 0x80, - 0xf6, 0xa1, 0x3e, 0x72, 0xec, 0x53, 0x87, 0xb8, 0xae, 0x2f, 0x8c, 0x87, 0x31, 0x9c, 0x20, 0xec, - 0x40, 0xb0, 0x06, 0xe2, 0xe6, 0x46, 0x61, 0xd2, 0x93, 0xb9, 0x60, 0x3f, 0xc3, 0x9d, 0xd3, 0x7f, - 0x66, 0x00, 0xc5, 0x3b, 0xf5, 0xdb, 0x6e, 0xf1, 0xee, 0x43, 0xcd, 0xf5, 0x0c, 0x27, 0x36, 0xd9, - 0xaa, 0x8c, 0xea, 0x7b, 0xfc, 0x77, 0xc0, 0x57, 0xe8, 0xc8, 0xb2, 0x3d, 0xf3, 0xe4, 0x52, 0xec, - 0x92, 0x6b, 0x92, 0xbc, 0xc7, 0xa8, 0xa8, 0x03, 0x85, 0x13, 0x73, 0xe0, 0x11, 0xc7, 0x6d, 0xe4, - 0x56, 0xb3, 0x6b, 0xb5, 0x8d, 0x47, 0xd7, 0x0d, 0xc3, 0xfa, 0x47, 0x8c, 0xbf, 0x7b, 0x39, 0x22, - 0xba, 0x6c, 0xab, 0xee, 0x3c, 0xf3, 0xa1, 0xdd, 0xf8, 0x4d, 0x28, 0xbe, 0xa2, 0x22, 0xe8, 0x29, - 0xbb, 0xc0, 0x37, 0x8b, 0xac, 0xcc, 0x0f, 0xd9, 0x27, 0x8e, 0x71, 0x3a, 0x24, 0x96, 0x27, 0xcf, - 0x81, 0xb2, 0x8c, 0xef, 0x03, 0x04, 0x30, 0xd4, 0xe5, 0xef, 0xed, 0x1f, 0xbc, 0xe8, 0xd6, 0x67, - 0x50, 0x05, 0x8a, 0x7b, 0xfb, 0x5b, 0x9d, 0xdd, 0x0e, 0x8d, 0x0f, 0xb8, 0x25, 0x4d, 0x1a, 0x1a, - 0x4b, 0x15, 0x53, 0x0b, 0x61, 0xe2, 0x65, 0x58, 0x4c, 0x1a, 0x40, 0xba, 0x17, 0xad, 0x8a, 0x59, - 0x3a, 0xd5, 0x52, 0x51, 0xa1, 0x33, 0xe1, 0xee, 0x36, 0xa0, 0xc0, 0x67, 0x6f, 0x5f, 0x6c, 0xce, - 0x65, 0x91, 0x1a, 0x82, 0x4f, 0x46, 0xd2, 0x17, 0xa3, 0xe4, 0x97, 0x13, 0xdd, 0x4b, 0x2e, 0xd1, - 0xbd, 0xa0, 0x7b, 0x50, 0xf5, 0x57, 0x83, 0xe1, 0x8a, 0xbd, 0x40, 0x49, 0xaf, 0xc8, 0x89, 0x4e, - 0x69, 0x21, 0xa3, 0x17, 0xc2, 0x46, 0x47, 0xf7, 0x21, 0x4f, 0x26, 0xc4, 0xf2, 0xdc, 0x46, 0x99, - 0x45, 0x8c, 0xaa, 0xdc, 0xbb, 0x77, 0x28, 0x55, 0x17, 0x95, 0xf8, 0xbb, 0x30, 0xcf, 0xce, 0x48, - 0x4f, 0x1d, 0xc3, 0x52, 0x0f, 0x73, 0xdd, 0xee, 0xae, 0x30, 0x37, 0xfd, 0x44, 0x35, 0xc8, 0x6c, - 0x6f, 0x09, 0x23, 0x64, 0xb6, 0xb7, 0xf0, 0x8f, 0x35, 0x40, 0x6a, 0xbb, 0xa9, 0xec, 0x1c, 0x11, - 0x2e, 0xe1, 0xb3, 0x01, 0xfc, 0x22, 0xe4, 0x88, 0xe3, 0xd8, 0x0e, 0xb3, 0x68, 0x49, 0xe7, 0x05, - 0xfc, 0xb6, 0xd0, 0x41, 0x27, 0x13, 0xfb, 0xdc, 0x5f, 0x83, 0x5c, 0x9a, 0xe6, 0xab, 0xba, 0x03, - 0x0b, 0x21, 0xae, 0xa9, 0x22, 0xd7, 0x47, 0x30, 0xc7, 0x84, 0x6d, 0x9e, 0x91, 0xde, 0xf9, 0xc8, - 0x36, 0xad, 0x18, 0x1e, 0x1d, 0xb9, 0xc0, 0xc1, 0xd2, 0x7e, 0xf0, 0x8e, 0x55, 0x7c, 0x62, 0xb7, - 0xbb, 0x8b, 0x3f, 0x87, 0xe5, 0x88, 0x1c, 0xa9, 0xfe, 0x1f, 0x41, 0xb9, 0xe7, 0x13, 0x5d, 0xb1, - 0xd7, 0xb9, 0x13, 0x56, 0x2e, 0xda, 0x54, 0x6d, 0x81, 0xf7, 0xe1, 0x46, 0x4c, 0xf4, 0x54, 0x7d, - 0x7e, 0x07, 0x96, 0x98, 0xc0, 0x1d, 0x42, 0x46, 0xed, 0x81, 0x39, 0x49, 0xb5, 0xf4, 0x48, 0x74, - 0x4a, 0x61, 0x7c, 0xb3, 0xf3, 0x02, 0xff, 0x81, 0x40, 0xec, 0x9a, 0x43, 0xd2, 0xb5, 0x77, 0xd3, - 0x75, 0xa3, 0xd1, 0xec, 0x9c, 0x5c, 0xba, 0x62, 0x5b, 0xc3, 0xbe, 0xf1, 0x3f, 0x6b, 0xc2, 0x54, - 0x6a, 0xf3, 0x37, 0x3c, 0x93, 0x57, 0x00, 0x4e, 0xe9, 0x92, 0x21, 0x7d, 0x5a, 0xc1, 0x33, 0x2a, - 0x0a, 0xc5, 0xd7, 0x93, 0xfa, 0xef, 0x8a, 0xd0, 0x73, 0x51, 0xcc, 0x73, 0xf6, 0xc7, 0xf7, 0x72, - 0x77, 0xa0, 0xcc, 0x08, 0x87, 0x9e, 0xe1, 0x8d, 0xdd, 0xd8, 0x60, 0xfc, 0x85, 0x98, 0xf6, 0xb2, - 0xd1, 0x54, 0xfd, 0xfa, 0x16, 0xe4, 0xd9, 0x61, 0x42, 0x6e, 0xa5, 0x6f, 0x26, 0xcc, 0x47, 0xae, - 0x87, 0x2e, 0x18, 0xf1, 0x4f, 0x35, 0xc8, 0x3f, 0x67, 0x29, 0x58, 0x45, 0xb5, 0x59, 0x39, 0x16, - 0x96, 0x31, 0xe4, 0x89, 0xa1, 0x92, 0xce, 0xbe, 0xd9, 0xd6, 0x93, 0x10, 0xe7, 0x85, 0xbe, 0xcb, - 0xb7, 0xb8, 0x25, 0xdd, 0x2f, 0x53, 0x9b, 0xf5, 0x06, 0x26, 0xb1, 0x3c, 0x56, 0x3b, 0xcb, 0x6a, - 0x15, 0x0a, 0xdd, 0x3d, 0x9b, 0xee, 0x2e, 0x31, 0x1c, 0x4b, 0x24, 0x4d, 0x8b, 0x7a, 0x40, 0xc0, - 0xbb, 0x50, 0xe7, 0x7a, 0xb4, 0xfb, 0x7d, 0x65, 0x83, 0xe9, 0xa3, 0x69, 0x11, 0xb4, 0x90, 0xb4, - 0x4c, 0x54, 0xda, 0x2f, 0x34, 0x98, 0x57, 0xc4, 0x4d, 0x65, 0xd5, 0xf7, 0x20, 0xcf, 0x93, 0xd4, - 0x62, 0xa7, 0xb3, 0x18, 0x6e, 0xc5, 0x61, 0x74, 0xc1, 0x83, 0xd6, 0xa1, 0xc0, 0xbf, 0xe4, 0x19, - 0x20, 0x99, 0x5d, 0x32, 0xe1, 0xfb, 0xb0, 0x20, 0x48, 0x64, 0x68, 0x27, 0x2d, 0x0c, 0x36, 0x18, - 0xf8, 0xcf, 0x60, 0x31, 0xcc, 0x36, 0x55, 0x97, 0x14, 0x25, 0x33, 0xaf, 0xa3, 0x64, 0x5b, 0x2a, - 0xf9, 0x62, 0xd4, 0x57, 0xf6, 0x51, 0xd1, 0x19, 0xa3, 0x8e, 0x57, 0x26, 0x3c, 0x5e, 0x41, 0x07, - 0xa4, 0x88, 0x6f, 0xb4, 0x03, 0x1f, 0xca, 0xe9, 0xb0, 0x6b, 0xba, 0xbe, 0x0f, 0xc7, 0x50, 0x19, - 0x98, 0x16, 0x31, 0x1c, 0x91, 0x39, 0xd7, 0x78, 0xe6, 0x5c, 0xa5, 0xe1, 0x2f, 0x01, 0xa9, 0x0d, - 0xbf, 0x51, 0xa5, 0x1f, 0x48, 0x93, 0x1d, 0x38, 0xf6, 0xd0, 0x4e, 0x35, 0x3b, 0xfe, 0x73, 0x58, - 0x8a, 0xf0, 0x7d, 0xa3, 0x6a, 0x2e, 0xc0, 0xfc, 0x16, 0x91, 0x1b, 0x1a, 0xe9, 0xf6, 0x3e, 0x06, - 0xa4, 0x12, 0xa7, 0x8a, 0x6c, 0x2d, 0x98, 0x7f, 0x6e, 0x4f, 0xa8, 0x8b, 0xa4, 0xd4, 0xc0, 0x37, - 0xf0, 0x3c, 0x84, 0x6f, 0x0a, 0xbf, 0x4c, 0xc1, 0xd5, 0x06, 0x53, 0x81, 0xff, 0xbb, 0x06, 0x95, - 0xf6, 0xc0, 0x70, 0x86, 0x12, 0xf8, 0x7b, 0x90, 0xe7, 0xa7, 0x6b, 0x91, 0xd0, 0x7a, 0x10, 0x16, - 0xa3, 0xf2, 0xf2, 0x42, 0x9b, 0x9f, 0xc5, 0x45, 0x2b, 0xaa, 0xb8, 0xb8, 0xf3, 0xda, 0x8a, 0xdc, - 0x81, 0x6d, 0xa1, 0xf7, 0x21, 0x67, 0xd0, 0x26, 0x2c, 0x14, 0xd5, 0xa2, 0x79, 0x0d, 0x26, 0x8d, - 0x9d, 0x01, 0x38, 0x17, 0xfe, 0x0e, 0x94, 0x15, 0x04, 0x54, 0x80, 0xec, 0xd3, 0x8e, 0xd8, 0xb0, - 0xb7, 0x37, 0xbb, 0xdb, 0x2f, 0x79, 0x42, 0xa7, 0x06, 0xb0, 0xd5, 0xf1, 0xcb, 0x19, 0xfc, 0x99, - 0x68, 0x25, 0xdc, 0xbe, 0xaa, 0x8f, 0x96, 0xa6, 0x4f, 0xe6, 0xb5, 0xf4, 0xb9, 0x80, 0xaa, 0xe8, - 0xfe, 0xb4, 0x61, 0x8c, 0xc9, 0x4b, 0x09, 0x63, 0x8a, 0xf2, 0xba, 0x60, 0xc4, 0xbf, 0xd2, 0xa0, - 0xbe, 0x65, 0xbf, 0xb2, 0x4e, 0x1d, 0xa3, 0xef, 0xaf, 0x93, 0x8f, 0x22, 0x23, 0xb5, 0x1e, 0x49, - 0x8e, 0x46, 0xf8, 0x03, 0x42, 0x64, 0xc4, 0x1a, 0x41, 0xda, 0x90, 0xc7, 0x42, 0x59, 0xc4, 0x1f, - 0xc2, 0x5c, 0xa4, 0x11, 0xb5, 0xfd, 0xcb, 0xf6, 0xee, 0xf6, 0x16, 0xb5, 0x35, 0x4b, 0xac, 0x75, - 0xf6, 0xda, 0x4f, 0x76, 0x3b, 0xe2, 0x02, 0xa9, 0xbd, 0xb7, 0xd9, 0xd9, 0xad, 0x67, 0x70, 0x0f, - 0xe6, 0x15, 0xf8, 0x69, 0x6f, 0x06, 0x52, 0xb4, 0x9b, 0x83, 0xaa, 0x88, 0xf6, 0x62, 0x51, 0xfe, - 0x5b, 0x06, 0x6a, 0x92, 0xf2, 0x66, 0x30, 0xd1, 0x32, 0xe4, 0xfb, 0xc7, 0x87, 0xe6, 0x97, 0xf2, - 0xe6, 0x48, 0x94, 0x28, 0x7d, 0xc0, 0x71, 0xf8, 0xf5, 0xad, 0x28, 0xd1, 0x30, 0xee, 0x18, 0x27, - 0xde, 0xb6, 0xd5, 0x27, 0x17, 0x6c, 0x53, 0x30, 0xab, 0x07, 0x04, 0x96, 0x61, 0x12, 0xd7, 0xbc, - 0xec, 0x64, 0xa5, 0x5c, 0xfb, 0xa2, 0x87, 0x50, 0xa7, 0xdf, 0xed, 0xd1, 0x68, 0x60, 0x92, 0x3e, - 0x17, 0x50, 0x60, 0x3c, 0x31, 0x3a, 0x45, 0x67, 0x67, 0x11, 0xb7, 0x51, 0x64, 0x61, 0x49, 0x94, - 0xd0, 0x2a, 0x94, 0xb9, 0x7e, 0xdb, 0xd6, 0x0b, 0x97, 0xb0, 0xbb, 0xcf, 0xac, 0xae, 0x92, 0xc2, - 0xdb, 0x0c, 0x88, 0x6e, 0x33, 0x16, 0x60, 0xbe, 0x3d, 0xf6, 0xce, 0x3a, 0x16, 0x8d, 0x15, 0xd2, - 0xca, 0x8b, 0x80, 0x28, 0x71, 0xcb, 0x74, 0x55, 0xaa, 0x60, 0x0d, 0x0f, 0x48, 0x07, 0x16, 0x28, - 0x91, 0x58, 0x9e, 0xd9, 0x53, 0xe2, 0xaa, 0xdc, 0x79, 0x69, 0x91, 0x9d, 0x97, 0xe1, 0xba, 0xaf, - 0x6c, 0xa7, 0x2f, 0x6c, 0xee, 0x97, 0xf1, 0x3f, 0x6a, 0x1c, 0xf2, 0x85, 0x1b, 0xda, 0x3e, 0xfd, - 0x96, 0x62, 0xd0, 0x07, 0x50, 0xb0, 0x47, 0xec, 0x86, 0x5f, 0xa4, 0x61, 0x96, 0xd7, 0xf9, 0x9b, - 0x80, 0x75, 0x21, 0x78, 0x9f, 0xd7, 0xea, 0x92, 0x0d, 0x3d, 0x80, 0xda, 0x99, 0xe1, 0x9e, 0x91, - 0xfe, 0x81, 0x94, 0xc9, 0x4f, 0x7e, 0x11, 0x2a, 0x5e, 0x0b, 0xf4, 0x7b, 0x4a, 0xbc, 0x2b, 0xf4, - 0xc3, 0x8f, 0x60, 0x49, 0x72, 0x8a, 0xdb, 0x89, 0x2b, 0x98, 0x5f, 0xc1, 0x1d, 0xc9, 0xbc, 0x79, - 0x66, 0x58, 0xa7, 0x44, 0x02, 0xfe, 0xae, 0x16, 0x88, 0xf7, 0x27, 0x9b, 0xd8, 0x9f, 0x27, 0xd0, - 0xf0, 0xfb, 0xc3, 0x4e, 0xd6, 0xf6, 0x40, 0x55, 0x74, 0xec, 0x8a, 0xf5, 0x54, 0xd2, 0xd9, 0x37, - 0xa5, 0x39, 0xf6, 0xc0, 0xdf, 0x4a, 0xd3, 0x6f, 0xbc, 0x09, 0x37, 0xa5, 0x0c, 0x71, 0xe6, 0x0d, - 0x0b, 0x89, 0x29, 0x9e, 0x24, 0x44, 0x18, 0x96, 0x36, 0xbd, 0x7a, 0xe0, 0x55, 0xce, 0xf0, 0x10, - 0x30, 0x99, 0x9a, 0x22, 0x73, 0x89, 0x4f, 0x4a, 0xaa, 0x98, 0xb2, 0x5b, 0x92, 0x64, 0x2a, 0x40, - 0x25, 0x8b, 0x01, 0xa3, 0xe4, 0xd8, 0x80, 0xc5, 0x44, 0xff, 0x00, 0x56, 0x7c, 0x25, 0xa8, 0xdd, - 0x0e, 0x88, 0x33, 0x34, 0x5d, 0x57, 0xc9, 0x7b, 0x27, 0x75, 0xfc, 0x01, 0xcc, 0x8e, 0x88, 0x08, - 0x42, 0xe5, 0x0d, 0x24, 0x27, 0xa5, 0xd2, 0x98, 0xd5, 0xe3, 0x3e, 0xdc, 0x95, 0xd2, 0xb9, 0x45, - 0x13, 0xc5, 0x47, 0x95, 0x92, 0xd9, 0xc0, 0x4c, 0x4a, 0x36, 0x30, 0x1b, 0xb9, 0x8b, 0xf9, 0x98, - 0x1b, 0x52, 0xae, 0xf9, 0xa9, 0x36, 0x17, 0x3b, 0xdc, 0xa6, 0xbe, 0xab, 0x98, 0x4a, 0xd8, 0x5f, - 0x0b, 0x2f, 0xf0, 0x75, 0x79, 0x78, 0xc2, 0x7a, 0x28, 0x2f, 0x3a, 0x64, 0x91, 0xee, 0x9a, 0xe9, - 0x00, 0xe8, 0x6a, 0x2e, 0x74, 0x56, 0x0f, 0xd1, 0xf0, 0x31, 0x2c, 0x86, 0xfd, 0xda, 0x54, 0xba, - 0x2c, 0x42, 0xce, 0xb3, 0xcf, 0x89, 0x8c, 0x35, 0xbc, 0x20, 0x6d, 0xe7, 0xfb, 0xbc, 0xa9, 0x6c, - 0x67, 0x04, 0xc2, 0xd8, 0xea, 0x98, 0x56, 0x5f, 0x3a, 0xb1, 0xe4, 0x19, 0x88, 0x17, 0xf0, 0x1e, - 0x2c, 0x47, 0x3d, 0xdb, 0x54, 0x2a, 0xbf, 0xe4, 0x6b, 0x29, 0xc9, 0xf9, 0x4d, 0x25, 0xf7, 0x93, - 0xc0, 0x2f, 0x29, 0xbe, 0x6d, 0x2a, 0x91, 0x3a, 0x34, 0x93, 0x5c, 0xdd, 0xd7, 0xb1, 0x74, 0x7c, - 0xcf, 0x37, 0x95, 0x30, 0x37, 0x10, 0x36, 0xfd, 0xf0, 0x07, 0xee, 0x2a, 0x7b, 0xa5, 0xbb, 0x12, - 0x8b, 0x24, 0x70, 0xa8, 0x6f, 0x60, 0xd2, 0x09, 0x8c, 0xc0, 0x97, 0x4f, 0x8b, 0x41, 0xc3, 0x99, - 0x8f, 0xc1, 0x0a, 0x72, 0x62, 0xab, 0x11, 0x60, 0xaa, 0xc1, 0xf8, 0x34, 0x70, 0xe3, 0xb1, 0x20, - 0x31, 0x95, 0xe0, 0xcf, 0x60, 0x35, 0x3d, 0x3e, 0x4c, 0x23, 0xf9, 0x61, 0x0b, 0x4a, 0xfe, 0x61, - 0x48, 0x79, 0x6f, 0x56, 0x86, 0xc2, 0xde, 0xfe, 0xe1, 0x41, 0x7b, 0xb3, 0xc3, 0x1f, 0x9c, 0x6d, - 0xee, 0xeb, 0xfa, 0x8b, 0x83, 0x6e, 0x3d, 0xb3, 0xf1, 0xeb, 0x2c, 0x64, 0x76, 0x5e, 0xa2, 0xcf, - 0x21, 0xc7, 0x5f, 0x5f, 0x5c, 0xf1, 0xe4, 0xa6, 0x79, 0xd5, 0x03, 0x13, 0x7c, 0xe3, 0xc7, 0xff, - 0xf5, 0xeb, 0x9f, 0x67, 0xe6, 0x71, 0xa5, 0x35, 0xf9, 0x76, 0xeb, 0x7c, 0xd2, 0x62, 0x61, 0xea, - 0xb1, 0xf6, 0x10, 0x7d, 0x02, 0xd9, 0x83, 0xb1, 0x87, 0x52, 0x9f, 0xe2, 0x34, 0xd3, 0xdf, 0x9c, - 0xe0, 0x25, 0x26, 0x74, 0x0e, 0x83, 0x10, 0x3a, 0x1a, 0x7b, 0x54, 0xe4, 0x0f, 0xa1, 0xac, 0xbe, - 0x18, 0xb9, 0xf6, 0x7d, 0x4e, 0xf3, 0xfa, 0xd7, 0x28, 0xf8, 0x0e, 0x83, 0xba, 0x81, 0x91, 0x80, - 0xe2, 0x6f, 0x5a, 0xd4, 0x5e, 0x74, 0x2f, 0x2c, 0x94, 0xfa, 0x7a, 0xa7, 0x99, 0xfe, 0x40, 0x25, - 0xd6, 0x0b, 0xef, 0xc2, 0xa2, 0x22, 0xff, 0x44, 0xbc, 0x4d, 0xe9, 0x79, 0xe8, 0x6e, 0xc2, 0xdb, - 0x04, 0xf5, 0x16, 0xbe, 0xb9, 0x9a, 0xce, 0x20, 0x40, 0x6e, 0x33, 0x90, 0x65, 0x3c, 0x2f, 0x40, - 0x7a, 0x3e, 0xcb, 0x63, 0xed, 0xe1, 0x46, 0x0f, 0x72, 0xec, 0x86, 0x0b, 0x7d, 0x21, 0x3f, 0x9a, - 0x09, 0x57, 0x7d, 0x29, 0x03, 0x1d, 0xba, 0x1b, 0xc3, 0x8b, 0x0c, 0xa8, 0x86, 0x4b, 0x14, 0x88, - 0xdd, 0x6f, 0x3d, 0xd6, 0x1e, 0xae, 0x69, 0x1f, 0x68, 0x1b, 0xbf, 0xca, 0x41, 0x8e, 0xa5, 0x76, - 0xd1, 0x39, 0x40, 0x70, 0xdb, 0x13, 0xed, 0x5d, 0xec, 0xfe, 0x28, 0xda, 0xbb, 0xf8, 0x45, 0x11, - 0x6e, 0x32, 0xd0, 0x45, 0x3c, 0x47, 0x41, 0x59, 0xc6, 0xb8, 0xc5, 0x92, 0xe0, 0xd4, 0x8e, 0x7f, - 0xa3, 0x89, 0xcc, 0x36, 0x5f, 0x4b, 0x28, 0x49, 0x5a, 0xe8, 0xca, 0x27, 0x3a, 0x1d, 0x12, 0xae, - 0x7b, 0xf0, 0x77, 0x19, 0x60, 0x0b, 0xd7, 0x03, 0x40, 0x87, 0x71, 0x3c, 0xd6, 0x1e, 0x7e, 0xd1, - 0xc0, 0x0b, 0xc2, 0xca, 0x91, 0x1a, 0xf4, 0x23, 0xa8, 0x85, 0xaf, 0x34, 0xd0, 0xbd, 0x04, 0xac, - 0xe8, 0xcd, 0x48, 0xf3, 0xed, 0xab, 0x99, 0x84, 0x4e, 0x2b, 0x4c, 0x27, 0x01, 0xce, 0x91, 0xcf, - 0x09, 0x19, 0x19, 0x94, 0x49, 0x8c, 0x01, 0xfa, 0x07, 0x4d, 0xdc, 0x38, 0x05, 0x77, 0x14, 0x28, - 0x49, 0x7a, 0xec, 0x06, 0xa4, 0x79, 0xff, 0x1a, 0x2e, 0xa1, 0xc4, 0x1f, 0x32, 0x25, 0x3e, 0xc4, - 0x8b, 0x81, 0x12, 0x9e, 0x39, 0x24, 0x9e, 0x2d, 0xb4, 0xf8, 0xe2, 0x36, 0xbe, 0x11, 0x32, 0x4e, - 0xa8, 0x36, 0x18, 0x2c, 0x7e, 0xcf, 0x90, 0x38, 0x58, 0xa1, 0x7b, 0x8b, 0xc4, 0xc1, 0x0a, 0x5f, - 0x52, 0x24, 0x0d, 0x16, 0xbf, 0x55, 0x48, 0x1a, 0x2c, 0xbf, 0x66, 0xe3, 0xff, 0x66, 0xa1, 0xb0, - 0xc9, 0xdf, 0x84, 0x23, 0x1b, 0x4a, 0x7e, 0x9a, 0x1e, 0xad, 0x24, 0xe5, 0x19, 0x83, 0x63, 0x4d, - 0xf3, 0x6e, 0x6a, 0xbd, 0x50, 0xe8, 0x2d, 0xa6, 0xd0, 0x2d, 0xbc, 0x4c, 0x91, 0xc5, 0xb3, 0xf3, - 0x16, 0x4f, 0x66, 0xb5, 0x8c, 0x7e, 0x9f, 0x1a, 0xe2, 0x4f, 0xa1, 0xa2, 0xe6, 0xd1, 0xd1, 0x5b, - 0x89, 0xb9, 0x4d, 0x35, 0x15, 0xdf, 0xc4, 0x57, 0xb1, 0x08, 0xe4, 0xb7, 0x19, 0xf2, 0x0a, 0xbe, - 0x99, 0x80, 0xec, 0x30, 0xd6, 0x10, 0x38, 0xcf, 0x81, 0x27, 0x83, 0x87, 0x52, 0xec, 0xc9, 0xe0, - 0xe1, 0x14, 0xfa, 0x95, 0xe0, 0x63, 0xc6, 0x4a, 0xc1, 0x5d, 0x80, 0x20, 0x93, 0x8d, 0x12, 0x6d, - 0xa9, 0x9c, 0xeb, 0xa2, 0xce, 0x21, 0x9e, 0x04, 0xc7, 0x98, 0xc1, 0x8a, 0x79, 0x17, 0x81, 0x1d, - 0x98, 0xae, 0xc7, 0x17, 0x66, 0x35, 0x94, 0x9a, 0x46, 0x89, 0xfd, 0x09, 0xe7, 0xb7, 0x9b, 0xf7, - 0xae, 0xe4, 0x11, 0xe8, 0xf7, 0x19, 0xfa, 0x5d, 0xdc, 0x4c, 0x40, 0x1f, 0x71, 0x5e, 0x3a, 0xd9, - 0xfe, 0x3f, 0x0f, 0xe5, 0xe7, 0x86, 0x69, 0x79, 0xc4, 0x32, 0xac, 0x1e, 0x41, 0xc7, 0x90, 0x63, - 0x91, 0x3a, 0xea, 0x88, 0xd5, 0xb4, 0x6d, 0xd4, 0x11, 0x87, 0x72, 0x9a, 0x78, 0x95, 0x01, 0x37, - 0xf1, 0x12, 0x05, 0x1e, 0x06, 0xa2, 0x5b, 0x2c, 0x15, 0x49, 0x3b, 0x7d, 0x02, 0x79, 0x71, 0xdb, - 0x17, 0x11, 0x14, 0x4a, 0xfe, 0x34, 0x6f, 0x27, 0x57, 0x26, 0xcd, 0x65, 0x15, 0xc6, 0x65, 0x7c, - 0x14, 0x67, 0x02, 0x10, 0xe4, 0xd8, 0xa3, 0x23, 0x1a, 0x4b, 0xc9, 0x37, 0x57, 0xd3, 0x19, 0x92, - 0x6c, 0xaa, 0x62, 0xf6, 0x7d, 0x5e, 0x8a, 0xfb, 0xc7, 0x30, 0xfb, 0xcc, 0x70, 0xcf, 0x50, 0x24, - 0xf6, 0x2a, 0x6f, 0xc5, 0x9a, 0xcd, 0xa4, 0x2a, 0x81, 0x72, 0x97, 0xa1, 0xdc, 0xe4, 0xae, 0x4c, - 0x45, 0x39, 0x33, 0x5c, 0x1a, 0xd4, 0x50, 0x1f, 0xf2, 0xfc, 0xe9, 0x58, 0xd4, 0x7e, 0xa1, 0xe7, - 0x67, 0x51, 0xfb, 0x85, 0x5f, 0x9b, 0x5d, 0x8f, 0x32, 0x82, 0xa2, 0x7c, 0xab, 0x85, 0x22, 0x17, - 0xf7, 0x91, 0x77, 0x5d, 0xcd, 0x95, 0xb4, 0x6a, 0x81, 0x75, 0x8f, 0x61, 0xdd, 0xc1, 0x8d, 0xd8, - 0x58, 0x09, 0xce, 0xc7, 0xda, 0xc3, 0x0f, 0x34, 0xf4, 0x23, 0x80, 0xe0, 0x5a, 0x22, 0xb6, 0x02, - 0xa3, 0x37, 0x1c, 0xb1, 0x15, 0x18, 0xbb, 0xd1, 0xc0, 0xeb, 0x0c, 0x77, 0x0d, 0xdf, 0x8b, 0xe2, - 0x7a, 0x8e, 0x61, 0xb9, 0x27, 0xc4, 0x79, 0x9f, 0x67, 0x59, 0xdd, 0x33, 0x73, 0x44, 0xbb, 0xec, - 0x40, 0xc9, 0xcf, 0x3a, 0x47, 0xbd, 0x6d, 0x34, 0x1b, 0x1e, 0xf5, 0xb6, 0xb1, 0x74, 0x75, 0xd8, - 0xed, 0x84, 0x66, 0x8b, 0x64, 0xa5, 0x0b, 0xf0, 0x17, 0x75, 0x98, 0xa5, 0xbb, 0x6e, 0xba, 0x39, - 0x09, 0xf2, 0x26, 0xd1, 0xde, 0xc7, 0xb2, 0xa8, 0xd1, 0xde, 0xc7, 0x53, 0x2e, 0xe1, 0xcd, 0x09, - 0xfb, 0x05, 0x13, 0x4f, 0x51, 0xd0, 0x9e, 0xda, 0x50, 0x56, 0x12, 0x2b, 0x28, 0x41, 0x58, 0x38, - 0x3d, 0x1b, 0x0d, 0x77, 0x09, 0x59, 0x19, 0x7c, 0x8b, 0xe1, 0x2d, 0xf1, 0x70, 0xc7, 0xf0, 0xfa, - 0x9c, 0x83, 0x02, 0x8a, 0xde, 0x89, 0x75, 0x9f, 0xd0, 0xbb, 0xf0, 0xda, 0x5f, 0x4d, 0x67, 0x48, - 0xed, 0x5d, 0xb0, 0xf0, 0x5f, 0x41, 0x45, 0x4d, 0xaf, 0xa0, 0x04, 0xe5, 0x23, 0x29, 0xe5, 0x68, - 0x1c, 0x49, 0xca, 0xce, 0x84, 0x3d, 0x9b, 0xff, 0x93, 0x30, 0xc9, 0x46, 0x81, 0x07, 0x50, 0x10, - 0xf9, 0x96, 0x24, 0x93, 0x86, 0xd3, 0xcf, 0x49, 0x26, 0x8d, 0x24, 0x6b, 0xc2, 0xbb, 0x67, 0x86, - 0x48, 0x8f, 0x94, 0x32, 0x56, 0x0b, 0xb4, 0xa7, 0xc4, 0x4b, 0x43, 0x0b, 0x32, 0x99, 0x69, 0x68, - 0xca, 0x71, 0x3e, 0x0d, 0xed, 0x94, 0x78, 0xc2, 0x1f, 0xc8, 0x63, 0x32, 0x4a, 0x11, 0xa6, 0xc6, - 0x47, 0x7c, 0x15, 0x4b, 0xd2, 0xe1, 0x26, 0x00, 0x94, 0xc1, 0xf1, 0x02, 0x20, 0xc8, 0x06, 0x45, - 0x77, 0xac, 0x89, 0x59, 0xf0, 0xe8, 0x8e, 0x35, 0x39, 0xa1, 0x14, 0xf6, 0x7d, 0x01, 0x2e, 0x3f, - 0x5b, 0x51, 0xe4, 0x9f, 0x69, 0x80, 0xe2, 0x89, 0x23, 0xf4, 0x28, 0x59, 0x7a, 0x62, 0x6e, 0xbd, - 0xf9, 0xde, 0xeb, 0x31, 0x27, 0x85, 0xb3, 0x40, 0xa5, 0x1e, 0xe3, 0x1e, 0xbd, 0xa2, 0x4a, 0xfd, - 0xa5, 0x06, 0xd5, 0x50, 0xd6, 0x09, 0x3d, 0x48, 0x19, 0xd3, 0x48, 0xca, 0xbd, 0xf9, 0xce, 0xb5, - 0x7c, 0x49, 0x5b, 0x79, 0x65, 0x06, 0xc8, 0x33, 0xcd, 0x4f, 0x34, 0xa8, 0x85, 0xb3, 0x54, 0x28, - 0x45, 0x76, 0x2c, 0x65, 0xdf, 0x5c, 0xbb, 0x9e, 0xf1, 0xea, 0xe1, 0x09, 0x8e, 0x33, 0x03, 0x28, - 0x88, 0xbc, 0x56, 0xd2, 0xc4, 0x0f, 0x27, 0xfb, 0x93, 0x26, 0x7e, 0x24, 0x29, 0x96, 0x30, 0xf1, - 0x1d, 0x7b, 0x40, 0x94, 0x65, 0x26, 0x12, 0x5f, 0x69, 0x68, 0x57, 0x2f, 0xb3, 0x48, 0xd6, 0x2c, - 0x0d, 0x2d, 0x58, 0x66, 0x32, 0xe3, 0x85, 0x52, 0x84, 0x5d, 0xb3, 0xcc, 0xa2, 0x09, 0xb3, 0x84, - 0x65, 0xc6, 0x00, 0x95, 0x65, 0x16, 0xe4, 0xa6, 0x92, 0x96, 0x59, 0xec, 0xee, 0x22, 0x69, 0x99, - 0xc5, 0xd3, 0x5b, 0x09, 0xe3, 0xc8, 0x70, 0x43, 0xcb, 0x6c, 0x21, 0x21, 0x8d, 0x85, 0xde, 0x4b, - 0x31, 0x62, 0xe2, 0x95, 0x48, 0xf3, 0xfd, 0xd7, 0xe4, 0x4e, 0x9d, 0xe3, 0xdc, 0xfc, 0x72, 0x8e, - 0xff, 0xad, 0x06, 0x8b, 0x49, 0x29, 0x30, 0x94, 0x82, 0x93, 0x72, 0x95, 0xd2, 0x5c, 0x7f, 0x5d, - 0xf6, 0xab, 0xad, 0xe5, 0xcf, 0xfa, 0x27, 0xf5, 0x7f, 0xfd, 0x6a, 0x45, 0xfb, 0x8f, 0xaf, 0x56, - 0xb4, 0xff, 0xfe, 0x6a, 0x45, 0xfb, 0xbb, 0xff, 0x59, 0x99, 0x39, 0xce, 0xb3, 0x1f, 0x1a, 0x7f, - 0xfb, 0x37, 0x01, 0x00, 0x00, 0xff, 0xff, 0x7a, 0xd4, 0x63, 0xa4, 0xef, 0x3c, 0x00, 0x00, + 0xa9, 0xcd, 0x2a, 0x5a, 0xf4, 0x8b, 0xf3, 0x34, 0x6f, 0x51, 0x9e, 0x56, 0xaf, 0x35, 0x9c, 0xf4, + 0xf8, 0x9f, 0xd1, 0x71, 0xeb, 0x7c, 0x22, 0x2a, 0xef, 0x88, 0x4a, 0x63, 0xec, 0x9d, 0xb1, 0x3f, + 0xa3, 0x63, 0xf6, 0x4f, 0x54, 0xdf, 0x3e, 0xb5, 0xed, 0xd3, 0x01, 0x69, 0x19, 0x23, 0xb3, 0x65, + 0x58, 0x96, 0xed, 0x19, 0x9e, 0x69, 0x5b, 0x2e, 0xaf, 0xc5, 0x7f, 0xa5, 0x41, 0x4d, 0x27, 0xee, + 0xc8, 0xb6, 0x5c, 0xf2, 0x8c, 0x18, 0x7d, 0xe2, 0xa0, 0x3b, 0x00, 0xbd, 0xc1, 0xd8, 0xf5, 0x88, + 0x73, 0x64, 0xf6, 0x1b, 0xda, 0xaa, 0xb6, 0x36, 0xab, 0x97, 0x04, 0x65, 0xbb, 0x8f, 0x6e, 0x41, + 0x69, 0x48, 0x86, 0xc7, 0xbc, 0x36, 0xc3, 0x6a, 0x8b, 0x9c, 0xb0, 0xdd, 0x47, 0x4d, 0x28, 0x3a, + 0x64, 0x62, 0xba, 0xa6, 0x6d, 0x35, 0xb2, 0xab, 0xda, 0x5a, 0x56, 0xf7, 0xcb, 0xb4, 0xa1, 0x63, + 0x9c, 0x78, 0x47, 0x1e, 0x71, 0x86, 0x8d, 0x59, 0xde, 0x90, 0x12, 0xba, 0xc4, 0x19, 0xe2, 0x9f, + 0xe4, 0xa0, 0xa2, 0x1b, 0xd6, 0x29, 0xd1, 0xc9, 0x0f, 0xc7, 0xc4, 0xf5, 0x50, 0x1d, 0xb2, 0xe7, + 0xe4, 0x92, 0xc1, 0x57, 0x74, 0xfa, 0xc9, 0xdb, 0x5b, 0xa7, 0xe4, 0x88, 0x58, 0x1c, 0xb8, 0x42, + 0xdb, 0x5b, 0xa7, 0xa4, 0x63, 0xf5, 0xd1, 0x22, 0xe4, 0x06, 0xe6, 0xd0, 0xf4, 0x04, 0x2a, 0x2f, + 0x84, 0xd4, 0x99, 0x8d, 0xa8, 0xb3, 0x09, 0xe0, 0xda, 0x8e, 0x77, 0x64, 0x3b, 0x7d, 0xe2, 0x34, + 0x72, 0xab, 0xda, 0x5a, 0x6d, 0xe3, 0xed, 0x75, 0x75, 0x30, 0xd6, 0x55, 0x85, 0xd6, 0x0f, 0x6d, + 0xc7, 0xdb, 0xa7, 0xbc, 0x7a, 0xc9, 0x95, 0x9f, 0xe8, 0x23, 0x28, 0x33, 0x21, 0x9e, 0xe1, 0x9c, + 0x12, 0xaf, 0x91, 0x67, 0x52, 0xee, 0x5f, 0x23, 0xa5, 0xcb, 0x98, 0x75, 0x06, 0xcf, 0xbf, 0x11, + 0x86, 0x8a, 0x4b, 0x1c, 0xd3, 0x18, 0x98, 0x5f, 0x1a, 0xc7, 0x03, 0xd2, 0x28, 0xac, 0x6a, 0x6b, + 0x45, 0x3d, 0x44, 0xa3, 0xfd, 0x3f, 0x27, 0x97, 0xee, 0x91, 0x6d, 0x0d, 0x2e, 0x1b, 0x45, 0xc6, + 0x50, 0xa4, 0x84, 0x7d, 0x6b, 0x70, 0xc9, 0x06, 0xcd, 0x1e, 0x5b, 0x1e, 0xaf, 0x2d, 0xb1, 0xda, + 0x12, 0xa3, 0xb0, 0xea, 0x35, 0xa8, 0x0f, 0x4d, 0xeb, 0x68, 0x68, 0xf7, 0x8f, 0x7c, 0x83, 0x00, + 0x33, 0x48, 0x6d, 0x68, 0x5a, 0xcf, 0xed, 0xbe, 0x2e, 0xcd, 0x42, 0x39, 0x8d, 0x8b, 0x30, 0x67, + 0x59, 0x70, 0x1a, 0x17, 0x2a, 0xe7, 0x3a, 0x2c, 0x50, 0x99, 0x3d, 0x87, 0x18, 0x1e, 0x09, 0x98, + 0x2b, 0x8c, 0x79, 0x7e, 0x68, 0x5a, 0x9b, 0xac, 0x26, 0xc4, 0x6f, 0x5c, 0xc4, 0xf8, 0xab, 0x82, + 0xdf, 0xb8, 0x08, 0xf3, 0xe3, 0x75, 0x28, 0xf9, 0x36, 0x47, 0x45, 0x98, 0xdd, 0xdb, 0xdf, 0xeb, + 0xd4, 0x67, 0x10, 0x40, 0xbe, 0x7d, 0xb8, 0xd9, 0xd9, 0xdb, 0xaa, 0x6b, 0xa8, 0x0c, 0x85, 0xad, + 0x0e, 0x2f, 0x64, 0xf0, 0x13, 0x80, 0xc0, 0xba, 0xa8, 0x00, 0xd9, 0x9d, 0xce, 0xe7, 0xf5, 0x19, + 0xca, 0xf3, 0xb2, 0xa3, 0x1f, 0x6e, 0xef, 0xef, 0xd5, 0x35, 0xda, 0x78, 0x53, 0xef, 0xb4, 0xbb, + 0x9d, 0x7a, 0x86, 0x72, 0x3c, 0xdf, 0xdf, 0xaa, 0x67, 0x51, 0x09, 0x72, 0x2f, 0xdb, 0xbb, 0x2f, + 0x3a, 0xf5, 0x59, 0xfc, 0x73, 0x0d, 0xaa, 0x62, 0xbc, 0xf8, 0x9a, 0x40, 0xdf, 0x81, 0xfc, 0x19, + 0x5b, 0x17, 0x6c, 0x2a, 0x96, 0x37, 0x6e, 0x47, 0x06, 0x37, 0xb4, 0x76, 0x74, 0xc1, 0x8b, 0x30, + 0x64, 0xcf, 0x27, 0x6e, 0x23, 0xb3, 0x9a, 0x5d, 0x2b, 0x6f, 0xd4, 0xd7, 0xf9, 0x92, 0x5d, 0xdf, + 0x21, 0x97, 0x2f, 0x8d, 0xc1, 0x98, 0xe8, 0xb4, 0x12, 0x21, 0x98, 0x1d, 0xda, 0x0e, 0x61, 0x33, + 0xb6, 0xa8, 0xb3, 0x6f, 0x3a, 0x8d, 0xd9, 0xa0, 0x89, 0xd9, 0xca, 0x0b, 0xf8, 0x97, 0x1a, 0xc0, + 0xc1, 0xd8, 0x4b, 0x5f, 0x1a, 0x8b, 0x90, 0x9b, 0x50, 0xc1, 0x62, 0x59, 0xf0, 0x02, 0x5b, 0x13, + 0xc4, 0x70, 0x89, 0xbf, 0x26, 0x68, 0x01, 0xdd, 0x80, 0xc2, 0xc8, 0x21, 0x93, 0xa3, 0xf3, 0x09, + 0x03, 0x29, 0xea, 0x79, 0x5a, 0xdc, 0x99, 0xa0, 0xb7, 0xa0, 0x62, 0x9e, 0x5a, 0xb6, 0x43, 0x8e, + 0xb8, 0xac, 0x1c, 0xab, 0x2d, 0x73, 0x1a, 0xd3, 0x5b, 0x61, 0xe1, 0x82, 0xf3, 0x2a, 0xcb, 0x2e, + 0x25, 0x61, 0x0b, 0xca, 0x4c, 0xd5, 0xa9, 0xcc, 0xf7, 0x6e, 0xa0, 0x63, 0x86, 0x35, 0x8b, 0x9b, + 0x50, 0x68, 0x8d, 0x7f, 0x00, 0x68, 0x8b, 0x0c, 0x88, 0x47, 0xa6, 0xf1, 0x1e, 0x8a, 0x4d, 0xb2, + 0xaa, 0x4d, 0xf0, 0xcf, 0x34, 0x58, 0x08, 0x89, 0x9f, 0xaa, 0x5b, 0x0d, 0x28, 0xf4, 0x99, 0x30, + 0xae, 0x41, 0x56, 0x97, 0x45, 0xf4, 0x08, 0x8a, 0x42, 0x01, 0xb7, 0x91, 0x4d, 0x99, 0x34, 0x05, + 0xae, 0x93, 0x8b, 0x7f, 0x99, 0x81, 0x92, 0xe8, 0xe8, 0xfe, 0x08, 0xb5, 0xa1, 0xea, 0xf0, 0xc2, + 0x11, 0xeb, 0x8f, 0xd0, 0xa8, 0x99, 0xee, 0x84, 0x9e, 0xcd, 0xe8, 0x15, 0xd1, 0x84, 0x91, 0xd1, + 0xef, 0x43, 0x59, 0x8a, 0x18, 0x8d, 0x3d, 0x61, 0xf2, 0x46, 0x58, 0x40, 0x30, 0xff, 0x9e, 0xcd, + 0xe8, 0x20, 0xd8, 0x0f, 0xc6, 0x1e, 0xea, 0xc2, 0xa2, 0x6c, 0xcc, 0x7b, 0x23, 0xd4, 0xc8, 0x32, + 0x29, 0xab, 0x61, 0x29, 0xf1, 0xa1, 0x7a, 0x36, 0xa3, 0x23, 0xd1, 0x5e, 0xa9, 0x54, 0x55, 0xf2, + 0x2e, 0xb8, 0xf3, 0x8e, 0xa9, 0xd4, 0xbd, 0xb0, 0xe2, 0x2a, 0x75, 0x2f, 0xac, 0x27, 0x25, 0x28, + 0x88, 0x12, 0xfe, 0x97, 0x0c, 0x80, 0x1c, 0x8d, 0xfd, 0x11, 0xda, 0x82, 0x9a, 0x23, 0x4a, 0x21, + 0x6b, 0xdd, 0x4a, 0xb4, 0x96, 0x18, 0xc4, 0x19, 0xbd, 0x2a, 0x1b, 0x71, 0xe5, 0xbe, 0x07, 0x15, + 0x5f, 0x4a, 0x60, 0xb0, 0x9b, 0x09, 0x06, 0xf3, 0x25, 0x94, 0x65, 0x03, 0x6a, 0xb2, 0x4f, 0x61, + 0xc9, 0x6f, 0x9f, 0x60, 0xb3, 0xb7, 0xae, 0xb0, 0x99, 0x2f, 0x70, 0x41, 0x4a, 0x50, 0xad, 0xa6, + 0x2a, 0x16, 0x98, 0xed, 0x66, 0x82, 0xd9, 0xe2, 0x8a, 0x51, 0xc3, 0x01, 0x8d, 0x97, 0xbc, 0x88, + 0xff, 0x37, 0x0b, 0x85, 0x4d, 0x7b, 0x38, 0x32, 0x1c, 0x3a, 0x1a, 0x79, 0x87, 0xb8, 0xe3, 0x81, + 0xc7, 0xcc, 0x55, 0xdb, 0xb8, 0x17, 0x96, 0x28, 0xd8, 0xe4, 0x7f, 0x9d, 0xb1, 0xea, 0xa2, 0x09, + 0x6d, 0x2c, 0xc2, 0x63, 0xe6, 0x35, 0x1a, 0x8b, 0xe0, 0x28, 0x9a, 0xc8, 0x85, 0x9c, 0x0d, 0x16, + 0x72, 0x13, 0x0a, 0x13, 0xe2, 0x04, 0x21, 0xfd, 0xd9, 0x8c, 0x2e, 0x09, 0xe8, 0x5d, 0x98, 0x8b, + 0x86, 0x97, 0x9c, 0xe0, 0xa9, 0xf5, 0xc2, 0xd1, 0xe8, 0x1e, 0x54, 0x42, 0x31, 0x2e, 0x2f, 0xf8, + 0xca, 0x43, 0x25, 0xc4, 0x2d, 0x4b, 0xbf, 0x4a, 0xe3, 0x71, 0xe5, 0xd9, 0x8c, 0xf4, 0xac, 0xcb, + 0xd2, 0xb3, 0x16, 0x45, 0x2b, 0xe1, 0x5b, 0x43, 0x4e, 0xe6, 0xfb, 0x61, 0x27, 0x83, 0xbf, 0x0f, + 0xd5, 0x90, 0x81, 0x68, 0xdc, 0xe9, 0x7c, 0xf2, 0xa2, 0xbd, 0xcb, 0x83, 0xd4, 0x53, 0x16, 0x97, + 0xf4, 0xba, 0x46, 0x63, 0xdd, 0x6e, 0xe7, 0xf0, 0xb0, 0x9e, 0x41, 0x55, 0x28, 0xed, 0xed, 0x77, + 0x8f, 0x38, 0x57, 0x16, 0x3f, 0xf5, 0x25, 0x88, 0x20, 0xa7, 0xc4, 0xb6, 0x19, 0x25, 0xb6, 0x69, + 0x32, 0xb6, 0x65, 0x82, 0xd8, 0xc6, 0xc2, 0xdc, 0x6e, 0xa7, 0x7d, 0xd8, 0xa9, 0xcf, 0x3e, 0xa9, + 0x41, 0x85, 0xdb, 0xf7, 0x68, 0x6c, 0xd1, 0x50, 0xfb, 0x4f, 0x1a, 0x40, 0xb0, 0x9a, 0x50, 0x0b, + 0x0a, 0x3d, 0x8e, 0xd3, 0xd0, 0x98, 0x33, 0x5a, 0x4a, 0x1c, 0x32, 0x5d, 0x72, 0xa1, 0x6f, 0x41, + 0xc1, 0x1d, 0xf7, 0x7a, 0xc4, 0x95, 0x21, 0xef, 0x46, 0xd4, 0x1f, 0x0a, 0x6f, 0xa5, 0x4b, 0x3e, + 0xda, 0xe4, 0xc4, 0x30, 0x07, 0x63, 0x16, 0x00, 0xaf, 0x6e, 0x22, 0xf8, 0xf0, 0xdf, 0x6b, 0x50, + 0x56, 0x26, 0xef, 0xef, 0xe8, 0x84, 0x6f, 0x43, 0x89, 0xe9, 0x40, 0xfa, 0xc2, 0x0d, 0x17, 0xf5, + 0x80, 0x80, 0x7e, 0x0f, 0x4a, 0x72, 0x05, 0x48, 0x4f, 0xdc, 0x48, 0x16, 0xbb, 0x3f, 0xd2, 0x03, + 0x56, 0xbc, 0x03, 0xf3, 0xcc, 0x2a, 0x3d, 0xba, 0xb9, 0x96, 0x76, 0x54, 0xb7, 0x9f, 0x5a, 0x64, + 0xfb, 0xd9, 0x84, 0xe2, 0xe8, 0xec, 0xd2, 0x35, 0x7b, 0xc6, 0x40, 0x68, 0xe1, 0x97, 0xf1, 0xc7, + 0x80, 0x54, 0x61, 0xd3, 0x74, 0x17, 0x57, 0xa1, 0xfc, 0xcc, 0x70, 0xcf, 0x84, 0x4a, 0xf8, 0x11, + 0x54, 0x69, 0x71, 0xe7, 0xe5, 0x6b, 0xe8, 0xc8, 0x0e, 0x07, 0x92, 0x7b, 0x2a, 0x9b, 0x23, 0x98, + 0x3d, 0x33, 0xdc, 0x33, 0xd6, 0xd1, 0xaa, 0xce, 0xbe, 0xd1, 0xbb, 0x50, 0xef, 0xf1, 0x4e, 0x1e, + 0x45, 0x8e, 0x0c, 0x73, 0x82, 0xee, 0xef, 0x04, 0x3f, 0x83, 0x0a, 0xef, 0xc3, 0xd7, 0xad, 0x04, + 0x9e, 0x87, 0xb9, 0x43, 0xcb, 0x18, 0xb9, 0x67, 0xb6, 0x8c, 0x6e, 0xb4, 0xd3, 0xf5, 0x80, 0x36, + 0x15, 0xe2, 0x3b, 0x30, 0xe7, 0x90, 0xa1, 0x61, 0x5a, 0xa6, 0x75, 0x7a, 0x74, 0x7c, 0xe9, 0x11, + 0x57, 0x1c, 0x98, 0x6a, 0x3e, 0xf9, 0x09, 0xa5, 0x52, 0xd5, 0x8e, 0x07, 0xf6, 0xb1, 0x70, 0x73, + 0xec, 0x1b, 0xff, 0x34, 0x03, 0x95, 0x4f, 0x0d, 0xaf, 0x27, 0x87, 0x0e, 0x6d, 0x43, 0xcd, 0x77, + 0x6e, 0x8c, 0x22, 0x74, 0x89, 0x84, 0x58, 0xd6, 0x46, 0x6e, 0xa5, 0x65, 0x74, 0xac, 0xf6, 0x54, + 0x02, 0x13, 0x65, 0x58, 0x3d, 0x32, 0xf0, 0x45, 0x65, 0xd2, 0x45, 0x31, 0x46, 0x55, 0x94, 0x4a, + 0x40, 0xfb, 0x50, 0x1f, 0x39, 0xf6, 0xa9, 0x43, 0x5c, 0xd7, 0x17, 0xc6, 0xc3, 0x18, 0x4e, 0x10, + 0x76, 0x20, 0x58, 0x03, 0x71, 0x73, 0xa3, 0x30, 0xe9, 0xc9, 0x5c, 0xb0, 0x9f, 0xe1, 0xce, 0xe9, + 0x3f, 0x33, 0x80, 0xe2, 0x9d, 0xfa, 0x6d, 0xb7, 0x78, 0xf7, 0xa1, 0xe6, 0x7a, 0x86, 0x13, 0x9b, + 0x6c, 0x55, 0x46, 0xf5, 0x3d, 0xfe, 0x3b, 0xe0, 0x2b, 0x74, 0x64, 0xd9, 0x9e, 0x79, 0x72, 0x29, + 0x76, 0xc9, 0x35, 0x49, 0xde, 0x63, 0x54, 0xd4, 0x81, 0xc2, 0x89, 0x39, 0xf0, 0x88, 0xe3, 0x36, + 0x72, 0xab, 0xd9, 0xb5, 0xda, 0xc6, 0xa3, 0xeb, 0x86, 0x61, 0xfd, 0x23, 0xc6, 0xdf, 0xbd, 0x1c, + 0x11, 0x5d, 0xb6, 0x55, 0x77, 0x9e, 0xf9, 0xd0, 0x6e, 0xfc, 0x26, 0x14, 0x5f, 0x51, 0x11, 0xf4, + 0x94, 0x5d, 0xe0, 0x9b, 0x45, 0x56, 0xe6, 0x87, 0xec, 0x13, 0xc7, 0x38, 0x1d, 0x12, 0xcb, 0x93, + 0xe7, 0x40, 0x59, 0xc6, 0xf7, 0x01, 0x02, 0x18, 0xea, 0xf2, 0xf7, 0xf6, 0x0f, 0x5e, 0x74, 0xeb, + 0x33, 0xa8, 0x02, 0xc5, 0xbd, 0xfd, 0xad, 0xce, 0x6e, 0x87, 0xc6, 0x07, 0xdc, 0x92, 0x26, 0x0d, + 0x8d, 0xa5, 0x8a, 0xa9, 0x85, 0x30, 0xf1, 0x32, 0x2c, 0x26, 0x0d, 0x20, 0xdd, 0x8b, 0x56, 0xc5, + 0x2c, 0x9d, 0x6a, 0xa9, 0xa8, 0xd0, 0x99, 0x70, 0x77, 0x1b, 0x50, 0xe0, 0xb3, 0xb7, 0x2f, 0x36, + 0xe7, 0xb2, 0x48, 0x0d, 0xc1, 0x27, 0x23, 0xe9, 0x8b, 0x51, 0xf2, 0xcb, 0x89, 0xee, 0x25, 0x97, + 0xe8, 0x5e, 0xd0, 0x3d, 0xa8, 0xfa, 0xab, 0xc1, 0x70, 0xc5, 0x5e, 0xa0, 0xa4, 0x57, 0xe4, 0x44, + 0xa7, 0xb4, 0x90, 0xd1, 0x0b, 0x61, 0xa3, 0xa3, 0xfb, 0x90, 0x27, 0x13, 0x62, 0x79, 0x6e, 0xa3, + 0xcc, 0x22, 0x46, 0x55, 0xee, 0xdd, 0x3b, 0x94, 0xaa, 0x8b, 0x4a, 0xfc, 0x5d, 0x98, 0x67, 0x67, + 0xa4, 0xa7, 0x8e, 0x61, 0xa9, 0x87, 0xb9, 0x6e, 0x77, 0x57, 0x98, 0x9b, 0x7e, 0xa2, 0x1a, 0x64, + 0xb6, 0xb7, 0x84, 0x11, 0x32, 0xdb, 0x5b, 0xf8, 0xc7, 0x1a, 0x20, 0xb5, 0xdd, 0x54, 0x76, 0x8e, + 0x08, 0x97, 0xf0, 0xd9, 0x00, 0x7e, 0x11, 0x72, 0xc4, 0x71, 0x6c, 0x87, 0x59, 0xb4, 0xa4, 0xf3, + 0x02, 0x7e, 0x5b, 0xe8, 0xa0, 0x93, 0x89, 0x7d, 0xee, 0xaf, 0x41, 0x2e, 0x4d, 0xf3, 0x55, 0xdd, + 0x81, 0x85, 0x10, 0xd7, 0x54, 0x91, 0xeb, 0x23, 0x98, 0x63, 0xc2, 0x36, 0xcf, 0x48, 0xef, 0x7c, + 0x64, 0x9b, 0x56, 0x0c, 0x8f, 0x8e, 0x5c, 0xe0, 0x60, 0x69, 0x3f, 0x78, 0xc7, 0x2a, 0x3e, 0xb1, + 0xdb, 0xdd, 0xc5, 0x9f, 0xc3, 0x72, 0x44, 0x8e, 0x54, 0xff, 0x8f, 0xa0, 0xdc, 0xf3, 0x89, 0xae, + 0xd8, 0xeb, 0xdc, 0x09, 0x2b, 0x17, 0x6d, 0xaa, 0xb6, 0xc0, 0xfb, 0x70, 0x23, 0x26, 0x7a, 0xaa, + 0x3e, 0xbf, 0x03, 0x4b, 0x4c, 0xe0, 0x0e, 0x21, 0xa3, 0xf6, 0xc0, 0x9c, 0xa4, 0x5a, 0x7a, 0x24, + 0x3a, 0xa5, 0x30, 0xbe, 0xd9, 0x79, 0x81, 0xff, 0x40, 0x20, 0x76, 0xcd, 0x21, 0xe9, 0xda, 0xbb, + 0xe9, 0xba, 0xd1, 0x68, 0x76, 0x4e, 0x2e, 0x5d, 0xb1, 0xad, 0x61, 0xdf, 0xf8, 0x9f, 0x35, 0x61, + 0x2a, 0xb5, 0xf9, 0x1b, 0x9e, 0xc9, 0x2b, 0x00, 0xa7, 0x74, 0xc9, 0x90, 0x3e, 0xad, 0xe0, 0x19, + 0x15, 0x85, 0xe2, 0xeb, 0x49, 0xfd, 0x77, 0x45, 0xe8, 0xb9, 0x28, 0xe6, 0x39, 0xfb, 0xe3, 0x7b, + 0xb9, 0x3b, 0x50, 0x66, 0x84, 0x43, 0xcf, 0xf0, 0xc6, 0x6e, 0x6c, 0x30, 0xfe, 0x42, 0x4c, 0x7b, + 0xd9, 0x68, 0xaa, 0x7e, 0x7d, 0x0b, 0xf2, 0xec, 0x30, 0x21, 0xb7, 0xd2, 0x37, 0x13, 0xe6, 0x23, + 0xd7, 0x43, 0x17, 0x8c, 0xf8, 0xa7, 0x1a, 0xe4, 0x9f, 0xb3, 0x14, 0xac, 0xa2, 0xda, 0xac, 0x1c, + 0x0b, 0xcb, 0x18, 0xf2, 0xc4, 0x50, 0x49, 0x67, 0xdf, 0x6c, 0xeb, 0x49, 0x88, 0xf3, 0x42, 0xdf, + 0xe5, 0x5b, 0xdc, 0x92, 0xee, 0x97, 0xa9, 0xcd, 0x7a, 0x03, 0x93, 0x58, 0x1e, 0xab, 0x9d, 0x65, + 0xb5, 0x0a, 0x85, 0xee, 0x9e, 0x4d, 0x77, 0x97, 0x18, 0x8e, 0x25, 0x92, 0xa6, 0x45, 0x3d, 0x20, + 0xe0, 0x5d, 0xa8, 0x73, 0x3d, 0xda, 0xfd, 0xbe, 0xb2, 0xc1, 0xf4, 0xd1, 0xb4, 0x08, 0x5a, 0x48, + 0x5a, 0x26, 0x2a, 0xed, 0x17, 0x1a, 0xcc, 0x2b, 0xe2, 0xa6, 0xb2, 0xea, 0x7b, 0x90, 0xe7, 0x49, + 0x6a, 0xb1, 0xd3, 0x59, 0x0c, 0xb7, 0xe2, 0x30, 0xba, 0xe0, 0x41, 0xeb, 0x50, 0xe0, 0x5f, 0xf2, + 0x0c, 0x90, 0xcc, 0x2e, 0x99, 0xf0, 0x7d, 0x58, 0x10, 0x24, 0x32, 0xb4, 0x93, 0x16, 0x06, 0x1b, + 0x0c, 0xfc, 0x67, 0xb0, 0x18, 0x66, 0x9b, 0xaa, 0x4b, 0x8a, 0x92, 0x99, 0xd7, 0x51, 0xb2, 0x2d, + 0x95, 0x7c, 0x31, 0xea, 0x2b, 0xfb, 0xa8, 0xe8, 0x8c, 0x51, 0xc7, 0x2b, 0x13, 0x1e, 0xaf, 0xa0, + 0x03, 0x52, 0xc4, 0x37, 0xda, 0x81, 0x0f, 0xe5, 0x74, 0xd8, 0x35, 0x5d, 0xdf, 0x87, 0x63, 0xa8, + 0x0c, 0x4c, 0x8b, 0x18, 0x8e, 0xc8, 0x9c, 0x6b, 0x3c, 0x73, 0xae, 0xd2, 0xf0, 0x97, 0x80, 0xd4, + 0x86, 0xdf, 0xa8, 0xd2, 0x0f, 0xa4, 0xc9, 0x0e, 0x1c, 0x7b, 0x68, 0xa7, 0x9a, 0x1d, 0xff, 0x39, + 0x2c, 0x45, 0xf8, 0xbe, 0x51, 0x35, 0x17, 0x60, 0x7e, 0x8b, 0xc8, 0x0d, 0x8d, 0x74, 0x7b, 0x1f, + 0x03, 0x52, 0x89, 0x53, 0x45, 0xb6, 0x16, 0xcc, 0x3f, 0xb7, 0x27, 0xd4, 0x45, 0x52, 0x6a, 0xe0, + 0x1b, 0x78, 0x1e, 0xc2, 0x37, 0x85, 0x5f, 0xa6, 0xe0, 0x6a, 0x83, 0xa9, 0xc0, 0xff, 0x5d, 0x83, + 0x4a, 0x7b, 0x60, 0x38, 0x43, 0x09, 0xfc, 0x3d, 0xc8, 0xf3, 0xd3, 0xb5, 0x48, 0x68, 0x3d, 0x08, + 0x8b, 0x51, 0x79, 0x79, 0xa1, 0xcd, 0xcf, 0xe2, 0xa2, 0x15, 0x55, 0x5c, 0xdc, 0x79, 0x6d, 0x45, + 0xee, 0xc0, 0xb6, 0xd0, 0xfb, 0x90, 0x33, 0x68, 0x13, 0x16, 0x8a, 0x6a, 0xd1, 0xbc, 0x06, 0x93, + 0xc6, 0xce, 0x00, 0x9c, 0x0b, 0x7f, 0x07, 0xca, 0x0a, 0x02, 0x2a, 0x40, 0xf6, 0x69, 0x47, 0x6c, + 0xd8, 0xdb, 0x9b, 0xdd, 0xed, 0x97, 0x3c, 0xa1, 0x53, 0x03, 0xd8, 0xea, 0xf8, 0xe5, 0x0c, 0xfe, + 0x4c, 0xb4, 0x12, 0x6e, 0x5f, 0xd5, 0x47, 0x4b, 0xd3, 0x27, 0xf3, 0x5a, 0xfa, 0x5c, 0x40, 0x55, + 0x74, 0x7f, 0xda, 0x30, 0xc6, 0xe4, 0xa5, 0x84, 0x31, 0x45, 0x79, 0x5d, 0x30, 0xe2, 0x5f, 0x69, + 0x50, 0xdf, 0xb2, 0x5f, 0x59, 0xa7, 0x8e, 0xd1, 0xf7, 0xd7, 0xc9, 0x47, 0x91, 0x91, 0x5a, 0x8f, + 0x24, 0x47, 0x23, 0xfc, 0x01, 0x21, 0x32, 0x62, 0x8d, 0x20, 0x6d, 0xc8, 0x63, 0xa1, 0x2c, 0xe2, + 0x0f, 0x61, 0x2e, 0xd2, 0x88, 0xda, 0xfe, 0x65, 0x7b, 0x77, 0x7b, 0x8b, 0xda, 0x9a, 0x25, 0xd6, + 0x3a, 0x7b, 0xed, 0x27, 0xbb, 0x1d, 0x71, 0x81, 0xd4, 0xde, 0xdb, 0xec, 0xec, 0xd6, 0x33, 0xb8, + 0x07, 0xf3, 0x0a, 0xfc, 0xb4, 0x37, 0x03, 0x29, 0xda, 0xcd, 0x41, 0x55, 0x44, 0x7b, 0xb1, 0x28, + 0xff, 0x2d, 0x03, 0x35, 0x49, 0x79, 0x33, 0x98, 0x68, 0x19, 0xf2, 0xfd, 0xe3, 0x43, 0xf3, 0x4b, + 0x79, 0x73, 0x24, 0x4a, 0x94, 0x3e, 0xe0, 0x38, 0xfc, 0xfa, 0x56, 0x94, 0x68, 0x18, 0x77, 0x8c, + 0x13, 0x6f, 0xdb, 0xea, 0x93, 0x0b, 0xb6, 0x29, 0x98, 0xd5, 0x03, 0x02, 0xcb, 0x30, 0x89, 0x6b, + 0x5e, 0x76, 0xb2, 0x52, 0xae, 0x7d, 0xd1, 0x43, 0xa8, 0xd3, 0xef, 0xf6, 0x68, 0x34, 0x30, 0x49, + 0x9f, 0x0b, 0x28, 0x30, 0x9e, 0x18, 0x9d, 0xa2, 0xb3, 0xb3, 0x88, 0xdb, 0x28, 0xb2, 0xb0, 0x24, + 0x4a, 0x68, 0x15, 0xca, 0x5c, 0xbf, 0x6d, 0xeb, 0x85, 0x4b, 0xd8, 0xdd, 0x67, 0x56, 0x57, 0x49, + 0xe1, 0x6d, 0x06, 0x44, 0xb7, 0x19, 0x0b, 0x30, 0xdf, 0x1e, 0x7b, 0x67, 0x1d, 0x8b, 0xc6, 0x0a, + 0x69, 0xe5, 0x45, 0x40, 0x94, 0xb8, 0x65, 0xba, 0x2a, 0x55, 0xb0, 0x86, 0x07, 0xa4, 0x03, 0x0b, + 0x94, 0x48, 0x2c, 0xcf, 0xec, 0x29, 0x71, 0x55, 0xee, 0xbc, 0xb4, 0xc8, 0xce, 0xcb, 0x70, 0xdd, + 0x57, 0xb6, 0xd3, 0x17, 0x36, 0xf7, 0xcb, 0xf8, 0x1f, 0x35, 0x0e, 0xf9, 0xc2, 0x0d, 0x6d, 0x9f, + 0x7e, 0x4b, 0x31, 0xe8, 0x03, 0x28, 0xd8, 0x23, 0x76, 0xc3, 0x2f, 0xd2, 0x30, 0xcb, 0xeb, 0xfc, + 0x4d, 0xc0, 0xba, 0x10, 0xbc, 0xcf, 0x6b, 0x75, 0xc9, 0x86, 0x1e, 0x40, 0xed, 0xcc, 0x70, 0xcf, + 0x48, 0xff, 0x40, 0xca, 0xe4, 0x27, 0xbf, 0x08, 0x15, 0xaf, 0x05, 0xfa, 0x3d, 0x25, 0xde, 0x15, + 0xfa, 0xe1, 0x47, 0xb0, 0x24, 0x39, 0xc5, 0xed, 0xc4, 0x15, 0xcc, 0xaf, 0xe0, 0x8e, 0x64, 0xde, + 0x3c, 0x33, 0xac, 0x53, 0x22, 0x01, 0x7f, 0x57, 0x0b, 0xc4, 0xfb, 0x93, 0x4d, 0xec, 0xcf, 0x13, + 0x68, 0xf8, 0xfd, 0x61, 0x27, 0x6b, 0x7b, 0xa0, 0x2a, 0x3a, 0x76, 0xc5, 0x7a, 0x2a, 0xe9, 0xec, + 0x9b, 0xd2, 0x1c, 0x7b, 0xe0, 0x6f, 0xa5, 0xe9, 0x37, 0xde, 0x84, 0x9b, 0x52, 0x86, 0x38, 0xf3, + 0x86, 0x85, 0xc4, 0x14, 0x4f, 0x12, 0x22, 0x0c, 0x4b, 0x9b, 0x5e, 0x3d, 0xf0, 0x2a, 0x67, 0x78, + 0x08, 0x98, 0x4c, 0x4d, 0x91, 0xb9, 0xc4, 0x27, 0x25, 0x55, 0x4c, 0xd9, 0x2d, 0x49, 0x32, 0x15, + 0xa0, 0x92, 0xc5, 0x80, 0x51, 0x72, 0x6c, 0xc0, 0x62, 0xa2, 0x7f, 0x00, 0x2b, 0xbe, 0x12, 0xd4, + 0x6e, 0x07, 0xc4, 0x19, 0x9a, 0xae, 0xab, 0xe4, 0xbd, 0x93, 0x3a, 0xfe, 0x00, 0x66, 0x47, 0x44, + 0x04, 0xa1, 0xf2, 0x06, 0x92, 0x93, 0x52, 0x69, 0xcc, 0xea, 0x71, 0x1f, 0xee, 0x4a, 0xe9, 0xdc, + 0xa2, 0x89, 0xe2, 0xa3, 0x4a, 0xc9, 0x6c, 0x60, 0x26, 0x25, 0x1b, 0x98, 0x8d, 0xdc, 0xc5, 0x7c, + 0xcc, 0x0d, 0x29, 0xd7, 0xfc, 0x54, 0x9b, 0x8b, 0x1d, 0x6e, 0x53, 0xdf, 0x55, 0x4c, 0x25, 0xec, + 0xaf, 0x85, 0x17, 0xf8, 0xba, 0x3c, 0x3c, 0x61, 0x3d, 0x94, 0x17, 0x1d, 0xb2, 0x48, 0x77, 0xcd, + 0x74, 0x00, 0x74, 0x35, 0x17, 0x3a, 0xab, 0x87, 0x68, 0xf8, 0x18, 0x16, 0xc3, 0x7e, 0x6d, 0x2a, + 0x5d, 0x16, 0x21, 0xe7, 0xd9, 0xe7, 0x44, 0xc6, 0x1a, 0x5e, 0x90, 0xb6, 0xf3, 0x7d, 0xde, 0x54, + 0xb6, 0x33, 0x02, 0x61, 0x6c, 0x75, 0x4c, 0xab, 0x2f, 0x9d, 0x58, 0xf2, 0x0c, 0xc4, 0x0b, 0x78, + 0x0f, 0x96, 0xa3, 0x9e, 0x6d, 0x2a, 0x95, 0x5f, 0xf2, 0xb5, 0x94, 0xe4, 0xfc, 0xa6, 0x92, 0xfb, + 0x49, 0xe0, 0x97, 0x14, 0xdf, 0x36, 0x95, 0x48, 0x1d, 0x9a, 0x49, 0xae, 0xee, 0xeb, 0x58, 0x3a, + 0xbe, 0xe7, 0x9b, 0x4a, 0x98, 0x1b, 0x08, 0x9b, 0x7e, 0xf8, 0x03, 0x77, 0x95, 0xbd, 0xd2, 0x5d, + 0x89, 0x45, 0x12, 0x38, 0xd4, 0x37, 0x30, 0xe9, 0x04, 0x46, 0xe0, 0xcb, 0xa7, 0xc5, 0xa0, 0xe1, + 0xcc, 0xc7, 0x60, 0x05, 0x39, 0xb1, 0xd5, 0x08, 0x30, 0xd5, 0x60, 0x7c, 0x1a, 0xb8, 0xf1, 0x58, + 0x90, 0x98, 0x4a, 0xf0, 0x67, 0xb0, 0x9a, 0x1e, 0x1f, 0xa6, 0x91, 0xfc, 0xb0, 0x05, 0x25, 0xff, + 0x30, 0xa4, 0xbc, 0x37, 0x2b, 0x43, 0x61, 0x6f, 0xff, 0xf0, 0xa0, 0xbd, 0xd9, 0xe1, 0x0f, 0xce, + 0x36, 0xf7, 0x75, 0xfd, 0xc5, 0x41, 0xb7, 0x9e, 0xd9, 0xf8, 0x75, 0x16, 0x32, 0x3b, 0x2f, 0xd1, + 0xe7, 0x90, 0xe3, 0xaf, 0x2f, 0xae, 0x78, 0x72, 0xd3, 0xbc, 0xea, 0x81, 0x09, 0xbe, 0xf1, 0xe3, + 0xff, 0xfa, 0xf5, 0xcf, 0x33, 0xf3, 0xb8, 0xd2, 0x9a, 0x7c, 0xbb, 0x75, 0x3e, 0x69, 0xb1, 0x30, + 0xf5, 0x58, 0x7b, 0x88, 0x3e, 0x81, 0xec, 0xc1, 0xd8, 0x43, 0xa9, 0x4f, 0x71, 0x9a, 0xe9, 0x6f, + 0x4e, 0xf0, 0x12, 0x13, 0x3a, 0x87, 0x41, 0x08, 0x1d, 0x8d, 0x3d, 0x2a, 0xf2, 0x87, 0x50, 0x56, + 0x5f, 0x8c, 0x5c, 0xfb, 0x3e, 0xa7, 0x79, 0xfd, 0x6b, 0x14, 0x7c, 0x87, 0x41, 0xdd, 0xc0, 0x48, + 0x40, 0xf1, 0x37, 0x2d, 0x6a, 0x2f, 0xba, 0x17, 0x16, 0x4a, 0x7d, 0xbd, 0xd3, 0x4c, 0x7f, 0xa0, + 0x12, 0xeb, 0x85, 0x77, 0x61, 0x51, 0x91, 0x7f, 0x22, 0xde, 0xa6, 0xf4, 0x3c, 0x74, 0x37, 0xe1, + 0x6d, 0x82, 0x7a, 0x0b, 0xdf, 0x5c, 0x4d, 0x67, 0x10, 0x20, 0xb7, 0x19, 0xc8, 0x32, 0x9e, 0x17, + 0x20, 0x3d, 0x9f, 0xe5, 0xb1, 0xf6, 0x70, 0xa3, 0x07, 0x39, 0x76, 0xc3, 0x85, 0xbe, 0x90, 0x1f, + 0xcd, 0x84, 0xab, 0xbe, 0x94, 0x81, 0x0e, 0xdd, 0x8d, 0xe1, 0x45, 0x06, 0x54, 0xc3, 0x25, 0x0a, + 0xc4, 0xee, 0xb7, 0x1e, 0x6b, 0x0f, 0xd7, 0xb4, 0x0f, 0xb4, 0x8d, 0x5f, 0xe5, 0x20, 0xc7, 0x52, + 0xbb, 0xe8, 0x1c, 0x20, 0xb8, 0xed, 0x89, 0xf6, 0x2e, 0x76, 0x7f, 0x14, 0xed, 0x5d, 0xfc, 0xa2, + 0x08, 0x37, 0x19, 0xe8, 0x22, 0x9e, 0xa3, 0xa0, 0x2c, 0x63, 0xdc, 0x62, 0x49, 0x70, 0x6a, 0xc7, + 0xbf, 0xd1, 0x44, 0x66, 0x9b, 0xaf, 0x25, 0x94, 0x24, 0x2d, 0x74, 0xe5, 0x13, 0x9d, 0x0e, 0x09, + 0xd7, 0x3d, 0xf8, 0xbb, 0x0c, 0xb0, 0x85, 0xeb, 0x01, 0xa0, 0xc3, 0x38, 0x1e, 0x6b, 0x0f, 0xbf, + 0x68, 0xe0, 0x05, 0x61, 0xe5, 0x48, 0x0d, 0xfa, 0x11, 0xd4, 0xc2, 0x57, 0x1a, 0xe8, 0x5e, 0x02, + 0x56, 0xf4, 0x66, 0xa4, 0xf9, 0xf6, 0xd5, 0x4c, 0x42, 0xa7, 0x15, 0xa6, 0x93, 0x00, 0xe7, 0xc8, + 0xe7, 0x84, 0x8c, 0x0c, 0xca, 0x24, 0xc6, 0x00, 0xfd, 0x83, 0x26, 0x6e, 0x9c, 0x82, 0x3b, 0x0a, + 0x94, 0x24, 0x3d, 0x76, 0x03, 0xd2, 0xbc, 0x7f, 0x0d, 0x97, 0x50, 0xe2, 0x0f, 0x99, 0x12, 0x1f, + 0xe2, 0xc5, 0x40, 0x09, 0xcf, 0x1c, 0x12, 0xcf, 0x16, 0x5a, 0x7c, 0x71, 0x1b, 0xdf, 0x08, 0x19, + 0x27, 0x54, 0x1b, 0x0c, 0x16, 0xbf, 0x67, 0x48, 0x1c, 0xac, 0xd0, 0xbd, 0x45, 0xe2, 0x60, 0x85, + 0x2f, 0x29, 0x92, 0x06, 0x8b, 0xdf, 0x2a, 0x24, 0x0d, 0x96, 0x5f, 0xb3, 0xf1, 0x7f, 0xb3, 0x50, + 0xd8, 0xe4, 0x6f, 0xc2, 0x91, 0x0d, 0x25, 0x3f, 0x4d, 0x8f, 0x56, 0x92, 0xf2, 0x8c, 0xc1, 0xb1, + 0xa6, 0x79, 0x37, 0xb5, 0x5e, 0x28, 0xf4, 0x16, 0x53, 0xe8, 0x16, 0x5e, 0xa6, 0xc8, 0xe2, 0xd9, + 0x79, 0x8b, 0x27, 0xb3, 0x5a, 0x46, 0xbf, 0x4f, 0x0d, 0xf1, 0xa7, 0x50, 0x51, 0xf3, 0xe8, 0xe8, + 0xad, 0xc4, 0xdc, 0xa6, 0x9a, 0x8a, 0x6f, 0xe2, 0xab, 0x58, 0x04, 0xf2, 0xdb, 0x0c, 0x79, 0x05, + 0xdf, 0x4c, 0x40, 0x76, 0x18, 0x6b, 0x08, 0x9c, 0xe7, 0xc0, 0x93, 0xc1, 0x43, 0x29, 0xf6, 0x64, + 0xf0, 0x70, 0x0a, 0xfd, 0x4a, 0xf0, 0x31, 0x63, 0xa5, 0xe0, 0x2e, 0x40, 0x90, 0xc9, 0x46, 0x89, + 0xb6, 0x54, 0xce, 0x75, 0x51, 0xe7, 0x10, 0x4f, 0x82, 0x63, 0xcc, 0x60, 0xc5, 0xbc, 0x8b, 0xc0, + 0x0e, 0x4c, 0xd7, 0xe3, 0x0b, 0xb3, 0x1a, 0x4a, 0x4d, 0xa3, 0xc4, 0xfe, 0x84, 0xf3, 0xdb, 0xcd, + 0x7b, 0x57, 0xf2, 0x08, 0xf4, 0xfb, 0x0c, 0xfd, 0x2e, 0x6e, 0x26, 0xa0, 0x8f, 0x38, 0x2f, 0x9d, + 0x6c, 0xff, 0x9f, 0x87, 0xf2, 0x73, 0xc3, 0xb4, 0x3c, 0x62, 0x19, 0x56, 0x8f, 0xa0, 0x63, 0xc8, + 0xb1, 0x48, 0x1d, 0x75, 0xc4, 0x6a, 0xda, 0x36, 0xea, 0x88, 0x43, 0x39, 0x4d, 0xbc, 0xca, 0x80, + 0x9b, 0x78, 0x89, 0x02, 0x0f, 0x03, 0xd1, 0x2d, 0x96, 0x8a, 0xa4, 0x9d, 0x3e, 0x81, 0xbc, 0xb8, + 0xed, 0x8b, 0x08, 0x0a, 0x25, 0x7f, 0x9a, 0xb7, 0x93, 0x2b, 0x93, 0xe6, 0xb2, 0x0a, 0xe3, 0x32, + 0x3e, 0x8a, 0x33, 0x01, 0x08, 0x72, 0xec, 0xd1, 0x11, 0x8d, 0xa5, 0xe4, 0x9b, 0xab, 0xe9, 0x0c, + 0x49, 0x36, 0x55, 0x31, 0xfb, 0x3e, 0x2f, 0xc5, 0xfd, 0x63, 0x98, 0x7d, 0x66, 0xb8, 0x67, 0x28, + 0x12, 0x7b, 0x95, 0xb7, 0x62, 0xcd, 0x66, 0x52, 0x95, 0x40, 0xb9, 0xcb, 0x50, 0x6e, 0x72, 0x57, + 0xa6, 0xa2, 0x9c, 0x19, 0x2e, 0x0d, 0x6a, 0xa8, 0x0f, 0x79, 0xfe, 0x74, 0x2c, 0x6a, 0xbf, 0xd0, + 0xf3, 0xb3, 0xa8, 0xfd, 0xc2, 0xaf, 0xcd, 0xae, 0x47, 0x19, 0x41, 0x51, 0xbe, 0xd5, 0x42, 0x91, + 0x8b, 0xfb, 0xc8, 0xbb, 0xae, 0xe6, 0x4a, 0x5a, 0xb5, 0xc0, 0xba, 0xc7, 0xb0, 0xee, 0xe0, 0x46, + 0x6c, 0xac, 0x04, 0xe7, 0x63, 0xed, 0xe1, 0x07, 0x1a, 0xfa, 0x11, 0x40, 0x70, 0x2d, 0x11, 0x5b, + 0x81, 0xd1, 0x1b, 0x8e, 0xd8, 0x0a, 0x8c, 0xdd, 0x68, 0xe0, 0x75, 0x86, 0xbb, 0x86, 0xef, 0x45, + 0x71, 0x3d, 0xc7, 0xb0, 0xdc, 0x13, 0xe2, 0xbc, 0xcf, 0xb3, 0xac, 0xee, 0x99, 0x39, 0xa2, 0x5d, + 0x76, 0xa0, 0xe4, 0x67, 0x9d, 0xa3, 0xde, 0x36, 0x9a, 0x0d, 0x8f, 0x7a, 0xdb, 0x58, 0xba, 0x3a, + 0xec, 0x76, 0x42, 0xb3, 0x45, 0xb2, 0xd2, 0x05, 0xf8, 0x8b, 0x3a, 0xcc, 0xd2, 0x5d, 0x37, 0xdd, + 0x9c, 0x04, 0x79, 0x93, 0x68, 0xef, 0x63, 0x59, 0xd4, 0x68, 0xef, 0xe3, 0x29, 0x97, 0xf0, 0xe6, + 0x84, 0xfd, 0x82, 0x89, 0xa7, 0x28, 0x68, 0x4f, 0x6d, 0x28, 0x2b, 0x89, 0x15, 0x94, 0x20, 0x2c, + 0x9c, 0x9e, 0x8d, 0x86, 0xbb, 0x84, 0xac, 0x0c, 0xbe, 0xc5, 0xf0, 0x96, 0x78, 0xb8, 0x63, 0x78, + 0x7d, 0xce, 0x41, 0x01, 0x45, 0xef, 0xc4, 0xba, 0x4f, 0xe8, 0x5d, 0x78, 0xed, 0xaf, 0xa6, 0x33, + 0xa4, 0xf6, 0x2e, 0x58, 0xf8, 0xaf, 0xa0, 0xa2, 0xa6, 0x57, 0x50, 0x82, 0xf2, 0x91, 0x94, 0x72, + 0x34, 0x8e, 0x24, 0x65, 0x67, 0xc2, 0x9e, 0xcd, 0xff, 0x49, 0x98, 0x64, 0xa3, 0xc0, 0x03, 0x28, + 0x88, 0x7c, 0x4b, 0x92, 0x49, 0xc3, 0xe9, 0xe7, 0x24, 0x93, 0x46, 0x92, 0x35, 0xe1, 0xdd, 0x33, + 0x43, 0xa4, 0x47, 0x4a, 0x19, 0xab, 0x05, 0xda, 0x53, 0xe2, 0xa5, 0xa1, 0x05, 0x99, 0xcc, 0x34, + 0x34, 0xe5, 0x38, 0x9f, 0x86, 0x76, 0x4a, 0x3c, 0xe1, 0x0f, 0xe4, 0x31, 0x19, 0xa5, 0x08, 0x53, + 0xe3, 0x23, 0xbe, 0x8a, 0x25, 0xe9, 0x70, 0x13, 0x00, 0xca, 0xe0, 0x78, 0x01, 0x10, 0x64, 0x83, + 0xa2, 0x3b, 0xd6, 0xc4, 0x2c, 0x78, 0x74, 0xc7, 0x9a, 0x9c, 0x50, 0x0a, 0xfb, 0xbe, 0x00, 0x97, + 0x9f, 0xad, 0x28, 0xf2, 0xcf, 0x34, 0x40, 0xf1, 0xc4, 0x11, 0x7a, 0x94, 0x2c, 0x3d, 0x31, 0xb7, + 0xde, 0x7c, 0xef, 0xf5, 0x98, 0x93, 0xc2, 0x59, 0xa0, 0x52, 0x8f, 0x71, 0x8f, 0x5e, 0x51, 0xa5, + 0xfe, 0x52, 0x83, 0x6a, 0x28, 0xeb, 0x84, 0x1e, 0xa4, 0x8c, 0x69, 0x24, 0xe5, 0xde, 0x7c, 0xe7, + 0x5a, 0xbe, 0xa4, 0xad, 0xbc, 0x32, 0x03, 0xe4, 0x99, 0xe6, 0x27, 0x1a, 0xd4, 0xc2, 0x59, 0x2a, + 0x94, 0x22, 0x3b, 0x96, 0xb2, 0x6f, 0xae, 0x5d, 0xcf, 0x78, 0xf5, 0xf0, 0x04, 0xc7, 0x99, 0x01, + 0x14, 0x44, 0x5e, 0x2b, 0x69, 0xe2, 0x87, 0x93, 0xfd, 0x49, 0x13, 0x3f, 0x92, 0x14, 0x4b, 0x98, + 0xf8, 0x8e, 0x3d, 0x20, 0xca, 0x32, 0x13, 0x89, 0xaf, 0x34, 0xb4, 0xab, 0x97, 0x59, 0x24, 0x6b, + 0x96, 0x86, 0x16, 0x2c, 0x33, 0x99, 0xf1, 0x42, 0x29, 0xc2, 0xae, 0x59, 0x66, 0xd1, 0x84, 0x59, + 0xc2, 0x32, 0x63, 0x80, 0xca, 0x32, 0x0b, 0x72, 0x53, 0x49, 0xcb, 0x2c, 0x76, 0x77, 0x91, 0xb4, + 0xcc, 0xe2, 0xe9, 0xad, 0x84, 0x71, 0x64, 0xb8, 0xa1, 0x65, 0xb6, 0x90, 0x90, 0xc6, 0x42, 0xef, + 0xa5, 0x18, 0x31, 0xf1, 0x4a, 0xa4, 0xf9, 0xfe, 0x6b, 0x72, 0xa7, 0xce, 0x71, 0x6e, 0x7e, 0x39, + 0xc7, 0xff, 0x56, 0x83, 0xc5, 0xa4, 0x14, 0x18, 0x4a, 0xc1, 0x49, 0xb9, 0x4a, 0x69, 0xae, 0xbf, + 0x2e, 0xfb, 0xd5, 0xd6, 0xf2, 0x67, 0xfd, 0x93, 0xfa, 0xbf, 0x7e, 0xb5, 0xa2, 0xfd, 0xc7, 0x57, + 0x2b, 0xda, 0x7f, 0x7f, 0xb5, 0xa2, 0xfd, 0xdd, 0xff, 0xac, 0xcc, 0x1c, 0xe7, 0xd9, 0x0f, 0x8d, + 0xbf, 0xfd, 0x9b, 0x00, 0x00, 0x00, 0xff, 0xff, 0x7f, 0xc1, 0x5c, 0x9c, 0xf3, 0x3c, 0x00, 0x00, } diff --git a/etcdserver/etcdserverpb/rpc.proto b/c/etcdserver/etcdserverpb/rpc.proto similarity index 99% rename from etcdserver/etcdserverpb/rpc.proto rename to c/etcdserver/etcdserverpb/rpc.proto index 1c27bafae11f..9cab6a75ed92 100644 --- a/etcdserver/etcdserverpb/rpc.proto +++ b/c/etcdserver/etcdserverpb/rpc.proto @@ -2,8 +2,8 @@ syntax = "proto3"; package etcdserverpb; import "gogoproto/gogo.proto"; -import "etcd/mvcc/mvccpb/kv.proto"; -import "etcd/auth/authpb/auth.proto"; +import "etcd/c/mvcc/mvccpb/kv.proto"; +import "etcd/c/auth/authpb/auth.proto"; // for grpc-gateway import "google/api/annotations.proto"; diff --git a/c/go.mod b/c/go.mod new file mode 100644 index 000000000000..e6f1c5b54b18 --- /dev/null +++ b/c/go.mod @@ -0,0 +1,20 @@ +module go.etcd.io/etcd/c/v3 + +go 1.14 + +require ( + github.com/coreos/go-semver v0.2.0 + github.com/coreos/go-systemd/v22 v22.1.0 + github.com/gogo/protobuf v1.2.1 + github.com/golang/protobuf v1.3.2 + github.com/google/uuid v1.0.0 + github.com/grpc-ecosystem/grpc-gateway v1.9.5 + github.com/json-iterator/go v1.1.10 + github.com/modern-go/reflect2 v1.0.1 + go.uber.org/zap v1.14.1 + golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7 + google.golang.org/grpc v1.26.0 + sigs.k8s.io/yaml v1.1.0 +) + +replace go.etcd.io/etcd/v3 => ../NO_SUCH_DEPENDENCY diff --git a/c/go.sum b/c/go.sum new file mode 100644 index 000000000000..b633eaae19e2 --- /dev/null +++ b/c/go.sum @@ -0,0 +1,113 @@ +cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/coreos/go-semver v0.2.0 h1:3Jm3tLmsgAYcjC+4Up7hJrFBPr+n7rAqYeSw/SZazuY= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd/v22 v22.1.0 h1:kq/SbG2BCKLkDKkjQf5OWwKWUKj1lgs3lFI4PxnR5lg= +github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/gogo/protobuf v1.2.1 h1:/s5zKNz0uPFCZ5hddgPdo2TK2TVrUNMn0OOX8/aZMTE= +github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.2 h1:6nsPYzhq5kReh6QImI3k5qWzO4PEbvbIW2cwSfR/6xs= +github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.0.0 h1:b4Gk+7WdP/d3HZH8EJsZpvV7EtDOgaZLtnaNGIu1adA= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/grpc-ecosystem/grpc-gateway v1.9.5 h1:UImYN5qQ8tuGpGE16ZmjvcTtTw24zw1QAp/SlnNrZhI= +github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/json-iterator/go v1.1.10 h1:Kz6Cvnvv2wGdaG/V8yMvfkmNiXq9Ya2KUv4rouJJr68= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= +github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421 h1:ZqeYNhU3OHLH3mGKHDcjJRFFRrJa6eAM5H+CtDdOsPc= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9AWI= +github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= +github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +go.uber.org/atomic v1.6.0 h1:Ezj3JGmsOnG1MoRWQkPBsKLe9DwWD9QeXzTRzzldNVk= +go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= +go.uber.org/multierr v1.5.0 h1:KCa4XfM8CWFCpxXRGok+Q0SS/0XBhMDbHHGABQLvD2A= +go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= +go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= +go.uber.org/zap v1.14.1 h1:nYDKopTbvAPq/NrUVZwT15y2lpROBiLLyoRTbXOYWOo= +go.uber.org/zap v1.14.1/go.mod h1:Mb2vm2krFEG5DV0W9qcHBYFtp/Wku1cvYaqPsS/WYfc= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= +golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= +golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7 h1:fHDIZ2oxGnUZRN6WgWFCbYBjH9uqVPRCUVUDhs0wnbA= +golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190412213103-97732733099d h1:+R4KGOnez64A81RvjARKc4UT5/tI9ujCIVX+P5KiHuI= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= +golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 h1:gSJIx1SDwno+2ElGhA4+qG2zF97qiUzTM+rQ0klBOcE= +google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= +google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.26.0 h1:2dTRdpdFEEhJYQD8EMLB61nnrzSCTbG38PhqdhvOltg= +google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= +gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= +gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw= +gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= +sigs.k8s.io/yaml v1.1.0 h1:4A07+ZFc2wgJwo8YNlQpr1rVlgUDlxXHhPJciaPY5gs= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= diff --git a/mvcc/mvccpb/kv.pb.go b/c/mvcc/mvccpb/kv.pb.go similarity index 100% rename from mvcc/mvccpb/kv.pb.go rename to c/mvcc/mvccpb/kv.pb.go diff --git a/mvcc/mvccpb/kv.proto b/c/mvcc/mvccpb/kv.proto similarity index 100% rename from mvcc/mvccpb/kv.proto rename to c/mvcc/mvccpb/kv.proto diff --git a/pkg/fileutil/dir_unix.go b/c/pkg/fileutil/dir_unix.go similarity index 100% rename from pkg/fileutil/dir_unix.go rename to c/pkg/fileutil/dir_unix.go diff --git a/pkg/fileutil/dir_windows.go b/c/pkg/fileutil/dir_windows.go similarity index 100% rename from pkg/fileutil/dir_windows.go rename to c/pkg/fileutil/dir_windows.go diff --git a/pkg/fileutil/doc.go b/c/pkg/fileutil/doc.go similarity index 100% rename from pkg/fileutil/doc.go rename to c/pkg/fileutil/doc.go diff --git a/pkg/fileutil/fileutil.go b/c/pkg/fileutil/fileutil.go similarity index 100% rename from pkg/fileutil/fileutil.go rename to c/pkg/fileutil/fileutil.go diff --git a/pkg/fileutil/fileutil_test.go b/c/pkg/fileutil/fileutil_test.go similarity index 100% rename from pkg/fileutil/fileutil_test.go rename to c/pkg/fileutil/fileutil_test.go diff --git a/pkg/fileutil/lock.go b/c/pkg/fileutil/lock.go similarity index 100% rename from pkg/fileutil/lock.go rename to c/pkg/fileutil/lock.go diff --git a/pkg/fileutil/lock_flock.go b/c/pkg/fileutil/lock_flock.go similarity index 100% rename from pkg/fileutil/lock_flock.go rename to c/pkg/fileutil/lock_flock.go diff --git a/pkg/fileutil/lock_linux.go b/c/pkg/fileutil/lock_linux.go similarity index 100% rename from pkg/fileutil/lock_linux.go rename to c/pkg/fileutil/lock_linux.go diff --git a/pkg/fileutil/lock_linux_test.go b/c/pkg/fileutil/lock_linux_test.go similarity index 100% rename from pkg/fileutil/lock_linux_test.go rename to c/pkg/fileutil/lock_linux_test.go diff --git a/pkg/fileutil/lock_plan9.go b/c/pkg/fileutil/lock_plan9.go similarity index 100% rename from pkg/fileutil/lock_plan9.go rename to c/pkg/fileutil/lock_plan9.go diff --git a/pkg/fileutil/lock_solaris.go b/c/pkg/fileutil/lock_solaris.go similarity index 100% rename from pkg/fileutil/lock_solaris.go rename to c/pkg/fileutil/lock_solaris.go diff --git a/pkg/fileutil/lock_test.go b/c/pkg/fileutil/lock_test.go similarity index 100% rename from pkg/fileutil/lock_test.go rename to c/pkg/fileutil/lock_test.go diff --git a/pkg/fileutil/lock_unix.go b/c/pkg/fileutil/lock_unix.go similarity index 100% rename from pkg/fileutil/lock_unix.go rename to c/pkg/fileutil/lock_unix.go diff --git a/pkg/fileutil/lock_windows.go b/c/pkg/fileutil/lock_windows.go similarity index 100% rename from pkg/fileutil/lock_windows.go rename to c/pkg/fileutil/lock_windows.go diff --git a/pkg/fileutil/preallocate.go b/c/pkg/fileutil/preallocate.go similarity index 100% rename from pkg/fileutil/preallocate.go rename to c/pkg/fileutil/preallocate.go diff --git a/pkg/fileutil/preallocate_darwin.go b/c/pkg/fileutil/preallocate_darwin.go similarity index 100% rename from pkg/fileutil/preallocate_darwin.go rename to c/pkg/fileutil/preallocate_darwin.go diff --git a/pkg/fileutil/preallocate_test.go b/c/pkg/fileutil/preallocate_test.go similarity index 100% rename from pkg/fileutil/preallocate_test.go rename to c/pkg/fileutil/preallocate_test.go diff --git a/pkg/fileutil/preallocate_unix.go b/c/pkg/fileutil/preallocate_unix.go similarity index 100% rename from pkg/fileutil/preallocate_unix.go rename to c/pkg/fileutil/preallocate_unix.go diff --git a/pkg/fileutil/preallocate_unsupported.go b/c/pkg/fileutil/preallocate_unsupported.go similarity index 100% rename from pkg/fileutil/preallocate_unsupported.go rename to c/pkg/fileutil/preallocate_unsupported.go diff --git a/pkg/fileutil/purge.go b/c/pkg/fileutil/purge.go similarity index 100% rename from pkg/fileutil/purge.go rename to c/pkg/fileutil/purge.go diff --git a/pkg/fileutil/purge_test.go b/c/pkg/fileutil/purge_test.go similarity index 100% rename from pkg/fileutil/purge_test.go rename to c/pkg/fileutil/purge_test.go diff --git a/pkg/fileutil/read_dir.go b/c/pkg/fileutil/read_dir.go similarity index 100% rename from pkg/fileutil/read_dir.go rename to c/pkg/fileutil/read_dir.go diff --git a/pkg/fileutil/read_dir_test.go b/c/pkg/fileutil/read_dir_test.go similarity index 100% rename from pkg/fileutil/read_dir_test.go rename to c/pkg/fileutil/read_dir_test.go diff --git a/pkg/fileutil/sync.go b/c/pkg/fileutil/sync.go similarity index 100% rename from pkg/fileutil/sync.go rename to c/pkg/fileutil/sync.go diff --git a/pkg/fileutil/sync_darwin.go b/c/pkg/fileutil/sync_darwin.go similarity index 100% rename from pkg/fileutil/sync_darwin.go rename to c/pkg/fileutil/sync_darwin.go diff --git a/pkg/fileutil/sync_linux.go b/c/pkg/fileutil/sync_linux.go similarity index 100% rename from pkg/fileutil/sync_linux.go rename to c/pkg/fileutil/sync_linux.go diff --git a/pkg/logutil/discard_logger.go b/c/pkg/logutil/discard_logger.go similarity index 100% rename from pkg/logutil/discard_logger.go rename to c/pkg/logutil/discard_logger.go diff --git a/pkg/logutil/doc.go b/c/pkg/logutil/doc.go similarity index 100% rename from pkg/logutil/doc.go rename to c/pkg/logutil/doc.go diff --git a/pkg/logutil/log_level.go b/c/pkg/logutil/log_level.go similarity index 100% rename from pkg/logutil/log_level.go rename to c/pkg/logutil/log_level.go diff --git a/pkg/logutil/logger.go b/c/pkg/logutil/logger.go similarity index 100% rename from pkg/logutil/logger.go rename to c/pkg/logutil/logger.go diff --git a/pkg/logutil/logger_test.go b/c/pkg/logutil/logger_test.go similarity index 97% rename from pkg/logutil/logger_test.go rename to c/pkg/logutil/logger_test.go index 9ec21da88492..c67e4cd494f0 100644 --- a/pkg/logutil/logger_test.go +++ b/c/pkg/logutil/logger_test.go @@ -20,7 +20,7 @@ import ( "strings" "testing" - "go.etcd.io/etcd/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/pkg/logutil" "google.golang.org/grpc/grpclog" ) diff --git a/pkg/logutil/zap.go b/c/pkg/logutil/zap.go similarity index 100% rename from pkg/logutil/zap.go rename to c/pkg/logutil/zap.go diff --git a/pkg/logutil/zap_grpc.go b/c/pkg/logutil/zap_grpc.go similarity index 100% rename from pkg/logutil/zap_grpc.go rename to c/pkg/logutil/zap_grpc.go diff --git a/pkg/logutil/zap_grpc_test.go b/c/pkg/logutil/zap_grpc_test.go similarity index 100% rename from pkg/logutil/zap_grpc_test.go rename to c/pkg/logutil/zap_grpc_test.go diff --git a/pkg/logutil/zap_journal.go b/c/pkg/logutil/zap_journal.go similarity index 98% rename from pkg/logutil/zap_journal.go rename to c/pkg/logutil/zap_journal.go index 96250de429f2..8f5661f34c4a 100644 --- a/pkg/logutil/zap_journal.go +++ b/c/pkg/logutil/zap_journal.go @@ -24,7 +24,7 @@ import ( "os" "path/filepath" - "go.etcd.io/etcd/v3/pkg/systemd" + "go.etcd.io/etcd/c/v3/pkg/systemd" "github.com/coreos/go-systemd/v22/journal" "go.uber.org/zap/zapcore" diff --git a/pkg/logutil/zap_journal_test.go b/c/pkg/logutil/zap_journal_test.go similarity index 100% rename from pkg/logutil/zap_journal_test.go rename to c/pkg/logutil/zap_journal_test.go diff --git a/pkg/mock/mockserver/doc.go b/c/pkg/mock/mockserver/doc.go similarity index 100% rename from pkg/mock/mockserver/doc.go rename to c/pkg/mock/mockserver/doc.go diff --git a/pkg/mock/mockserver/mockserver.go b/c/pkg/mock/mockserver/mockserver.go similarity index 98% rename from pkg/mock/mockserver/mockserver.go rename to c/pkg/mock/mockserver/mockserver.go index c68cb3c2cd2d..53f7f09e69b8 100644 --- a/pkg/mock/mockserver/mockserver.go +++ b/c/pkg/mock/mockserver/mockserver.go @@ -22,7 +22,7 @@ import ( "os" "sync" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" "google.golang.org/grpc/resolver" diff --git a/pkg/pathutil/path.go b/c/pkg/pathutil/path.go similarity index 100% rename from pkg/pathutil/path.go rename to c/pkg/pathutil/path.go diff --git a/pkg/pathutil/path_test.go b/c/pkg/pathutil/path_test.go similarity index 100% rename from pkg/pathutil/path_test.go rename to c/pkg/pathutil/path_test.go diff --git a/pkg/srv/srv.go b/c/pkg/srv/srv.go similarity index 99% rename from pkg/srv/srv.go rename to c/pkg/srv/srv.go index 5e20f40993a2..c0973314d569 100644 --- a/pkg/srv/srv.go +++ b/c/pkg/srv/srv.go @@ -21,7 +21,7 @@ import ( "net/url" "strings" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) var ( diff --git a/pkg/srv/srv_test.go b/c/pkg/srv/srv_test.go similarity index 99% rename from pkg/srv/srv_test.go rename to c/pkg/srv/srv_test.go index f7b7b1ab72f5..d467a05293fa 100644 --- a/pkg/srv/srv_test.go +++ b/c/pkg/srv/srv_test.go @@ -21,7 +21,7 @@ import ( "strings" "testing" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestSRVGetCluster(t *testing.T) { diff --git a/pkg/systemd/doc.go b/c/pkg/systemd/doc.go similarity index 100% rename from pkg/systemd/doc.go rename to c/pkg/systemd/doc.go diff --git a/pkg/systemd/journal.go b/c/pkg/systemd/journal.go similarity index 100% rename from pkg/systemd/journal.go rename to c/pkg/systemd/journal.go diff --git a/pkg/testutil/assert.go b/c/pkg/testutil/assert.go similarity index 100% rename from pkg/testutil/assert.go rename to c/pkg/testutil/assert.go diff --git a/pkg/testutil/leak.go b/c/pkg/testutil/leak.go similarity index 94% rename from pkg/testutil/leak.go rename to c/pkg/testutil/leak.go index 74a0ebbe50c0..1a94fa34d21d 100644 --- a/pkg/testutil/leak.go +++ b/c/pkg/testutil/leak.go @@ -21,7 +21,7 @@ CheckLeakedGoroutine verifies tests do not leave any leaky goroutines. It returns true when there are goroutines still running(leaking) after all tests. - import "go.etcd.io/etcd/v3/pkg/testutil" + import "go.etcd.io/etcd/c/v3/pkg/testutil" func TestMain(m *testing.M) { v := m.Run() @@ -125,8 +125,8 @@ func interestingGoroutines() (gs []string) { strings.Contains(stack, "created by testing.RunTests") || strings.Contains(stack, "testing.Main(") || strings.Contains(stack, "runtime.goexit") || - strings.Contains(stack, "go.etcd.io/etcd/v3/pkg/testutil.interestingGoroutines") || - strings.Contains(stack, "go.etcd.io/etcd/v3/pkg/logutil.(*MergeLogger).outputLoop") || + strings.Contains(stack, "go.etcd.io/etcd/c/v3/pkg/testutil.interestingGoroutines") || + strings.Contains(stack, "go.etcd.io/etcd/c/v3/pkg/logutil.(*MergeLogger).outputLoop") || strings.Contains(stack, "github.com/golang/glog.(*loggingT).flushDaemon") || strings.Contains(stack, "created by runtime.gc") || strings.Contains(stack, "runtime.MHeap_Scavenger") { diff --git a/pkg/testutil/leak_test.go b/c/pkg/testutil/leak_test.go similarity index 100% rename from pkg/testutil/leak_test.go rename to c/pkg/testutil/leak_test.go diff --git a/pkg/testutil/pauseable_handler.go b/c/pkg/testutil/pauseable_handler.go similarity index 100% rename from pkg/testutil/pauseable_handler.go rename to c/pkg/testutil/pauseable_handler.go diff --git a/pkg/testutil/recorder.go b/c/pkg/testutil/recorder.go similarity index 100% rename from pkg/testutil/recorder.go rename to c/pkg/testutil/recorder.go diff --git a/pkg/testutil/testutil.go b/c/pkg/testutil/testutil.go similarity index 100% rename from pkg/testutil/testutil.go rename to c/pkg/testutil/testutil.go diff --git a/pkg/testutil/var.go b/c/pkg/testutil/var.go similarity index 100% rename from pkg/testutil/var.go rename to c/pkg/testutil/var.go diff --git a/pkg/tlsutil/cipher_suites.go b/c/pkg/tlsutil/cipher_suites.go similarity index 100% rename from pkg/tlsutil/cipher_suites.go rename to c/pkg/tlsutil/cipher_suites.go diff --git a/pkg/tlsutil/cipher_suites_test.go b/c/pkg/tlsutil/cipher_suites_test.go similarity index 100% rename from pkg/tlsutil/cipher_suites_test.go rename to c/pkg/tlsutil/cipher_suites_test.go diff --git a/pkg/tlsutil/doc.go b/c/pkg/tlsutil/doc.go similarity index 100% rename from pkg/tlsutil/doc.go rename to c/pkg/tlsutil/doc.go diff --git a/pkg/tlsutil/tlsutil.go b/c/pkg/tlsutil/tlsutil.go similarity index 100% rename from pkg/tlsutil/tlsutil.go rename to c/pkg/tlsutil/tlsutil.go diff --git a/pkg/transport/doc.go b/c/pkg/transport/doc.go similarity index 100% rename from pkg/transport/doc.go rename to c/pkg/transport/doc.go diff --git a/pkg/transport/keepalive_listener.go b/c/pkg/transport/keepalive_listener.go similarity index 100% rename from pkg/transport/keepalive_listener.go rename to c/pkg/transport/keepalive_listener.go diff --git a/pkg/transport/keepalive_listener_test.go b/c/pkg/transport/keepalive_listener_test.go similarity index 100% rename from pkg/transport/keepalive_listener_test.go rename to c/pkg/transport/keepalive_listener_test.go diff --git a/pkg/transport/limit_listen.go b/c/pkg/transport/limit_listen.go similarity index 100% rename from pkg/transport/limit_listen.go rename to c/pkg/transport/limit_listen.go diff --git a/pkg/transport/listener.go b/c/pkg/transport/listener.go similarity index 99% rename from pkg/transport/listener.go rename to c/pkg/transport/listener.go index af0bc1e5d94a..6f1387179c14 100644 --- a/pkg/transport/listener.go +++ b/c/pkg/transport/listener.go @@ -31,8 +31,8 @@ import ( "strings" "time" - "go.etcd.io/etcd/v3/pkg/fileutil" - "go.etcd.io/etcd/v3/pkg/tlsutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/tlsutil" "go.uber.org/zap" ) diff --git a/pkg/transport/listener_test.go b/c/pkg/transport/listener_test.go similarity index 100% rename from pkg/transport/listener_test.go rename to c/pkg/transport/listener_test.go diff --git a/pkg/transport/listener_tls.go b/c/pkg/transport/listener_tls.go similarity index 100% rename from pkg/transport/listener_tls.go rename to c/pkg/transport/listener_tls.go diff --git a/pkg/transport/timeout_conn.go b/c/pkg/transport/timeout_conn.go similarity index 100% rename from pkg/transport/timeout_conn.go rename to c/pkg/transport/timeout_conn.go diff --git a/pkg/transport/timeout_dialer.go b/c/pkg/transport/timeout_dialer.go similarity index 100% rename from pkg/transport/timeout_dialer.go rename to c/pkg/transport/timeout_dialer.go diff --git a/pkg/transport/timeout_dialer_test.go b/c/pkg/transport/timeout_dialer_test.go similarity index 100% rename from pkg/transport/timeout_dialer_test.go rename to c/pkg/transport/timeout_dialer_test.go diff --git a/pkg/transport/timeout_listener.go b/c/pkg/transport/timeout_listener.go similarity index 100% rename from pkg/transport/timeout_listener.go rename to c/pkg/transport/timeout_listener.go diff --git a/pkg/transport/timeout_listener_test.go b/c/pkg/transport/timeout_listener_test.go similarity index 100% rename from pkg/transport/timeout_listener_test.go rename to c/pkg/transport/timeout_listener_test.go diff --git a/pkg/transport/timeout_transport.go b/c/pkg/transport/timeout_transport.go similarity index 100% rename from pkg/transport/timeout_transport.go rename to c/pkg/transport/timeout_transport.go diff --git a/pkg/transport/timeout_transport_test.go b/c/pkg/transport/timeout_transport_test.go similarity index 100% rename from pkg/transport/timeout_transport_test.go rename to c/pkg/transport/timeout_transport_test.go diff --git a/pkg/transport/tls.go b/c/pkg/transport/tls.go similarity index 100% rename from pkg/transport/tls.go rename to c/pkg/transport/tls.go diff --git a/pkg/transport/transport.go b/c/pkg/transport/transport.go similarity index 100% rename from pkg/transport/transport.go rename to c/pkg/transport/transport.go diff --git a/pkg/transport/transport_test.go b/c/pkg/transport/transport_test.go similarity index 100% rename from pkg/transport/transport_test.go rename to c/pkg/transport/transport_test.go diff --git a/pkg/transport/unix_listener.go b/c/pkg/transport/unix_listener.go similarity index 100% rename from pkg/transport/unix_listener.go rename to c/pkg/transport/unix_listener.go diff --git a/pkg/types/doc.go b/c/pkg/types/doc.go similarity index 100% rename from pkg/types/doc.go rename to c/pkg/types/doc.go diff --git a/pkg/types/id.go b/c/pkg/types/id.go similarity index 100% rename from pkg/types/id.go rename to c/pkg/types/id.go diff --git a/pkg/types/id_test.go b/c/pkg/types/id_test.go similarity index 100% rename from pkg/types/id_test.go rename to c/pkg/types/id_test.go diff --git a/pkg/types/set.go b/c/pkg/types/set.go similarity index 100% rename from pkg/types/set.go rename to c/pkg/types/set.go diff --git a/pkg/types/set_test.go b/c/pkg/types/set_test.go similarity index 100% rename from pkg/types/set_test.go rename to c/pkg/types/set_test.go diff --git a/pkg/types/slice.go b/c/pkg/types/slice.go similarity index 100% rename from pkg/types/slice.go rename to c/pkg/types/slice.go diff --git a/pkg/types/slice_test.go b/c/pkg/types/slice_test.go similarity index 100% rename from pkg/types/slice_test.go rename to c/pkg/types/slice_test.go diff --git a/pkg/types/urls.go b/c/pkg/types/urls.go similarity index 100% rename from pkg/types/urls.go rename to c/pkg/types/urls.go diff --git a/pkg/types/urls_test.go b/c/pkg/types/urls_test.go similarity index 99% rename from pkg/types/urls_test.go rename to c/pkg/types/urls_test.go index 98a698ff7e5b..2188f204c314 100644 --- a/pkg/types/urls_test.go +++ b/c/pkg/types/urls_test.go @@ -18,7 +18,7 @@ import ( "reflect" "testing" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestNewURLs(t *testing.T) { diff --git a/pkg/types/urlsmap.go b/c/pkg/types/urlsmap.go similarity index 100% rename from pkg/types/urlsmap.go rename to c/pkg/types/urlsmap.go diff --git a/pkg/types/urlsmap_test.go b/c/pkg/types/urlsmap_test.go similarity index 99% rename from pkg/types/urlsmap_test.go rename to c/pkg/types/urlsmap_test.go index 8ffd06240185..5b84a60e0b14 100644 --- a/pkg/types/urlsmap_test.go +++ b/c/pkg/types/urlsmap_test.go @@ -15,7 +15,7 @@ package types import ( - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" "reflect" "testing" ) diff --git a/version/version.go b/c/version/version.go similarity index 100% rename from version/version.go rename to c/version/version.go diff --git a/client/main_test.go b/client/main_test.go deleted file mode 100644 index af5cbcd17e4d..000000000000 --- a/client/main_test.go +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright 2017 The etcd Authors -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package client_test - -import ( - "fmt" - "net/http" - "os" - "regexp" - "strings" - "testing" - "time" - - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/transport" -) - -var exampleEndpoints []string -var exampleTransport *http.Transport - -// TestMain sets up an etcd cluster if running the examples. -func TestMain(m *testing.M) { - useCluster, hasRunArg := false, false // default to running only Test* - for _, arg := range os.Args { - if strings.HasPrefix(arg, "-test.run=") { - exp := strings.Split(arg, "=")[1] - match, err := regexp.MatchString(exp, "Example") - useCluster = (err == nil && match) || strings.Contains(exp, "Example") - hasRunArg = true - break - } - } - if !hasRunArg { - // force only running Test* if no args given to avoid leak false - // positives from having a long-running cluster for the examples. - os.Args = append(os.Args, "-test.run=Test") - } - - var v int - if useCluster { - tr, trerr := transport.NewTransport(transport.TLSInfo{}, time.Second) - if trerr != nil { - fmt.Fprintf(os.Stderr, "%v", trerr) - os.Exit(1) - } - cfg := integration.ClusterConfig{Size: 1} - clus := integration.NewClusterV3(nil, &cfg) - exampleEndpoints = []string{clus.Members[0].URL()} - exampleTransport = tr - v = m.Run() - clus.Terminate(nil) - if err := testutil.CheckAfterTest(time.Second); err != nil { - fmt.Fprintf(os.Stderr, "%v", err) - os.Exit(1) - } - } else { - v = m.Run() - } - - if v == 0 && testutil.CheckLeakedGoroutine() { - os.Exit(1) - } - os.Exit(v) -} diff --git a/clientv3/main_test.go b/clientv3/main_test.go deleted file mode 100644 index 5b0f39232342..000000000000 --- a/clientv3/main_test.go +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2016 The etcd Authors -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -package clientv3_test - -import ( - "fmt" - "os" - "regexp" - "strings" - "testing" - "time" - - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" -) - -// TestMain sets up an etcd cluster if running the examples. -func TestMain(m *testing.M) { - useCluster, hasRunArg := false, false // default to running only Test* - for _, arg := range os.Args { - if strings.HasPrefix(arg, "-test.run=") { - exp := strings.Split(arg, "=")[1] - match, err := regexp.MatchString(exp, "Example") - useCluster = (err == nil && match) || strings.Contains(exp, "Example") - hasRunArg = true - break - } - } - if !hasRunArg { - // force only running Test* if no args given to avoid leak false - // positives from having a long-running cluster for the examples. - os.Args = append(os.Args, "-test.run=Test") - } - - var v int - if useCluster { - cfg := integration.ClusterConfig{Size: 3} - clus := integration.NewClusterV3(nil, &cfg) - endpoints = make([]string, 3) - for i := range endpoints { - endpoints[i] = clus.Client(i).Endpoints()[0] - } - v = m.Run() - clus.Terminate(nil) - if err := testutil.CheckAfterTest(time.Second); err != nil { - fmt.Fprintf(os.Stderr, "%v", err) - os.Exit(1) - } - } else { - v = m.Run() - } - - if v == 0 && testutil.CheckLeakedGoroutine() { - os.Exit(1) - } - os.Exit(v) -} diff --git a/contrib/raftexample/raft.go b/contrib/raftexample/raft.go index 26bdafb978a9..5a5b6abfbbd5 100644 --- a/contrib/raftexample/raft.go +++ b/contrib/raftexample/raft.go @@ -24,11 +24,11 @@ import ( "strconv" "time" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/rafthttp" "go.etcd.io/etcd/v3/etcdserver/api/snap" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" - "go.etcd.io/etcd/v3/pkg/fileutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" "go.etcd.io/etcd/v3/wal" diff --git a/contrib/recipes/barrier.go b/contrib/recipes/barrier.go index 0f82b983361c..82849c25a7da 100644 --- a/contrib/recipes/barrier.go +++ b/contrib/recipes/barrier.go @@ -17,8 +17,8 @@ package recipe import ( "context" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) // Barrier creates a key in etcd to block processes, then deletes the key to diff --git a/contrib/recipes/client.go b/contrib/recipes/client.go index d97d0303f98d..00a3bbfa4123 100644 --- a/contrib/recipes/client.go +++ b/contrib/recipes/client.go @@ -18,8 +18,8 @@ import ( "context" "errors" - v3 "go.etcd.io/etcd/v3/clientv3" - spb "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + spb "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) var ( diff --git a/contrib/recipes/double_barrier.go b/contrib/recipes/double_barrier.go index 393b22a200ec..04dc2325e956 100644 --- a/contrib/recipes/double_barrier.go +++ b/contrib/recipes/double_barrier.go @@ -17,9 +17,9 @@ package recipe import ( "context" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) // DoubleBarrier blocks processes on Enter until an expected count enters, then diff --git a/contrib/recipes/key.go b/contrib/recipes/key.go index 3a634a3fbf55..808236187af4 100644 --- a/contrib/recipes/key.go +++ b/contrib/recipes/key.go @@ -20,8 +20,8 @@ import ( "strings" "time" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + v3 "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" ) // RemoteKV is a key/revision pair created by the client and stored on etcd diff --git a/contrib/recipes/priority_queue.go b/contrib/recipes/priority_queue.go index cd7b9ecf0974..3980f6d065fc 100644 --- a/contrib/recipes/priority_queue.go +++ b/contrib/recipes/priority_queue.go @@ -18,8 +18,8 @@ import ( "context" "fmt" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) // PriorityQueue implements a multi-reader, multi-writer distributed queue. diff --git a/contrib/recipes/queue.go b/contrib/recipes/queue.go index ef609965b6e9..3068c7d3950c 100644 --- a/contrib/recipes/queue.go +++ b/contrib/recipes/queue.go @@ -17,8 +17,8 @@ package recipe import ( "context" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) // Queue implements a multi-reader, multi-writer distributed queue. diff --git a/contrib/recipes/rwmutex.go b/contrib/recipes/rwmutex.go index 6b3a96473fce..2a2cfd04d138 100644 --- a/contrib/recipes/rwmutex.go +++ b/contrib/recipes/rwmutex.go @@ -17,9 +17,9 @@ package recipe import ( "context" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) type RWMutex struct { diff --git a/contrib/recipes/watch.go b/contrib/recipes/watch.go index 0ef394cd7ad1..747d82a243ce 100644 --- a/contrib/recipes/watch.go +++ b/contrib/recipes/watch.go @@ -17,8 +17,8 @@ package recipe import ( "context" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) // WaitEvents waits on a key until it observes the given events and returns the final one. diff --git a/embed/config.go b/embed/config.go index c501a66f270e..c6a4daefdfb2 100644 --- a/embed/config.go +++ b/embed/config.go @@ -26,15 +26,15 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/pkg/srv" + "go.etcd.io/etcd/c/v3/pkg/tlsutil" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/v3compactor" "go.etcd.io/etcd/v3/pkg/flags" - "go.etcd.io/etcd/v3/pkg/logutil" "go.etcd.io/etcd/v3/pkg/netutil" - "go.etcd.io/etcd/v3/pkg/srv" - "go.etcd.io/etcd/v3/pkg/tlsutil" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" bolt "go.etcd.io/bbolt" "go.uber.org/zap" diff --git a/embed/config_logging.go b/embed/config_logging.go index b0201615b140..c26aeefc5c9b 100644 --- a/embed/config_logging.go +++ b/embed/config_logging.go @@ -19,7 +19,7 @@ import ( "fmt" "sync" - "go.etcd.io/etcd/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/pkg/logutil" "go.uber.org/zap" "go.uber.org/zap/zapcore" diff --git a/embed/config_logging_journal_unix.go b/embed/config_logging_journal_unix.go index db70ab9d4b8b..db669947fdf3 100644 --- a/embed/config_logging_journal_unix.go +++ b/embed/config_logging_journal_unix.go @@ -20,7 +20,7 @@ import ( "fmt" "os" - "go.etcd.io/etcd/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/pkg/logutil" "go.uber.org/zap/zapcore" ) diff --git a/embed/config_test.go b/embed/config_test.go index 874ec92231dc..4dce2c52a729 100644 --- a/embed/config_test.go +++ b/embed/config_test.go @@ -22,7 +22,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/transport" "sigs.k8s.io/yaml" ) diff --git a/embed/etcd.go b/embed/etcd.go index 815468e1b623..a84674981a9a 100644 --- a/embed/etcd.go +++ b/embed/etcd.go @@ -29,6 +29,9 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/etcdhttp" "go.etcd.io/etcd/v3/etcdserver/api/rafthttp" @@ -38,9 +41,6 @@ import ( "go.etcd.io/etcd/v3/etcdserver/api/v3rpc" "go.etcd.io/etcd/v3/pkg/debugutil" runtimeutil "go.etcd.io/etcd/v3/pkg/runtime" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" - "go.etcd.io/etcd/v3/version" grpc_prometheus "github.com/grpc-ecosystem/go-grpc-prometheus" "github.com/soheilhy/cmux" diff --git a/embed/serve.go b/embed/serve.go index 71d892c5f717..a9f6e8a97819 100644 --- a/embed/serve.go +++ b/embed/serve.go @@ -23,7 +23,9 @@ import ( "net/http" "strings" - "go.etcd.io/etcd/v3/clientv3/credentials" + "go.etcd.io/etcd/c/v3/clientv3/credentials" + etcdservergw "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb/gw" + "go.etcd.io/etcd/c/v3/pkg/transport" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/v3client" "go.etcd.io/etcd/v3/etcdserver/api/v3election" @@ -33,10 +35,8 @@ import ( "go.etcd.io/etcd/v3/etcdserver/api/v3lock/v3lockpb" v3lockgw "go.etcd.io/etcd/v3/etcdserver/api/v3lock/v3lockpb/gw" "go.etcd.io/etcd/v3/etcdserver/api/v3rpc" - etcdservergw "go.etcd.io/etcd/v3/etcdserver/etcdserverpb/gw" "go.etcd.io/etcd/v3/pkg/debugutil" "go.etcd.io/etcd/v3/pkg/httputil" - "go.etcd.io/etcd/v3/pkg/transport" gw "github.com/grpc-ecosystem/grpc-gateway/runtime" "github.com/soheilhy/cmux" diff --git a/etcdctl/README.md b/etcdctl/README.md index 5ec84dfd4281..535f400ab5ca 100644 --- a/etcdctl/README.md +++ b/etcdctl/README.md @@ -1682,6 +1682,6 @@ backward compatibility for `JSON` format and the format in non-interactive mode. [etcd]: https://github.com/coreos/etcd [READMEv2]: READMEv2.md [v2key]: ../store/node_extern.go#L28-L37 -[v3key]: ../mvcc/mvccpb/kv.proto#L12-L29 -[etcdrpc]: ../etcdserver/etcdserverpb/rpc.proto -[storagerpc]: ../mvcc/mvccpb/kv.proto +[v3key]: ../c/mvcc/mvccpb/kv.proto#L12-L29 +[etcdrpc]: ../c/etcdserver/etcdserverpb/rpc.proto +[storagerpc]: ../c/mvcc/mvccpb/kv.proto diff --git a/etcdctl/ctlv2/command/auth_commands.go b/etcdctl/ctlv2/command/auth_commands.go index 25ea55838a2d..137bc5e035b5 100644 --- a/etcdctl/ctlv2/command/auth_commands.go +++ b/etcdctl/ctlv2/command/auth_commands.go @@ -20,7 +20,7 @@ import ( "strings" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) func NewAuthCommands() cli.Command { diff --git a/etcdctl/ctlv2/command/backup_command.go b/etcdctl/ctlv2/command/backup_command.go index 3b6e0c5763c6..166f264b4916 100644 --- a/etcdctl/ctlv2/command/backup_command.go +++ b/etcdctl/ctlv2/command/backup_command.go @@ -23,10 +23,10 @@ import ( "regexp" "time" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/snap" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/idutil" "go.etcd.io/etcd/v3/pkg/pbutil" "go.etcd.io/etcd/v3/raft/raftpb" diff --git a/etcdctl/ctlv2/command/cluster_health.go b/etcdctl/ctlv2/command/cluster_health.go index d4e2b382b938..83f6d22f61ee 100644 --- a/etcdctl/ctlv2/command/cluster_health.go +++ b/etcdctl/ctlv2/command/cluster_health.go @@ -24,7 +24,7 @@ import ( "os/signal" "time" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" "github.com/urfave/cli" ) diff --git a/etcdctl/ctlv2/command/error.go b/etcdctl/ctlv2/command/error.go index 1035518ce354..94025e410272 100644 --- a/etcdctl/ctlv2/command/error.go +++ b/etcdctl/ctlv2/command/error.go @@ -20,7 +20,7 @@ import ( "os" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) const ( diff --git a/etcdctl/ctlv2/command/exec_watch_command.go b/etcdctl/ctlv2/command/exec_watch_command.go index f3d1f8ca2984..1cc5296baa90 100644 --- a/etcdctl/ctlv2/command/exec_watch_command.go +++ b/etcdctl/ctlv2/command/exec_watch_command.go @@ -22,7 +22,7 @@ import ( "os/exec" "os/signal" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" "github.com/urfave/cli" ) diff --git a/etcdctl/ctlv2/command/format.go b/etcdctl/ctlv2/command/format.go index b75fa2562306..560d856373ac 100644 --- a/etcdctl/ctlv2/command/format.go +++ b/etcdctl/ctlv2/command/format.go @@ -19,7 +19,7 @@ import ( "fmt" "os" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // printResponseKey only supports to print key correctly. diff --git a/etcdctl/ctlv2/command/get_command.go b/etcdctl/ctlv2/command/get_command.go index 19420d411032..e7f292f1e688 100644 --- a/etcdctl/ctlv2/command/get_command.go +++ b/etcdctl/ctlv2/command/get_command.go @@ -20,7 +20,7 @@ import ( "os" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // NewGetCommand returns the CLI command for "get". diff --git a/etcdctl/ctlv2/command/ls_command.go b/etcdctl/ctlv2/command/ls_command.go index 0b2047c716b2..0ad93676a9b6 100644 --- a/etcdctl/ctlv2/command/ls_command.go +++ b/etcdctl/ctlv2/command/ls_command.go @@ -18,7 +18,7 @@ import ( "fmt" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) func NewLsCommand() cli.Command { diff --git a/etcdctl/ctlv2/command/mk_command.go b/etcdctl/ctlv2/command/mk_command.go index b0df56b1bf13..9b522127d370 100644 --- a/etcdctl/ctlv2/command/mk_command.go +++ b/etcdctl/ctlv2/command/mk_command.go @@ -20,7 +20,7 @@ import ( "time" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // NewMakeCommand returns the CLI command for "mk". diff --git a/etcdctl/ctlv2/command/mkdir_command.go b/etcdctl/ctlv2/command/mkdir_command.go index 7ebeb59c32ac..cd7fe6eeafc2 100644 --- a/etcdctl/ctlv2/command/mkdir_command.go +++ b/etcdctl/ctlv2/command/mkdir_command.go @@ -19,7 +19,7 @@ import ( "time" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // NewMakeDirCommand returns the CLI command for "mkdir". diff --git a/etcdctl/ctlv2/command/rm_command.go b/etcdctl/ctlv2/command/rm_command.go index 9cae4808e944..7458e3b29ed8 100644 --- a/etcdctl/ctlv2/command/rm_command.go +++ b/etcdctl/ctlv2/command/rm_command.go @@ -18,7 +18,7 @@ import ( "errors" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // NewRemoveCommand returns the CLI command for "rm". diff --git a/etcdctl/ctlv2/command/rmdir_command.go b/etcdctl/ctlv2/command/rmdir_command.go index b46036d315c4..6bbed32f64e3 100644 --- a/etcdctl/ctlv2/command/rmdir_command.go +++ b/etcdctl/ctlv2/command/rmdir_command.go @@ -18,7 +18,7 @@ import ( "errors" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // NewRemoveDirCommand returns the CLI command for "rmdir". diff --git a/etcdctl/ctlv2/command/role_commands.go b/etcdctl/ctlv2/command/role_commands.go index 6a5213d43f1a..a3082f8ff6da 100644 --- a/etcdctl/ctlv2/command/role_commands.go +++ b/etcdctl/ctlv2/command/role_commands.go @@ -21,8 +21,8 @@ import ( "strings" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" - "go.etcd.io/etcd/v3/pkg/pathutil" + "go.etcd.io/etcd/c/v3/client" + "go.etcd.io/etcd/c/v3/pkg/pathutil" ) func NewRoleCommands() cli.Command { diff --git a/etcdctl/ctlv2/command/set_command.go b/etcdctl/ctlv2/command/set_command.go index 3ce9c481bf61..b8a5b63bb90d 100644 --- a/etcdctl/ctlv2/command/set_command.go +++ b/etcdctl/ctlv2/command/set_command.go @@ -20,7 +20,7 @@ import ( "time" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // NewSetCommand returns the CLI command for "set". diff --git a/etcdctl/ctlv2/command/set_dir_command.go b/etcdctl/ctlv2/command/set_dir_command.go index fc463133ccaf..ab225c8e4ee8 100644 --- a/etcdctl/ctlv2/command/set_dir_command.go +++ b/etcdctl/ctlv2/command/set_dir_command.go @@ -16,7 +16,7 @@ package command import ( "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // NewSetDirCommand returns the CLI command for "setDir". diff --git a/etcdctl/ctlv2/command/update_command.go b/etcdctl/ctlv2/command/update_command.go index d5aa3026a6b5..775e50eb5479 100644 --- a/etcdctl/ctlv2/command/update_command.go +++ b/etcdctl/ctlv2/command/update_command.go @@ -20,7 +20,7 @@ import ( "time" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // NewUpdateCommand returns the CLI command for "update". diff --git a/etcdctl/ctlv2/command/update_dir_command.go b/etcdctl/ctlv2/command/update_dir_command.go index e5ed1b8e2a9e..57cb9314c835 100644 --- a/etcdctl/ctlv2/command/update_dir_command.go +++ b/etcdctl/ctlv2/command/update_dir_command.go @@ -19,7 +19,7 @@ import ( "time" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) // NewUpdateDirCommand returns the CLI command for "updatedir". diff --git a/etcdctl/ctlv2/command/user_commands.go b/etcdctl/ctlv2/command/user_commands.go index f509ec3c4353..62e863926400 100644 --- a/etcdctl/ctlv2/command/user_commands.go +++ b/etcdctl/ctlv2/command/user_commands.go @@ -21,7 +21,7 @@ import ( "github.com/bgentry/speakeasy" "github.com/urfave/cli" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) func NewUserCommands() cli.Command { diff --git a/etcdctl/ctlv2/command/util.go b/etcdctl/ctlv2/command/util.go index 498c9df3bc54..4869f2c7f1dc 100644 --- a/etcdctl/ctlv2/command/util.go +++ b/etcdctl/ctlv2/command/util.go @@ -28,8 +28,8 @@ import ( "syscall" "time" - "go.etcd.io/etcd/v3/client" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/client" + "go.etcd.io/etcd/c/v3/pkg/transport" "github.com/bgentry/speakeasy" "github.com/urfave/cli" diff --git a/etcdctl/ctlv2/command/watch_command.go b/etcdctl/ctlv2/command/watch_command.go index 147c56c53400..65b1d69328f0 100644 --- a/etcdctl/ctlv2/command/watch_command.go +++ b/etcdctl/ctlv2/command/watch_command.go @@ -21,7 +21,7 @@ import ( "os" "os/signal" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" "github.com/urfave/cli" ) diff --git a/etcdctl/ctlv2/ctl.go b/etcdctl/ctlv2/ctl.go index 06adec2ab88d..2d9d1e218c0e 100644 --- a/etcdctl/ctlv2/ctl.go +++ b/etcdctl/ctlv2/ctl.go @@ -20,8 +20,8 @@ import ( "os" "time" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/etcdctl/ctlv2/command" - "go.etcd.io/etcd/v3/version" "github.com/urfave/cli" ) diff --git a/etcdctl/ctlv3/command/alarm_command.go b/etcdctl/ctlv3/command/alarm_command.go index 2a82127f021a..05ef2a278ee1 100644 --- a/etcdctl/ctlv3/command/alarm_command.go +++ b/etcdctl/ctlv3/command/alarm_command.go @@ -18,7 +18,7 @@ import ( "fmt" "github.com/spf13/cobra" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" ) // NewAlarmCommand returns the cobra command for "alarm". diff --git a/etcdctl/ctlv3/command/auth_command.go b/etcdctl/ctlv3/command/auth_command.go index 3ec7cb2b406f..540564abd648 100644 --- a/etcdctl/ctlv3/command/auth_command.go +++ b/etcdctl/ctlv3/command/auth_command.go @@ -18,7 +18,7 @@ import ( "fmt" "github.com/spf13/cobra" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" ) // NewAuthCommand returns the cobra command for "auth". diff --git a/etcdctl/ctlv3/command/check.go b/etcdctl/ctlv3/command/check.go index ec748a256ee6..e1ae94c79ac8 100644 --- a/etcdctl/ctlv3/command/check.go +++ b/etcdctl/ctlv3/command/check.go @@ -25,7 +25,7 @@ import ( "sync" "time" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/report" "github.com/spf13/cobra" diff --git a/etcdctl/ctlv3/command/compaction_command.go b/etcdctl/ctlv3/command/compaction_command.go index 33820b6e877d..e585c4d4d501 100644 --- a/etcdctl/ctlv3/command/compaction_command.go +++ b/etcdctl/ctlv3/command/compaction_command.go @@ -19,7 +19,7 @@ import ( "strconv" "github.com/spf13/cobra" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) var compactPhysical bool diff --git a/etcdctl/ctlv3/command/del_command.go b/etcdctl/ctlv3/command/del_command.go index 391f48eb9def..250f84d6d8be 100644 --- a/etcdctl/ctlv3/command/del_command.go +++ b/etcdctl/ctlv3/command/del_command.go @@ -18,7 +18,7 @@ import ( "fmt" "github.com/spf13/cobra" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) var ( diff --git a/etcdctl/ctlv3/command/elect_command.go b/etcdctl/ctlv3/command/elect_command.go index 819a632018e1..afaca4ee4757 100644 --- a/etcdctl/ctlv3/command/elect_command.go +++ b/etcdctl/ctlv3/command/elect_command.go @@ -21,8 +21,8 @@ import ( "os/signal" "syscall" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" "github.com/spf13/cobra" ) diff --git a/etcdctl/ctlv3/command/ep_command.go b/etcdctl/ctlv3/command/ep_command.go index 7cb6bb1491f2..4d62cdc7de37 100644 --- a/etcdctl/ctlv3/command/ep_command.go +++ b/etcdctl/ctlv3/command/ep_command.go @@ -20,8 +20,8 @@ import ( "sync" "time" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + v3 "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" "go.etcd.io/etcd/v3/pkg/flags" "github.com/spf13/cobra" diff --git a/etcdctl/ctlv3/command/error.go b/etcdctl/ctlv3/command/error.go index 86d343773b3e..3481ea7bf0c0 100644 --- a/etcdctl/ctlv3/command/error.go +++ b/etcdctl/ctlv3/command/error.go @@ -18,7 +18,7 @@ import ( "fmt" "os" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) const ( diff --git a/etcdctl/ctlv3/command/get_command.go b/etcdctl/ctlv3/command/get_command.go index 4f1b2826bc4d..4acb501372b0 100644 --- a/etcdctl/ctlv3/command/get_command.go +++ b/etcdctl/ctlv3/command/get_command.go @@ -19,7 +19,7 @@ import ( "strings" "github.com/spf13/cobra" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) var ( diff --git a/etcdctl/ctlv3/command/global.go b/etcdctl/ctlv3/command/global.go index aafc154bacc0..aa99ee44d121 100644 --- a/etcdctl/ctlv3/command/global.go +++ b/etcdctl/ctlv3/command/global.go @@ -25,10 +25,10 @@ import ( "time" "github.com/bgentry/speakeasy" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/srv" + "go.etcd.io/etcd/c/v3/pkg/transport" "go.etcd.io/etcd/v3/pkg/flags" - "go.etcd.io/etcd/v3/pkg/srv" - "go.etcd.io/etcd/v3/pkg/transport" "github.com/spf13/cobra" "github.com/spf13/pflag" diff --git a/etcdctl/ctlv3/command/lease_command.go b/etcdctl/ctlv3/command/lease_command.go index b15cee8d67e0..fe0b48e495a3 100644 --- a/etcdctl/ctlv3/command/lease_command.go +++ b/etcdctl/ctlv3/command/lease_command.go @@ -19,7 +19,7 @@ import ( "fmt" "strconv" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" "github.com/spf13/cobra" ) diff --git a/etcdctl/ctlv3/command/lock_command.go b/etcdctl/ctlv3/command/lock_command.go index 6eef22caf3fc..bcff81b2609b 100644 --- a/etcdctl/ctlv3/command/lock_command.go +++ b/etcdctl/ctlv3/command/lock_command.go @@ -23,8 +23,8 @@ import ( "os/signal" "syscall" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" "github.com/spf13/cobra" ) diff --git a/etcdctl/ctlv3/command/make_mirror_command.go b/etcdctl/ctlv3/command/make_mirror_command.go index eea33e179635..547a3dd3a3e4 100644 --- a/etcdctl/ctlv3/command/make_mirror_command.go +++ b/etcdctl/ctlv3/command/make_mirror_command.go @@ -23,10 +23,10 @@ import ( "sync/atomic" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/mirror" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/mirror" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "github.com/spf13/cobra" ) diff --git a/etcdctl/ctlv3/command/member_command.go b/etcdctl/ctlv3/command/member_command.go index c621d361e3a9..64bafe7343bb 100644 --- a/etcdctl/ctlv3/command/member_command.go +++ b/etcdctl/ctlv3/command/member_command.go @@ -21,7 +21,7 @@ import ( "strings" "github.com/spf13/cobra" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) var ( diff --git a/etcdctl/ctlv3/command/migrate_command.go b/etcdctl/ctlv3/command/migrate_command.go index 12620d136970..adc9726b8bb0 100644 --- a/etcdctl/ctlv3/command/migrate_command.go +++ b/etcdctl/ctlv3/command/migrate_command.go @@ -24,19 +24,19 @@ import ( "path/filepath" "time" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/snap" "go.etcd.io/etcd/v3/etcdserver/api/v2error" "go.etcd.io/etcd/v3/etcdserver/api/v2store" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/pbutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" "go.etcd.io/etcd/v3/wal" "go.etcd.io/etcd/v3/wal/walpb" diff --git a/etcdctl/ctlv3/command/move_leader_command.go b/etcdctl/ctlv3/command/move_leader_command.go index 0df8668f2b2b..0d56155d8e67 100644 --- a/etcdctl/ctlv3/command/move_leader_command.go +++ b/etcdctl/ctlv3/command/move_leader_command.go @@ -19,7 +19,7 @@ import ( "strconv" "github.com/spf13/cobra" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) // NewMoveLeaderCommand returns the cobra command for "move-leader". diff --git a/etcdctl/ctlv3/command/printer.go b/etcdctl/ctlv3/command/printer.go index 2bb6086c8381..43b024ede002 100644 --- a/etcdctl/ctlv3/command/printer.go +++ b/etcdctl/ctlv3/command/printer.go @@ -19,9 +19,9 @@ import ( "fmt" "strings" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/snapshot" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/v3/etcdctl/ctlv3/command/snapshot" "github.com/dustin/go-humanize" ) diff --git a/etcdctl/ctlv3/command/printer_fields.go b/etcdctl/ctlv3/command/printer_fields.go index 38f5c7d93d28..4eec1c2b57c9 100644 --- a/etcdctl/ctlv3/command/printer_fields.go +++ b/etcdctl/ctlv3/command/printer_fields.go @@ -17,10 +17,10 @@ package command import ( "fmt" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/snapshot" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - spb "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + spb "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/v3/etcdctl/ctlv3/command/snapshot" ) type fieldsPrinter struct{ printer } diff --git a/etcdctl/ctlv3/command/printer_json.go b/etcdctl/ctlv3/command/printer_json.go index a368d3c84b07..d462921e9a94 100644 --- a/etcdctl/ctlv3/command/printer_json.go +++ b/etcdctl/ctlv3/command/printer_json.go @@ -21,8 +21,8 @@ import ( "os" "strconv" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/snapshot" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/v3/etcdctl/ctlv3/command/snapshot" ) type jsonPrinter struct { diff --git a/etcdctl/ctlv3/command/printer_protobuf.go b/etcdctl/ctlv3/command/printer_protobuf.go index 9c2446c8482b..cf0d9cb924a4 100644 --- a/etcdctl/ctlv3/command/printer_protobuf.go +++ b/etcdctl/ctlv3/command/printer_protobuf.go @@ -18,9 +18,9 @@ import ( "fmt" "os" - v3 "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - mvccpb "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + mvccpb "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) type pbPrinter struct{ printer } diff --git a/etcdctl/ctlv3/command/printer_simple.go b/etcdctl/ctlv3/command/printer_simple.go index 1ed5c21dabac..134c9aab81c5 100644 --- a/etcdctl/ctlv3/command/printer_simple.go +++ b/etcdctl/ctlv3/command/printer_simple.go @@ -19,10 +19,10 @@ import ( "os" "strings" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/snapshot" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/types" + v3 "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/v3/etcdctl/ctlv3/command/snapshot" ) type simplePrinter struct { diff --git a/etcdctl/ctlv3/command/printer_table.go b/etcdctl/ctlv3/command/printer_table.go index c58024393e4c..d2cebbbad5d6 100644 --- a/etcdctl/ctlv3/command/printer_table.go +++ b/etcdctl/ctlv3/command/printer_table.go @@ -17,8 +17,8 @@ package command import ( "os" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/snapshot" + v3 "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/v3/etcdctl/ctlv3/command/snapshot" "github.com/olekukonko/tablewriter" ) diff --git a/etcdctl/ctlv3/command/put_command.go b/etcdctl/ctlv3/command/put_command.go index 41d1016751ba..e605930be8df 100644 --- a/etcdctl/ctlv3/command/put_command.go +++ b/etcdctl/ctlv3/command/put_command.go @@ -20,7 +20,7 @@ import ( "strconv" "github.com/spf13/cobra" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) var ( diff --git a/etcdctl/ctlv3/command/role_command.go b/etcdctl/ctlv3/command/role_command.go index ad6883246e9a..5c4c1bf4a859 100644 --- a/etcdctl/ctlv3/command/role_command.go +++ b/etcdctl/ctlv3/command/role_command.go @@ -19,7 +19,7 @@ import ( "fmt" "github.com/spf13/cobra" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) var ( diff --git a/clientv3/snapshot/doc.go b/etcdctl/ctlv3/command/snapshot/doc.go similarity index 100% rename from clientv3/snapshot/doc.go rename to etcdctl/ctlv3/command/snapshot/doc.go diff --git a/clientv3/snapshot/member_test.go b/etcdctl/ctlv3/command/snapshot/member_test.go similarity index 98% rename from clientv3/snapshot/member_test.go rename to etcdctl/ctlv3/command/snapshot/member_test.go index e6fefdcdb43f..cd8a6d9f4f29 100644 --- a/clientv3/snapshot/member_test.go +++ b/etcdctl/ctlv3/command/snapshot/member_test.go @@ -22,10 +22,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/embed" "go.etcd.io/etcd/v3/etcdserver" - "go.etcd.io/etcd/v3/pkg/testutil" ) // TestSnapshotV3RestoreMultiMemberAdd ensures that multiple members diff --git a/clientv3/snapshot/testdata/corrupted_backup.db b/etcdctl/ctlv3/command/snapshot/testdata/corrupted_backup.db similarity index 100% rename from clientv3/snapshot/testdata/corrupted_backup.db rename to etcdctl/ctlv3/command/snapshot/testdata/corrupted_backup.db diff --git a/clientv3/snapshot/util.go b/etcdctl/ctlv3/command/snapshot/util.go similarity index 100% rename from clientv3/snapshot/util.go rename to etcdctl/ctlv3/command/snapshot/util.go diff --git a/clientv3/snapshot/v3_snapshot.go b/etcdctl/ctlv3/command/snapshot/v3_snapshot.go similarity index 98% rename from clientv3/snapshot/v3_snapshot.go rename to etcdctl/ctlv3/command/snapshot/v3_snapshot.go index 0e883e7727b3..37cf5568b4ae 100644 --- a/clientv3/snapshot/v3_snapshot.go +++ b/etcdctl/ctlv3/command/snapshot/v3_snapshot.go @@ -30,19 +30,19 @@ import ( "github.com/dustin/go-humanize" bolt "go.etcd.io/bbolt" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/snap" "go.etcd.io/etcd/v3/etcdserver/api/v2store" "go.etcd.io/etcd/v3/etcdserver/cindex" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/traceutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" "go.etcd.io/etcd/v3/wal" diff --git a/clientv3/snapshot/v3_snapshot_test.go b/etcdctl/ctlv3/command/snapshot/v3_snapshot_test.go similarity index 98% rename from clientv3/snapshot/v3_snapshot_test.go rename to etcdctl/ctlv3/command/snapshot/v3_snapshot_test.go index d001d7eb18fa..e9cdeca3fafc 100644 --- a/clientv3/snapshot/v3_snapshot_test.go +++ b/etcdctl/ctlv3/command/snapshot/v3_snapshot_test.go @@ -25,10 +25,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/embed" - "go.etcd.io/etcd/v3/pkg/fileutil" - "go.etcd.io/etcd/v3/pkg/testutil" "go.uber.org/zap" ) diff --git a/etcdctl/ctlv3/command/snapshot_command.go b/etcdctl/ctlv3/command/snapshot_command.go index 06eb33112b61..7818258358af 100644 --- a/etcdctl/ctlv3/command/snapshot_command.go +++ b/etcdctl/ctlv3/command/snapshot_command.go @@ -20,7 +20,7 @@ import ( "path/filepath" "strings" - "go.etcd.io/etcd/v3/clientv3/snapshot" + "go.etcd.io/etcd/v3/etcdctl/ctlv3/command/snapshot" "github.com/spf13/cobra" "go.uber.org/zap" diff --git a/etcdctl/ctlv3/command/txn_command.go b/etcdctl/ctlv3/command/txn_command.go index a04a06f7ec1f..4e56470f112b 100644 --- a/etcdctl/ctlv3/command/txn_command.go +++ b/etcdctl/ctlv3/command/txn_command.go @@ -22,8 +22,8 @@ import ( "strconv" "strings" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "github.com/spf13/cobra" ) diff --git a/etcdctl/ctlv3/command/user_command.go b/etcdctl/ctlv3/command/user_command.go index 876c1010c80c..7bba180911a9 100644 --- a/etcdctl/ctlv3/command/user_command.go +++ b/etcdctl/ctlv3/command/user_command.go @@ -21,7 +21,7 @@ import ( "github.com/bgentry/speakeasy" "github.com/spf13/cobra" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) var ( diff --git a/etcdctl/ctlv3/command/util.go b/etcdctl/ctlv3/command/util.go index f256ef01b2c2..6bd8e749f1f5 100644 --- a/etcdctl/ctlv3/command/util.go +++ b/etcdctl/ctlv3/command/util.go @@ -25,8 +25,8 @@ import ( "strings" "time" - v3 "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/mvcc/mvccpb" + v3 "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "github.com/spf13/cobra" ) diff --git a/etcdctl/ctlv3/command/version_command.go b/etcdctl/ctlv3/command/version_command.go index e59c64ca0d42..fa9b14d8274f 100644 --- a/etcdctl/ctlv3/command/version_command.go +++ b/etcdctl/ctlv3/command/version_command.go @@ -17,7 +17,7 @@ package command import ( "fmt" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/version" "github.com/spf13/cobra" ) diff --git a/etcdctl/ctlv3/command/watch_command.go b/etcdctl/ctlv3/command/watch_command.go index edfecd922b57..294baed1416e 100644 --- a/etcdctl/ctlv3/command/watch_command.go +++ b/etcdctl/ctlv3/command/watch_command.go @@ -23,7 +23,7 @@ import ( "os/exec" "strings" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "github.com/spf13/cobra" ) diff --git a/etcdctl/ctlv3/help.go b/etcdctl/ctlv3/help.go index 229d0209218a..457d07b87f77 100644 --- a/etcdctl/ctlv3/help.go +++ b/etcdctl/ctlv3/help.go @@ -25,7 +25,7 @@ import ( "text/tabwriter" "text/template" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/version" "github.com/spf13/cobra" "github.com/spf13/pflag" diff --git a/etcdmain/config.go b/etcdmain/config.go index 3fc21bc94a17..c38fad1088b7 100644 --- a/etcdmain/config.go +++ b/etcdmain/config.go @@ -24,10 +24,10 @@ import ( "os" "runtime" + "go.etcd.io/etcd/c/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/embed" "go.etcd.io/etcd/v3/pkg/flags" - "go.etcd.io/etcd/v3/pkg/logutil" - "go.etcd.io/etcd/v3/version" "go.uber.org/zap" "sigs.k8s.io/yaml" diff --git a/etcdmain/etcd.go b/etcdmain/etcd.go index 72b88a3545f8..d3e6507022cb 100644 --- a/etcdmain/etcd.go +++ b/etcdmain/etcd.go @@ -26,15 +26,15 @@ import ( "strings" "time" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/embed" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/etcdhttp" "go.etcd.io/etcd/v3/etcdserver/api/v2discovery" - "go.etcd.io/etcd/v3/pkg/fileutil" pkgioutil "go.etcd.io/etcd/v3/pkg/ioutil" "go.etcd.io/etcd/v3/pkg/osutil" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/proxy/httpproxy" "go.uber.org/zap" diff --git a/etcdmain/grpc_proxy.go b/etcdmain/grpc_proxy.go index 50e3d9a64fce..354bce589d7d 100644 --- a/etcdmain/grpc_proxy.go +++ b/etcdmain/grpc_proxy.go @@ -29,17 +29,17 @@ import ( "path/filepath" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/leasing" - "go.etcd.io/etcd/v3/clientv3/namespace" - "go.etcd.io/etcd/v3/clientv3/ordering" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/leasing" + "go.etcd.io/etcd/c/v3/clientv3/namespace" + "go.etcd.io/etcd/c/v3/clientv3/ordering" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/pkg/transport" "go.etcd.io/etcd/v3/embed" "go.etcd.io/etcd/v3/etcdserver/api/v3election/v3electionpb" "go.etcd.io/etcd/v3/etcdserver/api/v3lock/v3lockpb" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/pkg/debugutil" - "go.etcd.io/etcd/v3/pkg/logutil" - "go.etcd.io/etcd/v3/pkg/transport" "go.etcd.io/etcd/v3/proxy/grpcproxy" grpc_prometheus "github.com/grpc-ecosystem/go-grpc-prometheus" diff --git a/etcdmain/util.go b/etcdmain/util.go index af84321bab1c..63aa1909304e 100644 --- a/etcdmain/util.go +++ b/etcdmain/util.go @@ -18,8 +18,8 @@ import ( "fmt" "os" - "go.etcd.io/etcd/v3/pkg/srv" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/srv" + "go.etcd.io/etcd/c/v3/pkg/transport" "go.uber.org/zap" ) diff --git a/etcdserver/api/capability.go b/etcdserver/api/capability.go index a0edd5b4e650..c799fd654d48 100644 --- a/etcdserver/api/capability.go +++ b/etcdserver/api/capability.go @@ -17,8 +17,8 @@ package api import ( "sync" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/etcdserver/api/membership" - "go.etcd.io/etcd/v3/version" "go.uber.org/zap" "github.com/coreos/go-semver/semver" diff --git a/etcdserver/api/cluster.go b/etcdserver/api/cluster.go index d8109272aab3..d50e385ce356 100644 --- a/etcdserver/api/cluster.go +++ b/etcdserver/api/cluster.go @@ -15,8 +15,8 @@ package api import ( + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/membership" - "go.etcd.io/etcd/v3/pkg/types" "github.com/coreos/go-semver/semver" ) diff --git a/etcdserver/api/etcdhttp/base.go b/etcdserver/api/etcdhttp/base.go index 991e759f5eea..d4956e699fbb 100644 --- a/etcdserver/api/etcdhttp/base.go +++ b/etcdserver/api/etcdhttp/base.go @@ -20,11 +20,11 @@ import ( "fmt" "net/http" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/v2error" "go.etcd.io/etcd/v3/etcdserver/api/v2http/httptypes" - "go.etcd.io/etcd/v3/version" "go.uber.org/zap" ) diff --git a/etcdserver/api/etcdhttp/metrics.go b/etcdserver/api/etcdhttp/metrics.go index 84d27c791a74..7d5b93e38ac7 100644 --- a/etcdserver/api/etcdhttp/metrics.go +++ b/etcdserver/api/etcdhttp/metrics.go @@ -22,8 +22,8 @@ import ( "github.com/prometheus/client_golang/prometheus" "github.com/prometheus/client_golang/prometheus/promhttp" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/raft" "go.uber.org/zap" ) diff --git a/etcdserver/api/etcdhttp/peer.go b/etcdserver/api/etcdhttp/peer.go index 0b97c05fbe7f..ece9eacc3c69 100644 --- a/etcdserver/api/etcdhttp/peer.go +++ b/etcdserver/api/etcdhttp/peer.go @@ -21,12 +21,12 @@ import ( "strconv" "strings" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/rafthttp" "go.etcd.io/etcd/v3/lease/leasehttp" - "go.etcd.io/etcd/v3/pkg/types" "go.uber.org/zap" ) diff --git a/etcdserver/api/etcdhttp/peer_test.go b/etcdserver/api/etcdhttp/peer_test.go index bc2f206ebf7e..0c3211e22573 100644 --- a/etcdserver/api/etcdhttp/peer_test.go +++ b/etcdserver/api/etcdhttp/peer_test.go @@ -29,12 +29,12 @@ import ( "go.uber.org/zap" "github.com/coreos/go-semver/semver" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/rafthttp" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/types" ) type fakeCluster struct { diff --git a/etcdserver/api/etcdhttp/version_test.go b/etcdserver/api/etcdhttp/version_test.go index 63271c704d2f..636d493aab2b 100644 --- a/etcdserver/api/etcdhttp/version_test.go +++ b/etcdserver/api/etcdhttp/version_test.go @@ -20,7 +20,7 @@ import ( "net/http/httptest" "testing" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/version" ) func TestServeVersion(t *testing.T) { diff --git a/etcdserver/api/membership/cluster.go b/etcdserver/api/membership/cluster.go index b0939131b523..6a9b767d8b50 100644 --- a/etcdserver/api/membership/cluster.go +++ b/etcdserver/api/membership/cluster.go @@ -27,13 +27,13 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/etcdserver/api/v2store" "go.etcd.io/etcd/v3/mvcc/backend" "go.etcd.io/etcd/v3/pkg/netutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" - "go.etcd.io/etcd/v3/version" "github.com/coreos/go-semver/semver" "github.com/prometheus/client_golang/prometheus" diff --git a/etcdserver/api/membership/cluster_test.go b/etcdserver/api/membership/cluster_test.go index dade2c0b6c63..3bdbfffe9f42 100644 --- a/etcdserver/api/membership/cluster_test.go +++ b/etcdserver/api/membership/cluster_test.go @@ -22,10 +22,10 @@ import ( "reflect" "testing" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/v2store" "go.etcd.io/etcd/v3/pkg/mock/mockstore" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" "go.uber.org/zap" diff --git a/etcdserver/api/membership/downgrade.go b/etcdserver/api/membership/downgrade.go index 2ec2363c9cf2..6b5f9092afba 100644 --- a/etcdserver/api/membership/downgrade.go +++ b/etcdserver/api/membership/downgrade.go @@ -16,7 +16,7 @@ package membership import ( "github.com/coreos/go-semver/semver" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/version" "go.uber.org/zap" ) diff --git a/etcdserver/api/membership/downgrade_test.go b/etcdserver/api/membership/downgrade_test.go index 8163a2ec3e24..b0ad85ba42f6 100644 --- a/etcdserver/api/membership/downgrade_test.go +++ b/etcdserver/api/membership/downgrade_test.go @@ -18,7 +18,7 @@ import ( "bytes" "fmt" "github.com/coreos/go-semver/semver" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/version" "go.uber.org/zap" "io/ioutil" "os" diff --git a/etcdserver/api/membership/member.go b/etcdserver/api/membership/member.go index 33012e020d82..1088b6584d4a 100644 --- a/etcdserver/api/membership/member.go +++ b/etcdserver/api/membership/member.go @@ -22,7 +22,7 @@ import ( "sort" "time" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) // RaftAttributes represents the raft related attributes of an etcd member. diff --git a/etcdserver/api/membership/member_test.go b/etcdserver/api/membership/member_test.go index c67eb0a6dade..ccbfd256b12f 100644 --- a/etcdserver/api/membership/member_test.go +++ b/etcdserver/api/membership/member_test.go @@ -20,7 +20,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) func timeParse(value string) *time.Time { diff --git a/etcdserver/api/membership/store.go b/etcdserver/api/membership/store.go index 8525fe1e2b2e..8fcf5e59d6b8 100644 --- a/etcdserver/api/membership/store.go +++ b/etcdserver/api/membership/store.go @@ -19,9 +19,9 @@ import ( "fmt" "path" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/v2store" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/pkg/types" "github.com/coreos/go-semver/semver" "go.uber.org/zap" diff --git a/etcdserver/api/rafthttp/functional_test.go b/etcdserver/api/rafthttp/functional_test.go index 7b8ce9b8c721..b5bcc20f6670 100644 --- a/etcdserver/api/rafthttp/functional_test.go +++ b/etcdserver/api/rafthttp/functional_test.go @@ -21,8 +21,8 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/types" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" diff --git a/etcdserver/api/rafthttp/http.go b/etcdserver/api/rafthttp/http.go index 51dd290ccaa1..49d1d361e20a 100644 --- a/etcdserver/api/rafthttp/http.go +++ b/etcdserver/api/rafthttp/http.go @@ -24,11 +24,11 @@ import ( "strings" "time" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/etcdserver/api/snap" pioutil "go.etcd.io/etcd/v3/pkg/ioutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" - "go.etcd.io/etcd/v3/version" humanize "github.com/dustin/go-humanize" "go.uber.org/zap" diff --git a/etcdserver/api/rafthttp/http_test.go b/etcdserver/api/rafthttp/http_test.go index 5cb248c65068..d8d4faf87053 100644 --- a/etcdserver/api/rafthttp/http_test.go +++ b/etcdserver/api/rafthttp/http_test.go @@ -26,11 +26,11 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/etcdserver/api/snap" "go.etcd.io/etcd/v3/pkg/pbutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" - "go.etcd.io/etcd/v3/version" "go.uber.org/zap" ) diff --git a/etcdserver/api/rafthttp/msgappv2_codec.go b/etcdserver/api/rafthttp/msgappv2_codec.go index 5e7149d9640a..b3433639f843 100644 --- a/etcdserver/api/rafthttp/msgappv2_codec.go +++ b/etcdserver/api/rafthttp/msgappv2_codec.go @@ -20,9 +20,9 @@ import ( "io" "time" + "go.etcd.io/etcd/c/v3/pkg/types" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" "go.etcd.io/etcd/v3/pkg/pbutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" ) diff --git a/etcdserver/api/rafthttp/msgappv2_codec_test.go b/etcdserver/api/rafthttp/msgappv2_codec_test.go index 4f4804e16e35..add55585eb93 100644 --- a/etcdserver/api/rafthttp/msgappv2_codec_test.go +++ b/etcdserver/api/rafthttp/msgappv2_codec_test.go @@ -19,8 +19,8 @@ import ( "reflect" "testing" + "go.etcd.io/etcd/c/v3/pkg/types" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" ) diff --git a/etcdserver/api/rafthttp/peer.go b/etcdserver/api/rafthttp/peer.go index 6b82f7f8367d..91155746a7cb 100644 --- a/etcdserver/api/rafthttp/peer.go +++ b/etcdserver/api/rafthttp/peer.go @@ -19,9 +19,9 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/snap" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" diff --git a/etcdserver/api/rafthttp/peer_status.go b/etcdserver/api/rafthttp/peer_status.go index 470f0e7dc637..7961f1baa02b 100644 --- a/etcdserver/api/rafthttp/peer_status.go +++ b/etcdserver/api/rafthttp/peer_status.go @@ -20,7 +20,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" "go.uber.org/zap" ) diff --git a/etcdserver/api/rafthttp/pipeline.go b/etcdserver/api/rafthttp/pipeline.go index fe78ddeedbc0..af2d24b333e0 100644 --- a/etcdserver/api/rafthttp/pipeline.go +++ b/etcdserver/api/rafthttp/pipeline.go @@ -22,9 +22,9 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/pkg/types" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" "go.etcd.io/etcd/v3/pkg/pbutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" diff --git a/etcdserver/api/rafthttp/pipeline_test.go b/etcdserver/api/rafthttp/pipeline_test.go index 0f8388ce8c58..7375b8293aea 100644 --- a/etcdserver/api/rafthttp/pipeline_test.go +++ b/etcdserver/api/rafthttp/pipeline_test.go @@ -24,11 +24,11 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" - "go.etcd.io/etcd/v3/version" "go.uber.org/zap" ) diff --git a/etcdserver/api/rafthttp/remote.go b/etcdserver/api/rafthttp/remote.go index b2f8a08066fd..5738fe137d27 100644 --- a/etcdserver/api/rafthttp/remote.go +++ b/etcdserver/api/rafthttp/remote.go @@ -15,7 +15,7 @@ package rafthttp import ( - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" "go.uber.org/zap" diff --git a/etcdserver/api/rafthttp/snapshot_sender.go b/etcdserver/api/rafthttp/snapshot_sender.go index 698a4ff4b0b7..1888f4b41b69 100644 --- a/etcdserver/api/rafthttp/snapshot_sender.go +++ b/etcdserver/api/rafthttp/snapshot_sender.go @@ -22,10 +22,10 @@ import ( "net/http" "time" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/snap" "go.etcd.io/etcd/v3/pkg/httputil" pioutil "go.etcd.io/etcd/v3/pkg/ioutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "github.com/dustin/go-humanize" diff --git a/etcdserver/api/rafthttp/snapshot_test.go b/etcdserver/api/rafthttp/snapshot_test.go index 03ee21d811ce..bf4204cc3d8d 100644 --- a/etcdserver/api/rafthttp/snapshot_test.go +++ b/etcdserver/api/rafthttp/snapshot_test.go @@ -25,8 +25,8 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/snap" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" "go.uber.org/zap" diff --git a/etcdserver/api/rafthttp/stream.go b/etcdserver/api/rafthttp/stream.go index 4ee5ed74901b..6b6c262476d8 100644 --- a/etcdserver/api/rafthttp/stream.go +++ b/etcdserver/api/rafthttp/stream.go @@ -25,12 +25,12 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" "go.etcd.io/etcd/v3/pkg/httputil" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" - "go.etcd.io/etcd/v3/version" "github.com/coreos/go-semver/semver" "go.uber.org/zap" diff --git a/etcdserver/api/rafthttp/stream_test.go b/etcdserver/api/rafthttp/stream_test.go index d6bf5c153f89..9f28826691f3 100644 --- a/etcdserver/api/rafthttp/stream_test.go +++ b/etcdserver/api/rafthttp/stream_test.go @@ -26,11 +26,11 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" - "go.etcd.io/etcd/v3/version" "github.com/coreos/go-semver/semver" "go.uber.org/zap" diff --git a/etcdserver/api/rafthttp/transport.go b/etcdserver/api/rafthttp/transport.go index b4ada235d362..59bbf5a113f4 100644 --- a/etcdserver/api/rafthttp/transport.go +++ b/etcdserver/api/rafthttp/transport.go @@ -20,10 +20,10 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/snap" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" diff --git a/etcdserver/api/rafthttp/transport_bench_test.go b/etcdserver/api/rafthttp/transport_bench_test.go index ab6d06f195fa..70137a7e5d6a 100644 --- a/etcdserver/api/rafthttp/transport_bench_test.go +++ b/etcdserver/api/rafthttp/transport_bench_test.go @@ -21,8 +21,8 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/types" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" diff --git a/etcdserver/api/rafthttp/transport_test.go b/etcdserver/api/rafthttp/transport_test.go index 32dad24c3d6d..9278eea5af99 100644 --- a/etcdserver/api/rafthttp/transport_test.go +++ b/etcdserver/api/rafthttp/transport_test.go @@ -20,9 +20,9 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/types" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" "github.com/xiang90/probing" diff --git a/etcdserver/api/rafthttp/urlpick.go b/etcdserver/api/rafthttp/urlpick.go index 33eb7e96fe73..1aa1274e9b56 100644 --- a/etcdserver/api/rafthttp/urlpick.go +++ b/etcdserver/api/rafthttp/urlpick.go @@ -18,7 +18,7 @@ import ( "net/url" "sync" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) type urlPicker struct { diff --git a/etcdserver/api/rafthttp/urlpick_test.go b/etcdserver/api/rafthttp/urlpick_test.go index 730b4f3fc1be..730f5021261b 100644 --- a/etcdserver/api/rafthttp/urlpick_test.go +++ b/etcdserver/api/rafthttp/urlpick_test.go @@ -18,7 +18,7 @@ import ( "net/url" "testing" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) // TestURLPickerPickTwice tests that pick returns a possible url, diff --git a/etcdserver/api/rafthttp/util.go b/etcdserver/api/rafthttp/util.go index 204f028f1cf9..8e12febb42f5 100644 --- a/etcdserver/api/rafthttp/util.go +++ b/etcdserver/api/rafthttp/util.go @@ -23,9 +23,9 @@ import ( "strings" "time" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" "github.com/coreos/go-semver/semver" "go.uber.org/zap" diff --git a/etcdserver/api/rafthttp/util_test.go b/etcdserver/api/rafthttp/util_test.go index 41e1256c66a4..446dc1361bda 100644 --- a/etcdserver/api/rafthttp/util_test.go +++ b/etcdserver/api/rafthttp/util_test.go @@ -22,8 +22,8 @@ import ( "reflect" "testing" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/raft/raftpb" - "go.etcd.io/etcd/v3/version" "github.com/coreos/go-semver/semver" ) diff --git a/etcdserver/api/snap/db.go b/etcdserver/api/snap/db.go index abf219c07861..f27a30be70f1 100644 --- a/etcdserver/api/snap/db.go +++ b/etcdserver/api/snap/db.go @@ -23,7 +23,7 @@ import ( "path/filepath" "time" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" humanize "github.com/dustin/go-humanize" "go.uber.org/zap" diff --git a/etcdserver/api/snap/snapshotter_test.go b/etcdserver/api/snap/snapshotter_test.go index 542305b5698e..b6e7d9fe17cf 100644 --- a/etcdserver/api/snap/snapshotter_test.go +++ b/etcdserver/api/snap/snapshotter_test.go @@ -16,7 +16,7 @@ package snap import ( "fmt" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "hash/crc32" "io/ioutil" "os" diff --git a/etcdserver/api/v2auth/auth.go b/etcdserver/api/v2auth/auth.go index dfefc354585d..735ef9ead19d 100644 --- a/etcdserver/api/v2auth/auth.go +++ b/etcdserver/api/v2auth/auth.go @@ -26,10 +26,10 @@ import ( "strings" "time" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/v2error" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/types" "go.uber.org/zap" "golang.org/x/crypto/bcrypt" diff --git a/etcdserver/api/v2auth/auth_requests.go b/etcdserver/api/v2auth/auth_requests.go index a6cbfe7e5c37..6975cc27cd2c 100644 --- a/etcdserver/api/v2auth/auth_requests.go +++ b/etcdserver/api/v2auth/auth_requests.go @@ -19,9 +19,9 @@ import ( "encoding/json" "path" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/v2error" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.uber.org/zap" ) diff --git a/etcdserver/api/v2auth/auth_test.go b/etcdserver/api/v2auth/auth_test.go index 6fdac203d7d5..7b6c16606e6e 100644 --- a/etcdserver/api/v2auth/auth_test.go +++ b/etcdserver/api/v2auth/auth_test.go @@ -20,10 +20,10 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/v2error" "go.etcd.io/etcd/v3/etcdserver/api/v2store" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.uber.org/zap" ) diff --git a/etcdserver/api/v2discovery/discovery.go b/etcdserver/api/v2discovery/discovery.go index 634a40c23200..5cffe51bc30a 100644 --- a/etcdserver/api/v2discovery/discovery.go +++ b/etcdserver/api/v2discovery/discovery.go @@ -29,9 +29,9 @@ import ( "strings" "time" - "go.etcd.io/etcd/v3/client" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/client" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" "github.com/jonboulle/clockwork" "go.uber.org/zap" diff --git a/etcdserver/api/v2discovery/discovery_test.go b/etcdserver/api/v2discovery/discovery_test.go index c84088978ffa..4994a51ba99d 100644 --- a/etcdserver/api/v2discovery/discovery_test.go +++ b/etcdserver/api/v2discovery/discovery_test.go @@ -27,8 +27,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/client" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/client" + "go.etcd.io/etcd/c/v3/pkg/types" "github.com/jonboulle/clockwork" "go.uber.org/zap" diff --git a/etcdserver/api/v2http/client.go b/etcdserver/api/v2http/client.go index 5eabab9068bc..6c36ffe50cbc 100644 --- a/etcdserver/api/v2http/client.go +++ b/etcdserver/api/v2http/client.go @@ -27,6 +27,8 @@ import ( "strings" "time" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/etcdhttp" @@ -36,8 +38,6 @@ import ( "go.etcd.io/etcd/v3/etcdserver/api/v2http/httptypes" stats "go.etcd.io/etcd/v3/etcdserver/api/v2stats" "go.etcd.io/etcd/v3/etcdserver/api/v2store" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/types" "github.com/jonboulle/clockwork" "go.uber.org/zap" diff --git a/etcdserver/api/v2http/client_test.go b/etcdserver/api/v2http/client_test.go index fbf1fae38e25..a082bdbc720e 100644 --- a/etcdserver/api/v2http/client_test.go +++ b/etcdserver/api/v2http/client_test.go @@ -29,15 +29,15 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/v2error" "go.etcd.io/etcd/v3/etcdserver/api/v2http/httptypes" "go.etcd.io/etcd/v3/etcdserver/api/v2store" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" "github.com/coreos/go-semver/semver" diff --git a/etcdserver/api/v2http/http_test.go b/etcdserver/api/v2http/http_test.go index a5cdbcad43f7..9f603143344b 100644 --- a/etcdserver/api/v2http/http_test.go +++ b/etcdserver/api/v2http/http_test.go @@ -22,11 +22,11 @@ import ( "sort" "testing" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/v2error" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" "github.com/coreos/go-semver/semver" diff --git a/etcdserver/api/v2http/httptypes/member.go b/etcdserver/api/v2http/httptypes/member.go index fefe6a020293..73b4888afb08 100644 --- a/etcdserver/api/v2http/httptypes/member.go +++ b/etcdserver/api/v2http/httptypes/member.go @@ -19,7 +19,7 @@ package httptypes import ( "encoding/json" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) type Member struct { diff --git a/etcdserver/api/v2http/httptypes/member_test.go b/etcdserver/api/v2http/httptypes/member_test.go index ea95550b2fc4..e80bcbd5d202 100644 --- a/etcdserver/api/v2http/httptypes/member_test.go +++ b/etcdserver/api/v2http/httptypes/member_test.go @@ -20,7 +20,7 @@ import ( "reflect" "testing" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) func TestMemberUnmarshal(t *testing.T) { diff --git a/etcdserver/api/v2http/metrics.go b/etcdserver/api/v2http/metrics.go index 03ca58b96296..e3c442dbd802 100644 --- a/etcdserver/api/v2http/metrics.go +++ b/etcdserver/api/v2http/metrics.go @@ -20,9 +20,9 @@ import ( "net/http" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver/api/v2error" "go.etcd.io/etcd/v3/etcdserver/api/v2http/httptypes" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "github.com/prometheus/client_golang/prometheus" ) diff --git a/etcdserver/api/v2store/node_extern_test.go b/etcdserver/api/v2store/node_extern_test.go index 0a99048f8d80..baf568892ab1 100644 --- a/etcdserver/api/v2store/node_extern_test.go +++ b/etcdserver/api/v2store/node_extern_test.go @@ -20,7 +20,7 @@ import ( "time" "unsafe" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestNodeExternClone(t *testing.T) { diff --git a/etcdserver/api/v2store/stats_test.go b/etcdserver/api/v2store/stats_test.go index 3793d8f6dce3..be651dfa1710 100644 --- a/etcdserver/api/v2store/stats_test.go +++ b/etcdserver/api/v2store/stats_test.go @@ -18,7 +18,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) // Ensure that a successful Get is recorded in the stats. diff --git a/etcdserver/api/v2store/store.go b/etcdserver/api/v2store/store.go index db16b44c511b..a10cb12e4ce1 100644 --- a/etcdserver/api/v2store/store.go +++ b/etcdserver/api/v2store/store.go @@ -23,8 +23,8 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/v2error" - "go.etcd.io/etcd/v3/pkg/types" "github.com/jonboulle/clockwork" ) diff --git a/etcdserver/api/v2store/store_test.go b/etcdserver/api/v2store/store_test.go index 76ec02d4e8dc..aa7cb37979ae 100644 --- a/etcdserver/api/v2store/store_test.go +++ b/etcdserver/api/v2store/store_test.go @@ -12,15 +12,17 @@ // See the License for the specific language governing permissions and // limitations under the License. +//+build !v2v3 + package v2store_test import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/etcdserver/api/v2error" "go.etcd.io/etcd/v3/etcdserver/api/v2store" - "go.etcd.io/etcd/v3/pkg/testutil" ) type StoreCloser interface { diff --git a/etcdserver/api/v2store/store_ttl_test.go b/etcdserver/api/v2store/store_ttl_test.go index 05e0db50e11c..056b08c4ce29 100644 --- a/etcdserver/api/v2store/store_ttl_test.go +++ b/etcdserver/api/v2store/store_ttl_test.go @@ -18,8 +18,8 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/etcdserver/api/v2error" - "go.etcd.io/etcd/v3/pkg/testutil" "github.com/jonboulle/clockwork" ) diff --git a/etcdserver/api/v2store/store_v2_test.go b/etcdserver/api/v2store/store_v2_test.go index e165094db522..32bf40521b64 100644 --- a/etcdserver/api/v2store/store_v2_test.go +++ b/etcdserver/api/v2store/store_v2_test.go @@ -19,8 +19,8 @@ package v2store_test import ( "testing" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/etcdserver/api/v2store" - "go.etcd.io/etcd/v3/pkg/testutil" ) type v2TestStore struct { diff --git a/etcdserver/api/v2v3/cluster.go b/etcdserver/api/v2v3/cluster.go index 51e2b65345ab..03e6c7a0325b 100644 --- a/etcdserver/api/v2v3/cluster.go +++ b/etcdserver/api/v2v3/cluster.go @@ -15,8 +15,8 @@ package v2v3 import ( + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/membership" - "go.etcd.io/etcd/v3/pkg/types" "github.com/coreos/go-semver/semver" ) diff --git a/etcdserver/api/v2v3/server.go b/etcdserver/api/v2v3/server.go index 0093f6e0a934..2feddbe010ca 100644 --- a/etcdserver/api/v2v3/server.go +++ b/etcdserver/api/v2v3/server.go @@ -19,12 +19,12 @@ import ( "net/http" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/membership" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/types" "github.com/coreos/go-semver/semver" "go.uber.org/zap" diff --git a/etcdserver/api/v2v3/store.go b/etcdserver/api/v2v3/store.go index e446ceda179c..fbab7caa4337 100644 --- a/etcdserver/api/v2v3/store.go +++ b/etcdserver/api/v2v3/store.go @@ -22,11 +22,11 @@ import ( "strings" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/etcdserver/api/v2error" "go.etcd.io/etcd/v3/etcdserver/api/v2store" - "go.etcd.io/etcd/v3/mvcc/mvccpb" ) // store implements the Store interface for V2 using diff --git a/etcdserver/api/v2v3/watcher.go b/etcdserver/api/v2v3/watcher.go index 201fb783e516..b23f4376552f 100644 --- a/etcdserver/api/v2v3/watcher.go +++ b/etcdserver/api/v2v3/watcher.go @@ -18,7 +18,7 @@ import ( "context" "strings" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/etcdserver/api/v2error" "go.etcd.io/etcd/v3/etcdserver/api/v2store" ) diff --git a/etcdserver/api/v3alarm/alarms.go b/etcdserver/api/v3alarm/alarms.go index 0a46f735b259..38b2fbc196d7 100644 --- a/etcdserver/api/v3alarm/alarms.go +++ b/etcdserver/api/v3alarm/alarms.go @@ -18,9 +18,9 @@ package v3alarm import ( "sync" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/pkg/types" "go.uber.org/zap" ) diff --git a/etcdserver/api/v3client/v3client.go b/etcdserver/api/v3client/v3client.go index 5a8107b9fb6e..d699b9c9faf0 100644 --- a/etcdserver/api/v3client/v3client.go +++ b/etcdserver/api/v3client/v3client.go @@ -18,7 +18,7 @@ import ( "context" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/v3rpc" "go.etcd.io/etcd/v3/proxy/grpcproxy/adapter" diff --git a/etcdserver/api/v3compactor/compactor.go b/etcdserver/api/v3compactor/compactor.go index 7a05f0693a29..ec96c22f9139 100644 --- a/etcdserver/api/v3compactor/compactor.go +++ b/etcdserver/api/v3compactor/compactor.go @@ -19,7 +19,7 @@ import ( "fmt" "time" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "github.com/jonboulle/clockwork" "go.uber.org/zap" diff --git a/etcdserver/api/v3compactor/compactor_test.go b/etcdserver/api/v3compactor/compactor_test.go index c10a398581c4..724539716cca 100644 --- a/etcdserver/api/v3compactor/compactor_test.go +++ b/etcdserver/api/v3compactor/compactor_test.go @@ -18,8 +18,8 @@ import ( "context" "sync/atomic" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) type fakeCompactable struct { diff --git a/etcdserver/api/v3compactor/periodic.go b/etcdserver/api/v3compactor/periodic.go index 206325fee3b1..2f0b7ac38c6f 100644 --- a/etcdserver/api/v3compactor/periodic.go +++ b/etcdserver/api/v3compactor/periodic.go @@ -19,7 +19,7 @@ import ( "sync" "time" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/mvcc" "github.com/jonboulle/clockwork" diff --git a/etcdserver/api/v3compactor/periodic_test.go b/etcdserver/api/v3compactor/periodic_test.go index c876ab408b9b..fe34b6f6012f 100644 --- a/etcdserver/api/v3compactor/periodic_test.go +++ b/etcdserver/api/v3compactor/periodic_test.go @@ -19,8 +19,8 @@ import ( "testing" "time" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" "github.com/jonboulle/clockwork" "go.uber.org/zap" diff --git a/etcdserver/api/v3compactor/revision.go b/etcdserver/api/v3compactor/revision.go index a4d6d3c527f8..9458b4ae5834 100644 --- a/etcdserver/api/v3compactor/revision.go +++ b/etcdserver/api/v3compactor/revision.go @@ -19,7 +19,7 @@ import ( "sync" "time" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/mvcc" "github.com/jonboulle/clockwork" diff --git a/etcdserver/api/v3compactor/revision_test.go b/etcdserver/api/v3compactor/revision_test.go index 80c714d066d9..b2e44e205c16 100644 --- a/etcdserver/api/v3compactor/revision_test.go +++ b/etcdserver/api/v3compactor/revision_test.go @@ -19,8 +19,8 @@ import ( "testing" "time" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" "github.com/jonboulle/clockwork" "go.uber.org/zap" diff --git a/etcdserver/api/v3election/election.go b/etcdserver/api/v3election/election.go index 7a2058b0613d..a4b790934e14 100644 --- a/etcdserver/api/v3election/election.go +++ b/etcdserver/api/v3election/election.go @@ -18,8 +18,8 @@ import ( "context" "errors" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" epb "go.etcd.io/etcd/v3/etcdserver/api/v3election/v3electionpb" ) diff --git a/etcdserver/api/v3election/v3electionpb/v3election.pb.go b/etcdserver/api/v3election/v3electionpb/v3election.pb.go index 05e62fc50086..aad78c0c27ab 100644 --- a/etcdserver/api/v3election/v3electionpb/v3election.pb.go +++ b/etcdserver/api/v3election/v3electionpb/v3election.pb.go @@ -29,9 +29,9 @@ import ( _ "github.com/gogo/protobuf/gogoproto" - etcdserverpb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + etcdserverpb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" - mvccpb "go.etcd.io/etcd/v3/mvcc/mvccpb" + mvccpb "go.etcd.io/etcd/c/v3/mvcc/mvccpb" context "golang.org/x/net/context" @@ -2041,39 +2041,39 @@ var ( func init() { proto.RegisterFile("v3election.proto", fileDescriptorV3Election) } var fileDescriptorV3Election = []byte{ - // 535 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0xcf, 0x6e, 0xd3, 0x40, - 0x10, 0xc6, 0x59, 0x27, 0x84, 0x32, 0xa4, 0xad, 0x65, 0x82, 0x48, 0x43, 0x30, 0xd1, 0x22, 0xa1, - 0x2a, 0x07, 0x2f, 0x6a, 0x38, 0xe5, 0x84, 0x40, 0xa0, 0x4a, 0x45, 0x02, 0x7c, 0x40, 0x70, 0xdc, - 0xb8, 0x23, 0x37, 0x8a, 0xe3, 0x35, 0xb6, 0x6b, 0x29, 0x57, 0x5e, 0x81, 0x03, 0x3c, 0x12, 0x47, - 0x24, 0x5e, 0x00, 0x05, 0x1e, 0x04, 0xed, 0xae, 0x8d, 0xff, 0x28, 0x41, 0xa8, 0xb9, 0x58, 0xe3, - 0x9d, 0xcf, 0xf3, 0x9b, 0x6f, 0x76, 0x12, 0x30, 0xb3, 0x09, 0x06, 0xe8, 0xa5, 0x73, 0x11, 0x3a, - 0x51, 0x2c, 0x52, 0x61, 0x75, 0xcb, 0x93, 0x68, 0x36, 0xe8, 0xf9, 0xc2, 0x17, 0x2a, 0xc1, 0x64, - 0xa4, 0x35, 0x83, 0x47, 0x98, 0x7a, 0xe7, 0x4c, 0x3e, 0x12, 0x8c, 0x33, 0x8c, 0x2b, 0x61, 0x34, - 0x63, 0x71, 0xe4, 0xe5, 0xba, 0x23, 0xa5, 0x5b, 0x66, 0x9e, 0xa7, 0x1e, 0xd1, 0x8c, 0x2d, 0xb2, - 0x3c, 0x35, 0xf4, 0x85, 0xf0, 0x03, 0x64, 0x3c, 0x9a, 0x33, 0x1e, 0x86, 0x22, 0xe5, 0x92, 0x98, - 0xe8, 0x2c, 0x7d, 0x0b, 0x87, 0xcf, 0xf9, 0x32, 0xe2, 0x73, 0x3f, 0x74, 0xf1, 0xe3, 0x25, 0x26, - 0xa9, 0x65, 0x41, 0x3b, 0xe4, 0x4b, 0xec, 0x93, 0x11, 0x39, 0xee, 0xba, 0x2a, 0xb6, 0x7a, 0x70, - 0x3d, 0x40, 0x9e, 0x60, 0xdf, 0x18, 0x91, 0xe3, 0x96, 0xab, 0x5f, 0xe4, 0x69, 0xc6, 0x83, 0x4b, - 0xec, 0xb7, 0x94, 0x54, 0xbf, 0xd0, 0x15, 0x98, 0x65, 0xc9, 0x24, 0x12, 0x61, 0x82, 0xd6, 0x13, - 0xe8, 0x5c, 0x20, 0x3f, 0xc7, 0x58, 0x55, 0xbd, 0x75, 0x32, 0x74, 0xaa, 0x46, 0x9c, 0x42, 0x77, - 0xaa, 0x34, 0x6e, 0xae, 0xb5, 0x18, 0x74, 0x02, 0xfd, 0x95, 0xa1, 0xbe, 0xba, 0xeb, 0x54, 0x47, - 0xe6, 0xbc, 0x52, 0xb9, 0x33, 0x5c, 0xb9, 0xb9, 0x8c, 0x7e, 0x80, 0x9b, 0x7f, 0x0f, 0x37, 0xfa, - 0x30, 0xa1, 0xb5, 0xc0, 0x95, 0x2a, 0xd7, 0x75, 0x65, 0x28, 0x4f, 0x62, 0xcc, 0x94, 0x83, 0x96, - 0x2b, 0xc3, 0xd2, 0x6b, 0xbb, 0xe2, 0x95, 0x3e, 0x84, 0x7d, 0x5d, 0xfa, 0x1f, 0x63, 0xa2, 0x17, - 0x70, 0x50, 0x88, 0x76, 0x32, 0x3e, 0x02, 0x63, 0x91, 0xe5, 0xa6, 0x4d, 0x47, 0xdf, 0xa8, 0x73, - 0x86, 0xab, 0x77, 0x72, 0xc0, 0xae, 0xb1, 0xc8, 0xe8, 0x53, 0xd8, 0x77, 0x31, 0xa9, 0xdc, 0x5a, - 0x39, 0x2b, 0xf2, 0x7f, 0xb3, 0x7a, 0x09, 0x07, 0x45, 0x85, 0x5d, 0x7a, 0xa5, 0xef, 0xe1, 0xf0, - 0x4d, 0x2c, 0xbc, 0x80, 0xcf, 0x97, 0x57, 0xed, 0xa5, 0x5c, 0x24, 0xa3, 0xba, 0x48, 0xa7, 0x60, - 0x96, 0x95, 0x77, 0xe9, 0xf1, 0xe4, 0x4b, 0x1b, 0xf6, 0x5e, 0xe4, 0x0d, 0x58, 0x0b, 0xd8, 0x2b, - 0xf6, 0xd3, 0xba, 0x5f, 0xef, 0xac, 0xf1, 0x53, 0x18, 0xd8, 0xdb, 0xd2, 0x9a, 0x42, 0x47, 0x9f, - 0x7e, 0xfc, 0xfe, 0x6c, 0x0c, 0xe8, 0x1d, 0x96, 0x4d, 0x58, 0x21, 0x64, 0x5e, 0x2e, 0x9b, 0x92, - 0xb1, 0x84, 0x15, 0x1e, 0x9a, 0xb0, 0xc6, 0xd4, 0x9a, 0xb0, 0xa6, 0xf5, 0x2d, 0xb0, 0x28, 0x97, - 0x49, 0x98, 0x07, 0x1d, 0x3d, 0x5b, 0xeb, 0xde, 0xa6, 0x89, 0x17, 0xa0, 0xe1, 0xe6, 0x64, 0x8e, - 0xb1, 0x15, 0xa6, 0x4f, 0x6f, 0xd7, 0x30, 0xfa, 0xa2, 0x24, 0xc4, 0x87, 0x1b, 0xaf, 0x67, 0x6a, - 0xe0, 0xbb, 0x50, 0x1e, 0x28, 0xca, 0x11, 0xed, 0xd5, 0x28, 0x42, 0x17, 0x9e, 0x92, 0xf1, 0x63, - 0x22, 0xdd, 0xe8, 0x05, 0x6d, 0x72, 0x6a, 0x8b, 0xdf, 0xe4, 0xd4, 0x77, 0x7a, 0x8b, 0x9b, 0x58, - 0x89, 0xa6, 0x64, 0xfc, 0xcc, 0xfc, 0xb6, 0xb6, 0xc9, 0xf7, 0xb5, 0x4d, 0x7e, 0xae, 0x6d, 0xf2, - 0xf5, 0x97, 0x7d, 0x6d, 0xd6, 0x51, 0x7f, 0x8c, 0x93, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x2f, - 0x1d, 0xfa, 0x11, 0xb1, 0x05, 0x00, 0x00, + // 534 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x94, 0xcf, 0x8e, 0xd2, 0x50, + 0x14, 0xc6, 0xbd, 0x05, 0x71, 0x3c, 0x32, 0x33, 0x4d, 0xc5, 0x88, 0x0c, 0x56, 0x72, 0xdd, 0x10, + 0x16, 0xbd, 0x66, 0x70, 0xc5, 0xca, 0x68, 0x34, 0x93, 0x8c, 0x89, 0xda, 0x85, 0xd1, 0xe5, 0xa5, + 0x73, 0xd2, 0x21, 0x94, 0xde, 0xda, 0x32, 0x4d, 0xd8, 0xfa, 0x0a, 0x2e, 0xf4, 0x91, 0x5c, 0x9a, + 0xf8, 0x02, 0x06, 0x7d, 0x10, 0x73, 0xff, 0xd4, 0x96, 0x06, 0x8c, 0x91, 0x0d, 0x9c, 0xde, 0xf3, + 0xf5, 0xfc, 0xce, 0x77, 0xee, 0x01, 0xb0, 0xf3, 0x31, 0x46, 0x18, 0x2c, 0x67, 0x22, 0xf6, 0x92, + 0x54, 0x2c, 0x85, 0xd3, 0x2e, 0x4f, 0x92, 0x69, 0xaf, 0x13, 0x8a, 0x50, 0xa8, 0x04, 0x93, 0x91, + 0xd6, 0xf4, 0x86, 0xb8, 0x0c, 0x2e, 0x58, 0xc0, 0xe4, 0x57, 0x86, 0x69, 0x8e, 0x69, 0x25, 0x4c, + 0xa6, 0x2c, 0x4d, 0x02, 0xa3, 0x3c, 0x31, 0xca, 0x45, 0x1e, 0xe8, 0x8f, 0x64, 0xca, 0xe6, 0xb9, + 0x49, 0xf6, 0x43, 0x21, 0xc2, 0x08, 0x19, 0x4f, 0x66, 0x8c, 0xc7, 0xb1, 0x58, 0x72, 0x49, 0xcd, + 0x74, 0x96, 0xbe, 0x81, 0xe3, 0x67, 0x7c, 0x91, 0xf0, 0x59, 0x18, 0xfb, 0xf8, 0xe1, 0x0a, 0xb3, + 0xa5, 0xe3, 0x40, 0x33, 0xe6, 0x0b, 0xec, 0x92, 0x01, 0x19, 0xb6, 0x7d, 0x15, 0x3b, 0x1d, 0xb8, + 0x1e, 0x21, 0xcf, 0xb0, 0x6b, 0x0d, 0xc8, 0xb0, 0xe1, 0xeb, 0x07, 0x79, 0x9a, 0xf3, 0xe8, 0x0a, + 0xbb, 0x0d, 0x25, 0xd5, 0x0f, 0x74, 0x05, 0x76, 0x59, 0x32, 0x4b, 0x44, 0x9c, 0xa1, 0xf3, 0x18, + 0x5a, 0x97, 0xc8, 0x2f, 0x30, 0x55, 0x55, 0x6f, 0x9d, 0xf6, 0xbd, 0xaa, 0x15, 0xaf, 0xd0, 0x9d, + 0x29, 0x8d, 0x6f, 0xb4, 0x0e, 0x83, 0x56, 0xa4, 0xdf, 0xb2, 0xd4, 0x5b, 0x77, 0xbd, 0xea, 0xd8, + 0xbc, 0x97, 0x2a, 0x77, 0x8e, 0x2b, 0xdf, 0xc8, 0xe8, 0x7b, 0xb8, 0xf9, 0xe7, 0x70, 0xab, 0x0f, + 0x1b, 0x1a, 0x73, 0x5c, 0xa9, 0x72, 0x6d, 0x5f, 0x86, 0xf2, 0x24, 0xc5, 0x5c, 0x39, 0x68, 0xf8, + 0x32, 0x2c, 0xbd, 0x36, 0x2b, 0x5e, 0xe9, 0x43, 0x38, 0xd4, 0xa5, 0xff, 0x32, 0x26, 0x7a, 0x09, + 0x47, 0x85, 0x68, 0x2f, 0xe3, 0x03, 0xb0, 0xe6, 0xb9, 0x31, 0x6d, 0x7b, 0xfa, 0x46, 0xbd, 0x73, + 0x5c, 0xbd, 0x95, 0x03, 0xf6, 0xad, 0x79, 0x4e, 0x9f, 0xc0, 0xa1, 0x8f, 0x59, 0xe5, 0xd6, 0xca, + 0x59, 0x91, 0x7f, 0x9b, 0xd5, 0x0b, 0x38, 0x2a, 0x2a, 0xec, 0xd3, 0x2b, 0x7d, 0x07, 0xc7, 0xaf, + 0x53, 0x11, 0x44, 0x7c, 0xb6, 0xf8, 0xdf, 0x5e, 0xca, 0x45, 0xb2, 0xaa, 0x8b, 0x74, 0x06, 0x76, + 0x59, 0x79, 0x9f, 0x1e, 0x4f, 0x3f, 0x37, 0xe1, 0xe0, 0xb9, 0x69, 0xc0, 0x99, 0xc3, 0x41, 0xb1, + 0x9f, 0xce, 0xfd, 0xcd, 0xce, 0x6a, 0x3f, 0x85, 0x9e, 0xbb, 0x2b, 0xad, 0x29, 0x74, 0xf0, 0xf1, + 0xfb, 0xaf, 0x4f, 0x56, 0x8f, 0xde, 0x61, 0xf9, 0x98, 0x15, 0x42, 0x16, 0x18, 0xd9, 0x84, 0x8c, + 0x24, 0xac, 0xf0, 0x50, 0x87, 0xd5, 0xa6, 0x56, 0x87, 0xd5, 0xad, 0xef, 0x80, 0x25, 0x46, 0x26, + 0x61, 0x01, 0xb4, 0xf4, 0x6c, 0x9d, 0x93, 0x6d, 0x13, 0x2f, 0x40, 0xfd, 0xed, 0x49, 0x83, 0x71, + 0x15, 0xa6, 0x4b, 0x6f, 0x6f, 0x60, 0xf4, 0x45, 0x49, 0x48, 0x08, 0x37, 0x5e, 0x4d, 0xd5, 0xc0, + 0xf7, 0xa1, 0x3c, 0x50, 0x94, 0x7b, 0xb4, 0xb3, 0x41, 0x11, 0xba, 0xf0, 0x84, 0x8c, 0x1e, 0x11, + 0xe9, 0x46, 0x2f, 0x68, 0x9d, 0xb3, 0xb1, 0xf8, 0x75, 0xce, 0xe6, 0x4e, 0xef, 0x70, 0x93, 0x2a, + 0xd1, 0x84, 0x8c, 0x9e, 0xda, 0x5f, 0xd7, 0x2e, 0xf9, 0xb6, 0x76, 0xc9, 0x8f, 0xb5, 0x4b, 0xbe, + 0xfc, 0x74, 0xaf, 0x4d, 0x5b, 0xea, 0x8f, 0x71, 0xfc, 0x3b, 0x00, 0x00, 0xff, 0xff, 0x4e, 0x59, + 0x7b, 0xd4, 0xb5, 0x05, 0x00, 0x00, } diff --git a/etcdserver/api/v3election/v3electionpb/v3election.proto b/etcdserver/api/v3election/v3electionpb/v3election.proto index 918f39fa853f..9ae22741ebb9 100644 --- a/etcdserver/api/v3election/v3electionpb/v3election.proto +++ b/etcdserver/api/v3election/v3electionpb/v3election.proto @@ -2,8 +2,8 @@ syntax = "proto3"; package v3electionpb; import "gogoproto/gogo.proto"; -import "etcd/etcdserver/etcdserverpb/rpc.proto"; -import "etcd/mvcc/mvccpb/kv.proto"; +import "etcd/c/etcdserver/etcdserverpb/rpc.proto"; +import "etcd/c/mvcc/mvccpb/kv.proto"; // for grpc-gateway import "google/api/annotations.proto"; diff --git a/etcdserver/api/v3lock/lock.go b/etcdserver/api/v3lock/lock.go index ec3fb407edf1..f8d6885c7ec7 100644 --- a/etcdserver/api/v3lock/lock.go +++ b/etcdserver/api/v3lock/lock.go @@ -17,8 +17,8 @@ package v3lock import ( "context" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" "go.etcd.io/etcd/v3/etcdserver/api/v3lock/v3lockpb" ) diff --git a/etcdserver/api/v3lock/v3lockpb/v3lock.pb.go b/etcdserver/api/v3lock/v3lockpb/v3lock.pb.go index ad139c1c8aa9..303091e4bd14 100644 --- a/etcdserver/api/v3lock/v3lockpb/v3lock.pb.go +++ b/etcdserver/api/v3lock/v3lockpb/v3lock.pb.go @@ -24,7 +24,7 @@ import ( _ "github.com/gogo/protobuf/gogoproto" - etcdserverpb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + etcdserverpb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" context "golang.org/x/net/context" @@ -934,26 +934,26 @@ var ( func init() { proto.RegisterFile("v3lock.proto", fileDescriptorV3Lock) } var fileDescriptorV3Lock = []byte{ - // 331 bytes of a gzipped FileDescriptorProto + // 333 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xe2, 0x29, 0x33, 0xce, 0xc9, 0x4f, 0xce, 0xd6, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x80, 0xf0, 0x0a, 0x92, 0xa4, 0x44, - 0xd2, 0xf3, 0xd3, 0xf3, 0xc1, 0x82, 0xfa, 0x20, 0x16, 0x44, 0x5e, 0x4a, 0x2d, 0xb5, 0x24, 0x39, - 0x45, 0x1f, 0x44, 0x14, 0xa7, 0x16, 0x95, 0xa5, 0x16, 0x21, 0x31, 0x0b, 0x92, 0xf4, 0x8b, 0x0a, - 0x92, 0xa1, 0xea, 0x64, 0xd2, 0xf3, 0xf3, 0xd3, 0x73, 0x52, 0xf5, 0x13, 0x0b, 0x32, 0xf5, 0x13, - 0xf3, 0xf2, 0xf2, 0x4b, 0x12, 0x4b, 0x32, 0xf3, 0xf3, 0x8a, 0x21, 0xb2, 0x4a, 0xe6, 0x5c, 0xdc, - 0x3e, 0xf9, 0xc9, 0xd9, 0x41, 0xa9, 0x85, 0xa5, 0xa9, 0xc5, 0x25, 0x42, 0x42, 0x5c, 0x2c, 0x79, - 0x89, 0xb9, 0xa9, 0x12, 0x8c, 0x0a, 0x8c, 0x1a, 0x3c, 0x41, 0x60, 0xb6, 0x90, 0x08, 0x17, 0x6b, - 0x4e, 0x6a, 0x62, 0x71, 0xaa, 0x04, 0x93, 0x02, 0xa3, 0x06, 0x73, 0x10, 0x84, 0xa3, 0x14, 0xc6, - 0xc5, 0x03, 0xd1, 0x58, 0x5c, 0x90, 0x9f, 0x57, 0x9c, 0x2a, 0x64, 0xc2, 0xc5, 0x96, 0x91, 0x9a, - 0x98, 0x92, 0x5a, 0x04, 0xd6, 0xcb, 0x6d, 0x24, 0xa3, 0x87, 0xec, 0x1e, 0x3d, 0x98, 0x3a, 0x0f, - 0xb0, 0x9a, 0x20, 0xa8, 0x5a, 0x21, 0x01, 0x2e, 0xe6, 0xec, 0xd4, 0x4a, 0xb0, 0xc9, 0x3c, 0x41, - 0x20, 0xa6, 0x92, 0x22, 0x17, 0x6f, 0x68, 0x5e, 0x0e, 0x92, 0x93, 0xa0, 0x4a, 0x18, 0x11, 0x4a, - 0xdc, 0xb8, 0xf8, 0x60, 0x4a, 0x28, 0xb1, 0xdc, 0x68, 0x03, 0x23, 0x17, 0x0b, 0xc8, 0x0f, 0x42, - 0xfe, 0x50, 0x5a, 0x54, 0x0f, 0x16, 0xe6, 0x7a, 0x48, 0x81, 0x22, 0x25, 0x86, 0x2e, 0x0c, 0x31, - 0x4d, 0x49, 0xa2, 0xe9, 0xf2, 0x93, 0xc9, 0x4c, 0x42, 0x4a, 0xbc, 0xfa, 0x65, 0xc6, 0xfa, 0x20, - 0x05, 0x60, 0xc2, 0x8a, 0x51, 0x4b, 0x28, 0x9c, 0x8b, 0x0d, 0xe2, 0x42, 0x21, 0x71, 0x84, 0x5e, - 0x14, 0x6f, 0x49, 0x49, 0x60, 0x4a, 0x40, 0x8d, 0x95, 0x02, 0x1b, 0x2b, 0xa2, 0xc4, 0x0f, 0x37, - 0xb6, 0x34, 0x0f, 0x6a, 0xb0, 0x93, 0xc0, 0x89, 0x47, 0x72, 0x8c, 0x17, 0x1e, 0xc9, 0x31, 0x3e, - 0x78, 0x24, 0xc7, 0x38, 0xe3, 0xb1, 0x1c, 0x43, 0x12, 0x1b, 0x38, 0x1e, 0x8d, 0x01, 0x01, 0x00, - 0x00, 0xff, 0xff, 0x65, 0xa8, 0x61, 0xb1, 0x3d, 0x02, 0x00, 0x00, + 0xd2, 0xf3, 0xd3, 0xf3, 0xc1, 0x82, 0xfa, 0x20, 0x16, 0x44, 0x5e, 0x4a, 0x23, 0xb5, 0x24, 0x39, + 0x45, 0x3f, 0x59, 0x1f, 0x44, 0x15, 0xa7, 0x16, 0x95, 0xa5, 0x16, 0x21, 0x31, 0x0b, 0x92, 0xf4, + 0x8b, 0x0a, 0x92, 0xa1, 0x2a, 0x65, 0xd2, 0xf3, 0xf3, 0xd3, 0x73, 0x52, 0xf5, 0x13, 0x0b, 0x32, + 0xf5, 0x13, 0xf3, 0xf2, 0xf2, 0x4b, 0x12, 0x4b, 0x32, 0xf3, 0xf3, 0x8a, 0x21, 0xb2, 0x4a, 0xe6, + 0x5c, 0xdc, 0x3e, 0xf9, 0xc9, 0xd9, 0x41, 0xa9, 0x85, 0xa5, 0xa9, 0xc5, 0x25, 0x42, 0x42, 0x5c, + 0x2c, 0x79, 0x89, 0xb9, 0xa9, 0x12, 0x8c, 0x0a, 0x8c, 0x1a, 0x3c, 0x41, 0x60, 0xb6, 0x90, 0x08, + 0x17, 0x6b, 0x4e, 0x6a, 0x62, 0x71, 0xaa, 0x04, 0x93, 0x02, 0xa3, 0x06, 0x73, 0x10, 0x84, 0xa3, + 0x14, 0xc6, 0xc5, 0x03, 0xd1, 0x58, 0x5c, 0x90, 0x9f, 0x57, 0x9c, 0x2a, 0x64, 0xc2, 0xc5, 0x96, + 0x91, 0x9a, 0x98, 0x92, 0x5a, 0x04, 0xd6, 0xcb, 0x6d, 0x24, 0xa3, 0x87, 0xec, 0x1e, 0x3d, 0x98, + 0x3a, 0x0f, 0xb0, 0x9a, 0x20, 0xa8, 0x5a, 0x21, 0x01, 0x2e, 0xe6, 0xec, 0xd4, 0x4a, 0xb0, 0xc9, + 0x3c, 0x41, 0x20, 0xa6, 0x92, 0x22, 0x17, 0x6f, 0x68, 0x5e, 0x0e, 0x92, 0x93, 0xa0, 0x4a, 0x18, + 0x11, 0x4a, 0xdc, 0xb8, 0xf8, 0x60, 0x4a, 0x28, 0xb1, 0xdc, 0x68, 0x03, 0x23, 0x17, 0x0b, 0xc8, + 0x0f, 0x42, 0xfe, 0x50, 0x5a, 0x54, 0x0f, 0x16, 0xea, 0x7a, 0x48, 0x81, 0x22, 0x25, 0x86, 0x2e, + 0x0c, 0x31, 0x4d, 0x49, 0xa2, 0xe9, 0xf2, 0x93, 0xc9, 0x4c, 0x42, 0x4a, 0xbc, 0xfa, 0x65, 0xc6, + 0xfa, 0x20, 0x05, 0x60, 0xc2, 0x8a, 0x51, 0x4b, 0x28, 0x9c, 0x8b, 0x0d, 0xe2, 0x42, 0x21, 0x71, + 0x84, 0x5e, 0x14, 0x6f, 0x49, 0x49, 0x60, 0x4a, 0x40, 0x8d, 0x95, 0x02, 0x1b, 0x2b, 0xa2, 0xc4, + 0x0f, 0x37, 0xb6, 0x34, 0x0f, 0x6a, 0xb0, 0x93, 0xc0, 0x89, 0x47, 0x72, 0x8c, 0x17, 0x1e, 0xc9, + 0x31, 0x3e, 0x78, 0x24, 0xc7, 0x38, 0xe3, 0xb1, 0x1c, 0x43, 0x12, 0x1b, 0x38, 0x1e, 0x8d, 0x01, + 0x01, 0x00, 0x00, 0xff, 0xff, 0x16, 0xec, 0xb6, 0x3d, 0x3f, 0x02, 0x00, 0x00, } diff --git a/etcdserver/api/v3lock/v3lockpb/v3lock.proto b/etcdserver/api/v3lock/v3lockpb/v3lock.proto index 7220c7f0a19d..7e695f9b58b9 100644 --- a/etcdserver/api/v3lock/v3lockpb/v3lock.proto +++ b/etcdserver/api/v3lock/v3lockpb/v3lock.proto @@ -2,7 +2,7 @@ syntax = "proto3"; package v3lockpb; import "gogoproto/gogo.proto"; -import "etcd/etcdserver/etcdserverpb/rpc.proto"; +import "etcd/c/etcdserver/etcdserverpb/rpc.proto"; // for grpc-gateway import "google/api/annotations.proto"; diff --git a/etcdserver/api/v3rpc/auth.go b/etcdserver/api/v3rpc/auth.go index 97129aa03b79..aa90f070868b 100644 --- a/etcdserver/api/v3rpc/auth.go +++ b/etcdserver/api/v3rpc/auth.go @@ -17,8 +17,8 @@ package v3rpc import ( "context" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" ) type AuthServer struct { diff --git a/etcdserver/api/v3rpc/grpc.go b/etcdserver/api/v3rpc/grpc.go index 2e9910746654..49b9b52aee2d 100644 --- a/etcdserver/api/v3rpc/grpc.go +++ b/etcdserver/api/v3rpc/grpc.go @@ -18,12 +18,12 @@ import ( "crypto/tls" "math" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" grpc_middleware "github.com/grpc-ecosystem/go-grpc-middleware" grpc_prometheus "github.com/grpc-ecosystem/go-grpc-prometheus" - "go.etcd.io/etcd/v3/clientv3/credentials" + "go.etcd.io/etcd/c/v3/clientv3/credentials" "google.golang.org/grpc" "google.golang.org/grpc/health" healthpb "google.golang.org/grpc/health/grpc_health_v1" diff --git a/etcdserver/api/v3rpc/header.go b/etcdserver/api/v3rpc/header.go index 04c5f57140c3..e060d0d49cb9 100644 --- a/etcdserver/api/v3rpc/header.go +++ b/etcdserver/api/v3rpc/header.go @@ -15,8 +15,8 @@ package v3rpc import ( + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" ) type header struct { diff --git a/etcdserver/api/v3rpc/interceptor.go b/etcdserver/api/v3rpc/interceptor.go index 45ea5d734fdd..30db7127e3be 100644 --- a/etcdserver/api/v3rpc/interceptor.go +++ b/etcdserver/api/v3rpc/interceptor.go @@ -19,13 +19,13 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.uber.org/zap" "google.golang.org/grpc" "google.golang.org/grpc/metadata" diff --git a/etcdserver/api/v3rpc/key.go b/etcdserver/api/v3rpc/key.go index 19a0320cf87c..43c5d6fc6854 100644 --- a/etcdserver/api/v3rpc/key.go +++ b/etcdserver/api/v3rpc/key.go @@ -18,9 +18,9 @@ package v3rpc import ( "context" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/pkg/adt" ) diff --git a/etcdserver/api/v3rpc/lease.go b/etcdserver/api/v3rpc/lease.go index 8bbcebad3fbf..323dbcdc1058 100644 --- a/etcdserver/api/v3rpc/lease.go +++ b/etcdserver/api/v3rpc/lease.go @@ -18,9 +18,9 @@ import ( "context" "io" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease" "go.uber.org/zap" diff --git a/etcdserver/api/v3rpc/maintenance.go b/etcdserver/api/v3rpc/maintenance.go index 1d96e970a7b7..7df3254b9f7f 100644 --- a/etcdserver/api/v3rpc/maintenance.go +++ b/etcdserver/api/v3rpc/maintenance.go @@ -21,14 +21,14 @@ import ( "time" "github.com/dustin/go-humanize" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/auth" "go.etcd.io/etcd/v3/etcdserver" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/mvcc/backend" "go.etcd.io/etcd/v3/raft" - "go.etcd.io/etcd/v3/version" "go.uber.org/zap" ) diff --git a/etcdserver/api/v3rpc/member.go b/etcdserver/api/v3rpc/member.go index 5cf3feaf7690..c477c99a9d96 100644 --- a/etcdserver/api/v3rpc/member.go +++ b/etcdserver/api/v3rpc/member.go @@ -18,12 +18,12 @@ import ( "context" "time" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/membership" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/types" ) type ClusterServer struct { diff --git a/etcdserver/api/v3rpc/quota.go b/etcdserver/api/v3rpc/quota.go index b40edbdfc03a..5af5717a55ae 100644 --- a/etcdserver/api/v3rpc/quota.go +++ b/etcdserver/api/v3rpc/quota.go @@ -17,10 +17,10 @@ package v3rpc import ( "context" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/types" ) type quotaKVServer struct { diff --git a/etcdserver/api/v3rpc/util.go b/etcdserver/api/v3rpc/util.go index 2ae37af05bfc..1f2c8a8ad393 100644 --- a/etcdserver/api/v3rpc/util.go +++ b/etcdserver/api/v3rpc/util.go @@ -18,11 +18,11 @@ import ( "context" "strings" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/auth" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/membership" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc" diff --git a/etcdserver/api/v3rpc/util_test.go b/etcdserver/api/v3rpc/util_test.go index b84a267d557a..639378cd9cdf 100644 --- a/etcdserver/api/v3rpc/util_test.go +++ b/etcdserver/api/v3rpc/util_test.go @@ -19,7 +19,7 @@ import ( "errors" "testing" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" "go.etcd.io/etcd/v3/mvcc" "google.golang.org/grpc/codes" diff --git a/etcdserver/api/v3rpc/watch.go b/etcdserver/api/v3rpc/watch.go index c623d3d946df..dd7f8be23dea 100644 --- a/etcdserver/api/v3rpc/watch.go +++ b/etcdserver/api/v3rpc/watch.go @@ -21,12 +21,12 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/auth" "go.etcd.io/etcd/v3/etcdserver" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/mvcc" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.uber.org/zap" ) diff --git a/etcdserver/api/v3rpc/watch_test.go b/etcdserver/api/v3rpc/watch_test.go index f507f5eabd88..829fba5ad562 100644 --- a/etcdserver/api/v3rpc/watch_test.go +++ b/etcdserver/api/v3rpc/watch_test.go @@ -19,8 +19,8 @@ import ( "math" "testing" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) func TestSendFragment(t *testing.T) { diff --git a/etcdserver/apply.go b/etcdserver/apply.go index 0135f8bcd375..84dd627da535 100644 --- a/etcdserver/apply.go +++ b/etcdserver/apply.go @@ -22,16 +22,16 @@ import ( "time" "github.com/coreos/go-semver/semver" + "go.etcd.io/etcd/c/v3/etcdserver/api/membership/membershippb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/auth" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/membership" - "go.etcd.io/etcd/v3/etcdserver/api/membership/membershippb" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/traceutil" - "go.etcd.io/etcd/v3/pkg/types" "github.com/gogo/protobuf/proto" "go.uber.org/zap" diff --git a/etcdserver/apply_auth.go b/etcdserver/apply_auth.go index 40ed7bde56e9..96530574c280 100644 --- a/etcdserver/apply_auth.go +++ b/etcdserver/apply_auth.go @@ -18,8 +18,8 @@ import ( "context" "sync" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/auth" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/pkg/traceutil" diff --git a/etcdserver/cluster_util.go b/etcdserver/cluster_util.go index fc09e1a398f2..c5e819811722 100644 --- a/etcdserver/cluster_util.go +++ b/etcdserver/cluster_util.go @@ -24,9 +24,9 @@ import ( "strings" "time" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/etcdserver/api/membership" - "go.etcd.io/etcd/v3/pkg/types" - "go.etcd.io/etcd/v3/version" "github.com/coreos/go-semver/semver" "go.uber.org/zap" diff --git a/etcdserver/cluster_util_test.go b/etcdserver/cluster_util_test.go index 29ba9f90dc8a..026806eb2399 100644 --- a/etcdserver/cluster_util_test.go +++ b/etcdserver/cluster_util_test.go @@ -18,8 +18,8 @@ import ( "reflect" "testing" - "go.etcd.io/etcd/v3/pkg/types" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" "github.com/coreos/go-semver/semver" "go.uber.org/zap" diff --git a/etcdserver/config.go b/etcdserver/config.go index 20f0d46474de..4d8163cd5357 100644 --- a/etcdserver/config.go +++ b/etcdserver/config.go @@ -22,9 +22,9 @@ import ( "strings" "time" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/pkg/netutil" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" bolt "go.etcd.io/bbolt" "go.uber.org/zap" diff --git a/etcdserver/config_test.go b/etcdserver/config_test.go index e91b5fe3b901..c84eb3a0a9d3 100644 --- a/etcdserver/config_test.go +++ b/etcdserver/config_test.go @@ -18,7 +18,7 @@ import ( "net/url" "testing" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" "go.uber.org/zap" ) diff --git a/etcdserver/corrupt.go b/etcdserver/corrupt.go index 45aa4535713b..08d656019f09 100644 --- a/etcdserver/corrupt.go +++ b/etcdserver/corrupt.go @@ -24,11 +24,11 @@ import ( "strings" "time" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/pkg/traceutil" - "go.etcd.io/etcd/v3/pkg/types" "go.uber.org/zap" ) diff --git a/etcdserver/metrics.go b/etcdserver/metrics.go index 0c0ce912df48..6b938971368a 100644 --- a/etcdserver/metrics.go +++ b/etcdserver/metrics.go @@ -18,8 +18,8 @@ import ( goruntime "runtime" "time" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/pkg/runtime" - "go.etcd.io/etcd/v3/version" "github.com/prometheus/client_golang/prometheus" "go.uber.org/zap" diff --git a/etcdserver/quota.go b/etcdserver/quota.go index 4727ac14a127..20ae3f316d47 100644 --- a/etcdserver/quota.go +++ b/etcdserver/quota.go @@ -17,7 +17,7 @@ package etcdserver import ( "sync" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" humanize "github.com/dustin/go-humanize" "go.uber.org/zap" diff --git a/etcdserver/raft.go b/etcdserver/raft.go index e87526793cd8..6ed78ae02a85 100644 --- a/etcdserver/raft.go +++ b/etcdserver/raft.go @@ -23,13 +23,14 @@ import ( "sync" "time" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/rafthttp" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/pkg/contention" - "go.etcd.io/etcd/v3/pkg/logutil" + raftlog "go.etcd.io/etcd/v3/pkg/logutil/raft" "go.etcd.io/etcd/v3/pkg/pbutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" "go.etcd.io/etcd/v3/wal" @@ -119,11 +120,11 @@ type raftNodeConfig struct { func newRaftNode(cfg raftNodeConfig) *raftNode { var lg raft.Logger if cfg.lg != nil { - lg = logutil.NewRaftLoggerZap(cfg.lg) + lg = raftlog.NewRaftLoggerZap(cfg.lg) } else { lcfg := logutil.DefaultZapLoggerConfig var err error - lg, err = logutil.NewRaftLogger(&lcfg) + lg, err = raftlog.NewRaftLogger(&lcfg) if err != nil { log.Fatalf("cannot create raft logger %v", err) } @@ -460,12 +461,12 @@ func startNode(cfg ServerConfig, cl *membership.RaftCluster, ids []types.ID) (id if cfg.Logger != nil { // called after capnslog setting in "init" function if cfg.LoggerConfig != nil { - c.Logger, err = logutil.NewRaftLogger(cfg.LoggerConfig) + c.Logger, err = raftlog.NewRaftLogger(cfg.LoggerConfig) if err != nil { log.Fatalf("cannot create raft logger %v", err) } } else if cfg.LoggerCore != nil && cfg.LoggerWriteSyncer != nil { - c.Logger = logutil.NewRaftLoggerFromZapCore(cfg.LoggerCore, cfg.LoggerWriteSyncer) + c.Logger = raftlog.NewRaftLoggerFromZapCore(cfg.LoggerCore, cfg.LoggerWriteSyncer) } } @@ -515,12 +516,12 @@ func restartNode(cfg ServerConfig, snapshot *raftpb.Snapshot) (types.ID, *member // called after capnslog setting in "init" function var err error if cfg.LoggerConfig != nil { - c.Logger, err = logutil.NewRaftLogger(cfg.LoggerConfig) + c.Logger, err = raftlog.NewRaftLogger(cfg.LoggerConfig) if err != nil { log.Fatalf("cannot create raft logger %v", err) } } else if cfg.LoggerCore != nil && cfg.LoggerWriteSyncer != nil { - c.Logger = logutil.NewRaftLoggerFromZapCore(cfg.LoggerCore, cfg.LoggerWriteSyncer) + c.Logger = raftlog.NewRaftLoggerFromZapCore(cfg.LoggerCore, cfg.LoggerWriteSyncer) } } @@ -599,12 +600,12 @@ func restartAsStandaloneNode(cfg ServerConfig, snapshot *raftpb.Snapshot) (types if cfg.Logger != nil { // called after capnslog setting in "init" function if cfg.LoggerConfig != nil { - c.Logger, err = logutil.NewRaftLogger(cfg.LoggerConfig) + c.Logger, err = raftlog.NewRaftLogger(cfg.LoggerConfig) if err != nil { log.Fatalf("cannot create raft logger %v", err) } } else if cfg.LoggerCore != nil && cfg.LoggerWriteSyncer != nil { - c.Logger = logutil.NewRaftLoggerFromZapCore(cfg.LoggerCore, cfg.LoggerWriteSyncer) + c.Logger = raftlog.NewRaftLoggerFromZapCore(cfg.LoggerCore, cfg.LoggerWriteSyncer) } } diff --git a/etcdserver/raft_test.go b/etcdserver/raft_test.go index 8bddcd051095..b64eac8b6ddb 100644 --- a/etcdserver/raft_test.go +++ b/etcdserver/raft_test.go @@ -21,10 +21,10 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/pkg/mock/mockstorage" "go.etcd.io/etcd/v3/pkg/pbutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" "go.uber.org/zap" diff --git a/etcdserver/server.go b/etcdserver/server.go index 40f556dd0b97..c4f2c9690b45 100644 --- a/etcdserver/server.go +++ b/etcdserver/server.go @@ -34,10 +34,14 @@ import ( "github.com/prometheus/client_golang/prometheus" "go.uber.org/zap" + "go.etcd.io/etcd/c/v3/etcdserver/api/membership/membershippb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/auth" "go.etcd.io/etcd/v3/etcdserver/api" "go.etcd.io/etcd/v3/etcdserver/api/membership" - "go.etcd.io/etcd/v3/etcdserver/api/membership/membershippb" "go.etcd.io/etcd/v3/etcdserver/api/rafthttp" "go.etcd.io/etcd/v3/etcdserver/api/snap" "go.etcd.io/etcd/v3/etcdserver/api/v2discovery" @@ -47,22 +51,18 @@ import ( "go.etcd.io/etcd/v3/etcdserver/api/v3alarm" "go.etcd.io/etcd/v3/etcdserver/api/v3compactor" "go.etcd.io/etcd/v3/etcdserver/cindex" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/lease/leasehttp" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/idutil" "go.etcd.io/etcd/v3/pkg/pbutil" "go.etcd.io/etcd/v3/pkg/runtime" "go.etcd.io/etcd/v3/pkg/schedule" "go.etcd.io/etcd/v3/pkg/traceutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/pkg/wait" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" - "go.etcd.io/etcd/v3/version" "go.etcd.io/etcd/v3/wal" ) diff --git a/etcdserver/server_test.go b/etcdserver/server_test.go index d09ccc30b57f..82a6ba896114 100644 --- a/etcdserver/server_test.go +++ b/etcdserver/server_test.go @@ -27,23 +27,23 @@ import ( "testing" "time" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/rafthttp" "go.etcd.io/etcd/v3/etcdserver/api/snap" "go.etcd.io/etcd/v3/etcdserver/api/v2store" "go.etcd.io/etcd/v3/etcdserver/cindex" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/idutil" "go.etcd.io/etcd/v3/pkg/mock/mockstorage" "go.etcd.io/etcd/v3/pkg/mock/mockstore" "go.etcd.io/etcd/v3/pkg/mock/mockwait" "go.etcd.io/etcd/v3/pkg/pbutil" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/pkg/wait" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" diff --git a/etcdserver/storage.go b/etcdserver/storage.go index 88271aaca569..15df78507e21 100644 --- a/etcdserver/storage.go +++ b/etcdserver/storage.go @@ -17,10 +17,10 @@ package etcdserver import ( "io" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/snap" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/pkg/pbutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" "go.etcd.io/etcd/v3/wal" "go.etcd.io/etcd/v3/wal/walpb" diff --git a/etcdserver/util.go b/etcdserver/util.go index 6dfa5fd45161..dc67dc6e2dd8 100644 --- a/etcdserver/util.go +++ b/etcdserver/util.go @@ -21,10 +21,10 @@ import ( "time" "github.com/golang/protobuf/proto" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/rafthttp" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/types" "go.uber.org/zap" ) diff --git a/etcdserver/util_test.go b/etcdserver/util_test.go index 3c4ee7ee94db..fbbcfe468a0e 100644 --- a/etcdserver/util_test.go +++ b/etcdserver/util_test.go @@ -21,10 +21,10 @@ import ( "go.uber.org/zap" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/membership" "go.etcd.io/etcd/v3/etcdserver/api/rafthttp" "go.etcd.io/etcd/v3/etcdserver/api/snap" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" ) diff --git a/etcdserver/v2_server.go b/etcdserver/v2_server.go index cf6bc05d6021..b5df3c30f3b5 100644 --- a/etcdserver/v2_server.go +++ b/etcdserver/v2_server.go @@ -18,8 +18,8 @@ import ( "context" "time" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver/api/v2store" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" ) type RequestV2 pb.Request diff --git a/etcdserver/v3_server.go b/etcdserver/v3_server.go index e96f9660d442..9951e8a8f952 100644 --- a/etcdserver/v3_server.go +++ b/etcdserver/v3_server.go @@ -21,10 +21,10 @@ import ( "encoding/binary" "time" + "go.etcd.io/etcd/c/v3/etcdserver/api/membership/membershippb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/auth" "go.etcd.io/etcd/v3/etcdserver/api/membership" - "go.etcd.io/etcd/v3/etcdserver/api/membership/membershippb" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/lease/leasehttp" "go.etcd.io/etcd/v3/mvcc" diff --git a/functional/agent/handler.go b/functional/agent/handler.go index 27bef7dca7a2..f9e757ed28be 100644 --- a/functional/agent/handler.go +++ b/functional/agent/handler.go @@ -25,8 +25,8 @@ import ( "syscall" "time" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/functional/rpcpb" - "go.etcd.io/etcd/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/proxy" "go.uber.org/zap" diff --git a/functional/agent/utils.go b/functional/agent/utils.go index d0f44b4af41b..465f81eb43e4 100644 --- a/functional/agent/utils.go +++ b/functional/agent/utils.go @@ -24,7 +24,7 @@ import ( "strconv" "time" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" ) // TODO: support separate WAL directory diff --git a/functional/rpcpb/member.go b/functional/rpcpb/member.go index f9ea5528b8eb..b1b95d133e49 100644 --- a/functional/rpcpb/member.go +++ b/functional/rpcpb/member.go @@ -22,11 +22,11 @@ import ( "os" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/snapshot" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/logutil" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/v3/etcdctl/ctlv3/command/snapshot" "github.com/dustin/go-humanize" "go.uber.org/zap" diff --git a/functional/runner/election_command.go b/functional/runner/election_command.go index 1cec694e2d99..1d2bad001b1a 100644 --- a/functional/runner/election_command.go +++ b/functional/runner/election_command.go @@ -19,7 +19,7 @@ import ( "errors" "fmt" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" "github.com/spf13/cobra" ) diff --git a/functional/runner/error.go b/functional/runner/error.go index 39b325a8aaeb..426c18d06012 100644 --- a/functional/runner/error.go +++ b/functional/runner/error.go @@ -18,7 +18,7 @@ import ( "fmt" "os" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) const ( diff --git a/functional/runner/global.go b/functional/runner/global.go index b99466cafc21..90c16d930765 100644 --- a/functional/runner/global.go +++ b/functional/runner/global.go @@ -21,7 +21,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "github.com/spf13/cobra" "golang.org/x/time/rate" diff --git a/functional/runner/help.go b/functional/runner/help.go index 06196a89e3d1..e14697c61585 100644 --- a/functional/runner/help.go +++ b/functional/runner/help.go @@ -25,7 +25,7 @@ import ( "text/tabwriter" "text/template" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/version" "github.com/spf13/cobra" "github.com/spf13/pflag" diff --git a/functional/runner/lease_renewer_command.go b/functional/runner/lease_renewer_command.go index 6418ef0db482..4008cc2adf3f 100644 --- a/functional/runner/lease_renewer_command.go +++ b/functional/runner/lease_renewer_command.go @@ -21,7 +21,7 @@ import ( "log" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "github.com/spf13/cobra" "google.golang.org/grpc/codes" diff --git a/functional/runner/lock_racer_command.go b/functional/runner/lock_racer_command.go index ffde9f5f48e1..df41fc60c061 100644 --- a/functional/runner/lock_racer_command.go +++ b/functional/runner/lock_racer_command.go @@ -20,7 +20,7 @@ import ( "fmt" "sync" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" "github.com/spf13/cobra" ) diff --git a/functional/runner/watch_command.go b/functional/runner/watch_command.go index c9e36dc00f59..22af5e7a2287 100644 --- a/functional/runner/watch_command.go +++ b/functional/runner/watch_command.go @@ -22,7 +22,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/stringutil" "github.com/spf13/cobra" diff --git a/functional/tester/case_sigquit_remove.go b/functional/tester/case_sigquit_remove.go index c201cc2dc20b..7148edb2f823 100644 --- a/functional/tester/case_sigquit_remove.go +++ b/functional/tester/case_sigquit_remove.go @@ -21,7 +21,7 @@ import ( "strings" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/functional/rpcpb" "go.uber.org/zap" diff --git a/functional/tester/case_sigquit_remove_quorum.go b/functional/tester/case_sigquit_remove_quorum.go index 47117902c99c..98dce81855d6 100644 --- a/functional/tester/case_sigquit_remove_quorum.go +++ b/functional/tester/case_sigquit_remove_quorum.go @@ -20,7 +20,7 @@ import ( "strings" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/functional/rpcpb" "go.uber.org/zap" diff --git a/functional/tester/checker_lease_expire.go b/functional/tester/checker_lease_expire.go index 668ee41dc4ff..a6d2679c65a9 100644 --- a/functional/tester/checker_lease_expire.go +++ b/functional/tester/checker_lease_expire.go @@ -19,8 +19,8 @@ import ( "fmt" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" "go.etcd.io/etcd/v3/functional/rpcpb" "go.uber.org/zap" diff --git a/functional/tester/cluster.go b/functional/tester/cluster.go index f9d0e27c9275..a6040c42811f 100644 --- a/functional/tester/cluster.go +++ b/functional/tester/cluster.go @@ -29,9 +29,9 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/functional/rpcpb" "go.etcd.io/etcd/v3/pkg/debugutil" - "go.etcd.io/etcd/v3/pkg/fileutil" "github.com/prometheus/client_golang/prometheus/promhttp" "go.uber.org/zap" diff --git a/functional/tester/cluster_run.go b/functional/tester/cluster_run.go index ccbf14ecfb75..fb7f6ea1aee6 100644 --- a/functional/tester/cluster_run.go +++ b/functional/tester/cluster_run.go @@ -19,8 +19,8 @@ import ( "os" "time" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/functional/rpcpb" - "go.etcd.io/etcd/v3/pkg/fileutil" "go.uber.org/zap" ) diff --git a/functional/tester/stresser_key.go b/functional/tester/stresser_key.go index ca3d50ecf813..66a5e0a6c007 100644 --- a/functional/tester/stresser_key.go +++ b/functional/tester/stresser_key.go @@ -23,9 +23,9 @@ import ( "sync/atomic" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" "go.etcd.io/etcd/v3/etcdserver" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" "go.etcd.io/etcd/v3/functional/rpcpb" "go.etcd.io/etcd/v3/raft" diff --git a/functional/tester/stresser_lease.go b/functional/tester/stresser_lease.go index 45671154e7f8..d19aaf3dabab 100644 --- a/functional/tester/stresser_lease.go +++ b/functional/tester/stresser_lease.go @@ -22,8 +22,8 @@ import ( "sync/atomic" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" "go.etcd.io/etcd/v3/functional/rpcpb" "go.uber.org/zap" diff --git a/go.mod b/go.mod index 67669b5c9199..eb0220e8708e 100644 --- a/go.mod +++ b/go.mod @@ -6,7 +6,7 @@ require ( github.com/bgentry/speakeasy v0.1.0 github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa github.com/coreos/go-semver v0.2.0 - github.com/coreos/go-systemd/v22 v22.0.0 + github.com/coreos/go-systemd/v22 v22.1.0 github.com/creack/pty v1.1.7 github.com/dgrijalva/jwt-go v3.2.0+incompatible github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4 @@ -16,18 +16,15 @@ require ( github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903 github.com/golang/protobuf v1.3.2 github.com/google/btree v1.0.0 - github.com/google/uuid v1.0.0 github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c // indirect github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4 github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 github.com/grpc-ecosystem/grpc-gateway v1.9.5 github.com/inconshreveable/mousetrap v1.0.0 // indirect github.com/jonboulle/clockwork v0.1.0 - github.com/json-iterator/go v1.1.7 github.com/mattn/go-colorable v0.0.9 // indirect github.com/mattn/go-isatty v0.0.4 // indirect github.com/mattn/go-runewidth v0.0.2 // indirect - github.com/modern-go/reflect2 v1.0.1 github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5 github.com/prometheus/client_golang v1.0.0 github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4 @@ -39,6 +36,7 @@ require ( github.com/urfave/cli v1.20.0 github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 go.etcd.io/bbolt v1.3.5 + go.etcd.io/etcd/c/v3 v3.0.0-00010101000000-000000000000 go.uber.org/zap v1.14.1 golang.org/x/crypto v0.0.0-20191002192127-34f69633bfdc golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7 @@ -48,3 +46,9 @@ require ( gopkg.in/yaml.v2 v2.2.2 sigs.k8s.io/yaml v1.1.0 ) + +replace ( + github.com/gogo/protobuf => github.com/gogo/protobuf v1.2.1 + go.etcd.io/etcd/c/v3 => ./c + go.etcd.io/etcd/integration/v3 => ./SHOULD_NOT_BE_DEPENDENCY +) diff --git a/go.sum b/go.sum index 188099353421..2a2d3cd5d5ad 100644 --- a/go.sum +++ b/go.sum @@ -3,7 +3,6 @@ github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= -github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973 h1:xJ4a3vCFaGF/jqvzLMYoU8P317H5OQ+Via4RmuPwCS0= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0 h1:HWo1m869IqiPhD389kmkxeTalrjNbbJTC8LXupb+sl0= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= @@ -15,8 +14,8 @@ github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa h1:OaNxuTZr github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= github.com/coreos/go-semver v0.2.0 h1:3Jm3tLmsgAYcjC+4Up7hJrFBPr+n7rAqYeSw/SZazuY= github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= -github.com/coreos/go-systemd/v22 v22.0.0 h1:XJIw/+VlJ+87J+doOxznsAWIdmWuViOVhkQamW5YV28= -github.com/coreos/go-systemd/v22 v22.0.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= +github.com/coreos/go-systemd/v22 v22.1.0 h1:kq/SbG2BCKLkDKkjQf5OWwKWUKj1lgs3lFI4PxnR5lg= +github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= github.com/creack/pty v1.1.7 h1:6pwm8kMQKCmgUg0ZHTm5+/YvRK0s3THD/28+T6/kk4A= github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= @@ -37,8 +36,6 @@ github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2 github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= -github.com/gogo/protobuf v1.1.1 h1:72R+M5VuhED/KujmZVcIquuo8mBgX4oVda//DQb3PXo= -github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= github.com/gogo/protobuf v1.2.1 h1:/s5zKNz0uPFCZ5hddgPdo2TK2TVrUNMn0OOX8/aZMTE= github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b h1:VKtxabqXZkF25pY9ekfRL6a582T4P37/31XEstQ5p58= @@ -46,9 +43,7 @@ github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfU github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903 h1:LbsanbbD6LieFkXbj9YNNBupiGHJgFeLpO0j0Fza1h8= github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= -github.com/golang/protobuf v1.2.0 h1:P3YflyNX/ehuJFLhxviNdFxQPkGK5cDcApsge1SqnvM= github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.1 h1:YF8+flBXS5eO826T4nzqPrxfhQThhXl0YzfuUPu4SBg= github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.3.2 h1:6nsPYzhq5kReh6QImI3k5qWzO4PEbvbIW2cwSfR/6xs= github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= @@ -72,10 +67,9 @@ github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NH github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/jonboulle/clockwork v0.1.0 h1:VKV+ZcuP6l3yW9doeqz6ziZGgcynBVQO+obU0+0hcPo= github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= -github.com/json-iterator/go v1.1.6 h1:MrUvLMLTMxbqFJ9kzlvat/rYZqZnW3u4wkLzWTaFwKs= github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= -github.com/json-iterator/go v1.1.7 h1:KfgG9LzI+pYjr4xvmz/5H4FXjokeP+rlHLhv3iH62Fo= -github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.10 h1:Kz6Cvnvv2wGdaG/V8yMvfkmNiXq9Ya2KUv4rouJJr68= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= @@ -104,7 +98,6 @@ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3Rllmb github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5 h1:58+kh9C6jJVXYjt8IE48G2eWl6BjwU5Gj0gqY84fy78= github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= -github.com/pkg/errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw= github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I= github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= @@ -114,7 +107,6 @@ github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXP github.com/prometheus/client_golang v1.0.0 h1:vrDKnkGzuGvhNAL56c7DBz29ZL+KxnoR0x7enabFceM= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= -github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90 h1:S/YWwWx/RA8rT8tKFRuGUZhuA90OyIBpPCXkcbwU8DE= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4 h1:gQz4mCbXsO+nc9n1hCxHcGA3Zx3Eo+UHZoInFGUIXNM= github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= @@ -125,7 +117,6 @@ github.com/prometheus/procfs v0.0.2 h1:6LJUbpNm42llc4HRCuvApCSWB/WfhuNo9K98Q9sNG github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/sirupsen/logrus v1.2.0 h1:juTguoYk5qI21pwyTXY3B3Y5cOTH3ZUyZCg1v/mihuo= github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= github.com/sirupsen/logrus v1.4.2 h1:SPIRibHv4MatM3XXNO2BJeFLZwZ2LvZgfQ5+UNI2im4= github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= @@ -137,9 +128,7 @@ github.com/spf13/pflag v1.0.1 h1:aCvUg6QPl3ibpQUxyLkrEkCHtPqYJL4x9AuhqVqFis4= github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/testify v1.2.2 h1:bSDNvY7ZPG5RlJ8otE/7V6gMiyenm9RtJ7IUVIAoJ1w= github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= -github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0 h1:2E4SXV/wtOkTonXsotYi4li6zVWxYlZuYNCXe9XRJyk= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= @@ -159,9 +148,7 @@ go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee h1:0mgffUl7nfd+FpvXMVz4IDEa go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= go.uber.org/zap v1.14.1 h1:nYDKopTbvAPq/NrUVZwT15y2lpROBiLLyoRTbXOYWOo= go.uber.org/zap v1.14.1/go.mod h1:Mb2vm2krFEG5DV0W9qcHBYFtp/Wku1cvYaqPsS/WYfc= -golang.org/x/crypto v0.0.0-20180904163835-0709b304e793 h1:u+LnwYTOOW7Ukr/fppxEb1Nwz0AtPflrblfvUudpo+I= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2 h1:VklqNMn3ovrHsnt90PveolxSbWFaJdECFbxSq0Mqo2M= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20191002192127-34f69633bfdc h1:c0o/qxkaO2LF5t6fQrT4b5hzyggAkLLlCUjqfRxd8Q4= @@ -175,11 +162,9 @@ golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHl golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20181114220301-adae6a3d119a h1:gOpx8G595UYyvj8UK4+OFyY4rx037g3fmfhe5SasG3U= golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190311183353-d8887717615a h1:oWX7TPOiFAMXLq8o0ikBYfCJVlRHBcsciT5bXOrH628= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -193,9 +178,7 @@ golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5 h1:mzjBh+S5frKOsOBobWIMAbXavqjmgO17k/2puhcFR94= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a h1:1BGLXjeY4akVXGgbC9HugT3Jv3hCI0z56oJR5vAMgBU= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -217,7 +200,6 @@ golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8 h1:Nw54tB0rB7hY/N0NQvRW8DG4Yk3Q6T9cu9RcFQDu1tc= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 h1:gSJIx1SDwno+2ElGhA4+qG2zF97qiUzTM+rQ0klBOcE= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= @@ -226,7 +208,6 @@ google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyac google.golang.org/grpc v1.26.0 h1:2dTRdpdFEEhJYQD8EMLB61nnrzSCTbG38PhqdhvOltg= google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/integration/.gitignore b/integration/.gitignore new file mode 100644 index 000000000000..a3fe109d322a --- /dev/null +++ b/integration/.gitignore @@ -0,0 +1,2 @@ +# git mod vendor will regenerate the directory +vendor/ diff --git a/integration/bridge.go b/integration/bridge.go index cedd16d35530..cc9a83a79287 100644 --- a/integration/bridge.go +++ b/integration/bridge.go @@ -21,7 +21,7 @@ import ( "net" "sync" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/transport" ) // bridge creates a unix socket bridge to another unix socket, making it possible diff --git a/client/integration/client_test.go b/integration/client/client_test.go similarity index 96% rename from client/integration/client_test.go rename to integration/client/client_test.go index a83258be2b45..14d070de1f72 100644 --- a/client/integration/client_test.go +++ b/integration/client/client_test.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package integration +package client_test import ( "context" @@ -24,9 +24,9 @@ import ( "sync/atomic" "testing" - "go.etcd.io/etcd/v3/client" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/client" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) // TestV2NoRetryEOF tests destructive api calls won't retry on a disconnection. diff --git a/client/integration/doc.go b/integration/client/doc.go similarity index 86% rename from client/integration/doc.go rename to integration/client/doc.go index e9c58d67f5c5..5e0bb5a135f3 100644 --- a/client/integration/doc.go +++ b/integration/client/doc.go @@ -12,6 +12,6 @@ // See the License for the specific language governing permissions and // limitations under the License. -// Package integration implements tests built upon embedded etcd, focusing on +// Package client implements tests built upon embedded etcd, focusing on // the correctness of the etcd v2 client. -package integration +package client diff --git a/client/example_keys_test.go b/integration/client/examples/example_keys_test.go similarity index 97% rename from client/example_keys_test.go rename to integration/client/examples/example_keys_test.go index 2dd69a27f77e..726e2a57e392 100644 --- a/client/example_keys_test.go +++ b/integration/client/examples/example_keys_test.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package client_test +package examples_test import ( "context" @@ -20,7 +20,7 @@ import ( "log" "sort" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" ) func ExampleKeysAPI_directory() { diff --git a/integration/client/examples/main_test.go b/integration/client/examples/main_test.go new file mode 100644 index 000000000000..1b148c36ae05 --- /dev/null +++ b/integration/client/examples/main_test.go @@ -0,0 +1,54 @@ +// Copyright 2017 The etcd Authors +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package examples_test + +import ( + "fmt" + "net/http" + "os" + "testing" + "time" + + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/integration/v3" +) + +var exampleEndpoints []string +var exampleTransport *http.Transport + +// TestMain sets up an etcd cluster if running the examples. +func TestMain(m *testing.M) { + tr, trerr := transport.NewTransport(transport.TLSInfo{}, time.Second) + if trerr != nil { + fmt.Fprintf(os.Stderr, "%v", trerr) + os.Exit(1) + } + cfg := integration.ClusterConfig{Size: 1} + clus := integration.NewClusterV3(nil, &cfg) + exampleEndpoints = []string{clus.Members[0].URL()} + exampleTransport = tr + v := m.Run() + clus.Terminate(nil) + if err := testutil.CheckAfterTest(time.Second); err != nil { + fmt.Fprintf(os.Stderr, "%v", err) + os.Exit(1) + } + + if v == 0 && testutil.CheckLeakedGoroutine() { + os.Exit(1) + } + os.Exit(v) +} diff --git a/clientv3/integration/main_test.go b/integration/client/main_test.go similarity index 84% rename from clientv3/integration/main_test.go rename to integration/client/main_test.go index 4dec98da4f81..46f7f076a84f 100644 --- a/clientv3/integration/main_test.go +++ b/integration/client/main_test.go @@ -2,13 +2,13 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -package integration +package client_test import ( "os" "testing" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestMain(m *testing.M) { diff --git a/clientv3/integration/black_hole_test.go b/integration/clientv3/black_hole_test.go similarity index 97% rename from clientv3/integration/black_hole_test.go rename to integration/clientv3/black_hole_test.go index 950e0dae5f2a..ec7925738e90 100644 --- a/clientv3/integration/black_hole_test.go +++ b/integration/clientv3/black_hole_test.go @@ -21,10 +21,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" "google.golang.org/grpc" ) diff --git a/clientv3/integration/cluster_test.go b/integration/clientv3/cluster_test.go similarity index 99% rename from clientv3/integration/cluster_test.go rename to integration/clientv3/cluster_test.go index cbb51cadd996..77b86a788a26 100644 --- a/clientv3/integration/cluster_test.go +++ b/integration/clientv3/cluster_test.go @@ -22,9 +22,9 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/types" + "go.etcd.io/etcd/integration/v3" ) func TestMemberList(t *testing.T) { diff --git a/clientv3/concurrency/election_test.go b/integration/clientv3/concurrency/election_test.go similarity index 97% rename from clientv3/concurrency/election_test.go rename to integration/clientv3/concurrency/election_test.go index a6e03241979f..b81d2a7aaa01 100644 --- a/clientv3/concurrency/election_test.go +++ b/integration/clientv3/concurrency/election_test.go @@ -21,8 +21,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" ) func TestResumeElection(t *testing.T) { diff --git a/clientv3/concurrency/example_election_test.go b/integration/clientv3/concurrency/example_election_test.go similarity index 96% rename from clientv3/concurrency/example_election_test.go rename to integration/clientv3/concurrency/example_election_test.go index e0a1c3e6e093..918032f9b79b 100644 --- a/clientv3/concurrency/example_election_test.go +++ b/integration/clientv3/concurrency/example_election_test.go @@ -21,8 +21,8 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" ) func ExampleElection_Campaign() { diff --git a/clientv3/concurrency/example_mutex_test.go b/integration/clientv3/concurrency/example_mutex_test.go similarity index 97% rename from clientv3/concurrency/example_mutex_test.go rename to integration/clientv3/concurrency/example_mutex_test.go index a4cf19f2c708..753a729445fa 100644 --- a/clientv3/concurrency/example_mutex_test.go +++ b/integration/clientv3/concurrency/example_mutex_test.go @@ -19,8 +19,8 @@ import ( "fmt" "log" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" ) func ExampleMutex_TryLock() { diff --git a/clientv3/concurrency/example_stm_test.go b/integration/clientv3/concurrency/example_stm_test.go similarity index 96% rename from clientv3/concurrency/example_stm_test.go rename to integration/clientv3/concurrency/example_stm_test.go index bdcfab4a13dc..9e01c813e855 100644 --- a/clientv3/concurrency/example_stm_test.go +++ b/integration/clientv3/concurrency/example_stm_test.go @@ -21,8 +21,8 @@ import ( "math/rand" "sync" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" ) // ExampleSTM_apply shows how to use STM with a transactional diff --git a/clientv3/concurrency/main_test.go b/integration/clientv3/concurrency/main_test.go similarity index 94% rename from clientv3/concurrency/main_test.go rename to integration/clientv3/concurrency/main_test.go index 6ffeefddf867..123bfd1bd77d 100644 --- a/clientv3/concurrency/main_test.go +++ b/integration/clientv3/concurrency/main_test.go @@ -20,8 +20,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) var endpoints []string diff --git a/clientv3/concurrency/mutex_test.go b/integration/clientv3/concurrency/mutex_test.go similarity index 95% rename from clientv3/concurrency/mutex_test.go rename to integration/clientv3/concurrency/mutex_test.go index b9f7e4160508..c18b3e74fe9f 100644 --- a/clientv3/concurrency/mutex_test.go +++ b/integration/clientv3/concurrency/mutex_test.go @@ -18,8 +18,8 @@ import ( "context" "testing" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" ) func TestMutexLockSessionExpired(t *testing.T) { diff --git a/clientv3/integration/dial_test.go b/integration/clientv3/dial_test.go similarity index 97% rename from clientv3/integration/dial_test.go rename to integration/clientv3/dial_test.go index ecf1a05dcb34..7f054a36dedf 100644 --- a/clientv3/integration/dial_test.go +++ b/integration/clientv3/dial_test.go @@ -21,11 +21,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/integration/v3" "google.golang.org/grpc" ) diff --git a/clientv3/integration/doc.go b/integration/clientv3/doc.go similarity index 100% rename from clientv3/integration/doc.go rename to integration/clientv3/doc.go diff --git a/clientv3/example_auth_test.go b/integration/clientv3/examples/example_auth_test.go similarity index 98% rename from clientv3/example_auth_test.go rename to integration/clientv3/examples/example_auth_test.go index 0ca4e693e3d4..cba01beeccfb 100644 --- a/clientv3/example_auth_test.go +++ b/integration/clientv3/examples/example_auth_test.go @@ -12,14 +12,14 @@ // See the License for the specific language governing permissions and // limitations under the License. -package clientv3_test +package examples_test import ( "context" "fmt" "log" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) func ExampleAuth() { diff --git a/clientv3/example_cluster_test.go b/integration/clientv3/examples/example_cluster_test.go similarity index 98% rename from clientv3/example_cluster_test.go rename to integration/clientv3/examples/example_cluster_test.go index bb1807823785..5c76f7b423da 100644 --- a/clientv3/example_cluster_test.go +++ b/integration/clientv3/examples/example_cluster_test.go @@ -12,14 +12,14 @@ // See the License for the specific language governing permissions and // limitations under the License. -package clientv3_test +package examples_test import ( "context" "fmt" "log" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) func ExampleCluster_memberList() { diff --git a/clientv3/example_kv_test.go b/integration/clientv3/examples/example_kv_test.go similarity index 98% rename from clientv3/example_kv_test.go rename to integration/clientv3/examples/example_kv_test.go index f5cbd7921e92..357518e4866e 100644 --- a/clientv3/example_kv_test.go +++ b/integration/clientv3/examples/example_kv_test.go @@ -12,15 +12,15 @@ // See the License for the specific language governing permissions and // limitations under the License. -package clientv3_test +package examples_test import ( "context" "fmt" "log" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" ) func ExampleKV_put() { diff --git a/clientv3/example_lease_test.go b/integration/clientv3/examples/example_lease_test.go similarity index 98% rename from clientv3/example_lease_test.go rename to integration/clientv3/examples/example_lease_test.go index 5ddf5f6c3df8..c5e46287c8b5 100644 --- a/clientv3/example_lease_test.go +++ b/integration/clientv3/examples/example_lease_test.go @@ -12,14 +12,14 @@ // See the License for the specific language governing permissions and // limitations under the License. -package clientv3_test +package examples_test import ( "context" "fmt" "log" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) func ExampleLease_grant() { diff --git a/clientv3/example_maintenance_test.go b/integration/clientv3/examples/example_maintenance_test.go similarity index 96% rename from clientv3/example_maintenance_test.go rename to integration/clientv3/examples/example_maintenance_test.go index d345e3a76942..f64d43ac9011 100644 --- a/clientv3/example_maintenance_test.go +++ b/integration/clientv3/examples/example_maintenance_test.go @@ -12,14 +12,14 @@ // See the License for the specific language governing permissions and // limitations under the License. -package clientv3_test +package examples_test import ( "context" "fmt" "log" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) func ExampleMaintenance_status() { diff --git a/clientv3/example_metrics_test.go b/integration/clientv3/examples/example_metrics_test.go similarity index 97% rename from clientv3/example_metrics_test.go rename to integration/clientv3/examples/example_metrics_test.go index 007e66a2489a..b10f782bb49a 100644 --- a/clientv3/example_metrics_test.go +++ b/integration/clientv3/examples/example_metrics_test.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package clientv3_test +package examples_test import ( "context" @@ -23,7 +23,7 @@ import ( "net/http" "strings" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" grpcprom "github.com/grpc-ecosystem/go-grpc-prometheus" "github.com/prometheus/client_golang/prometheus/promhttp" diff --git a/clientv3/example_test.go b/integration/clientv3/examples/example_test.go similarity index 79% rename from clientv3/example_test.go rename to integration/clientv3/examples/example_test.go index 0c6cb9a21792..ba2232ae9323 100644 --- a/clientv3/example_test.go +++ b/integration/clientv3/examples/example_test.go @@ -12,29 +12,16 @@ // See the License for the specific language governing permissions and // limitations under the License. -package clientv3_test +package examples_test import ( "context" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/transport" "log" - "os" - "time" - - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/pkg/transport" - - "google.golang.org/grpc/grpclog" ) -var ( - dialTimeout = 5 * time.Second - requestTimeout = 10 * time.Second - endpoints = []string{"localhost:2379", "localhost:22379", "localhost:32379"} -) - -func Example() { - clientv3.SetLogger(grpclog.NewLoggerV2(os.Stderr, os.Stderr, os.Stderr)) - +func ExampleInsecure() { cli, err := clientv3.New(clientv3.Config{ Endpoints: endpoints, DialTimeout: dialTimeout, @@ -48,6 +35,7 @@ func Example() { if err != nil { log.Fatal(err) } + // Output: } func ExampleConfig_withTLS() { diff --git a/clientv3/example_watch_test.go b/integration/clientv3/examples/example_watch_test.go similarity index 97% rename from clientv3/example_watch_test.go rename to integration/clientv3/examples/example_watch_test.go index eceaa6c64ac3..cd2092823e8d 100644 --- a/clientv3/example_watch_test.go +++ b/integration/clientv3/examples/example_watch_test.go @@ -12,14 +12,14 @@ // See the License for the specific language governing permissions and // limitations under the License. -package clientv3_test +package examples_test import ( "context" "fmt" "log" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) func ExampleWatcher_watch() { diff --git a/integration/clientv3/examples/main_test.go b/integration/clientv3/examples/main_test.go new file mode 100644 index 000000000000..6c3c29a366df --- /dev/null +++ b/integration/clientv3/examples/main_test.go @@ -0,0 +1,60 @@ +// Copyright 2016 The etcd Authors +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package examples_test + +import ( + "fmt" + "go.etcd.io/etcd/c/v3/clientv3" + "google.golang.org/grpc/grpclog" + "os" + "testing" + "time" + + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" +) + +var ( + dialTimeout = 5 * time.Second + requestTimeout = 10 * time.Second + endpoints = []string{"localhost:2379", "localhost:22379", "localhost:32379"} +) + +// TestMain sets up an etcd cluster if running the examples. +func TestMain(m *testing.M) { + + // Redirecting outputs to Stderr, such that they not interleave with examples outputs. + // Setting it once and before running any of the test such that it not data-races + // between HTTP servers running in different tests. + clientv3.SetLogger(grpclog.NewLoggerV2(os.Stderr, os.Stderr, os.Stderr)) + + cfg := integration.ClusterConfig{Size: 3} + clus := integration.NewClusterV3(nil, &cfg) + endpoints = make([]string, 3) + for i := range endpoints { + endpoints[i] = clus.Client(i).Endpoints()[0] + } + v := m.Run() + clus.Terminate(nil) + if err := testutil.CheckAfterTest(time.Second); err != nil { + fmt.Fprintf(os.Stderr, "%v", err) + os.Exit(1) + } + + if v == 0 && testutil.CheckLeakedGoroutine() { + os.Exit(1) + } + os.Exit(v) +} diff --git a/clientv3/integration/kv_test.go b/integration/clientv3/kv_test.go similarity index 99% rename from clientv3/integration/kv_test.go rename to integration/clientv3/kv_test.go index 168e64a2087d..9985d35f882c 100644 --- a/clientv3/integration/kv_test.go +++ b/integration/clientv3/kv_test.go @@ -25,12 +25,12 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/mvcc/mvccpb" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/version" + "go.etcd.io/etcd/integration/v3" "google.golang.org/grpc" "google.golang.org/grpc/codes" diff --git a/clientv3/integration/lease_test.go b/integration/clientv3/lease_test.go similarity index 99% rename from clientv3/integration/lease_test.go rename to integration/clientv3/lease_test.go index 51b0cd05e8f9..44bba9aeeadd 100644 --- a/clientv3/integration/lease_test.go +++ b/integration/clientv3/lease_test.go @@ -23,11 +23,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) func TestLeaseNotFoundError(t *testing.T) { diff --git a/clientv3/integration/leasing_test.go b/integration/clientv3/leasing_test.go similarity index 99% rename from clientv3/integration/leasing_test.go rename to integration/clientv3/leasing_test.go index ed1a2df7bb73..a3f0b43cccb0 100644 --- a/clientv3/integration/leasing_test.go +++ b/integration/clientv3/leasing_test.go @@ -23,11 +23,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" - "go.etcd.io/etcd/v3/clientv3/leasing" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3/leasing" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) func TestLeasingPutGet(t *testing.T) { diff --git a/clientv3/integration/logger_test.go b/integration/clientv3/logger_discard.go similarity index 95% rename from clientv3/integration/logger_test.go rename to integration/clientv3/logger_discard.go index 7fc4ed67f1a1..6d2f6cc8aa52 100644 --- a/clientv3/integration/logger_test.go +++ b/integration/clientv3/logger_discard.go @@ -17,7 +17,7 @@ package integration import ( "io/ioutil" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "google.golang.org/grpc/grpclog" ) diff --git a/clientv3/integration/maintenance_test.go b/integration/clientv3/maintenance_test.go similarity index 97% rename from clientv3/integration/maintenance_test.go rename to integration/clientv3/maintenance_test.go index db160d212664..5d933feba533 100644 --- a/clientv3/integration/maintenance_test.go +++ b/integration/clientv3/maintenance_test.go @@ -28,13 +28,13 @@ import ( "go.uber.org/zap" "google.golang.org/grpc" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/integration" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/pkg/testutil" ) func TestMaintenanceHashKV(t *testing.T) { diff --git a/clientv3/integration/metrics_test.go b/integration/clientv3/metrics_test.go similarity index 96% rename from clientv3/integration/metrics_test.go rename to integration/clientv3/metrics_test.go index 1065a1ced2aa..d9f93ac6387a 100644 --- a/clientv3/integration/metrics_test.go +++ b/integration/clientv3/metrics_test.go @@ -25,10 +25,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/integration/v3" grpcprom "github.com/grpc-ecosystem/go-grpc-prometheus" "github.com/prometheus/client_golang/prometheus/promhttp" diff --git a/clientv3/integration/mirror_test.go b/integration/clientv3/mirror_test.go similarity index 94% rename from clientv3/integration/mirror_test.go rename to integration/clientv3/mirror_test.go index 2d62d77176a5..da92b128a96d 100644 --- a/clientv3/integration/mirror_test.go +++ b/integration/clientv3/mirror_test.go @@ -22,10 +22,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3/mirror" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/mvcc/mvccpb" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3/mirror" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) func TestMirrorSync(t *testing.T) { diff --git a/clientv3/integration/namespace_test.go b/integration/clientv3/namespace_test.go similarity index 93% rename from clientv3/integration/namespace_test.go rename to integration/clientv3/namespace_test.go index 959f419e8a87..9c26162f8d9e 100644 --- a/clientv3/integration/namespace_test.go +++ b/integration/clientv3/namespace_test.go @@ -19,11 +19,11 @@ import ( "reflect" "testing" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/namespace" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/mvcc/mvccpb" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/namespace" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) func TestNamespacePutGet(t *testing.T) { diff --git a/clientv3/naming/grpc_test.go b/integration/clientv3/naming/grpc_test.go similarity index 93% rename from clientv3/naming/grpc_test.go rename to integration/clientv3/naming/grpc_test.go index 8f1a38c46320..5783ac7916f0 100644 --- a/clientv3/naming/grpc_test.go +++ b/integration/clientv3/naming/grpc_test.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package naming +package naming_test import ( "context" @@ -20,9 +20,10 @@ import ( "reflect" "testing" - etcd "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + etcd "go.etcd.io/etcd/c/v3/clientv3" + cnaming "go.etcd.io/etcd/c/v3/clientv3/naming" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" "google.golang.org/grpc/naming" ) @@ -33,7 +34,7 @@ func TestGRPCResolver(t *testing.T) { clus := integration.NewClusterV3(t, &integration.ClusterConfig{Size: 1}) defer clus.Terminate(t) - r := GRPCResolver{ + r := cnaming.GRPCResolver{ Client: clus.RandClient(), } @@ -107,7 +108,7 @@ func TestGRPCResolverMulti(t *testing.T) { t.Fatal(err) } - r := GRPCResolver{c} + r := cnaming.GRPCResolver{c} w, err := r.Resolve("foo") if err != nil { diff --git a/clientv3/integration/network_partition_test.go b/integration/clientv3/network_partition_test.go similarity index 97% rename from clientv3/integration/network_partition_test.go rename to integration/clientv3/network_partition_test.go index 2787b4c542b7..7fd1ab2fa95d 100644 --- a/clientv3/integration/network_partition_test.go +++ b/integration/clientv3/network_partition_test.go @@ -22,11 +22,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" "google.golang.org/grpc" ) diff --git a/clientv3/ordering/kv_test.go b/integration/clientv3/ordering/kv_test.go similarity index 63% rename from clientv3/ordering/kv_test.go rename to integration/clientv3/ordering/kv_test.go index e10db96934d3..7a264736923d 100644 --- a/clientv3/ordering/kv_test.go +++ b/integration/clientv3/ordering/kv_test.go @@ -16,16 +16,14 @@ package ordering import ( "context" - gContext "context" "errors" - "sync" + "go.etcd.io/etcd/c/v3/clientv3/ordering" "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) func TestDetectKvOrderViolation(t *testing.T) { @@ -67,7 +65,7 @@ func TestDetectKvOrderViolation(t *testing.T) { // perform get request against the first member, in order to // set up kvOrdering to expect "foo" revisions greater than that of // the third member. - orderingKv := NewKV(cli.KV, + orderingKv := ordering.NewKV(cli.KV, func(op clientv3.Op, resp clientv3.OpResponse, prevRev int64) error { return errOrderViolation }) @@ -128,7 +126,7 @@ func TestDetectTxnOrderViolation(t *testing.T) { // perform get request against the first member, in order to // set up kvOrdering to expect "foo" revisions greater than that of // the third member. - orderingKv := NewKV(cli.KV, + orderingKv := ordering.NewKV(cli.KV, func(op clientv3.Op, resp clientv3.OpResponse, prevRev int64) error { return errOrderViolation }) @@ -163,129 +161,3 @@ func TestDetectTxnOrderViolation(t *testing.T) { t.Fatalf("expected %v, got %v", errOrderViolation, err) } } - -type mockKV struct { - clientv3.KV - response clientv3.OpResponse -} - -func (kv *mockKV) Do(ctx gContext.Context, op clientv3.Op) (clientv3.OpResponse, error) { - return kv.response, nil -} - -var rangeTests = []struct { - prevRev int64 - response *clientv3.GetResponse -}{ - { - 5, - &clientv3.GetResponse{ - Header: &pb.ResponseHeader{ - Revision: 5, - }, - }, - }, - { - 5, - &clientv3.GetResponse{ - Header: &pb.ResponseHeader{ - Revision: 4, - }, - }, - }, - { - 5, - &clientv3.GetResponse{ - Header: &pb.ResponseHeader{ - Revision: 6, - }, - }, - }, -} - -func TestKvOrdering(t *testing.T) { - for i, tt := range rangeTests { - mKV := &mockKV{clientv3.NewKVFromKVClient(nil, nil), tt.response.OpResponse()} - kv := &kvOrdering{ - mKV, - func(r *clientv3.GetResponse) OrderViolationFunc { - return func(op clientv3.Op, resp clientv3.OpResponse, prevRev int64) error { - r.Header.Revision++ - return nil - } - }(tt.response), - tt.prevRev, - sync.RWMutex{}, - } - res, err := kv.Get(nil, "mockKey") - if err != nil { - t.Errorf("#%d: expected response %+v, got error %+v", i, tt.response, err) - } - if rev := res.Header.Revision; rev < tt.prevRev { - t.Errorf("#%d: expected revision %d, got %d", i, tt.prevRev, rev) - } - } -} - -var txnTests = []struct { - prevRev int64 - response *clientv3.TxnResponse -}{ - { - 5, - &clientv3.TxnResponse{ - Header: &pb.ResponseHeader{ - Revision: 5, - }, - }, - }, - { - 5, - &clientv3.TxnResponse{ - Header: &pb.ResponseHeader{ - Revision: 8, - }, - }, - }, - { - 5, - &clientv3.TxnResponse{ - Header: &pb.ResponseHeader{ - Revision: 4, - }, - }, - }, -} - -func TestTxnOrdering(t *testing.T) { - for i, tt := range txnTests { - mKV := &mockKV{clientv3.NewKVFromKVClient(nil, nil), tt.response.OpResponse()} - kv := &kvOrdering{ - mKV, - func(r *clientv3.TxnResponse) OrderViolationFunc { - return func(op clientv3.Op, resp clientv3.OpResponse, prevRev int64) error { - r.Header.Revision++ - return nil - } - }(tt.response), - tt.prevRev, - sync.RWMutex{}, - } - txn := &txnOrdering{ - kv.Txn(context.Background()), - kv, - context.Background(), - sync.Mutex{}, - []clientv3.Cmp{}, - []clientv3.Op{}, - []clientv3.Op{}, - } - res, err := txn.Commit() - if err != nil { - t.Errorf("#%d: expected response %+v, got error %+v", i, tt.response, err) - } - if rev := res.Header.Revision; rev < tt.prevRev { - t.Errorf("#%d: expected revision %d, got %d", i, tt.prevRev, rev) - } - } -} diff --git a/clientv3/ordering/logger_test.go b/integration/clientv3/ordering/logger_test.go similarity index 95% rename from clientv3/ordering/logger_test.go rename to integration/clientv3/ordering/logger_test.go index ef857ce4e9a3..c9541104e088 100644 --- a/clientv3/ordering/logger_test.go +++ b/integration/clientv3/ordering/logger_test.go @@ -17,7 +17,7 @@ package ordering import ( "io/ioutil" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "google.golang.org/grpc/grpclog" ) diff --git a/clientv3/ordering/util_test.go b/integration/clientv3/ordering/util_test.go similarity index 91% rename from clientv3/ordering/util_test.go rename to integration/clientv3/ordering/util_test.go index b75ad59005df..6ef48e47b4ae 100644 --- a/clientv3/ordering/util_test.go +++ b/integration/clientv3/ordering/util_test.go @@ -19,9 +19,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/ordering" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) func TestEndpointSwitchResolvesViolation(t *testing.T) { @@ -64,7 +65,7 @@ func TestEndpointSwitchResolvesViolation(t *testing.T) { // NewOrderViolationSwitchEndpointClosure will be able to // access the full list of endpoints. cli.SetEndpoints(eps...) - OrderingKv := NewKV(cli.KV, NewOrderViolationSwitchEndpointClosure(*cli)) + OrderingKv := ordering.NewKV(cli.KV, ordering.NewOrderViolationSwitchEndpointClosure(*cli)) // set prevRev to the second member's revision of "foo" such that // the revision is higher than the third member's revision of "foo" _, err = OrderingKv.Get(ctx, "foo") @@ -123,7 +124,7 @@ func TestUnresolvableOrderViolation(t *testing.T) { // access the full list of endpoints. cli.SetEndpoints(eps...) time.Sleep(1 * time.Second) // give enough time for operation - OrderingKv := NewKV(cli.KV, NewOrderViolationSwitchEndpointClosure(*cli)) + OrderingKv := ordering.NewKV(cli.KV, ordering.NewOrderViolationSwitchEndpointClosure(*cli)) // set prevRev to the first member's revision of "foo" such that // the revision is higher than the fourth and fifth members' revision of "foo" _, err = OrderingKv.Get(ctx, "foo") @@ -147,7 +148,7 @@ func TestUnresolvableOrderViolation(t *testing.T) { time.Sleep(5 * time.Second) // give enough time for operation _, err = OrderingKv.Get(ctx, "foo", clientv3.WithSerializable()) - if err != ErrNoGreaterRev { - t.Fatalf("expected %v, got %v", ErrNoGreaterRev, err) + if err != ordering.ErrNoGreaterRev { + t.Fatalf("expected %v, got %v", ordering.ErrNoGreaterRev, err) } } diff --git a/clientv3/integration/role_test.go b/integration/clientv3/role_test.go similarity index 90% rename from clientv3/integration/role_test.go rename to integration/clientv3/role_test.go index 61f2db6a2618..6fdd83691cda 100644 --- a/clientv3/integration/role_test.go +++ b/integration/clientv3/role_test.go @@ -18,9 +18,9 @@ import ( "context" "testing" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) func TestRoleError(t *testing.T) { diff --git a/clientv3/integration/server_shutdown_test.go b/integration/clientv3/server_shutdown_test.go similarity index 98% rename from clientv3/integration/server_shutdown_test.go rename to integration/clientv3/server_shutdown_test.go index d3cef6c181ee..f16227e2cd59 100644 --- a/clientv3/integration/server_shutdown_test.go +++ b/integration/clientv3/server_shutdown_test.go @@ -21,10 +21,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" "google.golang.org/grpc/codes" "google.golang.org/grpc/status" diff --git a/clientv3/integration/txn_test.go b/integration/clientv3/txn_test.go similarity index 97% rename from clientv3/integration/txn_test.go rename to integration/clientv3/txn_test.go index 9c4a4fd6fe46..b954b8e3c348 100644 --- a/clientv3/integration/txn_test.go +++ b/integration/clientv3/txn_test.go @@ -20,11 +20,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" "go.etcd.io/etcd/v3/embed" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" ) func TestTxnError(t *testing.T) { diff --git a/clientv3/integration/user_test.go b/integration/clientv3/user_test.go similarity index 96% rename from clientv3/integration/user_test.go rename to integration/clientv3/user_test.go index 81fcd7721b5e..a0c7f3962e5c 100644 --- a/clientv3/integration/user_test.go +++ b/integration/clientv3/user_test.go @@ -19,10 +19,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" "google.golang.org/grpc" ) diff --git a/clientv3/integration/util.go b/integration/clientv3/util.go similarity index 96% rename from clientv3/integration/util.go rename to integration/clientv3/util.go index 12e0fd1e520b..6715d32ed99d 100644 --- a/clientv3/integration/util.go +++ b/integration/clientv3/util.go @@ -19,7 +19,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) // mustWaitPinReady waits up to 3-second until connection is up (pin endpoint). diff --git a/clientv3/integration/watch_fragment_test.go b/integration/clientv3/watch_fragment_test.go similarity index 97% rename from clientv3/integration/watch_fragment_test.go rename to integration/clientv3/watch_fragment_test.go index 34ec3049b7a5..b6caa6624e07 100644 --- a/clientv3/integration/watch_fragment_test.go +++ b/integration/clientv3/watch_fragment_test.go @@ -23,9 +23,9 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) // TestWatchFragmentDisable ensures that large watch diff --git a/clientv3/integration/watch_test.go b/integration/clientv3/watch_test.go similarity index 99% rename from clientv3/integration/watch_test.go rename to integration/clientv3/watch_test.go index b27b0131d939..7cde6486d4f7 100644 --- a/clientv3/integration/watch_test.go +++ b/integration/clientv3/watch_test.go @@ -24,13 +24,13 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + mvccpb "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/version" + "go.etcd.io/etcd/integration/v3" "go.etcd.io/etcd/v3/etcdserver/api/v3rpc" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - "go.etcd.io/etcd/v3/integration" - mvccpb "go.etcd.io/etcd/v3/mvcc/mvccpb" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/version" "google.golang.org/grpc/metadata" ) diff --git a/integration/cluster.go b/integration/cluster.go index 0d198fd31c34..78a9d2768014 100644 --- a/integration/cluster.go +++ b/integration/cluster.go @@ -33,8 +33,14 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/client" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/client" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/logutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/tlsutil" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/embed" "go.etcd.io/etcd/v3/etcdserver" "go.etcd.io/etcd/v3/etcdserver/api/etcdhttp" @@ -46,12 +52,6 @@ import ( "go.etcd.io/etcd/v3/etcdserver/api/v3lock" lockpb "go.etcd.io/etcd/v3/etcdserver/api/v3lock/v3lockpb" "go.etcd.io/etcd/v3/etcdserver/api/v3rpc" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/logutil" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/tlsutil" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" "github.com/soheilhy/cmux" "go.uber.org/zap" diff --git a/integration/cluster_direct.go b/integration/cluster_direct.go index 600cabe30325..d4810d517a39 100644 --- a/integration/cluster_direct.go +++ b/integration/cluster_direct.go @@ -17,10 +17,10 @@ package integration import ( - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver/api/v3election/v3electionpb" "go.etcd.io/etcd/v3/etcdserver/api/v3lock/v3lockpb" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" ) func toGRPC(c *clientv3.Client) grpcAPI { diff --git a/integration/cluster_proxy.go b/integration/cluster_proxy.go index 8ad7f6910c0a..0922fb10030c 100644 --- a/integration/cluster_proxy.go +++ b/integration/cluster_proxy.go @@ -19,8 +19,8 @@ package integration import ( "sync" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/namespace" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/namespace" "go.etcd.io/etcd/v3/proxy/grpcproxy" "go.etcd.io/etcd/v3/proxy/grpcproxy/adapter" diff --git a/integration/cluster_test.go b/integration/cluster_test.go index c305d6faa805..9a286425e0bc 100644 --- a/integration/cluster_test.go +++ b/integration/cluster_test.go @@ -25,9 +25,9 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/client" + "go.etcd.io/etcd/c/v3/client" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/etcdserver" - "go.etcd.io/etcd/v3/pkg/testutil" ) func init() { diff --git a/integration/embed_test.go b/integration/embed/embed_test.go similarity index 91% rename from integration/embed_test.go rename to integration/embed/embed_test.go index 3ca096113029..e72bf810c8bf 100644 --- a/integration/embed_test.go +++ b/integration/embed/embed_test.go @@ -14,13 +14,15 @@ // +build !cluster_proxy -// TODO: fix race conditions with setupLogging +// Keep the test in a separate package from other tests such that +// .setupLogging method does not race with other (previously running) servers (grpclog is global). -package integration +package embed_test import ( "context" "fmt" + "go.etcd.io/etcd/c/v3/pkg/transport" "net/url" "os" "path/filepath" @@ -28,10 +30,19 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/embed" ) +var ( + testTLSInfo = transport.TLSInfo{ + KeyFile: "../fixtures/server.key.insecure", + CertFile: "../fixtures/server.crt", + TrustedCAFile: "../fixtures/ca.crt", + ClientCertAuth: true, + } +) + func TestEmbedEtcd(t *testing.T) { tests := []struct { cfg embed.Config diff --git a/etcdserver/api/v2store/store_v2v3_test.go b/integration/etcdserver/api/v2store/store_v2v3_test.go similarity index 94% rename from etcdserver/api/v2store/store_v2v3_test.go rename to integration/etcdserver/api/v2store/store_v2v3_test.go index b7d4b26c9a2b..50bb65937cb3 100644 --- a/etcdserver/api/v2store/store_v2v3_test.go +++ b/integration/etcdserver/api/v2store/store_v2v3_test.go @@ -20,10 +20,10 @@ import ( "io/ioutil" "testing" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/integration/v3" "go.etcd.io/etcd/v3/etcdserver/api/v2store" "go.etcd.io/etcd/v3/etcdserver/api/v2v3" - "go.etcd.io/etcd/v3/integration" "google.golang.org/grpc/grpclog" ) diff --git a/etcdserver/api/v2v3/main_test.go b/integration/etcdserver/api/v2v3/main_test.go similarity index 94% rename from etcdserver/api/v2v3/main_test.go rename to integration/etcdserver/api/v2v3/main_test.go index a69cb9c0a600..102aaf5dee87 100644 --- a/etcdserver/api/v2v3/main_test.go +++ b/integration/etcdserver/api/v2v3/main_test.go @@ -20,8 +20,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" ) var endpoints []string diff --git a/etcdserver/api/v2v3/store_test.go b/integration/etcdserver/api/v2v3/store_test.go similarity index 99% rename from etcdserver/api/v2v3/store_test.go rename to integration/etcdserver/api/v2v3/store_test.go index deb91292e650..47dff67f2f74 100644 --- a/etcdserver/api/v2v3/store_test.go +++ b/integration/etcdserver/api/v2v3/store_test.go @@ -18,7 +18,7 @@ import ( "strings" "testing" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/etcdserver/api/v2store" "go.etcd.io/etcd/v3/etcdserver/api/v2v3" ) diff --git a/integration/go.mod b/integration/go.mod new file mode 100644 index 000000000000..98a9d6b52ab1 --- /dev/null +++ b/integration/go.mod @@ -0,0 +1,18 @@ +module go.etcd.io/etcd/integration/v3 + +go 1.14 + +require ( + github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 + github.com/prometheus/client_golang v1.0.0 + github.com/soheilhy/cmux v0.1.4 + go.etcd.io/etcd/c/v3 v3.0.0-00010101000000-000000000000 + go.etcd.io/etcd/v3 v3.0.0-00010101000000-000000000000 + go.uber.org/zap v1.14.1 + golang.org/x/crypto v0.0.0-20191002192127-34f69633bfdc + google.golang.org/grpc v1.26.0 +) + +replace go.etcd.io/etcd/c/v3 => ../c/ + +replace go.etcd.io/etcd/v3 => ../ diff --git a/integration/go.sum b/integration/go.sum new file mode 100644 index 000000000000..4cbdea2d4f74 --- /dev/null +++ b/integration/go.sum @@ -0,0 +1,201 @@ +cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v1.0.0 h1:HWo1m869IqiPhD389kmkxeTalrjNbbJTC8LXupb+sl0= +github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= +github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= +github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= +github.com/coreos/go-semver v0.2.0 h1:3Jm3tLmsgAYcjC+4Up7hJrFBPr+n7rAqYeSw/SZazuY= +github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= +github.com/coreos/go-systemd/v22 v22.1.0 h1:kq/SbG2BCKLkDKkjQf5OWwKWUKj1lgs3lFI4PxnR5lg= +github.com/coreos/go-systemd/v22 v22.1.0/go.mod h1:xO0FLkIi5MaZafQlIrOotqXZ90ih+1atmu1JpKERPPk= +github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= +github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dgrijalva/jwt-go v3.2.0+incompatible h1:7qlOGliEKZXTDg6OTjfoBKDXWrumCAMpl/TFQ4/5kLM= +github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= +github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4 h1:qk/FSDDxo05wdJH28W+p5yivv7LuLYLRXPPD8KQCtZs= +github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= +github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/etcd-io/gofail v0.0.0-20190801230047-ad7f989257ca/go.mod h1:49H/RkXP8pKaZy4h0d+NW16rSLhyVBt4o6VLJbmOqDE= +github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= +github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= +github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= +github.com/godbus/dbus/v5 v5.0.3/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA= +github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.2.1 h1:/s5zKNz0uPFCZ5hddgPdo2TK2TVrUNMn0OOX8/aZMTE= +github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903 h1:LbsanbbD6LieFkXbj9YNNBupiGHJgFeLpO0j0Fza1h8= +github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.2 h1:6nsPYzhq5kReh6QImI3k5qWzO4PEbvbIW2cwSfR/6xs= +github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/google/btree v1.0.0 h1:0udJVsspx3VBr5FwtLhQQtuAsVc79tTq0ocGIPAU6qo= +github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.0.0 h1:b4Gk+7WdP/d3HZH8EJsZpvV7EtDOgaZLtnaNGIu1adA= +github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c h1:Lh2aW+HnU2Nbe1gqD9SOJLJxW1jBMmQOktN2acDyJk8= +github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4 h1:z53tR0945TRRQO/fLEVPI6SMv7ZflF0TEaTAoU7tOzg= +github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de4/go.mod h1:FiyG127CGDf3tlThmgyCl78X/SZQqEOJBCDaAfeWzPs= +github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho= +github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= +github.com/grpc-ecosystem/grpc-gateway v1.9.5 h1:UImYN5qQ8tuGpGE16ZmjvcTtTw24zw1QAp/SlnNrZhI= +github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= +github.com/jonboulle/clockwork v0.1.0 h1:VKV+ZcuP6l3yW9doeqz6ziZGgcynBVQO+obU0+0hcPo= +github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22gdxWY5EU2bo= +github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= +github.com/json-iterator/go v1.1.10 h1:Kz6Cvnvv2wGdaG/V8yMvfkmNiXq9Ya2KUv4rouJJr68= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= +github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= +github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU= +github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= +github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= +github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0jegS5sx/RkqARlsWZ6pIwiU= +github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9AWI= +github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= +github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v1.0.0 h1:vrDKnkGzuGvhNAL56c7DBz29ZL+KxnoR0x7enabFceM= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4 h1:gQz4mCbXsO+nc9n1hCxHcGA3Zx3Eo+UHZoInFGUIXNM= +github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/common v0.4.1 h1:K0MGApIoQvMw27RTdJkPbr3JZ7DNbtxQNyi5STVM6Kw= +github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.2 h1:6LJUbpNm42llc4HRCuvApCSWB/WfhuNo9K98Q9sNGfs= +github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= +github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.2 h1:SPIRibHv4MatM3XXNO2BJeFLZwZ2LvZgfQ5+UNI2im4= +github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= +github.com/soheilhy/cmux v0.1.4 h1:0HKaf1o97UwFjHH9o5XsHUOF+tqmdA7KEzXLpiyaw0E= +github.com/soheilhy/cmux v0.1.4/go.mod h1:IM3LyeVVIOuxMH7sFAkER9+bJ4dT7Ms6E4xg4kGIyLM= +github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/pflag v1.0.1 h1:aCvUg6QPl3ibpQUxyLkrEkCHtPqYJL4x9AuhqVqFis4= +github.com/spf13/pflag v1.0.1/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8 h1:ndzgwNDnKIqyCvHTXaCqh9KlOWKvBry6nuXMJmonVsE= +github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= +github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijbERA= +github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 h1:eY9dn8+vbi4tKz5Qo6v2eYzo7kUS51QINcR5jNpbZS8= +github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= +go.etcd.io/bbolt v1.3.5 h1:XAzx9gjCb0Rxj7EoqcClPD1d5ZBxZJk0jbuoPHenBt0= +go.etcd.io/bbolt v1.3.5/go.mod h1:G5EMThwa9y8QZGBClrRx5EY+Yw9kAhnjy3bSjsnlVTQ= +go.uber.org/atomic v1.6.0 h1:Ezj3JGmsOnG1MoRWQkPBsKLe9DwWD9QeXzTRzzldNVk= +go.uber.org/atomic v1.6.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= +go.uber.org/multierr v1.5.0 h1:KCa4XfM8CWFCpxXRGok+Q0SS/0XBhMDbHHGABQLvD2A= +go.uber.org/multierr v1.5.0/go.mod h1:FeouvMocqHpRaaGuG9EjoKcStLC43Zu/fmqdUMPcKYU= +go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= +go.uber.org/zap v1.14.1 h1:nYDKopTbvAPq/NrUVZwT15y2lpROBiLLyoRTbXOYWOo= +go.uber.org/zap v1.14.1/go.mod h1:Mb2vm2krFEG5DV0W9qcHBYFtp/Wku1cvYaqPsS/WYfc= +golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20191002192127-34f69633bfdc h1:c0o/qxkaO2LF5t6fQrT4b5hzyggAkLLlCUjqfRxd8Q4= +golang.org/x/crypto v0.0.0-20191002192127-34f69633bfdc/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= +golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= +golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181220203305-927f97764cc3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7 h1:fHDIZ2oxGnUZRN6WgWFCbYBjH9uqVPRCUVUDhs0wnbA= +golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5 h1:LfCXLvNmTYH9kEmVgqbnsWfruoXZIrh4YBgqVHtDvw0= +golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2 h1:+DCIGbF/swA92ohVg0//6X2IVY3KZs6p9mix0ziNYJM= +golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= +golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20191029041327-9cc4af7d6b2c/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191029190741-b9c20aec41a5/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 h1:gSJIx1SDwno+2ElGhA4+qG2zF97qiUzTM+rQ0klBOcE= +google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= +google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.26.0 h1:2dTRdpdFEEhJYQD8EMLB61nnrzSCTbG38PhqdhvOltg= +google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/cheggaaa/pb.v1 v1.0.25/go.mod h1:V/YB90LKu/1FcN3WVnfiiE5oMCibMjukxqG/qStrOgw= +gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= +gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= +gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw= +gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= +sigs.k8s.io/yaml v1.1.0 h1:4A07+ZFc2wgJwo8YNlQpr1rVlgUDlxXHhPJciaPY5gs= +sigs.k8s.io/yaml v1.1.0/go.mod h1:UJmg0vDUVViEyp3mgSv9WPwZCDxu4rQW1olrI1uml+o= diff --git a/integration/logger_test.go b/integration/logger_test.go index 7fc4ed67f1a1..6d2f6cc8aa52 100644 --- a/integration/logger_test.go +++ b/integration/logger_test.go @@ -17,7 +17,7 @@ package integration import ( "io/ioutil" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "google.golang.org/grpc/grpclog" ) diff --git a/integration/main_test.go b/integration/main_test.go index 4dec98da4f81..55fa6eb0a09d 100644 --- a/integration/main_test.go +++ b/integration/main_test.go @@ -8,7 +8,7 @@ import ( "os" "testing" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestMain(m *testing.M) { diff --git a/integration/member_test.go b/integration/member_test.go index dbffedb4aa42..caae9fb5b1df 100644 --- a/integration/member_test.go +++ b/integration/member_test.go @@ -22,8 +22,8 @@ import ( "reflect" "testing" - "go.etcd.io/etcd/v3/client" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/client" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestPauseMember(t *testing.T) { diff --git a/integration/metrics_test.go b/integration/metrics_test.go index 288d5c2a04b3..a3edb104c518 100644 --- a/integration/metrics_test.go +++ b/integration/metrics_test.go @@ -22,10 +22,10 @@ import ( "testing" "time" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/transport" "go.etcd.io/etcd/v3/etcdserver" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/transport" ) // TestMetricDbSizeBoot checks that the db size metric is set on boot. diff --git a/integration/network_partition_test.go b/integration/network_partition_test.go index b9786c60af6b..ae9162dc45d1 100644 --- a/integration/network_partition_test.go +++ b/integration/network_partition_test.go @@ -19,7 +19,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestNetworkPartition5MembersLeaderInMinority(t *testing.T) { diff --git a/proxy/grpcproxy/cluster_test.go b/integration/proxy/grpcproxy/cluster_test.go similarity index 89% rename from proxy/grpcproxy/cluster_test.go rename to integration/proxy/grpcproxy/cluster_test.go index 3d63180a9aa5..52dda3868296 100644 --- a/proxy/grpcproxy/cluster_test.go +++ b/integration/proxy/grpcproxy/cluster_test.go @@ -20,10 +20,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" + "go.etcd.io/etcd/v3/proxy/grpcproxy" "go.uber.org/zap" "google.golang.org/grpc" @@ -114,8 +115,8 @@ func newClusterProxyServer(lg *zap.Logger, endpoints []string, t *testing.T) *cl cts.server.Serve(cts.l) }() - Register(lg, client, "test-prefix", cts.l.Addr().String(), 7) - cts.cp, cts.donec = NewClusterProxy(lg, client, cts.l.Addr().String(), "test-prefix") + grpcproxy.Register(lg, client, "test-prefix", cts.l.Addr().String(), 7) + cts.cp, cts.donec = grpcproxy.NewClusterProxy(lg, client, cts.l.Addr().String(), "test-prefix") cts.caddr = cts.l.Addr().String() pb.RegisterClusterServer(cts.server, cts.cp) close(servec) diff --git a/proxy/grpcproxy/kv_test.go b/integration/proxy/grpcproxy/kv_test.go similarity index 89% rename from proxy/grpcproxy/kv_test.go rename to integration/proxy/grpcproxy/kv_test.go index 49ee698637c0..c095a0e0076a 100644 --- a/proxy/grpcproxy/kv_test.go +++ b/integration/proxy/grpcproxy/kv_test.go @@ -20,10 +20,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" + "go.etcd.io/etcd/v3/proxy/grpcproxy" "google.golang.org/grpc" ) @@ -76,7 +77,7 @@ func newKVProxyServer(endpoints []string, t *testing.T) *kvproxyTestServer { t.Fatal(err) } - kvp, _ := NewKvProxy(client) + kvp, _ := grpcproxy.NewKvProxy(client) kvts := &kvproxyTestServer{ kp: kvp, diff --git a/proxy/grpcproxy/register_test.go b/integration/proxy/grpcproxy/register_test.go similarity index 87% rename from proxy/grpcproxy/register_test.go rename to integration/proxy/grpcproxy/register_test.go index 7107254e7212..7e58c0808430 100644 --- a/proxy/grpcproxy/register_test.go +++ b/integration/proxy/grpcproxy/register_test.go @@ -18,10 +18,12 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/naming" - "go.etcd.io/etcd/v3/integration" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/naming" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/integration/v3" + + "go.etcd.io/etcd/v3/proxy/grpcproxy" "go.uber.org/zap" gnaming "google.golang.org/grpc/naming" @@ -45,7 +47,7 @@ func TestRegister(t *testing.T) { t.Fatalf("len(ups) expected 0, got %d (%v)", len(ups), ups) } - donec := Register(zap.NewExample(), cli, testPrefix, paddr, 5) + donec := grpcproxy.Register(zap.NewExample(), cli, testPrefix, paddr, 5) ups, err = wa.Next() if err != nil { diff --git a/integration/util_test.go b/integration/util_test.go index 399c25db2995..d17d186719dc 100644 --- a/integration/util_test.go +++ b/integration/util_test.go @@ -19,7 +19,7 @@ import ( "os" "path/filepath" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/transport" ) // copyTLSFiles clones certs files to dst directory. diff --git a/integration/v2_http_kv_test.go b/integration/v2_http_kv_test.go index daaac25dbee0..ea76898c5c68 100644 --- a/integration/v2_http_kv_test.go +++ b/integration/v2_http_kv_test.go @@ -26,8 +26,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/transport" ) func TestV2Set(t *testing.T) { diff --git a/integration/v3_alarm_test.go b/integration/v3_alarm_test.go index 02fa128ca0f1..4f79c4176db2 100644 --- a/integration/v3_alarm_test.go +++ b/integration/v3_alarm_test.go @@ -22,12 +22,12 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/etcdserver/cindex" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/pkg/testutil" "go.etcd.io/etcd/v3/pkg/traceutil" "go.uber.org/zap" diff --git a/integration/v3_auth_test.go b/integration/v3_auth_test.go index 93764d2fc423..38a6d98ae64e 100644 --- a/integration/v3_auth_test.go +++ b/integration/v3_auth_test.go @@ -21,11 +21,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/auth/authpb" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/auth/authpb" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) // TestV3AuthEmptyUserGet ensures that a get with an empty user will return an empty user error. diff --git a/integration/v3_barrier_test.go b/integration/v3_barrier_test.go index a91d2299d2b5..d83b469960eb 100644 --- a/integration/v3_barrier_test.go +++ b/integration/v3_barrier_test.go @@ -18,9 +18,9 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/contrib/recipes" - "go.etcd.io/etcd/v3/pkg/testutil" ) func TestBarrierSingleNode(t *testing.T) { diff --git a/integration/v3_double_barrier_test.go b/integration/v3_double_barrier_test.go index cafaa01ed414..31253faa6a63 100644 --- a/integration/v3_double_barrier_test.go +++ b/integration/v3_double_barrier_test.go @@ -18,7 +18,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" "go.etcd.io/etcd/v3/contrib/recipes" ) diff --git a/integration/v3_election_test.go b/integration/v3_election_test.go index 31c867a8f8bd..9393a0d5e9d6 100644 --- a/integration/v3_election_test.go +++ b/integration/v3_election_test.go @@ -20,8 +20,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" ) // TestElectionWait tests if followers can correctly wait for elections. diff --git a/integration/v3_grpc_inflight_test.go b/integration/v3_grpc_inflight_test.go index 4b7ccea028a5..d7eb268df921 100644 --- a/integration/v3_grpc_inflight_test.go +++ b/integration/v3_grpc_inflight_test.go @@ -20,9 +20,9 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" "google.golang.org/grpc" "google.golang.org/grpc/codes" diff --git a/integration/v3_grpc_test.go b/integration/v3_grpc_test.go index b27f99572217..58d62531ac08 100644 --- a/integration/v3_grpc_test.go +++ b/integration/v3_grpc_test.go @@ -25,11 +25,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/transport" "google.golang.org/grpc" "google.golang.org/grpc/codes" diff --git a/integration/v3_health_test.go b/integration/v3_health_test.go index 6ec98b9d4456..7b789981edfe 100644 --- a/integration/v3_health_test.go +++ b/integration/v3_health_test.go @@ -18,7 +18,7 @@ import ( "context" "testing" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" healthpb "google.golang.org/grpc/health/grpc_health_v1" ) diff --git a/integration/v3_leadership_test.go b/integration/v3_leadership_test.go index 5b51dab86f23..6ecec03c2c50 100644 --- a/integration/v3_leadership_test.go +++ b/integration/v3_leadership_test.go @@ -20,9 +20,9 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestMoveLeader(t *testing.T) { testMoveLeader(t, true) } diff --git a/integration/v3_lease_test.go b/integration/v3_lease_test.go index 4f88995eebe9..c71457d9b4c8 100644 --- a/integration/v3_lease_test.go +++ b/integration/v3_lease_test.go @@ -20,10 +20,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/mvcc/mvccpb" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" "google.golang.org/grpc/codes" "google.golang.org/grpc/metadata" diff --git a/integration/v3_lock_test.go b/integration/v3_lock_test.go index bafaf9d0377b..ac4e6ed2f14d 100644 --- a/integration/v3_lock_test.go +++ b/integration/v3_lock_test.go @@ -21,11 +21,11 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" recipe "go.etcd.io/etcd/v3/contrib/recipes" - "go.etcd.io/etcd/v3/mvcc/mvccpb" - "go.etcd.io/etcd/v3/pkg/testutil" ) func TestMutexLockSingleNode(t *testing.T) { diff --git a/integration/v3_stm_test.go b/integration/v3_stm_test.go index 94d7f2e6fe26..d81b1a881eea 100644 --- a/integration/v3_stm_test.go +++ b/integration/v3_stm_test.go @@ -21,9 +21,9 @@ import ( "strconv" "testing" - v3 "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" - "go.etcd.io/etcd/v3/pkg/testutil" + v3 "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) // TestSTMConflict tests that conflicts are retried. diff --git a/integration/v3_tls_test.go b/integration/v3_tls_test.go index 2c78eaddf4c7..34a1197d2754 100644 --- a/integration/v3_tls_test.go +++ b/integration/v3_tls_test.go @@ -20,8 +20,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/testutil" "google.golang.org/grpc" ) diff --git a/integration/v3_watch_restore_test.go b/integration/v3_watch_restore_test.go index 16b1f906b4de..f4a660a96f3c 100644 --- a/integration/v3_watch_restore_test.go +++ b/integration/v3_watch_restore_test.go @@ -20,7 +20,7 @@ import ( "testing" "time" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) // TestV3WatchRestoreSnapshotUnsync tests whether slow follower can restore diff --git a/integration/v3_watch_test.go b/integration/v3_watch_test.go index 4ae371973c3f..f2fb36c6cb4b 100644 --- a/integration/v3_watch_test.go +++ b/integration/v3_watch_test.go @@ -24,10 +24,10 @@ import ( "testing" "time" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/etcdserver/api/v3rpc" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/mvcc/mvccpb" - "go.etcd.io/etcd/v3/pkg/testutil" ) // TestV3WatchFromCurrentRevision tests Watch APIs from current revision. diff --git a/integration/v3election_grpc_test.go b/integration/v3election_grpc_test.go index 2e13a7c0d9ff..b405af4e79ad 100644 --- a/integration/v3election_grpc_test.go +++ b/integration/v3election_grpc_test.go @@ -20,9 +20,9 @@ import ( "testing" "time" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" epb "go.etcd.io/etcd/v3/etcdserver/api/v3election/v3electionpb" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" ) // TestV3ElectionCampaign checks that Campaign will not give diff --git a/integration/v3lock_grpc_test.go b/integration/v3lock_grpc_test.go index 3ecb7e2a1187..8d578e7fab5f 100644 --- a/integration/v3lock_grpc_test.go +++ b/integration/v3lock_grpc_test.go @@ -19,9 +19,9 @@ import ( "testing" "time" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" lockpb "go.etcd.io/etcd/v3/etcdserver/api/v3lock/v3lockpb" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" ) // TestV3LockLockWaiter tests that a client will wait for a lock, then acquire it diff --git a/lease/leasehttp/http.go b/lease/leasehttp/http.go index 27f042bb4147..9086e58bea58 100644 --- a/lease/leasehttp/http.go +++ b/lease/leasehttp/http.go @@ -23,7 +23,7 @@ import ( "net/http" "time" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/lease/leasepb" "go.etcd.io/etcd/v3/pkg/httputil" diff --git a/lease/leasepb/lease.pb.go b/lease/leasepb/lease.pb.go index 5253d1f0d0d1..415cc89410f8 100644 --- a/lease/leasepb/lease.pb.go +++ b/lease/leasepb/lease.pb.go @@ -23,7 +23,7 @@ import ( _ "github.com/gogo/protobuf/gogoproto" - etcdserverpb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + etcdserverpb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" io "io" ) @@ -600,21 +600,21 @@ var ( func init() { proto.RegisterFile("lease.proto", fileDescriptorLease) } var fileDescriptorLease = []byte{ - // 253 bytes of a gzipped FileDescriptorProto + // 255 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xe2, 0xce, 0x49, 0x4d, 0x2c, 0x4e, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0x62, 0x07, 0x73, 0x0a, 0x92, 0xa4, 0x44, 0xd2, - 0xf3, 0xd3, 0xf3, 0xc1, 0x62, 0xfa, 0x20, 0x16, 0x44, 0x5a, 0x4a, 0x2d, 0xb5, 0x24, 0x39, 0x45, - 0x1f, 0x44, 0x14, 0xa7, 0x16, 0x95, 0xa5, 0x16, 0x21, 0x31, 0x0b, 0x92, 0xf4, 0x8b, 0x0a, 0x92, - 0x21, 0xea, 0x94, 0x7c, 0xb9, 0x58, 0x7d, 0x40, 0x06, 0x09, 0xf1, 0x71, 0x31, 0x79, 0xba, 0x48, - 0x30, 0x2a, 0x30, 0x6a, 0x30, 0x07, 0x31, 0x79, 0xba, 0x08, 0x09, 0x70, 0x31, 0x87, 0x84, 0xf8, - 0x48, 0x30, 0x81, 0x05, 0x40, 0x4c, 0x21, 0x25, 0x2e, 0x9e, 0xa0, 0xd4, 0xdc, 0xc4, 0xcc, 0xbc, - 0xcc, 0xbc, 0x74, 0x90, 0x14, 0x33, 0x58, 0x0a, 0x45, 0x4c, 0xa9, 0x84, 0x4b, 0x04, 0x6c, 0x9c, - 0x67, 0x5e, 0x49, 0x6a, 0x51, 0x5e, 0x62, 0x4e, 0x50, 0x6a, 0x61, 0x69, 0x6a, 0x71, 0x89, 0x50, - 0x0c, 0x97, 0x18, 0x58, 0x3c, 0x24, 0x33, 0x37, 0x35, 0x24, 0xdf, 0x27, 0xb3, 0x2c, 0x15, 0x2a, - 0x03, 0xb6, 0x91, 0xdb, 0x48, 0x45, 0x0f, 0xd9, 0x7d, 0x7a, 0xd8, 0xd5, 0x06, 0xe1, 0x30, 0x43, - 0xa9, 0x82, 0x4b, 0x14, 0xcd, 0xd6, 0xe2, 0x82, 0xfc, 0xbc, 0xe2, 0x54, 0xa1, 0x78, 0x2e, 0x71, - 0x0c, 0x2d, 0x10, 0x29, 0xa8, 0xbd, 0xaa, 0x04, 0xec, 0x85, 0x28, 0x0e, 0xc2, 0x65, 0x8a, 0x93, - 0xc4, 0x89, 0x87, 0x72, 0x0c, 0x17, 0x1e, 0xca, 0x31, 0x9c, 0x78, 0x24, 0xc7, 0x78, 0xe1, 0x91, - 0x1c, 0xe3, 0x83, 0x47, 0x72, 0x8c, 0x33, 0x1e, 0xcb, 0x31, 0x24, 0xb1, 0x81, 0xc3, 0xd7, 0x18, - 0x10, 0x00, 0x00, 0xff, 0xff, 0xa9, 0x9f, 0x8b, 0x6c, 0xb5, 0x01, 0x00, 0x00, + 0xf3, 0xd3, 0xf3, 0xc1, 0x62, 0xfa, 0x20, 0x16, 0x44, 0x5a, 0x4a, 0x23, 0xb5, 0x24, 0x39, 0x45, + 0x3f, 0x59, 0x1f, 0x44, 0x15, 0xa7, 0x16, 0x95, 0xa5, 0x16, 0x21, 0x31, 0x0b, 0x92, 0xf4, 0x8b, + 0x0a, 0x92, 0x21, 0x2a, 0x95, 0x7c, 0xb9, 0x58, 0x7d, 0x40, 0x46, 0x09, 0xf1, 0x71, 0x31, 0x79, + 0xba, 0x48, 0x30, 0x2a, 0x30, 0x6a, 0x30, 0x07, 0x31, 0x79, 0xba, 0x08, 0x09, 0x70, 0x31, 0x87, + 0x84, 0xf8, 0x48, 0x30, 0x81, 0x05, 0x40, 0x4c, 0x21, 0x25, 0x2e, 0x9e, 0xa0, 0xd4, 0xdc, 0xc4, + 0xcc, 0xbc, 0xcc, 0xbc, 0x74, 0x90, 0x14, 0x33, 0x58, 0x0a, 0x45, 0x4c, 0xa9, 0x84, 0x4b, 0x04, + 0x6c, 0x9c, 0x67, 0x5e, 0x49, 0x6a, 0x51, 0x5e, 0x62, 0x4e, 0x50, 0x6a, 0x61, 0x69, 0x6a, 0x71, + 0x89, 0x50, 0x0c, 0x97, 0x18, 0x58, 0x3c, 0x24, 0x33, 0x37, 0x35, 0x24, 0xdf, 0x27, 0xb3, 0x2c, + 0x15, 0x2a, 0x03, 0xb6, 0x91, 0xdb, 0x48, 0x45, 0x0f, 0xd9, 0x7d, 0x7a, 0xd8, 0xd5, 0x06, 0xe1, + 0x30, 0x43, 0xa9, 0x82, 0x4b, 0x14, 0xcd, 0xd6, 0xe2, 0x82, 0xfc, 0xbc, 0xe2, 0x54, 0xa1, 0x78, + 0x2e, 0x71, 0x0c, 0x2d, 0x10, 0x29, 0xa8, 0xbd, 0xaa, 0x04, 0xec, 0x85, 0x28, 0x0e, 0xc2, 0x65, + 0x8a, 0x93, 0xc4, 0x89, 0x87, 0x72, 0x0c, 0x17, 0x1e, 0xca, 0x31, 0x9c, 0x78, 0x24, 0xc7, 0x78, + 0xe1, 0x91, 0x1c, 0xe3, 0x83, 0x47, 0x72, 0x8c, 0x33, 0x1e, 0xcb, 0x31, 0x24, 0xb1, 0x81, 0xc3, + 0xd7, 0x18, 0x10, 0x00, 0x00, 0xff, 0xff, 0x2b, 0xdb, 0xd0, 0x02, 0xb7, 0x01, 0x00, 0x00, } diff --git a/lease/leasepb/lease.proto b/lease/leasepb/lease.proto index 1169d9f10a98..e5e7955da22c 100644 --- a/lease/leasepb/lease.proto +++ b/lease/leasepb/lease.proto @@ -2,7 +2,7 @@ syntax = "proto3"; package leasepb; import "gogoproto/gogo.proto"; -import "etcd/etcdserver/etcdserverpb/rpc.proto"; +import "etcd/c/etcdserver/etcdserverpb/rpc.proto"; option (gogoproto.marshaler_all) = true; option (gogoproto.sizer_all) = true; diff --git a/lease/lessor.go b/lease/lessor.go index 45ef01bd8d2a..5a94b3397a9b 100644 --- a/lease/lessor.go +++ b/lease/lessor.go @@ -24,8 +24,8 @@ import ( "sync" "time" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver/cindex" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/lease/leasepb" "go.etcd.io/etcd/v3/mvcc/backend" "go.uber.org/zap" diff --git a/lease/lessor_test.go b/lease/lessor_test.go index 200171eb6c53..4efcce5959ac 100644 --- a/lease/lessor_test.go +++ b/lease/lessor_test.go @@ -26,7 +26,7 @@ import ( "testing" "time" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/mvcc/backend" "go.uber.org/zap" ) diff --git a/mvcc/kv.go b/mvcc/kv.go index e26d8a63791d..58542c0eb1e9 100644 --- a/mvcc/kv.go +++ b/mvcc/kv.go @@ -15,9 +15,9 @@ package mvcc import ( + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/traceutil" ) diff --git a/mvcc/kv_test.go b/mvcc/kv_test.go index 25b45403e6c3..180a72dc1545 100644 --- a/mvcc/kv_test.go +++ b/mvcc/kv_test.go @@ -21,10 +21,10 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" - "go.etcd.io/etcd/v3/pkg/testutil" "go.etcd.io/etcd/v3/pkg/traceutil" "github.com/prometheus/client_golang/prometheus" diff --git a/mvcc/kvstore.go b/mvcc/kvstore.go index ba3854615f06..9e350219ed5e 100644 --- a/mvcc/kvstore.go +++ b/mvcc/kvstore.go @@ -23,10 +23,10 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/etcdserver/cindex" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/schedule" "go.etcd.io/etcd/v3/pkg/traceutil" diff --git a/mvcc/kvstore_test.go b/mvcc/kvstore_test.go index f8adae859912..ac66ef4554dc 100644 --- a/mvcc/kvstore_test.go +++ b/mvcc/kvstore_test.go @@ -29,11 +29,11 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/schedule" - "go.etcd.io/etcd/v3/pkg/testutil" "go.etcd.io/etcd/v3/pkg/traceutil" "go.uber.org/zap" diff --git a/mvcc/kvstore_txn.go b/mvcc/kvstore_txn.go index 28e39d0c650c..2144d53159b7 100644 --- a/mvcc/kvstore_txn.go +++ b/mvcc/kvstore_txn.go @@ -15,9 +15,9 @@ package mvcc import ( + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/traceutil" "go.uber.org/zap" ) diff --git a/mvcc/util.go b/mvcc/util.go index 86d4805feb1d..02889f25ed9b 100644 --- a/mvcc/util.go +++ b/mvcc/util.go @@ -18,8 +18,8 @@ import ( "encoding/binary" "fmt" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" ) func UpdateConsistentIndex(be backend.Backend, index uint64) { diff --git a/mvcc/watchable_store.go b/mvcc/watchable_store.go index 130279f5471f..4241a7e26b0e 100644 --- a/mvcc/watchable_store.go +++ b/mvcc/watchable_store.go @@ -18,10 +18,10 @@ import ( "sync" "time" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/etcdserver/cindex" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/traceutil" "go.uber.org/zap" diff --git a/mvcc/watchable_store_test.go b/mvcc/watchable_store_test.go index 7f2a720d3d5d..ee5ed06618aa 100644 --- a/mvcc/watchable_store_test.go +++ b/mvcc/watchable_store_test.go @@ -23,10 +23,10 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/etcdserver/cindex" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/traceutil" "go.uber.org/zap" ) diff --git a/mvcc/watchable_store_txn.go b/mvcc/watchable_store_txn.go index 7bf6cdb7f657..f3ea143396aa 100644 --- a/mvcc/watchable_store_txn.go +++ b/mvcc/watchable_store_txn.go @@ -15,7 +15,7 @@ package mvcc import ( - "go.etcd.io/etcd/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/traceutil" ) diff --git a/mvcc/watcher.go b/mvcc/watcher.go index 2a3cb4adaa62..1a637d78ce9e 100644 --- a/mvcc/watcher.go +++ b/mvcc/watcher.go @@ -19,7 +19,7 @@ import ( "errors" "sync" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" ) // AutoWatchID is the watcher ID passed in WatchStream.Watch when no diff --git a/mvcc/watcher_group.go b/mvcc/watcher_group.go index 310220360e95..6adacc3a9344 100644 --- a/mvcc/watcher_group.go +++ b/mvcc/watcher_group.go @@ -18,7 +18,7 @@ import ( "fmt" "math" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/pkg/adt" ) diff --git a/mvcc/watcher_test.go b/mvcc/watcher_test.go index b4b426edb80f..272077ab46c7 100644 --- a/mvcc/watcher_test.go +++ b/mvcc/watcher_test.go @@ -22,9 +22,9 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/lease" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" "go.uber.org/zap" ) diff --git a/pkg/flags/unique_urls.go b/pkg/flags/unique_urls.go index 2f9b206e6c1f..35be96094aa5 100644 --- a/pkg/flags/unique_urls.go +++ b/pkg/flags/unique_urls.go @@ -21,7 +21,7 @@ import ( "sort" "strings" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) // UniqueURLs contains unique URLs diff --git a/pkg/flags/urls.go b/pkg/flags/urls.go index 47b39c6621bf..8f12f69ca7fd 100644 --- a/pkg/flags/urls.go +++ b/pkg/flags/urls.go @@ -20,7 +20,7 @@ import ( "net/url" "strings" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" ) // URLsValue wraps "types.URLs". diff --git a/pkg/ioutil/util.go b/pkg/ioutil/util.go index cf0b360af710..623b3317f5f0 100644 --- a/pkg/ioutil/util.go +++ b/pkg/ioutil/util.go @@ -18,7 +18,7 @@ import ( "io" "os" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" ) // WriteAndSyncFile behaves just like ioutil.WriteFile in the standard library, diff --git a/pkg/logutil/zap_raft.go b/pkg/logutil/raft/zap_raft.go similarity index 99% rename from pkg/logutil/zap_raft.go rename to pkg/logutil/raft/zap_raft.go index f0772a17c2e5..b3e460c58364 100644 --- a/pkg/logutil/zap_raft.go +++ b/pkg/logutil/raft/zap_raft.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package logutil +package raft import ( "errors" diff --git a/pkg/logutil/zap_raft_test.go b/pkg/logutil/raft/zap_raft_test.go similarity index 86% rename from pkg/logutil/zap_raft_test.go rename to pkg/logutil/raft/zap_raft_test.go index 5724f1916746..2174ffe4fb5e 100644 --- a/pkg/logutil/zap_raft_test.go +++ b/pkg/logutil/raft/zap_raft_test.go @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -package logutil +package raft_test import ( "bytes" @@ -24,6 +24,9 @@ import ( "testing" "time" + "go.etcd.io/etcd/c/v3/pkg/logutil" + lograft "go.etcd.io/etcd/v3/pkg/logutil/raft" + "go.uber.org/zap" "go.uber.org/zap/zapcore" ) @@ -40,11 +43,11 @@ func TestNewRaftLogger(t *testing.T) { Thereafter: 100, }, Encoding: "json", - EncoderConfig: DefaultZapLoggerConfig.EncoderConfig, + EncoderConfig: logutil.DefaultZapLoggerConfig.EncoderConfig, OutputPaths: []string{logPath}, ErrorOutputPaths: []string{logPath}, } - gl, err := NewRaftLogger(lcfg) + gl, err := lograft.NewRaftLogger(lcfg) if err != nil { t.Fatal(err) } @@ -66,7 +69,7 @@ func TestNewRaftLogger(t *testing.T) { if !bytes.Contains(data, []byte("etcd-logutil-2")) { t.Fatalf("can't find data in log %q", string(data)) } - if !bytes.Contains(data, []byte("logutil/zap_raft_test.go:")) { + if !bytes.Contains(data, []byte("raft/zap_raft_test.go:")) { t.Fatalf("unexpected caller; %q", string(data)) } } @@ -80,7 +83,7 @@ func TestNewRaftLoggerFromZapCore(t *testing.T) { zap.NewAtomicLevelAt(zap.InfoLevel), ) - lg := NewRaftLoggerFromZapCore(cr, syncer) + lg := lograft.NewRaftLoggerFromZapCore(cr, syncer) lg.Info("TestNewRaftLoggerFromZapCore") txt := buf.String() if !strings.Contains(txt, "TestNewRaftLoggerFromZapCore") { diff --git a/pkg/mock/mockstorage/storage_recorder.go b/pkg/mock/mockstorage/storage_recorder.go index d30486687121..376986ce3da6 100644 --- a/pkg/mock/mockstorage/storage_recorder.go +++ b/pkg/mock/mockstorage/storage_recorder.go @@ -15,7 +15,7 @@ package mockstorage import ( - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" ) diff --git a/pkg/mock/mockstore/store_recorder.go b/pkg/mock/mockstore/store_recorder.go index 386b266bf511..896a03885ce5 100644 --- a/pkg/mock/mockstore/store_recorder.go +++ b/pkg/mock/mockstore/store_recorder.go @@ -17,8 +17,8 @@ package mockstore import ( "time" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/etcdserver/api/v2store" - "go.etcd.io/etcd/v3/pkg/testutil" ) // StoreRecorder provides a Store interface with a testutil.Recorder diff --git a/pkg/mock/mockwait/wait_recorder.go b/pkg/mock/mockwait/wait_recorder.go index f6bd657d40ee..24ec037387b0 100644 --- a/pkg/mock/mockwait/wait_recorder.go +++ b/pkg/mock/mockwait/wait_recorder.go @@ -15,7 +15,7 @@ package mockwait import ( - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/pkg/wait" ) diff --git a/pkg/netutil/netutil.go b/pkg/netutil/netutil.go index f18bbe0c7632..f5b6dc5ffabc 100644 --- a/pkg/netutil/netutil.go +++ b/pkg/netutil/netutil.go @@ -23,7 +23,7 @@ import ( "sort" "time" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/pkg/types" "go.uber.org/zap" ) diff --git a/pkg/proxy/server.go b/pkg/proxy/server.go index ef22ea2fffce..094cc158c1fa 100644 --- a/pkg/proxy/server.go +++ b/pkg/proxy/server.go @@ -26,7 +26,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/transport" humanize "github.com/dustin/go-humanize" "go.uber.org/zap" diff --git a/pkg/proxy/server_test.go b/pkg/proxy/server_test.go index 17d3513b9749..158ba32059de 100644 --- a/pkg/proxy/server_test.go +++ b/pkg/proxy/server_test.go @@ -29,7 +29,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/transport" "go.uber.org/zap" ) diff --git a/proxy/grpcproxy/adapter/auth_client_adapter.go b/proxy/grpcproxy/adapter/auth_client_adapter.go index ffdb3449faea..c50908e12e57 100644 --- a/proxy/grpcproxy/adapter/auth_client_adapter.go +++ b/proxy/grpcproxy/adapter/auth_client_adapter.go @@ -17,7 +17,7 @@ package adapter import ( "context" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" grpc "google.golang.org/grpc" ) diff --git a/proxy/grpcproxy/adapter/cluster_client_adapter.go b/proxy/grpcproxy/adapter/cluster_client_adapter.go index b5dab26ca269..77286f974b78 100644 --- a/proxy/grpcproxy/adapter/cluster_client_adapter.go +++ b/proxy/grpcproxy/adapter/cluster_client_adapter.go @@ -17,7 +17,7 @@ package adapter import ( "context" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" ) diff --git a/proxy/grpcproxy/adapter/kv_client_adapter.go b/proxy/grpcproxy/adapter/kv_client_adapter.go index cc08e09d08fa..dbb9f2de9aad 100644 --- a/proxy/grpcproxy/adapter/kv_client_adapter.go +++ b/proxy/grpcproxy/adapter/kv_client_adapter.go @@ -17,7 +17,7 @@ package adapter import ( "context" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" grpc "google.golang.org/grpc" ) diff --git a/proxy/grpcproxy/adapter/lease_client_adapter.go b/proxy/grpcproxy/adapter/lease_client_adapter.go index e2c9518c593a..f700e5a15de4 100644 --- a/proxy/grpcproxy/adapter/lease_client_adapter.go +++ b/proxy/grpcproxy/adapter/lease_client_adapter.go @@ -17,7 +17,7 @@ package adapter import ( "context" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" ) diff --git a/proxy/grpcproxy/adapter/maintenance_client_adapter.go b/proxy/grpcproxy/adapter/maintenance_client_adapter.go index ca5b0c86cc41..b49317d43518 100644 --- a/proxy/grpcproxy/adapter/maintenance_client_adapter.go +++ b/proxy/grpcproxy/adapter/maintenance_client_adapter.go @@ -17,7 +17,7 @@ package adapter import ( "context" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" ) diff --git a/proxy/grpcproxy/adapter/watch_client_adapter.go b/proxy/grpcproxy/adapter/watch_client_adapter.go index 5bede2594a94..86883629fa10 100644 --- a/proxy/grpcproxy/adapter/watch_client_adapter.go +++ b/proxy/grpcproxy/adapter/watch_client_adapter.go @@ -18,7 +18,7 @@ import ( "context" "errors" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" ) diff --git a/proxy/grpcproxy/auth.go b/proxy/grpcproxy/auth.go index f5c652ed7162..fbd22a0bf535 100644 --- a/proxy/grpcproxy/auth.go +++ b/proxy/grpcproxy/auth.go @@ -17,8 +17,8 @@ package grpcproxy import ( "context" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) type AuthProxy struct { diff --git a/proxy/grpcproxy/cache/store.go b/proxy/grpcproxy/cache/store.go index bfbae2682905..de7a9902461b 100644 --- a/proxy/grpcproxy/cache/store.go +++ b/proxy/grpcproxy/cache/store.go @@ -21,8 +21,8 @@ import ( "sync" "github.com/golang/groupcache/lru" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/pkg/adt" ) diff --git a/proxy/grpcproxy/cluster.go b/proxy/grpcproxy/cluster.go index d91d0c847d47..c2f5b91b614e 100644 --- a/proxy/grpcproxy/cluster.go +++ b/proxy/grpcproxy/cluster.go @@ -21,10 +21,10 @@ import ( "os" "sync" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/naming" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/naming" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.uber.org/zap" "golang.org/x/time/rate" diff --git a/proxy/grpcproxy/election.go b/proxy/grpcproxy/election.go index 49421b6ea595..176f6fdd94d3 100644 --- a/proxy/grpcproxy/election.go +++ b/proxy/grpcproxy/election.go @@ -17,7 +17,7 @@ package grpcproxy import ( "context" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/etcdserver/api/v3election/v3electionpb" ) diff --git a/proxy/grpcproxy/health.go b/proxy/grpcproxy/health.go index 0e1f2f015198..900be0ed1d8b 100644 --- a/proxy/grpcproxy/health.go +++ b/proxy/grpcproxy/health.go @@ -20,9 +20,9 @@ import ( "net/http" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" "go.etcd.io/etcd/v3/etcdserver/api/etcdhttp" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" "go.uber.org/zap" ) diff --git a/proxy/grpcproxy/kv.go b/proxy/grpcproxy/kv.go index 7340326f53d0..c878a0b10a3f 100644 --- a/proxy/grpcproxy/kv.go +++ b/proxy/grpcproxy/kv.go @@ -17,8 +17,8 @@ package grpcproxy import ( "context" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/proxy/grpcproxy/cache" ) diff --git a/proxy/grpcproxy/leader.go b/proxy/grpcproxy/leader.go index ea0115c4efc8..bce2b2fdd898 100644 --- a/proxy/grpcproxy/leader.go +++ b/proxy/grpcproxy/leader.go @@ -19,7 +19,7 @@ import ( "math" "sync" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "golang.org/x/time/rate" ) diff --git a/proxy/grpcproxy/lease.go b/proxy/grpcproxy/lease.go index 48bcd663378d..21f7bd96101c 100644 --- a/proxy/grpcproxy/lease.go +++ b/proxy/grpcproxy/lease.go @@ -21,9 +21,9 @@ import ( "sync/atomic" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "google.golang.org/grpc" "google.golang.org/grpc/codes" diff --git a/proxy/grpcproxy/lock.go b/proxy/grpcproxy/lock.go index 4a903b74300a..88afdb978146 100644 --- a/proxy/grpcproxy/lock.go +++ b/proxy/grpcproxy/lock.go @@ -17,7 +17,7 @@ package grpcproxy import ( "context" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/etcdserver/api/v3lock/v3lockpb" ) diff --git a/proxy/grpcproxy/maintenance.go b/proxy/grpcproxy/maintenance.go index ca6c0b638ee5..24430c11fc78 100644 --- a/proxy/grpcproxy/maintenance.go +++ b/proxy/grpcproxy/maintenance.go @@ -18,8 +18,8 @@ import ( "context" "io" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) type maintenanceProxy struct { diff --git a/proxy/grpcproxy/register.go b/proxy/grpcproxy/register.go index e74cd5ca9021..c9007d08aaec 100644 --- a/proxy/grpcproxy/register.go +++ b/proxy/grpcproxy/register.go @@ -18,9 +18,9 @@ import ( "encoding/json" "os" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/clientv3/concurrency" - "go.etcd.io/etcd/v3/clientv3/naming" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3/concurrency" + "go.etcd.io/etcd/c/v3/clientv3/naming" "go.uber.org/zap" "golang.org/x/time/rate" diff --git a/proxy/grpcproxy/util.go b/proxy/grpcproxy/util.go index f33479c24a09..0d5264f619ee 100644 --- a/proxy/grpcproxy/util.go +++ b/proxy/grpcproxy/util.go @@ -17,7 +17,7 @@ package grpcproxy import ( "context" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" "google.golang.org/grpc" "google.golang.org/grpc/metadata" diff --git a/proxy/grpcproxy/watch.go b/proxy/grpcproxy/watch.go index fc62c4aa3997..0c2536065954 100644 --- a/proxy/grpcproxy/watch.go +++ b/proxy/grpcproxy/watch.go @@ -18,10 +18,10 @@ import ( "context" "sync" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/etcdserver/api/v3rpc" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.uber.org/zap" "google.golang.org/grpc/codes" diff --git a/proxy/grpcproxy/watch_broadcast.go b/proxy/grpcproxy/watch_broadcast.go index fc62e6dd6cbf..bf35a69ce674 100644 --- a/proxy/grpcproxy/watch_broadcast.go +++ b/proxy/grpcproxy/watch_broadcast.go @@ -19,8 +19,8 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" "go.uber.org/zap" ) diff --git a/proxy/grpcproxy/watcher.go b/proxy/grpcproxy/watcher.go index 879b8179e729..6f9fc6d965cb 100644 --- a/proxy/grpcproxy/watcher.go +++ b/proxy/grpcproxy/watcher.go @@ -17,10 +17,10 @@ package grpcproxy import ( "time" - "go.etcd.io/etcd/v3/clientv3" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/clientv3" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/mvcc" - "go.etcd.io/etcd/v3/mvcc/mvccpb" ) type watchRange struct { diff --git a/raft/node_test.go b/raft/node_test.go index cee61cf49662..4e5669584de0 100644 --- a/raft/node_test.go +++ b/raft/node_test.go @@ -24,7 +24,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" "go.etcd.io/etcd/v3/raft/raftpb" ) diff --git a/scripts/genproto.sh b/scripts/genproto.sh index d50d535a0eb0..aa7e5195b309 100755 --- a/scripts/genproto.sh +++ b/scripts/genproto.sh @@ -10,13 +10,13 @@ if ! [[ "$0" =~ scripts/genproto.sh ]]; then exit 255 fi -if [[ $(protoc --version | cut -f2 -d' ') != "3.7.1" ]]; then - echo "could not find protoc 3.7.1, is it installed + in PATH?" - exit 255 -fi +#if [[ $(protoc --version | cut -f2 -d' ') != "3.7.1" ]]; then +# echo "could not find protoc 3.7.1, is it installed + in PATH?" +# exit 255 +#fi # directories containing protos to be built -DIRS="./wal/walpb ./etcdserver/etcdserverpb ./etcdserver/api/snap/snappb ./raft/raftpb ./mvcc/mvccpb ./lease/leasepb ./auth/authpb ./etcdserver/api/v3lock/v3lockpb ./etcdserver/api/v3election/v3electionpb ./etcdserver/api/membership/membershippb" +DIRS="./wal/walpb ./c/etcdserver/etcdserverpb ./etcdserver/api/snap/snappb ./raft/raftpb ./c/mvcc/mvccpb ./lease/leasepb ./c/auth/authpb ./etcdserver/api/v3lock/v3lockpb ./etcdserver/api/v3election/v3electionpb ./c/etcdserver/api/membership/membershippb" # disable go mod - this is for the go get/install invocations export GO111MODULE=off @@ -51,23 +51,28 @@ ln -s "${PWD}" "${ETCD_ROOT}" # Ensure we have the right version of protoc-gen-gogo by building it every time. # TODO(jonboulle): vendor this instead of `go get`ting it. +echo "Downloading github.com/gogo/protobuf/..." go get -u github.com/gogo/protobuf/{proto,protoc-gen-gogo,gogoproto} +echo "Downloading golang.org/x/tools/cmd/goimports" go get -u golang.org/x/tools/cmd/goimports pushd "${GOGOPROTO_ROOT}" git reset --hard "${GOGO_PROTO_SHA}" make install popd -# generate gateway code +echo Generating gateway code go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway go get -u github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger pushd "${GRPC_GATEWAY_ROOT}" git reset --hard "${GRPC_GATEWAY_SHA}" go install ./protoc-gen-grpc-gateway popd +echo Generated gateway code + for dir in ${DIRS}; do pushd "${dir}" + echo "Generating grpc files in: ${dir}" protoc --gofast_out=plugins=grpc,import_prefix=go.etcd.io/:. -I=".:${GOGOPROTO_PATH}:${ETCD_IO_ROOT}:${GRPC_GATEWAY_ROOT}/third_party/googleapis" ./*.proto # shellcheck disable=SC1117 sed -i.bak -E 's/go\.etcd\.io\/(gogoproto|github\.com|golang\.org|google\.golang\.org)/\1/g' ./*.pb.go @@ -83,6 +88,8 @@ for dir in ${DIRS}; do sed -i.bak -E 's/import _ \"google\.golang\.org\/genproto\/googleapis\/api\/annotations\"//g' ./*.pb.go # shellcheck disable=SC1117 sed -i.bak -E "s/go.etcd.io\/etcd\//go.etcd.io\/etcd\/v3\//" ./*.pb.go + # shellcheck disable=SC1117 + sed -i.bak -E "s/go.etcd.io\/etcd\/v3\/c\//go.etcd.io\/etcd\/c\/v3\//" ./*.pb.go rm -f ./*.bak gofmt -s -w ./*.pb.go goimports -w ./*.pb.go @@ -91,8 +98,8 @@ done # remove old swagger files so it's obvious whether the files fail to generate rm -rf Documentation/dev-guide/apispec/swagger/*json -for pb in etcdserverpb/rpc api/v3lock/v3lockpb/v3lock api/v3election/v3electionpb/v3election; do - protobase="etcdserver/${pb}" +for protobase in c/etcdserver/etcdserverpb/rpc etcdserver/api/v3lock/v3lockpb/v3lock etcdserver/api/v3election/v3electionpb/v3election; do + echo "Generating from '${protobase}'" protoc -I. \ -I"${GRPC_GATEWAY_ROOT}"/third_party/googleapis \ -I"${GOGOPROTO_PATH}" \ @@ -116,12 +123,14 @@ for pb in etcdserverpb/rpc api/v3lock/v3lockpb/v3lock api/v3election/v3electionp sed -i.bak -E "s|import \(|& \"go.etcd.io/etcd/v3/${pkgpath}\"|" ${gwfile} # shellcheck disable=SC1117 sed -i.bak -E "s/go.etcd.io\etcd\//go.etcd.io\/etcd\/v3/" ${gwfile} + # shellcheck disable=SC1117 + sed -i.bak -E "s/go.etcd.io\/etcd\/v3\/c\//go.etcd.io\/etcd\/c\/v3\//" ${gwfile} mkdir -p "${pkgpath}"/gw/ go fmt ${gwfile} mv ${gwfile} "${pkgpath}/gw/" - rm -f ./etcdserver/${pb}*.bak - swaggerName=$(basename ${pb}) - mv Documentation/dev-guide/apispec/swagger/etcdserver/${pb}.swagger.json \ + rm -f ./${protobase}*.bak + swaggerName=$(basename ${protobase}) + mv Documentation/dev-guide/apispec/swagger/${protobase}.swagger.json \ Documentation/dev-guide/apispec/swagger/"${swaggerName}".swagger.json done rm -rf Documentation/dev-guide/apispec/swagger/etcdserver/ @@ -151,13 +160,13 @@ if [ "$1" != "--skip-protodoc" ]; then echo "protodoc is updated" popd - protodoc --directories="etcdserver/etcdserverpb=service_message,mvcc/mvccpb=service_message,lease/leasepb=service_message,auth/authpb=service_message" \ + protodoc --directories="c/etcdserver/etcdserverpb=service_message,c/mvcc/mvccpb=service_message,lease/leasepb=service_message,c/auth/authpb=service_message" \ --title="etcd API Reference" \ --output="Documentation/dev-guide/api_reference_v3.md" \ - --message-only-from-this-file="etcdserver/etcdserverpb/rpc.proto" \ + --message-only-from-this-file="c/etcdserver/etcdserverpb/rpc.proto" \ --disclaimer="This is a generated documentation. Please read the proto files for more." - protodoc --directories="etcdserver/api/v3lock/v3lockpb=service_message,etcdserver/api/v3election/v3electionpb=service_message,mvcc/mvccpb=service_message" \ + protodoc --directories="etcdserver/api/v3lock/v3lockpb=service_message,etcdserver/api/v3election/v3electionpb=service_message,c/mvcc/mvccpb=service_message" \ --title="etcd concurrency API Reference" \ --output="Documentation/dev-guide/api_concurrency_reference_v3.md" \ --disclaimer="This is a generated documentation. Please read the proto files for more." diff --git a/test b/test index cca1e9cc940c..05720b8a0cc4 100755 --- a/test +++ b/test @@ -50,8 +50,8 @@ USERPKG=${PKG:-} COVER=${COVER:-"-cover"} # Hack: gofmt ./ will recursively check the .git directory. So use *.go for gofmt. -IGNORE_PKGS="(vendor/|etcdserverpb|rafttest|gopath.proto|v3lockpb|v3electionpb)" -INTEGRATION_PKGS="(integration|tests/e2e|contrib|functional)" +IGNORE_PKGS="(^|/)(vendor|etcdserverpb|rafttest|gopath.proto|v3lockpb|v3electionpb|c)(/|$)" +INTEGRATION_PKGS="(^|/)(integration|tests/e2e|contrib|functional|[.])(/|$)" # all github.com/etcd-io/etcd/whatever pkgs that are not auto-generated / tools # shellcheck disable=SC1117 @@ -60,7 +60,7 @@ PKGS=$(find . -name \*.go | while read -r a; do dirname "$a"; done | sort | uniq PKGS_COMMA=${PKGS// /,} # shellcheck disable=SC1117 -TEST_PKGS=$(find . -name \*_test.go | while read -r a; do dirname "$a"; done | sort | uniq | grep -vE "$IGNORE_PKGS" | sed "s|\./||g") +TEST_PKGS=$(find . -name \*_test.go ! -path . | while read -r a; do dirname "$a"; done | sort | uniq | grep -vE "$IGNORE_PKGS" | sed "s|\./||g") # shellcheck disable=SC1117 FORMATTABLE=$(find . -name \*.go | while read -r a; do echo "$(dirname "$a")/*.go"; done | sort | uniq | grep -vE "$IGNORE_PKGS" | sed "s|\./||g") @@ -90,7 +90,7 @@ fi # prepend REPO_PATH to each local package split=$TEST TEST="" -for a in $split; do TEST="$TEST ${REPO_PATH}/${a}"; done +for a in $split; do TEST="$TEST ./${a}/..."; done # shellcheck disable=SC2206 TEST=($TEST) @@ -122,6 +122,8 @@ echo "Running with TEST_CPUS:" "${TEST_CPUS}" # determine whether target supports race detection if [ "$GOARCH" == "amd64" ]; then RACE="--race" +else + RACE="--race=false" fi RUN_ARG="" @@ -152,7 +154,13 @@ function unit_pass { else USERTIMEOUT="${TIMEOUT}" fi + echo go test -mod=mod ${GO_TEST_FLAG} -timeout "${USERTIMEOUT}" "${COVER}" ${RACE} -cpu "${TEST_CPUS}" ${RUN_ARG} "$@" "${TEST[@]}" go test -mod=mod ${GO_TEST_FLAG} -timeout "${USERTIMEOUT}" "${COVER}" ${RACE} -cpu "${TEST_CPUS}" ${RUN_ARG} "$@" "${TEST[@]}" + ( + cd ./c + echo go test -mod=mod ${GO_TEST_FLAG} -timeout "${USERTIMEOUT}" "${COVER}" ${RACE} -cpu "${TEST_CPUS}" ${RUN_ARG} "./..." "$@" + go test -mod=mod ${GO_TEST_FLAG} -timeout "${USERTIMEOUT}" "${COVER}" ${RACE} -cpu "${TEST_CPUS}" ${RUN_ARG} "./..." "$@" + ) } function integration_pass { @@ -172,28 +180,34 @@ function integration_pass { # if TESTCASE not set, PKG set, run all test cases in specified package # if TESTCASE not set, PKG not set, run all tests in all integration and integration_extra packages if [ -z "${TESTCASE}" ] && [ -z "${USERPKG}" ]; then - go test -mod=mod -timeout "${USERTIMEOUT}" -v -cpu "${TEST_CPUS}" "$@" "${REPO_PATH}/integration" + ( + cd ./integration + go test -mod=mod -timeout "${USERTIMEOUT}" -v -cpu "${TEST_CPUS}" "$@" "./..." + ) integration_extra "$@" else if [ -z "${USERPKG}" ]; then - INTEGTESTPKG=("${REPO_PATH}/integration" - "${REPO_PATH}/client/integration" - "${REPO_PATH}/clientv3/integration" - "${REPO_PATH}/contrib/raftexample" + INTEGTESTPKG=("${REPO_PATH}/contrib/raftexample" "${REPO_PATH}/store") + go test -mod=mod -timeout "${USERTIMEOUT}" -v -cpu "${TEST_CPUS}" "${RUN_ARG}" "$@" "${INTEGTESTPKG[@]}" + ( + cd ./integration + go test -mod=mod -timeout "${USERTIMEOUT}" -v -cpu "${TEST_CPUS}" "${RUN_ARG}" "$@" . + ) else - INTEGTESTPKG=("${TEST[@]}") + go test -mod=mod -timeout "${USERTIMEOUT}" -v -cpu "${TEST_CPUS}" "${RUN_ARG}" "$@" "${INTEGTESTPKG[@]}" fi - go test -mod=mod -timeout "${USERTIMEOUT}" -v -cpu "${TEST_CPUS}" "${RUN_ARG}" "$@" "${INTEGTESTPKG[@]}" fi } function integration_extra { - go test -mod=mod -timeout 1m -v ${RACE} -cpu "${TEST_CPUS}" "$@" "${REPO_PATH}/client/integration" - go test -mod=mod -timeout 25m -v ${RACE} -cpu "${TEST_CPUS}" "$@" "${REPO_PATH}/clientv3/integration" + ( + cd integration; + go test -mod=mod -timeout 25m -v ${RACE} -cpu "${TEST_CPUS}" "$@" "./..." + go test -mod=mod -timeout 1m -v ${RACE} -cpu "${TEST_CPUS}" -run=Example "$@" "./..." + ) go test -mod=mod -timeout 1m -v -cpu "${TEST_CPUS}" "$@" "${REPO_PATH}/contrib/raftexample" go test -mod=mod -timeout 5m -v ${RACE} -tags v2v3 "$@" "${REPO_PATH}/etcdserver/api/v2store" - go test -mod=mod -timeout 1m -v ${RACE} -cpu "${TEST_CPUS}" -run=Example "$@" "${TEST[@]}" } function functional_pass { @@ -391,7 +405,7 @@ function shellcheck_pass { function markdown_you_pass { # eschew you - yous=$(find . -name \*.md ! -path './vendor/*' ! -path './Documentation/*' ! -path './gopath.proto/*' -exec grep -E --color "[Yy]ou[r]?[ '.,;]" {} + || true) + yous=$(find . -name \*.md ! -path '*/vendor/*' ! -path './Documentation/*' ! -path './gopath.proto/*' -exec grep -E --color "[Yy]ou[r]?[ '.,;]" {} + || true) if [ -n "$yous" ]; then echo -e "found 'you' in documentation:\\n${yous}" exit 255 @@ -650,16 +664,8 @@ function bom_pass { } function dep_pass { - echo "Checking package dependencies..." - # don't pull in etcdserver package - pushd clientv3 >/dev/null - badpkg="(etcdserver$|mvcc$|backend$|grpc-gateway)" - deps=$(go list -f '{{ .Deps }}' | sed 's/ /\n/g' | grep -E "${badpkg}" || echo "") - popd >/dev/null - if [ -n "$deps" ]; then - echo -e "clientv3 has masked dependencies:\\n${deps}" - exit 255 - fi + # This is enforced by go modules (go.mod file). + echo "Checking package dependencies... [DEPRECATED]" } function build_cov_pass { diff --git a/tests/e2e/ctl_v2_test.go b/tests/e2e/ctl_v2_test.go index 9af2fe01aea5..8536e1b96610 100644 --- a/tests/e2e/ctl_v2_test.go +++ b/tests/e2e/ctl_v2_test.go @@ -21,8 +21,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/fileutil" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestCtlV2Set(t *testing.T) { testCtlV2Set(t, &configNoTLS, false) } diff --git a/tests/e2e/ctl_v3_alarm_test.go b/tests/e2e/ctl_v3_alarm_test.go index a6ef5e3987c3..8b3edcbb07d5 100644 --- a/tests/e2e/ctl_v3_alarm_test.go +++ b/tests/e2e/ctl_v3_alarm_test.go @@ -21,7 +21,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) func TestCtlV3Alarm(t *testing.T) { diff --git a/tests/e2e/ctl_v3_auth_test.go b/tests/e2e/ctl_v3_auth_test.go index c4a6fdf8abb2..6ba5eddbc404 100644 --- a/tests/e2e/ctl_v3_auth_test.go +++ b/tests/e2e/ctl_v3_auth_test.go @@ -22,7 +22,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) func TestCtlV3AuthEnable(t *testing.T) { testCtl(t, authEnableTest) } diff --git a/tests/e2e/ctl_v3_endpoint_test.go b/tests/e2e/ctl_v3_endpoint_test.go index 7d1416bdf03c..8a67d9f3499a 100644 --- a/tests/e2e/ctl_v3_endpoint_test.go +++ b/tests/e2e/ctl_v3_endpoint_test.go @@ -21,7 +21,7 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" ) func TestCtlV3EndpointHealth(t *testing.T) { testCtl(t, endpointHealthTest, withQuorum()) } diff --git a/tests/e2e/ctl_v3_member_test.go b/tests/e2e/ctl_v3_member_test.go index b324160fd3fd..16853ec784a6 100644 --- a/tests/e2e/ctl_v3_member_test.go +++ b/tests/e2e/ctl_v3_member_test.go @@ -22,7 +22,7 @@ import ( "strings" "testing" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) func TestCtlV3MemberList(t *testing.T) { testCtl(t, memberListTest) } diff --git a/tests/e2e/ctl_v3_migrate_test.go b/tests/e2e/ctl_v3_migrate_test.go index 715ca36aa1eb..f1c4dae76bb8 100644 --- a/tests/e2e/ctl_v3_migrate_test.go +++ b/tests/e2e/ctl_v3_migrate_test.go @@ -21,8 +21,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestCtlV3Migrate(t *testing.T) { diff --git a/tests/e2e/ctl_v3_move_leader_test.go b/tests/e2e/ctl_v3_move_leader_test.go index 521820eac3ea..4287480f56cf 100644 --- a/tests/e2e/ctl_v3_move_leader_test.go +++ b/tests/e2e/ctl_v3_move_leader_test.go @@ -22,10 +22,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/pkg/transport" - "go.etcd.io/etcd/v3/pkg/types" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/types" ) func TestCtlV3MoveLeaderSecure(t *testing.T) { diff --git a/tests/e2e/ctl_v3_snapshot_test.go b/tests/e2e/ctl_v3_snapshot_test.go index 9941cb1f00ec..3c24997113e0 100644 --- a/tests/e2e/ctl_v3_snapshot_test.go +++ b/tests/e2e/ctl_v3_snapshot_test.go @@ -25,9 +25,9 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3/snapshot" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/v3/etcdctl/ctlv3/command/snapshot" "go.etcd.io/etcd/v3/pkg/expect" - "go.etcd.io/etcd/v3/pkg/testutil" ) func TestCtlV3Snapshot(t *testing.T) { testCtl(t, snapshotTest) } diff --git a/tests/e2e/ctl_v3_test.go b/tests/e2e/ctl_v3_test.go index 849c48b19ef0..7565311dac0a 100644 --- a/tests/e2e/ctl_v3_test.go +++ b/tests/e2e/ctl_v3_test.go @@ -21,10 +21,10 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/version" "go.etcd.io/etcd/v3/pkg/flags" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/version" ) func TestCtlV3Version(t *testing.T) { testCtl(t, versionTest) } diff --git a/tests/e2e/etcd_corrupt_test.go b/tests/e2e/etcd_corrupt_test.go index f5aed150c238..9efa5da3b784 100644 --- a/tests/e2e/etcd_corrupt_test.go +++ b/tests/e2e/etcd_corrupt_test.go @@ -23,8 +23,8 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/clientv3" - "go.etcd.io/etcd/v3/mvcc/mvccpb" + "go.etcd.io/etcd/c/v3/clientv3" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" bolt "go.etcd.io/bbolt" ) diff --git a/tests/e2e/etcd_process.go b/tests/e2e/etcd_process.go index c6a03ecefaac..ac19a6a260cf 100644 --- a/tests/e2e/etcd_process.go +++ b/tests/e2e/etcd_process.go @@ -19,8 +19,8 @@ import ( "net/url" "os" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/expect" - "go.etcd.io/etcd/v3/pkg/fileutil" ) var ( diff --git a/tests/e2e/etcd_release_upgrade_test.go b/tests/e2e/etcd_release_upgrade_test.go index 0ae2e40b9ccc..ecbb848eb7b0 100644 --- a/tests/e2e/etcd_release_upgrade_test.go +++ b/tests/e2e/etcd_release_upgrade_test.go @@ -21,9 +21,9 @@ import ( "testing" "time" - "go.etcd.io/etcd/v3/pkg/fileutil" - "go.etcd.io/etcd/v3/pkg/testutil" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/version" ) // TestReleaseUpgrade ensures that changes to master branch does not affect diff --git a/tests/e2e/etcd_spawn_cov.go b/tests/e2e/etcd_spawn_cov.go index f845490d44f4..166f075097ac 100644 --- a/tests/e2e/etcd_spawn_cov.go +++ b/tests/e2e/etcd_spawn_cov.go @@ -24,8 +24,8 @@ import ( "syscall" "time" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/expect" - "go.etcd.io/etcd/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/flags" ) diff --git a/tests/e2e/main_test.go b/tests/e2e/main_test.go index 59ad4e3f17b4..709836d52f94 100644 --- a/tests/e2e/main_test.go +++ b/tests/e2e/main_test.go @@ -10,7 +10,7 @@ import ( "runtime" "testing" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) var ( diff --git a/tests/e2e/metrics_test.go b/tests/e2e/metrics_test.go index e20b0f88d5c1..48a8fb7b0620 100644 --- a/tests/e2e/metrics_test.go +++ b/tests/e2e/metrics_test.go @@ -18,7 +18,7 @@ import ( "fmt" "testing" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/version" ) func TestV3MetricsSecure(t *testing.T) { diff --git a/tests/e2e/v2_curl_test.go b/tests/e2e/v2_curl_test.go index 7cfcbebd6bd8..cb6ad1e90206 100644 --- a/tests/e2e/v2_curl_test.go +++ b/tests/e2e/v2_curl_test.go @@ -21,7 +21,7 @@ import ( "strings" "testing" - "go.etcd.io/etcd/v3/pkg/testutil" + "go.etcd.io/etcd/c/v3/pkg/testutil" ) func TestV2CurlNoTLS(t *testing.T) { testCurlPutGet(t, &configNoTLS) } diff --git a/tests/e2e/v3_cipher_suite_test.go b/tests/e2e/v3_cipher_suite_test.go index 9b05488781ef..178d0090a05c 100644 --- a/tests/e2e/v3_cipher_suite_test.go +++ b/tests/e2e/v3_cipher_suite_test.go @@ -20,7 +20,7 @@ import ( "fmt" "testing" - "go.etcd.io/etcd/v3/version" + "go.etcd.io/etcd/c/v3/version" ) func TestV3CurlCipherSuitesValid(t *testing.T) { testV3CurlCipherSuites(t, true) } diff --git a/tests/e2e/v3_curl_lease_test.go b/tests/e2e/v3_curl_lease_test.go index 91e59243c227..7026fd55fa9b 100644 --- a/tests/e2e/v3_curl_lease_test.go +++ b/tests/e2e/v3_curl_lease_test.go @@ -18,7 +18,7 @@ import ( "fmt" "testing" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" ) func TestV3CurlLeaseGrantNoTLS(t *testing.T) { diff --git a/tests/e2e/v3_curl_test.go b/tests/e2e/v3_curl_test.go index a19cb68d4945..608a8ebb57e7 100644 --- a/tests/e2e/v3_curl_test.go +++ b/tests/e2e/v3_curl_test.go @@ -22,11 +22,11 @@ import ( "strconv" "testing" - "go.etcd.io/etcd/v3/auth/authpb" + "go.etcd.io/etcd/c/v3/auth/authpb" + "go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes" + pb "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/testutil" epb "go.etcd.io/etcd/v3/etcdserver/api/v3election/v3electionpb" - "go.etcd.io/etcd/v3/etcdserver/api/v3rpc/rpctypes" - pb "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/testutil" "github.com/grpc-ecosystem/grpc-gateway/runtime" ) diff --git a/tools/benchmark/cmd/lease.go b/tools/benchmark/cmd/lease.go index c8ed1e43b32c..acaf9f7b4e57 100644 --- a/tools/benchmark/cmd/lease.go +++ b/tools/benchmark/cmd/lease.go @@ -19,7 +19,7 @@ import ( "fmt" "time" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/report" "github.com/spf13/cobra" diff --git a/tools/benchmark/cmd/put.go b/tools/benchmark/cmd/put.go index cc3b25c94469..6ea737185723 100644 --- a/tools/benchmark/cmd/put.go +++ b/tools/benchmark/cmd/put.go @@ -24,7 +24,7 @@ import ( "strings" "time" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/report" "github.com/dustin/go-humanize" diff --git a/tools/benchmark/cmd/range.go b/tools/benchmark/cmd/range.go index c46b90d5ab2d..0f7f34e19e15 100644 --- a/tools/benchmark/cmd/range.go +++ b/tools/benchmark/cmd/range.go @@ -21,7 +21,7 @@ import ( "os" "time" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/report" "github.com/spf13/cobra" diff --git a/tools/benchmark/cmd/root.go b/tools/benchmark/cmd/root.go index 7ee50aad8dc3..5e9300b43571 100644 --- a/tools/benchmark/cmd/root.go +++ b/tools/benchmark/cmd/root.go @@ -18,7 +18,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/transport" "github.com/spf13/cobra" "gopkg.in/cheggaaa/pb.v1" diff --git a/tools/benchmark/cmd/stm.go b/tools/benchmark/cmd/stm.go index 0372d628b5e4..1b5f41a865bf 100644 --- a/tools/benchmark/cmd/stm.go +++ b/tools/benchmark/cmd/stm.go @@ -23,8 +23,8 @@ import ( "os" "time" - v3 "go.etcd.io/etcd/v3/clientv3" - v3sync "go.etcd.io/etcd/v3/clientv3/concurrency" + v3 "go.etcd.io/etcd/c/v3/clientv3" + v3sync "go.etcd.io/etcd/c/v3/clientv3/concurrency" "go.etcd.io/etcd/v3/etcdserver/api/v3lock/v3lockpb" "go.etcd.io/etcd/v3/pkg/report" diff --git a/tools/benchmark/cmd/txn_put.go b/tools/benchmark/cmd/txn_put.go index a298a4c0a8f6..1294b0c12132 100644 --- a/tools/benchmark/cmd/txn_put.go +++ b/tools/benchmark/cmd/txn_put.go @@ -22,7 +22,7 @@ import ( "os" "time" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/report" "github.com/spf13/cobra" diff --git a/tools/benchmark/cmd/util.go b/tools/benchmark/cmd/util.go index 8d4783bdd4d5..70354d79dbbb 100644 --- a/tools/benchmark/cmd/util.go +++ b/tools/benchmark/cmd/util.go @@ -22,7 +22,7 @@ import ( "strings" "github.com/bgentry/speakeasy" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/report" "google.golang.org/grpc/grpclog" ) diff --git a/tools/benchmark/cmd/watch.go b/tools/benchmark/cmd/watch.go index 9cea4884c143..db4010bc4601 100644 --- a/tools/benchmark/cmd/watch.go +++ b/tools/benchmark/cmd/watch.go @@ -23,7 +23,7 @@ import ( "sync/atomic" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/report" "github.com/spf13/cobra" diff --git a/tools/benchmark/cmd/watch_get.go b/tools/benchmark/cmd/watch_get.go index 3cc20fe7420a..e93c29ec4e57 100644 --- a/tools/benchmark/cmd/watch_get.go +++ b/tools/benchmark/cmd/watch_get.go @@ -20,7 +20,7 @@ import ( "sync" "time" - v3 "go.etcd.io/etcd/v3/clientv3" + v3 "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/report" "github.com/spf13/cobra" diff --git a/tools/benchmark/cmd/watch_latency.go b/tools/benchmark/cmd/watch_latency.go index 9025f98fb7ab..e74dd1637891 100644 --- a/tools/benchmark/cmd/watch_latency.go +++ b/tools/benchmark/cmd/watch_latency.go @@ -21,7 +21,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/pkg/report" "github.com/spf13/cobra" diff --git a/tools/etcd-dump-db/backend.go b/tools/etcd-dump-db/backend.go index 44e304209819..a896468ab52f 100644 --- a/tools/etcd-dump-db/backend.go +++ b/tools/etcd-dump-db/backend.go @@ -17,13 +17,13 @@ package main import ( "encoding/binary" "fmt" - "go.etcd.io/etcd/v3/auth/authpb" + "go.etcd.io/etcd/c/v3/auth/authpb" "path/filepath" + "go.etcd.io/etcd/c/v3/mvcc/mvccpb" "go.etcd.io/etcd/v3/lease/leasepb" "go.etcd.io/etcd/v3/mvcc" "go.etcd.io/etcd/v3/mvcc/backend" - "go.etcd.io/etcd/v3/mvcc/mvccpb" bolt "go.etcd.io/bbolt" ) diff --git a/tools/etcd-dump-logs/etcd-dump-log_test.go b/tools/etcd-dump-logs/etcd-dump-log_test.go index f7c802341434..dc12c0965a07 100644 --- a/tools/etcd-dump-logs/etcd-dump-log_test.go +++ b/tools/etcd-dump-logs/etcd-dump-log_test.go @@ -24,9 +24,9 @@ import ( "strings" "testing" - "go.etcd.io/etcd/v3/auth/authpb" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/auth/authpb" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/pbutil" "go.etcd.io/etcd/v3/raft/raftpb" "go.etcd.io/etcd/v3/wal" diff --git a/tools/etcd-dump-logs/main.go b/tools/etcd-dump-logs/main.go index 6d842b2acebf..4c368d2d4e06 100644 --- a/tools/etcd-dump-logs/main.go +++ b/tools/etcd-dump-logs/main.go @@ -28,10 +28,10 @@ import ( "strings" "time" + "go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb" + "go.etcd.io/etcd/c/v3/pkg/types" "go.etcd.io/etcd/v3/etcdserver/api/snap" - "go.etcd.io/etcd/v3/etcdserver/etcdserverpb" "go.etcd.io/etcd/v3/pkg/pbutil" - "go.etcd.io/etcd/v3/pkg/types" "go.etcd.io/etcd/v3/raft/raftpb" "go.etcd.io/etcd/v3/wal" "go.etcd.io/etcd/v3/wal/walpb" diff --git a/tools/etcd-dump-metrics/etcd.go b/tools/etcd-dump-metrics/etcd.go index 4b47757e194d..336483d46c97 100644 --- a/tools/etcd-dump-metrics/etcd.go +++ b/tools/etcd-dump-metrics/etcd.go @@ -23,7 +23,7 @@ import ( "strings" "time" - "go.etcd.io/etcd/v3/clientv3" + "go.etcd.io/etcd/c/v3/clientv3" "go.etcd.io/etcd/v3/embed" "go.uber.org/zap" diff --git a/tools/etcd-dump-metrics/install_darwin.go b/tools/etcd-dump-metrics/install_darwin.go index dab3386768d4..d2dff9bd4253 100644 --- a/tools/etcd-dump-metrics/install_darwin.go +++ b/tools/etcd-dump-metrics/install_darwin.go @@ -24,7 +24,7 @@ import ( "os/exec" "path/filepath" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" ) const downloadURL = `https://storage.googleapis.com/etcd/%s/etcd-%s-darwin-amd64.zip` diff --git a/tools/etcd-dump-metrics/install_linux.go b/tools/etcd-dump-metrics/install_linux.go index 68adcaaea48c..9ac864070f1f 100644 --- a/tools/etcd-dump-metrics/install_linux.go +++ b/tools/etcd-dump-metrics/install_linux.go @@ -23,7 +23,7 @@ import ( "os/exec" "path/filepath" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" ) const downloadURL = `https://storage.googleapis.com/etcd/%s/etcd-%s-linux-amd64.tar.gz` diff --git a/tools/etcd-dump-metrics/metrics.go b/tools/etcd-dump-metrics/metrics.go index dfc66622a52e..cd0b1d160637 100644 --- a/tools/etcd-dump-metrics/metrics.go +++ b/tools/etcd-dump-metrics/metrics.go @@ -22,7 +22,7 @@ import ( "strings" "time" - "go.etcd.io/etcd/v3/pkg/transport" + "go.etcd.io/etcd/c/v3/pkg/transport" "go.uber.org/zap" ) diff --git a/vendor/github.com/json-iterator/go/README.md b/vendor/github.com/json-iterator/go/README.md index 50d56ffbf07e..52b111d5f36e 100644 --- a/vendor/github.com/json-iterator/go/README.md +++ b/vendor/github.com/json-iterator/go/README.md @@ -1,5 +1,5 @@ [![Sourcegraph](https://sourcegraph.com/github.com/json-iterator/go/-/badge.svg)](https://sourcegraph.com/github.com/json-iterator/go?badge) -[![GoDoc](http://img.shields.io/badge/go-documentation-blue.svg?style=flat-square)](http://godoc.org/github.com/json-iterator/go) +[![GoDoc](http://img.shields.io/badge/go-documentation-blue.svg?style=flat-square)](https://pkg.go.dev/github.com/json-iterator/go) [![Build Status](https://travis-ci.org/json-iterator/go.svg?branch=master)](https://travis-ci.org/json-iterator/go) [![codecov](https://codecov.io/gh/json-iterator/go/branch/master/graph/badge.svg)](https://codecov.io/gh/json-iterator/go) [![rcard](https://goreportcard.com/badge/github.com/json-iterator/go)](https://goreportcard.com/report/github.com/json-iterator/go) @@ -18,16 +18,16 @@ Source code: https://github.com/json-iterator/go-benchmark/blob/master/src/githu Raw Result (easyjson requires static code generation) -| | ns/op | allocation bytes | allocation times | -| --- | --- | --- | --- | -| std decode | 35510 ns/op | 1960 B/op | 99 allocs/op | -| easyjson decode | 8499 ns/op | 160 B/op | 4 allocs/op | -| jsoniter decode | 5623 ns/op | 160 B/op | 3 allocs/op | -| std encode | 2213 ns/op | 712 B/op | 5 allocs/op | -| easyjson encode | 883 ns/op | 576 B/op | 3 allocs/op | -| jsoniter encode | 837 ns/op | 384 B/op | 4 allocs/op | +| | ns/op | allocation bytes | allocation times | +| --------------- | ----------- | ---------------- | ---------------- | +| std decode | 35510 ns/op | 1960 B/op | 99 allocs/op | +| easyjson decode | 8499 ns/op | 160 B/op | 4 allocs/op | +| jsoniter decode | 5623 ns/op | 160 B/op | 3 allocs/op | +| std encode | 2213 ns/op | 712 B/op | 5 allocs/op | +| easyjson encode | 883 ns/op | 576 B/op | 3 allocs/op | +| jsoniter encode | 837 ns/op | 384 B/op | 4 allocs/op | -Always benchmark with your own workload. +Always benchmark with your own workload. The result depends heavily on the data input. # Usage @@ -41,10 +41,10 @@ import "encoding/json" json.Marshal(&data) ``` -with +with ```go -import "github.com/json-iterator/go" +import jsoniter "github.com/json-iterator/go" var json = jsoniter.ConfigCompatibleWithStandardLibrary json.Marshal(&data) @@ -60,7 +60,7 @@ json.Unmarshal(input, &data) with ```go -import "github.com/json-iterator/go" +import jsoniter "github.com/json-iterator/go" var json = jsoniter.ConfigCompatibleWithStandardLibrary json.Unmarshal(input, &data) @@ -78,10 +78,10 @@ go get github.com/json-iterator/go Contributors -* [thockin](https://github.com/thockin) -* [mattn](https://github.com/mattn) -* [cch123](https://github.com/cch123) -* [Oleg Shaldybin](https://github.com/olegshaldybin) -* [Jason Toffaletti](https://github.com/toffaletti) +- [thockin](https://github.com/thockin) +- [mattn](https://github.com/mattn) +- [cch123](https://github.com/cch123) +- [Oleg Shaldybin](https://github.com/olegshaldybin) +- [Jason Toffaletti](https://github.com/toffaletti) Report issue or pull request, or email taowen@gmail.com, or [![Gitter chat](https://badges.gitter.im/gitterHQ/gitter.png)](https://gitter.im/json-iterator/Lobby) diff --git a/vendor/github.com/json-iterator/go/any_str.go b/vendor/github.com/json-iterator/go/any_str.go index a4b93c78c822..1f12f6612de9 100644 --- a/vendor/github.com/json-iterator/go/any_str.go +++ b/vendor/github.com/json-iterator/go/any_str.go @@ -64,7 +64,6 @@ func (any *stringAny) ToInt64() int64 { flag := 1 startPos := 0 - endPos := 0 if any.val[0] == '+' || any.val[0] == '-' { startPos = 1 } @@ -73,6 +72,7 @@ func (any *stringAny) ToInt64() int64 { flag = -1 } + endPos := startPos for i := startPos; i < len(any.val); i++ { if any.val[i] >= '0' && any.val[i] <= '9' { endPos = i + 1 @@ -98,7 +98,6 @@ func (any *stringAny) ToUint64() uint64 { } startPos := 0 - endPos := 0 if any.val[0] == '-' { return 0 @@ -107,6 +106,7 @@ func (any *stringAny) ToUint64() uint64 { startPos = 1 } + endPos := startPos for i := startPos; i < len(any.val); i++ { if any.val[i] >= '0' && any.val[i] <= '9' { endPos = i + 1 diff --git a/vendor/github.com/json-iterator/go/config.go b/vendor/github.com/json-iterator/go/config.go index 8c58fcba5922..2adcdc3b790e 100644 --- a/vendor/github.com/json-iterator/go/config.go +++ b/vendor/github.com/json-iterator/go/config.go @@ -183,11 +183,11 @@ func (cfg *frozenConfig) validateJsonRawMessage(extension EncoderExtension) { encoder := &funcEncoder{func(ptr unsafe.Pointer, stream *Stream) { rawMessage := *(*json.RawMessage)(ptr) iter := cfg.BorrowIterator([]byte(rawMessage)) + defer cfg.ReturnIterator(iter) iter.Read() - if iter.Error != nil { + if iter.Error != nil && iter.Error != io.EOF { stream.WriteRaw("null") } else { - cfg.ReturnIterator(iter) stream.WriteRaw(string(rawMessage)) } }, func(ptr unsafe.Pointer) bool { diff --git a/vendor/github.com/json-iterator/go/iter.go b/vendor/github.com/json-iterator/go/iter.go index 95ae54fbfe4d..29b31cf78950 100644 --- a/vendor/github.com/json-iterator/go/iter.go +++ b/vendor/github.com/json-iterator/go/iter.go @@ -74,6 +74,7 @@ type Iterator struct { buf []byte head int tail int + depth int captureStartedAt int captured []byte Error error @@ -88,6 +89,7 @@ func NewIterator(cfg API) *Iterator { buf: nil, head: 0, tail: 0, + depth: 0, } } @@ -99,6 +101,7 @@ func Parse(cfg API, reader io.Reader, bufSize int) *Iterator { buf: make([]byte, bufSize), head: 0, tail: 0, + depth: 0, } } @@ -110,6 +113,7 @@ func ParseBytes(cfg API, input []byte) *Iterator { buf: input, head: 0, tail: len(input), + depth: 0, } } @@ -128,6 +132,7 @@ func (iter *Iterator) Reset(reader io.Reader) *Iterator { iter.reader = reader iter.head = 0 iter.tail = 0 + iter.depth = 0 return iter } @@ -137,6 +142,7 @@ func (iter *Iterator) ResetBytes(input []byte) *Iterator { iter.buf = input iter.head = 0 iter.tail = len(input) + iter.depth = 0 return iter } @@ -320,3 +326,24 @@ func (iter *Iterator) Read() interface{} { return nil } } + +// limit maximum depth of nesting, as allowed by https://tools.ietf.org/html/rfc7159#section-9 +const maxDepth = 10000 + +func (iter *Iterator) incrementDepth() (success bool) { + iter.depth++ + if iter.depth <= maxDepth { + return true + } + iter.ReportError("incrementDepth", "exceeded max depth") + return false +} + +func (iter *Iterator) decrementDepth() (success bool) { + iter.depth-- + if iter.depth >= 0 { + return true + } + iter.ReportError("decrementDepth", "unexpected negative nesting") + return false +} diff --git a/vendor/github.com/json-iterator/go/iter_array.go b/vendor/github.com/json-iterator/go/iter_array.go index 6188cb4577ab..204fe0e0922a 100644 --- a/vendor/github.com/json-iterator/go/iter_array.go +++ b/vendor/github.com/json-iterator/go/iter_array.go @@ -28,26 +28,32 @@ func (iter *Iterator) ReadArray() (ret bool) { func (iter *Iterator) ReadArrayCB(callback func(*Iterator) bool) (ret bool) { c := iter.nextToken() if c == '[' { + if !iter.incrementDepth() { + return false + } c = iter.nextToken() if c != ']' { iter.unreadByte() if !callback(iter) { + iter.decrementDepth() return false } c = iter.nextToken() for c == ',' { if !callback(iter) { + iter.decrementDepth() return false } c = iter.nextToken() } if c != ']' { iter.ReportError("ReadArrayCB", "expect ] in the end, but found "+string([]byte{c})) + iter.decrementDepth() return false } - return true + return iter.decrementDepth() } - return true + return iter.decrementDepth() } if c == 'n' { iter.skipThreeBytes('u', 'l', 'l') diff --git a/vendor/github.com/json-iterator/go/iter_object.go b/vendor/github.com/json-iterator/go/iter_object.go index 1c575767130d..58ee89c849e7 100644 --- a/vendor/github.com/json-iterator/go/iter_object.go +++ b/vendor/github.com/json-iterator/go/iter_object.go @@ -112,6 +112,9 @@ func (iter *Iterator) ReadObjectCB(callback func(*Iterator, string) bool) bool { c := iter.nextToken() var field string if c == '{' { + if !iter.incrementDepth() { + return false + } c = iter.nextToken() if c == '"' { iter.unreadByte() @@ -121,6 +124,7 @@ func (iter *Iterator) ReadObjectCB(callback func(*Iterator, string) bool) bool { iter.ReportError("ReadObject", "expect : after object field, but found "+string([]byte{c})) } if !callback(iter, field) { + iter.decrementDepth() return false } c = iter.nextToken() @@ -131,20 +135,23 @@ func (iter *Iterator) ReadObjectCB(callback func(*Iterator, string) bool) bool { iter.ReportError("ReadObject", "expect : after object field, but found "+string([]byte{c})) } if !callback(iter, field) { + iter.decrementDepth() return false } c = iter.nextToken() } if c != '}' { iter.ReportError("ReadObjectCB", `object not ended with }`) + iter.decrementDepth() return false } - return true + return iter.decrementDepth() } if c == '}' { - return true + return iter.decrementDepth() } - iter.ReportError("ReadObjectCB", `expect " after }, but found `+string([]byte{c})) + iter.ReportError("ReadObjectCB", `expect " after {, but found `+string([]byte{c})) + iter.decrementDepth() return false } if c == 'n' { @@ -159,15 +166,20 @@ func (iter *Iterator) ReadObjectCB(callback func(*Iterator, string) bool) bool { func (iter *Iterator) ReadMapCB(callback func(*Iterator, string) bool) bool { c := iter.nextToken() if c == '{' { + if !iter.incrementDepth() { + return false + } c = iter.nextToken() if c == '"' { iter.unreadByte() field := iter.ReadString() if iter.nextToken() != ':' { iter.ReportError("ReadMapCB", "expect : after object field, but found "+string([]byte{c})) + iter.decrementDepth() return false } if !callback(iter, field) { + iter.decrementDepth() return false } c = iter.nextToken() @@ -175,23 +187,27 @@ func (iter *Iterator) ReadMapCB(callback func(*Iterator, string) bool) bool { field = iter.ReadString() if iter.nextToken() != ':' { iter.ReportError("ReadMapCB", "expect : after object field, but found "+string([]byte{c})) + iter.decrementDepth() return false } if !callback(iter, field) { + iter.decrementDepth() return false } c = iter.nextToken() } if c != '}' { iter.ReportError("ReadMapCB", `object not ended with }`) + iter.decrementDepth() return false } - return true + return iter.decrementDepth() } if c == '}' { - return true + return iter.decrementDepth() } - iter.ReportError("ReadMapCB", `expect " after }, but found `+string([]byte{c})) + iter.ReportError("ReadMapCB", `expect " after {, but found `+string([]byte{c})) + iter.decrementDepth() return false } if c == 'n' { diff --git a/vendor/github.com/json-iterator/go/iter_skip_sloppy.go b/vendor/github.com/json-iterator/go/iter_skip_sloppy.go index 8fcdc3b69bdf..9303de41e400 100644 --- a/vendor/github.com/json-iterator/go/iter_skip_sloppy.go +++ b/vendor/github.com/json-iterator/go/iter_skip_sloppy.go @@ -22,6 +22,9 @@ func (iter *Iterator) skipNumber() { func (iter *Iterator) skipArray() { level := 1 + if !iter.incrementDepth() { + return + } for { for i := iter.head; i < iter.tail; i++ { switch iter.buf[i] { @@ -31,8 +34,14 @@ func (iter *Iterator) skipArray() { i = iter.head - 1 // it will be i++ soon case '[': // If open symbol, increase level level++ + if !iter.incrementDepth() { + return + } case ']': // If close symbol, increase level level-- + if !iter.decrementDepth() { + return + } // If we have returned to the original level, we're done if level == 0 { @@ -50,6 +59,10 @@ func (iter *Iterator) skipArray() { func (iter *Iterator) skipObject() { level := 1 + if !iter.incrementDepth() { + return + } + for { for i := iter.head; i < iter.tail; i++ { switch iter.buf[i] { @@ -59,8 +72,14 @@ func (iter *Iterator) skipObject() { i = iter.head - 1 // it will be i++ soon case '{': // If open symbol, increase level level++ + if !iter.incrementDepth() { + return + } case '}': // If close symbol, increase level level-- + if !iter.decrementDepth() { + return + } // If we have returned to the original level, we're done if level == 0 { diff --git a/vendor/github.com/json-iterator/go/reflect.go b/vendor/github.com/json-iterator/go/reflect.go index 4459e203fb85..74974ba74b06 100644 --- a/vendor/github.com/json-iterator/go/reflect.go +++ b/vendor/github.com/json-iterator/go/reflect.go @@ -60,6 +60,7 @@ func (b *ctx) append(prefix string) *ctx { // ReadVal copy the underlying JSON into go interface, same as json.Unmarshal func (iter *Iterator) ReadVal(obj interface{}) { + depth := iter.depth cacheKey := reflect2.RTypeOf(obj) decoder := iter.cfg.getDecoderFromCache(cacheKey) if decoder == nil { @@ -76,6 +77,10 @@ func (iter *Iterator) ReadVal(obj interface{}) { return } decoder.Decode(ptr, iter) + if iter.depth != depth { + iter.ReportError("ReadVal", "unexpected mismatched nesting") + return + } } // WriteVal copy the go interface into underlying JSON, same as json.Marshal diff --git a/vendor/github.com/json-iterator/go/reflect_extension.go b/vendor/github.com/json-iterator/go/reflect_extension.go index 05e8fbf1fedd..74a97bfe5abf 100644 --- a/vendor/github.com/json-iterator/go/reflect_extension.go +++ b/vendor/github.com/json-iterator/go/reflect_extension.go @@ -341,10 +341,10 @@ func describeStruct(ctx *ctx, typ reflect2.Type) *StructDescriptor { if ctx.onlyTaggedField && !hastag && !field.Anonymous() { continue } - tagParts := strings.Split(tag, ",") - if tag == "-" { + if tag == "-" || field.Name() == "_" { continue } + tagParts := strings.Split(tag, ",") if field.Anonymous() && (tag == "" || tagParts[0] == "") { if field.Type().Kind() == reflect.Struct { structDescriptor := describeStruct(ctx, field.Type()) @@ -475,7 +475,7 @@ func calcFieldNames(originalFieldName string, tagProvidedFieldName string, whole fieldNames = []string{tagProvidedFieldName} } // private? - isNotExported := unicode.IsLower(rune(originalFieldName[0])) + isNotExported := unicode.IsLower(rune(originalFieldName[0])) || originalFieldName[0] == '_' if isNotExported { fieldNames = []string{} } diff --git a/vendor/github.com/json-iterator/go/reflect_map.go b/vendor/github.com/json-iterator/go/reflect_map.go index 547b4421e349..582967130135 100644 --- a/vendor/github.com/json-iterator/go/reflect_map.go +++ b/vendor/github.com/json-iterator/go/reflect_map.go @@ -49,6 +49,33 @@ func decoderOfMapKey(ctx *ctx, typ reflect2.Type) ValDecoder { return decoder } } + + ptrType := reflect2.PtrTo(typ) + if ptrType.Implements(unmarshalerType) { + return &referenceDecoder{ + &unmarshalerDecoder{ + valType: ptrType, + }, + } + } + if typ.Implements(unmarshalerType) { + return &unmarshalerDecoder{ + valType: typ, + } + } + if ptrType.Implements(textUnmarshalerType) { + return &referenceDecoder{ + &textUnmarshalerDecoder{ + valType: ptrType, + }, + } + } + if typ.Implements(textUnmarshalerType) { + return &textUnmarshalerDecoder{ + valType: typ, + } + } + switch typ.Kind() { case reflect.String: return decoderOfType(ctx, reflect2.DefaultTypeOfKind(reflect.String)) @@ -63,31 +90,6 @@ func decoderOfMapKey(ctx *ctx, typ reflect2.Type) ValDecoder { typ = reflect2.DefaultTypeOfKind(typ.Kind()) return &numericMapKeyDecoder{decoderOfType(ctx, typ)} default: - ptrType := reflect2.PtrTo(typ) - if ptrType.Implements(unmarshalerType) { - return &referenceDecoder{ - &unmarshalerDecoder{ - valType: ptrType, - }, - } - } - if typ.Implements(unmarshalerType) { - return &unmarshalerDecoder{ - valType: typ, - } - } - if ptrType.Implements(textUnmarshalerType) { - return &referenceDecoder{ - &textUnmarshalerDecoder{ - valType: ptrType, - }, - } - } - if typ.Implements(textUnmarshalerType) { - return &textUnmarshalerDecoder{ - valType: typ, - } - } return &lazyErrorDecoder{err: fmt.Errorf("unsupported map key type: %v", typ)} } } @@ -103,6 +105,19 @@ func encoderOfMapKey(ctx *ctx, typ reflect2.Type) ValEncoder { return encoder } } + + if typ == textMarshalerType { + return &directTextMarshalerEncoder{ + stringEncoder: ctx.EncoderOf(reflect2.TypeOf("")), + } + } + if typ.Implements(textMarshalerType) { + return &textMarshalerEncoder{ + valType: typ, + stringEncoder: ctx.EncoderOf(reflect2.TypeOf("")), + } + } + switch typ.Kind() { case reflect.String: return encoderOfType(ctx, reflect2.DefaultTypeOfKind(reflect.String)) @@ -117,17 +132,6 @@ func encoderOfMapKey(ctx *ctx, typ reflect2.Type) ValEncoder { typ = reflect2.DefaultTypeOfKind(typ.Kind()) return &numericMapKeyEncoder{encoderOfType(ctx, typ)} default: - if typ == textMarshalerType { - return &directTextMarshalerEncoder{ - stringEncoder: ctx.EncoderOf(reflect2.TypeOf("")), - } - } - if typ.Implements(textMarshalerType) { - return &textMarshalerEncoder{ - valType: typ, - stringEncoder: ctx.EncoderOf(reflect2.TypeOf("")), - } - } if typ.Kind() == reflect.Interface { return &dynamicMapKeyEncoder{ctx, typ} } @@ -163,10 +167,6 @@ func (decoder *mapDecoder) Decode(ptr unsafe.Pointer, iter *Iterator) { if c == '}' { return } - if c != '"' { - iter.ReportError("ReadMapCB", `expect " after }, but found `+string([]byte{c})) - return - } iter.unreadByte() key := decoder.keyType.UnsafeNew() decoder.keyDecoder.Decode(key, iter) @@ -249,6 +249,10 @@ type mapEncoder struct { } func (encoder *mapEncoder) Encode(ptr unsafe.Pointer, stream *Stream) { + if *(*unsafe.Pointer)(ptr) == nil { + stream.WriteNil() + return + } stream.WriteObjectStart() iter := encoder.mapType.UnsafeIterate(ptr) for i := 0; iter.HasNext(); i++ { @@ -286,16 +290,17 @@ func (encoder *sortKeysMapEncoder) Encode(ptr unsafe.Pointer, stream *Stream) { stream.WriteObjectStart() mapIter := encoder.mapType.UnsafeIterate(ptr) subStream := stream.cfg.BorrowStream(nil) + subStream.Attachment = stream.Attachment subIter := stream.cfg.BorrowIterator(nil) keyValues := encodedKeyValues{} for mapIter.HasNext() { - subStream.buf = make([]byte, 0, 64) key, elem := mapIter.UnsafeNext() + subStreamIndex := subStream.Buffered() encoder.keyEncoder.Encode(key, subStream) if subStream.Error != nil && subStream.Error != io.EOF && stream.Error == nil { stream.Error = subStream.Error } - encodedKey := subStream.Buffer() + encodedKey := subStream.Buffer()[subStreamIndex:] subIter.ResetBytes(encodedKey) decodedKey := subIter.ReadString() if stream.indention > 0 { @@ -306,7 +311,7 @@ func (encoder *sortKeysMapEncoder) Encode(ptr unsafe.Pointer, stream *Stream) { encoder.elemEncoder.Encode(elem, subStream) keyValues = append(keyValues, encodedKV{ key: decodedKey, - keyValue: subStream.Buffer(), + keyValue: subStream.Buffer()[subStreamIndex:], }) } sort.Sort(keyValues) @@ -316,6 +321,9 @@ func (encoder *sortKeysMapEncoder) Encode(ptr unsafe.Pointer, stream *Stream) { } stream.Write(keyValue.keyValue) } + if subStream.Error != nil && stream.Error == nil { + stream.Error = subStream.Error + } stream.WriteObjectEnd() stream.cfg.ReturnStream(subStream) stream.cfg.ReturnIterator(subIter) diff --git a/vendor/github.com/json-iterator/go/reflect_marshaler.go b/vendor/github.com/json-iterator/go/reflect_marshaler.go index fea50719de9e..3e21f3756717 100644 --- a/vendor/github.com/json-iterator/go/reflect_marshaler.go +++ b/vendor/github.com/json-iterator/go/reflect_marshaler.go @@ -3,8 +3,9 @@ package jsoniter import ( "encoding" "encoding/json" - "github.com/modern-go/reflect2" "unsafe" + + "github.com/modern-go/reflect2" ) var marshalerType = reflect2.TypeOfPtr((*json.Marshaler)(nil)).Elem() @@ -93,10 +94,17 @@ func (encoder *marshalerEncoder) Encode(ptr unsafe.Pointer, stream *Stream) { stream.WriteNil() return } - bytes, err := json.Marshal(obj) + marshaler := obj.(json.Marshaler) + bytes, err := marshaler.MarshalJSON() if err != nil { stream.Error = err } else { + // html escape was already done by jsoniter + // but the extra '\n' should be trimed + l := len(bytes) + if l > 0 && bytes[l-1] == '\n' { + bytes = bytes[:l-1] + } stream.Write(bytes) } } diff --git a/vendor/github.com/json-iterator/go/reflect_optional.go b/vendor/github.com/json-iterator/go/reflect_optional.go index 43ec71d6dadf..fa71f4748912 100644 --- a/vendor/github.com/json-iterator/go/reflect_optional.go +++ b/vendor/github.com/json-iterator/go/reflect_optional.go @@ -2,7 +2,6 @@ package jsoniter import ( "github.com/modern-go/reflect2" - "reflect" "unsafe" ) @@ -10,9 +9,6 @@ func decoderOfOptional(ctx *ctx, typ reflect2.Type) ValDecoder { ptrType := typ.(*reflect2.UnsafePtrType) elemType := ptrType.Elem() decoder := decoderOfType(ctx, elemType) - if ctx.prefix == "" && elemType.Kind() == reflect.Ptr { - return &dereferenceDecoder{elemType, decoder} - } return &OptionalDecoder{elemType, decoder} } diff --git a/vendor/github.com/json-iterator/go/reflect_struct_decoder.go b/vendor/github.com/json-iterator/go/reflect_struct_decoder.go index 932641ac46ba..d7eb0eb5caa8 100644 --- a/vendor/github.com/json-iterator/go/reflect_struct_decoder.go +++ b/vendor/github.com/json-iterator/go/reflect_struct_decoder.go @@ -500,16 +500,20 @@ func (decoder *generalStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterator) if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } var c byte for c = ','; c == ','; c = iter.nextToken() { decoder.decodeOneField(ptr, iter) } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } if c != '}' { iter.ReportError("struct Decode", `expect }, but found `+string([]byte{c})) } + iter.decrementDepth() } func (decoder *generalStructDecoder) decodeOneField(ptr unsafe.Pointer, iter *Iterator) { @@ -571,6 +575,9 @@ func (decoder *oneFieldStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterator) if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { if iter.readFieldHash() == decoder.fieldHash { decoder.fieldDecoder.Decode(ptr, iter) @@ -581,9 +588,10 @@ func (decoder *oneFieldStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterator) break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type twoFieldsStructDecoder struct { @@ -598,6 +606,9 @@ func (decoder *twoFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterator if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { switch iter.readFieldHash() { case decoder.fieldHash1: @@ -611,9 +622,10 @@ func (decoder *twoFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterator break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type threeFieldsStructDecoder struct { @@ -630,6 +642,9 @@ func (decoder *threeFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterat if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { switch iter.readFieldHash() { case decoder.fieldHash1: @@ -645,9 +660,10 @@ func (decoder *threeFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterat break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type fourFieldsStructDecoder struct { @@ -666,6 +682,9 @@ func (decoder *fourFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterato if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { switch iter.readFieldHash() { case decoder.fieldHash1: @@ -683,9 +702,10 @@ func (decoder *fourFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterato break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type fiveFieldsStructDecoder struct { @@ -706,6 +726,9 @@ func (decoder *fiveFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterato if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { switch iter.readFieldHash() { case decoder.fieldHash1: @@ -725,9 +748,10 @@ func (decoder *fiveFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterato break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type sixFieldsStructDecoder struct { @@ -750,6 +774,9 @@ func (decoder *sixFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterator if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { switch iter.readFieldHash() { case decoder.fieldHash1: @@ -771,9 +798,10 @@ func (decoder *sixFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterator break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type sevenFieldsStructDecoder struct { @@ -798,6 +826,9 @@ func (decoder *sevenFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterat if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { switch iter.readFieldHash() { case decoder.fieldHash1: @@ -821,9 +852,10 @@ func (decoder *sevenFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterat break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type eightFieldsStructDecoder struct { @@ -850,6 +882,9 @@ func (decoder *eightFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterat if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { switch iter.readFieldHash() { case decoder.fieldHash1: @@ -875,9 +910,10 @@ func (decoder *eightFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterat break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type nineFieldsStructDecoder struct { @@ -906,6 +942,9 @@ func (decoder *nineFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterato if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { switch iter.readFieldHash() { case decoder.fieldHash1: @@ -933,9 +972,10 @@ func (decoder *nineFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterato break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type tenFieldsStructDecoder struct { @@ -966,6 +1006,9 @@ func (decoder *tenFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterator if !iter.readObjectStart() { return } + if !iter.incrementDepth() { + return + } for { switch iter.readFieldHash() { case decoder.fieldHash1: @@ -995,9 +1038,10 @@ func (decoder *tenFieldsStructDecoder) Decode(ptr unsafe.Pointer, iter *Iterator break } } - if iter.Error != nil && iter.Error != io.EOF { + if iter.Error != nil && iter.Error != io.EOF && len(decoder.typ.Type1().Name()) != 0 { iter.Error = fmt.Errorf("%v.%s", decoder.typ, iter.Error.Error()) } + iter.decrementDepth() } type structFieldDecoder struct { diff --git a/vendor/github.com/json-iterator/go/reflect_struct_encoder.go b/vendor/github.com/json-iterator/go/reflect_struct_encoder.go index d0759cf6418c..152e3ef5a93c 100644 --- a/vendor/github.com/json-iterator/go/reflect_struct_encoder.go +++ b/vendor/github.com/json-iterator/go/reflect_struct_encoder.go @@ -200,6 +200,7 @@ type stringModeStringEncoder struct { func (encoder *stringModeStringEncoder) Encode(ptr unsafe.Pointer, stream *Stream) { tempStream := encoder.cfg.BorrowStream(nil) + tempStream.Attachment = stream.Attachment defer encoder.cfg.ReturnStream(tempStream) encoder.elemEncoder.Encode(ptr, tempStream) stream.WriteString(string(tempStream.Buffer())) diff --git a/vendor/github.com/json-iterator/go/stream.go b/vendor/github.com/json-iterator/go/stream.go index 17662fdedcb5..23d8a3ad6b12 100644 --- a/vendor/github.com/json-iterator/go/stream.go +++ b/vendor/github.com/json-iterator/go/stream.go @@ -103,14 +103,14 @@ func (stream *Stream) Flush() error { if stream.Error != nil { return stream.Error } - n, err := stream.out.Write(stream.buf) + _, err := stream.out.Write(stream.buf) if err != nil { if stream.Error == nil { stream.Error = err } return err } - stream.buf = stream.buf[n:] + stream.buf = stream.buf[:0] return nil } @@ -177,7 +177,6 @@ func (stream *Stream) WriteEmptyObject() { func (stream *Stream) WriteMore() { stream.writeByte(',') stream.writeIndention(0) - stream.Flush() } // WriteArrayStart write [ with possible indention diff --git a/vendor/go.etcd.io/etcd/c/v3 b/vendor/go.etcd.io/etcd/c/v3 new file mode 120000 index 000000000000..be213a57cdc1 --- /dev/null +++ b/vendor/go.etcd.io/etcd/c/v3 @@ -0,0 +1 @@ +../../../../c \ No newline at end of file diff --git a/vendor/modules.txt b/vendor/modules.txt index e58f81a57186..4f874add2448 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -9,7 +9,7 @@ github.com/cockroachdb/datadriven # github.com/coreos/go-semver v0.2.0 ## explicit github.com/coreos/go-semver/semver -# github.com/coreos/go-systemd/v22 v22.0.0 +# github.com/coreos/go-systemd/v22 v22.1.0 ## explicit github.com/coreos/go-systemd/v22/daemon github.com/coreos/go-systemd/v22/journal @@ -27,7 +27,7 @@ github.com/dustin/go-humanize github.com/etcd-io/gofail/runtime # github.com/fatih/color v1.7.0 ## explicit -# github.com/gogo/protobuf v1.2.1 +# github.com/gogo/protobuf v1.2.1 => github.com/gogo/protobuf v1.2.1 ## explicit github.com/gogo/protobuf/gogoproto github.com/gogo/protobuf/proto @@ -53,7 +53,6 @@ github.com/golang/protobuf/ptypes/wrappers ## explicit github.com/google/btree # github.com/google/uuid v1.0.0 -## explicit github.com/google/uuid # github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c ## explicit @@ -75,8 +74,7 @@ github.com/inconshreveable/mousetrap # github.com/jonboulle/clockwork v0.1.0 ## explicit github.com/jonboulle/clockwork -# github.com/json-iterator/go v1.1.7 -## explicit +# github.com/json-iterator/go v1.1.10 github.com/json-iterator/go # github.com/konsorten/go-windows-terminal-sequences v1.0.1 github.com/konsorten/go-windows-terminal-sequences @@ -92,7 +90,6 @@ github.com/matttproud/golang_protobuf_extensions/pbutil # github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd github.com/modern-go/concurrent # github.com/modern-go/reflect2 v1.0.1 -## explicit github.com/modern-go/reflect2 # github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5 ## explicit @@ -136,6 +133,37 @@ github.com/xiang90/probing # go.etcd.io/bbolt v1.3.5 ## explicit go.etcd.io/bbolt +# go.etcd.io/etcd/c/v3 v3.0.0-00010101000000-000000000000 => ./c +## explicit +go.etcd.io/etcd/c/v3/auth/authpb +go.etcd.io/etcd/c/v3/client +go.etcd.io/etcd/c/v3/clientv3 +go.etcd.io/etcd/c/v3/clientv3/balancer +go.etcd.io/etcd/c/v3/clientv3/balancer/connectivity +go.etcd.io/etcd/c/v3/clientv3/balancer/picker +go.etcd.io/etcd/c/v3/clientv3/balancer/resolver/endpoint +go.etcd.io/etcd/c/v3/clientv3/concurrency +go.etcd.io/etcd/c/v3/clientv3/credentials +go.etcd.io/etcd/c/v3/clientv3/leasing +go.etcd.io/etcd/c/v3/clientv3/mirror +go.etcd.io/etcd/c/v3/clientv3/namespace +go.etcd.io/etcd/c/v3/clientv3/naming +go.etcd.io/etcd/c/v3/clientv3/ordering +go.etcd.io/etcd/c/v3/etcdserver/api/membership/membershippb +go.etcd.io/etcd/c/v3/etcdserver/api/v3rpc/rpctypes +go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb +go.etcd.io/etcd/c/v3/etcdserver/etcdserverpb/gw +go.etcd.io/etcd/c/v3/mvcc/mvccpb +go.etcd.io/etcd/c/v3/pkg/fileutil +go.etcd.io/etcd/c/v3/pkg/logutil +go.etcd.io/etcd/c/v3/pkg/pathutil +go.etcd.io/etcd/c/v3/pkg/srv +go.etcd.io/etcd/c/v3/pkg/systemd +go.etcd.io/etcd/c/v3/pkg/testutil +go.etcd.io/etcd/c/v3/pkg/tlsutil +go.etcd.io/etcd/c/v3/pkg/transport +go.etcd.io/etcd/c/v3/pkg/types +go.etcd.io/etcd/c/v3/version # go.uber.org/atomic v1.6.0 go.uber.org/atomic # go.uber.org/multierr v1.5.0 @@ -227,3 +255,6 @@ gopkg.in/yaml.v2 # sigs.k8s.io/yaml v1.1.0 ## explicit sigs.k8s.io/yaml +# github.com/gogo/protobuf => github.com/gogo/protobuf v1.2.1 +# go.etcd.io/etcd/c/v3 => ./c +# go.etcd.io/etcd/integration/v3 => ./SHOULD_NOT_BE_DEPENDENCY diff --git a/wal/file_pipeline.go b/wal/file_pipeline.go index 18eb80ea0c0e..b61e983e4c91 100644 --- a/wal/file_pipeline.go +++ b/wal/file_pipeline.go @@ -19,7 +19,7 @@ import ( "os" "path/filepath" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.uber.org/zap" ) diff --git a/wal/repair.go b/wal/repair.go index e15a68dba63b..2e18fc26d3ba 100644 --- a/wal/repair.go +++ b/wal/repair.go @@ -20,7 +20,7 @@ import ( "path/filepath" "time" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/wal/walpb" "go.uber.org/zap" ) diff --git a/wal/util.go b/wal/util.go index e48fe84340ba..4b2b41b22e99 100644 --- a/wal/util.go +++ b/wal/util.go @@ -19,7 +19,7 @@ import ( "fmt" "strings" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.uber.org/zap" ) diff --git a/wal/wal.go b/wal/wal.go index ac04ef3c24b0..62bea979b798 100644 --- a/wal/wal.go +++ b/wal/wal.go @@ -26,7 +26,7 @@ import ( "sync" "time" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/pbutil" "go.etcd.io/etcd/v3/raft" "go.etcd.io/etcd/v3/raft/raftpb" diff --git a/wal/wal_test.go b/wal/wal_test.go index f457dbf3c432..193417d7b718 100644 --- a/wal/wal_test.go +++ b/wal/wal_test.go @@ -27,7 +27,7 @@ import ( "regexp" "testing" - "go.etcd.io/etcd/v3/pkg/fileutil" + "go.etcd.io/etcd/c/v3/pkg/fileutil" "go.etcd.io/etcd/v3/pkg/pbutil" "go.etcd.io/etcd/v3/raft/raftpb" "go.etcd.io/etcd/v3/wal/walpb"