Commit Graph
1153 Commits
Author SHA1 Message Date
metalgearslothandGitHub 338825c8e7 Add Pure attr to EntityLookup bounds methods (#6622) 2026-06-09 16:54:31 +02:00
PJB3005 08a3d120b7 Version: 277.0.0 2026-05-08 19:54:05 +02:00
PJB3005 05d7b3234a Update release notes 2026-05-08 19:45:04 +02:00
f68abaab68 EntityManager Singleton methods (#6445)
* Implement the singleton methods.

* Fix API + Tests.

* Move remark.

* Typo fix + Proxies.

* Pause remarks.

* No, really, we don't obey paused!

* Release notes.

* testdocs.

* Poke

* The API design axe.

* Update Robust.Shared.IntegrationTests/GameObjects/EntityManagerSingletonTests.cs

Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>

* Remove unused doc comment blerb

---------

Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
2026-05-08 12:49:54 +02:00
b4eb85ad3c [Dependency] source generator (#6549)
* [Dependency] source generator

No more reflection, no more codegen at runtime

Also various changes to Roslyn helpers to make this easier to write.

Requires all types with dependencies to be partial and not have readonly dependency fields. An analyzer enforces this at warning level, the previous injection strategies have remained in the code *for now* as a fallback.

No fallback is available for [field: Dependency] properties, due to a Roslyn bug.

Code Fixes exist. We love Roslyn

* Release notes

* Handle nullable dependencies

These are bad but gotta deal with it.

* Apply suggestions from code review

Co-authored-by: Moony <moony@hellomouse.net>

* Fine, let's not use collection expressions

---------

Co-authored-by: Moony <moony@hellomouse.net>
2026-05-08 12:38:02 +02:00
Pieter-Jan BriersandGitHub 9b595eb979 Analyzer to detect nullable dependency fields (#6553)
* Analyzer to detect nullable dependency fields

Does nothing, no point in it.

* Release notes
2026-05-07 21:44:11 +02:00
PJB3005 4d9bfb146e Make ComponentNetworkGenerator use IPartialTypeInfo
Allows it to support internal types and probably more stuff.
2026-05-05 22:02:59 +02:00
PJB3005 83c05413e8 Add MarkupNode.IsPlainText helper
Was reviewing https://github.com/space-wizards/RobustToolbox/pull/5633 and figured this would make sense.
2026-05-05 19:20:22 +02:00
ff4edd0423 Allow static abstract through the sandbox + INumber (#6432)
* Allow `static abstract`.

* Allow BigInteger + INumber family of interfaces and classes.

* Spurious test fail.

* Further sandbox additions..

* Release notes.

* Fix typo

---------

Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2026-05-05 19:02:15 +02:00
Tayrtahn 46a56ce348 Version: 276.0.0 2026-04-30 16:29:08 -04:00
Tayrtahn cd83f45fc8 Release notes 2026-04-30 16:28:08 -04:00
TayrtahnandGitHub 1666a3a704 Fix BUI EntitySystem injection (#6515)
* Disable injection when creating BUI instances (the constructor will take care of it)

* Comment

* Release note
2026-04-07 12:51:03 -04:00
Tayrtahn 3136118b53 Version: 275.2.0 2026-03-29 00:06:32 -04:00
Tayrtahn ecf409cd19 Release notes 2026-03-29 00:04:30 -04:00
Tayrtahn a12555988a Version: 275.1.0 2026-03-27 22:33:30 -04:00
Tayrtahn 6ca6843b18 Release notes 2026-03-27 22:32:56 -04:00
Tayrtahn dad56301e1 Version: 275.0.0 2026-03-27 00:54:04 -04:00
Tayrtahn b3bcfea73f Release notes 2026-03-27 00:52:53 -04:00
juliangiebel f3e48c97a9 Add release notes for v274.0.1 2026-03-24 21:40:31 +01:00
juliangiebel ae3616336f Version: 274.0.1 2026-03-23 20:50:58 +01:00
Tayrtahn cc5d7503b3 Version: 274.0.0 2026-03-16 15:42:07 -04:00
Tayrtahn a2657a730f Release notes 2026-03-16 15:29:19 -04:00
477efaca7a Improve test CI and reduce test log spam. (#6447)
Co-authored-by: Tayrtahn <tayrtahn@gmail.com>
2026-03-16 00:33:36 +01:00
d529de6b6f Fix completions for entity prototypes. (#6435)
Co-authored-by: Simon <63975668+Simyon264@users.noreply.github.com>
2026-03-13 20:24:22 +01:00
MoonyandGitHub 745e3906f3 Prevent UI update limits from causing test flaking. (#6443) 2026-03-12 14:02:39 +01:00
Tayrtahn d47614c8ae Version: 273.0.0 2026-03-07 15:01:42 -05:00
Tayrtahn d4a1f5ffb3 Release notes 2026-03-07 15:00:13 -05:00
TayrtahnandGitHub 9c4dd7a5e7 Add entity ProtoId to spawn panel tooltip (#6424)
* Add entity ProtoId to spawn panel tooltip

* Add backup message for entities with no description

* Release notes
2026-02-22 15:23:48 -05:00
PJB3005 686c47a193 Release notes for ecfaa68ae6 2026-02-08 14:11:50 +01:00
PJB3005andkaylie fd27f315cb Add more MapLoaderSystem TextReader/TextWriter overloads
Co-authored-by: kaylie <moony@hellomouse.net>
2026-02-08 14:04:09 +01:00
PJB3005 ec0c667c33 Add System.StringComparer to sandbox
Fixes #6081
2026-02-05 21:32:59 +01:00
PJB3005 75d0c29973 Add OrderedDictionary to sandbox whitelist
Fixes #6411
2026-02-05 16:38:01 +01:00
PJB3005 8449015cf8 Locate references to bad compiler generated methods in sandbox
Should help pinpoint issues from params arrays and similar.
2026-01-30 10:19:57 +01:00
PJB3005 72d6a42c27 Fix release notes for previous version 2026-01-29 01:52:25 +01:00
PJB3005 f509405022 Version: 272.0.0 2026-01-29 01:49:02 +01:00
PJB3005 7bb516f0bf Update release notes 2026-01-29 01:49:01 +01:00
PJB3005 521e7981bc Fix ValidateMemberAnalyzer performance
The analyzer was built to go off syntax nodes. This (AFAICT) meant that the SemanticModel had to be recalculated for every single invocation.

If you don't know what the above means: it basically means the compiler has to re-analyze the entire file.

Fix this by moving it to an operation analyzer so the compiler can properly cache the semantic model.
2026-01-29 01:39:06 +01:00
PJB3005 3bec89aaa5 Fix MapCoordinate spawns using grid-relative rotation
This was an undocumented breaking change introduced by https://github.com/space-wizards/RobustToolbox/pull/5915. The behavior does not make much sense: you're specifying coordinates relative to the map, so the rotation should be relative to the map too.
2026-01-26 19:20:12 +01:00
PJB3005 0b93a1b7e2 Version: 271.2.0 2026-01-25 19:11:54 +01:00
PJB3005 51397ba319 Release notes 2026-01-25 19:11:39 +01:00
PJB3005 65b8d0cce2 Add network serialization float NaN sanitization
Apparently cheat clients have figured out that none of SS14's code does validation against NaN inputs. Uh oh.

IRobustSerializer can now be configured to remove NaN values when reading. This is intended to be set on the server to completely block the issue.

Added "Unsafe" float types that can be used to bypass the new configurable behavior, in case somebody *really* needs NaNs.

An alternative option was to make a "SafeFloat" type, and only apply the sanitization to that. The problem is that would require updating hundreds if not thousands of messages in SS14, and probably significantly confuse contributors on "when use what." Blocking NaNs by default is likely to cause little issues while ensuring the entire exploit is guaranteed impossible.
2026-01-25 03:45:50 +01:00
PJB3005 40b10f0dcc Version: 271.1.0 2026-01-20 19:45:58 +01:00
PJB3005 5885549c78 Release notes 2026-01-20 19:45:51 +01:00
PJB3005 65ed19fa4e Version: 271.0.0 2026-01-19 21:07:22 +01:00
PJB3005 30cd9eb527 Update release notes 2026-01-19 21:06:58 +01:00
PJB3005 3f556814a5 Cull old release notes
This file was hundreds of kilobytes and genuinely made my Rider lag to edit
2026-01-19 21:06:25 +01:00
Pieter-Jan BriersandGitHub dc1464b462 High-bandwidth transfer system (#6373)
* WebSocket-based data transfer system

* Move resource downloads/uploads to the new transfer system

Should drastically increase the permitted practical size

* Transfer impl for Lidgren

* Async impl for receive stream

* Use unbounded channel for Lidgren

* Add metrics

* More comments

* Add serverside stream limit to avoid being a DoS vector

* Fix tests

* Oops forgot to actually implement sequence channels in NetMessage

* Doc comment for NetMessage.SequenceChannel

* Release notes
2026-01-19 20:44:44 +01:00
PJB3005 a417a8fd99 Mark DebugTools.AssertNotNull as [NotNull]
This means C# nullable analysis actually recognizes it.
2026-01-18 02:42:23 +01:00
PJB3005 68f8d00931 Oops, typo. Actual version is 270.1.0 2026-01-01 12:37:20 +01:00
PJB3005 57ad191d02 Version: 170.1.0 2026-01-01 12:35:52 +01:00