Merge master, fix conflicts

This commit is contained in:
Jonathan Turner
2019-06-24 05:54:02 +12:00
5 changed files with 29 additions and 12 deletions

View File

@@ -2,12 +2,11 @@ use crate::errors::ShellError;
use crate::object::process::process_dict;
use crate::object::Value;
use crate::prelude::*;
use sysinfo::SystemExt;
use sysinfo::{RefreshKind, SystemExt};
pub fn ps(_args: CommandArgs) -> Result<OutputStream, ShellError> {
let mut system = sysinfo::System::new();
system.refresh_all();
let mut system = sysinfo::System::new_with_specifics(RefreshKind::new().with_processes());
system.refresh_processes();
let list = system.get_process_list();
let list = list

View File

@@ -4,7 +4,7 @@ use crate::object::Dictionary;
use crate::object::{Primitive, Value};
use crate::prelude::*;
use sys_info::*;
use sysinfo::{ComponentExt, DiskExt, NetworkExt, SystemExt};
use sysinfo::{ComponentExt, DiskExt, NetworkExt, RefreshKind, SystemExt};
pub fn sysinfo(_args: CommandArgs) -> Result<OutputStream, ShellError> {
let mut idx = indexmap::IndexMap::new();
@@ -137,7 +137,7 @@ pub fn sysinfo(_args: CommandArgs) -> Result<OutputStream, ShellError> {
}
}
let system = sysinfo::System::new();
let system = sysinfo::System::new_with_specifics(RefreshKind::everything().without_processes());
let components_list = system.get_components_list();
if components_list.len() > 0 {
let mut v = vec![];

View File

@@ -13,13 +13,24 @@ pub struct TableView {
}
impl TableView {
fn merge_descriptors(values: &[Value]) -> Vec<DataDescriptor> {
let mut ret = vec![];
for value in values {
for desc in value.data_descriptors() {
if !ret.contains(&desc) {
ret.push(desc);
}
}
}
ret
}
pub fn from_list(values: &[Value]) -> Option<TableView> {
if values.len() == 0 {
return None;
}
let item = &values[0];
let headers = item.data_descriptors();
let headers = TableView::merge_descriptors(values);
if headers.len() == 0 {
return None;