Skip to content

Commit e22f001

Browse files
committed
Remove references to io/ioutil package
io/ioutil has been deprecated in Go 1.16. Signed-off-by: Austin Vazquez <[email protected]>
1 parent 325f9b6 commit e22f001

4 files changed

Lines changed: 33 additions & 28 deletions

File tree

driver/utils.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ func WriteFile(r Driver, filename string, data []byte, perm os.FileMode) error {
5656
return nil
5757
}
5858

59-
// ReadDir works the same as ioutil.ReadDir with the Driver abstraction
59+
// ReadDir works the same as os.ReadDir with the Driver abstraction
6060
func ReadDir(r Driver, dirname string) ([]os.FileInfo, error) {
6161
f, err := r.Open(dirname)
6262
if err != nil {

fs/copy.go

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ package fs
1818

1919
import (
2020
"fmt"
21-
"io/ioutil"
2221
"os"
2322
"path/filepath"
2423
"sync"
@@ -111,7 +110,7 @@ func copyDirectory(dst, src string, inodes map[uint64]string, o *copyDirOpts) er
111110
}
112111
}
113112

114-
fis, err := ioutil.ReadDir(src)
113+
entries, err := os.ReadDir(src)
115114
if err != nil {
116115
return fmt.Errorf("failed to read %s: %w", src, err)
117116
}
@@ -124,18 +123,23 @@ func copyDirectory(dst, src string, inodes map[uint64]string, o *copyDirOpts) er
124123
return fmt.Errorf("failed to copy xattrs: %w", err)
125124
}
126125

127-
for _, fi := range fis {
128-
source := filepath.Join(src, fi.Name())
129-
target := filepath.Join(dst, fi.Name())
126+
for _, entry := range entries {
127+
source := filepath.Join(src, entry.Name())
128+
target := filepath.Join(dst, entry.Name())
129+
130+
fileInfo, err := entry.Info()
131+
if err != nil {
132+
return fmt.Errorf("failed to get file info for %s: %w", entry.Name(), err)
133+
}
130134

131135
switch {
132-
case fi.IsDir():
136+
case entry.IsDir():
133137
if err := copyDirectory(target, source, inodes, o); err != nil {
134138
return err
135139
}
136140
continue
137-
case (fi.Mode() & os.ModeType) == 0:
138-
link, err := getLinkSource(target, fi, inodes)
141+
case (fileInfo.Mode() & os.ModeType) == 0:
142+
link, err := getLinkSource(target, fileInfo, inodes)
139143
if err != nil {
140144
return fmt.Errorf("failed to get hardlink: %w", err)
141145
}
@@ -146,26 +150,26 @@ func copyDirectory(dst, src string, inodes map[uint64]string, o *copyDirOpts) er
146150
} else if err := CopyFile(target, source); err != nil {
147151
return fmt.Errorf("failed to copy files: %w", err)
148152
}
149-
case (fi.Mode() & os.ModeSymlink) == os.ModeSymlink:
153+
case (fileInfo.Mode() & os.ModeSymlink) == os.ModeSymlink:
150154
link, err := os.Readlink(source)
151155
if err != nil {
152156
return fmt.Errorf("failed to read link: %s: %w", source, err)
153157
}
154158
if err := os.Symlink(link, target); err != nil {
155159
return fmt.Errorf("failed to create symlink: %s: %w", target, err)
156160
}
157-
case (fi.Mode() & os.ModeDevice) == os.ModeDevice,
158-
(fi.Mode() & os.ModeNamedPipe) == os.ModeNamedPipe,
159-
(fi.Mode() & os.ModeSocket) == os.ModeSocket:
160-
if err := copyIrregular(target, fi); err != nil {
161+
case (fileInfo.Mode() & os.ModeDevice) == os.ModeDevice,
162+
(fileInfo.Mode() & os.ModeNamedPipe) == os.ModeNamedPipe,
163+
(fileInfo.Mode() & os.ModeSocket) == os.ModeSocket:
164+
if err := copyIrregular(target, fileInfo); err != nil {
161165
return fmt.Errorf("failed to create irregular file: %w", err)
162166
}
163167
default:
164-
logrus.Warnf("unsupported mode: %s: %s", source, fi.Mode())
168+
logrus.Warnf("unsupported mode: %s: %s", source, fileInfo.Mode())
165169
continue
166170
}
167171

168-
if err := copyFileInfo(fi, source, target); err != nil {
172+
if err := copyFileInfo(fileInfo, source, target); err != nil {
169173
return fmt.Errorf("failed to copy file info: %w", err)
170174
}
171175

fs/dtype_linux.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,13 @@ package fs
2121

2222
import (
2323
"fmt"
24-
"io/ioutil"
2524
"os"
2625
"syscall"
2726
"unsafe"
2827
)
2928

3029
func locateDummyIfEmpty(path string) (string, error) {
31-
children, err := ioutil.ReadDir(path)
30+
children, err := os.ReadDir(path)
3231
if err != nil {
3332
return "", err
3433
}

testutil_test.go

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ package continuity
2020
import (
2121
"fmt"
2222
"io"
23-
"io/ioutil"
2423
"os"
2524
"path/filepath"
2625
)
@@ -31,32 +30,35 @@ func tree(w io.Writer, dir string) error {
3130
}
3231

3332
func _tree(w io.Writer, dir string, indent string) error {
34-
files, err := ioutil.ReadDir(dir)
33+
entries, err := os.ReadDir(dir)
3534
if err != nil {
3635
return err
3736
}
38-
for i, f := range files {
39-
fPath := filepath.Join(dir, f.Name())
37+
for i, entry := range entries {
38+
fPath := filepath.Join(dir, entry.Name())
4039
fIndent := indent
41-
if i < len(files)-1 {
40+
if i < len(entries)-1 {
4241
fIndent += "|-- "
4342
} else {
4443
fIndent += "`-- "
4544
}
4645
target := ""
47-
if f.Mode()&os.ModeSymlink == os.ModeSymlink {
46+
fileInfo, err := entry.Info()
47+
if err != nil {
48+
return fmt.Errorf("file info not found for %s: %w", entry.Name(), err)
49+
}
50+
if (fileInfo.Mode() & os.ModeSymlink) == os.ModeSymlink {
4851
realPath, err := os.Readlink(fPath)
4952
if err != nil {
5053
target += fmt.Sprintf(" -> unknown (error: %v)", err)
5154
} else {
5255
target += " -> " + realPath
5356
}
5457
}
55-
fmt.Fprintf(w, "%s%s%s\n",
56-
fIndent, f.Name(), target)
57-
if f.IsDir() {
58+
fmt.Fprintf(w, "%s%s%s\n", fIndent, entry.Name(), target)
59+
if entry.IsDir() {
5860
dIndent := indent
59-
if i < len(files)-1 {
61+
if i < len(entries)-1 {
6062
dIndent += "| "
6163
} else {
6264
dIndent += " "

0 commit comments

Comments
 (0)