Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docs page on testing #639

Open
jcrist opened this issue Jan 26, 2024 · 0 comments
Open

Docs page on testing #639

jcrist opened this issue Jan 26, 2024 · 0 comments

Comments

@jcrist
Copy link
Owner

jcrist commented Jan 26, 2024

There's been some FUD messaging by other projects against msgspec as an unsafe C project. While it's written in C, safety is a spectrum and we're definitely not careless about security issues here. It would be good to write up a docs page on our testing setup to hopefully allay safety concerns. We should cover:

  • Our high test coverage (full coverage in critical sections of the parsers)
  • Our fuzz testing setups
  • Our use of sanitizer tooling
  • Our track record. Some purportedly safe rust projects make enough incorrect use of unsafe to not actually guarantee safety, leading to a number of segfault issues over the years.

This is not to minimize the benefit a safe language like rust provides (rust is good! and C does have footguns). But all C code is not the same and this project should definitely not be treated as "definitely unsafe, don't touch". All software is tradeoffs - if you need the performance benefits msgspec provides and can tolerate a "we're trying our best using the tooling available, no CVEs so far" level of guarantee, then maybe msgspec is a tool worth considering.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant