google-cloud v0.3.0 Release Notes

Release Date: 2020-11-11 // over 3 years ago
    • storage:

      • AdminClient replaced by methods on Client. Replace go adminClient.CreateBucket(ctx, bucketName, attrs) with go client.Bucket(bucketName).Create(ctx, projectID, attrs)
      • BucketHandle.List replaced by BucketHandle.Objects. Replace go for query != nil { objs, err := bucket.List(d.ctx, query) if err != nil { ... } query = objs.Next for _, obj := range objs.Results { fmt.Println(obj) } } with go iter := bucket.Objects(d.ctx, query) for { obj, err := iter.Next() if err == iterator.Done { break } if err != nil { ... } fmt.Println(obj) } (The iterator package is at google.golang.org/api/iterator.)

      Replace Query.Cursor with ObjectIterator.PageInfo().Token.

      Replace Query.MaxResults with ObjectIterator.PageInfo().MaxSize.

      • ObjectHandle.CopyTo replaced by ObjectHandle.CopierFrom. Replace go attrs, err := src.CopyTo(ctx, dst, nil) with go attrs, err := dst.CopierFrom(src).Run(ctx)

      Replace

        attrs, err := src.CopyTo(ctx, dst, &storage.ObjectAttrs{ContextType: "text/html"})
      

      with

        c := dst.CopierFrom(src)
        c.ContextType = "text/html"
        attrs, err := c.Run(ctx)
      
      • ObjectHandle.ComposeFrom replaced by ObjectHandle.ComposerFrom. Replace go attrs, err := dst.ComposeFrom(ctx, []*storage.ObjectHandle{src1, src2}, nil) with go attrs, err := dst.ComposerFrom(src1, src2).Run(ctx)
      • ObjectHandle.Update's ObjectAttrs argument replaced by ObjectAttrsToUpdate. Replace go attrs, err := obj.Update(ctx, &storage.ObjectAttrs{ContextType: "text/html"}) with go attrs, err := obj.Update(ctx, storage.ObjectAttrsToUpdate{ContextType: "text/html"})
      • ObjectHandle.WithConditions replaced by ObjectHandle.If. Replace go obj.WithConditions(storage.Generation(gen), storage.IfMetaGenerationMatch(mgen)) with go obj.Generation(gen).If(storage.Conditions{MetagenerationMatch: mgen})

      Replace

        obj.WithConditions(storage.IfGenerationMatch(0))
      

      with

        obj.If(storage.Conditions{DoesNotExist: true})
      
      • storage.Done replaced by iterator.Done (from package google.golang.org/api/iterator).
    • 📦 Package preview/logging deleted. Use logging instead.