Commit graph

269 commits

Author SHA1 Message Date
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
8dd8701e8d
Split read phase into two parts
Addresses issue #184

The first read phase will skip a lot more to try to recover more data
from the whole source.  Then the second read phase will fill in like
the previous configuration.
2022-03-25 18:45:28 -06:00
4e61025e99
Fix --sector-size argument 2022-03-08 13:02:33 -07:00
b66f25dfea
Only open ddrescueview if running with a DISPLAY 2022-03-08 12:36:49 -07:00
b82493b12b
Generate new map files when starting a recovery
This is done to define the domain size and let us use --complete-only.

This also enables us to open ddrescueview immediately since that tool
requires a valid map file from the start.  If you open an empty map
file ddrescueview doesn't auto-reload the file correctly.

Addresses #184
2022-03-08 11:55:23 -07:00
9d2eb8b175
Fix initial and max skip sizes
ddrescue's minimum is 64KiB so we should respect that.

Addresses #184
2022-03-08 11:53:56 -07:00