1
0
mirror of https://github.com/trezor/trezor-firmware.git synced 2025-01-17 10:51:00 +00:00
Go to file
matejcik a58823cc0c refactor(python): rework trezorlib protobuf codec
API-compatibility with the original one is retained.

Now that we don't need to keep code parity with core, we could do some
changes that make life easier.

All generated classes are now in one file. This makes github diffs more
readable, at the cost of somewhat complicating inspecting individual
classes; however, that is something we shouldn't be doing anyway.

Enums are now implemented as enum.IntEnum.

The original class-level FIELDS member was restored.

Each field is now defined via protobuf.Field, which is easier to work
with in the codec, AND we're not stuffing defaults and flags into the
same field.
2021-06-08 09:55:19 +02:00
.github feat(ci): add checks to github actions 2021-05-03 18:52:16 +02:00
ci ci: increase timeout for hardware T1 regular test 2021-06-04 13:10:51 +02:00
common chore(common/tools): drop outdated and unused CoinDef generator 2021-06-08 09:55:19 +02:00
core fix(core): exclude get/set U2F counter from BITCOIN_ONLY 2021-06-08 09:55:19 +02:00
crypto feat(crypto): add extra BIP32 test (test vector #4) (#1646) 2021-06-03 15:37:23 +02:00
docs ci: improve changelog check 2021-06-04 13:10:51 +02:00
legacy chore(common): disable Firo support 2021-06-04 11:38:18 +02:00
python refactor(python): rework trezorlib protobuf codec 2021-06-08 09:55:19 +02:00
storage refactor(core): move wait_random and rdi into separate file 2021-05-21 13:42:53 +02:00
tests refactor(python): rework trezorlib protobuf codec 2021-06-08 09:55:19 +02:00
tools refactor: rework pb2py generator 2021-06-08 09:55:19 +02:00
vendor feat(core): preallocate sys.modules to an appropriate size 2021-05-06 13:14:21 +02:00
.clang-format clang-format: set the IncludeBlocks setting to "Preserve" 2020-05-04 17:17:06 +02:00
.editorconfig style: add .editorconfig [skip ci] 2020-11-05 16:45:52 +01:00
.gitignore add .DS_Store to .gitignore (#900) 2020-03-11 20:22:56 +01:00
.gitlab-ci.yml ci: also run regular tt tests on hw 2021-02-05 12:58:21 +01:00
.gitmodules feat(common): add upstream Ethereum chains repository 2020-11-20 18:55:35 +01:00
.yamllint.yml fix(ci): truthy warning and removed travis file 2021-05-06 10:19:56 +02:00
build-docker.sh build(docker): add possibility to skip core/legacy/bitcoinonly builds 2021-05-04 16:09:03 +02:00
CODEOWNERS chore(github): remove myself from some CODEOWNERS parts 2021-02-23 08:35:29 +01:00
COMMITS.md docs: introduce conventional-commits (#1234) 2020-09-15 16:11:39 +02:00
CONTRIBUTING.md docs: add PR workflow info; move CONTRIBUTING to docs 2020-04-30 14:49:47 +02:00
COPYING docs: clear up licensing information 2021-03-31 18:51:52 +02:00
create_monorepo.py all: replace /bin/bash with /usr/bin/env bash 2019-09-12 17:35:55 +02:00
LICENSE.md docs: clear up licensing information 2021-03-31 18:51:52 +02:00
Makefile docs(core): use towncrier for generating CHANGELOG.md 2021-05-04 14:18:01 +02:00
poetry.lock docs(core): use towncrier for generating CHANGELOG.md 2021-05-04 14:18:01 +02:00
poetry.toml build: workaround poetry bug (KeyError) 2021-01-28 23:03:02 +01:00
pyproject.toml core: update deps, pin pillow to ^0.8 2021-05-06 13:14:21 +02:00
README.md chore(docs): update README 2021-02-19 20:04:11 +01:00
SECURITY.md docs: use monospace for fingerprints 2019-08-16 18:47:46 +02:00
setup.cfg style(core): use more recent type annotation syntax 2021-04-01 11:12:30 +02:00
shell.nix nix: unify ci/shell.nix and shell.nix 2020-07-03 12:32:55 +02:00

Trezor Firmware

img

Repository Structure

  • ci: Gitlab CI configuration files
  • common/defs: JSON coin definitions and support tables
  • common/protob: Common protobuf definitions for the Trezor protocol
  • common/tools: Tools for managing coin definitions and related data
  • core: Trezor Core, firmware implementation for Trezor T
  • crypto: Stand-alone cryptography library used by both Trezor Core and the Trezor One firmware
  • docs: Assorted documentation
  • legacy: Trezor One firmware implementation
  • python: Python client library and the trezorctl command
  • storage: NORCOW storage implementation used by both Trezor Core and the Trezor One firmware
  • tests: Firmware unit test suite
  • tools: Miscellaneous build and helper scripts
  • vendor: Submodules for external dependencies

Contribute

See CONTRIBUTING.md.

Using Conventional Commits is strongly recommended and might be enforced in future.

Also please have a look at the docs, either in the docs folder or at docs.trezor.io before contributing. The misc chapter should be read in particular because it contains some useful assorted knowledge.

Security vulnerability disclosure

Please report suspected security vulnerabilities in private to security@satoshilabs.com, also see the disclosure section on the Trezor.io website. Please do NOT create publicly viewable issues for suspected security vulnerabilities.

Documentation

See the docs folder or visit docs.trezor.io.