From b36456c67cd841c38bd9d643c71877666f96e89f Mon Sep 17 00:00:00 2001 From: Michael Schurter Date: Wed, 16 Aug 2017 15:05:24 -0700 Subject: [PATCH 1/3] Update gopsutil to stop calling SetEnv Fixes #3036 --- vendor/github.com/shirou/gopsutil/Makefile | 4 +- .../shirou/gopsutil/disk/disk_fallback.go | 2 +- .../shirou/gopsutil/host/host_darwin.go | 8 ++- .../shirou/gopsutil/host/host_fallback.go | 8 +++ .../shirou/gopsutil/host/host_freebsd.go | 10 +-- .../shirou/gopsutil/host/host_openbsd.go | 10 +-- .../shirou/gopsutil/host/host_solaris.go | 68 +++++++++++++++++++ .../shirou/gopsutil/host/host_windows.go | 9 +++ .../gopsutil/internal/common/common_linux.go | 17 +++-- .../shirou/gopsutil/process/process_linux.go | 19 ++++-- vendor/vendor.json | 42 ++++++------ 11 files changed, 153 insertions(+), 44 deletions(-) diff --git a/vendor/github.com/shirou/gopsutil/Makefile b/vendor/github.com/shirou/gopsutil/Makefile index 987af227f3fa..dbe306ac5940 100644 --- a/vendor/github.com/shirou/gopsutil/Makefile +++ b/vendor/github.com/shirou/gopsutil/Makefile @@ -20,7 +20,7 @@ build_test: ## test only buildable CGO_ENABLED=1 GOOS=darwin go test ./... | $(BUILD_FAIL_PATTERN) GOOS=windows go test ./... | $(BUILD_FAIL_PATTERN) # Operating systems supported for building only (not implemented error if used) - GOOS=dragonfly go test ./... | $(BUILD_FAIL_PATTERN) - GOOS=netbsd go test ./... | $(BUILD_FAIL_PATTERN) GOOS=solaris go test ./... | $(BUILD_FAIL_PATTERN) +# GOOS=dragonfly go test ./... | $(BUILD_FAIL_PATTERN) + GOOS=netbsd go test ./... | $(BUILD_FAIL_PATTERN) @echo 'Successfully built on all known operating systems' diff --git a/vendor/github.com/shirou/gopsutil/disk/disk_fallback.go b/vendor/github.com/shirou/gopsutil/disk/disk_fallback.go index db521842d822..ae9ffa8528c8 100644 --- a/vendor/github.com/shirou/gopsutil/disk/disk_fallback.go +++ b/vendor/github.com/shirou/gopsutil/disk/disk_fallback.go @@ -1,4 +1,4 @@ -// +build !darwin,!linux,!freebsd,!openbsd,!windows +// +build !darwin,!linux,!freebsd,!openbsd,!windows,!solaris package disk diff --git a/vendor/github.com/shirou/gopsutil/host/host_darwin.go b/vendor/github.com/shirou/gopsutil/host/host_darwin.go index c5b24b853dfd..0ea6d5149f0e 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_darwin.go +++ b/vendor/github.com/shirou/gopsutil/host/host_darwin.go @@ -181,8 +181,10 @@ func PlatformInformation() (string, string, string, error) { } func Virtualization() (string, string, error) { - system := "" - role := "" + return "", "", common.ErrNotImplementedError +} - return system, role, nil +func KernelVersion() (string, error) { + _, _, version, err := PlatformInformation() + return version, err } diff --git a/vendor/github.com/shirou/gopsutil/host/host_fallback.go b/vendor/github.com/shirou/gopsutil/host/host_fallback.go index bfd01432bce6..173f58c6ae5c 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_fallback.go +++ b/vendor/github.com/shirou/gopsutil/host/host_fallback.go @@ -19,3 +19,11 @@ func Uptime() (uint64, error) { func Users() ([]UserStat, error) { return []UserStat{}, common.ErrNotImplementedError } + +func Virtualization() (string, string, error) { + return "", "", common.ErrNotImplementedError +} + +func KernelVersion() (string, error) { + return "", common.ErrNotImplementedError +} diff --git a/vendor/github.com/shirou/gopsutil/host/host_freebsd.go b/vendor/github.com/shirou/gopsutil/host/host_freebsd.go index e7924f90dbc7..6b2962cf6c4b 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_freebsd.go +++ b/vendor/github.com/shirou/gopsutil/host/host_freebsd.go @@ -174,10 +174,7 @@ func PlatformInformation() (string, string, string, error) { } func Virtualization() (string, string, error) { - system := "" - role := "" - - return system, role, nil + return "", "", common.ErrNotImplementedError } // before 9.0 @@ -222,3 +219,8 @@ func getUsersFromUtmp(utmpfile string) ([]UserStat, error) { func SensorsTemperatures() ([]TemperatureStat, error) { return []TemperatureStat{}, common.ErrNotImplementedError } + +func KernelVersion() (string, error) { + _, _, version, err := PlatformInformation() + return version, err +} diff --git a/vendor/github.com/shirou/gopsutil/host/host_openbsd.go b/vendor/github.com/shirou/gopsutil/host/host_openbsd.go index 5565bc3a0c51..13000b52d1c0 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_openbsd.go +++ b/vendor/github.com/shirou/gopsutil/host/host_openbsd.go @@ -110,10 +110,7 @@ func PlatformInformation() (string, string, string, error) { } func Virtualization() (string, string, error) { - system := "" - role := "" - - return system, role, nil + return "", "", common.ErrNotImplementedError } func Users() ([]UserStat, error) { @@ -158,3 +155,8 @@ func Users() ([]UserStat, error) { func SensorsTemperatures() ([]TemperatureStat, error) { return []TemperatureStat{}, common.ErrNotImplementedError } + +func KernelVersion() (string, error) { + _, _, version, err := PlatformInformation() + return version, err +} diff --git a/vendor/github.com/shirou/gopsutil/host/host_solaris.go b/vendor/github.com/shirou/gopsutil/host/host_solaris.go index 41391cd8a203..24461fd93f44 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_solaris.go +++ b/vendor/github.com/shirou/gopsutil/host/host_solaris.go @@ -2,6 +2,7 @@ package host import ( "bufio" + "bytes" "fmt" "io/ioutil" "os" @@ -76,6 +77,50 @@ func Info() (*InfoStat, error) { } } + switch result.Platform { + case "SmartOS": + // If everything works, use the current zone ID as the HostID if present. + zonename, err := exec.LookPath("/usr/bin/zonename") + if err == nil { + out, err := invoke.Command(zonename) + if err == nil { + sc := bufio.NewScanner(bytes.NewReader(out)) + for sc.Scan() { + line := sc.Text() + + // If we're in the global zone, rely on the hostname. + if line == "global" { + hostname, err := os.Hostname() + if err == nil { + result.HostID = hostname + } + } else { + result.HostID = strings.TrimSpace(line) + break + } + } + } + } + } + + // If HostID is still empty, use hostid(1), which can lie to callers but at + // this point there are no hardware facilities available. This behavior + // matches that of other supported OSes. + if result.HostID == "" { + hostID, err := exec.LookPath("/usr/bin/hostid") + if err == nil { + out, err := invoke.Command(hostID) + if err == nil { + sc := bufio.NewScanner(bytes.NewReader(out)) + for sc.Scan() { + line := sc.Text() + result.HostID = strings.TrimSpace(line) + break + } + } + } + } + // Find the boot time and calculate uptime relative to it bootTime, err := BootTime() if err != nil { @@ -134,3 +179,26 @@ func Users() ([]UserStat, error) { func SensorsTemperatures() ([]TemperatureStat, error) { return []TemperatureStat{}, common.ErrNotImplementedError } + +func Virtualization() (string, string, error) { + return "", "", common.ErrNotImplementedError +} + +func KernelVersion() (string, error) { + // Parse versions from output of `uname(1)` + uname, err := exec.LookPath("/usr/bin/uname") + if err != nil { + return "", err + } + + out, err := invoke.Command(uname, "-srv") + if err != nil { + return "", err + } + + fields := strings.Fields(string(out)) + if len(fields) >= 2 { + return fields[1], nil + } + return "", fmt.Errorf("could not get kernel version") +} diff --git a/vendor/github.com/shirou/gopsutil/host/host_windows.go b/vendor/github.com/shirou/gopsutil/host/host_windows.go index 4826f164eea7..98943021b571 100644 --- a/vendor/github.com/shirou/gopsutil/host/host_windows.go +++ b/vendor/github.com/shirou/gopsutil/host/host_windows.go @@ -188,3 +188,12 @@ func Users() ([]UserStat, error) { func SensorsTemperatures() ([]TemperatureStat, error) { return []TemperatureStat{}, common.ErrNotImplementedError } + +func Virtualization() (string, string, error) { + return "", "", common.ErrNotImplementedError +} + +func KernelVersion() (string, error) { + _, _, version, err := PlatformInformation() + return version, err +} diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go b/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go index c0aa9c78e0b9..5347b609a055 100644 --- a/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go +++ b/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go @@ -9,15 +9,24 @@ import ( ) func DoSysctrl(mib string) ([]string, error) { - err := os.Setenv("LC_ALL", "C") - if err != nil { - return []string{}, err + hostEnv := os.Environ() + foundLC := false + for i, line := range hostEnv { + if strings.HasPrefix(line, "LC_ALL") { + hostEnv[i] = "LC_ALL=C" + foundLC = true + } + } + if !foundLC { + hostEnv = append(hostEnv, "LC_ALL=C") } sysctl, err := exec.LookPath("/sbin/sysctl") if err != nil { return []string{}, err } - out, err := exec.Command(sysctl, "-n", mib).Output() + cmd := exec.Command(sysctl, "-n", mib) + cmd.Env = hostEnv + out, err := cmd.Output() if err != nil { return []string{}, err } diff --git a/vendor/github.com/shirou/gopsutil/process/process_linux.go b/vendor/github.com/shirou/gopsutil/process/process_linux.go index c0d81c28a619..b090dd9c8789 100644 --- a/vendor/github.com/shirou/gopsutil/process/process_linux.go +++ b/vendor/github.com/shirou/gopsutil/process/process_linux.go @@ -219,8 +219,8 @@ func (p *Process) NumCtxSwitches() (*NumCtxSwitchesStat, error) { // NumFDs returns the number of File Descriptors used by the process. func (p *Process) NumFDs() (int32, error) { - numFds, _, err := p.fillFromfd() - return numFds, err + _, fnames, err := p.fillFromfdList() + return int32(len(fnames)), err } // NumThreads returns the number of threads used by the process. @@ -514,16 +514,25 @@ func (p *Process) fillFromLimits() ([]RlimitStat, error) { return limitStats, nil } -// Get num_fds from /proc/(pid)/fd -func (p *Process) fillFromfd() (int32, []*OpenFilesStat, error) { +// Get list of /proc/(pid)/fd files +func (p *Process) fillFromfdList() (string, []string, error) { pid := p.Pid statPath := common.HostProc(strconv.Itoa(int(pid)), "fd") d, err := os.Open(statPath) if err != nil { - return 0, nil, err + return statPath, []string{}, err } defer d.Close() fnames, err := d.Readdirnames(-1) + return statPath, fnames, err +} + +// Get num_fds from /proc/(pid)/fd +func (p *Process) fillFromfd() (int32, []*OpenFilesStat, error) { + statPath, fnames, err := p.fillFromfdList() + if err != nil { + return 0, nil, err + } numFDs := int32(len(fnames)) var openfiles []*OpenFilesStat diff --git a/vendor/vendor.json b/vendor/vendor.json index 9cafd3045c10..d7a51d6e9ffd 100644 --- a/vendor/vendor.json +++ b/vendor/vendor.json @@ -1146,52 +1146,52 @@ "revisionTime": "2016-04-29T17:20:22Z" }, { - "checksumSHA1": "E46Dj2ZLd5acESd5H2eJFUXWvOk=", + "checksumSHA1": "Hb1sfQh9zulWvKHq1eJB/Egteuc=", "path": "github.com/shirou/gopsutil", - "revision": "42b5d5abb29c3033399cd15ef34104715ea487fc", - "revisionTime": "2017-07-28T02:04:42Z" + "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", + "revisionTime": "2017-08-16T21:54:50Z" }, { "checksumSHA1": "T2ThCk35wXAZGh37nrgA07199dA=", "path": "github.com/shirou/gopsutil/cpu", - "revision": "42b5d5abb29c3033399cd15ef34104715ea487fc", - "revisionTime": "2017-07-28T02:04:42Z" + "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", + "revisionTime": "2017-08-16T21:54:50Z" }, { - "checksumSHA1": "MHee+YeuZOzzMIUPVPgXnWgH3jI=", + "checksumSHA1": "T4uyVXPqCS5rj4vYLgv04as0Avw=", "path": "github.com/shirou/gopsutil/disk", - "revision": "42b5d5abb29c3033399cd15ef34104715ea487fc", - "revisionTime": "2017-07-28T02:04:42Z" + "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", + "revisionTime": "2017-08-16T21:54:50Z" }, { - "checksumSHA1": "G8v/DPfSDCCVGLVwLzDul6Jt5Oc=", + "checksumSHA1": "YBXpUckp1TtJf2mfMLx/bpnm22Q=", "path": "github.com/shirou/gopsutil/host", - "revision": "42b5d5abb29c3033399cd15ef34104715ea487fc", - "revisionTime": "2017-07-28T02:04:42Z" + "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", + "revisionTime": "2017-08-16T21:54:50Z" }, { - "checksumSHA1": "YfGdUgCoLdHBhfG+kXczYXu/rKk=", + "checksumSHA1": "np3IEfSkqCxxEnVBFB86AORndoI=", "path": "github.com/shirou/gopsutil/internal/common", - "revision": "42b5d5abb29c3033399cd15ef34104715ea487fc", - "revisionTime": "2017-07-28T02:04:42Z" + "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", + "revisionTime": "2017-08-16T21:54:50Z" }, { "checksumSHA1": "xIAuacHA0LNq1yM5Wd1q4lnbzxU=", "path": "github.com/shirou/gopsutil/mem", - "revision": "42b5d5abb29c3033399cd15ef34104715ea487fc", - "revisionTime": "2017-07-28T02:04:42Z" + "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", + "revisionTime": "2017-08-16T21:54:50Z" }, { "checksumSHA1": "moxD+mq0dMHnbTeFyeEHK0Iq7i8=", "path": "github.com/shirou/gopsutil/net", - "revision": "42b5d5abb29c3033399cd15ef34104715ea487fc", - "revisionTime": "2017-07-28T02:04:42Z" + "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", + "revisionTime": "2017-08-16T21:54:50Z" }, { - "checksumSHA1": "BbMfjHQ8vWKK4mJb8nj5guX7dgw=", + "checksumSHA1": "C6ybAAUmWz+PQKqJ8byV7Nj5JXQ=", "path": "github.com/shirou/gopsutil/process", - "revision": "42b5d5abb29c3033399cd15ef34104715ea487fc", - "revisionTime": "2017-07-28T02:04:42Z" + "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", + "revisionTime": "2017-08-16T21:54:50Z" }, { "checksumSHA1": "Nve7SpDmjsv6+rhkXAkfg/UQx94=", From 25b0e64df5976cf209b7fea757312f56a0dd28a7 Mon Sep 17 00:00:00 2001 From: Michael Schurter Date: Wed, 16 Aug 2017 16:27:32 -0700 Subject: [PATCH 2/3] Add #3041 to changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f609686b25bf..3fa19fcc2a09 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,7 @@ BUG FIXES: [GH-2939] * cli: Fix autocmpleting global flags [GH-2928] * cli: Fix panic when using 0.6.0 cli with an older cluster [GH-2929] + * client: Fix `LC_ALL=C` being set on subprocesses [GH-3041] * deployment: Fix alloc health with services/checks using interpolation [GH-2984] * discovery: Fix timeout validation for script checks [GH-3022] From cb17d47f406ef663618567a3f8fdb5b32e5214bc Mon Sep 17 00:00:00 2001 From: Michael Schurter Date: Thu, 17 Aug 2017 16:52:53 -0700 Subject: [PATCH 3/3] Update to latest upstream gopsutil --- .../shirou/gopsutil/internal/common/common.go | 16 ++++++++++ .../gopsutil/internal/common/common_darwin.go | 9 ++---- .../internal/common/common_freebsd.go | 8 ++--- .../gopsutil/internal/common/common_linux.go | 13 +------- .../internal/common/common_openbsd.go | 8 ++--- vendor/vendor.json | 30 +++++++++---------- 6 files changed, 41 insertions(+), 43 deletions(-) diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common.go b/vendor/github.com/shirou/gopsutil/internal/common/common.go index df71688b561d..1ef9e2741e23 100644 --- a/vendor/github.com/shirou/gopsutil/internal/common/common.go +++ b/vendor/github.com/shirou/gopsutil/internal/common/common.go @@ -358,3 +358,19 @@ func Pipeline(cmds ...*exec.Cmd) ([]byte, []byte, error) { // Return the pipeline output and the collected standard error return output.Bytes(), stderr.Bytes(), nil } + +// getSysctrlEnv sets LC_ALL=C in a list of env vars for use when running +// sysctl commands (see DoSysctrl). +func getSysctrlEnv(env []string) []string { + foundLC := false + for i, line := range env { + if strings.HasPrefix(line, "LC_ALL") { + env[i] = "LC_ALL=C" + foundLC = true + } + } + if !foundLC { + env = append(env, "LC_ALL=C") + } + return env +} diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_darwin.go b/vendor/github.com/shirou/gopsutil/internal/common/common_darwin.go index b236da1d8cc9..2b6d4c149d06 100644 --- a/vendor/github.com/shirou/gopsutil/internal/common/common_darwin.go +++ b/vendor/github.com/shirou/gopsutil/internal/common/common_darwin.go @@ -12,16 +12,13 @@ import ( ) func DoSysctrl(mib string) ([]string, error) { - err := os.Setenv("LC_ALL", "C") - if err != nil { - return []string{}, err - } - sysctl, err := exec.LookPath("/usr/sbin/sysctl") if err != nil { return []string{}, err } - out, err := exec.Command(sysctl, "-n", mib).Output() + cmd := exec.Command(sysctl, "-n", mib) + cmd.Env = getSysctrlEnv(os.Environ()) + out, err := cmd.Output() if err != nil { return []string{}, err } diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_freebsd.go b/vendor/github.com/shirou/gopsutil/internal/common/common_freebsd.go index 668bdc40f5ee..107e2c9cf928 100644 --- a/vendor/github.com/shirou/gopsutil/internal/common/common_freebsd.go +++ b/vendor/github.com/shirou/gopsutil/internal/common/common_freebsd.go @@ -12,15 +12,13 @@ import ( ) func DoSysctrl(mib string) ([]string, error) { - err := os.Setenv("LC_ALL", "C") - if err != nil { - return []string{}, err - } sysctl, err := exec.LookPath("/sbin/sysctl") if err != nil { return []string{}, err } - out, err := exec.Command(sysctl, "-n", mib).Output() + cmd := exec.Command(sysctl, "-n", mib) + cmd.Env = getSysctrlEnv(os.Environ()) + out, err := cmd.Output() if err != nil { return []string{}, err } diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go b/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go index 5347b609a055..4e829e057fd6 100644 --- a/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go +++ b/vendor/github.com/shirou/gopsutil/internal/common/common_linux.go @@ -9,23 +9,12 @@ import ( ) func DoSysctrl(mib string) ([]string, error) { - hostEnv := os.Environ() - foundLC := false - for i, line := range hostEnv { - if strings.HasPrefix(line, "LC_ALL") { - hostEnv[i] = "LC_ALL=C" - foundLC = true - } - } - if !foundLC { - hostEnv = append(hostEnv, "LC_ALL=C") - } sysctl, err := exec.LookPath("/sbin/sysctl") if err != nil { return []string{}, err } cmd := exec.Command(sysctl, "-n", mib) - cmd.Env = hostEnv + cmd.Env = getSysctrlEnv(os.Environ()) out, err := cmd.Output() if err != nil { return []string{}, err diff --git a/vendor/github.com/shirou/gopsutil/internal/common/common_openbsd.go b/vendor/github.com/shirou/gopsutil/internal/common/common_openbsd.go index 8625e1fa927f..398f78542e99 100644 --- a/vendor/github.com/shirou/gopsutil/internal/common/common_openbsd.go +++ b/vendor/github.com/shirou/gopsutil/internal/common/common_openbsd.go @@ -12,15 +12,13 @@ import ( ) func DoSysctrl(mib string) ([]string, error) { - err := os.Setenv("LC_ALL", "C") - if err != nil { - return []string{}, err - } sysctl, err := exec.LookPath("/sbin/sysctl") if err != nil { return []string{}, err } - out, err := exec.Command(sysctl, "-n", mib).Output() + cmd := exec.Command(sysctl, "-n", mib) + cmd.Env = getSysctrlEnv(os.Environ()) + out, err := cmd.Output() if err != nil { return []string{}, err } diff --git a/vendor/vendor.json b/vendor/vendor.json index d7a51d6e9ffd..e1dc8ef70e72 100644 --- a/vendor/vendor.json +++ b/vendor/vendor.json @@ -1154,44 +1154,44 @@ { "checksumSHA1": "T2ThCk35wXAZGh37nrgA07199dA=", "path": "github.com/shirou/gopsutil/cpu", - "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", - "revisionTime": "2017-08-16T21:54:50Z" + "revision": "1c211f0807a3436707409fa313599dd8c7a48664", + "revisionTime": "2017-08-17T03:45:37Z" }, { "checksumSHA1": "T4uyVXPqCS5rj4vYLgv04as0Avw=", "path": "github.com/shirou/gopsutil/disk", - "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", - "revisionTime": "2017-08-16T21:54:50Z" + "revision": "1c211f0807a3436707409fa313599dd8c7a48664", + "revisionTime": "2017-08-17T03:45:37Z" }, { "checksumSHA1": "YBXpUckp1TtJf2mfMLx/bpnm22Q=", "path": "github.com/shirou/gopsutil/host", - "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", - "revisionTime": "2017-08-16T21:54:50Z" + "revision": "1c211f0807a3436707409fa313599dd8c7a48664", + "revisionTime": "2017-08-17T03:45:37Z" }, { - "checksumSHA1": "np3IEfSkqCxxEnVBFB86AORndoI=", + "checksumSHA1": "jUWM0P4G1bHpO9CPS8gcr4rt1t0=", "path": "github.com/shirou/gopsutil/internal/common", - "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", - "revisionTime": "2017-08-16T21:54:50Z" + "revision": "1c211f0807a3436707409fa313599dd8c7a48664", + "revisionTime": "2017-08-17T03:45:37Z" }, { "checksumSHA1": "xIAuacHA0LNq1yM5Wd1q4lnbzxU=", "path": "github.com/shirou/gopsutil/mem", - "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", - "revisionTime": "2017-08-16T21:54:50Z" + "revision": "1c211f0807a3436707409fa313599dd8c7a48664", + "revisionTime": "2017-08-17T03:45:37Z" }, { "checksumSHA1": "moxD+mq0dMHnbTeFyeEHK0Iq7i8=", "path": "github.com/shirou/gopsutil/net", - "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", - "revisionTime": "2017-08-16T21:54:50Z" + "revision": "1c211f0807a3436707409fa313599dd8c7a48664", + "revisionTime": "2017-08-17T03:45:37Z" }, { "checksumSHA1": "C6ybAAUmWz+PQKqJ8byV7Nj5JXQ=", "path": "github.com/shirou/gopsutil/process", - "revision": "565f5c8c5e5f8cf2f8a92cf9375f2f1c0e3ea034", - "revisionTime": "2017-08-16T21:54:50Z" + "revision": "1c211f0807a3436707409fa313599dd8c7a48664", + "revisionTime": "2017-08-17T03:45:37Z" }, { "checksumSHA1": "Nve7SpDmjsv6+rhkXAkfg/UQx94=",