What changed, and why it matters
This commit only updates the README documentation for the Python trezorlib package. It changes supported Python and firmware version wording, removes an optional installation extra for device authentication, switches the recommended development tool from Poetry to uv, and reorganizes some sections. There are no code or security changes.
No security action needed; this is a routine documentation update.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The diff is limited to python/README.md. It updates text: Python 3.8→3.9, adds Trezor Safe family support, removes the trezor[authentication] extra and related trezorctl device authenticate instructions, replaces Poetry setup instructions with uv (uv sync + source .venv/bin/activate), updates a branch reference master→main, removes a PIN-entering explanation, and adds a changelog link. No executable code, build scripts, cryptographic logic, or dependency manifests are modified.
Changed components
python/README.mdInspect captured patch +12 / −43
diff --git a/python/README.md b/python/README.md
index 936b4c5a3..565db877a 100644
--- a/python/README.md
+++ b/python/README.md
@@ -9,7 +9,7 @@ See <https://trezor.io> for more information.
## Install
-Python Trezor tools require Python 3.8 or higher, and libusb 1.0. The easiest
+Python Trezor tools require Python 3.9 or higher, and libusb 1.0. The easiest
way to install it is with `pip`. The rest of this guide assumes you have
a working `pip`; if not, you can refer to [this
guide](https://packaging.python.org/tutorials/installing-packages/).
@@ -26,8 +26,8 @@ On Windows, you also need to either install [Trezor Bridge](https://suite.trezor
### Firmware version requirements
-Current trezorlib version supports Trezor One version 1.8.0 and up, and Trezor T version
-2.1.0 and up.
+Current trezorlib version supports Trezor One version 1.8.0 and up, Trezor T version
+2.1.0 and up, and all versions of the Trezor Safe family.
For firmware versions below 1.8.0 and 2.1.0 respectively, the only supported operation
is "upgrade firmware".
@@ -52,14 +52,6 @@ you install HIDAPI support (see below).
pip3 install trezor[stellar]
```
-* **Extended device authentication**: For user-friendly device authentication for Trezor
- Safe 3 and newer models (`trezorctl device authenticate` command), additional packages
- are needed. Install with:
-
- ```sh
- pip3 install trezor[authentication]
- ```
-
* **Firmware-less Trezor One**: If you are setting up a brand new Trezor One
manufactured before 2021 (with pre-installed bootloader older than 1.6.0), you will
need HIDAPI support. On Linux, you will need the following packages (or their
@@ -72,31 +64,24 @@ you install HIDAPI support (see below).
pip3 install trezor[hidapi]
```
-To install all four, use `pip3 install trezor[hidapi,ethereum,stellar,authentication]`.
+To install all four, use `pip3 install trezor[hidapi,ethereum,stellar]`.
### Distro packages
Check out [Repology](https://repology.org/metapackage/python:trezor) to see if your
operating system has an up-to-date python-trezor package.
-### Installing latest version from GitHub
-
-```sh
-pip3 install "git+https://github.com/trezor/trezor-firmware#egg=trezor&subdirectory=python"
-```
-
### Running from source
-Install the [Poetry](https://python-poetry.org/) tool, checkout
-`trezor-firmware` from git, and enter the poetry shell:
+Install the [uv](https://docs.astral.sh/uv/) tool, checkout `trezor-firmware` from git,
+and activate the uv environment:
```sh
-pip3 install poetry
git clone https://github.com/trezor/trezor-firmware
cd trezor-firmware
git submodule update --init --recursive
-poetry install
-poetry shell
+uv sync
+source .venv/bin/activate
```
In this environment, trezorlib and the `trezorctl` tool is running from the live
@@ -107,7 +92,7 @@ sources, so your changes are immediately effective.
The included `trezorctl` python script can perform various tasks such as
changing setting in the Trezor, signing transactions, retrieving account
info and addresses. See the
-[python/docs/](https://github.com/trezor/trezor-firmware/tree/master/python/docs)
+[python/docs/](https://github.com/trezor/trezor-firmware/tree/main/python/docs)
sub folder for detailed examples and options.
NOTE: An older version of the `trezorctl` command is [available for
@@ -121,27 +106,11 @@ your application. See examples here in the
[tools/](https://github.com/trezor/trezor-firmware/tree/main/python/tools)
sub folder.
-## PIN Entering
-
-When you are asked for PIN, you have to enter scrambled PIN. Follow the
-numbers shown on Trezor display and enter the their positions using the
-numeric keyboard mapping:
-
-| | | |
-|---|---|---|
-| 7 | 8 | 9 |
-| 4 | 5 | 6 |
-| 1 | 2 | 3 |
-
-Example: your PIN is **1234** and Trezor is displaying the following:
+## Changelog
-| | | |
-|---|---|---|
-| 2 | 8 | 3 |
-| 5 | 4 | 6 |
-| 7 | 9 | 1 |
+Visit [CHANGELOG.md] for the latest changes.
-You have to enter: **3795**
+[CHANGELOG.md]: https://github.com/trezor/trezor-firmware/blob/main/python/CHANGELOG.md
## Contributing
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.