19,646 Commits over 4,018 Days - 0.20cph!
Update package usage every 10 minutes
Update application insights
Update packages
Hard configure AI
Better instrumentation
Fix NRE when a package has no version
Add references and editor references to searchable index
Can search for packages that reference other packages using ref:packagename
Add Package.EditorReferences
Store PackageReferences
Return PackageReferences in api
Show package references on revision page
Show compile errors when publishing and there are compile errors (!)
When we have multiple gamemanager classes, prioritize the one from the current game package
When publishing don't include package.base if we're referencing another game
When an API deserialization fails, provide some context in the error message
Allow projects to reference any package type
Keep more log files
NeedsLocalBasePackage return false if we're not a game or are referencing a game
Compilers can reference packages
Add Project/AddGameWithPackageBase unit test
Razor directive errors report the file + location properly in visual studio instead of showing CSC
Fixed access control unable to resolve System.Threading, System.Memory
Fix hardcoded refs path 🤦♂️
Add TargetFramework attribute to compiles
Add ref dlls for compile
Compiler uses ref dlls
Skip auto-referencing base addon if referencing a gamemode
Rebase fixes
Remove all that manifest stuff - just use GetPackage with a #version
GetHttpRequestData hack isn't needed anymore
Add manifest api
Lock call to SetNeedsPreLayout in thread to see if this is what's causing amd stuff
Re-organize boostrap to init editor addons before showing the window
Ignore some other folders in NetworkAssetList
Don't include local packages in server required content
Fix not removing local packages when disabled
If we're holding run down, play run animation - else always walk
Add CitizenAnimationHelper.MoveStyle
Add System.Diagnostics.UnreachableException to whitelist
When client joining server - prioritize remote packages
Panel classes are hashes instead of strings - which theoretrically should speed up HasClasses checks - but untested so putting it on a branch
Fix not updating layout on screen scale changes
Remove Panel.SetNeedsFinalLayout
Remove PanelStyle.sortedRules, no need to reverse AllStyleSheets
Build style rules in parallel (prevent ui hitching)
HashSet benchmarks
Tools always load local packages on active
Fix loading addons in tools registering their events + cleanup Hammer package integration
Give a warning when hotloading asset but couldn't load json
Fix exception when reporting exception in event.run
Report and skip when failed to install a local package
Wrap initial package loading in a try get and noisily ignore load errors instead of bootstrap init false
When loading a tool package, load toolbase too
Fix startup error when no ContentPath
Package cleanup (#887)
Added singleton PackageManager which handles all package downloading, installing. LocalProjects are self compiling and their assemblies are used to mock a Package.
LUT fix
Remove unused
Documentation
Use robocopy to copy for the unit test project, because chatgpt says it's faster than xcopy
Turn the Log.Info's into Log.Trace's
More debug outputs
Compile to AnyCpu
Save addon.json when adding a project manually to update paths
Rename first page of publish wizard to make it more obvious that it's a wizard
Don't allow progress if there aren't any asset files - this indicates an issue
Fix game configuration not getting updated live when editing project settings
Highlight project that isn't compiling
https://files.facepunch.com/garry/313f4b6a-131b-42a1-9573-f7fecd3a2ed6.png
Local project compiles can partially succeed - which means that one broken addon doesn't destroy the whole startup
Remove GameExtensionsPage (confusing, redundant)
Delete unused files from visbuilder
Apply scale of ScaleAndMirror to particle nodes in ModelDoc
(Shift+)Tab scrolls TextEntry autocomplete
Addresses sboxgame/issues/issues/1190
Update cache optimized kd node
Placeholder icons for local projects
Addresses sboxgame/issues/issues/2468
Vis3: Use large bit vec for grid set storage and restore log warning about accessing bit out of range (this should never happen now)
Disable detailed hotload diagnostics unless hotload_log >= 2
Fixed game resource editor completely rebuilding when editing values
Fixes drag-editing floats for example not really working for sound scapes, etc
Increase default size of GameResource editor
So that soundscape editor is not squished and basically unusable without editing width every time
Fix WebPanelTest throwing NRE in debugger
.editorconfig changes to match Valve coding style better
Delete IVfx::GetAllShaderVariables was only used for dynamic shader compiles
Non Pow2 textures are allowed so make sure the tex coord scale gets set
Auto upgrade "shader" kv in vmat source instead of just compiled, e.g "vr_complex.vfx" -> "shaders/complex.shader_c"
Recompile all assets - mainly upgrading legacy shader names
Make PlatformEntity.StartMoveBackwards/Forwards actually start moving, not just set direction
Prefabs: Add Scale control to Root Entity and don't reset it back to 1 when opening editor https://files.facepunch.com/devultj/1b2611b1/sbox_IEHx2r0LU0.mp4
Remove large_crate assets
Hair_Longbrown Test files
Fix precache error
Add test DownloadPackagesWithMatchingFiles and fix
Delete ServerContent class (unused)
Merge branch 'master' into package-cleanup
Delete BaseContent, PackageContent - client + server handle new packages being added
Don't add built in tool projects if not in editor mode
Fixed FileSend reading from the wrong filesystem
Don't try to send base content (like base addon shaders) that the client should already have via fileserv
Treat BuiltIn projects differently, hide them in the project just by default
This isn't indicative of a cyclic dependency
Fix everywhere I spelt dependency wrong
Try to load local packages first when a package has a reference (this needs more thought though)
Add RuntimeAddonReferencingRuntimeGame test
Fix AddGameProject test (path change)
Fix solution not generating
Add `global using static Sandbox.Internal.GlobalGameNamespace` to base addon
Wait for sln to be generated