userDaniel Pcancel
branchrust_reboot/main/hackweek_pool_analyzercancel

16 Commits over 0 Days - ∞cph!

16 Days Ago
Update: PoolAnalyzer - switch to release version - Release binary built from b189abf6 Tests: internal unit tests, started unity and ran compile simulator
16 Days Ago
Merge: from main
16 Days Ago
Merge: from main
19 Days Ago
Bugfix: fix 21 incorrect calls to Pool.Free instead of Dispose Tests: compiled all modes in editor, built standalone C and S
19 Days Ago
Update: PoolAnalyzer - added detections for IProto.Dispose not being called and calling Pool.FreeUnsafe instead of Pool.Free - debug binary build from b189abf6 (moved to new repo) Reported a bunch of warnings, going through them separately Tests: unit tests + started unity
20 Days Ago
Bugfix: fixing ~24 missing Pool.Free Tests: editor compile test, built C and S standalones
20 Days Ago
Buildfix: undefine local GetFromGrid method when in None mode Tests: None builds
20 Days Ago
Update: PoolAnalyzer - support ArgList syntax in ObjCreationSyntax - debug bin built from 0fbab248 C+S Editor now boots! Now to check individual modes Tests: unit tests + started editor
20 Days Ago
Update: PoolAnalyzer - further reduce false-positives - better escapes for await, try blocks, using statements - debug bin built from a2005dd2 Only 2 false-positives remaining in C+S Tests: unit tests and started unity
20 Days Ago
Update: PoolAnalyzer - in cases of assignment, scan all block hierarchy up to local var declaration block - debug binary built from cb708ddf Down to 15 confirmed false-positives (5 different types) Tests: unit tests + started unity
20 Days Ago
Update: PoolAnalyzer - check finally and using blocks - debug binary built from b28334fc Down to 48 potentially false-positive errors Tests: unit tests + started unity
20 Days Ago
Update: PoolAnalyzer - more escape cases - recursively process expression statements to detect deeply nested escape cases - add support for field initializer escapes - debug binary built from e61378eb Currently detecting 54 errors (still a bunch of false-positives present) Tests: unit tests + started unity
20 Days Ago
Update: PoolAnalyzer - escape analysis if assigned to a variable as part of method arg list - debug binary build from 8b392070 Currently seeing 60 errors in C+S (3 valid, 2 false-positives, rest unknown). Tests: unit tests + launched unity
20 Days Ago
Update: PoolAnalyzer - handle more valid cases - added support for Dispose handling - added if(obj != null) Free(ref obj) handling - added support for using directives (both scoped and inline) I give up on trying to handle local data flow involving pooled objects - there's just too much work here Tests: unit tests + started unity (our Pooling unit tests no longer flag false-positives, this was kind of funny)
20 Days Ago
Update: PoolAnalyzer - escape a bit more - don't analyze statements before Pool.Get call - escape analysis when pooled object is returned out of method - debug binary built from b8b556ae Tests: unit tests + started unity. still a bunch of false-positives, but found first legit bug
20 Days Ago
New: PoolAnalyzer - validates code around Pool usage - debug assembly built from e7281f13 Tests: detected errors, but those are false-positives (return of pooled object instance)