sdmm 1.7 -> 1.9
- Also updated sdmm config for future strictness changes
rust_g 0.46.x -> 3.9.0
- Ships the 3.9.0 windows dll for easy desktop dev. Removed the .so
because new versions are a large binary blob; instead these are fetched
from tgstation release build artifacts for tests, and can be collected
or preferably built locally for linux hosting.
Workflow OS targets updated from ubuntu-20 -> ubuntu-24
stefanzweifel/git-auto-commit-action v5 -> v6 to satisfy dependabot
Mislabeled actions/checkout 3 -> 4
Added cancel-in-progress concurrency rule to CI & label workflows
- Causes new runs of the workflows to cancel older runs still in
progress for a given ref (branch, pr, etc)
Where not using an official action, uses commit hash targets instead of
tags
Added permissions strictness to CI & labels workflows
Made workflows manually runnable
Added preflight change checks to CI workflow
- Only changes to byond sources, byond source validation, or version
definitions should trigger a full test of that matter
- Only changes to tgui sources or version definitions should trigger
a full test of that matter
* Adds linter defines to repo.
* Uncomments linter defines already in the code.
* Resolves unreachable code linter errors.
* Nukes decade+ old syndie specops code except for computer since that's mapped in?????
* Resolves procs has no parent linter error.
* Proc signature fixes
* Bad comments
* "In" danger
* Type safety
* Implied nested list abuse
* Top level ..() usage
* Sleepy coder typos
* Invalid kwargs calls
* Pointless returns
* Linter hacks (see full message)
Byond doesn't care and it has no effect but linter doesn't like var/proc
for holding references to procs, despite that it's valid byond code.
Also, the linter seems to have serious issues figuring out relative
proc names. This commit is a sort of take-it-or-leave-it thing. It's not
required, it just cuts down on warnings, but this code is valid DM code.
* WHATEVER THIS IS
* Trick dreamchecker linter into ignoring this file's sins in it's weird use of vars
* Fix list decoration syntax - Its a list, not list of lists
- To declare that a var is a list you can `var/list/blah = list()` syntax or the `var/blah[0]` syntax. Both do exactly the same thing. But if you do `var/list/blah[0]` that is just like doing `var/list/list/blah = list()`
* Hopefully stops the ai holder subtype folder from going quantum and sometimes changes capitalization over time, and incidentally causing 20+ linter errors.
* Fixes unwrapped negated object in list linter error.
* Resolves colon-like list accessing linter error.
* Turns linter on in linter config.
* Fixes closet indentation properly and cleans up suit storage unit switch.
Co-authored-by: Aronai Sieyes <arokha@arokha.com>
Co-authored-by: Leshana <Leshana@users.noreply.github.com>