userJames Kingcancel
branchsbox/mastercancel

468 Commits over 1,338 Days - 0.01cph!

1 Year Ago
Added failing test for hotloading constructed generic MethodInfos Fixed hotloading generic MethodInfos Added extra test for MethodInfos with generic declaring types Added more delegate hotloading tests, one failing Fixed hotload case with lambdas in generic declaring type Fixes #759
1 Year Ago
Stop watching assemblies swapped with null More compiler name consistency fixes Skip assemblies that depend on a swapped assembly Warn when two versions of the same named assembly are watched Log all hotload messages if hotload_log >= 2 Include build number in runtime compiled assemblies To help with debugging Made Hotload.WatchedAssemblies / Hotload.WatchedInstances private Clear invalidated cached fields in DefaultUpgrader on hotload start Hotload logging tweaks, package assembly names include version Simplify auto-watching logic when replacing assemblies Fixed failing hotload test, better swapped asm reference check Unwatch assemblies swapped with null Added hotload tests for auto-watching assemblies
1 Year Ago
Check substitute types don't inherit from a swapped-out type If type substitution fails in DefaultUpgrader, just substitute null Fixed possible NRE in ReflectionUpgrader.GetMatchingMember Fixed recompiling addons that reference a changed addon
1 Year Ago
Use namespace alias operator in hotload tests
1 Year Ago
Failing test involving resolving method with namespaceless parameter Fixed resolving methods with namespaceless parameter types
1 Year Ago
Fixed VarClass sometimes getting stuck rebuilding every frame NeedsRebuild was getting set to true during the rebuild, so it'd keep doing it every tick
1 Year Ago
Failing async method test Better support for parsing generated names with generic parameter count Hotload generated name refactor, fixing async state machine types
1 Year Ago
Failing test for lambdas declared in non-swapped generic methods But with swapped type parameters Fixed test in 8a2bb255285d1e47c1314b70cd47f5ef92a2b21d Log error when encountering unhandled generated types
1 Year Ago
Implemented a simple assembly resolver for Tools Allows hotload to make more valid substitutions Cleanup Failing hotload tests for lambdas in static constructors Fixed finding scope method ordinals of static constructors Stop expecting every method to have a scope ordinal Fixed IsMatchingType(typeRef, type) with nested types Fixed ResolveMethod() with a static constructor ref Fix upgrading lambda display class instances that are found in the wild GetNewType consistency Now returns null to mean a substitution couldn't be found Added failing generic delegate test Organised and documented delegate hotloading tests Fixed AreEqualTypes when exactly one param is null AreEquivalentTypes(old, new) refactor Fixed finding substitutions for generic parameters
1 Year Ago
Always use addon map list for map leaderboards in menu
1 Year Ago
Add scrolling to leaderboard list in menu
1 Year Ago
Limit main menu leaderboard list to 5 items for now
1 Year Ago
Show all leaderboards in menu again Basic support for {map} leaderboard name substitution Only supported for MapSelect.Official
1 Year Ago
Added hotload_log engine convar
1 Year Ago
Whitelist TextWriter and StringWriter StringWriter only writes to memory. I'm leaving StreamWriter forbidden for now.
1 Year Ago
Allow sending compiled shaders to clients
2 Years Ago
Added test for adding properties with default values Support for log value histograms https://files.facepunch.com/ziks/2022-10-10/sbox-dev_YnroiYzjt5.png
2 Years Ago
Add Hotload.AssemblyResolver, warn if not assigned when needed Set HotloadManager.AssemblyResolver for client / menu / server
2 Years Ago
Fixed some histograms being offset horizontally Only show histogram markers that are in range
2 Years Ago
Fall back to fetching top scores if no scores around user
2 Years Ago
Added Leaderboard.GetHistogram() Basic leaderboard histogram drawing Show markers on friend scores in histogram
2 Years Ago
Check type inits before loading an assembly Facepunch/sbox-issues#2313
2 Years Ago
In-game leaderboard UI tweaks with title / player count https://files.facepunch.com/ziks/1b1011b1/sbox_zdvdjjzfiN.png
2 Years Ago
New Leaderboards API wraps Steam Leaderboards
2 Years Ago
Fixed ambiguous property match in HasSkipHotloadAttribute Fixed PropertySheet AmbiguousMatchException Would happen if a subclass redeclared a property with "new"
2 Years Ago
Added TrustedBinaryStream * Required by AssemblyRegistation * Only created by AccessControl Rename `AssemblyRegistation` to `AssemblyRegistration` Move TrustedBinaryStream to Sandbox.Access, so it's hidden from users
2 Years Ago
▅▍▌▌ ▉▉▄▍▍▉▇▆▋▍▇ #▊█▋ ! ▄▊▋▉▌ ▊█▆▌▌▇ ▉▌▋▆▉▇█ ▇▊▇ ▊▄▌▆▊▄ ▋▆ ▆▉▅▄▌▇▋▋, ▊▅▆▇▇ #▊▅▊
2 Years Ago
Allow loose .txt and .csv files in published addons
2 Years Ago
Added TypeDescription.GetAttributes<T>()
2 Years Ago
Fixed -tools not starting if `ServerAddons.TryAdd()` returns null
2 Years Ago
Added Color[32].FromRgb[a] Color[32] property consistency cleanup Added some Color[32] tests
2 Years Ago
Move hotload unsupported warnings to Sandbox.Generator
2 Years Ago
Added warning for static fields in generic types
2 Years Ago
Fixed some addon DLLs not getting watched Introduced by bb5359a20
2 Years Ago
Added failing hotload static primitive field test Repros Facepunch/sbox-issues#1918 Fixed hotloading static fields of auto-skipped types Fixes Facepunch/sbox-issues#1918
2 Years Ago
Fixed hotloading concurrent containers EntityManager.OnHotloaded safety Handle entities being added / removed during the event.
2 Years Ago
Fixed possible exception in ToTitleCase()
2 Years Ago
ToTitleCase(string) tests Use memoization for short strings in ToTitleCase More ToTitleCase tests
2 Years Ago
More persistent caching between hotloads HotloadManager name consistency
2 Years Ago
Added failing hotload test for static initonly HashSets Added ConcurrentQueueUpgrader Fixed in-place hotload of a HashSet<T> Allow individual types to be added to hotload SkipUpgrader Skip hotload for types in System.Net.Http and System.Text.RegularExpressions Fixed some false negatives when checking if a type is blittable Added ConcurrentDictionaryUpgrader, fixed ConcurrentQueueUpgrader Only start addon worker threads when first needed Make sure hotload verbose log works with and without -tools Cache which static fields need to be watched in hotload Some extra timing info for hotload Added InstanceUpgrader.GetUpgraderOrDefault<T>() DefaultUpgrader field caching, now uses auto-skip
2 Years Ago
Fixed verbose hotload log formatting
2 Years Ago
Fix error in JsonSerializerOptionsUpgrader on hotload
3 Years Ago
Added HasSkipHotloadAttribute() helper method ArrayUpgrader now checks AutoSkipUpgrader Added SkipHotload to Arguments array in LogEvent Fixed AutoSkipUpgrader check in ArrayUpgrader Fixed DelegateUpgrader missing some replacements AutoSkipUpgrader is now optional for ArrayUpgrader
3 Years Ago
Added failing test involving JsonSerializerOptions Moved special handling hotload upgraders Special json hotload handling, fixes #213 Fixed bug hotloading lambdas in generic methods
3 Years Ago
AsyncTasks tests stability
3 Years Ago
More helpful worker task yielding error Merge branch 'master' of sbox
3 Years Ago
Expirable SyncContext refactor * Rename MainThreadContext to ExpirableSynchronizationContext * ExpirableSynchronizationContext supports having multiple live instances on different threads * Added SyncContext static class to handle resetting on session end * MainThreadContext.Instance is now SyncContext.MainThread etc More control over addon tasks running on worker threads * Added an ExpirableSynchronizationContext for worker tasks * WorkerThread.Start() spawns a bunch of long running tasks to process addon tasks off the main thread * WorkerThread.Stop() causes those worker tasks to exit, can be restarted later * Stop worker threads during hotload * Fixed case where addon tasks that refuse to cancel could keep running forever on a worker thread Fixed errors after rebase
3 Years Ago
Exposed hotload skip attrib and callback interfaces Deleted empty INotice.cs Added cl_hotload_log and sv_hotload_log console vars Fixed possible NRE when setting up console vars SkipHotloadAttribute now supports properties Fixed hotload test assemblies having wrong package ID Replaced hotload callback interfaces with IHotloadManaged Destroyed() returns a state dictionary that is passed to Created() in the new instance Don't let Hotload see some sensitive fields IHotloadManaged.Destroyed() now passes in a dictionary ready for use
3 Years Ago
Don't let Hotload see some sensitive fields
3 Years Ago
Allow menu tasks to persist between sessions