Commit Graph

72 Commits

Author SHA1 Message Date
PJB3005
927f05fd3b Robust native, compiled with ogg, opus, and vorbis 2026-01-10 23:22:13 +01:00
PJB3005
7f2ec17651 Okay, the Robust API thing didn't pan out. New plan.
It apparently broke clean builds, as the dependencies aren't in the project asset list or something anymore. I tried to fix this, but it seems impossible to do without relying on .NET SDK internals, as there's no point in the NuGet graph walk process that seems cleanly extensible.

Instead let's just do the much dumber thing: a bunch of .props files for content to import. Hooray!

This also means that I have to go through and *explicitly* disable transitive dependencies everywhere in RT. This thankfully isn't too hard.
2025-12-16 22:56:31 +01:00
PJB3005
0181988225 Update native dependencies
Holy shit
2025-08-18 22:20:17 +02:00
Pieter-Jan Briers
dfc4894c8b Dependencies update & cleanup (#5590)
* Dependencies update & cleanup

Fixes security vuln warnings etc

* Remove ILReader dependency

RIP in piss FastAccessors.
2025-01-08 02:19:27 +01:00
Vasilis
ce262d5ff8 Include a bat to launch the server (#5167) 2024-05-24 18:32:26 +02:00
Vasilis
033a617102 Requirement for https://github.com/space-wizards/space-station-14/pull/25569 (#4992) 2024-03-23 22:23:39 +01:00
Pieter-Jan Briers
0094040d68 Dependency update / fixes / skrungle bungle (#4825)
* Move to Central Package Management.

Allows us to store NuGet package versions all in one place. Yay!

* Update NuGet packages and fix code for changes.

Notable:

Changes to ILVerify.
Npgsql doesn't need hacks for inet anymore, now we need hacks to make the old code work with this new reality.
NUnit's analyzers are already complaining and I didn't even update it to 4.x yet.
TerraFX changed to GetLastSystemError so error handling had to be changed.
Buncha APIs have more NRT annotations.

* Remove dotnet-eng NuGet package source.

I genuinely don't know what this was for, and Central Package Management starts throwing warnings about it, so YEET.

* Fix double loading of assemblies due to ALC shenanigans.

Due to how the "sideloading" code for the ModLoader was set up, it would first try to load Microsoft.Extensions.Primitives from next to the content dll. But we already have that library in Robust!

Chaos ensues.

We now try to forcibly prioritize loading from the default ALC first to avoid this.

* Remove Robust.Physics project.

Never used.

* Remove erroneous NVorbis reference.

Should be VorbisPizza and otherwise wasn't used.

* Sandbox fixes

* Remove unused unit test package references.

Castle.Core and NUnit.ConsoleRunner.

* Update NUnit to 4.0.1

This requires replacing all the old assertion methods because they removed them 🥲

* Mute CA1416 (platform check) errors

TerraFX started annotating APIs with this and I can't be arsed to entertain this analyzer so out it goes.

* Fine ya cranky, no more CPM for Robust.Client.Injectors

* Changelog

* Oh so that's what dotnet-eng was used for. Yeah ok that makes sense.

* Central package management for remaining 2 robust projects

* Ok that was a bad idea let's just use NUnit 3 on the analyzer test project

* Oh right forgot to remove this one

* Update to a newer version of RemoteExecutor

* Disable RemoteExecutor test

https://github.com/dotnet/arcade/issues/8483 Yeah this package is not well maintained and clearly we can't rely on it.

* Fix immutable list serialization
2024-01-12 22:59:52 +01:00
Pieter-Jan Briers
4c79d0c6d0 .NET 8 (#4712) 2023-12-15 18:07:41 +01:00
metalgearsloth
24b0165ec9 Revert Arch (#4613) 2023-11-27 21:41:01 +11:00
metalgearsloth
7dce51e2cf Arch PR two electric boogaloo (#4388)
Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2023-11-23 14:29:37 +11:00
Kevin Zheng
d51a18c6ea Fix build with USE_SYSTEM_SQLITE (#4266) 2023-08-24 18:55:54 +02:00
DrSmugleaf
d3dc89832a Add component that lets entities ignore BUI range checks (#4264) 2023-08-16 15:41:01 +10:00
Pieter-Jan Briers
65c6bb74eb Mark a bunch of NuGet dependencies as private compile assets (#4258) 2023-08-13 07:22:14 +10:00
Pieter-Jan Briers
d7ee2bccd7 Use TerraFX.Interop.Windows in Shared. 2023-07-15 15:20:32 +02:00
Pieter-Jan Briers
f5cf39907a Update server SQLitePCLRaw to 2.1.4 2023-04-05 20:05:36 +02:00
Pieter-Jan Briers
23fd4e1843 Refactor MSBuild spaghetti, new configurations. (#3807) 2023-03-06 11:12:08 -08:00
Pieter-Jan Briers
4e0deb2e42 Enable server GC by default on server. 2022-11-19 19:23:39 +01:00
Pieter-Jan Briers
4a003eaec0 Try to fix publishing self-contained executable issues. 2022-11-17 23:19:17 +01:00
DrSmugleaf
45a315bb69 Add command to profile entity spawning (#3404) 2022-10-30 14:09:30 +11:00
Kevin Zheng
2898e1413b Add build property to use system SQLite3 (#3298) 2022-10-08 00:15:49 +02:00
Pieter-Jan Briers
20659789b0 Robust.Packaging system (#3016)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-09-14 19:39:00 +10:00
Pieter-Jan Briers
dec1495e1e Remove reference to ManagedHttpListener.
How did this ever compile?
2022-04-17 19:13:24 +02:00
Pieter-Jan Briers
1327d6bf25 Replace ManagedHttpListener submodule in favor of NuGet package.
It's SpaceWizards.HttpListener now!
2022-04-14 23:53:57 +02:00
metalgearsloth
93ae74b5a7 Update nuget dependencies (#2581) 2022-03-14 08:57:20 +01:00
metalgearsloth
973406b91d Cleanup contact code a lot (#2480) 2022-02-07 13:10:58 +11:00
Pieter-Jan Briers
2b79ef301d Add prometheus-net.DotNetRuntime for more detailed runtime metrics like GC pause times. (#2457) 2022-01-25 13:23:55 +01:00
Pieter-Jan Briers
5a6a16e7dc Upgrade Loki sink to 4.0.0-beta3.
This fixes many bugs with it.
2021-11-15 13:42:19 +01:00
Pieter-Jan Briers
dfd572a0aa Change Microsoft.Data.Sqlite reference to SQLitePCLRaw.bundle_e_sqlite, use version to fix .NET 6 build thing. 2021-11-11 18:23:16 +01:00
Pieter-Jan Briers
2a022f39bd Add system for loading extra serializer strings.
"fixture-0" comes up a LOT so we load this manually now.
2021-05-31 10:48:30 +02:00
Acruid
e16732eb7b Network View Bubble (#1629)
* Adds barbones culling.

* Visibility culling and recursive parent ent additions.
DebugEntityNetView improvements.
Visibility moved from session to eyecomponent.

* Multiple viewport support.

* Perf improvements.

* Removed old netbubble system from ServerEntityManager.
Supports old NaN system for entities leaving view.
Supports old SendFullMap optimization for anchored, non-updating Entities.

* Fixes size of netView box.

* Remove empty EntityManager.Update method.
Switching ViewCulling back to PLINQ.
2021-03-29 16:17:34 -07:00
Pieter-Jan Briers
d5199ec459 Update NuGet packages. 2021-02-25 12:06:05 +01:00
Pieter-Jan Briers
b449959865 Clean up bad project reference in Robust.Server 2020-12-21 03:15:45 +01:00
Pieter-Jan Briers
8f870403d2 Managed implementation of HttpListener. (#1460) 2020-12-21 02:51:04 +01:00
Pieter-Jan Briers
6296171b63 Move some shared engine properties to a new msbuild file. 2020-11-28 18:05:16 +01:00
Pieter-Jan Briers
2b39c05472 Return of the HttpListener. (#1423)
Microsoft isn't supporting NuGet-components ASP.NET Core ever since 3.x so using Kestrel is out.

New implementation is 100% thread pool compared to the old one which was a single specific thread.
2020-11-26 23:57:52 +01:00
Pieter-Jan Briers
124b447428 Update NuGet packages.
Most notably YamlDotNet which has performance improvements for large files such as our map files.
2020-11-26 02:19:11 +01:00
Pieter-Jan Briers
2ca5d30e9d C# 9.
Insert glasses joke here.
2020-11-24 00:50:38 +01:00
Pieter-Jan Briers
6b3beb3808 Forgot to enable unsafe on Robust.Server 2020-11-11 01:27:31 +01:00
Pieter-Jan Briers
aa64528a03 Auth (#1289)
* Some stuff for auth

* Holy crap auth works

* Enable encryption even if no auth token is provided.

It's still possible that the public key was retrieved over HTTPS via the status API, in which case it will be secure.

* Fix integration test compile.

* Secure CVar API.

* Literally rewrite the auth protocol to be minecraft's.

* Better exception tolerance in server handshake.

* Auth works from launcher.

* Fix some usages of UserID instead of UserName

* Fix auth.server CVar

* Kick existing connection if same account connects twice.

* Username assignment, guest session distinguishing.

* Necessary work to make bans work.

* Expose LoginType to OnConnecting.

* Fixing tests and warnings.
2020-09-29 14:18:12 +02:00
Acruid
64a3916c04 Added the Robust.Physics project.
Added BenchmarkDotNet to the Robust.UnitTesting project.
2020-08-09 13:43:57 -07:00
Pieter-Jan Briers
a2617312d9 Use Serilog internally for logging, add Grafana Loki log handler. 2020-07-10 20:55:31 +02:00
Tyler Young
9cbdd1058c Use CannyFastMath & Update Some Packages (#1130)
update a bunch of packages and use JetBrains.Annotations as private asset as needed

mark some hot math methods agg inline to benefit from loop opts

use FMA for interp

use canny min/max/clamp

make Quaternion NormalizeAngle fixed time and faster

clean up YamlDotNet references
2020-06-18 02:25:36 +02:00
Pieter-Jan Briers
0d3cd41382 Enable NRTs on Robust.Server (#1118) 2020-06-09 14:18:29 +02:00
Pieter-Jan Briers
3459e5fd0b Remove explicit x64 platform target to fix ARM64 builds. 2020-06-08 23:36:08 +02:00
Pieter-Jan Briers
dd0cb9f216 Prometheus metrics server.
Thanks to Redline for starting work on this and helping me out on Discord.
2020-06-08 00:12:23 +02:00
Pieter-Jan Briers
400dcb06fc Server scripting. 2020-04-30 00:06:59 +02:00
Tyler Young
a3a8a8b3cf Use Kestler for StatusHost (#966)
* implement StatusHost as a minimal Kestler based HTTP Rest service

break up and organize StatusHost

* handle weird disposal mechanics exposed by testing facility
2020-02-09 23:16:16 +01:00
Pieter-Jan Briers
e7ccef53de Update NuGet dependencies. 2020-01-20 20:41:01 +01:00
Pieter-Jan Briers
0e721feea3 Add --cvar command line option.
Also rewrote the command line parser to be manual. Removes a dependency, speeds it up, and actually makes --cvar capable of using a sane syntax.
2020-01-20 19:49:07 +01:00
Pieter-Jan Briers
d075c82041 Switch to C# 8 2019-12-17 16:06:46 +01:00