diff --git a/composite_test.go b/composite_test.go
index 2663574..a8af48f 100644
--- a/composite_test.go
+++ b/composite_test.go
@@ -23,9 +23,9 @@
 
 func CleanupTempDirs(t *testing.T) {
 	osfs := NewOsFs()
-	type ev struct{
+	type ev struct {
 		path string
-		e error
+		e    error
 	}
 
 	errs := []ev{}
@@ -33,7 +33,7 @@
 	for _, x := range tempDirs {
 		err := osfs.RemoveAll(x)
 		if err != nil {
-			errs = append(errs, ev{path:x,e: err})
+			errs = append(errs, ev{path: x, e: err})
 		}
 	}
 
diff --git a/sftpfs/file.go b/sftpfs/file.go
index bab4abc..e4ccb55 100644
--- a/sftpfs/file.go
+++ b/sftpfs/file.go
@@ -14,8 +14,8 @@
 package sftpfs
 
 import (
-	"os"
 	"github.com/pkg/sftp"
+	"os"
 )
 
 type File struct {
@@ -64,17 +64,17 @@
 
 // TODO
 func (f *File) ReadAt(b []byte, off int64) (n int, err error) {
-	return 0,nil
+	return 0, nil
 }
 
 // TODO
 func (f *File) Readdir(count int) (res []os.FileInfo, err error) {
-	return nil,nil
+	return nil, nil
 }
 
 // TODO
 func (f *File) Readdirnames(n int) (names []string, err error) {
-	return nil,nil
+	return nil, nil
 }
 
 func (f *File) Seek(offset int64, whence int) (int64, error) {
@@ -87,7 +87,7 @@
 
 // TODO
 func (f *File) WriteAt(b []byte, off int64) (n int, err error) {
-	return 0,nil
+	return 0, nil
 }
 
 func (f *File) WriteString(s string) (ret int, err error) {
