Commit graph

274 commits

Author SHA1 Message Date
0126452bf1
Merge branch 'ui-split' into dev 2023-05-27 19:50:49 -07:00
cb012423bb
Refactor hardware diagnostics to use new TUI 2023-05-27 19:47:26 -07:00
f19c4b2422
Update self-test data before checking result
Addresses #209
2023-05-22 20:59:10 -07:00
59d89575ed
Refactor SMART self-test checks
- Preserve TimedOut status
- Adds last self-test result to notes (if present and result is unknown)
2023-05-21 14:52:28 -07:00
ba3bf480f7
BREAKING Add wk/ui/tui.py 2023-04-09 15:59:34 -07:00
f9bcd534d4
Move ansi code into wk/ui 2023-04-08 19:20:22 -07:00
13fc64e6ab
Remove unneeded wk.ui calls 2023-04-08 14:16:41 -07:00
95d7159414
Move ANSI color escape sections to their own file 2023-04-02 20:46:54 -07:00
03a143488c
Adjust ui imports and calls 2023-04-02 20:12:18 -07:00
6efc970374
Move tmux sections into wk.ui 2023-04-01 22:36:59 -07:00
89fd647792
Split wk.std into debug, std, and ui sections 2023-04-01 22:14:03 -07:00
9f66b151af
Replace more pylint sections with ruff 2023-03-26 23:52:52 -07:00
e00920f24a
Switch to ruff linting 2023-03-19 18:47:46 -07:00
137c3ec5e5
Add label for test mode in hardware diagnostics 2022-12-11 21:44:20 -08:00
e583929498
Reduce time needed for get_disks() 2022-11-12 23:21:23 -08:00
d306a4c4e6
Improve RAM model reporting 2022-10-29 12:06:37 -07:00
166ad3198c
Add badblocks support for drives over 16TB 2022-10-23 13:31:37 -07:00
2706d1a9a5
Show failed SMART attributes during disk tests 2022-10-23 13:18:43 -07:00
25b64d6852
Limit badblocks scan to minimum in test_mode 2022-10-22 19:41:27 -07:00
3d799c2b62
Fix test mode in I/O benchmark test 2022-10-08 22:05:54 -07:00
7714b3436f
Track initial and current SMART attributes
Addresses issue #194
2022-10-08 19:26:20 -07:00
4465caa9fd
Skip empty devices 2022-10-08 18:45:31 -07:00
a6a774beae
Update Disk details before checking labels 2022-10-08 18:44:56 -07:00
2c9e56e830
Improve device size reporting in the description
i.e. support 512GB SSDs, 1.5TB HDDs, etc
Addresses issue #199
2022-10-08 16:33:50 -07:00
6880a353cc
Set known_attributes when intializing Disk()
This new design uses copy.deepcopy() to avoid erroneous thresholds being
applied to drives during diags.  This also reduces the number of lookups
to one per Disk.
2022-10-08 14:15:32 -07:00
926b32b574
Clean badblocks results to remove backspaces 2022-09-28 00:33:15 -07:00
f008546565
Avoid crashing if a device disconnects mid-diags 2022-09-24 19:58:41 -07:00
7abd4c21c3
Refactor Disk children sections
Child devices are not added by default to improve performance.
Disk.children is always present to avoid overly cautious lookups.
2022-05-21 15:03:44 -07:00
e03956f2fe
Convert Disk description to a property 2022-05-21 14:39:42 -07:00
29d4e80f7e
Refactor get_disks_macos() to improve performance
Found a way to easily exclude disk images from the list under El Cap
2022-05-20 19:44:12 -07:00
cf7ed909b3
Remove Python 3.10 requirement 2022-05-20 17:08:10 -07:00
5fc5cda86d
Avoid adding duplicate attribute failure notes 2022-05-14 17:51:43 -07:00
0ecc4d4146
Add test mode to Hardware Diagnostics
Addresses issue #192
2022-05-14 17:48:04 -07:00
47308c1508
Allow non-integer number of minute countdowns 2022-05-14 16:19:18 -07:00
6642aad2c8
Update ddrescue-tui to use new Disk object vars 2022-05-01 16:20:39 -07:00
2585ed584c
Refactor disk safety checks 2022-04-18 09:21:29 -07:00
95cd3b645d
Remove SMARTSelfTestInProgressError sections
Going forward this is a non-blocking error.
2022-04-11 16:50:21 -06:00
d667695e9e
Move surface scan check to its own function 2022-04-11 14:30:42 -06:00
af8b2b7dd3
Refactor SMART self-test sections 2022-04-08 19:19:23 -06:00
41b4ffd9fb
Cleanup pylint sections 2022-04-08 18:38:55 -06:00
312df1ee9d
Refactor import logic for wk.hw.diags 2022-04-08 15:38:03 -06:00
20f91f01d1
Add type hints to hardware functions 2022-04-06 19:08:23 -06:00
3d7881328f
Move ddrescue out of wk/hw section 2022-04-06 19:08:09 -06:00
f79e578aaf
Remove pylint warning from sensors 2022-04-06 16:23:44 -06:00
46eb737dc8
Move SMART functions to their own file 2022-04-06 16:22:58 -06:00
99dd7661d4
Split hardware diagnostics into multiple files 2022-04-05 18:11:06 -06:00
fc2bb07d11
Track test groups as list instead of a dict
By only including selected tests we can skip checking for the
enabled/disabled status.  This will also simplify the process
of disabling future tests for a disk if a failure is detected.
2022-04-05 14:45:14 -06:00
5ffa6d8261
Replace references to details with attributes 2022-04-04 18:58:45 -06:00
8582046948
Update HW diags and ddrescue to use new HW classes 2022-04-04 18:31:52 -06:00
172cb398ba
Convert hardware objects to dataclasses 2022-04-04 18:30:21 -06:00