[ARVADOS] updated: 2.1.0-436-g8f42bb4d4

Git user git at public.arvados.org
Thu Feb 11 22:20:38 UTC 2021


Summary of changes:
 sdk/go/arvados/api.go   | 1 +
 sdk/go/arvados/group.go | 9 +++++----
 2 files changed, 6 insertions(+), 4 deletions(-)

  discards  41f823930ac7bfd693f5002e6bda4960959e7465 (commit)
       via  8f42bb4d4cb3e4beb60cd15f2fc5aeb22f08dbbd (commit)

This update added new revisions after undoing existing revisions.  That is
to say, the old revision is not a strict subset of the new revision.  This
situation occurs when you --force push a change and generate a repository
containing something like this:

 * -- * -- B -- O -- O -- O (41f823930ac7bfd693f5002e6bda4960959e7465)
            \
             N -- N -- N (8f42bb4d4cb3e4beb60cd15f2fc5aeb22f08dbbd)

When this happens we assume that you've already had alert emails for all
of the O revisions, and so we here report only the revisions in the N
branch from the common base, B.

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 8f42bb4d4cb3e4beb60cd15f2fc5aeb22f08dbbd
Author: Ward Vandewege <ward at curii.com>
Date:   Thu Feb 11 11:34:35 2021 -0500

    17119: fix options and response type of the groups/shared and
           groups/content endpoints.
    
    Arvados-DCO-1.1-Signed-off-by: Ward Vandewege <ward at curii.com>

diff --git a/lib/controller/federation/conn.go b/lib/controller/federation/conn.go
index 31faa04b8..63a05eb27 100644
--- a/lib/controller/federation/conn.go
+++ b/lib/controller/federation/conn.go
@@ -422,7 +422,7 @@ func (conn *Conn) GroupContents(ctx context.Context, options arvados.ContentsOpt
 	return conn.chooseBackend(options.UUID).GroupContents(ctx, options)
 }
 
-func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.ObjectList, error) {
+func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.SharedGroupList, error) {
 	return conn.chooseBackend(options.UUID).GroupShared(ctx, options)
 }
 
@@ -464,6 +464,7 @@ var userAttrsCachedFromLoginCluster = map[string]bool{
 	"modified_at": true,
 	"prefs":       true,
 	"username":    true,
+	"kind":        true,
 
 	"etag":                    false,
 	"full_name":               false,
diff --git a/lib/controller/router/response.go b/lib/controller/router/response.go
index d554ab930..656e73170 100644
--- a/lib/controller/router/response.go
+++ b/lib/controller/router/response.go
@@ -71,7 +71,9 @@ func (rtr *router) sendResponse(w http.ResponseWriter, req *http.Request, resp i
 	}
 
 	respKind := kind(resp)
-	if respKind != "" {
+	if respKind == "arvados#sharedGroupList" {
+		tmp["kind"] = "arvados#groupList"
+	} else if respKind != "" {
 		tmp["kind"] = respKind
 	}
 	defaultItemKind := ""
diff --git a/lib/controller/rpc/conn.go b/lib/controller/rpc/conn.go
index 36411adfa..fc2ca3c5a 100644
--- a/lib/controller/rpc/conn.go
+++ b/lib/controller/rpc/conn.go
@@ -451,9 +451,9 @@ func (conn *Conn) GroupContents(ctx context.Context, options arvados.ContentsOpt
 	return resp, err
 }
 
-func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.ObjectList, error) {
+func (conn *Conn) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.SharedGroupList, error) {
 	ep := arvados.EndpointGroupShared
-	var resp arvados.ObjectList
+	var resp arvados.SharedGroupList
 	err := conn.requestAndDecode(ctx, &resp, ep, nil, options)
 	return resp, err
 }
diff --git a/sdk/go/arvados/api.go b/sdk/go/arvados/api.go
index d17f8735b..9aaa3205b 100644
--- a/sdk/go/arvados/api.go
+++ b/sdk/go/arvados/api.go
@@ -140,6 +140,7 @@ type ContentsOptions struct {
 	Limit              int64    `json:"limit"`
 	Offset             int64    `json:"offset"`
 	Order              []string `json:"order"`
+	Include            string   `json:"include"`
 	Recursive          bool     `json:"recursive"`
 	ExcludeHomeProject bool     `json:"exclude_home_project"`
 }
@@ -239,7 +240,7 @@ type API interface {
 	GroupGet(ctx context.Context, options GetOptions) (Group, error)
 	GroupList(ctx context.Context, options ListOptions) (GroupList, error)
 	GroupContents(ctx context.Context, options ContentsOptions) (ObjectList, error)
-	GroupShared(ctx context.Context, options SharedOptions) (ObjectList, error)
+	GroupShared(ctx context.Context, options SharedOptions) (SharedGroupList, error)
 	GroupDelete(ctx context.Context, options DeleteOptions) (Group, error)
 	GroupUntrash(ctx context.Context, options UntrashOptions) (Group, error)
 	SpecimenCreate(ctx context.Context, options CreateOptions) (Specimen, error)
diff --git a/sdk/go/arvados/group.go b/sdk/go/arvados/group.go
index 538098815..b46b596f4 100644
--- a/sdk/go/arvados/group.go
+++ b/sdk/go/arvados/group.go
@@ -16,6 +16,7 @@ type Group struct {
 	GroupClass           string                 `json:"group_class"`
 	Etag                 string                 `json:"etag"`
 	Href                 string                 `json:"href"`
+	Kind                 string                 `json:"kind"`
 	TrashAt              *time.Time             `json:"trash_at"`
 	CreatedAt            time.Time              `json:"created_at"`
 	ModifiedAt           time.Time              `json:"modified_at"`
@@ -36,8 +37,17 @@ type GroupList struct {
 	Limit          int     `json:"limit"`
 }
 
+// SharedGroupList is an arvados#groupList resource.
+type SharedGroupList struct {
+	Included []interface{} `json:"included"`
+	Items    []Group       `json:"items"`
+	Offset   int           `json:"offset"`
+	Limit    int           `json:"limit"`
+}
+
 // ObjectList is an arvados#objectList resource.
 type ObjectList struct {
+	Included       []interface{} `json:"included"`
 	Items          []interface{} `json:"items"`
 	ItemsAvailable int           `json:"items_available"`
 	Offset         int           `json:"offset"`
diff --git a/sdk/go/arvados/user.go b/sdk/go/arvados/user.go
index 68960144a..7693c8442 100644
--- a/sdk/go/arvados/user.go
+++ b/sdk/go/arvados/user.go
@@ -16,6 +16,7 @@ type User struct {
 	Email                string                 `json:"email"`
 	FullName             string                 `json:"full_name"`
 	FirstName            string                 `json:"first_name"`
+	Kind                 string                 `json:"kind"`
 	LastName             string                 `json:"last_name"`
 	IdentityURL          string                 `json:"identity_url"`
 	IsInvited            bool                   `json:"is_invited"`
diff --git a/sdk/go/arvadostest/api.go b/sdk/go/arvadostest/api.go
index f4e725f7e..781ede1d5 100644
--- a/sdk/go/arvadostest/api.go
+++ b/sdk/go/arvadostest/api.go
@@ -149,9 +149,9 @@ func (as *APIStub) GroupContents(ctx context.Context, options arvados.ContentsOp
 	as.appendCall(ctx, as.GroupContents, options)
 	return arvados.ObjectList{}, as.Error
 }
-func (as *APIStub) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.ObjectList, error) {
+func (as *APIStub) GroupShared(ctx context.Context, options arvados.SharedOptions) (arvados.SharedGroupList, error) {
 	as.appendCall(ctx, as.GroupShared, options)
-	return arvados.ObjectList{}, as.Error
+	return arvados.SharedGroupList{}, as.Error
 }
 func (as *APIStub) GroupDelete(ctx context.Context, options arvados.DeleteOptions) (arvados.Group, error) {
 	as.appendCall(ctx, as.GroupDelete, options)

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list