diff options
| author | sternenseemann <sternenseemann@systemli.org> | 2022-01-17 19:12:54 +0100 |
|---|---|---|
| committer | sterni <sternenseemann@systemli.org> | 2022-01-19 00:50:06 +0100 |
| commit | 48965506a1ac5b0a08a0224551e8604c323691d1 (patch) | |
| tree | d957fc79688fb02a7c06249e2bbe343ae8faa6da /pkgs/development/python-modules/rangehttpserver | |
| parent | 6733a4dffa4341cd714e97b403f77367d1abf977 (diff) | |
lib/asserts: use throw to display message for assertMsg
`assert` has the annoying property that it dumps a lot of code at the
user without the built in capability to display a nicer message. We have
worked around this using `assertMsg` which would *additionally* display
a nice message. We can do even better: By using `throw` we can make
evaluation fail before assert draws its conclusions and prevent it from
displaying the code making up the assert condition, so we get the nicer
message of `throw` and the syntactical convenience of `assert`.
Before:
nix-repl> python.override { reproducibleBuild = true; stripBytecode = false; }
trace: Deterministic builds require stripping bytecode.
error: assertion (((lib).assertMsg (reproducibleBuild -> stripBytecode)) "Deterministic builds require stripping bytecode.") failed at /home/lukas/src/nix/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/default.nix:45:1
After:
nix-repl> python.override { reproducibleBuild = true; stripBytecode = false; }
error: Deterministic builds require stripping bytecode.
Diffstat (limited to 'pkgs/development/python-modules/rangehttpserver')
0 files changed, 0 insertions, 0 deletions
