Mercurial > hg
annotate pyproject.toml @ 50682:2cc5de261d76
rust-hg-core: move from `ouroboros` to `self_cell`
`ouroboros` has a fundamental soundness problem that, while not applicable
today, could become applicable given new compiler optimizations.ยน
`self_cell` is a crate that accomplishes a lot of the same things that
`ouroboros` did while remaining sound (that is, unless a new soundness issue
is discovered) by not assuming as much about the memory layout of the program.
`self_cell` has been scrutinized heavily in the past few months by very
competent people, some from the compiler team and has shown no weaknesses
for a while, with a 1.0 stable release coming out a couple months ago.
Our internal API is exactly the same, this is just an implementation detail.
To reiterate, no actual soundness issue was found with our use of `ouroboros`,
but there might be evolutions of `rustc` (or even a future separate compiler)
that could generate unsound code.
[1] https://github.com/joshua-maros/ouroboros/issues/88
author | Raphaël Gomès <rgomes@octobus.net> |
---|---|
date | Mon, 12 Jun 2023 23:41:28 +0200 |
parents | 58fe6d127a01 |
children |
rev | line source |
---|---|
46381 | 1 [build-system] |
2 requires = ["setuptools", "wheel"] | |
46382
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
3 |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
4 [tool.black] |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
5 line-length = 80 |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
6 exclude = ''' |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
7 build/ |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
8 | wheelhouse/ |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
9 | dist/ |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
10 | packages/ |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
11 | \.hg/ |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
12 | \.mypy_cache/ |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
13 | \.venv/ |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
14 | mercurial/thirdparty/ |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
15 ''' |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
16 skip-string-normalization = true |
d4c8b4b90ecb
black: merge config into main pyproject.toml now that we have it
Augie Fackler <augie@google.com>
parents:
46381
diff
changeset
|
17 quiet = true |