Enforce Calculus Linter Tags (#22469)

A not insignificant number of bugs caused when converting code to
calculus methods is me missing that a proc is getting called from a
different file entirely without passing in a seconds_per_tick value.
Byond will just gleefully let my calculus methods for code run with a
time delta of 0, which introduces all manner of exotic and fascinating
bugs.

So to better prevent this kind of issue from occuring, I'm adding a new
linter tag called ENFORCE_CALCULUS(seconds_per_tick) which loudly forces
unit test fails if a proc with the tag is called by a different proc
without correctly passing in the needed time delta. I have previously
run into this problem on occasion, such as in PR #22413
This commit is contained in:
VMSolidus
2026-05-23 20:07:43 +00:00
committed by GitHub
parent abe4a1b23c
commit 2e55dfd69c
3 changed files with 18 additions and 0 deletions
@@ -0,0 +1,4 @@
author: Hellfirejag
delete-after: True
changes:
- code_imp: "Added an ENFORCE_CALCULUS(seconds_per_tick) macro to help spot bugs in procs that use calculus methods."