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

More Assertions #463

Open
gheskett opened this issue Jul 22, 2022 · 1 comment
Open

More Assertions #463

gheskett opened this issue Jul 22, 2022 · 1 comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request high priority Important, non-critical issue or feature / high priority
Milestone

Comments

@gheskett
Copy link
Collaborator

This is about as close as we're gonna get to test cases. Also good for helping out inexperienced hackers to diagnose crashes in common cases such as bad warp nodes.

There should be three types of assertions used:

  • Static assertions (i.e. compile time)
  • Debug assertions (run only if using debug features)
  • Release assertions (run always).
@gheskett gheskett added documentation Improvements or additions to documentation enhancement New feature or request labels Jul 22, 2022
@gheskett gheskett added this to the 2.2 milestone Jul 22, 2022
@gheskett gheskett pinned this issue Jul 25, 2022
@gheskett gheskett added the high priority Important, non-critical issue or feature / high priority label Jul 25, 2022
@gheskett
Copy link
Collaborator Author

gheskett commented Jul 25, 2022

Pinning this issue because this is an effort that should be considered by everybody starting immediately. There's no hard completion case here, but more assertions should in theory mean a more stable repo.

Most runtime assertions should only be active with non-release builds. There may be some situations where they should run in all cases, but this can come with a performance downside if they're placed in the wrong spots.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request high priority Important, non-critical issue or feature / high priority
Projects
Status: To do
Development

No branches or pull requests

1 participant