diff --git a/packages/connect-common/files/firmware/t1b1/releases.json b/packages/connect-common/files/firmware/t1b1/releases.json index 6bf71098e547..e720b83c4c98 100644 --- a/packages/connect-common/files/firmware/t1b1/releases.json +++ b/packages/connect-common/files/firmware/t1b1/releases.json @@ -9,7 +9,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.12.1-bitcoinonly.bin", "fingerprint": "3c694191f5b66a65cb5bb209adbf113cb40209e644b77162ba996bb7ee8f382b", "fingerprint_bitcoinonly": "985fb6a8c87f7547fb810f6c4a8331ebf19c677445810358778eb21eca78a181", - "notes": "https://trezor.io/learn/a/trezor-device-firmware-update-march-2023", "changelog": "* Fee rate shown when replacing transaction.\n* Ledger Live legacy derivation path m/44'/coin_type'/0'/account is now supported.\n* SLIP-0019 proofs of ownership for native SegWit implemented.\n* SLIP-0025 coinjoin accounts implemented for testing purposes.\n* Bech32 addresses now not converting to uppercase in QR code to increase compatibility.\n* Decimals of fee rate extended to 2 digits.\n* Only \"sat\" displayed instead of \"sat BTC\".\n* Bootloader 1.12.1. included.\n* Stellar addresses now shown in full + as a QR code.\n* Ethereum fees now wrapped to the next line when needed." }, { @@ -22,7 +21,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.11.2-bitcoinonly.bin", "fingerprint": "d8b55b68dfe8a8449ce7391e841073ef5d29349638d85b750508bbef5d2de5ec", "fingerprint_bitcoinonly": "7e51546f4411ecf44688c681ada72a18495fd08e91f3a0429ab91bc4415b362a", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-august-2022-a4e3d76214c1", "changelog": "* Show the fee rate on the signing confirmation screen. \n* Show thousands separator when displaying large amounts \n* Fix potential security issues in recovery workflow. \n* Fix key extraction vulnerability in Cothority Collective Signing (CoSi). \n* Fix nonce bias in CoSi signing." }, { @@ -35,7 +33,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.11.1-bitcoinonly.bin", "fingerprint": "f7c60d0b8c2853afd576867c6562aba5ea52bdc2ce34d0dbb8751f52867c3665", "fingerprint_bitcoinonly": "8e17b95b5d302f203de3a8fe27959efd25e3d5140ac9b5e60412f1b3f624995d", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-may-2022-b1af60742291", "changelog": "* Support Electrum signatures in VerifyMessage.\n* Trezor will refuse to sign UTXOs that do not match the provided derivation path (e.g., transactions belonging to a different wallet, or synthetic transaction inputs).\n* Zcash v5 transaction format." }, { @@ -48,7 +45,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.10.5-bitcoinonly.bin", "fingerprint": "7619fcc73c43ca8a3e6aad3dc3eb6551fed05bb218340efe01a02bb96e9f346b", "fingerprint_bitcoinonly": "1d319f643fe2ba5c247b178c7f73b989ab4e43d914a60468566ee7cc5bb9dde0", - "notes": "https://blog.trezor.io/trezor-suite-update-january-2022-4a77e4a07a5a", "changelog": "* Support for blindly signing EIP-712 data." }, { @@ -61,7 +57,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.10.4-bitcoinonly.bin", "fingerprint": "74dfdfb9addb9d90fedb2c88794b7236af521d21ef0096f9080c25b597c8af86", "fingerprint_bitcoinonly": "30d858b022e218f27854f071d568e5a696c937f1316d83b93aadcd178f3b0a38", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-december-2021-d1e74c3ea283", "changelog": "* Support Taproot.\n* Show address confirmation in SignMessage.\n* Support for Ethereum EIP-1559 transactions." }, { @@ -74,7 +69,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.10.3-bitcoinonly.bin", "fingerprint": "bf0cc936a9afbf0a4ae7b727a2817fb69fba432d7230a0ff7b79b4a73b845197", "fingerprint_bitcoinonly": "d1143d2cba9c7dba4d57703d2b7da87859d8668472ffc651177ead6b94e89117", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-september-2021-a490f2ea16c1", "changelog": "* Remove Lisk.\n* Re-enabled Firo support.\n* Stricter protobuf field handling in Stellar." }, { @@ -87,7 +81,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.10.2-bitcoinonly.bin", "fingerprint": "99707b90a504f7e402f26c3d59cbbdacbc52754cebcce79cc47be528fc889338", "fingerprint_bitcoinonly": "e597b6aef5a2e817f532d27b8501f99f189e432a887877bdd3498cd3a0afc431", - "notes": "https://blog.trezor.io/trezor-suite-launches-8958c1d37d33", "changelog": "* Security improvements." }, { @@ -100,7 +93,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.10.1-bitcoinonly.bin", "fingerprint": "36400becf1cdddec22b8150d56ff59eef76d37fef60dc465a6f82b4858903886", "fingerprint_bitcoinonly": "74227362016a8763c4d5f5b06eeb7eabe5fbd7ed05798b586cc7f4bfef50d7fe", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-june-2021-c70aba9f0e3f", "changelog": "* Safety checks setting in T1B1." }, { @@ -113,7 +105,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.10.0-bitcoinonly.bin", "fingerprint": "595ba3e8e887cba185e03098f9538e18164f72f9fc82445e691abcd03e5cf0a4", "fingerprint_bitcoinonly": "20a4068c34ff6dd7d8c510350409376cf7ea744ba668fdcf16da8f1d81fed289", - "notes": "https://blog.trezor.io/trezor-firmware-updates-may-2021-b11f6d52a65b", "changelog": "* Bootloader 1.10.0.\n* Allow decreasing the output value in RBF transactions.\n* Support long PIN of up to 50 digits.\n* Display nLockTime in human-readable form." }, { @@ -126,7 +117,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.9.4-bitcoinonly.bin", "fingerprint": "867017bd784cc4e9ce6f0875c61ea86f89b19380d54045c34608b85472998000", "fingerprint_bitcoinonly": "3f73dfbcfc48f66c8814f6562524d81888230e0acd1c19b52b6e8772c6c67e7f", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-rbf-and-spending-now-live-c2f69c42d7f7", "changelog": "* Replacement transaction signing for replace-by-fee.\n* Support for Output Descriptors export.\n* Show Ypub/Zpub correctly for multisig GetAddress.\n* Show amounts in mBTC, uBTC and sat denominations." }, { @@ -139,7 +129,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.9.3-bitcoinonly.bin", "fingerprint": "2589f456559f813d1149be1022e62f2d48fbe28f4d02de933bd888d91035cace", "fingerprint_bitcoinonly": "76f899d60ffd9685713cb420d017565c05c43aadaf0e62b645a50a8db69afef6", - "notes": "https://blog.trezor.io/firmware-updates-for-trezor-model-t-version-2-3-3-and-trezor-model-one-version-1-9-3-c94f7a3b6fea", "changelog": "* Improves the Passphrase feature by showing the entered passphrase on the Trezor screen before opening the wallet.\n* Adds support for Verge (XVG).\n* Drops support for Metaverse (ETP), GINcoin (GIN), Pesetacoin (PTC), and Zel (ZEL).\n* Re-enables spending coins from Bitcoin paths (fixing some compatibility issues with Bitcoin Cash wallets).\n* Fixes smaller issues in the user interface." }, { @@ -152,7 +141,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.9.2-bitcoinonly.bin", "fingerprint": "45b83acd1330ddfd5567edbae5ff8028df1c48a493f01d47cc5499ee0be9b991", "fingerprint_bitcoinonly": "2762c0ff78c96e23d1d348330e0a3cdf45d83c8fc8c2d48853b7cb602ddc19bb", - "notes": "https://blog.trezor.io/firmware-updates-for-trezor-model-t-version-2-3-2-and-trezor-model-one-version-1-9-2-f4f9c0f1ed7c", "changelog": "* Reintroduces the ability to spend pre-Overwinter (2018) funds on Zcash-like coins.\n* Adds support for multiple change outputs in outgoing transactions.\n* Adds a security check to prevent potential issues with paths used in altcoin transactions." }, { @@ -165,7 +153,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.9.1-bitcoinonly.bin", "fingerprint": "30cde253c46d4fc705f98634a35d06a494cf2a36824622a9c6a573e07f14292d", "fingerprint_bitcoinonly": "ee743e3bd1e424ceb45a1d877a5422e7af449706f636c459cdd8bb0d4796cba5", - "notes": "https://blog.trezor.io/details-of-firmware-updates-for-trezor-one-version-1-9-1-and-trezor-model-t-version-2-3-1-1eba8f60f2dd", "changelog": "* Refactor Bitcoin signing" }, { @@ -178,7 +165,6 @@ "url_bitcoinonly": "firmware/t1b1/trezor-t1b1-1.9.0-bitcoinonly.bin", "fingerprint": "1f40d1e68f9d182888b5b60da5209eff047ec68fcc96a5c9b61b0e55dd07d458", "fingerprint_bitcoinonly": "93a670dd20d044bf76cfce6eecd2a85918acdebe616229dbb31250fd03a33870", - "notes": "https://blog.trezor.io/details-of-firmware-updates-for-trezor-one-version-1-9-0-and-trezor-model-t-version-2-3-0-46deb141fc09", "changelog": "* Introduce Wipe Code\n* Introduce passphrase cache" }, { @@ -222,7 +208,6 @@ "url": "firmware/t1b1/trezor-t1b1-1.8.0.bin", "tags": ["security"], "fingerprint": "d65f0c07a6a9c53d8b5287798eb53154b33f9e87cd38a3701970e3d0a750a659", - "notes": "https://blog.trezor.io/firmware-updates-for-trezor-one-firmware-1-8-0-and-trezor-model-t-firmware-2-1-0-b9df91e048df", "changelog": "* Security improvements\n* Upgraded to new storage format\n* Stellar and NEM fixes\n* New coins: ATS, KMD, XPM, XSN, ZCL\n* New ETH tokens" }, { @@ -243,8 +228,7 @@ "min_bootloader_version": [1, 5, 0], "url": "firmware/t1b1/trezor-t1b1-1.7.2.bin", "fingerprint": "4d5c7ac191dba315b2433af27c187925fb713d06984cc6f566231d809dd8d370", - "changelog": "* Add support for OMNI layer: OMNI/MAID/USDT\n* U2F fixes\n* Don't ask for PIN if it has been just set", - "notes": "https://blog.trezor.io/trezor-one-1-7-2-support-for-omni-layer-cbf699e4ffae" + "changelog": "* Add support for OMNI layer: OMNI/MAID/USDT\n* U2F fixes\n* Don't ask for PIN if it has been just set" }, { "required": false, @@ -254,8 +238,7 @@ "min_bootloader_version": [1, 5, 0], "url": "firmware/t1b1/trezor-t1b1-1.7.1.bin", "fingerprint": "1c303c50bb45d3f35da9e962d8405d0b8e89cc45e122496a48fce3995fa71d48", - "changelog": "* Switch from HID to WebUSB\n* Add support for Stellar\n* Add support for Lisk\n* Add support for Zcash Sapling hardfork\n* Implement seedless setup", - "notes": "https://blog.trezor.io/firmware-updates-moving-from-the-beta-wallet-to-stable-c487931c3596" + "changelog": "* Switch from HID to WebUSB\n* Add support for Stellar\n* Add support for Lisk\n* Add support for Zcash Sapling hardfork\n* Implement seedless setup" }, { "required": false, @@ -265,8 +248,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.6.3.bin", "fingerprint": "e8dbb4b7fe8384afd4c99790277c2f2f366a1a0f3957aa3545c75371a99a8fcc", - "changelog": "* Implement RSKIP-60 Ethereum checksum encoding\n* Add support for new Ethereum networks (ESN, AKA, ETHO, MUSI, PIRL, ATH, GO)\n* Add support for new 80 Ethereum tokens\n* Improve MPU configuration", - "notes": "https://blog.trezor.io/trezor-one-firmware-update-1-6-3-73894c0506d" + "changelog": "* Implement RSKIP-60 Ethereum checksum encoding\n* Add support for new Ethereum networks (ESN, AKA, ETHO, MUSI, PIRL, ATH, GO)\n* Add support for new 80 Ethereum tokens\n* Improve MPU configuration" }, { "required": false, @@ -276,8 +258,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.6.2.bin", "fingerprint": "d31304f793854e343df6ccf1804f7e2abf48ddcd82a379ca2d3711d54127e138", - "changelog": "* Add possibility to set custom auto-lock delay\n* Bitcoin Cash cashaddr support\n* Zcash Overwinter hardfork support\n* Support for new coins:\n - Decred, Bitcoin Private, Fujicoin, Groestlcoin, Vertcoin, Viacoin, Zcoin\n* Support for new Ethereum networks:\n - EOS Classic, Ethereum Social, Ellaism, Callisto, EtherGem, Wanchain\n* Support for 500+ new Ethereum tokens", - "notes": "https://blog.trezor.io/june-updates-trezor-devices-one-modelt-wallet-zcash-cashaddr-doge-8d98c2a73036" + "changelog": "* Add possibility to set custom auto-lock delay\n* Bitcoin Cash cashaddr support\n* Zcash Overwinter hardfork support\n* Support for new coins:\n - Decred, Bitcoin Private, Fujicoin, Groestlcoin, Vertcoin, Viacoin, Zcoin\n* Support for new Ethereum networks:\n - EOS Classic, Ethereum Social, Ellaism, Callisto, EtherGem, Wanchain\n* Support for 500+ new Ethereum tokens" }, { "required": true, @@ -287,8 +268,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.6.1.bin", "fingerprint": "83c3190a94e524ac83a1704eb584a2ab53f8a65a893b1ab52e7135812857c807", - "changelog": "* Use fixed-width font for addresses\n* Lots of under-the-hood improvements\n* Fixed issue with write-protection settings", - "notes": "https://blog.trezor.io/trezor-one-firmware-update-1-6-1-eecd0534ab95" + "changelog": "* Use fixed-width font for addresses\n* Lots of under-the-hood improvements\n* Fixed issue with write-protection settings" }, { "required": false, @@ -297,8 +277,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.6.0.bin", "fingerprint": "e40f6ce12724c2d24234a7752953b88fd9ec28b3ec72c0dbfa280095a67a06ca", - "changelog": "* Native SegWit (Bech32) address support\n* Show recognized BIP44/BIP49 paths in GetAddress dialog\n* NEM support\n* Expanse and UBIQ chains support\n* Bitcoin Gold, DigiByte, Monacoin support\n* Ed25519 collective signatures (CoSi) support", - "notes": "https://blog.trezor.io/expanded-cryptos-cryptocurrency-support-firmware-1-6-0-3825b5853470" + "changelog": "* Native SegWit (Bech32) address support\n* Show recognized BIP44/BIP49 paths in GetAddress dialog\n* NEM support\n* Expanse and UBIQ chains support\n* Bitcoin Gold, DigiByte, Monacoin support\n* Ed25519 collective signatures (CoSi) support" }, { "required": true, @@ -307,8 +286,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.5.2.bin", "fingerprint": "99f71379dec893fbe109832a1150f338660be686fe6b4903ff10ff751ba4e448", - "changelog": "* clean memory on start\n* fix storage import from older versions", - "notes": "https://blog.trezor.io/trezor-firmware-security-update-1-5-2-5ef1b6f13fed" + "changelog": "* clean memory on start\n* fix storage import from older versions" }, { "required": false, @@ -353,8 +331,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.4.0.bin", "fingerprint": "5764715dbcf8ed88bc0ae1c2f715277f22b67f26c15e1f7543b2b44913b5c255", - "changelog": "* U2F support\n* Ethereum support\n* GPG decryption support\n* Zcash support", - "notes": "https://blog.trezor.io/secure-two-factor-authentication-with-trezor-u2f-e940fd5a60af" + "changelog": "* U2F support\n* Ethereum support\n* GPG decryption support\n* Zcash support" }, { "required": false, @@ -363,8 +340,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.3.6.bin", "fingerprint": "03b559a758961b2bfd4443e6c36c10025268cf033ecd376fdd7a79ff658bf511", - "changelog": "* Enable advanced transactions such as ones with REPLACE-BY-FEE and CHECKLOCKTIMEVERIFY\n* Fix message signing for altcoins\n* Message verification now shows address\n* Enable GPG signing support\n* Enable Ed25519 curve (for SSH and GPG)\n* Use separate deterministic hierarchy for NIST256P1 and Ed25519 curves\n* Users using SSH already need to regenerate their keys using the new firmware!!!", - "notes": "https://blog.trezor.io/trezor-firmware-1-3-6-20a7df6e692" + "changelog": "* Enable advanced transactions such as ones with REPLACE-BY-FEE and CHECKLOCKTIMEVERIFY\n* Fix message signing for altcoins\n* Message verification now shows address\n* Enable GPG signing support\n* Enable Ed25519 curve (for SSH and GPG)\n* Use separate deterministic hierarchy for NIST256P1 and Ed25519 curves\n* Users using SSH already need to regenerate their keys using the new firmware!!!" }, { "required": false, @@ -373,8 +349,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.3.5.bin", "fingerprint": "7d5d2c7defb93081a7fb7a2d1e57677fbac2a3e3e50f22fa3ff83ec4ddaafd9d", - "changelog": "* Double size font for recovery words during the device setup\n* Optimizations for simultaneous access when more applications try communicate with the device", - "notes": "https://blog.trezor.io/trezor-firmware-1-3-5-allows-for-multisession-operation-cc4c25197855" + "changelog": "* Double size font for recovery words during the device setup\n* Optimizations for simultaneous access when more applications try communicate with the device" }, { "required": false, @@ -383,8 +358,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.3.4.bin", "fingerprint": "49e044eec84a9c210a09319d27a3ab8ba889ddeaa4d68f99d163f65267fce134", - "changelog": "* Screensaver active on ClearSession message\n* Support for NIST P-256 curve\n* Updated SignIdentity to v2 format\n* Show seconds counter during PIN lockdown\n* Updated maxfee per kb for coins", - "notes": "https://blog.trezor.io/trezor-firmware-1-3-4-enables-ssh-login-86a622d7e609" + "changelog": "* Screensaver active on ClearSession message\n* Support for NIST P-256 curve\n* Updated SignIdentity to v2 format\n* Show seconds counter during PIN lockdown\n* Updated maxfee per kb for coins" }, { "required": true, @@ -393,8 +367,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.3.3.bin", "fingerprint": "7fcee4c0459c22109f3fcfe0040148e9be6d30947f7fffb76c66cc500681257c", - "changelog": "* Ask for PIN on GetAddress and GetPublicKey\n* Signing speed improved", - "notes": "http://satoshilabs.com/old/news/2015-04-07-trezor-firmware-1-3-3-connect-api/" + "changelog": "* Ask for PIN on GetAddress and GetPublicKey\n* Signing speed improved" }, { "required": false, @@ -403,8 +376,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.3.2.bin", "fingerprint": "180656fbf94e43e0092eaf22c30ab3451a547b4213119bd62763dc97b94ad0d0", - "changelog": "* Fix check during transaction streaming\n* Login feature via SignIdentity message\n* GetAddress for multisig shows M of N description\n* PIN checking in constant time", - "notes": "" + "changelog": "* Fix check during transaction streaming\n* Login feature via SignIdentity message\n* GetAddress for multisig shows M of N description\n* PIN checking in constant time" }, { "required": false, @@ -413,8 +385,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.3.1.bin", "fingerprint": "8030e257fc4c75a8f4a0325f8ea37428dd8fc68a5f9ec5f8e2d1a0de328860cc", - "changelog": "* Optimized signing speed\n* Enabled OP_RETURN\n* Added option to change home screen\n* Moved fee calculation before any signing\n* Made PIN delay increase immune against hardware hacking", - "notes": "http://satoshilabs.com/old/news/2015-02-18-trezor-firmware-1-3-1-smart-property-notary-service-customized-home-screen/" + "changelog": "* Optimized signing speed\n* Enabled OP_RETURN\n* Added option to change home screen\n* Moved fee calculation before any signing\n* Made PIN delay increase immune against hardware hacking" }, { "required": false, @@ -423,8 +394,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.3.0.bin", "fingerprint": "1d417e1e99a4880f7e03b991cf318eebe7b6cb453d2f55b8112adc5fd1a8293c", - "changelog": "* Added multisig support\n* Added visual validation of receiving address\n* Added ECIES encryption capabilities", - "notes": "http://satoshilabs.com/old/news/2015-01-13-trezor-firmware-1-3-0-update-multisig/" + "changelog": "* Added multisig support\n* Added visual validation of receiving address\n* Added ECIES encryption capabilities" }, { "required": true, @@ -433,8 +403,7 @@ "min_bootloader_version": [1, 0, 0], "url": "firmware/t1b1/trezor-t1b1-1.2.1.bin", "fingerprint": "0f8685ee46632162b549eb22b99a1e4e013d6796ae536ea6acb877a491f564f6", - "changelog": "* Added stack overflow protection\n* Added compatibility with Trezor Bridge", - "notes": "http://satoshilabs.com/old/news/2014-08-01-trezor-firmware-1-2-1-released/" + "changelog": "* Added stack overflow protection\n* Added compatibility with Trezor Bridge" }, { "required": false, diff --git a/packages/connect-common/files/firmware/t2t1/releases.json b/packages/connect-common/files/firmware/t2t1/releases.json index 839fc6fcdb46..794eb39358e7 100644 --- a/packages/connect-common/files/firmware/t2t1/releases.json +++ b/packages/connect-common/files/firmware/t2t1/releases.json @@ -59,7 +59,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.6.0-bitcoinonly.bin", "fingerprint": "050526db604b9acceef2a5a8561bc99ecbe337909283ebb927b556d8e9b13872", "fingerprint_bitcoinonly": "54f084dab4be1e64dc2cb970a6de87969407e4d6c48d79acdcf5d374ec0f29d6", - "notes": "https://trezor.io/learn/a/trezor-device-firmware-update-april-2023", "changelog": "* Show source account path in BTC signing. \n* Address confirmation screen added to EIP712 signing flow. \n* Ability to reboot the device into bootloader mode directly, without needing to unplug the device. \n* Support for Ledger Live legacy derivation path \"m/44'/coin_type'/0'/account\". \n* Redesigned UI. \n* Homescreen now supports full-screen images. \n* Force basic attestation in FIDO2 for google.com." }, { @@ -71,7 +70,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.5.3-bitcoinonly.bin", "fingerprint": "4f57dca1abc1a60d82c4fef7c96e86d784fc7a1e5e3da724dd2ae4d14c6350bf", "fingerprint_bitcoinonly": "c094c84ba958129885fa725ee6ddb781b580fd2c7851e83aef9054ba4a10526c", - "notes": "https://blog.trezor.io/trezor-suite-and-trezor-model-t-firmware-update-november-2022-a0b30bb0abf5", "changelog": "* Add SLIP-0025 coinjoin accounts. \n* Show red error header when Trezor doesn't see USB data connection. \n* Add support for Zcash unified addresses. \n* Show fee rate when replacing transaction. \n* Optimize the signing of BTC transactions. \n* Support for Cardano CIP-36 governance registration format. \n* Extend decimals of fee rate to 2 digits. \n* Display only “sat” instead of “sat BTC”. \n* Fix sending XMR transaction to an integrated address. \n* Fix XMR primary address display." }, { @@ -83,7 +81,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.5.2-bitcoinonly.bin", "fingerprint": "659b1b698546fa63f24200e148b6f9a7044df31d11a0a5ec7c044f2dd83f4a27", "fingerprint_bitcoinonly": "76aa25f9602cfb03cd3e07a82ac09226344eb355355aec216295e43b675eedf7", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-august-2022-a4e3d76214c1", "changelog": "* Add support for Monero HF15 features. \n* Show the fee rate on the signing confirmation screen. \n* Support for Cardano Babbage era transaction items \n* Add \"Show All\"/\"Show Simple\" choice to Cardano transaction signing \n* Show thousands separator when displaying large amounts. \n* Fix Decred transaction weight calculation." }, { @@ -95,7 +92,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.5.1-bitcoinonly.bin", "fingerprint": "782d4934897018cac779eebb0d7c66e21da7789b9cd35e1f99f097bdfd9b7d33", "fingerprint_bitcoinonly": "db5d7b211532f717a32fe0b1bd3e3df6ad5464079a896a7f7492ab6e9e030bb5", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-may-2022-b1af60742291", "changelog": "* Support Electrum signatures in VerifyMessage.\n* Support Cardano Alonzo-era transactions (Plutus).\n* Bitcoin bech32 addresses QR codes have bigger pixels which are easier to scan.\n* EIP-1559 transaction correctly show final Hold to Confirm screen.\n* Trezor will refuse to sign UTXOs that do not match the provided derivation path (e.g., transactions belonging to a different wallet, or synthetic transaction inputs).\n* Zcash v5 transaction format." }, { @@ -107,7 +103,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.4.3-bitcoinonly.bin", "fingerprint": "a07f69d8d2065006a79c6b5636bd046496dbcb3820b41f1d604d8a4605ca4056", "fingerprint_bitcoinonly": "1744efccabd479526392b281b7e0fc7aa2b4ecb454007dff7ca8c1f8171fad90", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-december-2021-d1e74c3ea283", "changelog": "* Support Taproot.\n* Show address confirmation in SignMessage.\n* Support for advanced Cardano transactions and different derivations for compatibility.\n* Ethereum support for EIP712 (signing typed data)." }, { @@ -119,7 +114,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.4.2-bitcoinonly.bin", "fingerprint": "54ccf155510b5292bd17ed748409d0d135112e24e62eb74184639460beecb213", "fingerprint_bitcoinonly": "60fee3c9775d8ccf71099f6f7d277463efd128414cfb9be45656b1a26eeb7301", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-september-2021-a490f2ea16c1", "changelog": "* Support for Ethereum EIP1559 transactions.\n* Re-enabled Firo support.\n* Memory optimization of BTC signing and CBOR decoding.\n* Support for large Cardano transactions.\n* Remove Lisk." }, { @@ -131,7 +125,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.4.1-bitcoinonly.bin", "fingerprint": "84bc47bb197b3ae7bfb096f03d4a528ccf6c9ef4dfee0aac4022971e4ec91d68", "fingerprint_bitcoinonly": "fce4503fcadb68dc72144a562ec0a59e7c8d083e403e01bfc4c584161d79f596", - "notes": "https://blog.trezor.io/trezor-suite-launches-8958c1d37d33", "changelog": "* Security and major perfomance improvements.\n* Cardano fixes.\n* Fix red screen on shutdown." }, { @@ -143,7 +136,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.4.0-bitcoinonly.bin", "fingerprint": "d90265ee6d7d499c7d938b5322f71f27042da8a6fdaed54c224d31b65e868def", "fingerprint_bitcoinonly": "89c91287ab7a9cd3ec246b6822a0d04b7d40401abef706cccafbb7b98bd6a3d7", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-june-2021-c70aba9f0e3f", "changelog": "* Locking the device by holding finger on the homescreen.\n* Support PIN of unlimited length.\n* Allow decreasing the output value in RBF transactions.\n* Reduce memory fragmentation.\n* Update FIDO icons.\n* Improve wording when showing multisig XPUBs." }, { @@ -166,7 +158,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.3.5-bitcoinonly.bin", "fingerprint": "c0a6cacfed5c7a691314919c22307c29fbe9522071a9a28669769c014762d386", "fingerprint_bitcoinonly": "53e7ee5bfc75cfa6412d8de5461b1ea8d9b7e10970ce7cadae9cbb1e17bbb77d", - "notes": "https://blog.trezor.io/trezor-suite-and-firmware-updates-rbf-and-spending-now-live-c2f69c42d7f7", "changelog": "* Replacement transaction signing for replace-by-fee and PayJoin.\n* Support for Output Descriptors export.\n* Paginated display for signing/verifying long messages.\n* Show Ypub/Zpub correctly for multisig GetAddress.\n* Show amounts in mBTC, uBTC and sat denominations." }, { @@ -178,7 +169,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.3.4-bitcoinonly.bin", "fingerprint": "58b51a6587993965979a744f8fcd5c4761f11ce4bec6b059a5d56bd0987d6658", "fingerprint_bitcoinonly": "085acbba98163284ef86dea637f9442b924e80fea245f5ebb60d5aab3be2b7b6", - "notes": "https://blog.trezor.io/firmware-update-for-trezor-model-t-version-2-3-4-for-monero-hard-fork-c2ff972101d3", "changelog": "* This firmware only contains the changes needed after the latest Monero update (HF13) by introducing support for the CLSAG transactions." }, { @@ -190,7 +180,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.3.3-bitcoinonly.bin", "fingerprint": "46326222f8afcb82e1cd07867bc3bf8836f4e9d0f367e23b58d1e9bc32cd032e", "fingerprint_bitcoinonly": "dda77cd7893a5f413f8fc4b2f44d1d43ed4b26e8ced5e6e578cc6b302c1a2310", - "notes": "https://blog.trezor.io/firmware-updates-for-trezor-model-t-version-2-3-3-and-trezor-model-one-version-1-9-3-c94f7a3b6fea", "changelog": "* Advances the Passphrase feature by showing the entered passphrase on the Trezor screen before opening the wallet.\n* Adds support for Verge (XVG).\n* Drops support for Metaverse (ETP), GINcoin (GIN), Pesetacoin (PTC), and Zel (ZEL).\n* Introduces a hard limit on transaction fees to prevent accidentally paying extra hefty fees (the limit can be manually disabled).\n* Resolves the problems with generating the Crown addresses.\n* Re-enables spending altcoins from Bitcoin paths (fixing some compatibility issues with Bitcoin Cash wallets).\n* Fixes smaller issues with the user interface, customization, and more." }, { @@ -202,7 +191,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.3.2-bitcoinonly.bin", "fingerprint": "f5ccdca0cbe163ecb93df726da72b69abb93f70d24d295db00b3ca2738216160", "fingerprint_bitcoinonly": "389cb54fb6fc75489b788ad669ce51f41d47a67af54b8745a0dfe48da38a777f", - "notes": "https://blog.trezor.io/firmware-updates-for-trezor-model-t-version-2-3-2-and-trezor-model-one-version-1-9-2-f4f9c0f1ed7c", "changelog": "* Introduces 'Autolock' feature, which automatically locks the device to enforce the PIN entry after a certain period.\n* Updates the Cardano support to enable staking and other Shelley updates.\n* Reintroduces the ability to spend pre-Overwinter (2018) funds on Zcash-like coins.\n* Fixes compatibility issues with Casa and GreenAddress.\n* Adds support for multiple change outputs in outgoing transactions.\n* Improves some interface elements." }, { @@ -214,7 +202,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.3.1-bitcoinonly.bin", "fingerprint": "37178a5ec24e34f8a0599aebcadaf206af3ebadef2fc596665d617dd3e05a5db", "fingerprint_bitcoinonly": "41795ec196f74c5d6acecc09047a5eacf1dfca47b0aeaa8442a69568efe20ddb", - "notes": "https://blog.trezor.io/details-of-firmware-updates-for-trezor-one-version-1-9-1-and-trezor-model-t-version-2-3-1-1eba8f60f2dd", "changelog": "* Refactor Bitcoin signing" }, { @@ -226,7 +213,6 @@ "url_bitcoinonly": "firmware/t2t1/trezor-t2t1-2.3.0-bitcoinonly.bin", "fingerprint": "212929f63fe1393e2ff57e06537a38cff281e3cfb3a4e17235079e2f08871e6c", "fingerprint_bitcoinonly": "bddc0fd3b52fd32d94b776048f62b3d03dcb6ab90140e482a042a2863093115f", - "notes": "https://blog.trezor.io/details-of-firmware-updates-for-trezor-one-version-1-9-0-and-trezor-model-t-version-2-3-0-46deb141fc09", "changelog": "* Introduce Wipe code\n* Introduce SD card protection\n* Introduce passphrase cache\n* U2F UX improvements\n* Security fixes" }, { @@ -299,7 +285,6 @@ "url": "firmware/t2t1/trezor-t2t1-2.1.0.bin", "tags": ["security"], "fingerprint": "bb5b0308807b45d41d1e2ab66a468152997ad69a01099789d8a35e464cde999f", - "notes": "https://blog.trezor.io/firmware-updates-for-trezor-one-firmware-1-8-0-and-trezor-model-t-firmware-2-1-0-b9df91e048df", "changelog": "* Security improvements\n* Upgraded to new storage format\n* Ripple, Stellar, Cardano and NEM fixes\n* New coins: ATS, AXE, FLO, GIN, KMD, NIX,\n PIVX, REOSC, XPM, XSN, ZCL\n* New ETH tokens" }, { @@ -340,7 +325,6 @@ "url": "firmware/t2t1/trezor-t2t1-2.0.7.bin", "fingerprint": "f3a42e640e526fba6574fafa520fc7d97ef9f557d24da24d9a2ea4176a4c4164", "changelog": "* Bitcoin Cash cashaddr support\n* Zcash Overwinter hardfork support\n* NEM support\n* Lisk support\n* Show warning on home screen if PIN is not set\n* Support for new coins:\n - Bitcoin Private, Fujicoin, Vertcoin, Viacoin, Zcoin\n* Support for new Ethereum networks:\n - EOS Classic, Ethereum Social, Ellaism, Callisto, EtherGem, Wanchain\n* Support for 500+ new Ethereum tokens", - "notes": "https://blog.trezor.io/june-updates-trezor-devices-one-modelt-wallet-zcash-cashaddr-doge-8d98c2a73036" }, { "required": false, diff --git a/packages/connect/src/types/firmware.ts b/packages/connect/src/types/firmware.ts index b1d9d1d62618..50ed8bdba3fb 100644 --- a/packages/connect/src/types/firmware.ts +++ b/packages/connect/src/types/firmware.ts @@ -16,14 +16,13 @@ export type FirmwareRelease = { url: string; fingerprint: string; changelog: string | string[]; - changelogBtcOnly?: string | string[]; // Added later, may not be there for older releases + changelog_bitcoinonly?: string | string[]; // Added later, may not be there for older releases version: VersionArray; min_firmware_version: VersionArray; min_bootloader_version: VersionArray; bootloader_version?: VersionArray; url_bitcoinonly?: string; fingerprint_bitcoinonly?: string; - notes?: string; channel?: string; translations?: string[]; }; diff --git a/packages/suite-desktop-ui/package.json b/packages/suite-desktop-ui/package.json index 4c078010aec4..77fa8a637f54 100644 --- a/packages/suite-desktop-ui/package.json +++ b/packages/suite-desktop-ui/package.json @@ -28,7 +28,6 @@ "react": "18.2.0", "react-dom": "18.2.0", "react-helmet-async": "^2.0.4", - "react-markdown": "^9.0.1", "react-redux": "8.0.7", "react-router-dom": "^5.2.0", "styled-components": "^6.1.8" diff --git a/packages/suite-desktop-ui/src/support/DesktopUpdater/Available.tsx b/packages/suite-desktop-ui/src/support/DesktopUpdater/Available.tsx index d5c91fab6607..049270c298ca 100644 --- a/packages/suite-desktop-ui/src/support/DesktopUpdater/Available.tsx +++ b/packages/suite-desktop-ui/src/support/DesktopUpdater/Available.tsx @@ -1,8 +1,6 @@ -import ReactMarkdown from 'react-markdown'; - import styled from 'styled-components'; -import { Button, H2, variables, Link } from '@trezor/components'; +import { Button, H2, Link, Markdown } from '@trezor/components'; import { desktopApi, UpdateInfo } from '@trezor/suite-desktop-api'; import { borders } from '@trezor/theme'; @@ -23,47 +21,6 @@ const ChangelogWrapper = styled.div` max-height: 400px; overflow-y: auto; padding: 16px 20px; - color: ${({ theme }) => theme.TYPE_DARK_GREY}; - font-size: ${variables.FONT_SIZE.SMALL}; - font-weight: ${variables.FONT_WEIGHT.MEDIUM}; - text-align: left; - - h3 { - margin-bottom: 4px; - font-size: ${variables.FONT_SIZE.NORMAL}; - font-weight: ${variables.FONT_WEIGHT.DEMI_BOLD}; - } - - ul, - ol { - margin-bottom: 10px; - margin-left: 36px; /* hacky way to add enough indentation so it is rendered right of an emoji in a section heading */ - } - - li { - line-height: 1.57; - } - - li + li { - margin-top: 4px; - } - - /* - Styling similar to Link component. - It seems overriding via linkReference renderer doesn't work for some reason - */ - a { - cursor: pointer; - text-decoration: underline; - color: inherit; - - &:visited, - &:active, - &:hover { - text-decoration: underline; - color: inherit; - } - } `; const StyledLink = styled(Link)` @@ -145,7 +102,7 @@ export const Available = ({ hideWindow, isCancelable, latest }: AvailableProps) {latest?.changelog ? ( - {latest?.changelog} + {latest?.changelog} ) : ( )} diff --git a/packages/suite/package.json b/packages/suite/package.json index aa7b472f2060..69d25cde8134 100644 --- a/packages/suite/package.json +++ b/packages/suite/package.json @@ -98,7 +98,6 @@ "react-helmet-async": "^2.0.4", "react-hook-form": "^7.50.1", "react-intl": "^6.6.2", - "react-markdown": "^9.0.1", "react-qr-reader": "^2.2.1", "react-redux": "8.0.7", "react-router-dom": "^5.2.0", diff --git a/packages/suite/src/components/firmware/FirmwareOffer.tsx b/packages/suite/src/components/firmware/FirmwareOffer.tsx index 420d6d892e58..df79dd71ffde 100644 --- a/packages/suite/src/components/firmware/FirmwareOffer.tsx +++ b/packages/suite/src/components/firmware/FirmwareOffer.tsx @@ -71,7 +71,9 @@ export const FirmwareOffer = ({ customFirmware, targetFirmwareType }: FirmwareOf ? translationString('TR_CUSTOM_FIRMWARE_VERSION') : getFwUpdateVersion(originalDevice); - const isBtcOnly = originalDevice.firmwareType === FirmwareType.BitcoinOnly; + const isBtcOnly = + (targetFirmwareType !== undefined ? targetFirmwareType : originalDevice.firmwareType) === + FirmwareType.BitcoinOnly; const parsedChangelog = customFirmware ? null @@ -124,7 +126,7 @@ export const FirmwareOffer = ({ customFirmware, targetFirmwareType }: FirmwareOf type="hint" variant="nostyle" icon="EXTERNAL_LINK" - href={parsedChangelog.notes || changelogUrl} + href={changelogUrl} > diff --git a/suite-common/suite-utils/src/__tests__/parseFirmwareChangelog.test.ts b/suite-common/suite-utils/src/__tests__/parseFirmwareChangelog.test.ts index 44161b393d5d..327aeab7e88c 100644 --- a/suite-common/suite-utils/src/__tests__/parseFirmwareChangelog.test.ts +++ b/suite-common/suite-utils/src/__tests__/parseFirmwareChangelog.test.ts @@ -32,12 +32,9 @@ const releaseData: Omit = { url_bitcoinonly: 'firmware/1/trezor-1.9.4-bitcoinonly.bin', fingerprint: '867017bd784cc4e9ce6f0875c61ea86f89b19380d54045c34608b85472998000', fingerprint_bitcoinonly: '3f73dfbcfc48f66c8814f6562524d81888230e0acd1c19b52b6e8772c6c67e7f', - notes: 'https://blog.trezor.io/trezor-suite-and-firmware-updates-rbf-and-spending-now-live-c2f69c42d7f7', }; const resultData = { - notes: 'https://blog.trezor.io/trezor-suite-and-firmware-updates-rbf-and-spending-now-live-c2f69c42d7f7', - url: 'firmware/1/trezor-1.9.4.bin', versionString: '1.9.4', }; @@ -66,7 +63,7 @@ const parseFirmwareChangelogFixture: Array<{ { description: 'parses BTC-only changelog from array of strings', input: { - release: { ...releaseData, changelog: '', changelogBtcOnly: CHANGELOG_ARRAY }, + release: { ...releaseData, changelog: '', changelog_bitcoinonly: CHANGELOG_ARRAY }, isBtcOnly: true, }, result: { ...resultData, changelog: EXPECTED_STRING }, @@ -75,7 +72,11 @@ const parseFirmwareChangelogFixture: Array<{ description: 'parses universal (old) changelog for BTC when the changelogBtcOnly is missing', input: { - release: { ...releaseData, changelog: CHANGELOG_STRING, changelogBtcOnly: undefined }, + release: { + ...releaseData, + changelog: CHANGELOG_STRING, + changelog_bitcoinonly: undefined, + }, isBtcOnly: true, }, result: { ...resultData, changelog: EXPECTED_STRING }, @@ -84,7 +85,7 @@ const parseFirmwareChangelogFixture: Array<{ description: 'results to null for whole changelog data, when empty string is provided (trimmed)', input: { - release: { ...releaseData, changelog: ' \n ', changelogBtcOnly: undefined }, + release: { ...releaseData, changelog: ' \n ', changelog_bitcoinonly: undefined }, isBtcOnly: true, }, result: null, diff --git a/suite-common/suite-utils/src/parseFirmwareChangelog.ts b/suite-common/suite-utils/src/parseFirmwareChangelog.ts index ce8f68fe3647..f9897d8ed99f 100644 --- a/suite-common/suite-utils/src/parseFirmwareChangelog.ts +++ b/suite-common/suite-utils/src/parseFirmwareChangelog.ts @@ -6,19 +6,17 @@ export type ParseFirmwareChangelogParams = { }; export type ParseFirmwareChangelogResult = { - url: string; - notes: string | undefined; changelog: string; versionString: string; }; -type ChangelogField = keyof Pick; +type ChangelogField = keyof Pick; export const parseFirmwareChangelog = ({ release, isBtcOnly, }: ParseFirmwareChangelogParams): ParseFirmwareChangelogResult | null => { - const changeLogField: ChangelogField = isBtcOnly ? 'changelogBtcOnly' : 'changelog'; + const changeLogField: ChangelogField = isBtcOnly ? 'changelog_bitcoinonly' : 'changelog'; if ( release === undefined || @@ -30,15 +28,11 @@ export const parseFirmwareChangelog = ({ const changelogRaw = release[changeLogField] ?? release['changelog']; // For older releases we don't have the changelog for BtcOnly firmware so we fallback to universal const changelog = (Array.isArray(changelogRaw) ? changelogRaw.join('\n') : changelogRaw).trim(); - console.log('changelogString: "' + changelog + '"'); - if (changelog.length === 0) { return null; } return { - url: release.url, - notes: release.notes, changelog, versionString: release.version.join('.'), }; diff --git a/yarn.lock b/yarn.lock index b60683c2890f..0eb8b56938ef 100644 --- a/yarn.lock +++ b/yarn.lock @@ -11194,7 +11194,6 @@ __metadata: react: "npm:18.2.0" react-dom: "npm:18.2.0" react-helmet-async: "npm:^2.0.4" - react-markdown: "npm:^9.0.1" react-redux: "npm:8.0.7" react-router-dom: "npm:^5.2.0" styled-components: "npm:^6.1.8" @@ -11385,7 +11384,6 @@ __metadata: react-helmet-async: "npm:^2.0.4" react-hook-form: "npm:^7.50.1" react-intl: "npm:^6.6.2" - react-markdown: "npm:^9.0.1" react-qr-reader: "npm:^2.2.1" react-redux: "npm:8.0.7" react-router-dom: "npm:^5.2.0"