Jordan Dominion
80d5098cbb
Rename ShaIsParent to CommittishIsParent
...
Update functionality to reflect this.
2023-11-11 14:48:18 -05:00
Jordan Dominion
0c744979ff
Merge branch 'V6' into OpenDream
2023-11-10 23:26:31 -05:00
Jordan Dominion
9e1806a2b4
Move all API functionality to /api.
...
Move `BridgeController` route but BYOND forces us to support the legacy one as well.
Add a basic homepage if it's not obvious where to redirect the user.
Closes #1689
2023-11-10 23:18:20 -05:00
Jordan Dominion
06dda10ac2
Change the swagger documentation path to /doc/tgs_api.json
...
Change hosted site path to `/documentation`
Closes #1586
2023-11-10 10:35:44 -05:00
Jordan Dominion
c367d62b21
Merge branch 'V6' into 1693-Shrimple
2023-11-09 19:03:55 -05:00
tgstation-server
e337ab9e7c
Merge branch 'dev' into V6
2023-11-09 23:56:48 +00:00
Jordan Dominion
469b16d815
Fix test errors caused by DB truncation
2023-11-09 09:09:38 -05:00
Jordan Dominion
3fce8620b4
Very naughty merge of 'V6' into OpenDream
...
Doing some very bad cleanups for a merge in here like renaming a few fields (like the old column names) + `ByondCommand` + Removing deprecated API fields.
2023-11-09 09:08:20 -05:00
Jordan Dominion
85e9dfbc1f
Merge branch 'V6' into 1693-Shrimple
2023-11-07 19:37:03 -05:00
tgstation-server
c0a90da6a6
Merge branch 'dev' into V6
2023-11-08 00:24:46 +00:00
Jordan Dominion
7c9a1a6a4f
Fix a cause of spurious CI failures
2023-11-06 21:48:23 -05:00
Jordan Dominion
90d41cc88d
Replace HTTP 426 with 400
...
Notable exception is the swarm API, which still uses 426 for version mismatches and would be a pain in the ass to change correctly.
Closes #1693
2023-11-06 17:56:03 -05:00
Jordan Dominion
5f6e3d340c
Merge branch 'dev' into V6
2023-11-06 17:37:48 -05:00
Jordan Dominion
ed8453f08e
Remove hub abort notifications
...
Because SignalR buffers messages, we can't guarantee these will be delivered before the connection is aborted.
We'll have to rely on the client not being pants-on-head.
2023-11-05 09:38:57 -05:00
Jordan Dominion
d3563394fb
OperationCanceledExceptions are not test errors
2023-11-05 09:01:20 -05:00
Jordan Dominion
2c82da46f6
Simplify logic flow in JobsHubTests
2023-11-05 09:00:44 -05:00
Jordan Dominion
cab8ce68f5
Simplify this job type check using new JobCodes
2023-11-05 08:40:18 -05:00
Jordan Dominion
a01bea5608
We're officially API breaking!
2023-11-05 00:29:23 -04:00
Jordan Dominion
ebd09d7e86
Add JobCodes to strongly type jobs
...
- Default `0` for legacy jobs.
- Standardize job creation prior to registration.
- Add `RightsHelper.TypeToRight()`.
2023-11-04 21:12:25 -04:00
Jordan Dominion
d85e2b8d36
Add SignalR
...
- Add one hub `/hubs/jobs`, strongly typed API included.
- Adjust request pipeline to support SignalR.
- Allow `Accept: text/event-stream` for SSE requests.
- Add client library support for hubs.
- Add integration tests.
- Add IPermissionSetNotifyee to support dynamic changes based on perms.
- Keep job state in `JobService` for pushing updates.
2023-11-04 19:22:48 -04:00
Jordan Dominion
d851df8276
GET / with an Authorization header should fail if it's not valid
2023-11-02 23:10:34 -04:00
Jordan Dominion
29579a351d
Fix JWT compliance issues.
...
- `nbf` and `exp` should be numbers, not strings.
- Parse JWT in `ApiHeaders` fully for errors.
- Use `iat` and increment `nbf` by one second if equal and may trigger the `LastPasswordUpdate` bug.
- Make client aware of this change and move the delay there.
- Deprecated `TokenResponse.ExpiresAt`.
2023-10-31 23:16:18 -04:00
Jordan Dominion
eaebe733bd
Improve HeadersException handling
...
Avoid recreating ApiHeaders in request pipeline where possible
2023-10-31 23:16:16 -04:00
Jordan Dominion
3901512693
The del world issue is caused by sleep_offline
...
Just do an infinite loop and ensure `sleep_offline` is off. It can't keep getting away with this.
Bump DMAPI version
2023-10-31 23:16:16 -04:00
Jordan Dominion
808f96b968
Clean up some using ordering
2023-10-31 23:16:15 -04:00
Jordan Dominion
1d0371f84a
Make TestServerService more analyzer friendly
2023-10-29 16:23:52 -04:00
Jordan Dominion
fd44b61a24
Authentication pipeline rewrite
...
If you're looking for the future CVE it probably came from here.
2023-10-29 16:23:01 -04:00
Jordan Dominion
4b39bde25d
Fix HardFailLogger/provider logging non-errors
2023-10-29 16:23:00 -04:00
Jordan Dominion
10728657df
Move custom controller results to new namespace
2023-10-29 16:22:59 -04:00
Jordan Dominion
9325e545fd
Simplify some Substring calls
2023-10-29 16:22:58 -04:00
Jordan Dominion
30f57d28da
Store TokenResponse in ApiHeaders
...
- Decode it from JWT if necessary.
2023-10-29 16:22:51 -04:00
Jordan Dominion
9e2bf3f161
Merge branch 'dev' into SignalR
2023-10-29 14:32:09 -04:00
Jordan Dominion
e7652c2739
Merge branch 'V6' into OpenDream
2023-10-25 18:58:44 -04:00
tgstation-server
e777e44cb1
Merge branch 'dev' into V6
2023-10-25 14:16:37 +00:00
tgstation-server
ddda3c8ca9
Merge branch 'master' into dev
2023-10-25 14:14:46 +00:00
Jordan Dominion
14ed93c12a
Make every LongRunning DMAPI test compile generate a unique .rsc
2023-10-25 08:40:56 -04:00
Jordan Dominion
13cf7bb703
Merge branch 'V6' into OpenDream
2023-10-25 03:35:17 -04:00
Jordan Dominion
3418713e36
Merge branch 'dev' into V6
2023-10-25 03:34:41 -04:00
Jordan Dominion
13128abe73
Fix overeager required process killing
2023-10-25 02:54:50 -04:00
Jordan Dominion
b21f3a880f
Use a higher priority thread here to ensure the dump test runs successfully
2023-10-24 04:03:56 -04:00
Jordan Dominion
d2f6dfde8b
Patch DMAPI to work around del(world) behavior
...
It doesn't actually stop the world until the end of the tick.
2023-10-24 02:43:09 -04:00
Jordan Dominion
30f2afe43b
Merge branch 'V6' into OpenDream
2023-10-23 20:23:32 -04:00
Jordan Dominion
df8c51ddf7
Merge branch 'dev' into V6
2023-10-23 15:11:01 -04:00
Jordan Dominion
9b405784cc
Fix a race condition in compat tests
2023-10-23 02:03:36 -04:00
Jordan Dominion
20428736ec
Merge branch 'master' into dev
2023-10-22 19:59:03 -04:00
Jordan Dominion
720c42c522
Test that GameStaticFiles work in live tests
2023-10-22 13:59:54 -04:00
Jordan Dominion
812d6a619c
Remove the interactive test
...
It's annoying to monitor
2023-10-22 10:01:03 -04:00
Jordan Dominion
b22368086b
Additional test logging
2023-10-21 20:41:09 -04:00
Jordan Dominion
71f5c739d8
Fix tests using BasicWatchdog failing
2023-10-21 20:41:08 -04:00
Jordan Dominion
53eafffbd0
Add world.TgsVisibility() to DMAPI
2023-10-21 19:06:52 -04:00