Merge pull request #766 from mvdan/patches

Unused params, unused code, make Go tip's vet happy
diff --git a/plumbing/cache/queue.go b/plumbing/cache/queue.go
deleted file mode 100644
index 85413e0..0000000
--- a/plumbing/cache/queue.go
+++ /dev/null
@@ -1,46 +0,0 @@
-package cache
-
-import "gopkg.in/src-d/go-git.v4/plumbing"
-
-// queue is a basic FIFO queue based on a circular list that resize as needed.
-type queue struct {
-	elements []plumbing.Hash
-	size     int
-	head     int
-	tail     int
-	count    int
-}
-
-// newQueue returns a queue with the specified initial size
-func newQueue(size int) *queue {
-	return &queue{
-		elements: make([]plumbing.Hash, size),
-		size:     size,
-	}
-}
-
-// Push adds a node to the queue.
-func (q *queue) Push(h plumbing.Hash) {
-	if q.head == q.tail && q.count > 0 {
-		elements := make([]plumbing.Hash, len(q.elements)+q.size)
-		copy(elements, q.elements[q.head:])
-		copy(elements[len(q.elements)-q.head:], q.elements[:q.head])
-		q.head = 0
-		q.tail = len(q.elements)
-		q.elements = elements
-	}
-	q.elements[q.tail] = h
-	q.tail = (q.tail + 1) % len(q.elements)
-	q.count++
-}
-
-// Pop removes and returns a Hash from the queue in first to last order.
-func (q *queue) Pop() plumbing.Hash {
-	if q.count == 0 {
-		return plumbing.ZeroHash
-	}
-	node := q.elements[q.head]
-	q.head = (q.head + 1) % len(q.elements)
-	q.count--
-	return node
-}
diff --git a/plumbing/storer/object.go b/plumbing/storer/object.go
index f1d19ef..92aa629 100644
--- a/plumbing/storer/object.go
+++ b/plumbing/storer/object.go
@@ -174,7 +174,6 @@
 // no longer needed.
 type EncodedObjectSliceIter struct {
 	series []plumbing.EncodedObject
-	pos    int
 }
 
 // NewEncodedObjectSliceIter returns an object iterator for the given slice of
@@ -218,7 +217,6 @@
 // longer needed.
 type MultiEncodedObjectIter struct {
 	iters []EncodedObjectIter
-	pos   int
 }
 
 // NewMultiEncodedObjectIter returns an object iterator for the given slice of
diff --git a/plumbing/transport/server/server.go b/plumbing/transport/server/server.go
index 2357bd6..20bd12e 100644
--- a/plumbing/transport/server/server.go
+++ b/plumbing/transport/server/server.go
@@ -298,17 +298,6 @@
 	}
 }
 
-func (s *rpSession) failAtomicUpdate() (*packp.ReportStatus, error) {
-	rs := s.reportStatus()
-	for _, cs := range rs.CommandStatuses {
-		if cs.Error() == nil {
-			cs.Status = "atomic updated"
-		}
-	}
-
-	return rs, s.firstErr
-}
-
 func (s *rpSession) writePackfile(r io.ReadCloser) error {
 	if r == nil {
 		return nil
diff --git a/plumbing/transport/test/receive_pack.go b/plumbing/transport/test/receive_pack.go
index 0f3352c..a68329e 100644
--- a/plumbing/transport/test/receive_pack.go
+++ b/plumbing/transport/test/receive_pack.go
@@ -50,7 +50,7 @@
 	c.Assert(err, IsNil)
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"master", plumbing.ZeroHash, plumbing.NewHash("6ecf0ef2c2dffb796033e5a02219af86ec6584e5")},
+		{Name: "master", Old: plumbing.ZeroHash, New: plumbing.NewHash("6ecf0ef2c2dffb796033e5a02219af86ec6584e5")},
 	}
 
 	writer, err := r.ReceivePack(context.Background(), req)
@@ -99,7 +99,7 @@
 	fixture := fixtures.Basic().ByTag("packfile").One()
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"refs/heads/master", plumbing.ZeroHash, fixture.Head},
+		{Name: "refs/heads/master", Old: plumbing.ZeroHash, New: fixture.Head},
 	}
 	s.receivePack(c, endpoint, req, fixture, full)
 	s.checkRemoteHead(c, endpoint, fixture.Head)
@@ -110,7 +110,7 @@
 	req := packp.NewReferenceUpdateRequest()
 	req.Packfile = fixture.Packfile()
 	req.Commands = []*packp.Command{
-		{"refs/heads/master", plumbing.ZeroHash, fixture.Head},
+		{Name: "refs/heads/master", Old: plumbing.ZeroHash, New: fixture.Head},
 	}
 
 	r, err := s.Client.NewReceivePackSession(s.EmptyEndpoint, s.EmptyAuth)
@@ -135,7 +135,7 @@
 	fixture := fixtures.Basic().ByTag("packfile").One()
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"refs/heads/master", plumbing.ZeroHash, fixture.Head},
+		{Name: "refs/heads/master", Old: plumbing.ZeroHash, New: fixture.Head},
 	}
 	s.receivePack(c, endpoint, req, fixture, full)
 	s.checkRemoteHead(c, endpoint, fixture.Head)
@@ -147,7 +147,7 @@
 	fixture := fixtures.Basic().ByTag("packfile").One()
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"refs/heads/master", plumbing.ZeroHash, fixture.Head},
+		{Name: "refs/heads/master", Old: plumbing.ZeroHash, New: fixture.Head},
 	}
 	req.Capabilities.Set(capability.ReportStatus)
 	s.receivePack(c, endpoint, req, fixture, full)
@@ -160,7 +160,7 @@
 	fixture := fixtures.Basic().ByTag("packfile").One()
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"refs/heads/master", fixture.Head, fixture.Head},
+		{Name: "refs/heads/master", Old: fixture.Head, New: fixture.Head},
 	}
 	s.receivePack(c, endpoint, req, fixture, full)
 	s.checkRemoteHead(c, endpoint, fixture.Head)
@@ -172,7 +172,7 @@
 	fixture := fixtures.Basic().ByTag("packfile").One()
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"refs/heads/master", fixture.Head, fixture.Head},
+		{Name: "refs/heads/master", Old: fixture.Head, New: fixture.Head},
 	}
 	s.receivePack(c, endpoint, req, fixture, full)
 	s.checkRemoteHead(c, endpoint, fixture.Head)
@@ -184,7 +184,7 @@
 	fixture := fixtures.Basic().ByTag("packfile").One()
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"refs/heads/master", fixture.Head, fixture.Head},
+		{Name: "refs/heads/master", Old: fixture.Head, New: fixture.Head},
 	}
 	req.Capabilities.Set(capability.ReportStatus)
 
@@ -198,7 +198,7 @@
 	fixture := fixtures.Basic().ByTag("packfile").One()
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"refs/heads/master", plumbing.ZeroHash, fixture.Head},
+		{Name: "refs/heads/master", Old: plumbing.ZeroHash, New: fixture.Head},
 	}
 	req.Capabilities.Set(capability.ReportStatus)
 
@@ -306,7 +306,7 @@
 
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"refs/heads/newbranch", plumbing.ZeroHash, fixture.Head},
+		{Name: "refs/heads/newbranch", Old: plumbing.ZeroHash, New: fixture.Head},
 	}
 	if ar.Capabilities.Supports(capability.ReportStatus) {
 		req.Capabilities.Set(capability.ReportStatus)
@@ -329,7 +329,7 @@
 
 	req := packp.NewReferenceUpdateRequest()
 	req.Commands = []*packp.Command{
-		{"refs/heads/newbranch", fixture.Head, plumbing.ZeroHash},
+		{Name: "refs/heads/newbranch", Old: fixture.Head, New: plumbing.ZeroHash},
 	}
 	if ar.Capabilities.Supports(capability.ReportStatus) {
 		req.Capabilities.Set(capability.ReportStatus)
diff --git a/remote.go b/remote.go
index 8828e3f..8db645c 100644
--- a/remote.go
+++ b/remote.go
@@ -130,10 +130,7 @@
 		return NoErrAlreadyUpToDate
 	}
 
-	objects, err := objectsToPush(req.Commands)
-	if err != nil {
-		return err
-	}
+	objects := objectsToPush(req.Commands)
 
 	haves, err := referencesToHashes(remoteRefs)
 	if err != nil {
@@ -907,7 +904,7 @@
 	return resultRefs, nil
 }
 
-func objectsToPush(commands []*packp.Command) ([]plumbing.Hash, error) {
+func objectsToPush(commands []*packp.Command) []plumbing.Hash {
 	var objects []plumbing.Hash
 	for _, cmd := range commands {
 		if cmd.New == plumbing.ZeroHash {
@@ -916,8 +913,7 @@
 
 		objects = append(objects, cmd.New)
 	}
-
-	return objects, nil
+	return objects
 }
 
 func referencesToHashes(refs storer.ReferenceStorer) ([]plumbing.Hash, error) {
diff --git a/storage/filesystem/internal/dotgit/dotgit.go b/storage/filesystem/internal/dotgit/dotgit.go
index fac7aec..027ef83 100644
--- a/storage/filesystem/internal/dotgit/dotgit.go
+++ b/storage/filesystem/internal/dotgit/dotgit.go
@@ -798,5 +798,3 @@
 func isHexAlpha(b byte) bool {
 	return b >= 'a' && b <= 'f' || b >= 'A' && b <= 'F'
 }
-
-type refCache map[plumbing.ReferenceName]*plumbing.Reference
diff --git a/worktree.go b/worktree.go
index a23397e..394dce4 100644
--- a/worktree.go
+++ b/worktree.go
@@ -607,10 +607,6 @@
 	return c.Tree()
 }
 
-func (w *Worktree) initializeIndex() error {
-	return w.r.Storer.SetIndex(&index.Index{Version: 2})
-}
-
 var fillSystemInfo func(e *index.Entry, sys interface{})
 
 const gitmodulesFile = ".gitmodules"