Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

List features #295

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open

List features #295

wants to merge 5 commits into from

Conversation

achow101
Copy link
Member

@achow101 achow101 commented Jan 3, 2020

Adds a getfeatures command to retrieve the feature support for a given device. The result of this should match the table in the README. To handle the 3 levels of support (supported, not supported by HWI, and not supported by device firmware), a DeviceFeature enum is used. We can add more possible levels of support to this in the future. A SupportedFeatures class is also added to handle the support listing for a device so that we are sure that no feature is not listed for a given device.

Because some device models that have the same type have different feature support, additional changes are made to have model specific HWWClient classes which will have their own feature listings. This will also make it easier in the future to do different things for different models if/when they diverge. In particular, this is used for Trezor 1 and Trezor T as Trezor T has some firmware bugs preventing it from having the same feature set as the Trezor 1.

Closes #273

@achow101 achow101 added the docs label Jan 3, 2020
@achow101 achow101 force-pushed the list-features branch 2 times, most recently from a2d60cf to 3dc1eed Compare January 8, 2020 18:40
@achow101 achow101 force-pushed the list-features branch 5 times, most recently from 2422cf1 to 3074bc1 Compare March 26, 2020 20:15
@instagibbs
Copy link
Collaborator

needs rebase

get_client_class gets the callable class for the given client name
Instead of saying "Ledger Nano S and X", give the correct name
depending on whether the device model client is being used.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Feature] Providing device support information via CLI
2 participants